/EasyCNN

easy convolution neural network

Primary LanguageC++

EasyCNN

Easy convolution neural network framework.

small, clean, easy to understand!

QQ群:603891505

blog about EasyCNN in Chinese.

port tensorflow model to easycnn model

Features

  • All in one: without any dependency, pure c++ implemented.
  • Basic layer: data layer, convolution layer, pooling layer, full connect layer, softmax layer, activation layers(sigmod, tanh, RELU)
  • Loss function: Cross Entropy, MSE.
  • Optimize method: SGD, SGDWithMomentum.
  • Multi-thread parallel optimized.
  • Tensorflow model support (traditional CNN only now).(link)

Examples

Todo List

  • fix train error when batch > 1 issue.
  • add load & save model function.
  • add more layer, such as batch normalization layer, dropout layer, etc.
  • add weight regular.
  • port to other platforms, such as linux, mac, android, iOS, etc.
  • optimize network train/test speed, use cuBLAS/OpenBLAS etc.
  • add more optimize method.
  • add unit test.
  • add license.

Bug Report

Use github issues please.

Pull Request

Pull request is welcome.

License

This project is released under the WTFPL LICENSE.