Keras
Neural network library
- 2 min read
- 2 chapters
- 3 labs on Lably
Learn it on Lably
History
The name 'Keras' derives from the Ancient Greek word κέρας (Keras) meaning 'horn'.
Designed to enable fast experimentation with deep neural networks, Keras focuses on being user-friendly, modular, and extensible. It was developed as part of the research effort of project ONEIROS (Open-ended Neuro-Electronic Intelligent Robot Operating System), and its primary author and maintainer is François Chollet, who was a Google engineer until leaving the company in 2024. Chollet is also the author of the Xception deep neural network model.
Up until version 2.3, Keras supported multiple backends, including TensorFlow, Microsoft Cognitive Toolkit, Theano, and PlaidML.
From version 2.4 up until version 3.0, only TensorFlow was supported. Starting with version 3.0 (as well as its preview version, Keras Core), however, Keras has become multi-backend again, supporting TensorFlow, JAX, and PyTorch. It now also supports OpenVINO.
Sign in to keep reading
One more chapter is free with a Lably account.
Features
Keras contains numerous implementations of commonly used neural-network building blocks such as layers, objectives, activation functions, optimizers, and a host of tools for working with image and text data to simplify programming for deep neural networks. The code is hosted on GitHub, and community support forums include the GitHub issues page.
In addition to standard neural networks, Keras has support for convolutional and recurrent neural networks. It supports other common utility layers like dropout, batch normalization, and pooling.
Keras allows users to produce deep models on smartphones (iOS and Android), on the web, or on the Java Virtual Machine. It also allows use of distributed training of deep-learning models on clusters of graphics processing units (GPU) and tensor processing units (TPU).

