Keras resources
This is a directory of tutorials and open-source code repositories for working with Keras, the Python deep learning library.
If you have a high-quality tutorial or project to add, please open a PR.
Official starter resources
- keras.io - Keras documentation
- Getting started with the Sequential model
- Getting started with the functional API
- Keras FAQ
Tutorials
- Quick start: the Iris dataset in Keras and scikit-learn
- Using pre-trained word embeddings in a Keras model
- Building powerful image classification models using very little data
- Building Autoencoders in Keras
- A complete guide to using Keras as part of a TensorFlow workflow
- Introduction to Keras, from University of Waterloo: video - slides
- Introduction to Deep Learning with Keras, from CERN: video - slides
- Installing Keras for deep learning
- Develop Your First Neural Network in Python With Keras Step-By-Step
- Practical Neural Networks with Keras: Classifying Yelp Reviews (Shows basic classification and how to set up a GPU instance on AWS)
- Understanding Stateful LSTM Recurrent Neural Networks in Python with Keras
- Time Series Prediction with LSTM Recurrent Neural Networks in Python with Keras
- Keras video tutorials from Dan Van Boxel
- Keras Deep Learning Tutorial for Kaggle 2nd Annual Data Science Bowl
- Collection of tutorials setting up DNNs with Keras
- Fast.AI - Practical Deep Learning For Coders, Part 1 (great information on deep learning in general, heavily uses Keras for the labs)
- Keras Tutorial: Content Based Image Retrieval Using a Convolutional Denoising Autoencoder
- A Bit of Deep Learning and Keras: a multipart video introduction to deep learning and keras
- Five simple examples of the Keras Functional API
- Keras video tutorials playlist from Deeplizard
Books based on Keras
Code examples
Working with text
- Reuters topic classification
- LSTM on the IMDB dataset (text sentiment classification)
- Bidirectional LSTM on the IMDB dataset
- 1D CNN on the IMDB dataset
- 1D CNN-LSTM on the IMDB dataset
- LSTM-based network on the bAbI dataset
- Memory network on the bAbI dataset (reading comprehension question answering)
- Sequence to sequence learning for performing additions of strings of digits
- LSTM text generation
- Using pre-trained word embeddings
- Monolingual and Multilingual Image Captioning
- FastText on the IMDB dataset
- Structurally constrained recurrent nets text generation
- Character-level convolutional neural nets for text classification
- LSTM to predict gender of a name
- Language/dialect identification with multiple character-level CNNs
Working with images
- Simple CNN on MNIST
- Simple CNN on CIFAR10 with data augmentation
- Inception v3
- VGG 16 (with pre-trained weights)
- VGG 19 (with pre-trained weights)
- ResNet 50 (with pre-trained weights): 1 - 2
- FractalNet
- AlexNet, VGG 16, VGG 19, and class heatmap visualization
- Visual-Semantic Embedding
- Variational Autoencoder: with deconvolutions - with upsampling
- Visual question answering
- Deep Networks with Stochastic Depth
- Smile detection with a CNN
- VGG-CAM
- t-SNE of image CNN fc7 activations
- VGG16 Deconvolution network
- Wide Residual Networks (with pre-trained weights): 1 - 2
- Ultrasound nerve segmentation: 1 - 2
- DeepMask object segmentation
- Densely Connected Convolutional Networks: 1 - 2
- Snapshot Ensembles: Train 1, Get M for Free
- Single Shot MultiBox Detector
- Popular Image Segmentation Models : FCN, Segnet, U-Net etc.
Creative visual applications
- Real-time style transfer
- Style transfer: 1 - 2
- Image analogies: Generate image analogies using neural matching and blending.
- Visualizing the filters learned by a CNN
- Deep dreams
- GAN / DCGAN: 1 - 2 - 3 - 4
- InfoGAN
- pix2pix
- DFI: Deep Feature Interpolation
- Colorful Image colorization: B&W to color
Reinforcement learning
- DQN
- FlappyBird DQN
- async-RL: Tensorflow + Keras + OpenAI Gym implementation of 1-step Q Learning from "Asynchronous Methods for Deep Reinforcement Learning"
- keras-rl: A library for state-of-the-art reinforcement learning. Integrates with OpenAI Gym and implements DQN, double DQN, Continuous DQN, and DDPG.
Miscallenous architecture blueprints
Third-party libraries
- Elephas: Distributed Deep Learning with Keras & Spark
- Hyperas: Hyperparameter optimization
- Hera: in-browser metrics dashboard for Keras models
- Kerlym: reinforcement learning with Keras and OpenAI Gym
- Qlearning4K: reinforcement learning add-on for Keras
- seq2seq: Sequence to Sequence Learning with Keras
- Seya: Keras extras
- Keras Language Modeling: Language modeling tools for Keras
- Recurrent Shop: Framework for building complex recurrent neural networks with Keras
- Keras.js: Run trained Keras models in the browser, with GPU support
- keras-vis: Neural network visualization toolkit for keras.
Projects built with Keras
- RocAlphaGo: An independent, student-led replication of DeepMind's 2016 Nature publication, "Mastering the game of Go with deep neural networks and tree search"
- BetaGo: Deep Learning Go bots using Keras
- DeepJazz: Deep learning driven jazz generation using Keras
- dataset-sts: Semantic Text Similarity Dataset Hub
- snli-entailment: Independent implementation of attention model for textual entailment from the paper "Reasoning about Entailment with Neural Attention".
- Headline generator: independent implementation of Generating News Headlines with Recurrent Neural Networks
- LipNet: independent implementation of LipNet: End-to-End Sentence-level Lipreading.
- caption_generator: An implementation of image caption generation in natural language inspired from Show and Tell: A Neural Image Caption Generator.
- NMT-Keras: Neural Machine Translation using Keras.
- Conx - easy-to-use layer on top of Keras, with visualizations (eg, no knowledge of numpy needed)