└── README.md /README.md: -------------------------------------------------------------------------------- 1 | # Keras resources 2 | 3 | This is a directory of tutorials and open-source code repositories for working with Keras, the Python deep learning library. 4 | 5 | If you have a high-quality tutorial or project to add, please open a PR. 6 | 7 | ## Official starter resources 8 | 9 | - [keras.io](http://keras.io/) - Keras documentation 10 | - [Getting started with the Sequential model](http://keras.io/getting-started/sequential-model-guide/) 11 | - [Getting started with the functional API](http://keras.io/getting-started/functional-api-guide/) 12 | - [Keras FAQ](http://keras.io/getting-started/faq/) 13 | 14 | ## Tutorials 15 | 16 | - [Quick start: the Iris dataset in Keras and scikit-learn](https://github.com/fastforwardlabs/keras-hello-world/blob/master/kerashelloworld.ipynb) 17 | - [Using pre-trained word embeddings in a Keras model](http://blog.keras.io/using-pre-trained-word-embeddings-in-a-keras-model.html) 18 | - [Building powerful image classification models using very little data](http://blog.keras.io/building-powerful-image-classification-models-using-very-little-data.html) 19 | - [Building Autoencoders in Keras](http://blog.keras.io/building-autoencoders-in-keras.html) 20 | - [A complete guide to using Keras as part of a TensorFlow workflow](http://blog.keras.io/keras-as-a-simplified-interface-to-tensorflow-tutorial.html) 21 | - Introduction to Keras, from University of Waterloo: [video](https://www.youtube.com/watch?v=Tp3SaRbql4k) - [slides](https://uwaterloo.ca/data-science/sites/ca.data-science/files/uploads/files/keras_tutorial.pdf) 22 | - Introduction to Deep Learning with Keras, from CERN: [video](http://cds.cern.ch/record/2157570?ln=en) - [slides](https://indico.cern.ch/event/506145/contributions/2132944/attachments/1258124/1858154/NNinKeras_MPaganini.pdf) 23 | - [Installing Keras for deep learning](http://www.pyimagesearch.com/2016/07/18/installing-keras-for-deep-learning/) 24 | - [Develop Your First Neural Network in Python With Keras Step-By-Step](http://machinelearningmastery.com/tutorial-first-neural-network-python-keras/) 25 | - [Practical Neural Networks with Keras: Classifying Yelp Reviews](http://www.developintelligence.com/blog/2017/06/practical-neural-networks-keras-classifying-yelp-reviews/) (Shows basic classification and how to set up a GPU instance on AWS) 26 | - [Understanding Stateful LSTM Recurrent Neural Networks in Python with Keras](http://machinelearningmastery.com/understanding-stateful-lstm-recurrent-neural-networks-python-keras/) 27 | - [Time Series Prediction with LSTM Recurrent Neural Networks in Python with Keras](http://machinelearningmastery.com/time-series-prediction-lstm-recurrent-neural-networks-python-keras/) 28 | - [Keras video tutorials from Dan Van Boxel](https://www.youtube.com/playlist?list=PLFxrZqbLojdKuK7Lm6uamegEFGW2wki6P) 29 | - [Keras Deep Learning Tutorial for Kaggle 2nd Annual Data Science Bowl](https://github.com/jocicmarko/kaggle-dsb2-keras/) 30 | - [Collection of tutorials setting up DNNs with Keras](http://ml4a.github.io/guides/) 31 | - [Fast.AI - Practical Deep Learning For Coders, Part 1](http://course.fast.ai/) (great information on deep learning in general, heavily uses Keras for the labs) 32 | - [Keras Tutorial: Content Based Image Retrieval Using a Convolutional Denoising Autoencoder](https://blog.sicara.com/keras-tutorial-content-based-image-retrieval-convolutional-denoising-autoencoder-dc91450cc511) 33 | - [A Bit of Deep Learning and Keras](https://www.youtube.com/watch?v=UOEhojCzWrY&list=PLgJhDSE2ZLxaPX0jteHZG4skdj8ZrST9d): a multipart video introduction to deep learning and keras 34 | - [Five simple examples of the Keras Functional API](http://www.puzzlr.org/the-keras-functional-api-five-simple-examples/) 35 | - [Keras video tutorials playlist from Deeplizard](https://www.youtube.com/watch?v=RznKVRTFkBY&list=PLZbbT5o_s2xrwRnXk_yCPtnqqo4_u2YGL) 36 | 37 | ## Books based on Keras 38 | 39 | - [Deep Learning with Python](https://www.amazon.com/Deep-Learning-Python-Francois-Chollet/dp/1617294438/) 40 | - [Deep Learning with Keras](https://www.amazon.com/Deep-Learning-Keras-Implementing-learning/dp/1787128423/) 41 | - [Deep Learning and the Game of Go (MEAP)](https://www.manning.com/books/deep-learning-and-the-game-of-go) 42 | 43 | ## Code examples 44 | 45 | ### Working with text 46 | 47 | - [Reuters topic classification](https://github.com/fchollet/keras/blob/master/examples/reuters_mlp.py) 48 | - [LSTM on the IMDB dataset (text sentiment classification)](https://github.com/fchollet/keras/blob/master/examples/imdb_lstm.py) 49 | - [Bidirectional LSTM on the IMDB dataset](https://github.com/fchollet/keras/blob/master/examples/imdb_bidirectional_lstm.py) 50 | - [1D CNN on the IMDB dataset](https://github.com/fchollet/keras/blob/master/examples/imdb_cnn.py) 51 | - [1D CNN-LSTM on the IMDB dataset](https://github.com/fchollet/keras/blob/master/examples/imdb_cnn_lstm.py) 52 | - [LSTM-based network on the bAbI dataset](https://github.com/fchollet/keras/blob/master/examples/babi_rnn.py) 53 | - [Memory network on the bAbI dataset (reading comprehension question answering)](https://github.com/fchollet/keras/blob/master/examples/babi_memnn.py) 54 | - [Sequence to sequence learning for performing additions of strings of digits](https://github.com/fchollet/keras/blob/master/examples/addition_rnn.py) 55 | - [LSTM text generation](https://github.com/fchollet/keras/blob/master/examples/lstm_text_generation.py) 56 | - [Using pre-trained word embeddings](https://github.com/fchollet/keras/blob/master/examples/pretrained_word_embeddings.py) 57 | - [Monolingual and Multilingual Image Captioning](https://github.com/elliottd/GroundedTranslation) 58 | - [FastText on the IMDB dataset](https://github.com/fchollet/keras/blob/master/examples/imdb_fasttext.py) 59 | - [Structurally constrained recurrent nets text generation](https://github.com/nzw0301/keras-examples/blob/master/SCRNLM.ipynb) 60 | - [Character-level convolutional neural nets for text classification](https://github.com/johnb30/py_crepe) 61 | - [LSTM to predict gender of a name](https://github.com/divamgupta/lstm-gender-predictor) 62 | - [Language/dialect identification with multiple character-level CNNs](https://github.com/boknilev/dsl-char-cnn) 63 | 64 | ### Working with images 65 | 66 | - [Simple CNN on MNIST](https://github.com/fchollet/keras/blob/master/examples/mnist_cnn.py) 67 | - [Simple CNN on CIFAR10 with data augmentation](https://github.com/fchollet/keras/blob/master/examples/cifar10_cnn.py) 68 | - [Inception v3](https://github.com/fchollet/keras/blob/master/examples/inception_v3.py) 69 | - [VGG 16 (with pre-trained weights)](https://gist.github.com/baraldilorenzo/07d7802847aaad0a35d3) 70 | - [VGG 19 (with pre-trained weights)](https://gist.github.com/baraldilorenzo/8d096f48a1be4a2d660d) 71 | - ResNet 50 (with pre-trained weights): [1](https://github.com/fchollet/keras/pull/3266/files) - [2](https://github.com/raghakot/keras-resnet) 72 | - [FractalNet](https://github.com/snf/keras-fractalnet) 73 | - [AlexNet, VGG 16, VGG 19, and class heatmap visualization](https://github.com/heuritech/convnets-keras) 74 | - [Visual-Semantic Embedding](https://github.com/awentzonline/keras-visual-semantic-embedding) 75 | - Variational Autoencoder: [with deconvolutions](https://github.com/fchollet/keras/blob/master/examples/variational_autoencoder_deconv.py) - [with upsampling](https://github.com/fchollet/keras/blob/master/examples/variational_autoencoder.py) 76 | - [Visual question answering](https://github.com/avisingh599/visual-qa) 77 | - [Deep Networks with Stochastic Depth](https://github.com/dblN/stochastic_depth_keras) 78 | - [Smile detection with a CNN](https://github.com/kylemcdonald/SmileCNN) 79 | - [VGG-CAM](https://github.com/tdeboissiere/VGG16CAM-keras) 80 | - [t-SNE of image CNN fc7 activations](https://github.com/ml4a/ml4a-guides/blob/master/notebooks/tsne-images.ipynb) 81 | - [VGG16 Deconvolution network](https://github.com/tdeboissiere/DeepLearningImplementations/tree/master/DeconvNet) 82 | - Wide Residual Networks (with pre-trained weights): [1](https://github.com/asmith26/wide_resnets_keras) - [2](https://github.com/titu1994/Wide-Residual-Networks) 83 | - Ultrasound nerve segmentation: [1](https://github.com/jocicmarko/ultrasound-nerve-segmentation) - [2](https://github.com/raghakot/ultrasound-nerve-segmentation) 84 | - [DeepMask object segmentation](https://github.com/abbypa/NNProject_DeepMask) 85 | - Densely Connected Convolutional Networks: [1](https://github.com/tdeboissiere/DeepLearningImplementations/tree/master/DenseNet) - [2](https://github.com/titu1994/DenseNet) 86 | - [Snapshot Ensembles: Train 1, Get M for Free](https://github.com/titu1994/Snapshot-Ensembles) 87 | - [Single Shot MultiBox Detector](https://github.com/rykov8/ssd_keras) 88 | - [Popular Image Segmentation Models : FCN, Segnet, U-Net etc. ](https://github.com/divamgupta/image-segmentation-keras) 89 | 90 | ### Creative visual applications 91 | 92 | - [Real-time style transfer](https://github.com/awentzonline/keras-rtst) 93 | - Style transfer: [1](https://github.com/fchollet/keras/blob/master/examples/neural_style_transfer.py) - [2](https://github.com/titu1994/Neural-Style-Transfer) 94 | - [Image analogies](https://github.com/awentzonline/image-analogies): Generate image analogies using neural matching and blending. 95 | - [Visualizing the filters learned by a CNN](https://github.com/fchollet/keras/blob/master/examples/conv_filter_visualization.py) 96 | - [Deep dreams](https://github.com/fchollet/keras/blob/master/examples/deep_dream.py) 97 | - GAN / DCGAN: [1](https://github.com/phreeza/keras-GAN) - [2](https://github.com/jacobgil/keras-dcgan) - [3](https://github.com/osh/KerasGAN) - [4](https://github.com/tdeboissiere/DeepLearningImplementations/tree/master/GAN) 98 | - [InfoGAN](https://github.com/tdeboissiere/DeepLearningImplementations/tree/master/InfoGAN) 99 | - [pix2pix](https://github.com/tdeboissiere/DeepLearningImplementations/tree/master/pix2pix) 100 | - [DFI](https://github.com/tdeboissiere/DeepLearningImplementations/tree/master/DFI): Deep Feature Interpolation 101 | - [Colorful Image colorization](https://github.com/tdeboissiere/DeepLearningImplementations/tree/master/Colorful): B&W to color 102 | 103 | ### Reinforcement learning 104 | 105 | - [DQN](https://github.com/sherjilozair/dqn) 106 | - [FlappyBird DQN](https://github.com/yanpanlau/Keras-FlappyBird) 107 | - [async-RL](https://github.com/coreylynch/async-rl): Tensorflow + Keras + OpenAI Gym implementation of 1-step Q Learning from "Asynchronous Methods for Deep Reinforcement Learning" 108 | - [keras-rl](https://github.com/matthiasplappert/keras-rl): A library for state-of-the-art reinforcement learning. Integrates with OpenAI Gym and implements DQN, double DQN, Continuous DQN, and DDPG. 109 | 110 | ### Miscallenous architecture blueprints 111 | 112 | - [Stateful LSTM](https://github.com/fchollet/keras/blob/master/examples/stateful_lstm.py) 113 | - [Siamese network](https://github.com/fchollet/keras/blob/master/examples/mnist_siamese_graph.py) 114 | - [Pretraining on a different dataset](https://github.com/fchollet/keras/blob/master/examples/mnist_transfer_cnn.py) 115 | - [Neural programmer-interpreter](https://github.com/mokemokechicken/keras_npi) 116 | 117 | ## Third-party libraries 118 | 119 | - [Elephas](https://github.com/maxpumperla/elephas): Distributed Deep Learning with Keras & Spark 120 | - [Hyperas](https://github.com/maxpumperla/hyperas): Hyperparameter optimization 121 | - [Hera](https://github.com/jakebian/hera): in-browser metrics dashboard for Keras models 122 | - [Kerlym](https://github.com/osh/kerlym): reinforcement learning with Keras and OpenAI Gym 123 | - [Qlearning4K](https://github.com/farizrahman4u/qlearning4k): reinforcement learning add-on for Keras 124 | - [seq2seq](https://github.com/farizrahman4u/seq2seq): Sequence to Sequence Learning with Keras 125 | - [Seya](https://github.com/EderSantana/seya): Keras extras 126 | - [Keras Language Modeling](https://github.com/codekansas/keras-language-modeling): Language modeling tools for Keras 127 | - [Recurrent Shop](https://github.com/datalogai/recurrentshop): Framework for building complex recurrent neural networks with Keras 128 | - [Keras.js](https://github.com/transcranial/keras-js): Run trained Keras models in the browser, with GPU support 129 | - [keras-vis](https://github.com/raghakot/keras-vis): Neural network visualization toolkit for keras. 130 | 131 | ## Projects built with Keras 132 | 133 | - [RocAlphaGo](https://github.com/Rochester-NRT/RocAlphaGo): An independent, student-led replication of DeepMind's 2016 Nature publication, "Mastering the game of Go with deep neural networks and tree search" 134 | - [BetaGo](https://github.com/maxpumperla/betago): Deep Learning Go bots using Keras 135 | - [DeepJazz](https://github.com/jisungk/deepjazz): Deep learning driven jazz generation using Keras 136 | - [dataset-sts](https://github.com/brmson/dataset-sts): Semantic Text Similarity Dataset Hub 137 | - [snli-entailment](https://github.com/shyamupa/snli-entailment): Independent implementation of attention model for textual entailment from the paper ["Reasoning about Entailment with Neural Attention"](http://arxiv.org/abs/1509.06664). 138 | - [Headline generator](https://github.com/udibr/headlines): independent implementation of [Generating News Headlines with Recurrent Neural Networks](http://arxiv.org/abs/1512.01712) 139 | - [LipNet](https://github.com/rizkiarm/LipNet): independent implementation of [LipNet: End-to-End Sentence-level Lipreading](https://arxiv.org/abs/1611.01599). 140 | - [caption_generator](https://github.com/anuragmishracse/caption_generator): An implementation of image caption generation in natural language inspired from [Show and Tell: A Neural Image Caption Generator](https://arxiv.org/pdf/1411.4555.pdf). 141 | - [NMT-Keras](https://github.com/lvapeab/nmt-keras): Neural Machine Translation using Keras. 142 | - [Conx](https://conx.readthedocs.io/) - easy-to-use layer on top of Keras, with visualizations (eg, no knowledge of numpy needed) 143 | --------------------------------------------------------------------------------