Modèle Keras
Qu’est-ce qu’un modèle Keras ?
Keras est une bibliothèque de haut niveau pour le deep learning, basée sur Theano et TensorFlow. Écrite en Python, elle offre une solution facile et pratique pour créer une gamme de modèles de deep learning. Keras est désormais un choix populaire d’API de haut niveau lorsqu’il s’agit de développer et de tester des réseaux de neurones. Grâce à l’API de haut niveau Keras, il est désormais très facile de créer des couches pour les réseaux de neurones, ainsi que de mettre en place des architectures complexes. Un modèle Keras est composé soit d’une séquence, soit d’un graphe autonome. Il est par ailleurs possible de combiner plusieurs modules complètement configurables afin de créer de nouveaux modèles. Dans la liste des modules configurables figurent les couches de neurones, les fonctions de coûts, d’optimisation, d’abandon, de perte et d’activation ainsi que les schémas d’initialisation et de régularisation. L’un des principaux avantages de la modularité est qu’elle permet d’ajouter facilement de nouvelles fonctionnalités sous forme de modules distincts. Keras est donc très flexible et bien adapté à la recherche innovante. Vous pouvez développer un modèle Keras de deux manières : séquentielle et fonctionnelle.
Mode API séquentiel
Le modèle API séquentiel est le modèle le plus simple. Il comprend une pile linéaire de couches qui vous permet de configurer les modèles couche par couche pour la plupart des problèmes. Bien que simple d’utilisation, ce modèle est restreint dans ses fonctionnalités topologiques. Il est en effet impossible de configurer des modèles ayant des couches partagées ou plusieurs entrées/sorties.
Mode API fonctionnel
Le mode API fonctionnel est particulièrement adapté à la création de modèles complexes nécessitant une grande souplesse. Il permet de définir des modèles dont les couches sont connectées à d’autres couches que la précédente et la suivante. Les modèles sont définis en créant des instances de couches et en les connectant directement l’une à l’autre par paires. Avec ce modèle, il est possible de créer des réseaux complexes tels que des réseaux siamois, des réseaux résiduels, des modèles à entrées et sorties multiples, des graphes orientés acycliques (DAG) et des modèles avec des couches partagées.