Tutoriel d'apprentissage automatique pour les débutants : qu'est-ce que c'est, les bases du ML

⚡ Résumé intelligent

L'apprentissage automatique est une famille d'algorithmes informatiques qui s'améliorent à partir d'exemples plutôt que d'être explicitement codés, combinant des données avec des outils statistiques pour prédire des résultats que les personnes peuvent transformer en décisions concrètes.

  • (I.e. Les règles s'apprennent, elles ne s'écrivent pas : La programmation traditionnelle code chaque règle manuellement, tandis qu'un modèle déduit la règle à partir d'entrées et de sorties appariées.
  • ☑️ Deux étapes: L'apprentissage découvre des schémas et les résume dans un modèle ; l'inférence applique ce modèle à des données jamais vues auparavant.
  • Deux grandes familles : L'apprentissage supervisé nécessite des sorties étiquetées, l'apprentissage non supervisé trouve une structure sans elles.
  • 🧪 Le choix de l'algorithme dépend de l'objectif : La régression prédit des valeurs continues, la classification attribue des étiquettes, le clustering regroupe les enregistrements similaires.
  • Les données constituent la véritable contrainte : Un manque de données, ou des données sans variété, produisent un modèle qui ne peut pas être généralisé.
  • ⚙️ Où cela porte ses fruits : Détection des fraudes dans le secteur bancaire, détection d'images dans le secteur de la santé, prévision de la demande tout au long de la chaîne d'approvisionnement.

Tutoriel d'apprentissage automatique pour débutants : Les bases du ML

Qu'est-ce que l'apprentissage par machine?

Machine Learning L'apprentissage automatique est un système d'algorithmes informatiques capables d'apprendre à partir d'exemples grâce à l'auto-amélioration, sans être explicitement codés par un programmeur. L'apprentissage automatique fait partie de l'intelligence artificielle qui combine des données avec des outils statistiques pour prédire un résultat pouvant être utilisé pour en tirer des enseignements exploitables.

La percée réside dans l'idée qu'une machine peut apprendre à partir des données (c'est-à-dire des exemples) par elle-même pour produire des résultats précis. L'apprentissage automatique est étroitement lié à data mining et la modélisation prédictive bayésienne. La machine reçoit des données en entrée et utilise un algorithme pour formuler des réponses.

Une tâche typique d'apprentissage automatique consiste à fournir une recommandation. Pour ceux qui ont un Netflix Sur le compte, toutes les recommandations de films ou de séries sont basées sur l'historique de navigation de l'utilisateur. Les entreprises technologiques utilisent apprentissage non supervisé améliorer l'expérience utilisateur en personnalisant les recommandations.

L'apprentissage automatique est également utilisé pour diverses tâches telles que la détection des fraudes, la maintenance prédictive, l'optimisation de portefeuille et l'automatisation des tâches.

Apprentissage automatique vs programmation traditionnelle

La programmation traditionnelle diffère considérablement de l'apprentissage automatique. En programmation traditionnelle, un programmeur définit toutes les règles en collaboration avec un expert du secteur pour lequel le logiciel est développé. Chaque règle repose sur une base logique ; la machine produit un résultat en suivant cette logique. Lorsque le système se complexifie, le nombre de règles à écrire augmente, et sa maintenance peut rapidement devenir ingérable. Le schéma ci-dessous illustre ce flux : les données et les règles écrites manuellement sont introduites, et les réponses sont produites.

Flux de programmation traditionnel : les données et les règles codées manuellement produisent le résultat.
Programmation traditionnelle

L'apprentissage automatique vise à résoudre ce problème. La machine apprend la corrélation entre les données d'entrée et de sortie, et elle génère elle-même la règle. Les programmeurs n'ont plus besoin d'écrire de nouvelles règles à chaque nouvelle donnée. Les algorithmes s'adaptent aux nouvelles données et à l'expérience acquise, ce qui améliore leur efficacité au fil du temps. Le second schéma inverse le premier : les données et les réponses connues entrent, et la règle est générée.

Flux d'apprentissage automatique : les données et les réponses connues produisent la règle

Machine Learning

Comment fonctionne l’apprentissage automatique ?

Ce contraste étant établi, la question suivante est de savoir ce qui se passe réellement à l'intérieur de l'étape d'apprentissage.

L'apprentissage automatique est le cerveau où se déroule tout l'apprentissage. La manière dont une machine apprend est similaire à celle d'un être humain. Les humains apprennent de l'expérience : plus nous en savons, plus il nous est facile de prédire. Par analogie, face à une situation inconnue, la probabilité de succès est plus faible que dans une situation connue. Les machines sont entraînées de la même manière. Pour faire une prédiction précise, la machine observe un exemple. Lorsqu'on lui présente un exemple similaire, elle peut en déduire le résultat. Cependant, comme un humain, si on lui soumet un exemple inédit, la machine a des difficultés à prédire.

Les objectifs principaux de l'apprentissage automatique sont l'apprentissage et l'inférence. Tout d'abord, la machine apprend en découvrant des modèles, et cette découverte est rendue possible par les données. Un aspect crucial du travail du data scientist est de choisir avec soin les données à fournir à la machine. La liste des attributs utilisés pour résoudre un problème est appelée un ensemble de données. vecteur de caractéristiquesOn peut considérer un vecteur de caractéristiques comme un sous-ensemble de données utilisé pour résoudre un problème.

La machine utilise des algorithmes pour simplifier la réalité et transformer cette découverte en un modèle. La phase d'apprentissage sert donc à décrire les données et à les synthétiser dans un modèle, comme illustré ci-dessous.

Phase d'apprentissage : les données d'entraînement sont traitées par un algorithme pour construire un modèle.

Par exemple, le système cherche à comprendre la relation entre le salaire d'un individu et la probabilité qu'il fréquente un restaurant chic. Il s'avère qu'il existe une corrélation positive entre le salaire et la fréquentation de restaurants haut de gamme : tel est le modèle.

Déduire

Une fois le modèle construit, il est possible de tester sa performance sur des données inédites. Ces nouvelles données sont transformées en un vecteur de caractéristiques, traitées par le modèle, qui génère ensuite une prédiction. C'est là tout l'intérêt de l'apprentissage automatique. Inutile de modifier les règles ou de réentraîner le modèle : il suffit d'utiliser le modèle précédemment entraîné pour effectuer une inférence sur de nouvelles données, comme l'illustre le schéma ci-dessous.

Phase d'inférence : les nouvelles données sont traitées par le modèle entraîné pour produire une prédiction.

Le cycle de vie d'un programme d'apprentissage automatique est simple et peut être résumé dans les points suivants :

  1. Définir une question
  2. Collecter des données
  3. Visualiser les données
  4. Algorithme de formation
  5. Tester l'algorithme
  6. Recueillir des commentaires
  7. Affiner l'algorithme
  8. Répétez les étapes 4 à 7 jusqu'à obtenir des résultats satisfaisants.
  9. Utiliser le modèle pour faire une prédiction

Une fois que l’algorithme parvient à tirer les bonnes conclusions, il applique ces connaissances à de nouveaux ensembles de données.

Machine Learning Algorithms et où sont-ils utilisés ?

Le tableau ci-dessous regroupe les algorithmes les plus courants selon le type de tâche qu'ils résolvent.

Les algorithmes d'apprentissage automatique sont regroupés en tâches supervisées et non supervisées.

Apprentissage automatique Algorithms

L'apprentissage automatique peut être regroupé en deux grandes tâches d'apprentissage : supervisé et sans surveillanceDeux autres familles se situent entre elles et au-delà : l’apprentissage semi-supervisé, qui mêle un petit ensemble étiqueté à un grand ensemble non étiqueté, et apprentissage par renforcement, où un agent apprend grâce aux récompenses plutôt qu'aux réponses prédéfinies.

Enseignement supervisé

Un algorithme utilise des données d'apprentissage et des retours d'expérience humains pour apprendre la relation entre des entrées données et une sortie donnée. Par exemple, un professionnel peut utiliser les dépenses marketing et les prévisions météorologiques comme données d'entrée pour prédire les ventes de canettes.

Vous pouvez utiliser enseignement supervisé lorsque les données de sortie sont connues, l'algorithme effectuera une prédiction sur de nouvelles données.

Il existe deux catégories d'apprentissage supervisé :

  • Tâche de classification
  • Tâche de régression

Classification

Imaginez que vous souhaitiez prédire le sexe d'un client pour une publicité. Vous commencerez par collecter des données sur la taille, le poids, la profession, le salaire, le contenu du panier d'achat, etc., à partir de votre base de données clients. Vous connaissez le sexe de chacun de vos clients : il peut être masculin ou féminin. L'objectif du classificateur est d'attribuer une probabilité d'être un homme ou une femme (c'est-à-dire l'étiquette) en fonction des informations collectées (c'est-à-dire les caractéristiques). Une fois que le modèle a appris à reconnaître les sexes, vous pouvez utiliser de nouvelles données pour effectuer une prédiction. Par exemple, vous venez de recevoir des informations concernant un client inconnu et vous souhaitez savoir s'il s'agit d'un homme ou d'une femme. Si le classificateur prédit « homme » = 70 %, cela signifie que l'algorithme est sûr à 70 % que ce client est un homme et à 30 % qu'il est une femme.

L'étiquette peut comporter deux classes ou plus. L'exemple d'apprentissage automatique ci-dessus ne comporte que deux classes, mais si un classificateur doit prédire des objets, il peut en comporter des dizaines (par exemple, verre, table, chaussures — chaque objet représentant une classe).

Régression

Lorsque la sortie est une valeur continue, il s'agit d'une régression. Par exemple, un analyste financier peut avoir besoin de prévoir la valeur d'une action en fonction de divers facteurs tels que les capitaux propres, les performances boursières passées et les indices macroéconomiques. Le système sera entraîné à estimer le prix de l'action avec la plus faible marge d'erreur possible.

Le tableau ci-dessous répertorie les algorithmes supervisés que vous rencontrerez le plus souvent, ainsi que la tâche à laquelle chacun est adapté.

Algorithme Description Type
Régression linéaire Trouve un moyen de corréler chaque fonctionnalité à la sortie pour aider à prédire les valeurs futures. Régression
Régression logistique Extension de la régression linéaire utilisée pour les tâches de classification. La variable de sortie est binaire (par exemple, noir ou blanc) et non continue (par exemple, une liste infinie de couleurs possibles). Classification
Arbre de décision Modèle de classification ou de régression hautement interprétable qui divise les valeurs des caractéristiques des données en branches au niveau des nœuds de décision (par exemple, si une caractéristique est une couleur, chaque couleur possible devient une nouvelle branche) jusqu'à ce qu'une décision finale soit prise. Régression
Classification
Naïf Bayes La méthode bayésienne est une méthode de classification qui utilise le théorème bayésien. Le théorème met à jour la connaissance préalable d'un événement avec la probabilité indépendante de chaque caractéristique pouvant affecter l'événement. Régression
Classification
Machine à vecteurs de support La machine à vecteurs de support (SVM) est généralement utilisée pour les tâches de classification. L'algorithme SVM trouve un hyperplan qui sépare de manière optimale les classes. Il est préférable de l'utiliser avec un solveur non linéaire. Régression (pas très courant)
Classification
Forêt aléatoire L'algorithme repose sur un arbre de décision afin d'améliorer considérablement la précision. La méthode des forêts aléatoires génère de nombreux arbres de décision simples et utilise le vote majoritaire pour déterminer l'étiquette à retenir. Pour la classification, la prédiction finale est celle qui obtient le plus de votes ; pour la régression, la prédiction finale est la moyenne des prédictions de tous les arbres. Régression
Classification
AdaBoost Technique de classification ou de régression qui utilise une multitude de modèles pour prendre une décision mais les pèse en fonction de leur exactitude dans la prédiction du résultat Régression
Classification
Arbres qui améliorent le dégradé Les arbres de décision à gradient boosté constituent une technique de classification/régression de pointe. Ils se concentrent sur les erreurs commises par les arbres précédents et tentent de les corriger. Régression
Classification

Apprentissage non supervisé

Dans l'apprentissage non supervisé, un algorithme explore les données d'entrée sans qu'une variable de sortie explicite lui soit fournie (par exemple, il explore les données démographiques des clients pour identifier des tendances).

Vous pouvez l'utiliser lorsque vous ne savez pas comment classer les données et que vous souhaitez que l'algorithme trouve les tendances et regroupe les données pour vous. Les principaux algorithmes non supervisés sont résumés ci-dessous.

Nom de l'algorithme Description Type
Regroupement des K-moyennes Place les données dans certains groupes (k) dont chacun contient des données avec des caractéristiques similaires (telles que déterminées par le modèle, pas à l'avance par les humains) Clusterfaire respecter
Modèle de mélange gaussien Une généralisation du clustering k-means qui offre plus de flexibilité dans la taille et la forme des groupes (clusters) Clusterfaire respecter
Classification hiérarchique Divise les groupes selon une structure hiérarchique arborescente pour former un système de classification. Peut être utilisé pour regrouper les clients titulaires de cartes de fidélité. Clusterfaire respecter
Système de recommandation Permet de définir les données pertinentes pour formuler une recommandation. Clusterfaire respecter
PCA/t-SNE Principalement utilisé pour diminuer la dimensionnalité des données. Les algorithmes réduisent le nombre de caractéristiques à 3 ou 4 vecteurs avec les variances les plus élevées. Réduction de dimension

Comment choisir un algorithme d'apprentissage automatique

Il existe de nombreux algorithmes d'apprentissage automatique, et le choix de l'algorithme est guidé par l'objectif plutôt que par la mode.

Dans l'exemple d'apprentissage automatique ci-dessous, la tâche consiste à prédire le type de fleur parmi trois variétés. Les prédictions sont basées sur la longueur et la largeur des pétales. L'image illustre les résultats de dix algorithmes différents. L'image en haut à gauche représente l'ensemble de données lui-même, les données étant classées en trois catégories : rouge, bleu clair et bleu foncé.pingLes différences sont visibles. Par exemple, sur la deuxième image, tout ce qui se trouve en haut à gauche appartient à la catégorie rouge, la partie centrale présente un mélange d'incertitude et de bleu clair, tandis que le bas correspond à la catégorie foncée. Les autres images montrent comment différents algorithmes tentent de classer les mêmes données.

Dix algorithmes comparés sur le même ensemble de données de fleurs à trois classes

Une fois qu'un candidat est choisi, sa qualité est jugée sur des données qu'il n'a jamais vues, généralement avec un matrice de confusion et les chiffres d'exactitude, de précision et de rappel qui en découlent.

Défis et limites de l'apprentissage automatique

Le principal défi de l'apprentissage automatique est le manque de données, ou le manque de diversité au sein de l'ensemble de données. Une machine ne peut apprendre sans données. Un ensemble de données manquant de diversité complique également la tâche de la machine, car celle-ci a besoin d'hétérogénéité pour en tirer des enseignements pertinents. Il est rare qu'un algorithme puisse…tracL'information est précieuse lorsqu'il y a peu ou pas de variations. En règle générale, on recommande d'avoir au moins 20 observations par groupe pour faciliter l'apprentissage automatique ; en dessous de ce seuil, l'évaluation et la prédiction sont toutes deux compromises.

Le volume de données n'est pas la seule limite. Les modèles entraînés sur des données historiques biaisées reproduisent ce biais, les modèles complexes sont difficiles à expliquer à un organisme de réglementation ou à un client, et tout modèle se dégrade à mesure que le monde sur lequel il a été entraîné évolue.

Application de l'apprentissage automatique

Les techniques décrites ci-dessus sont déjà utilisées en production dans la plupart des secteurs industriels. Les exemples ci-dessous vont de l'assistance générale à des secteurs spécifiques.

Augmentation: L'apprentissage automatique aide les humains dans leurs tâches quotidiennes, personnelles ou professionnelles, sans qu'ils en maîtrisent totalement le résultat. Il est utilisé de diverses manières, notamment pour les assistants virtuels, l'analyse de données et les solutions logicielles. Son objectif principal est de réduire les erreurs dues aux biais humains.

Automation: L'apprentissage automatique fonctionne de manière totalement autonome dans tous les domaines, sans intervention humaine. Par exemple, les robots exécutent les étapes essentielles des processus dans les usines de fabrication.

Secteur financier : L'apprentissage automatique gagne en popularité dans le secteur financier. Les banques l'utilisent principalement pour identifier des tendances dans les données, mais aussi pour prévenir la fraude.

Organisations gouvernementales : Les gouvernements utilisent l'apprentissage automatique pour gérer la sécurité publique et les services publics. Prenons l'exemple de la Chine et de son vaste programme de reconnaissance faciale, où applications d'intelligence artificielle sont utilisées pour identifier les piétons qui traversent hors des passages piétons.

L'industrie de la santé: Le secteur de la santé a été l'un des premiers à utiliser l'apprentissage automatique, en commençant par la détection d'images.

Marketing : L'utilisation massive de l'IA en marketing est rendue possible par l'accès abondant aux données. Avant l'ère du data de masse, les chercheurs développaient des outils mathématiques avancés, comme l'analyse bayésienne, pour estimer la valeur d'un client. Avec l'explosion des données, les services marketing s'appuient sur l'IA pour optimiser la relation client et les campagnes marketing.

Exemple d'apprentissage automatique dans la chaîne d'approvisionnement

L'apprentissage automatique donne d'excellents résultats en matière de reconnaissance de formes visuelles, ouvrant la voie à de nombreuses applications potentielles dans l'inspection physique et la maintenance de l'ensemble de la chaîne d'approvisionnement.

L'apprentissage non supervisé permet de rechercher rapidement des modèles similaires dans un ensemble de données diversifié. La machine peut ainsi effectuer un contrôle qualité au sein de la plateforme logistique et signaler les expéditions endommagées ou usées.

, par exemple en : IBMLa plateforme Watson de peut déterminer le navireping Dommages aux conteneurs. Watson combine des données visuelles et systémiques pour track, signaler et formuler des recommandations en temps réel.

Auparavant, les gestionnaires de stocks s'appuyaient principalement sur des méthodes manuelles pour évaluer et prévoir les inventaires. L'association du Big Data et de l'apprentissage automatique permet désormais d'améliorer les techniques de prévision, avec des gains de 20 à 30 % par rapport aux outils traditionnels. En termes de ventes, cela se traduit par une augmentation de 2 à 3 % grâce à la réduction potentielle des coûts de stockage.

Exemple d'apprentissage automatique dans le Google Voiture

Tout le monde connaît le Google Cette voiture est équipée de lasers sur son toit, qui lui indiquent sa position par rapport à son environnement. Un radar à l'avant lui fournit des informations sur la vitesse et les mouvements des véhicules environnants. Elle utilise toutes ces données pour optimiser sa conduite et anticiper les comportements des autres conducteurs. Le plus impressionnant est sa capacité à traiter près d'un gigaoctet de données par seconde.

Les capteurs des voitures autonomes alimentent les modèles d'apprentissage automatique en temps réel

Pourquoi l'apprentissage automatique est-il important ?

L'apprentissage automatique est à ce jour le meilleur outil pour analyser, comprendre et identifier des tendances dans les données. L'un des principes fondamentaux de l'apprentissage automatique est qu'un ordinateur peut être entraîné à automatiser des tâches qui seraient fastidieuses, voire impossibles, pour un être humain. La principale différence avec l'analyse traditionnelle réside dans le fait que l'apprentissage automatique peut prendre des décisions avec une intervention humaine minimale.

Prenons l'exemple suivant : un agent immobilier peut estimer le prix d'une maison en se basant sur son expérience personnelle et sa connaissance du marché.

Une machine peut être entraînée à traduire le savoir-faire d'un expert en caractéristiques. Ces caractéristiques correspondent à l'ensemble des éléments relatifs à une maison, au quartier, au contexte économique, etc., qui influent sur le prix. Pour l'expert, maîtriser l'art d'estimer la valeur d'une maison a probablement nécessité des années d'apprentissage, et son expertise s'affine à chaque vente.

Pour maîtriser cet art, la machine a besoin de millions de points de données (c'est-à-dire d'exemples). Au tout début de son apprentissage, elle commet des erreurs, à l'instar d'un vendeur débutant. Une fois qu'elle a analysé suffisamment d'exemples, elle possède les connaissances nécessaires pour effectuer une estimation avec une grande précision. La machine est également capable de corriger ses erreurs au fur et à mesure des nouvelles ventes.

La plupart des grandes entreprises ont compris l'importance de l'apprentissage automatique et de la gestion des données. Le McKinsey Global Institute a estimé la valeur annuelle de toutes les techniques analytiques entre 9 500 et 15 400 milliards de dollars, et a attribué environ 40 % de ce montant – soit entre 3 500 et 5 800 milliards de dollars par an – aux techniques d'IA avancées basées sur les réseaux neuronaux profonds, comme indiqué dans son rapport. Notes de la frontière de l'IA recherche.

Lorsque les règles sont connues mais imprécises plutôt qu'absentes, une approche basée sur des règles telle que logique floue Une méthode plus adaptée peut être préférable à un modèle appris, c'est pourquoi les deux techniques sont souvent comparées avant le début d'un projet.

FAQ

L'apprentissage semi-supervisé s'appuie sur un petit ensemble étiqueté et un grand ensemble non étiqueté, ce qui est utile lorsque l'étiquetage est coûteux. Apprentissage par renforcement Elle ne comporte aucune étiquette : un agent agit, reçoit une récompense ou une pénalité, et ajuste sa politique au fil de nombreuses tentatives.

Elles sont imbriquées. L'intelligence artificielle est l'objectif le plus large de l'intelligence de type machine, l'apprentissage automatique est le sous-ensemble qui apprend à partir des données, et l'apprentissage en profondeur est le sous-ensemble de l'apprentissage automatique construit sur des réseaux neuronaux multicouches.

Le surapprentissage se produit lorsqu'un modèle mémorise l'ensemble d'entraînement, y compris son bruit, et échoue ensuite sur de nouvelles données. Validation croisée, modèles plus simples, régularisation, arrêt précoce : autant de techniques pour y remédier.ping et d'autres exemples d'entraînement concernent les défenses habituelles.

Un modèle obtient toujours de bons résultats sur les lignes sur lesquelles il a été entraîné ; ce score ne prouve donc rien. Conserver un ensemble de test — et souvent un ensemble de validation distinct pour l’ajustement — est la seule estimation fiable des performances sur des données que le modèle n’a jamais vues.

Une bonne maîtrise des statistiques et des probabilités de base, de l'algèbre linéaire (vecteurs et matrices) et d'un langage de programmation est requise. Au départ, la manipulation pratique des données prime sur les mathématiques avancées ; le nettoyage et l'exploration d'un jeu de données réel constituent donc le meilleur premier exercice.

Python il s'appuie notamment sur scikit-learn pour les modèles classiques et TensorFlow ou PyTorch pour les réseaux neuronaux. R SQL reste un outil puissant pour la modélisation et la visualisation statistiques, tandis que SQL est incontournable pour extraire les données d'entraînement elles-mêmes.

Les modèles prédictifs produisent une étiquette ou un nombre pour une entrée donnée. Les modèles génératifs apprennent la distribution des données et produisent de nouveaux exemples à partir de celles-ci : texte, images ou code. Les deux sont entraînés sur des données, mais seul l’un est évalué sur la base de sa précision.

Copilote GitHub rédige rapidement les scripts standard : chargement d'un jeu de données, division de celui-ci, ajustement d'un estimateur et représentation graphique des résultats. RevExaminez attentivement chaque suggestion, car un pipeline d'apparence plausible peut tout de même laisser fuiter des données de test vers l'entraînement et gonfler le score.

Résumez cet article avec :