Keras est une bibliothèque agissant au niveau du modèle : elle met à disposition des modules permettant de développer des modèles de deep learning (apprentissage profond) complexes. Contrairement aux frameworks indépendants, ce logiciel open source ne s’occupe pas des opérations « low level » et utilise à cet effet les bibliothèques de frameworks d’apprentissage automatique associés qui tiennent pratiquement lieu de moteurs back-end pour Keras. Conformément au principe de modularité, les couches désirées pour le réseau neuronal à mettre en place sont connectées. Pour autant, il n’est pas nécessaire de comprendre l’infrastructure réelle du framework choisi et l’utilisateur de Keras n’a pas à la démarrer directement.
Comme indiqué précédemment, Keras repose essentiellement sur les trois outils TensorFlow, Theano et Microsoft Cognitive Toolkit, qui disposent d’ores et déjà d’interfaces prêtes à l’emploi permettant un accès rapide et intuitif à l’infrastructure concernée. Vous n’avez donc pas à choisir un framework et pouvez aisément passer d’une infrastructure à l’autre. Il est également possible de choisir une infrastructure alternative ne faisant pas partie des trois solutions mentionnées précédemment. Pour cela, il suffit que cette infrastructure soit indiquée dans le fichier de configuration (keras.json) et dispose des trois fonctions « placeholder », « variable » et « function ».