※ This is unofficial tutorial, the content of this blog is written based on personal opinion/understanding.
Deep learning hands on tutorial using Chainer. The source code of this tutorial is open on github.
You can learn how to write deep learning program in python (which is one of the most popular programming language used in data-science community) and how to use deep learning framework Chainer.
Chainer is “flexible deep learning framework”. The difference from other famous deep learning framework like tensorflow or caffe is that Chainer constructs neural network dynamically, which enables to write your neural network in more flexible way. as you are going to learn below.
Especially, I want to recommend Chainer for
- Deep learning framework beginners
– Easy environment setup: One command,
pip install chainer, for installing chainer.
– Easy to debug: You can see python stack trace log when error happened.
– Flexisible: Chainer is very flexisible due to its base concept, “define by run” scheme. You can define complicated network easily.
– Extensible/Customizable: It is also easy to develop your own function, your own neural network layer only using python with Chainer. Suitable for research to try new idea quickly.
– Educative: Chainer is open source and it is also good for studying deep learning framework. Since chainer is written in python, you can jump to the function definition and read python docstring if you want to dig in the internal behavior.
See Why Chainer for details.
Getting familiar with Chainer
Hello MNIST! : Multi Layer Perceptron
MNIST dataset classification task using MLP (Multi Layer Perceptron).
Image Classification: Convolutional Neural Network
CIFAR 10, CIFAR 100 image classification with CNN (Convolutional Neural Network)
Natual Language Processing: Reccurent Neural Network, Long Short Term Memory
NLP task with RNN, LSTM.
This is on-going project, I am going to write more topics when I can manage time…
Other topics I want to write in the future.
- PyCharm ( development environment setup, how to debug, how to profile etc.)
- VAE (Generative model)
- GAN (Adversarial network)