Initially, Keras grew up as a handy add-on over Theano. Hence, his Greek name is κέρας, which means “horn” in Greek, which, in turn, is a reference to Homer’s Odyssey. After some time Keras began to maintain Tensorflow, and then became a part of it.

Basic principles of Keras

Convenience to the user. Keras is an API designed for people, not machines. It puts the user interface in front and in the center. Keras follows best practices for reducing cognitive load: it offers consistent and simple APIs, it minimizes the number of user actions required for common use cases, and provides clear and effective feedback with user error.

Modularity. A model is a sequence or schedule of autonomous, fully customizable modules that can be connected together with minimal restrictions. In particular, neural layers, cost functions, optimizers, initialization schemes, activation functions, regularization schemes are autonomous modules that you can combine to create new models.

Easy scalability. New modules are easy to add (as new classes and functions), and existing modules provide many examples. To be able to easily create new modules, you can fully express your expressiveness, which makes Keras suitable for advanced research.

Work with Python. There are no separate model configuration files in a declarative format. Models are described in Python code, which is compact, easier to debug, and provides ease of extensibility.

 Installation and configuration.

Front-end – the client side of the user interface to the software and hardware of the service. Backend – hardware and software of the service. Front- and backend is a variant of software architecture. The terms appeared in software engineering due to the development of the principle of division of responsibility between external representation and internal implementation. The back-end creates some API that uses the front-end. Thus, the front-end developer does not need to know the features of the server implementation, and the back-end developer does not need to know the front-end implementation. Keras allows you to use various other frameworks as a backend. In this case, the written code will be executed regardless of the used backend. Development began, as already mentioned, with Theano, but over time Tensorflow was added.

Keras can be installed as a regular Python package:

pip install keras