An easy reading implementation of popular machine learning algorithm with cpp for the beginner.
$ cd $root_dir
$ mkdir build
$ cd build
$ cmake ..
$ make
$ cd root_dir/build/
$ ./examples/handwriting_recognize.bin
After execuate above command. You'll find some debug message will print like:
I1110 14:54:44.299903 19049 handwriting_recognize.cpp:23] Start to train
I1110 14:54:52.198222 19049 neural_network.cpp:93] Epoch 0: 8655 / 10000
I1110 14:55:00.036250 19049 neural_network.cpp:93] Epoch 1: 9056 / 10000
I1110 14:55:07.868829 19049 neural_network.cpp:93] Epoch 2: 9245 / 10000
I1110 14:55:15.929745 19049 neural_network.cpp:93] Epoch 3: 9332 / 10000
I1110 14:55:23.337919 19049 neural_network.cpp:93] Epoch 4: 9391 / 10000
I1110 14:55:30.378495 19049 neural_network.cpp:93] Epoch 5: 9439 / 10000
...
- Refactor the structure
- Add ReLU activation
- Add dropout
- Add SoftMax layer
- Add convolutional layer and pooling layer
- Add moment optimation