/simplified-deeplearning

Simplified implementations of deep learning related works

Primary LanguageJupyter Notebook

Simplified DeepLearning

Quick and dirty implementations of some interesting works related to deep learning. Contribution is always welcome, you could just add links to your repository.

You may use any of the deep learning frameworks, such as pytorch, theano, mxnet and tensorflow. However, you should keep the implementation as simple as possible.

Gradient Descent

Regression

MLP from scratch

Regularization

SGD Comparison

Comparison of various SGD algorithms on logistic regression and MLP. The relation of these algorithms is shown in the following figure, please refer to sgd-comparison for the details.

Newton Method

Neural Style

Refer to jcjohnson.

Function Approximation

Use neural network to approximate functions. The approximated functions are shown in the following figures, please refer to function-approximation for the details.

Char-RNN

Refer to karpathy or johnarevalo.

POS Tagging

Sequence to Sequence

It is really hard to simplify because of the attention mechanism. We have try our best to simlify the encoder-decoder architecture, which is demonstrated in the following figures.

Please refer to Sequencing for more details.

PCA, PPCA

Autoencoder

Refer to Keras.

Word Embedding

MCMC

RBM

Generative Adversarial Networks

A simple demonstration of Generative Adversarial Networks (GAN), maybe problematic.

According to the paper, we also use GAN to generate Gaussian distribution which shown in the left figure. Then we try to generate digits based on MNIST dataset, however, we encouter "the Helvetica scenario" in which G collapses too many values of z to the same value of x. Nevertheless, it is a simple demonstration, please see the details.

Poem Generator

A simple implement of chinese poem generator with LSTM.

demo2

Please refer to MC-PangHu.

Updating.... Please help us to implement these examples, we need a simplified implementation. Or you have other nice examples, please add to this list.