Le terme «deep learning» est utilisé dans plusieurs contextes, parfois comme un «buzz word» et son usage n’est pas toujours approprié.
Le «deep learning», ou l’apprentissage profond, est une méthode d’apprentissage machine complexe utilisée dans divers domaines. Sa forme simplifiée est connue sous le nom de «neural networks», ou réseaux de neurones. Elle fait référence au fonctionnement du cerveau.
Les réseaux de neurones
Avant de plonger dans les spécificités du «deep learning», commençons par une brève explication des réseaux de neurones. Ils peuvent être perçus, de manière très simplifiée, comme des machines prenant en entrée plusieurs paramètres et donnant en sortie une valeur. Par exemple, avec les paramètres d’entrée suivants: l’âge, le genre et le type de véhicule; il est possible de déterminer le risque d’accident de la route pour ce conducteur. Il est possible d’obtenir une valeur quantitative en sortie en effectuant des opérations mathématiques entre les paramètres d’entrée. Ces opérations mathématiques sont effectuées dans les couches cachées du réseau de neurones.
Le terme «deep» fait référence au nombre de couches cachées dans le réseau de neurones. Contrairement aux réseaux de neurones standards qui en utilisent très peu, le «deep learning» utilise un grand nombre de couches cachées. Cela permet de prendre beaucoup plus de paramètres en entrée, par exemple tous les pixels d’une image, et d’en extraire quelques valeurs. La complexité des opérations mathématiques et leur nombre augmentent considérablement, ce qui rend l'entraînement du réseau plus fastidieux.
Les scénarios d’apprentissage
Un réseau peut être entraîné de plusieurs manières, dont les deux principales sont: supervisée et non supervisée. Dans un scénario d’apprentissage supervisé, les données d’apprentissage ont été annotées pour que le système puisse apprendre par lui-même en comparant son résultat avec le résultat attendu. C'est un scénario d'apprentissage similaire que l'on retrouve dans le cerveau d'un enfant qui apprend à lire l'alphabet, il associe la représentation graphique d’une lettre à une lettre. Après un certain temps, il sera capable d’identifier les lettres avec une bonne précision. Plus tard, il pourra les identifier même si la police utilisée pour les illustrer varie. Il est en mesure de faire ainsi puisque des connexions entre ses neurones se sont créées afin d’interpréter les signaux émis par la rétine et d’apposer une étiquette sur la lettre vue.
Dans un scénario d’apprentissage non supervisé, le système tentera de regrouper les éléments pouvant avoir une étiquette similaire sans préalablement avoir d’information sur les données. Par exemple regrouper dans des albums des photos par thème sans donner au système de l’information sur les thèmes recherchés. Cette méthode élimine le besoin de prétraiter un large échantillon de données, mais peut donner des résultats inattendus. L'utiliser requiert donc une bonne connaissance du domaine d’application.
mPhase et l’apprentissage machine
Au fil de récents projets, mPhase a développé une expertise dans l’apprentissage machine et l’utilise notamment pour son application mScan ALPR et dans le module de classification de visages utilisé dans mDisplay.
Crédit photo: Freepik