On Demand
: 9h00 - 16h30
Fin : JJ-MM-YYYY
Durée :3,0 jours
à partir de
£ AEE0,00 euro
(hors TVA)
Keras est une bibliothèque open source d’apprentissage profond, écrite en Python, qui fournit une interface unifiée pour plusieurs backends, dont TensorFlow. L’objectif principal de Keras est de rendre l’utilisation de ces bibliothèques accessible et facile, en particulier pour les débutants. Keras est conçu pour le prototypage rapide et efficace de réseaux de neurones, tout en restant simple d’utilisation et particulièrement adapté à la mise en œuvre rapide de ces réseaux.
À l’issue de cette formation, vous serez en mesure de concevoir et entraîner des réseaux de neurones de manière autonome. La formation nécessite des connaissances préalables en Python, statistiques et mathématiques. Vous aurez l’occasion de mettre en pratique vos connaissances à travers de nombreux exercices et d’apporter vos propres exemples issus de votre expérience professionnelle. La formation se déroule en utilisant Jupyter Notebook comme interface de programmation.
Lundi 2 juin au mercredi 4 juin 2025
9h00 à 16h30, incluant les pauses
Le Deep Learning (apprentissage profond), le Machine Learning (apprentissage automatique) et l’Intelligence Artificielle (IA) sont des sous-domaines interconnectés dans le domaine des technologies intelligentes.
Les réseaux de neurones sont des modèles inspirés du fonctionnement du cerveau humain, composés de couches de neurones artificiels. Chaque neurone reçoit des entrées, effectue une transformation (généralement une somme pondérée suivie d’une fonction d’activation), et envoie sa sortie aux neurones suivants. Ces réseaux peuvent apprendre à partir de données en ajustant les poids de ces connexions lors du processus d’entraînement.
Keras permet de définir des réseaux de neurones avec une structure composée de différentes couches (calques). Vous pouvez définir des modèles séquentiels (couches empilées les unes après les autres) ou des modèles fonctionnels plus complexes pour des architectures non linéaires.
Avant d’entraîner un modèle, les données doivent être préparées (normalisation, nettoyage, encodage). Keras fournit des outils pour faciliter cette étape.
Keras peut être utilisé pour des tâches de classification binaire ou multiple, en utilisant des fonctions d’activation comme softmax pour prédire les probabilités d’appartenance à différentes classes.
Keras fonctionne sur des backends comme TensorFlow, qui est un framework d’apprentissage profond robuste, optimisé pour les calculs à grande échelle.
Il est essentiel de choisir le bon modèle en fonction de la tâche à accomplir (régression, classification, etc.). Keras offre une gamme de modèles pré-existants.
L’apprentissage se fait par une boucle itérative de propagation avant, de calcul de la perte, et d’ajustement des poids via un algorithme de rétropropagation, souvent avec l’optimiseur Adam.
Les CNN sont spécifiquement utilisés pour les données structurées en images ou en vidéos. Ils effectuent des convolutions (filtres appliqués sur les données d’entrée) pour extraire des caractéristiques pertinentes.
L’augmentation des données (par exemple, rotation, zoom, miroir) permet de créer des jeux de données plus variés, réduisant ainsi le surapprentissage.
Les CNN pré-entraînés, comme VGG16 ou ResNet, peuvent être utilisés pour des tâches spécifiques, en ajustant seulement les dernières couches pour s’adapter à de nouveaux problèmes.
Les techniques de transfert de l’apprentissage permettent d’extraire des fonctionnalités d’un modèle préexistant et de les affiner pour la tâche cible.
Les RNN sont adaptés aux données séquentielles (ex : texte, séries temporelles). Keras offre des couches comme SimpleRNN, LSTM (Long Short-Term Memory) et GRU (Gated Recurrent Unit) pour traiter ces données.
Les RNN sont conçus pour apprendre des dépendances dans des séquences de données. LSTM et GRU sont des variantes de RNN qui résolvent le problème de l’oubli dans des séquences longues.
LSTM et GRU sont des architectures de réseaux récurrents qui permettent de mieux gérer les dépendances à long terme dans des séries temporelles complexes.
Le dropout récurrent aide à prévenir le surapprentissage en supprimant aléatoirement certaines connexions lors de l’entraînement.
Les données doivent être représentées sous des formes adaptées à l’apprentissage profond, souvent sous forme de matrices ou de vecteurs.
Pandas est un outil essentiel pour le traitement des données en Python, permettant de charger, transformer et manipuler les données avant l’entraînement.
Matplotlib permet de créer des graphiques pour mieux comprendre et visualiser les tendances et relations dans les données.
Les variables qualitatives (catégorielles) sont souvent converties en valeurs numériques via des techniques comme le one-hot encoding.
La standardisation des données permet de les mettre à une échelle commune pour améliorer la convergence lors de l’entraînement.
La réduction de dimensions, comme avec l’Analyse en Composantes Principales (ACP), permet de simplifier les données tout en préservant leurs caractéristiques essentielles.
Des techniques comme la conversion en niveaux de gris, la mise à l’échelle ou la normalisation sont utilisées pour préparer les images pour l’entraînement.
Les données textuelles sont transformées en vecteurs à l’aide de techniques telles que TF-IDF ou des word embeddings comme Word2Vec ou GloVe.
L’étude de cas pratique permet de consolider les connaissances acquises pendant la formation, en appliquant les concepts à un problème réel, de la préparation des données à l’évaluation du modèle final.
Cette structure permet d’approfondir progressivement la compréhension et la pratique de l’apprentissage profond avec Keras, en couvrant les aspects théoriques et pratiques des différents types de réseaux de neurones et des techniques associées.