Keras is an open-sourcelibrary that provides a Pythoninterface for artificial neural networks. Keras was first independent software, then integrated into the TensorFlowlibrary, and later supporting more. "Keras 3 is a full rewrite of Keras [and can be used] as a low-level cross-framework language to develop custom components such as layers, models, or metrics that can be used in native workflows in JAX, TensorFlow, or PyTorch — with one codebase."[2] Keras 3 will be the default Keras version for TensorFlow 2.16 onwards, but Keras 2 can still be used.[3]
History
The name 'Keras' derives from the Ancient Greek word κέρας (Keras) meaning 'horn'.[4]
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),[5] and its primary author and maintainer is François Chollet, a Google engineer. Chollet is also the author of the Xception deep neural network model.[6]
As of version 2.4, 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.[10]
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 in deep neural network area.[11] The code is hosted on GitHub, and community support forums include the GitHub issues page, and a Slack channel.[citation needed]