All Projects → kymo → Sudl

kymo / Sudl

light deep neural network tools box(LSTM,GRU,RNN,CNN,Bi-LSTM,etc)

Projects that are alternatives of or similar to Sudl

theano-recurrence
Recurrent Neural Networks (RNN, GRU, LSTM) and their Bidirectional versions (BiRNN, BiGRU, BiLSTM) for word & character level language modelling in Theano
Stars: ✭ 40 (+37.93%)
Mutual labels:  lstm, gru
Manhattan-LSTM
Keras and PyTorch implementations of the MaLSTM model for computing Semantic Similarity.
Stars: ✭ 28 (-3.45%)
Mutual labels:  lstm, gru
ConvLSTM-PyTorch
ConvLSTM/ConvGRU (Encoder-Decoder) with PyTorch on Moving-MNIST
Stars: ✭ 202 (+596.55%)
Mutual labels:  lstm, gru
Pytorch Seq2seq
Tutorials on implementing a few sequence-to-sequence (seq2seq) models with PyTorch and TorchText.
Stars: ✭ 3,418 (+11686.21%)
Mutual labels:  lstm, gru
Pytorch-POS-Tagger
Part-of-Speech Tagger and custom implementations of LSTM, GRU and Vanilla RNN
Stars: ✭ 24 (-17.24%)
Mutual labels:  lstm, gru
tf-ran-cell
Recurrent Additive Networks for Tensorflow
Stars: ✭ 16 (-44.83%)
Mutual labels:  lstm, gru
myDL
Deep Learning
Stars: ✭ 18 (-37.93%)
Mutual labels:  lstm, gru
Eeg Dl
A Deep Learning library for EEG Tasks (Signals) Classification, based on TensorFlow.
Stars: ✭ 165 (+468.97%)
Mutual labels:  lstm, gru
Deep-Learning-for-Expression-Recognition-in-Image-Sequences
The project uses state of the art deep learning on collected data for automatic analysis of emotions.
Stars: ✭ 26 (-10.34%)
Mutual labels:  lstm, gru
lmkit
language models toolkits with hierarchical softmax setting
Stars: ✭ 16 (-44.83%)
Mutual labels:  lstm, gru
Trafficflowprediction
Traffic Flow Prediction with Neural Networks(SAEs、LSTM、GRU).
Stars: ✭ 242 (+734.48%)
Mutual labels:  lstm, gru
Easy Deep Learning With Keras
Keras tutorial for beginners (using TF backend)
Stars: ✭ 367 (+1165.52%)
Mutual labels:  lstm, gru
Rnn ctc
Recurrent Neural Network and Long Short Term Memory (LSTM) with Connectionist Temporal Classification implemented in Theano. Includes a Toy training example.
Stars: ✭ 220 (+658.62%)
Mutual labels:  lstm, gru
LearningMetersPoems
Official repo of the article: Yousef, W. A., Ibrahime, O. M., Madbouly, T. M., & Mahmoud, M. A. (2019), "Learning meters of arabic and english poems with recurrent neural networks: a step forward for language understanding and synthesis", arXiv preprint arXiv:1905.05700
Stars: ✭ 18 (-37.93%)
Mutual labels:  lstm, gru
Haste
Haste: a fast, simple, and open RNN library
Stars: ✭ 214 (+637.93%)
Mutual labels:  lstm, gru
LSTM-GRU-from-scratch
LSTM, GRU cell implementation from scratch in tensorflow
Stars: ✭ 30 (+3.45%)
Mutual labels:  lstm, gru
Load forecasting
Load forcasting on Delhi area electric power load using ARIMA, RNN, LSTM and GRU models
Stars: ✭ 160 (+451.72%)
Mutual labels:  lstm, gru
Pytorch Kaldi
pytorch-kaldi is a project for developing state-of-the-art DNN/RNN hybrid speech recognition systems. The DNN part is managed by pytorch, while feature extraction, label computation, and decoding are performed with the kaldi toolkit.
Stars: ✭ 2,097 (+7131.03%)
Mutual labels:  lstm, gru
dts
A Keras library for multi-step time-series forecasting.
Stars: ✭ 130 (+348.28%)
Mutual labels:  lstm, gru
Theano lstm
🔬 Nano size Theano LSTM module
Stars: ✭ 310 (+968.97%)
Mutual labels:  lstm, gru

SUDL

A light deep learning tools box by c++

Contains

Network Architecture

  1. Convolutional Neural Network
  2. Normal Neural Network
  3. Reccurent Neural Network with three mainstream varieties(LSTM, LSTM-peelhole, GRU)(deep architecture supported)
  4. bi-directional LSTM(peephole) & GRU & RNN (deep architecture supported)

Nonlinearities

  1. ReLU
  2. Sigmoid
  3. tanh

TODO

  1. GPU supported (No Gpu for testing :( )
  2. network architecture configurable by proto Done (protoc is needed to be installed first)

Compile

sh build.sh(cmake is needed)

Usage

net architecture is built by proto file that you defined, just like what the examples do.

rnn.prototxt

name: "test"
layer {
    name: "DataFeedLayer"
    type: "DataFeedLayer"
    top: "input_data"
}

layer {
    name: "WordEmbeddingLayer"
    type: "WordEmbeddingLayer"
    top: "emb1"
    bottoms: "input_data"
    fc_param {
        output_dim: 14
        input_dim: 0
    }
}

layer {
    name: "LstmCell"
    type: "LstmCell"
    top: "lstm1"
    bottoms: "emb1"

    rnn_cell_param {
        input_dim: 14
        output_dim: 16
        use_peephole: false
    }
}

layer {
    name: "LstmCell1"
    type: "LstmCell"
    top: "lstm2"
    bottoms: "lstm1"
    rnn_cell_param {
        input_dim: 16
        output_dim: 16
        use_peephole: true
    }
}

layer {
    name: "SeqFullConnSoftmaxLayer"
    type: "SeqFullConnSoftmaxLayer"
    top: "seqsoftmax1"
    bottoms: "lstm2"
    fc_param {
        input_dim: 16
        output_dim: 4
    }

}
layer {
    name: "SeqCrossEntropyLossLayer"
    type: "SeqCrossEntropyLossLayer"
    top: "loss"
    bottoms: "seqsoftmax1"
}

cnn.prototxt

name: "cnn" 
layer {
    name: "DataFeedLayer"
    type: "DataFeedLayer"
    top: "input_data"
}

layer {
    name: "ConvLayer1"
    type: "ConvLayer"
    bottoms: "input_data"
    top: "conv1"

    conv_param {
        input_dim: 1
        output_dim: 2
        kernel_x_dim: 11
        kernel_y_dim: 11
        feature_x_dim: 18
        feature_y_dim: 18
    }

}

layer {
    name: "ReluLayer1"
    type: "ReluLayer"
    bottoms: "conv1"
    top: "relu1"
}

layer {
    name: "PoolingLayer1"
    type: "PoolingLayer"
    bottoms: "relu1"
    top: "pool1"

    pool_param {
        input_dim: 2
        output_dim: 2
        pooling_x_dim: 2
        pooling_y_dim: 2
        feature_x_dim: 9
        feature_y_dim: 9
    }

}

layer {
    name: "ConvLayer2"
    type: "ConvLayer"
    bottoms: "pool1"
    top: "conv2"

    conv_param {
        input_dim: 2
        output_dim: 2
        kernel_x_dim: 4
        kernel_y_dim: 4
        feature_x_dim: 6
        feature_y_dim: 6
    }
}

layer {
    name: "ReluLayer2"
    type: "ReluLayer"
    bottoms: "conv2"
    top: "relu2"
}


layer {
    name: "FlattenLayer1"
    type: "FlattenLayer"
    bottoms: "relu2"
    top: "flat1"
}

layer {
    name: "FullConnLayer"
    type: "FullConnLayer"
    bottoms: "flat1"
    top: "full1"

    fc_param {
        input_dim: 72
        output_dim: 32
    }
}

layer {
    name: "SigmoidLayer"
    type: "SigmoidLayer"
    bottoms: "full1"
    top: "sigmoid1"

}


layer {
    name: "FullConnSoftmaxLayer"
    type: "FullConnSoftmaxLayer"
    bottoms: "sigmoid1"
    top: "full2"

    fc_param {
        input_dim: 32
        output_dim: 10
    }
}

layer {
    name: "loss"
    type: "CrossEntropyLossLayer"
    bottoms: "full2"
    top: "cross"
}
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].