Keras is one of the most widely used frameworks for deep learning used today. It runs in Python and can run on top of TensorFlow, Theano and CNTK, and is therefore one of the primary choices for Deep Learning engineers these days.
However, I find that the Keras documentation is slightly… unwelcoming.
With that, I mean that the docs simply (and perhaps agreeably) describe the Keras APIs, thus the functions that can be used within Keras, without a thorough intuitive explanation about why certain things are as they are.
In this Collection, I will be working towards a comprehensive yet complete overview of Keras. I will teach you how it works and how you can create simple and more complex models in Python. Additionally, I will cover extensions to the Keras framework that have been developed by the deep learning community.
This way, you’ll be up to speed with Keras before you know!
If you wish to acquire more information about deep learning first or wish to know what these ‘Collections’ are, you may be interested in these links:
- Dissecting Deep Learning: a Collection that covers the concepts of deep learning in a framework-agnostic way.
- About the Collections project: the rationale for why I’m putting a lot of time in these works, as well as what they are.
Please note that this is a work in progress. I always have the motto to publish whatever is ready which allows the reader to start learning already. That’s why you may find that many of the blogs noted below haven’t been finished yet. However, please come back every now and then, because I’ll do my best to add new ones as often as I can.
Also feel free to leave any comments below! 🙂
Table of contents
- Getting to know Keras
- The Keras Sequential API - basic examples
- The Keras Sequential API - advanced examples
- The Keras Functional API - basic examples
- The Keras Functional API - advanced examples
- Data Preprocessing with Keras
- Other Keras topics
Getting to know Keras
- What is Keras and why has it emerged?
- The architecture of Keras.
- The Sequential and the Functional APIs.
The Keras Sequential API – basic examples
Basic neural networks
- Why you can’t truly create Rosenblatt’s Perceptron with Keras.
- How to create a basic MLP classifier with the Keras Sequential API
- Creating an MLP for regression with Keras
- Implementing ReLU, Sigmoid and Tanh activation functions in Keras
Convolutional Neural Networks
- What are the differences between Keras Conv1D, Conv2D and Conv3D?
- How to create a Convolutional Neural Network classifier with Keras?
- What is depthwise separable convolution? A Keras example.
- What is transposed convolution? A Keras example.
- Creating Deep Convolutional Autoencoders with Keras.
- Cropping your CNN input with Cropping layers in Keras.
- How to use Upsampling in Keras? A practical example.
- Harnessing ZeroPadding in Keras for uniform input.
- Max Pooling, Average Pooling, Global Max Pooling, Global Average Pooling – Examples in Keras.
- LocallyConnected layers in Keras.
Recurrent Neural Networks
- A Keras SimpleRNN example.
- A Keras GRU example.
- LSTMs in Keras.
- Extending LSTMs with ConvLSTMs – a Keras example.
The Keras Sequential API – advanced examples
Advanced Activation Layers
- Creating a LeakyReLU activating model in Keras.
- Using Keras to create a Parametric Rectified Linear Unit (PReLU) model.
- Exponential Linear Unit – a Keras based example.
- What is ThresholdedReLU? An example with Keras.
- BatchNormalization in Keras.
- Dropout, AlphaDropout and GaussianDropout with Keras.
- Random data augmentation with GaussianNoise in Keras.
The Keras Functional API – basic examples
Work in progress.
The Keras Functional API – advanced examples
Work in progress
Data Preprocessing with Keras
Work in progress.
Other Keras topics
- Avoid wasting resources with EarlyStopping and ModelCheckpoint in Keras
- Linearity vs nonlinearity with Keras: an example with classification.