All Projects → bowdar → Deeplearning

bowdar / Deeplearning

Neural network base on c++14, support any number of layers 基于C++14元编程的深度学习神经网络模板类,支持任意层数

Programming Languages

metaprogramming
66 projects

Projects that are alternatives of or similar to Deeplearning

Tensorflow 101
learn code with tensorflow
Stars: ✭ 1,116 (+1295%)
Mutual labels:  deeplearning
Ncnn Benchmark
The benchmark of ncnn that is a high-performance neural network inference framework optimized for the mobile platform
Stars: ✭ 70 (-12.5%)
Mutual labels:  deeplearning
Tools To Design Or Visualize Architecture Of Neural Network
Tools to Design or Visualize Architecture of Neural Network
Stars: ✭ 1,143 (+1328.75%)
Mutual labels:  deeplearning
Gqn Pytorch
Implementation of GQN in PyTorch
Stars: ✭ 63 (-21.25%)
Mutual labels:  deeplearning
Deeplearning4j
All DeepLearning4j projects go here.
Stars: ✭ 68 (-15%)
Mutual labels:  deeplearning
Deep learning for biologists with keras
tutorials made for biologists to learn deep learning
Stars: ✭ 74 (-7.5%)
Mutual labels:  deeplearning
Bidaf Keras
Bidirectional Attention Flow for Machine Comprehension implemented in Keras 2
Stars: ✭ 60 (-25%)
Mutual labels:  deeplearning
Skip Thought Tf
An implementation of skip-thought vectors in Tensorflow
Stars: ✭ 77 (-3.75%)
Mutual labels:  deeplearning
Blinkdl
A minimalist deep learning library in Javascript using WebGL + asm.js. Run convolutional neural network in your browser.
Stars: ✭ 69 (-13.75%)
Mutual labels:  deeplearning
Deeplearning.ai Notes
基于Andrew Ng DeepLearning.ai课程的学习笔记
Stars: ✭ 75 (-6.25%)
Mutual labels:  deeplearning
Pwc Net
PWC-Net: CNNs for Optical Flow Using Pyramid, Warping, and Cost Volume, CVPR 2018 (Oral)
Stars: ✭ 1,142 (+1327.5%)
Mutual labels:  deeplearning
Paper Reading
Paper Reading
Stars: ✭ 66 (-17.5%)
Mutual labels:  deeplearning
Auto car
基于深度学习的自动避障智能小车
Stars: ✭ 74 (-7.5%)
Mutual labels:  deeplearning
Ssd Models
把极速检测器的门槛给我打下来make lightweight caffe-ssd great again
Stars: ✭ 62 (-22.5%)
Mutual labels:  deeplearning
Datamining
数据挖掘开源书
Stars: ✭ 76 (-5%)
Mutual labels:  deeplearning
Aorun
Deep Learning over PyTorch
Stars: ✭ 61 (-23.75%)
Mutual labels:  deeplearning
Udacity Natural Language Processing Nanodegree
Tutorials and my solutions to the Udacity NLP Nanodegree
Stars: ✭ 73 (-8.75%)
Mutual labels:  deeplearning
Kamonohashi
AI開発プラットフォームKAMONOHASHI
Stars: ✭ 80 (+0%)
Mutual labels:  deeplearning
Cnn Paper2
🎨 🎨 深度学习 卷积神经网络教程 :图像识别,目标检测,语义分割,实例分割,人脸识别,神经风格转换,GAN等🎨🎨 https://dataxujing.github.io/CNN-paper2/
Stars: ✭ 77 (-3.75%)
Mutual labels:  deeplearning
Mit Deep Learning
Tutorials, assignments, and competitions for MIT Deep Learning related courses.
Stars: ✭ 8,912 (+11040%)
Mutual labels:  deeplearning

Meta-programming DeepLearning

Meta-programming neural network 是一个基于C++14实现的元编程神经网络库 Compile-time matrix constructions, headonly, no dependency, limitless layers, limitless nodes

Feature

  • 支持任意深度和超大结点数
  • 矩阵运算(CNN采用张量运算)
  • 循环类网络输入输出支持多对单、单对多、多对多
  • 源码Head-only并且无依赖
  • 使用方法极其简单,适合程序局部应用ANN以及用来学习研究

Sample

1) BPNN

#include "BPNN.hpp"
int main()
{
    /// 1. Create a 4 layers NN each layer nodes are 20, 30, 20 and 2
    ///    The first 20 is input layer and the last 2 is output
    typedef mtl::BPNN<20, 30, 20, 2> MyNN;
    MyNN bpnn;
    
    /// 2. Initialize, setup parameters and activate functions
    bpnn.init()
        .set_aberration(0.0001)
        .set_learnrate(0.8)
        .set_sigfunc(mtl::logsig)
        .set_dsigfunc(mtl::dlogsig);

    /// 3. Create input output matrixs, and then enter matrix datas your self
    MyNN::InMatrix inMx;
    MyNN::OutMatrix outMx;
    MyNN::OutMatrix expectMx;
    ///    enter matrix datas ...
    
    /// 4. Training, call train in your own way
    bpnn.train(inMx, outMx, 100);
    
    /// 5. Simulate
    bpnn.simulate(inMx, outMx, expectMx);
}

2) RNN

#include "RNN.hpp"
int main()
{
    /// 1. Create a 4 layers NN each layer nodes are 20, 30, 20 and 2
    ///    The first 20 is input layer and the last 2 is output
    typedef mtl::RNN<20, 30, 20, 2> MyRnn;
    MyRnn rnn;
    
    /// 2. Initialize, setup parameters and activate functions
    rnn.init()
       .set_aberration(0.0001)
       .set_learnrate(0.8)
       .set_sigfunc(mtl::logsig)
       .set_dsigfunc(mtl::dlogsig);

    /// 3. Create input output matrixs, and then enter matrix datas your self
    ///    RNN suport multi-in-out like M:1, 1:M and M:M also 1:1 which is meaningless
    MyRnn::InMatrix<10> inMx; /// 10 input a group, you can change it each training
    MyRnn::OutMatrix<2> outMx; /// 2 ouput a group
    MyRnn::OutMatrix<2> expectMx;
    ///    enter matrix datas ...
    
    /// 4. Training, call train in your own way
    rnn.train(inMx, outMx, 100);
    
    /// 5. Simulate
    rnn.simulate(inMx, outMxexpectMx);
}

3) LSTM

#include "LSTM.hpp"
int main()
{
    /// 1. Create a 4 layers NN each layer nodes are 20, 30, 20 and 2
    ///    The first 20 is input layer and the last 2 is output
    typedef mtl::LSTM<20, 30, 20, 2> MyLSTM;
    MyLSTM lstm;
    
    /// 2. Initialize, setup parameters, LSTM wouldn't setup activate functions
    lstm.init()
        .set_aberration(0.0001)
        .set_learnrate(0.8);

    /// 3. Create input output matrixs, and then enter matrix datas your self
    ///    RNN suport multi-in-out like M:1, 1:M and M:M also 1:1 which is meaningless
    MyLSTM::InMatrix<10> inMx;
    MyLSTM::OutMatrix<2> outMx;
    MyLSTM::OutMatrix<2> expectMx;
    ///    enter matrix datas ...
    
    /// 4. Training, call train in your own way
    lstm.train(inMx, outMx, 100);
    
    /// 5. Simulate
    lstm.simulate(inMx, outMxexpectMx);
}

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].