All Projects → yechengxi → Lightnet

yechengxi / Lightnet

Licence: other
Efficient, transparent deep learning in hundreds of lines of code.

Programming Languages

matlab
3953 projects

Projects that are alternatives of or similar to Lightnet

Deep Music Genre Classification
🎵 Using Deep Learning to Categorize Music as Time Progresses Through Spectrogram Analysis
Stars: ✭ 23 (-90.53%)
Mutual labels:  cnn, lstm, rnn
Pytorch Sentiment Analysis
Tutorials on getting started with PyTorch and TorchText for sentiment analysis.
Stars: ✭ 3,209 (+1220.58%)
Mutual labels:  cnn, lstm, rnn
Rnn Theano
使用Theano实现的一些RNN代码,包括最基本的RNN,LSTM,以及部分Attention模型,如论文MLSTM等
Stars: ✭ 31 (-87.24%)
Mutual labels:  cnn, lstm, rnn
Basicocr
BasicOCR是一个致力于解决自然场景文字识别算法研究的项目。该项目由长城数字大数据应用技术研究院佟派AI团队发起和维护。
Stars: ✭ 336 (+38.27%)
Mutual labels:  cnn, lstm, rnn
Sign Language Gesture Recognition
Sign Language Gesture Recognition From Video Sequences Using RNN And CNN
Stars: ✭ 214 (-11.93%)
Mutual labels:  cnn, lstm, rnn
Video Classification
Tutorial for video classification/ action recognition using 3D CNN/ CNN+RNN on UCF101
Stars: ✭ 543 (+123.46%)
Mutual labels:  cnn, lstm, rnn
Deepseqslam
The Official Deep Learning Framework for Route-based Place Recognition
Stars: ✭ 49 (-79.84%)
Mutual labels:  cnn, lstm, rnn
Neural Networks
All about Neural Networks!
Stars: ✭ 34 (-86.01%)
Mutual labels:  cnn, lstm, rnn
Pytorch Learners Tutorial
PyTorch tutorial for learners
Stars: ✭ 97 (-60.08%)
Mutual labels:  cnn, lstm, rnn
Pytorch Pos Tagging
A tutorial on how to implement models for part-of-speech tagging using PyTorch and TorchText.
Stars: ✭ 96 (-60.49%)
Mutual labels:  cnn, lstm, rnn
Unet Zoo
A collection of UNet and hybrid architectures in PyTorch for 2D and 3D Biomedical Image segmentation
Stars: ✭ 302 (+24.28%)
Mutual labels:  cnn, lstm, rnn
Natural Language Processing With Tensorflow
Natural Language Processing with TensorFlow, published by Packt
Stars: ✭ 222 (-8.64%)
Mutual labels:  cnn, lstm, rnn
Automatic speech recognition
End-to-end Automatic Speech Recognition for Madarian and English in Tensorflow
Stars: ✭ 2,751 (+1032.1%)
Mutual labels:  cnn, lstm, rnn
Multi Class Text Classification Cnn Rnn
Classify Kaggle San Francisco Crime Description into 39 classes. Build the model with CNN, RNN (GRU and LSTM) and Word Embeddings on Tensorflow.
Stars: ✭ 570 (+134.57%)
Mutual labels:  cnn, lstm, rnn
Cnn lstm for text classify
CNN, LSTM, NBOW, fasttext 中文文本分类
Stars: ✭ 90 (-62.96%)
Mutual labels:  cnn, lstm, rnn
Eeg Dl
A Deep Learning library for EEG Tasks (Signals) Classification, based on TensorFlow.
Stars: ✭ 165 (-32.1%)
Mutual labels:  cnn, lstm, rnn
Caption generator
A modular library built on top of Keras and TensorFlow to generate a caption in natural language for any input image.
Stars: ✭ 243 (+0%)
Mutual labels:  cnn, lstm, rnn
Lidc nodule detection
lidc nodule detection with CNN and LSTM network
Stars: ✭ 187 (-23.05%)
Mutual labels:  cnn, lstm
Speech Emotion Recognition
Speech emotion recognition implemented in Keras (LSTM, CNN, SVM, MLP) | 语音情感识别
Stars: ✭ 181 (-25.51%)
Mutual labels:  cnn, lstm
Stylenet
A cute multi-layer LSTM that can perform like a human 🎶
Stars: ✭ 187 (-23.05%)
Mutual labels:  lstm, rnn

LightNet: A Versatile, Standalone Matlab-based Environment for Deep Learning

LightNet Icon

LightNet is a lightweight, versatile and purely Matlab-based deep learning framework. The aim of the design is to provide an easy-to-understand, easy-to-use and efficient computational platform for deep learning research. The implemented framework supports major deep learning architectures such as the Multilayer Perceptron Networks (MLP), Convolutional Neural Networks (CNN) and Recurrent Neural Networks (RNN). LightNet supports both CPU and GPU for computation and the switch between them is straightforward. Different applications in computer vision, natural language processing and robotics are demonstrated as experiments.

How to use LightNet

Read the tutorial slides in the Documentations folder.
Install the latest Matlab (R2016b or later) on a computer, and run the RunAll.m Matlab script.
Have fun!
More details can be found in the supplementary materials.

Recent updates

20160528: LightNet supports using pretrained ImageNet network models. coco

Check CNN/Main_CNN_ImageNet_Minimal()

An example recognition using imagenet-vgg-f pretrained net:

ImageNet Icon

20170217: CUDNN is supported by installing Neural Network Toolbox from Mathworks. The convolutional network training is over 10x faster than the previous release! The current version can process 10,000 CIFAR-10 images per second in the training.

20170924: A simple example of training a Quasi-RNN is added to LightNet. Quasi-RNNs are much easier to parallelize compared to RNNs.

Major functions in LightNet

####network related:
Main_Template: a template script used to train CNN and MLP networks.
TrainingScript: a training template for CNN and MLP networks.
train_net: running the network in the training mode to evaluate and calculate the loss and gradients.
test_net: running the network in the testing mode to evaluate the current parameters.
net_ff: implementation of the feed forward process which is used in CNN and MLP networks.
net_bp: implementation of the back propagation process which is used in CNN and MLP networks.
net_init*: how to initialize a neural network.

####layers:
linear_layer: implementation of (fully-connected) linear layer. (CUDNN enabled)
conv_layer_1d: implementation of the 1d convolution layer. (CUDNN enabled)
conv_layer_2d: implementation of the 2d convolution layer. (CUDNN enabled)
maxpool: implementation of the 2d max-pooling layer. (CUDNN enabled)
maxpool_1d: implementation of the 1d max-pooling layer. (CUDNN enabled)
bnorm: implementation of the batch normalization layer.
rmsnorm: implementation of the RMS normalization function.
dropout: implementation of the dropout layer.
lrn: implementation of the local response normalization layer. (CUDNN enabled)
softmax: implementation of the softmax layer.

####activation functions:
relu: implementation of the rectified linear unit layer.
leaky_relu: implementation of the leaky ReLU layer.
modu: implementation of the modulus unit layer.
sigmoid_ln: implementation of the sigmoid layer.
tanh_ln: implementation of the tanh layer.

####loss functions:
softmaxlogloss: implementation of the softmax log loss layer .

####optimization related:
sgd: implementation of the stochastic gradient descent algorithm with momentum.
sgd2: implementation of the second-order stochastic gradient descent algorithm with momentum. adam: implementation of the Adam algorithm with modification that allows second-order training.
rmsprop: implementation of the RMSProp algorithm with modification that allows second-order training.
adagrad: implementation of the Adagrad algorithm with modification that allows second-order training.
select_learning_rate: implementation of the Selective-SGD algorithm that automatically selects the optimal learning rate at the beginning or in the middle of the training.

####utility functions:
generate_output_filename: generate output filename based on the current parameter settings.
im2col_ln: customized im2col function used in the pooling layer.
unroll_ln: unroll overlapping signal windows into a matrix, used in the 1d pooling layer.
pad_data*: a padding layer which is used in CNN.
SwitchProcessor: a switch function between CPU and GPU.

How to accelerate LightNet

Nvidia CUDNN can be used to calculate convolutions and linear transforms.

  1. You will need to install the Neural Network Toolbox from Mathworks. Make sure you can run it properly. (Ref to our tutorial slides.)
  2. Set opts.use_nntoolbox=1 in the main tesing script.

References

  1. Ye, C., Zhao, C., Yang, Y., Fermüller, C., & Aloimonos, Y. (2016, October). LightNet: A Versatile, Standalone Matlab-based Environment for Deep Learning. In Proceedings of the 2016 ACM on Multimedia Conference (pp. 1156-1159). ACM.
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].