Pourquoi sont-ils si importants en 2019?

En 2019, les ordinateurs peuvent non seulement voir, mais ils peuvent lis et écrire de leur propre chef.

Voyons maintenant l’histoire d’horreur moderne dans laquelle nous vivons.

Par exemple, comment réagiriez-vous si on vous disait que vous allez bientôt perdre votre emploi au profit d’un programme informatique? C’est scandaleux, non?

Et qu'est-ce que cela a à voir avec algorithmes d'apprentissage machine?

Heureusement, il y a une lumière au bout du tunnel. Laisse-moi te guider.

En 2019, les ordinateurs peuvent:

  • Reconnaître les voix, les visages et l'écriture manuscrite. (Style CSI…)
  • Légende des images automatiquement.
  • Apprenez à reconnaître le contenu d’une image et à le classer selon une caractéristique spécifique.
  • Faire 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 faisons des recherches sur le Web, visitons des sites Web et des médias sociaux. Et nous ne nous posons jamais la question fondamentale:

Jusqu'où va la technologie de l'IA?

Et c'est parti!

Les réalisations de la technologie soulèvent des questions sur l'avenir de l'humanité.

Peut-être que ces faits nous donneront un aperçu:

(La source: Futurisme, nouvelle génération d'applications, Dezyre)

  • En Corée du Sud, sur chaque 100 travailleurs, 4,78 en moyenne sont des robots.
  • En Ethiopie, 88% des employés risquent de perdre leur emploi au profit de robots.
  • À New York, les employés en danger sont 40,7%.
  • Cela peut prendre juste 9 lignes de code pour écrire un programme d'apprentissage automatique.
  • 97% des travaux de restauration rapide seront remplacés par des machines.
  • 98% des agriculteurs vont perdre leur emploi aux machines.
  • L'apprentissage automatique peut générer jusqu'à 1 milliard de dollars par an dans l'industrie pharmaceutique.
  • Au cours des dix prochaines années, l’apprentissage automatique devrait remplacer 25% des emplois.

En 2019, nous pouvons réellement posséder un robot à la maison.

Vous pouvez avoir une conversation fluide avec Jibo ou Tapia. Ils s'appellent 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 appellent le 911 vous. Ce dernier peut être particulièrement utile quand il n’ya personne d’autre. Mais nous y reviendrons plus tard.

De nos jours, les algorithmes peuvent «apprendre par eux-mêmes» des langues et même traduire l’anglais parlé en chinois simultanément, en même temps que le chinois moyen parlé couramment. Tôt ou tard, étudier 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 que vous mentionnez (verbalement!) 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 tout autour de nous. Si vous recherchez «café», les images associées qui apparaissent et sont classées comme café, avait été reconnu comme tel par une IA. En d’autres termes, ils ne sont pas annotés manuellement en tant que café par un humain…

L'algorithme s'était enseigné quoi c'est en regardant des millions d'images.

Chaire de poule!

Toutes ces capacités, et bien plus, sont déjà utilisées par les entreprises.

Les implications ici sont:

Premier, des ordinateurs déjà posséder le pouvoir de créer Algorithmes d'IA et s'enseigner comment faire… enfin presque n'importe quoi.

Se enseigner, les mecs! Pensez à tous les travailleurs de robots à l'avenir. Ils apprendront et effectueront des tâches beaucoup plus rapidement que les travailleurs humains.

Et seconde – Je sais ce que tu penses – 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 dominent les humains. L'intelligence artificielle est en plein essor, les robots vont gouverner le monde et se nourrir des humains. La singularité est proche.

OK, c’est un bon endroit pour s’arrêter.

Maintenant que nous en avons terminé avec notre système, voyons ce qui est factuellement vrai.

Dans le trou du lapin d'apprentissage automatique

Nous avons d’abord besoin de contexte.

Il y a 15 000 ans, l’un des jeux les plus appréciés au monde a été inventé. Quelque part entre le 12ème et 14ème siècle, ce jeu est devenu connu sous le nom échecs.

Il a 10 à la puissance de 40 résultats possibles (c’est 1 avec 40 zéros à la fin).

En 2017, Google AlphaZero algorithme utilisé apprentissage automatique apprendre à jouer ET gagner la partie.

L'ensemble du processus, depuis l'introduction du jeu dans l'algorithme jusqu'à sa première victoire contre Stockfish – l'un des moteurs d'échecs les plus puissants du monde – a pris:

(Préparez vous!)

4 heures.

Aie!

Oui, nous sommes au bord d'un révolution de l'apprentissage machine.

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 provoqué des bouleversements sociaux, mais l’humanité et les machines ont fini par atteindre un équilibre.

Oui, les choses changent et c'est en fait une bonne chose!

Les logiciels d’apprentissage automatique possèdent le pouvoir d’examiner un problème avec un œil neuf et de naviguer dans des environnements inconnus.

Comme nous allons le voir, ce n’est pas une histoire d’horreur après tout.

Plus comme un miracle technologique.

À présent:

Pourquoi la classification est-elle si importante?

Pour commencer, quel est apprentissage automatique par définition?

En gros, une machine est programmée pour apprendre à produire un programme et à créer des solutions. L'apprentissage automatique produit toujours les nombres les plus précis possibles (et, si nécessaire, les prévisions).

Pensez à une technologie capable de résoudre un large éventail de problèmes complètement différents.

Et c’est la beauté!

Le but principal du système est de classer. Ceci est aussi appelé vision par ordinateur. Il apprendra par lui-même à 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 la classification est absolument ahurissant.

Imaginez juste la possibilité de classer entre:

  • Une bonne et une mauvaise position d'échecs (jeu)
  • Une phrase grammaticalement correcte et incorrecte (traduction)
  • Une route vide et une avec des voitures ou des piétons (voitures autonomes)
  • Une cellule saine et une cellule cancéreuse (diagnostic médical)

C’est exactement pourquoi les experts de nombreux domaines vont devenir 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 apprendre à être un expert.

Et oui, il est important d’apprendre à les connaître et de les connaître… comme nous l’avons fait au début.

Nous sommes bien avec les ordinateurs maintenant. Si bien que nous avons tendance à les anthropomorphiser (ou peut-être est-ce juste moi?).

Il semble que le moment soit venu de se demander:

Qu'adviendra-t-il de toutes ces personnes, qui finiront par perdre leur emploi au profit de programmes d'intelligence artificielle et d'apprentissage automatique?

Avez-vous entendu parler d'une petite chose appelée revenu de base universel?

Ici ça va:

À l’avenir, les citoyens disposeront d’un revenu qui ne leur demandera aucun travail. L'argent proviendra de l'efficacité insensée de l'automatisation et des économies qui en découlent.

Soit ce scénario, soit un scénario légèrement plus réaliste, de nombreux types d’emplois vont émerger. À la fin du XIXe siècle, environ 50% de la population américaine était impliquée dans l'agriculture. Maintenant, grâce aux machines puissantes, moins de 2% sont des agriculteurs et pourtant des personnes sont employées.

À présent, à quoi peut servir l'apprentissage machine?

Applications réelles

L'apprentissage automatique peut être utilisé pour déduire de nouveaux faits à partir d'une base de données.

Voyons quelques de la les zones apprentissage automatique fera une grande différence:

  • Conduite assistée – Les voitures peuvent automatiquement appuyer sur le frein pour vous lorsque vous fermez le véhicule devant vous. Et ainsi, à un moment dans le futur, l’humanité va presque oublier ce que accident de voiture veux dire. Des voitures sans conducteur sont en route.
  • Soins de santé – améliore l'efficacité des professionnels de la santé. La reconnaissance des maladies et le diagnostic deviendront beaucoup plus faciles et plus précis grâce à l’apprentissage automatique. Par exemple, les programmes peuvent non seulement numériser et identifier les images de tissu cancéreux mieux que les humains, mais ils peuvent également calculer les taux de survie des patients sur la base de vastes bases de données de dossiers médicaux. (Découvrez le travail de Jeremy Howard et son projet appelé Enlitique. C'est incroyable!)
  • Invention pharmaceutique – à l'aide de l'apprentissage automatique, chaque patient peut recevoir un traitement spécialement conçu pour lui.
  • Agriculture – l'agriculture sera automatisée avec la vision par ordinateur et le contrôle robotique: qualité et prévision des cultures, détection des maladies, bien-être du bétail et production.
  • Capacités linguistiques basées sur l'IA – dans un avenir proche, nous pourrons communiquer verbalement avec une traduction en temps réel à l’aide d’écouteurs AI pour Poisson Babel.

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 la question suivante:

Qu'entend-on par algorithmes d'apprentissage automatique?

Ainsi, une fois que nous avons établi l’importance et les avantages de notre futur apprentissage automatique, examinons de plus près les algorithmes qui font que la magie opère.

Un excellent moyen d’expliquer les algorithmes d’apprentissage automatique est de: comparer les à la programmation traditionnelle.

Dans programmation traditionnelle, le programmeur travaille en équipe avec un expert du domaine pour lequel le logiciel est en cours de développement. Plus la tâche est complexe, plus le code est long et plus son écriture est difficile.

Algorithmes d'apprentissage machine travailler assez différemment. L’algorithme reçoit un jeu de données à saisir – et un optionnel un pour la sortie. Il analyse ensuite (ou eux) et détermine le processus à suivre pour obtenir un résultat utile. Aujourd'hui, c'est un travail réservé à un programmeur humain. À l'avenir, cela changera également.

Types d'apprentissage automatique

Il y a 4 différents types d'apprentissage machine algorithmes.

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 aurez besoin d’une grande quantité de données étiquetées. Et cela peut ne pas toujours être une tâche facile.

Les algorithmes supervisés se divisent en deux catégories – régression et 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. Ceux-ci incluent, entre autres, les prévisions météorologiques, la croissance démographique, les estimations de l'espérance de vie et les 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 leur nom l'indique, la classification des images.

2. Apprentissage non supervisé

L'apprentissage non supervisé 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.

Comme les données ne sont pas étiquetées, il n’existe aucun moyen d’évaluer l’exactitude des résultats. Cela dit, les algorithmes non supervisés ne sont pas conçus pour être précis. Les grappes créées par l'algorithme ne sont en aucun cas connues du programme. L’idée est donc de saisir des données, de les analyser et de les regrouper en grappes.

Tout comme les algorithmes supervisés, leurs cousins ​​non supervisés sont divisés en 2 catégories – réduction de la dimensionnalité et regroupement.

Les algorithmes de clustering eux-mêmes font évidemment partie de tout cela. Il est utile de regrouper les données en catégories afin de ne pas avoir à traiter chaque élément séparément. 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 structures, la visualisation de données volumineuses, la sélection de caractéristiques et la compression significative. Si le regroupement est un côté de la médaille, la réduction de dimensionnalité serait l'autre. En regroupant les données en grappes, les algorithmes réduisent inévitablement le nombre de variables significatives (dimensions) décrivant l'ensemble de données.

Maintenant, il existe une classe d'algorithmes d'apprentissage machine qui combine les 2 classes précédentes:

3. Apprentissage semi-supervisé

Il se situe entre supervisé avec données étiquetées, et algorithmes non supervisés avec données non étiqueté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 une base de données, vous avez un gagnant. Pourquoi?

Eh bien, c’est les algorithmes de renforcement qui ont déterminé les jeux de dames, d’échecs et de Go.

L'apprentissage par renforcement repose sur le principe de l'essai et de l'erreur. Le système recevra une sorte de récompense 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 le considère comme un mouvement réussi et son statut 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 capable de maîtriser le jeu d’échecs en 4 heures.

Maintenant nous savons!

Bien. Jetons un coup d’œil aux algorithmes eux-mêmes:

Top 10 des algorithmes d'apprentissage automatique

Avant de commencer, examinons l’un des concepts fondamentaux de l’apprentissage automatique. Régression, Quand cela vient à algorithmes de régression d'apprentissage, signifie que l'algorithme va essayer d'établir une relation entre deux variables.

Il existe de nombreux types de régression: régression linéaire, logistique, polynomiale, méthode des moindres carrés ordinaires, etc. Aujourd’hui, nous ne couvrirons que les 2 premiers types, sinon ce sera mieux publié sous forme de livre que d’article.

Comme nous le verrons dans un instant, la plupart des 10 principaux algorithmes sont des algorithmes d’apprentissage supervisés et sont mieux utilisés avec Python.

Voilà le Top 10 des algorithmes d'apprentissage automatique:

1. Régression linéaire

La régression linéaire est l’un des algorithmes d’apprentissage automatique les plus populaires. Cela 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'algorithme observe différentes caractéristiques pour arriver à 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’une des méthodes supervisées. algorithmes d'apprentissage machine ça marche bien en python. C'est un outil statistique puissant qui peut être utilisé pour prévoir le comportement des consommateurs, estimer les prévisions et évaluer les tendances. Une entreprise peut tirer profit d’une analyse linéaire et prévoir les ventes pour une période future.

Donc, si nous avons deux variables, l’une d’entre elles est explicatifet l'autre est le dépendant. La variable dépendante représente la valeur sur laquelle vous souhaitez effectuer une recherche ou une prédiction. La variable explicative est indépendante. La variable dépendante compte toujours sur l'explicatif.

Le but de l’apprentissage automatique linéaire est de voir s’il existe une relation significative entre les deux variables et, s’il en existe, de voir exactement ce qu’elle représente.

La régression linéaire est considérée comme un simple algorithme d’apprentissage automatique et est donc populaire parmi les scientifiques.

Maintenant, il existe une régression linéaire et une régression logistique. Voyons la différence:

2. Régression logistique

La régression logistique est l’un des algorithmes d'apprentissage machine de base. C'est un classificateur binomial qui a seulement 2 états, ou 2 valeurs – auxquelles vous pouvez assigner la signification de Oui et non, vrai et faux, sur et de, ou 1 et 0. Ce type d'algorithme classe les données d'entrée comme Catégorie ou hors catégorie. Les données d'entrée sont compressées puis analysées.

Contrairement à la régression linéaire, les algorithmes logistiques prédisent 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’incorporent dans l’espace futur.

La régression logistique est un supervisé algorithme d'apprentissage machine, 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 d'une recherche soient en termes de maladie / 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, une régression logistique ne peut avoir comme sortie que 1 et 0.

Il existe 3 types de régression logistique, basés sur la réponse catégorique. Ceux-ci sont:

  • Régression logistique binaire – il s'agit du type le plus fréquemment utilisé si le résultat est une variété de «oui» / «non».
  • Régression logistique multi-nominale – quand 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 la commande. 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 permet de rechercher des combinaisons linéaires d’entités, séparant différentes données d’entrée. Un algorithme LDA a pour but d’examiner une variable fiable en tant qu’union linéaire de caractéristiques. C'est un excellente technique de classement.

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 le 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. K-le plus proche Voisins

L’algorithme kNN est l’un des grands algorithmes d'apprentissage automatique pour débutants. Ils font des prédictions basées sur les anciennes données disponibles, afin classer les données en catégories basé sur différentes caractéristiques.

L’algorithme kNN est sur le liste d'algorithmes d'apprentissage machine supervisé, qui est principalement utilisé pour la classification. Il stocke les données disponibles et les utilise pour mesurer les similitudes dans les nouveaux cas.

le K kNN est un paramètre indiquant le nombre de voisins les plus proches qui seront inclus dans le «processus de vote à la majorité». Ainsi, les voisins de chaque élément «votent» pour déterminer sa classe.

La meilleure façon d'utiliser l'algorithme kNN consiste à utiliser un petit jeu de données exempt de bruit et à étiqueter toutes les données. L’algorithme n’est pas rapide et n’apprend pas à reconnaître des données impures. Lorsque le jeu de données est plus grand, l'utilisation de kNN n'est pas une bonne idée.

L'algorithme kNN fonctionne comme ceci: tout d'abord, le paramètre K est spécifié, après quoi l'algorithme crée une liste d'entrées, proche du nouvel échantillon de données. Ensuite, il trouve la classification la plus courante des entrées et, enfin, il donne une classification aux nouvelles entrées de données.

En termes d'applications réelles, les moteurs de recherche utilisent des algorithmes kNN 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: Arbres de régression, Forêt aléatoire, et AdaBoost.

Et c'est parti:

5. Arbres de régression (a.k.a. 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, les branches et les feuilles en bas.

Arbres de régression sont un type de supervisé algorithme d'apprentissage, qui – surprise, fonctionne bien en Python. (Au fait, la plupart des algorithmes ML font.)

Ces «arbres» sont aussi appelés arbres de décision et sont utilisés pour modélisation prédictive. Ils nécessitent relativement peu d'effort 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 les problèmes de classification. Comme son nom l'indique, ce type d'algorithme utilise un modèle de décision semblable à un 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égoriques.

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 routes 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 décisionnel crée une série de nœuds et de feuilles. La chose importante ici est que tous proviennent d'un seul nœud. (En revanche, forêt aléatoire les algorithmes produisent un certain nombre d’arbres, chacun avec son noeud 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 «développent» 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 en sortie biaisé.

L'algorithme décide où scinder et former une nouvelle branche à partir d'une décision, en fonction de plusieurs algorithmes. Les données sont divisées en régions de sous-notes, qui regroupent toutes les variables disponibles.

6. Forêt aléatoire

le forêt aléatoire algorithme est une autre forme de supervisé apprentissage automatique. 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 importante, 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 géniales de l’algorithme de forêt aléatoire est que cela peut fonctionner quand une grande partie des données est manquant. 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 forêt aléatoire 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 suffira de collecter des informations sur leurs achats antérieurs.

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 d'arborescence:

7. AdaBoost

AdaBoost est l'abréviation de Adaptive Boosting. L'algorithme a gagné le prix Gödel en 2003 pour ses créateurs.

Comme les deux précédents, celui-ci utilise également le système d'arbres. Au lieu de plusieurs nœuds et feuilles, les arbres d’AdaBoost ne produisent qu’un nœud et 2 feuilles, a.k.a. souche.

Les algorithmes AdaBoost diffèrent sensiblement de arbres de décision et forêts aléatoires.

Voyons voir:

UNE arbre de décision L'algorithme utilisera de nombreuses variables avant de générer une sortie. UNE souche ne peut utiliser qu'une variable pour prendre une décision.

Dans le cas de forêt aléatoire algorithmes, tous les arbres sont d'importance égale pour la décision finale. Les algorithmes AdaBoost donnent la priorité à certaines souches sur d’autres.

Et pour couronner le tout, forêt aléatoire les arbres sont plus chaotique, pour ainsi dire. Ce qui signifie que la séquence des arbres est sans 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 prochain. Donc, s'il y a une erreur en cours de route, chaque arbre suivant est affecté.

Bon, alors que peut faire cet algorithme dans la vie réelle?

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 soyez tombé sur le 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é… eh bien, il est évident que le moignon sera donné plus d'importance à.)

Nous sommes maintenant en dehors de la forêt, examinons donc 3 autres types d’algorithmes d’apprentissage automatique:

8. Naive Bayes

Naive Bayes est pratique lorsque vous avez un classification du texte problème. C'est l'algorithme d'apprentissage automatique utilisé lorsque l'on doit traiter des ensembles de données de grandes dimensions, tels que la filtration anti-spam ou la classification d'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 que les différentes caractéristiques des données d'entrée sont complètement indépendantes. Cela en fait un classifieur 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. Comme vous pouvez le penser, son théorème examine la probabilité conditionnelle d'événements.

Les probabilités sont calculées à deux niveaux. Tout d'abord, la probabilité de chaque classe. Et deuxièmement, la probabilité conditionnelle selon un facteur donné.

9. Apprentissage de la quantification vectorielle

L’apprentissage de l’algorithme de quantification vectorielle, ou LVQ, est l’un des plus algorithmes avancés d'apprentissage automatique.

À la différence du kNN, l’algorithme LVQ représente un algorithme de réseau neuronal. En d'autres termes, il s'agit de recréer la neurologie du cerveau humain.

L'algorithme LVQ utilise une collection de vecteurs de codebook 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 à vecteurs de support

Les SVM sont l’un des plus algorithmes d'apprentissage automatique populaires.

L’algorithme Support Vector Machines convient à cas extrêmes de classifications. Signification – lorsque la limite de décision des données d'entrée n'est pas claire. Le SVM sert de frontière qui sépare au mieux les classes d’entrée.

Les SVM peuvent être utilisés dans des jeux 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.

Dans la vie réelle, les SVM ont déjà été utilisés dans divers domaines:

  • Dans l'imagerie médicale et les tâches de classification médicale
  • Etudier la qualité de l'air dans les zones à forte densité de population
  • En analyse financière
  • Dans les algorithmes de classement de page pour les moteurs de recherche
  • Pour la reconnaissance de texte et d'objet.

Cela ressemble au couteau suisse des algorithmes ML, n'est-ce pas?

Emballer

Les humains et les ordinateurs peuvent fonctionner ensemble avec succès.

Les chercheurs nous assurent que ce partenariat pouvez, et volonté donner des résultats étonnants. Les algorithmes d’apprentissage automatique aident déjà l’humanité de différentes manières.

L’une des fonctions les plus importantes de l’apprentissage automatique et Algorithmes d'IA est de classer.

Voyons brièvement les 10 meilleurs algorithmes d’apprentissage automatique:

  • Régression linéaire – utilisé pour établir la relation entre 2 variables – un explicatif et un dépendant 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-voisin le plus proche – classe les données en catégories.
  • Arbres de régression – utilisé pour la modélisation prédictive.
  • Forêt aléatoire – utilisé 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.
  • Apprentissage de la quantification vectorielle – un algorithme de réseau neuronal artificiel.
  • Machines à vecteurs de support – cas extrêmes de classification dans un jeu de données multidimensionnel.

Tous ces algorithmes (plus les nouveaux à venir) jetteront les bases d'un nouvel âge de prospérité pour l'humanité. Cela rendra possible (et même nécessaire) une revenu de base universel assurer la survie des personnes moins capables. (Qui autrement se révoltera et gâchera notre société. Oh, eh bien.)

FAQ

Q: Quelles sont les limites de l'apprentissage machine

R: L'apprentissage automatique est génial et éclaire l'avenir de la technologie. Cela a un coût. Par exemple, les ordinateurs hébergeant des programmes d'apprentissage machine consomment une quantité insensée d'électricité et de ressources. Une autre lacune de l’apprentissage automatique a été jusqu’à présent occasionnellement. la désambiguïsation des entités. Parfois, les machines ne peuvent pas distinguer entre, disons, le nom d’Anne Hathaway et la valeur boursière de Berkshire Hathaway. Chaque fois que l'actrice retient l'attention des médias, la société gagne de l'argent…

Q: Qu'est-ce qu'un algorithme d'apprentissage machine??

A: L'apprentissage automatique est une méthode de calcul. Alors que les algorithmes «traditionnels» ont besoin d’un programmeur pour les écrire, ceux d’apprentissage automatique se forment eux-mêmes. Oui, sans blague!

Q: Quel est le meilleur algorithme d'apprentissage machine?

R: Cela dépend de la tâche que vous devez effectuer. Le choix du meilleur algorithme pour la tâche à effectuer 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 demandées par l'utilisateur.

Q: Comment écrivez-vous algorithme d'apprentissage automatique?

R: Comme pour toute 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 diviser l’algorithme en petites unités. Commencez par un exemple simple, et lorsque vous maîtrisez la situation, 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 la peine d’essayer!

Eh bien, qui aurait pensé un article sur algorithmes d'apprentissage machine serait un tel doozy. Eh bien, c'était tout pour aujourd'hui.

A bientôt, les gars!

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.