1.1 Introduction
Grâce à l'apprentissage automatique, le programmeur n'est pas obligé d'écrire des instructions qui prennent en compte tous les problèmes possibles et contiennent toutes les solutions. Au lieu de cela, un ordinateur (ou un programme distinct) est présenté avec un algorithme pour trouver indépendamment des solutions grâce à l'utilisation intégrée de données statistiques à partir desquelles des modèles sont dérivés et sur la base de quelles prévisions sont faites.
La technologie d'apprentissage automatique basée sur l'analyse des données remonte à 1950, quand ils ont commencé à développer les premiers programmes pour jouer aux dames. Au cours des dernières décennies, le principe général n'a pas changé. Mais grâce à la croissance explosive de la puissance de calcul des ordinateurs, les lois et prévisions créées par eux sont devenues plus compliquées et la gamme de problèmes et de problèmes résolus à l'aide de l'apprentissage automatique s'est élargie.
Pour démarrer le processus d'apprentissage automatique, vous devez d'abord télécharger l'ensemble de données (une certaine quantité de données d'entrée) sur l'ordinateur, sur lequel l'algorithme apprendra à traiter les demandes. Par exemple, il peut y avoir des photographies de chiens et de chats qui ont déjà des étiquettes indiquant à qui ils appartiennent. Après le processus de formation, le programme lui-même sera capable de reconnaître les chiens et les chats dans de nouvelles images sans contenu d'étiquette. Le processus d'apprentissage se poursuit même après la publication des prévisions, plus nous avons analysé de données par le programme, plus il reconnaîtra avec précision les images souhaitées.
Grâce à l'apprentissage automatique, les ordinateurs apprennent à reconnaître dans les photographies et les dessins non seulement les visages, mais aussi les paysages, les objets, le texte et les nombres. Quant au texte, ici on ne peut pas se passer du machine learning: la fonction de vérification de la grammaire est désormais présente dans n'importe quel éditeur de texte et même dans les téléphones. De plus, non seulement l'orthographe des mots est prise en compte, mais aussi le contexte, les nuances de sens et d'autres aspects linguistiques subtils. De plus, il existe déjà des logiciels capables d'écrire des articles d'actualité (sur l'économie et, par exemple, le sport) sans intervention humaine.
1.2 Types de tâches d'apprentissage automatique
Toutes les tâches résolues à l'aide de ML entrent dans l'une des catégories suivantes.
1) La tâche de régression est une prévision basée sur un échantillon d'objets avec différents attributs. La sortie doit être un nombre réel (2, 35, 76.454, etc.), par exemple, le prix d'un appartement, la valeur d'une garantie après six mois, le revenu attendu du magasin pour le mois suivant, la qualité du vin lors des tests à l'aveugle.
2) La classification a pour
tâche d' obtenir une réponse catégorique basée sur un ensemble de caractéristiques. Il a un nombre fini de réponses (généralement au format «oui» ou «non»): y a-t-il un chat sur la photo, est-ce l'image d'un visage humain, le patient est-il atteint d'un cancer.
3) Le clustering a pour tâche de répartir les données en groupes: diviser tous les clients d'un opérateur mobile par niveau de solvabilité, attribuer des objets spatiaux à l'une ou l'autre catégorie (planète, étoiles, trou noir, etc.).
4) La tâche de réduction de la dimension consiste à réduire un grand nombre de fonctionnalités à une plus petite (généralement 2-3) pour la commodité de leur visualisation ultérieure (par exemple, la compression de données).
5) La détection des anomalies consiste à séparer les anomalies des cas standard. À première vue, cela coïncide avec la tâche de classification, mais il y a une différence significative: les anomalies sont un phénomène rare, et les exemples de formation sur lesquels vous pouvez former un modèle d'apprentissage automatique pour identifier de tels objets sont soit très faibles, soit tout simplement pas, donc les méthodes de classification ne fonctionnent pas ici . En pratique, une telle tâche consiste par exemple à identifier des activités frauduleuses avec des cartes bancaires.
1.3 Types de base d'apprentissage automatique
La majeure partie des tâches résolues à l'aide de méthodes d'apprentissage automatique concerne deux types différents: l'apprentissage avec un enseignant (apprentissage supervisé) ou sans lui (apprentissage non supervisé). Cependant, ce professeur n'est pas nécessairement le programmeur lui-même, qui se tient au-dessus de l'ordinateur et contrôle toutes les actions du programme. "Enseignant" en termes d'apprentissage automatique est l'intervention humaine elle-même dans le processus de traitement de l'information. Dans les deux types de formation, la machine fournit des données initiales qu'elle devra analyser et trouver des modèles. La seule différence est que lors de l'apprentissage avec un enseignant, il existe un certain nombre d'hypothèses qui doivent être réfutées ou confirmées. Cette différence est facile à comprendre avec des exemples.
Apprentissage automatique avec un enseignantSupposons que nous disposions d'informations sur dix mille appartements à Moscou: superficie, étage, quartier, présence ou absence de parking à la maison, distance du métro, prix de l'appartement, etc. Nous devons créer un modèle qui prédit la valeur marchande d'un appartement par ses paramètres. C'est un exemple idéal d'apprentissage automatique avec un enseignant: nous avons les données initiales (le nombre d'appartements et leurs propriétés, qui sont appelés des signes) et une réponse toute prête pour chacun des appartements est son coût. Le programme doit résoudre le problème de régression.
Autre exemple tiré de la pratique: pour confirmer ou nier la présence d'un cancer chez un patient, en connaissant tous ses indicateurs médicaux. Découvrez si un message entrant est du spam en analysant son texte. Ce sont toutes des tâches de classification.
Apprentissage automatique sans professeurDans le cas d'une formation sans enseignant, lorsque des «bonnes réponses» toutes faites ne sont pas fournies au système, tout est encore plus intéressant. Par exemple, nous avons des informations sur le poids et la taille d'un certain nombre de personnes, et ces données doivent être divisées en trois groupes, dont chacun devra coudre des chemises de tailles appropriées. Il s'agit d'une tâche de clustering. Dans ce cas, il est nécessaire de diviser toutes les données en 3 clusters (mais, en règle générale, il n'y a pas une telle division stricte et possible).
Si nous prenons une situation différente, lorsque chacun des objets de l'échantillon a des centaines de fonctionnalités différentes, la principale difficulté sera l'affichage graphique d'un tel échantillon. Par conséquent, le nombre de signes est réduit à deux ou trois, et il devient possible de les visualiser sur un plan ou en 3D. C'est la tâche de réduire la dimension.
1.4 Algorithmes de base des modèles d'apprentissage automatique
1. Arbre de décisionIl s'agit d'une méthode d'aide à la décision basée sur l'utilisation d'un graphe arborescent: un modèle de décision qui prend en compte leurs conséquences potentielles (en tenant compte de la probabilité d'occurrence d'un événement), de l'efficacité et de la consommation de ressources.
Pour les processus métier, cet arbre se compose d'un nombre minimum de questions nécessitant une réponse définitive - «oui» ou «non». En répondant constamment à toutes ces questions, nous arrivons au bon choix. Les avantages méthodologiques de l'arbre de décision sont qu'il structure et systématise le problème, et la décision finale est prise sur la base de conclusions logiques.
2. Classification bayésienne naïveLes classificateurs naïfs de Bayes appartiennent à la famille des classificateurs probabilistes simples et proviennent du théorème de Bayes, qui dans ce cas considère les fonctions comme indépendantes (c'est ce qu'on appelle une hypothèse stricte ou naïve). En pratique, il est utilisé dans les domaines suivants de l'apprentissage automatique:
- Détection des spams
- liaison automatique des articles de presse aux sections thématiques;
- identification de la coloration émotionnelle du texte;
- reconnaissance des visages et autres motifs dans les images.
3. Méthode des moindres carrésQuiconque a étudié au moins un peu les statistiques connaît le concept de régression linéaire. Les moindres carrés sont également liés à ses options de mise en œuvre. En règle générale, la régression linéaire résout le problème de l'ajustement d'une ligne droite passant par de nombreux points. Voici comment le faire en utilisant la méthode des moindres carrés: tracez une ligne droite, mesurez la distance de celle-ci à chacun des points (connectez les points et la ligne avec des segments verticaux), transférez la quantité résultante vers le haut. Par conséquent, la courbe dans laquelle la somme des distances sera la plus petite est celle souhaitée (cette ligne passera par des points avec un écart normalement distribué par rapport à la valeur réelle).
Une fonction linéaire est généralement utilisée dans la sélection des données pour l'apprentissage automatique, et la méthode des moindres carrés est utilisée pour minimiser les erreurs en créant une métrique d'erreur.
4. Régression logistiqueLa régression logistique est un moyen de déterminer la relation entre les variables, dont l'une est catégoriquement dépendante et les autres sont indépendantes. Pour cela, la fonction logistique (distribution logistique cumulative) est utilisée. La signification pratique de la régression logistique est qu'il s'agit d'une méthode statistique puissante pour prédire les événements, qui comprend une ou plusieurs variables indépendantes. Ceci est demandé dans les situations suivantes:
- notation de crédit;
- mesurer le succès des campagnes publicitaires en cours;
- prévisions de bénéfices pour un certain produit;
- évaluation de la probabilité d'un tremblement de terre à une date précise.
5. Prise en charge de la méthode vectorielle (SVM)Il s'agit d'un ensemble complet d'algorithmes nécessaires pour résoudre les problèmes d'analyse de classification et de régression. Basée sur le fait qu'un objet situé dans un espace à N dimensions appartient à l'une des deux classes, la méthode du vecteur de support construit un hyperplan de dimension (N - 1) de sorte que tous les objets apparaissent dans l'un des deux groupes. Sur le papier, cela peut être représenté comme suit: il existe des points de deux types différents, et ils peuvent être divisés linéairement. En plus de séparer les points, cette méthode génère un hyperplan de manière à ce qu'il soit le plus loin possible du point le plus proche de chaque groupe.
SVM et ses modifications aident à résoudre des tâches d'apprentissage automatique complexes telles que l'épissage d'ADN, la détermination du sexe d'une personne à partir de photographies et l'affichage de bannières publicitaires sur des sites Web.
6. La méthode des ensemblesIl est basé sur des algorithmes d'apprentissage automatique qui génèrent de nombreux classificateurs et séparent tous les objets des données nouvellement reçues en fonction de leurs résultats de moyenne ou de vote. Initialement, la méthode d'ensemble était un cas particulier de la moyenne bayésienne, mais ensuite elle est devenue plus compliquée et a été envahie par des algorithmes supplémentaires:
- boosting - convertit les modèles faibles en modèles forts en formant un ensemble de classificateurs (d'un point de vue mathématique, il s'agit d'une intersection en amélioration);
- ensachage (ensachage) - collecte des classificateurs sophistiqués, tout en entraînant simultanément les bases (amélioration de l'association);
- correction d'erreur du codage de sortie.
La méthode d'ensemble est un outil plus puissant que les modèles de prévision autonomes, car:
- il minimise l'influence des accidents en faisant la moyenne des erreurs de chaque classificateur de base;
- réduit la dispersion, car plusieurs modèles différents basés sur des hypothèses différentes sont plus susceptibles d'arriver au résultat correct que celui pris séparément;
- exclut d'aller au-delà de la portée de l'ensemble: si l'hypothèse agrégée est en dehors de l'ensemble des hypothèses de base, alors au stade de la formation de l'hypothèse combinée, elle se développe en utilisant une méthode ou une autre, et l'hypothèse y est déjà incluse.
7. Algorithmes de clusteringLe regroupement consiste en la distribution de nombreux objets en catégories de sorte que dans chaque catégorie - le cluster - les éléments les plus similaires se trouvent.
Vous pouvez regrouper des objets à l'aide de différents algorithmes. Les plus couramment utilisés sont:
- basé sur le centre de gravité du triangle;
- basé sur la connexion;
- réduction dimensionnelle;
- densité (basée sur le regroupement spatial);
- probabiliste;
- l'apprentissage automatique, y compris les réseaux de neurones.
Les algorithmes de clustering sont utilisés en biologie (étude de l'interaction des gènes dans un génome contenant jusqu'à plusieurs milliers d'éléments), en sociologie (traitement des résultats des études sociologiques à l'aide de la méthode de Ward, produisant des clusters avec une dispersion minimale et à peu près de la même taille) et des technologies de l'information.
8. Méthode des composants principaux (ACP)La méthode des composants principaux, ou PCA, est une opération statistique sur la transformation orthogonale, qui vise à traduire les observations de variables qui peuvent être en quelque sorte interconnectées en un ensemble de composants principaux - des valeurs qui ne sont pas corrélées linéairement.
Les tâches pratiques dans lesquelles l'APC est appliquée sont la visualisation et la plupart des procédures de compression, de simplification et de minimisation des données afin de faciliter le processus d'apprentissage. Cependant, la méthode des composantes principales ne convient pas aux situations où les données initiales sont mal ordonnées (c'est-à -dire que toutes les composantes de la méthode sont caractérisées par une dispersion élevée). Son applicabilité est donc déterminée par la façon dont le sujet est étudié et décrit.
9. Décomposition singulièreEn algèbre linéaire, une décomposition singulière, ou SVD, est définie comme la décomposition d'une matrice rectangulaire composée de nombres complexes ou réels. Ainsi, une matrice M de dimension [m * n] peut être décomposée de telle manière que M = UΣV, où U et V sont des matrices unitaires et Σ est diagonal.
L'un des cas particuliers de décomposition singulière est la méthode des composantes principales. Les toutes premières technologies de vision par ordinateur ont été développées sur la base de SVD et PCA et ont fonctionné comme suit: d'abord, les visages (ou d'autres motifs qui devaient être trouvés) ont été représentés comme la somme des composants de base, puis leurs dimensions ont été réduites, après quoi elles ont été comparées avec des images de l'échantillon. Bien entendu, les algorithmes modernes de décomposition singulière en apprentissage automatique sont beaucoup plus complexes et sophistiqués que leurs prédécesseurs, mais leur essence a changé en général.
10. Analyse des composants indépendants (ICA)C'est l'une des méthodes statistiques qui révèle les facteurs cachés qui affectent les variables aléatoires, les signaux, etc. L'ICA génère un modèle génératif pour les bases de données multifactorielles. Les variables du modèle contiennent des variables masquées et il n'y a aucune information sur les règles pour les mélanger. Ces variables cachées sont des composants d'échantillon indépendants et sont considérées comme des signaux non gaussiens.
Contrairement à l'analyse des composants principaux, qui est associée à cette méthode, l'analyse des composants indépendants est plus efficace, surtout dans les cas où les approches classiques sont impuissantes. Il découvre les causes cachées des phénomènes et, pour cette raison, a trouvé une large application dans divers domaines, de l'astronomie et la médecine à la reconnaissance vocale, les tests automatiques et l'analyse de la dynamique des indicateurs financiers.
1.5 Exemples concrets
Exemple 1. Diagnostic de maladiesLes patients dans ce cas sont des objets, et les signes sont tous leurs symptômes, leurs antécédents, les résultats des tests, les mesures de traitement déjà prises (en fait, tous les antécédents médicaux, formalisés et décomposés en critères distincts). Certains signes - sexe, présence ou absence de maux de tête, toux, éruption cutanée et autres - sont considérés comme binaires. L'évaluation de la gravité de la maladie (extrêmement sévère, modérée, etc.) est un signe ordinal, et de nombreux autres sont quantitatifs: le volume du médicament, le niveau d'hémoglobine dans le sang, les indicateurs de la pression artérielle et du pouls, l'âge, le poids. Après avoir collecté des informations sur l'état du patient, contenant bon nombre de ces signes, vous pouvez les télécharger sur un ordinateur et, à l'aide d'un programme capable d'apprentissage automatique, résoudre les problèmes suivants:
- effectuer un diagnostic différentiel (déterminer le type de maladie);
- choisir la stratégie de traitement la plus optimale;
- prédire le développement de la maladie, sa durée et son évolution;
- calculer le risque de complications possibles;
- identifier les syndromes - ensembles de symptômes associés à une maladie ou un trouble donné.
Aucun médecin n'est en mesure de traiter instantanément l'intégralité des informations pour chaque patient, de résumer un grand nombre d'autres dossiers médicaux similaires et de donner immédiatement un résultat clair. Par conséquent, l'apprentissage automatique devient un outil indispensable pour les médecins.
Exemple 2. La recherche de gisements minérauxDans le rôle des signes se trouvent ici des informations obtenues par l'exploration géologique: la présence de roches sur le territoire (et ce sera un signe de type binaire), leurs propriétés physiques et chimiques (qui se décomposent en un certain nombre de signes quantitatifs et qualitatifs).
Pour l'échantillon de formation, 2 types de précédents sont pris: les zones où les gisements minéraux sont précisément présents, et les zones avec des caractéristiques similaires où ces minéraux n'ont pas été trouvés. Mais l'extraction de minéraux rares a ses spécificités: dans de nombreux cas, le nombre de signes dépasse largement le nombre d'objets, et les méthodes de statistiques traditionnelles sont mal adaptées à de telles situations. Par conséquent, dans l'apprentissage automatique, l'accent est mis sur la détection de modèles dans un tableau de données déjà collecté. Pour cela, les petits ensembles de caractéristiques les plus informatifs sont déterminés qui sont les plus représentatifs de la réponse à la question de recherche - y a-t-il un fossile particulier dans la zone indiquée ou non. On peut faire une analogie avec la médecine: les dépôts peuvent également révéler leurs propres syndromes. L'intérêt de l'utilisation du machine learning dans ce domaine réside dans le fait que les résultats obtenus sont non seulement pratiques, mais également d'un grand intérêt scientifique pour les géologues et les géophysiciens.
Exemple 3. Évaluation de la fiabilité et de la solvabilité des candidats à des prêtsCette tâche est rencontrée quotidiennement par toutes les banques impliquées dans l'octroi de prêts. La nécessité d'automatiser ce processus est attendue depuis longtemps, dans les années 1960-1970, lorsque le boom des cartes de crédit a commencé aux États-Unis et dans d'autres pays., , – , , . , , , . , . (, ), — (, ), ( , , , , , ) (, -, , ).
, , . , 2 – «» «», «».
, , , . , (, , ). – .
PS , Python.