Keras es una biblioteca que funciona a nivel de modelo: proporciona bloques modulares sobre los que se pueden desarrollar modelos complejos de aprendizaje profundo. A diferencia de los frameworks, este software de código abierto no se utiliza para operaciones sencillas de bajo nivel, sino que utiliza las bibliotecas de los frameworks de aprendizaje automático vinculadas, que en cierto modo actúan como un motor de backend para Keras. Las capas de la red neuronal que se quieren configurar se relacionan entre sí de acuerdo con el principio modular, sin que el usuario de Keras tenga que comprender o controlar directamente el propio backend del framework elegido.
Como hemos mencionado, Keras se basa especialmente en las herramientas TensorFlow, Theano y Microsoft Cognitive Toolkit, para las cuales existen interfaces listas para usar que permiten un acceso rápido e intuitivo al backend correspondiente. Así, no es necesario que te decidas por un framework concreto, porque es posible cambiar de backend fácilmente. Si lo prefieres, también puedes elegir un backend alternativo, aparte de estas tres soluciones. Para ello, solo debes especificarlo en el archivo de configuración (keras.json) y aplicarlo mediante las funciones “placeholder”, “variable” y “function”.