Top 10 des algorithmes d'apprentissage automatique : pourquoi sont-ils si importants en 2021 ?
Publié: 2019-06-10Table des matières
Au fond du trou du lapin de l'apprentissage automatique
Applications réelles
Qu'entend-on par algorithmes d'apprentissage automatique ?
Types d'apprentissage automatique
Top 10 des algorithmes d'apprentissage automatique
Conclure
En 2021, les ordinateurs peuvent non seulement voir , mais ils peuvent lire et écrire par eux-mêmes.
Eh bien, jetons un coup d'œil à l'histoire d'horreur moderne dans laquelle nous vivons réellement.
Par exemple, comment réagiriez-vous si quelqu'un vous disait que bientôt 30% des emplois seront remplacés par l'automatisation ? C'est scandaleux, non ?
Et qu'est-ce que cela a à voir avec les algorithmes d'apprentissage automatique ?
Heureusement, il y a une lumière au bout du tunnel. Laissez-moi vous guider.
En 2021, les ordinateurs pourront :
- Reconnaître les voix, les visages et l'écriture. (style CSI…)
- Légende les images automatiquement.
- Apprenez à reconnaître le contenu d'une image et à la classer selon une caractéristique spécifique.
- Faites des tâches pour vous. (Et créez les algorithmes nécessaires pour les retirer.)
La liste est longue, bien sûr.
Chaque jour, nous effectuons des recherches sur le Web, visitons des sites Web et des médias sociaux. Et on ne se pose jamais la question fondamentale :
Jusqu'où est allée la technologie de l'IA ?
Nous y voilà!
Les progrès de la technologie soulèvent des questions sur l'avenir de l'humanité.
Peut-être que ces faits nous donneront un aperçu :
(Source : Futurisme , Dezyre )
- En Corée du Sud, sur 100 travailleurs, 4,78 en moyenne sont des robots .
- 88 % des employés en Éthiopie risquent de perdre leur emploi à cause des robots.
- À New York, les employés en danger sont 40,7 % .
- 9 lignes de code sont nécessaires pour écrire un programme d'apprentissage automatique.
- 97% des emplois de cuisine de restauration rapide seront remplacés par des machines.
- 98% des agriculteurs perdront leur emploi à cause des machines.
- L'apprentissage automatique peut générer jusqu'à 1 milliard de dollars par an dans l'industrie pharmaceutique.
- Au cours des 10 prochaines années, l'apprentissage automatique devrait remplacer 25 % des emplois.
En 2021, nous pouvons réellement posséder un robot à la maison.
Vous pouvez avoir une conversation fluide avec Jibo ou Tapia . Ils sont appelés robots sociaux pour une raison.
Ils se souviennent des noms, des visages et des voix de vos amis et des membres de votre famille (ce qui n'est pas effrayant du tout !), ils peuvent garder votre enfant (oh oui !), et si vous avez un accident à la maison, ils appelleront le 911 pour tu. Ce dernier peut être particulièrement utile lorsqu'il n'y a personne d'autre autour. Mais nous y reviendrons plus tard.
De nos jours, les algorithmes peuvent « s'enseigner » les langues et même traduire l'anglais parlé en chinois écrit simultanément avec la maîtrise du chinois natif moyen. Tôt ou tard, l'étude des langues étrangères deviendra inévitablement obsolète.
Et que diriez-vous de ceci :
Nos smartphones nous espionnent littéralement… Je suis sûr que vous savez exactement de quoi je parle ! Imaginez - au déjeuner de bureau, vous mentionnez (verbalement !) que vous voulez commencer à regarder Lucifer . De retour à votre bureau, vous ouvrez Pinterest ou Facebook sur votre téléphone, et le voilà – le Diable lui-même… (Oui, Tom Ellis est rêveur, mais ce n'est pas la question !)
Les systèmes de recommandation sont partout autour de nous. Si vous saisissez une recherche pour « Lego », les images associées qui apparaissent et sont classées comme Lego ont été reconnues comme telles par une IA. En d'autres termes, ils n'ont pas été annotés manuellement comme des blocs Lego par un humain…
L'algorithme avait appris lui-même ce que c'était en regardant des millions d'images.
Chaire de poule!
Toutes ces capacités et bien plus encore, sont déjà utilisées par les entreprises.
Les implications ici sont :
Premièrement, les ordinateurs possèdent Enseignez-vous , les gars! Pensez à tous les robots travailleurs du futur. Ils apprendront et effectueront des tâches BEAUCOUP plus rapidement que les travailleurs humains.
Et deuxièmement – je sais ce que vous pensez – OMG, l'humanité est tellement condamnée !
Beaucoup de gens réagissent de cette façon.
Au cours du siècle dernier, de nombreux auteurs ont écrit sur un avenir où les robots domineraient les humains. L'intelligence artificielle est florissante, les robots gouverneront le monde et se nourriront d'humains. La singularité est proche.
OK, c'est un bon endroit pour s'arrêter.
Maintenant que nous avons sorti cela de notre système, regardons ce qui est réellement vrai.
Au fond du trou du lapin de l'apprentissage automatique
Nous avons d'abord besoin d'un certain contexte.
Il y a 15 000 ans, l'un des jeux les plus appréciés au monde était inventé. Quelque part entre le 12ème et le 14ème siècle, ce jeu est devenu connu sous le nom d' échecs .
Il a 10 à la puissance 40 résultats possibles (c'est 1 avec 40 zéros à la fin).
En 2017, l' algorithme AlphaZero de Google a utilisé l'apprentissage automatique pour apprendre à jouer ET gagner la partie.
L'ensemble du processus, de l'introduction du jeu à l'algorithme, jusqu'à ce qu'il remporte son premier match contre Stockfish - l'un des moteurs d'échecs les plus puissants au monde, a pris :
(Préparez vous!)
4 heures.
Aie!
Oui, nous sommes à la veille d'une révolution de l'apprentissage automatique .
Avec le recul, ce n'est pas la première perturbation de ce genre. La révolution industrielle de la fin du 19e et du début du 20e siècle a également causé des bouleversements sociaux, mais finalement, l'humanité et les machines ont atteint un équilibre.
Oui, les choses changent, et c'est en fait une bonne chose !
Un logiciel d'apprentissage automatique possède le pouvoir d'examiner un problème avec un œil neuf et de naviguer dans des environnements inconnus.
Donc, comme nous allons le voir, ce n'est pas une histoire d'horreur après tout.
Plutôt un miracle technologique.
Maintenant:
Pourquoi la classification est-elle si importante ?
Pour commencer, qu'est-ce que le machine learning par définition ?
Fondamentalement, une machine est programmée pour apprendre elle-même à produire un programme et à créer des solutions. L'apprentissage automatique produit toujours les nombres les plus précis (et, si nécessaire, les prédictions) possibles.
Pensez à une technologie qui peut résoudre un large éventail de problèmes complètement différents.
Et c'est la beauté de celui-ci!
Le but principal du système est de classer . C'est ce qu'on appelle aussi la vision par ordinateur . Il apprendra tout seul à faire des distinctions. Et le nombre de problèmes différents dans le monde qui peuvent être réduits à la tâche apparemment simple de classification, est absolument ahurissant.
Imaginez simplement la possibilité de classer entre :
- Bonnes et mauvaises positions aux échecs (jeux)
- Phrases grammaticalement correctes et incorrectes (traduction)
- Une route vide et une avec des voitures ou des piétons dessus (voitures autonomes)
- Une cellule saine et une cellule cancéreuse (diagnostic médical)
C'est exactement pourquoi les experts dans de nombreux domaines deviendront obsolètes. Vous n'avez pas besoin d'être un expert pour créer un code qui effectuera de telles tâches. Les gars qui ont écrit le programme de traduction simultanée anglais-chinois ne parlaient pas un mot de chinois.
L'algorithme va lui-même apprendre à être un expert.
Et oui, il est important de les connaître et d'apprendre à les connaître… comme nous avons appris à connaître les ordinateurs au début.
Nous sommes bons avec les ordinateurs maintenant. Tellement bon qu'on a tendance à les anthropomorphiser (ou c'est peut-être juste moi ?).
Il semble que ce soit le moment de se demander :
Qu'arrivera-t-il à toutes ces personnes, qui finiront par perdre leur emploi à cause des programmes d'IA et d'apprentissage automatique ?
Avez-vous entendu parler d'une petite chose appelée Revenu de Base Universel ?
Voilà c'est parti :
À l'avenir, les citoyens auront des revenus qui ne les obligent à faire aucun travail. L'argent viendra de l'efficacité insensée que fournira l'automatisation et des économies qui en découlent.
Soit cela, soit – un scénario un peu plus réaliste – de nombreux nouveaux types d'emplois apparaîtront. À la fin du 19e siècle, environ 50 % de la population des États-Unis travaillait dans l'agriculture. Aujourd'hui, grâce à des machines puissantes, moins de 2% sont des agriculteurs et pourtant des personnes sont employées.
Maintenant, à quoi peut servir le machine learning ?
Applications réelles
L'apprentissage automatique peut être utilisé pour déduire de nouveaux faits à partir d'une base de données.
Voyons voir quelques - uns des domaines dans lesquels l' apprentissage de la machine fera une grande différence:
- Conduite assistée – les voitures peuvent automatiquement freiner à votre place lorsque vous vous rapprochez du véhicule qui vous précède. Et ainsi, à un moment donné dans le futur, l'humanité va presque oublier ce que signifie un accident de voiture . Les voitures autonomes sont en route.
- Soins de santé – améliore l'efficacité des professionnels de la santé. La reconnaissance et le diagnostic des maladies deviendront beaucoup plus faciles et précis grâce à l'apprentissage automatique. Par exemple, les programmes peuvent non seulement scanner et identifier des images de tissus cancéreux mieux que les humains, mais ils peuvent également calculer les taux de survie des patients sur la base d'énormes bases de données de dossiers médicaux. (Découvrez le travail de Jeremy Howard et son projet appelé Enlitic . C'est incroyable !)
- Invention de médicaments : grâce à l'apprentissage automatique, chaque patient peut recevoir un traitement spécialement conçu pour lui.
- Agriculture – l'agriculture sera automatisée grâce à la vision par ordinateur et au contrôle robotique : qualité et prédiction des récoltes, détection des maladies, bien-être du bétail et production.
- Capacités linguistiques alimentées par l'IA - dans un avenir proche, nous serons en mesure de communiquer verbalement avec une traduction en temps réel à l'aide de l'IA .
L'apprentissage automatique n'est qu'un outil, et il le restera dans un avenir prévisible.
Donc, pas besoin de s'inquiéter. Asseyez-vous et détendez-vous.
Maintenant que nous avons vu ce qu'est l'apprentissage automatique, posons-nous la question suivante :
Qu'entend-on par algorithmes d'apprentissage automatique ?
Ainsi, après avoir établi à quel point notre apprentissage automatique futur est important et bénéfique, examinons de plus près les algorithmes qui font que la magie opère.
Une excellente façon d'expliquer les algorithmes d'apprentissage automatique est de les comparer à la programmation traditionnelle.
En programmation traditionnelle , le programmeur travaille en équipe avec un expert du domaine, pour lequel le logiciel est développé. Plus la tâche est complexe, plus le code est long et plus son écriture sera difficile.
Les algorithmes d'apprentissage automatique fonctionnent très différemment. L'algorithme reçoit un ensemble de données pour l'entrée – et un facultatif pour la sortie. Il l'analyse ensuite (ou les) et élabore le processus qui doit avoir lieu pour qu'un résultat utile se produise. Aujourd'hui, c'est un travail réservé à un programmeur humain. À l'avenir, cela changera aussi.
Types d'apprentissage automatique
Il existe 4 types différents d' algorithmes d' apprentissage automatique .
Les voici:
1. Apprentissage supervisé
Les données d'entrée dans les algorithmes d'apprentissage supervisé sont étiquetées et la sortie est connue et précise. Pour utiliser cette classe d'algorithmes, vous auriez besoin d'une grande quantité de données étiquetées. Et ce n'est peut-être pas toujours une tâche facile.
Les algorithmes supervisés se répartissent en deux catégories : la régression et la classification . Chacun examine différents ensembles de données.
Les algorithmes de régression sont ceux qui font des prédictions et des prévisions. Il s'agit notamment des prévisions météorologiques, de la croissance démographique et des estimations de l'espérance de vie, des prévisions du marché.
Les algorithmes de classification sont utilisés pour les diagnostics, la détection des fraudes d'identité, la fidélisation des clients et, comme son nom l'indique, la classification des images.
2. Apprentissage non supervisé
Cela se produit lorsque les données d'entrée ne sont pas étiquetées. Ils organisent les données en structures de clusters. Ainsi, toutes les données d'entrée sont immédiatement prêtes à être analysées.
Étant donné que les données ne sont pas étiquetées, il n'y a aucun moyen d'évaluer l'exactitude du résultat. Cela dit, ce n'est pas la précision que les algorithmes non supervisés sont conçus pour rechercher. Les clusters créés par l'algorithme ne sont en aucun cas familiers au programme. L'idée est donc de saisir des données, de les analyser et de les regrouper en clusters.
Tout comme les algorithmes supervisés, leurs cousins non supervisés sont divisés en 2 catégories – réduction de dimensionnalité et clustering .
Les algorithmes de clustering eux-mêmes font évidemment partie de tout cela. Il est utile de regrouper les données en catégories, de sorte que vous n'ayez pas à traiter chaque élément seul. Ces algorithmes sont surtout utilisés pour la segmentation de la clientèle et le marketing ciblé.
Les algorithmes de réduction de dimensionnalité sont utilisés pour la découverte de structure, la visualisation de Big Data, l'élicitation de caractéristiques et la compression significative. Si le regroupement est un côté de la médaille, la réduction de la dimensionnalité serait l'autre. En regroupant les données en clusters, les algorithmes réduisent inévitablement le nombre de variables significatives (dimensions) qui décrivent l'ensemble de données.
Maintenant, il existe une classe d'algorithmes d'apprentissage automatique qui combine les 2 classes précédentes :
3. Apprentissage semi-supervisé
Il se situe entre supervisé avec des données marquées et des algorithmes non supervisés avec des données non marquées.
Les algorithmes semi-supervisés utilisent une petite quantité de données étiquetées et une grande quantité de données non étiquetées. Cela peut conduire à une amélioration de la précision de l'apprentissage.
C'est aussi un énorme soulagement en termes de collecte de données car il faut beaucoup de ressources pour générer des données étiquetées.
4. Apprentissage par renforcement
Contrairement aux 3 types précédents, les algorithmes de renforcement choisissent une action basée sur un ensemble de données. Ensuite, ils évaluent le résultat et modifient la stratégie si nécessaire.
Dans les algorithmes de renforcement, vous créez un réseau et une boucle d'actions, et c'est tout. Sans créer de base de données, vous avez un gagnant. Pourquoi?
Eh bien, ce sont les algorithmes de renforcement qui ont compris les jeux de dames, d'échecs et de go.
L'apprentissage par renforcement fonctionne sur le principe de l'essai et de l'erreur. Le système recevra une récompense quelconque qui l'aidera à mesurer son taux de réussite. Dans le cas des jeux, la récompense sera le tableau de bord. Chaque fois que le système gagne un point, il l'évalue comme un coup réussi et le statut de ce coup devient plus élevé. Il continuera à répéter la boucle jusqu'à ce que tous ses mouvements soient réussis.
Et c'est ainsi que nous avons un algorithme qui peut maîtriser le jeu d'échecs en 4 heures.
Maintenant on sait !
Bien. Jetons un coup d'œil aux algorithmes eux-mêmes :
Top 10 des algorithmes d'apprentissage automatique
Maintenant, avant de commencer, examinons l'un des concepts de base de l'apprentissage automatique. La régression , en ce qui concerne les algorithmes de régression d'apprentissage automatique , signifie que l'algorithme essaiera d'établir une relation entre deux variables.
Il existe de nombreux types de régression – linéaire, logistique, polynomiale, régression des moindres carrés ordinaires, etc. Aujourd'hui, nous ne couvrirons que les 2 premiers types, car sinon ce sera mieux publié sous forme de livre que d'article.
Comme nous le verrons dans un instant, la plupart des 10 meilleurs algorithmes sont des algorithmes d'apprentissage supervisé et sont mieux utilisés avec Python.
Voici la liste des 10 meilleurs algorithmes d'apprentissage automatique :
1. Régression linéaire
Il fait partie des algorithmes d'apprentissage automatique les plus populaires. Il fonctionne pour établir une relation entre deux variables en ajustant une équation linéaire à travers les données observées.
En d'autres termes, ce type d'algorithmes observe diverses caractéristiques afin de parvenir à une conclusion. Si le nombre de variables est supérieur à deux, l'algorithme sera appelé régression linéaire multiple.
La régression linéaire est également l'un des algorithmes d'apprentissage automatique supervisé qui fonctionnent bien en Python . C'est un outil statistique puissant et peut être appliqué pour prédire le comportement des consommateurs, estimer les prévisions et évaluer les tendances. Une entreprise peut tirer parti d'une analyse linéaire et prévoir les ventes pour une période future.
Donc, si nous avons deux variables, l'une d'elles est explicative et l'autre est la dépendante . La variable dépendante représente la valeur sur laquelle vous souhaitez rechercher ou faire une prédiction. La variable explicative est indépendante. La variable dépendante compte toujours sur l'explication.
Le but du machine learning linéaire est de voir s'il existe une relation significative entre les deux variables et s'il y en a, de voir exactement ce qu'elle représente.
La régression linéaire est considérée comme un algorithme d'apprentissage automatique simple et est donc populaire parmi les scientifiques.
Maintenant, il y a la régression linéaire, et il y a la régression logistique. Voyons la différence :
2. Régression logistique
C'est l'un des algorithmes de base de l'apprentissage automatique . C'est un classificateur binomial qui n'a que 2 états, ou 2 valeurs - auxquels vous pouvez attribuer les significations de Les données d'entrée sont compressées puis analysées.
Contrairement à la régression linéaire, les algorithmes logistiques font des prédictions en utilisant une fonction non linéaire. Les algorithmes de régression logistique sont utilisés pour la classification et non pour les tâches de régression. La « régression » dans le nom suggère que les algorithmes utilisent un modèle linéaire et l'intègrent dans le futur espace.
La régression logistique est un algorithme d'apprentissage automatique supervisé qui, comme la régression linéaire, fonctionne bien en Python. D'un point de vue mathématique, si l'on s'attend à ce que les données de sortie de la recherche soient en termes de malades/en bonne santé ou de cancer/pas de cancer, alors une régression logistique est l'algorithme parfait à utiliser.
Contrairement à la régression linéaire où les données de sortie peuvent avoir des valeurs différentes, la régression logistique peut avoir comme sortie uniquement 1 et 0.
Il existe 3 types de régression logistique, basés sur la réponse catégorielle. Ceux-ci sont:
- Régression logistique binaire - c'est le type le plus fréquemment utilisé si la sortie est une variété de "oui"/"non".
- Régression logistique multi-nominale - lorsqu'il y a la possibilité de 3 réponses ou plus sans ordre.
- Régression logistique ordinale - encore 3 réponses ou plus, mais avec ordre. Par exemple, lorsque les résultats attendus sont sur une échelle de 1 à 10.
Voyons un autre excellent algorithme de classification :
3. Analyse discriminante linéaire
Cette méthode trouve des combinaisons linéaires de caractéristiques, qui séparent différentes données d'entrée. Le but d'un algorithme LDA est d'examiner une variable fiable comme une union linéaire de caractéristiques. C'est une excellente technique de classification .
Cet algorithme examine les qualités statistiques des données d'entrée et effectue des calculs pour chaque classe. Il mesure la valeur de la classe, puis la variance entre toutes les classes.
Au cours du processus de modélisation des différences entre les classes, l'algorithme examine les données d'entrée en fonction de variables indépendantes.
Les données de sortie contiennent des informations sur la classe avec la valeur la plus élevée. Les algorithmes d'analyse discriminante linéaire fonctionnent mieux pour séparer les catégories connues . Lorsque plusieurs facteurs doivent être divisés mathématiquement en catégories, nous utilisons un algorithme LDA.
4. Les voisins les plus proches
L'algorithme kNN est l'un des grands algorithmes d'apprentissage automatique pour les débutants . Ils font des prédictions basées sur d'anciennes données disponibles, afin de classer les données en catégories en fonction de différentes caractéristiques.
Il figure sur la liste des algorithmes d'apprentissage automatique supervisé, qui est principalement utilisé pour la classification. Il stocke les données disponibles et les utilise pour mesurer les similitudes dans de nouveaux cas.
Le K dans kNN est un paramètre qui désigne le nombre de voisins les plus proches qui seront inclus dans le « processus de vote majoritaire ». De cette façon, les voisins de chaque élément « votent » pour déterminer sa classe.
L'une des meilleures façons d'utiliser l'algorithme kNN est lorsque vous disposez d'un petit ensemble de données sans bruit et que toutes les données sont étiquetées. L'algorithme n'est pas rapide et n'apprend pas à reconnaître les données impures. Lorsque l'ensemble de données est plus grand, ce n'est pas une bonne idée d'utiliser kNN.
L'algorithme kNN fonctionne comme ceci : d'abord, le paramètre K est spécifié, après quoi l'algorithme fait une liste d'entrées, qui est proche du nouvel échantillon de données. Ensuite, il trouve la classification la plus courante des entrées, et enfin, il donne une classification à la nouvelle entrée de données.
En termes d'applications réelles, les algorithmes kNN sont utilisés par les moteurs de recherche pour déterminer si les résultats de la recherche sont pertinents pour la requête. Ils sont le héros méconnu qui fait gagner du temps aux utilisateurs lorsqu'ils effectuent une recherche.
Vient ensuite le Tree-Trio: Regression Trees , Random Forest et AdaBoost .
Nous y voilà:
5. Arbres de régression (aka Arbres de décision)
Oui, ils s'appellent des arbres , mais puisque nous parlons d'algorithmes d'apprentissage automatique, imaginez-les avec les racines en haut et les branches et les feuilles en bas.
Les arbres de régression sont un type d' algorithme d'apprentissage supervisé qui, surprise, fonctionne bien en Python. (La plupart des algorithmes de ML le font, d'ailleurs.)
Ces « arbres » sont également appelés arbres de décision et sont utilisés pour la modélisation prédictive . Ils nécessitent relativement peu d'efforts de la part de l'utilisateur en termes de quantité de données d'entrée.
Leur représentation est un arbre binaire et ils résolvent des problèmes de classification. Comme son nom l'indique, ce type d'algorithme utilise un modèle de décision en forme d'arbre. Ils effectuent un filtrage variable ou une sélection de caractéristiques. Les données d'entrée peuvent être à la fois numériques et catégorielles.
Traduction s'il vous plait!
Sûr. Chaque fois que vous prenez une décision, vous passez à une nouvelle situation – avec de nouvelles décisions à prendre. Chacune des voies possibles que vous pouvez emprunter est une « branche », tandis que les décisions elles-mêmes sont les « nœuds ». Votre point de départ initial est le nœud principal.
C'est ainsi qu'un algorithme d'arbre de décision crée une série de nœuds et de feuilles. L'important ici est qu'ils proviennent tous d'un même nœud. (En revanche, les algorithmes de forêt aléatoire produisent un certain nombre d'arbres, chacun avec son nœud principal.)
En termes d'application réelle, les arbres de régression peuvent être utilisés pour prédire les taux de survie, les primes d'assurance et le prix de l'immobilier, en fonction de divers facteurs.
Les arbres de régression « poussent » des branches de décisions jusqu'à ce qu'un critère d'arrêt soit atteint. Cela fonctionne mieux avec de petites quantités de données d'entrée, car sinon, vous pourriez obtenir un jeu de données de sortie biaisé.
L'algorithme décide où se diviser et former une nouvelle branche à partir d'une décision, sur la base de plusieurs algorithmes. Les données sont divisées en régions de sous-notes, qui se rassemblent autour de toutes les variables disponibles.
6. Forêt aléatoire
L'algorithme de forêt aléatoire est une autre forme d'apprentissage machine supervisé. Il produit plusieurs arbres de décision, au lieu d'un seul comme les arbres de régression. Les nœuds sont répartis de manière aléatoire et leur ordre n'a aucune importance pour les données de sortie. Plus la quantité d'arbres est grande, plus le résultat est précis.
Ce type d'algorithme peut être utilisé à la fois pour la classification et la régression. L'une des caractéristiques impressionnantes de l'algorithme de forêt aléatoire est qu'il peut fonctionner lorsqu'une grande partie des données est manquante . Il a également le pouvoir de travailler avec un grand ensemble de données.
Dans le cas de la régression, ces algorithmes ne sont pas le meilleur choix, car ils n'ont pas beaucoup de contrôle sur ce que fait le modèle.
Les algorithmes de Random Forest peuvent être très utiles dans le commerce électronique. Si vous devez déterminer si vos clients aimeront une paire de chaussures en particulier, il vous suffit de collecter des informations sur leurs achats précédents.
Vous incluez le type de chaussures, qu'elles aient ou non un talon, le sexe de l'acheteur et la fourchette de prix des paires précédentes qu'ils ont commandées. Ce seront vos données d'entrée.
L'algorithme générera suffisamment d'arbres pour vous fournir une estimation précise.
Je vous en prie!
Et voici le dernier algorithme du système arborescent :
7. AdaBoost
AdaBoost est l'abréviation de Adaptive Boosting. L'algorithme a remporté le prix Godel en 2003 pour ses créateurs.
Comme les deux précédents, celui-ci utilise également le système des arbres. Seulement au lieu de plusieurs nœuds et feuilles, les arbres dans AdaBoost ne produisent qu'un nœud et 2 feuilles, c'est-à-dire une souche .
Les algorithmes AdaBoost diffèrent considérablement des arbres de décision et des forêts aléatoires .
Voyons:
Un algorithme d' arbre de décision utilisera de nombreuses variables avant de produire une sortie. Une souche ne peut utiliser qu'une seule variable pour prendre une décision.
Dans le cas des algorithmes de forêt aléatoire , tous les arbres sont également importants pour la décision finale. Les algorithmes AdaBoost donnent la priorité à certaines souches par rapport à d'autres.
Et enfin, les arbres forestiers aléatoires sont plus chaotiques , pour ainsi dire. Cela signifie que la séquence des arbres n'a pas d'importance. Le résultat ne dépend pas de l'ordre dans lequel les arbres ont été produits. En revanche, pour les algorithmes AdaBoost, l'ordre est essentiel.
Le résultat de chaque arbre est la base du suivant. Donc, s'il y a une erreur en cours de route, chaque arbre suivant est affecté.
D'accord, alors que peut faire cet algorithme dans la vraie vie ?
Les algorithmes AdaBoost brillent déjà dans les soins de santé, où les chercheurs les utilisent pour mesurer les risques de maladie. Vous avez les données, mais différents facteurs ont une gravité différente. (Imaginez que vous tombiez sur votre bras et que vos médecins utilisent un algorithme pour déterminer s'il est cassé ou non. Si les données d'entrée contiennent à la fois la radiographie de votre bras et une photo de votre ongle cassé… sera accordé plus d'importance à.)
Maintenant, nous sommes sortis de la forêt, pour ainsi dire, alors examinons 3 autres types d'algorithmes d'apprentissage automatique :
8. Bayes naïf
Celui-ci est pratique lorsque vous avez un problème de classification de texte . C'est l'algorithme d'apprentissage automatique utilisé lorsque l'on doit traiter des ensembles de données de grande dimension, tels que le filtrage du spam ou la classification des articles de presse.
L'algorithme porte ce nom de signature car il considère chaque variable comme indépendante. En d'autres termes, il considère les différentes caractéristiques des données d'entrée comme totalement indépendantes. Cela en fait un classificateur probabiliste simple et efficace.
La partie « Bayes » du nom fait référence à l'homme qui a inventé le théorème utilisé pour l'algorithme, à savoir – Thomas Bayes. Son théorème, comme vous vous en doutez, examine la probabilité conditionnelle des événements.
Les probabilités sont calculées à deux niveaux. Premièrement, la probabilité de chaque classe. Et deuxièmement, la probabilité conditionnelle selon un facteur donné.
9. Apprentissage de la quantification vectorielle
L'algorithme de quantification vectorielle d'apprentissage, ou LVQ, est l'un des algorithmes d'apprentissage automatique les plus avancés .
Contrairement au kNN, l'algorithme LVQ représente un algorithme de réseau neuronal artificiel . En d'autres termes, il vise à recréer la neurologie du cerveau humain.
L'algorithme LVQ utilise une collection de vecteurs de livre de codes comme représentation. Ce sont essentiellement des listes de nombres, qui ont les mêmes qualités d'entrée et de sortie que vos données d'entraînement.
10. Machines vectorielles de soutien
Ce sont l'un des algorithmes d'apprentissage automatique les plus populaires .
L'algorithme Support Vector Machines est adapté aux cas extrêmes de classification . Signification - lorsque la limite de décision des données d'entrée n'est pas claire. La SVM sert de frontière qui sépare au mieux les classes d'entrée.
Les SVM peuvent être utilisées dans des ensembles de données multidimensionnels. L'algorithme transforme l'espace non linéaire en un espace linéaire. En 2 dimensions, vous pouvez visualiser les variables sous forme de ligne et ainsi identifier plus facilement les corrélations.
Les SVM ont déjà été utilisées dans divers domaines dans la vie réelle :
- Dans les tâches d'imagerie médicale et de classification médicale
- Pour étudier la qualité de l'air dans les zones à forte densité de population
- Pour aider à l'analyse financière
- Dans les algorithmes de classement des pages pour les moteurs de recherche
- Pour la reconnaissance de texte et d'objets.
Cela ressemble au couteau suisse des algorithmes de ML, n'est-ce pas ?
Conclure
Les humains et les ordinateurs peuvent travailler ensemble avec succès.
Les chercheurs nous assurent que ce partenariat peut, et donneront des résultats étonnants. Les algorithmes d'apprentissage automatique aident déjà l'humanité de plusieurs manières.
L'une des fonctions les plus importantes de l'apprentissage automatique et des algorithmes d'IA est de classer.
Voyons à nouveau les 10 meilleurs algorithmes d'apprentissage automatique :
- Régression linéaire - utilisée pour établir la relation entre 2 variables - une variable Régression logistique - un classificateur binomial, il n'y a que 2 résultats possibles pour chaque requête.
- Analyse discriminante linéaire - fonctionne mieux pour classer les données parmi les catégories connues.
- K-Nearest Neighbor – classe les données en catégories.
- Arbres de régression – utilisés pour la modélisation prédictive.
- Forêt aléatoire - utilisée avec de grands ensembles de données et lorsqu'une grande partie des données d'entrée est manquante.
- AdaBoost – classifications binaires.
- Naive Bayes – modélisation prédictive.
- Learning Vector Quantization – un algorithme de réseau de neurones artificiels.
- Support Vector Machines – cas extrêmes de classification dans un ensemble de données multidimensionnel.
Tous ces algorithmes (plus les nouveaux à venir) jetteront les bases d'une nouvelle ère de prospérité pour l'humanité. Il rendra possible (et même nécessaire) un revenu de base universel pour assurer la survie des personnes les moins capables. (Qui se révoltera autrement et gâchera notre société. Oh, eh bien.)
Eh bien, qui aurait pensé qu'un article sur les algorithmes d'apprentissage automatique serait aussi stupide. Eh bien, c'était tout pour aujourd'hui.
A bientôt, les gars !
FAQ
L'apprentissage automatique est génial et il met en lumière l'avenir de la technologie. Cela a un certain prix. Par exemple, les ordinateurs qui hébergent des programmes d'apprentissage automatique consomment des quantités insensées d'électricité et de ressources. Une autre lacune de l'apprentissage automatique jusqu'à présent a été la désambiguïsation occasionnelle des entités. Parfois, les machines ne peuvent pas faire la distinction entre, disons, le nom d'Anne Hathaway et la valeur des actions de Berkshire Hathaway. Chaque fois que l'actrice attire l'attention des médias, l'entreprise gagne de l'argent…
L'apprentissage automatique est une méthode de calcul. Alors que les algorithmes «traditionnels» ont besoin d'un programmeur pour les écrire, les algorithmes d'apprentissage automatique s'entraînent essentiellement eux-mêmes. Oui, sans blague !
Cela dépend de la tâche que vous devez effectuer. Le choix du meilleur algorithme pour la tâche à accomplir dépend de la taille, de la qualité et de la diversité de votre entrée, ainsi que du type de données de sortie que l'utilisateur demande.
Comme toute autre chose, le processus commence par la connaissance des bases de l'algorithme que vous avez choisi pour votre problème. Vous devrez consulter différentes sources d'apprentissage et choisir celle qui vous convient le mieux. Commencez ensuite par décomposer l'algorithme en petites unités. Commencez par un exemple simple, et lorsque vous maîtrisez les choses, vous validez avec une implémentation de confiance. Et puis vous terminez tout le processus. Cela semble probablement plus difficile qu'il ne l'est. Mais ça vaut vraiment le coup d'essayer !