Définition Deep Learning
⌚: 6 minutes
Le Deep Learning est un type d‘apprentissage machine (ML) et d’intelligence artificielle (IA) qui imite la façon dont les humains acquièrent certains types de connaissances. Le Deep Learning est un élément important de la science des données, qui comprend les statistiques et la modélisation prédictive. Il est extrêmement utile aux scientifiques chargés de collecter, d’analyser et d’interpréter de grandes quantités de données ; Le Deep Learning rend ce processus plus rapide et plus facile.
Dans sa forme la plus simple, Le Deep Learning peut être considéré comme un moyen d’automatiser l’analyse prédictive. Alors que les algorithmes traditionnels d’apprentissage machine sont linéaires, les algorithmes de Deep Learning sont empilés dans une hiérarchie de complexité et d’abstraction croissantes.
Pour comprendre Le Deep Learning, imaginez un enfant dont le premier mot est chien. Le jeune enfant apprend ce qu’est un chien – et ce qu’il n’est pas – en pointant des objets et en prononçant le mot chien. Le parent dit : « Oui, c’est un chien » ou « Non, ce n’est pas un chien ». En continuant à montrer des objets du doigt, le jeune enfant devient plus conscient des caractéristiques que possèdent tous les chiens. Ce que le jeune enfant fait, sans le savoir, c’est clarifier une abstraction complexe – le concept de chien – en construisant une hiérarchie dans laquelle chaque niveau d’abstraction est créé avec les connaissances acquises au niveau précédent de la hiérarchie.
Comment fonctionne Le Deep Learning
Les programmes informatiques qui utilisent Le Deep Learning passent par le même processus que l’apprentissage du jeune enfant pour identifier le chien. Chaque algorithme de la hiérarchie applique une transformation non linéaire à son entrée et utilise ce qu’il apprend pour créer un modèle statistique en sortie. Les itérations se poursuivent jusqu’à ce que la sortie ait atteint un niveau de précision acceptable. Le nombre de couches de traitement par lesquelles les données doivent passer est ce qui a inspiré le »deep ».
Dans l’apprentissage machine traditionnel, le processus d’apprentissage est supervisé, et le programmeur doit être extrêmement précis lorsqu’il indique à l’ordinateur le type de choses qu’il doit rechercher pour décider si une image contient un chien ou non. Il s’agit d’un processus laborieux appelé extraction de caractéristiques, et le taux de réussite de l’ordinateur dépend entièrement de la capacité du programmeur à définir avec précision un ensemble de caractéristiques pour « chien ». L’avantage de Le Deep Learning est que le programme construit lui-même l’ensemble de caractéristiques sans supervision. L’apprentissage non supervisé est non seulement plus rapide, mais il est aussi généralement plus précis.
Au départ, le programme informatique peut recevoir des données d’entraînement – un ensemble d’images pour lesquelles un humain a étiqueté chaque image « chien » ou « pas chien » avec des méta-tags. Le programme utilise les informations qu’il reçoit des données d’entraînement pour créer un ensemble de caractéristiques pour « chien » et construire un modèle prédictif. Dans ce cas, le modèle que l’ordinateur crée en premier lieu peut prédire que tout ce qui se trouve dans une image qui a quatre pattes et une queue doit être étiqueté « chien ». Bien entendu, le programme n’est pas au courant des étiquettes « quatre pattes » ou « queue ». Il se contentera de rechercher des modèles de pixels dans les données numériques. À chaque itération, le modèle prédictif devient plus complexe et plus précis.
Contrairement au jeune enfant, qui mettra des semaines, voire des mois, à comprendre le concept de « chien », un programme informatique qui utilise des algorithmes d’apprentissage profond peut se voir montrer un ensemble de formation et trier des millions d’images, identifiant avec précision en quelques minutes les images qui contiennent des chiens.
Pour atteindre un niveau de précision acceptable, les programmes de Deep Learning nécessitent l’accès à d’immenses quantités de données d’entraînement et de puissance de traitement, qui n’étaient pas facilement accessibles aux programmeurs avant l’ère du big data et de l’informatique dématérialisée. Comme les programmes de deep learning peuvent créer des modèles statistiques complexes directement à partir de leurs propres résultats itératifs, ils sont capables de créer des modèles prédictifs précis à partir de grandes quantités de données non étiquetées et non structurées. C’est important car l’internet des objets (IoT) continue à devenir plus omniprésent, car la plupart des données que les humains et les machines créent sont non structurées et ne sont pas étiquetées.
Que sont les réseaux neuronaux de deep learning ?
Un type d’algorithme d’apprentissage machine avancé, connu sous le nom de réseaux neuronaux artificiels, est à la base de la plupart des modèles d’apprentissage profond. Par conséquent, Le Deep Learning peut parfois être appelé apprentissage neural profond ou réseau neural profond.
Les réseaux neuronaux se présentent sous plusieurs formes différentes, notamment les réseaux neuronaux récurrents, les réseaux neuronaux convolutifs, les réseaux neuronaux artificiels et les réseaux neuronaux à action anticipée, et chacun présente des avantages pour des cas d’utilisation spécifiques. Cependant, ils fonctionnent tous de manière assez similaire, en alimentant les données et en laissant le modèle déterminer lui-même s’il a fait la bonne interprétation ou pris la bonne décision concernant un élément de données donné.
Les réseaux neuronaux impliquent un processus d’essais et d’erreurs, de sorte qu’ils ont besoin de quantités massives de données sur lesquelles s’entraîner. Ce n’est pas un hasard si les réseaux neuronaux ne sont devenus populaires qu’après que la plupart des entreprises aient adopté l’analyse de données à grande échelle et accumulé de grandes quantités de données. Comme les premières itérations du modèle impliquent des suppositions quelque peu formées sur le contenu d’une image ou des parties du discours, les données utilisées pendant la phase de formation doivent être étiquetées afin que le modèle puisse voir si sa supposition était exacte. Cela signifie que, bien que de nombreuses entreprises qui utilisent de grandes quantités de données disposent d’un grand nombre de données, les données non structurées sont moins utiles. Les données non structurées ne peuvent être analysées par un modèle de Deep Learning qu’après avoir été formées et avoir atteint un niveau de précision acceptable, mais les modèles de Deep Learning ne peuvent pas s’entraîner sur des données non structurées.
Méthodes de Deep Learning
Différentes méthodes peuvent être utilisées pour créer des modèles d’apprentissage profond solides. Ces techniques comprennent la diminution du taux d’apprentissage, l’apprentissage par transfert, la formation à partir de zéro et l’abandon.
- Déclin du taux d’apprentissage. Le taux d’apprentissage est un hyperparamètre — un facteur qui définit le système ou fixe les conditions de son fonctionnement avant le processus d’apprentissage — qui contrôle l’ampleur du changement que subit le modèle en réponse à l’erreur estimée chaque fois que les poids du modèle sont modifiés. Des taux d’apprentissage trop élevés peuvent entraîner des processus d’apprentissage instables ou l’apprentissage d’un ensemble de poids sous-optimaux. Des taux d’apprentissage trop faibles peuvent entraîner un processus de formation long qui risque de se bloquer.
- La méthode de diminution du taux d’apprentissage — également appelée recuit du taux d’apprentissage ou taux d’apprentissage adaptatif — est le processus d’adaptation du taux d’apprentissage pour augmenter les performances et réduire le temps de formation. Les adaptations les plus faciles et les plus courantes du taux d’apprentissage pendant la formation comprennent des techniques visant à réduire le taux d’apprentissage au fil du temps.
- Transfert de l’apprentissage. Ce processus implique le perfectionnement d’un modèle déjà formé ; il nécessite une interface d’un réseau préexistant. Tout d’abord, les utilisateurs alimentent le réseau existant avec de nouvelles données contenant des classifications jusqu’alors inconnues. Une fois que des ajustements sont apportés au réseau, de nouvelles tâches peuvent être effectuées avec des capacités de catégorisation plus spécifiques. Cette méthode a l’avantage de nécessiter beaucoup moins de données que les autres, réduisant ainsi le temps de calcul à quelques minutes ou heures.
- Formation à partir de zéro. Cette méthode exige d’un développeur qu’il recueille un grand ensemble de données étiquetées et qu’il configure une architecture de réseau capable d’apprendre les caractéristiques et le modèle. Cette technique est particulièrement utile pour les nouvelles applications, ainsi que pour les applications comportant un grand nombre de catégories de sortie. Toutefois, dans l’ensemble, il s’agit d’une approche moins courante, car elle nécessite des quantités de données excessives, ce qui fait que la formation prend des jours ou des semaines.
- Abandon. Cette méthode tente de résoudre le problème du suréquipement dans les réseaux comportant de grandes quantités de paramètres en faisant tomber aléatoirement des unités et leurs connexions du réseau neuronal pendant la formation. Il a été prouvé que la méthode d’abandon peut améliorer les performances des réseaux neuronaux lors de tâches d’apprentissage supervisées dans des domaines tels que la reconnaissance vocale, la classification de documents et la biologie computationnelle.
Exemples d’applications de Deep Learning
Comme les modèles d’apprentissage profond traitent l’information de manière similaire au cerveau humain, ils peuvent être appliqués à de nombreuses tâches que les gens accomplissent. Le Deep Learning est actuellement utilisé dans la plupart des outils de reconnaissance d’images, de traitement du langage naturel et des logiciels de reconnaissance vocale. Ces outils commencent à apparaître dans des applications aussi diverses que les voitures et les services de traduction de langues.
À quoi sert Le Deep Learning ?
Les cas d’utilisation actuels du Deep Learning comprennent tous les types de grandes applications d’analyse de données, en particulier celles axées sur le traitement du langage naturel, la traduction des langues, le diagnostic médical, les signaux boursiers, la sécurité des réseaux et la reconnaissance d’images.
Parmi les domaines spécifiques dans lesquels le Deep Learning est actuellement utilisé, on peut citer les suivants :
- Expérience client. Des modèles de Deep Learning sont déjà utilisés pour les chatbots. Et, au fur et à mesure qu’il se développe, Le Deep Learning devrait être mis en œuvre dans diverses entreprises pour améliorer l’expérience des clients et accroître leur satisfaction.
- Génération de texte. Les machines apprennent la grammaire et le style d’un texte et utilisent ensuite ce modèle pour créer automatiquement un texte entièrement nouveau correspondant à l’orthographe, à la grammaire et au style du texte original.
- Aéronautique et militaire. Le Deep Learning est utilisé pour détecter des objets provenant de satellites qui identifient des zones d’intérêt, ainsi que des zones sûres ou non pour les troupes.
- Automatisation industrielle. Le Deep Learning améliore la sécurité des travailleurs dans des environnements tels que les usines et les entrepôts en fournissant des services qui détectent automatiquement lorsqu’un travailleur ou un objet s’approche trop près d’une machine.
- Ajouter de la couleur. Il est possible d’ajouter de la couleur aux photos et vidéos en noir et blanc à l’aide de modèles de Deep Learning. Dans le passé, il s’agissait d’un processus manuel extrêmement long.
- La recherche médicale. Les chercheurs en cancérologie ont commencé à mettre en œuvre Le Deep Learning dans leur pratique afin de détecter automatiquement les cellules cancéreuses.
- La vision par ordinateur. Le Deep Learning a considérablement amélioré la vision par ordinateur, en fournissant aux ordinateurs une précision extrême pour la détection d’objets et la classification, la restauration et la segmentation d’images.
Limites et défis
La plus grande limite des modèles d’apprentissage profond est qu’ils apprennent par l’observation. Cela signifie qu’ils ne savent ce qui se trouvait dans les données sur lesquelles ils se sont formés. Si un utilisateur dispose d’une petite quantité de données ou si celles-ci proviennent d’une source spécifique qui n’est pas nécessairement représentative du domaine fonctionnel plus large, les modèles n’apprendront alors pas de manière généralisable.
La question des biais est également un problème majeur pour les modèles d’apprentissage profond. Si un modèle s’entraîne sur des données qui contiennent des biais, le modèle reproduira ces biais dans ses prédictions. C’est un problème délicat pour les programmeurs en apprentissage profond, car les modèles apprennent à se différencier en fonction de variations subtiles dans les éléments de données. Souvent, les facteurs qu’il détermine comme étant importants ne sont pas explicitement expliqués par le programmeur. Cela signifie, par exemple, qu’un modèle de reconnaissance faciale peut déterminer les caractéristiques d’une personne en se basant sur des éléments tels que la race ou le sexe sans que le programmeur en soit conscient.
Le taux d’apprentissage peut également devenir un défi majeur pour les modèles d’apprentissage profond. Si le taux est trop élevé, le modèle convergera trop rapidement, produisant une solution peu optimale. Si le taux est trop faible, le processus peut se bloquer et il sera encore plus difficile de trouver une solution.
Les exigences en matière de matériel pour les modèles de Deep Learning peuvent également créer des limites. Des unités de traitement graphique (GPU) multicœurs à hautes performances et d’autres unités de traitement similaires sont nécessaires pour assurer une meilleure efficacité et une réduction du temps de traitement. Toutefois, ces unités sont coûteuses et consomment de grandes quantités d’énergie. Les autres exigences en matière de matériel sont la mémoire vive (RAM) et un disque dur ou un disque dur à semi-conducteurs (SSD).
Les autres limitations et défis sont les suivants :
- Le Deep Learning nécessite de grandes quantités de données. En outre, les modèles plus puissants et plus précis nécessiteront davantage de paramètres, ce qui, à son tour, exige davantage de données.
- Une fois formés, les modèles d’apprentissage profond deviennent inflexibles et ne peuvent plus gérer le multitâche. Ils peuvent apporter des solutions efficaces et précises, mais seulement à un problème spécifique. Même la résolution d’un problème similaire nécessiterait une nouvelle formation du système.
- Toute application qui nécessite un raisonnement – comme la programmation ou l’application de la méthode scientifique – une planification à long terme et une manipulation des données de type algorithmique dépasse complètement ce que les techniques de Deep Learning actuelles peuvent faire, même avec des données volumineuses.
- Apprentissage approfondi vs. apprentissage machine
- Le Deep Learning est un sous-ensemble de l’apprentissage machine qui se différencie par la façon dont il résout les problèmes. L’apprentissage machine nécessite un expert du domaine pour identifier la plupart des caractéristiques appliquées.
D’autre part, Le Deep Learning apprend les caractéristiques de manière progressive. Les algorithmes de Deep Learning sont donc beaucoup plus longs à former que les algorithmes d’apprentissage machine, qui ne nécessitent que quelques secondes à quelques heures. Cependant, l’inverse est vrai pendant les tests. Les algorithmes de Deep Learning prennent beaucoup moins de temps pour effectuer des tests que les algorithmes d’apprentissage machine, dont la durée des tests augmente avec la taille des données.
En outre, le machine learning ne nécessite pas les mêmes machines haut de gamme et les mêmes GPU performants et coûteux que Le Deep Learning.
En fin de compte, de nombreux spécialistes des données choisissent l’apprentissage machine traditionnel plutôt que Le Deep Learning en raison de sa capacité d’interprétation supérieure ou de sa capacité à donner un sens aux solutions. Les algorithmes d’apprentissage machine sont également préférés lorsque les données sont de petite taille.
Parmi les cas où Le Deep Learning devient préférable, on peut citer les situations où il y a une grande quantité de données, un manque de compréhension du domaine pour l’introspection des caractéristiques ou des problèmes complexes, comme la reconnaissance vocale et le traitement du langage naturel.