This machine learning framework prepares, trains and validates an image classifier.
Trains the data path F:/data/path/to/data with the included classes and saves the model to F:/data/processed/model.h5.
(keras-gpu) C:\Users> ml train --environment-path=F:/data --data-path=path/to/data \
--model-file=processed/model.h5 -m MobileNetV2 -v
See Train, build and save the model (ml train
) for more details.
- Keras GPU Installation on Windows
- Keras GPU Installation on Mac
- Keras GPU Installation on Linux (In progress)
If you intend to implement and optimize Deep Neuronal Networks (DNN), the calculations must take place on the GPU. It is also possible to run calculations on the CPU. Also the installation of Keras for CPU driven computations is much easier, because the installation of the GPU drivers is not necessary. The disadvantage of this, however, is that it takes much longer to train larger models. Good models for the classification of e.g. pictures are only achieved after several training units. Training units require a lot of computing power in the form of many matrix operations. A GPU is predestined for matrix operations[1].
..but perfect for machine learning experiments. ;)
- The deductive learning approach versus the inductive learning approach: see nine points demo
- Neuronal network vs Millions of parameters
- Transfer Learning
- ...
To test this framework immediately without any data, there is a selection of demos which can be executed immediately. Good to e.g. test the installation or make a GPU vs CPU comparison on the fly.
Here is an overview of the demos:
- Train, build and save the model (
ml train
) - Analyse the trained model - confusion matrix (
ml analyse
) - Evaluate a given image (
ml evaluate
) - Transfer learning
- Arguments
- Preparations to make training more efficient
- ...
- [1]Understanding the Efficiency of GPU Algorithms for Matrix-Matrix Multiplication
- [2]What Does Classifying More Than 10,000 Image Categories Tell Us?
- Björn Hempel bjoern@hempel.li - Initial work - https://github.com/bjoern-hempel
This tutorial is licensed under the MIT License - see the LICENSE.md file for details
Have fun! :)