Apprentissage automatique avec MATLAB

 

Machine Learning

3 choses à savoir

Le Machine Learning est une technique d’analyse de données qui consiste à enseigner à des ordinateurs ce dont les humains sont naturellement capables : tirer des leçons de leurs expériences. Les algorithmes de Machine Learning font appel à des méthodes de calcul pour « apprendre » des informations directement à partir des données sans qu’il soit nécessaire de s’appuyer sur une équation prédéterminée en tant que modèle. Les algorithmes s’adaptent et deviennent plus performants à mesure que le nombre d’échantillons disponibles pour l’apprentissage augmente.

Pourquoi le Machine Learning est important

De par l’essor du Big Data, le Machine Learning (ou apprentissage automatique) s’est imposé comme l’une des meilleures techniques de résolution de problèmes dans certains domaines, notamment :

  • la finance computationnelle, pour l’évaluation de crédit et le trading algorithmique ;
  • le traitement d’image et la vision par ordinateur, pour la reconnaissance faciale, la détection de mouvement et la détection d’objet ;
  • la biologie computationnelle, pour la détection de tumeurs, la découverte de médicaments et le séquençage de l’ADN ;
  • la production d’énergie, pour la prévision des prix et des charges ;
  • l’automobile, l’aérospatiale et la production industrielle, pour la maintenance prédictive ;
  • le traitement du langage naturel, pour les applications de reconnaissance vocale. 
Lancez-vous dans le Machine Learning. Apprenez le Machine Learning, des concepts les plus simples jusqu’aux algorithmes les plus avancés. Pour en savoir plus, téléchargez l’eBook.

Plus de données, plus de questions pour de meilleures réponses

Les algorithmes de Machine Learning identifient des modèles naturels dans les données, qui génèrent des informations utiles et vous aident à prendre de meilleures décisions et à établir des prévisions plus justes. Ils sont utilisés au quotidien pour prendre des décisions cruciales en matière de diagnostic médical, de transactions boursières, de prévisions de charge énergétique et plus encore. Par exemple, les sites Web tirent profit du Machine Learning pour traiter des millions d’options afin de vous recommander des chansons à écouter ou des films à regarder. Les détaillants l’utilisent pour comprendre le comportement d’achat des consommateurs.

Dans quelles situations utiliser le Machine Learning ?

Vous pouvez envisager un recours au Machine Learning si votre tâche ou votre problème impliquent un grand volume de données et de nombreuses variables, mais pas de formule ni d’équation. Le Machine Learning est par exemple une bonne solution pour gérer des situations comme les suivantes :

L’élaboration manuelle de règles ou d’équations est trop complexe, comme pour la reconnaissance faciale ou la reconnaissance vocale.

Les règles de la tâche concernée sont en constante évolution, comme pour la détection des fraudes à partir des relevés de transactions.

La nature des données est sans cesse altérée et le programme doit s’y adapter, comme dans le trading automatisé, la prévision de la demande en énergie et l’anticipation des tendances d’achat.

Fonctionnement du Machine Learning

Le Machine Learning s’appuie sur deux types de techniques : l’apprentissage supervisé, qui consiste à entraîner un modèle sur des données d’entrée et de sortie connues, afin qu’il puisse prédire les résultats futurs, et l’apprentissage non supervisé, qui identifie des modèles cachés ou des structures intrinsèques dans les données d’entrée.

Figure 1 : L’apprentissage supervisé et l’apprentissage non supervisé sont deux techniques de Machine Learning.

Apprentissage supervisé

Le Machine Learning supervisé élabore un modèle qui établit des prédictions en s’appuyant sur des preuves en cas d’incertitude. Un algorithme d’apprentissage supervisé applique un ensemble connu de données d’entrée et de réponses connues aux données (résultats) et entraîne un modèle à produire des prévisions raisonnables pour les réponses aux nouvelles données. Utilisez l’apprentissage supervisé si vous disposez de données connues pour les résultats que vous voulez prédire.

L’apprentissage supervisé développe des modèles prédictifs à l’aide des techniques de classification et de régression.

Les techniques de classification prévoient des variables discrètes. Elles déterminent par exemple si un e-mail est authentique ou s’il s’agit d’un spam, ou encore si une tumeur est cancéreuse ou bénigne. Les modèles de classification classent des données d’entrée en catégories. L’imagerie médicale, la reconnaissance vocale et l’évaluation de crédit en sont des applications classiques.

Utilisez la classification si vos données peuvent être marquées, catégorisées ou divisées selon des groupes ou des classes spécifiques. Les applications de reconnaissance d’écriture manuscrite utilisent par exemple la classification pour reconnaître les lettres et les chiffres. Dans le traitement d’image et la vision par ordinateur, les techniques non supervisées de reconnaissance de formes servent pour la détection d’objet et la segmentation d’image.

Les algorithmes couramment utilisés pour la classification incluent notamment les machines à vecteurs de support (SVM), le boosting/bagging d’arbres de décision, la méthode des k plus proches voisins, la classification naïve bayésienne, l’analyse discriminante, la régression logistique et les réseaux de neurones.

Les techniques de régression prévoient des variables continues, par exemple les variations de température ou les fluctuations de la demande en énergie. La prévision de charge d’électricité et le trading algorithmique en sont des applications classiques.

Employez des techniques de régression si vous devez utiliser une plage de données ou si les réponses que vous cherchez à prédire sont des nombres réels, comme la température ou le délai jusqu’à la prochaine panne d’un équipement.

Les algorithmes de régression courants incluent notamment le modèle linéaire, le modèle non linéaire, la régularisation, la régression pas à pas, le boosting/bagging d’arbres de décision, les réseaux de neurones et l’apprentissage neuro-flou adaptatif.

Prévoir les crises cardiaques à l’aide de l’apprentissage supervisé

Supposons que les médecins veuillent prévoir la probabilité d’un individu d’être atteint d’un infarctus dans l’année. Ils disposent de données sur d’autres patients, comme l’âge, le poids, la taille et la tension artérielle. Ils savent si les autres patients ont été atteints d’un infarctus dans l’année. Le problème consiste donc à combiner les données existantes dans un modèle capable de prévoir si un nouvel individu fera un infarctus dans l’année.

Apprentissage non supervisé

L’apprentissage non supervisé identifie des modèles cachés ou des structures intrinsèques dans les données. Il est utilisé pour tirer des conclusions à partir d’ensembles de données composés de données d’entrée sans réponses labellisées.

Le clustering est la technique d’apprentissage non supervisé la plus répandue. Le clustering est utilisé pour effectuer une analyse exploratoire des données afin de trouver des modèles cachés ou des regroupements dans les données. L’analyse de séquence génomique, l’étude de marché et la reconnaissance d’objets sont des exemples d’applications d’analyse de cluster.

Par exemple, si une société de téléphonie mobile souhaite optimiser les emplacements de construction de ses antennes-relais, elle peut estimer le nombre de clusters d’usagers qui ont recours à leurs antennes à l’aide du Machine Learning. Un téléphone ne peut communiquer qu’avec une seule antenne à la fois. Par conséquent, l’équipe utilise des algorithmes de clustering pour déterminer le meilleur emplacement de la tour de relais, afin d’optimiser la qualité de réception du signal pour les groupes (ou clusters) d’usagers.

Les algorithmes couramment utilisés pour le clustering incluent la méthode des k-moyennes et k-médoïdes, le clustering hiérarchique, les modèles de mélanges gaussiens, les modèles de Markov cachés, les cartes auto-organisatrices, le clustering c-moyennes flou et le clustering soustractif.

Figure 2 : Le clustering identifie des modèles cachés dans vos données.

Comment décider quel algorithme de Machine Learning utiliser ?

Choisir le bon algorithme est un processus qui peut sembler fastidieux : les algorithmes de Machine Learning supervisé et non supervisé se comptent en dizaines, et chacun aborde l’apprentissage d’une manière différente.

Il n’existe aucune méthode optimale ou universelle. Déterminer le bon algorithme à utiliser est en partie une simple question de tâtonnement. Même les data scientists les plus chevronnés ne peuvent pas présager le bon fonctionnement d’un algorithme sans réaliser des essais préalables. Le choix d’un algorithme dépend également de la nature de vos données et de leur volume, des informations que vous souhaitez en extraire et de ce que vous voulez faire de ces informations.

Figure 3 : Techniques de Machine Learning.

Voici quelques conseils pour vous aider à choisir entre le Machine Learning supervisé et non supervisé :

  • Optez pour l’apprentissage supervisé si vous voulez entraîner un modèle à effectuer une prévision (par exemple, la valeur future d’une variable continue comme la température ou le cours des actions) ou une classification (par exemple, pour identifier les marques de voitures apparaissant sur les enregistrements vidéo d’une webcam).
  • Optez pour l’apprentissage non supervisé si vous devez explorer vos données et que vous souhaitez entraîner un modèle à trouver de bonnes représentations internes, par exemple en fractionnant des données pour les répartir en clusters.

Le Machine Learning avec MATLAB

Comment exploiter le pouvoir du Machine Learning afin d’utiliser des données pour prendre de meilleures décisions ? MATLAB simplifie le Machine Learning. En plus d’outils et de fonctions de gestion du Big Data, MATLAB propose également des applications pour rendre le Machine Learning accessible, ce qui en fait l’environnement idéal pour appliquer le Machine Learning à vos analyses de données.

Avec MATLAB, les ingénieurs et les data scientists ont immédiatement accès à des fonctions prédéfinies, à des boîtes à outils étendues et à des applications spécialisées pour la classification, la régression et le clustering.

MATLAB vous permet :

  • De comparer des approches telles que la régression logistique, les arbres de classification, les machines à vecteurs de support, les méthodes ensemblistes et le Deep Learning.
  • D’utiliser des outils d’affinement et de réduction pour créer un modèle précis capable d’extraire au mieux la puissance prédictive de vos données.
  • D’intégrer des modèles de Machine Learning dans les systèmes d’entreprise, les clusters et les Clouds, et de porter ces modèles sur du matériel embarqué temps réel.
  • De générer automatiquement du code pour l’analyse de données issues de capteurs embarqués.
  • De supporter des processus intégrés, de l’analyse de données jusqu’au déploiement.
L’application Classification Learner vous permet d’entraîner des modèles pour la classification de données dans le cadre du Machine Learning supervisé.

Applications intéressantes du Machine Learning

Création d’algorithmes permettant l’analyse d’œuvres d’art

Des chercheurs du laboratoire d’art et d’intelligence artificielle de l’université Rutgers ont voulu déterminer s’il était possible pour un algorithme informatique de classer des tableaux en fonction du style, du genre et du peintre aussi facilement qu’un humain. En premier lieu, ils ont identifié les caractéristiques visuelles permettant de classer le style d’une peinture. Les algorithmes qu’ils ont développés sont parvenus à classer le style des toiles figurant dans la base de données avec un taux de précision de 60 %, obtenant de meilleurs résultats que l’individu moyen non spécialiste en la matière.

Les chercheurs ont émis l’hypothèse que les caractéristiques visuelles nécessaires à la classification par style de peinture (une problématique d’apprentissage supervisé) pouvaient également servir à identifier les influences artistiques d’un peintre (une problématique d’apprentissage non supervisé).

Ils ont utilisé des algorithmes de classification entraînés sur Google Images pour identifier des objets spécifiques. Afin de tester les algorithmes, ils ont eu recours à plus de 1 700 toiles peintes par 66 artistes différents sur une durée totale de 550 ans. L’algorithme a facilement identifié les œuvres associées, notamment l’influence du Portrait d’Innocent X de Diego Vélasquez sur l’Étude d’après le portrait du pape Innocent X par Velázquez de Francis Bacon.

Optimisation de la consommation des équipements HVAC pour les grands bâtiments

Le rendement des systèmes HVAC (chauffage, ventilation et climatisation) des bureaux, hôpitaux et autres grands locaux commerciaux laisse souvent à désirer puisque les changements météorologiques, les coûts énergétiques variables ou les propriétés thermiques du bâtiment ne sont pas pris en compte.

La plateforme logicielle en cloud de BuildingIQ permet de traiter ce problème. À l’aide d’algorithmes avancés et de méthodes de Machine Learning, la plateforme peut traiter, en continu, plusieurs gigaoctets d’informations provenant d’instruments de mesure de puissance, de thermomètres et de capteurs de pression pour systèmes HVAC, ainsi que les conditions météorologiques et les coûts énergétiques. Le Machine Learning est notamment utilisé pour segmenter des données et évaluer les contributions relatives du gaz, de l’électricité, de la vapeur et de l’énergie solaire au chauffage et au refroidissement. La plateforme de BuildingIQ réduit la consommation d’énergie des équipements HVAC des grands locaux commerciaux de 10 à 25 % en situation de fonctionnement normal.

Détection de collisions de véhicules à faible vitesse

Comptant plus de 8 millions de membres, la RAC est l’une des plus importantes associations automobiles du Royaume-Uni. Elle offre des services comme l’assistance routière et l’assurance aux automobilistes, particuliers ou professionnels.

Pour intervenir rapidement sur les lieux d’accidents routiers, réduire le nombre de collisions et amortir les coûts d’assurance, la RAC a développé un système embarqué de détection des collisions qui exploite des algorithmes avancés de Machine Learning afin de détecter les collisions à faible vitesse et pour différencier ces événements des situations de conduite plus classiques telles que les passages sur des ralentisseurs ou des nids de poule. Des essais indépendants ont évalué le niveau de précision du système développé par RAC à 92 % pour la détection des collisions dans des conditions de test.

En savoir plus sur le Machine Learning

Vous souhaitez approfondir vos connaissances ? Consultez ces ressources sur le Machine Learning pour vous aider à bien démarrer.

Dans ce webinar, vous apprendrez comment utiliser les outils de Machine Learning pour détecter les motifs et développer des modèles prédictifs à partir de vos jeux de données.
Dans ce webinar, vous découvrirez comment les outils MATLAB peuvent vous aider à résoudre vos défis liés au Machine Learning
Lancez-vous dans le Machine Learning. Apprenez le Machine Learning, des concepts les plus simples jusqu’aux algorithmes avancés. Pour en savoir plus, téléchargez l’eBook.