Table des matières[Cacher][Montrer]
Le monde évolue rapidement grâce à l'intelligence artificielle et à l'apprentissage automatique, qui a un impact sur tous les aspects de notre vie quotidienne.
Des assistants vocaux qui utilisent la PNL et l'apprentissage automatique pour prendre des rendez-vous, rechercher des événements sur notre calendrier et écouter de la musique sur des appareils si précis qu'ils peuvent anticiper nos besoins avant même que nous les considérions.
Les ordinateurs peuvent jouer aux échecs, faire de la chirurgie et devenir des machines plus intelligentes et plus humaines à l'aide d'algorithmes d'apprentissage automatique.
Nous sommes à une époque de progrès technologiques continus, et en voyant comment les ordinateurs se sont développés au fil du temps, nous pouvons faire des prédictions sur ce qui se passera dans le futur.
La démocratisation des outils et des méthodes informatiques est l'un des aspects clés de cette révolution qui se démarque. Data scientists ont créé de puissants ordinateurs de traitement de données au cours des cinq dernières années en mettant en œuvre sans effort des méthodologies de pointe. Les résultats sont étonnants.
Dans cet article, nous allons examiner de près machine learning algorithmes et toutes leurs variantes.
Alors, que sont les algorithmes de Machine Learning ?
L'approche utilisée par le système d'IA pour mener à bien sa tâche - généralement, prédire les valeurs de sortie à partir de données d'entrée données - est connue sous le nom d'algorithme d'apprentissage automatique.
Un algorithme d'apprentissage automatique est un processus qui utilise des données et est utilisé pour créer des modèles d'apprentissage automatique prêts pour la production. Si l'apprentissage automatique est le train qui exécute un travail, alors les algorithmes d'apprentissage automatique sont les locomotives qui font avancer le travail.
La meilleure approche d'apprentissage automatique à utiliser sera déterminée par le problème commercial que vous essayez de résoudre, le type d'ensemble de données que vous utilisez et les ressources dont vous disposez.
Les algorithmes d'apprentissage automatique sont ceux qui transforment un ensemble de données en un modèle. Selon le type de problème auquel vous essayez de répondre, la puissance de traitement disponible et le type de données dont vous disposez, les algorithmes d'apprentissage supervisés, non supervisés ou par renforcement peuvent bien fonctionner.
Nous avons donc parlé d'apprentissage supervisé, non supervisé et par renforcement, mais de quoi s'agit-il ? Explorons-les.
Apprentissage supervisé, non supervisé et par renforcement
Apprentissage supervisé
Dans l'apprentissage supervisé, le modèle d'IA est développé en fonction de l'entrée qui a été fournie et de l'étiquette qui représente le résultat prédit. Sur la base des entrées et des sorties, le modèle développe une équation de mappage et, à l'aide de cette équation de mappage, il prévoit l'étiquette des entrées dans le futur.
Disons que nous devons créer un modèle capable de faire la distinction entre un chien et un chat. Plusieurs photos de chats et de chiens sont introduites dans le modèle avec des étiquettes indiquant s'il s'agit de chats ou de chiens afin de former le modèle.
Le modèle cherche à établir une équation reliant les étiquettes sur les photographies d'entrée à ces images. Même si le modèle n'a jamais vu l'image auparavant, après l'entraînement, il peut identifier s'il s'agit d'un chat ou d'un chien.
Apprentissage non supervisé
L'apprentissage non supervisé implique la formation d'un modèle d'IA uniquement sur les entrées sans les étiqueter. Le modèle divise les données d'entrée en groupes avec des caractéristiques connexes.
L'étiquette future de l'entrée est ensuite prévue en fonction de la proximité de ses attributs avec l'une des classifications. Considérez la situation où nous devons diviser un groupe de boules rouges et bleues en deux catégories.
Supposons que les autres caractéristiques des balles soient identiques, à l'exception de la couleur. Sur la base de la façon dont il peut diviser les boules en deux classes, le modèle recherche les caractéristiques qui sont différentes entre les boules.
Deux grappes de boules, une bleue et une rouge, sont produites lorsque les boules sont divisées en deux groupes en fonction de leur teinte.
Apprentissage par renforcement
Dans l'apprentissage par renforcement, le modèle d'IA cherche à maximiser le profit global en agissant du mieux qu'il peut dans une circonstance particulière. Les commentaires sur ses résultats antérieurs aident le modèle à apprendre.
Pensez au scénario où un robot est chargé de sélectionner un itinéraire entre les points A et B. Le robot choisit d'abord l'un des parcours car il n'a aucune expérience préalable.
Le robot reçoit des informations sur l'itinéraire qu'il emprunte et en acquiert des connaissances. Le robot peut utiliser une entrée pour résoudre le problème la prochaine fois qu'il rencontre une circonstance similaire.
Par exemple, si le robot choisit l'option B et reçoit une récompense, telle qu'un retour positif, il comprend cette fois qu'il doit sélectionner la voie B pour augmenter sa récompense.
Enfin, ce que vous attendez tous, ce sont les algorithmes.
Principaux algorithmes d'apprentissage automatique
1. Régression linéaire
L'approche d'apprentissage automatique la plus simple qui s'écarte de l'apprentissage supervisé est la régression linéaire. Avec les connaissances des variables indépendantes, il est principalement utilisé pour résoudre les problèmes de régression et créer des prédictions sur des variables dépendantes continues.
Trouver la ligne de meilleur ajustement, qui peut aider à prédire le résultat pour les variables dépendantes continues, est l'objectif de la régression linéaire. Les prix des maisons, l'âge et les salaires sont quelques exemples de valeurs continues.
Un modèle connu sous le nom de régression linéaire simple utilise une ligne droite pour calculer l'association entre une variable indépendante et une variable dépendante. Il y a plus de deux variables indépendantes dans la régression linéaire multiple.
Un modèle de régression linéaire repose sur quatre hypothèses sous-jacentes :
- Linéarité : Il existe une connexion linéaire entre X et la moyenne de Y.
- Homoscédasticité : pour chaque valeur de X, la variance résiduelle est la même.
- Indépendance : Les observations sont indépendantes les unes des autres en termes d'indépendance.
- Normalité : Lorsque X est fixe, Y est normalement distribué.
La régression linéaire fonctionne admirablement pour les données qui peuvent être séparées le long de lignes. Il peut contrôler le surajustement en utilisant des techniques de régularisation, de validation croisée et de réduction de la dimensionnalité. Cependant, il existe des cas où une ingénierie approfondie des fonctionnalités est requise, ce qui peut parfois entraîner un surajustement et du bruit.
2. Régression logistique
La régression logistique est une autre technique d'apprentissage automatique qui s'écarte de l'apprentissage supervisé. Son utilisation principale est la classification, alors qu'il peut également être utilisé pour des problèmes de régression.
La régression logistique est utilisée pour prévoir la variable dépendante catégorielle à l'aide des informations provenant des facteurs indépendants. Le but est de classer les sorties, qui ne peuvent être comprises qu'entre 0 et 1.
Le total pondéré des entrées est traité par la fonction sigmoïde, une fonction d'activation qui convertit les valeurs entre 0 et 1.
La base de la régression logistique est l' estimation du maximum de vraisemblance , une méthode de calcul des paramètres d'une distribution de probabilité supposée compte tenu de données observées spécifiques.
3. Arbre de décision
Une autre méthode d'apprentissage automatique qui se sépare de l'apprentissage supervisé est l'arbre de décision. Pour les problèmes de classification et de régression, l'approche de l'arbre de décision peut être utilisée.
Cet outil d'aide à la décision, qui ressemble à un arbre, utilise des représentations visuelles pour montrer les résultats prospectifs, les coûts et les répercussions des actions. En divisant les données en parties séparées, l'idée est analogue à l'esprit humain.
Les données ont été divisées en parties distinctes autant que nous pouvions les granuler. L'objectif principal d'un arbre de décision est de construire un modèle de formation qui peut être utilisé pour prévoir la classe de la variable cible. Les valeurs manquantes peuvent être gérées automatiquement à l'aide de l'arbre de décision.
Il n'y a aucune exigence d'encodage unique, de variables fictives ou d'autres étapes de prétraitement des données. Il est rigide dans le sens où il est difficile d'y ajouter de nouvelles données. Si vous avez des données étiquetées supplémentaires, vous devez recycler l'arborescence sur l'ensemble de données.
Par conséquent, les arbres de décision sont un mauvais choix pour toute application nécessitant un changement de modèle dynamique.
En fonction du type de variable cible, les arbres de décision sont classés en deux types :
- Variable catégorielle : un arbre de décision dans lequel la variable d'objectif est catégorielle.
- Variable continue : un arbre de décision dans lequel la variable d'objectif est continue.
4. Forêt aléatoire
La méthode Random Forest est la prochaine technique d'apprentissage automatique et est un algorithme d'apprentissage automatique supervisé largement utilisé dans les problèmes de classification et de régression. Il s'agit également d'une méthode basée sur un arbre, similaire à un arbre de décision.
Une forêt d'arbres, ou de nombreux arbres de décision, est utilisée par la méthode de la forêt aléatoire pour porter des jugements. Lors de la gestion des tâches de classification, la méthode de la forêt aléatoire utilisait des variables catégorielles tout en gérant les tâches de régression avec des ensembles de données contenant des variables continues.
Un ensemble, ou un mélange de plusieurs modèles, est ce que fait la méthode de la forêt aléatoire, ce qui signifie que les prédictions sont faites à l'aide d'un groupe de modèles plutôt qu'un seul.
La possibilité d'être utilisée à la fois pour les problèmes de classification et de régression, qui constituent la majorité des systèmes d'apprentissage automatique modernes, est un avantage clé de la forêt aléatoire.
Deux stratégies différentes sont utilisées par Ensemble :
- Mise en sac : ce faisant, davantage de données sont produites pour l'ensemble de données d'apprentissage. Pour atténuer la variation des prévisions, cela est fait.
- Le boosting est le processus consistant à combiner des apprenants faibles avec des apprenants forts en construisant des modèles successifs, aboutissant au modèle final avec une précision maximale.
5. Naïf Bayes
Un problème de classification binaire (deux classes) et multiclasses peut être résolu en utilisant la technique Naive Bayes. Lorsque la méthode est expliquée à l'aide de valeurs d'entrée binaires ou de catégorie, elle est plus simple à saisir. Une hypothèse faite par un classificateur Naive Bayes est que l'existence d'une caractéristique dans une classe n'a aucune incidence sur la présence d'autres caractéristiques.
La formule ci-dessus indique :
- P(H) : La probabilité que l'hypothèse H soit correcte. La probabilité a priori est appelée this.
- P(E) : La vraisemblance de la preuve
- P(E|H) : la probabilité que l'hypothèse soit étayée par des preuves.
- P(H|E) : la probabilité que l'hypothèse soit vraie, compte tenu des preuves.
Un classificateur Naive Bayes prendrait en compte chacune de ces caractéristiques individuellement lors de la détermination de la probabilité d'un certain résultat, même si ces attributs sont liés les uns aux autres. Un modèle bayésien naïf est simple à construire et efficace pour les grands ensembles de données.
Il est connu pour être plus performant que les techniques de catégorisation les plus complexes tout en étant basique. Il s'agit d'un ensemble d'algorithmes basés sur le théorème de Bayes, plutôt que sur une seule méthode.
6. K-Voisins les plus proches
La technique des K plus proches voisins (kNN) est un sous-ensemble d'apprentissage automatique supervisé qui peut être utilisé pour résoudre les problèmes de classification et de régression. L'algorithme KNN suppose que des objets comparables peuvent être trouvés à proximité.
Je m'en souviens comme d'un rassemblement d'individus partageant les mêmes idées. kNN tire parti de l'idée de ressemblance entre d'autres points de données en utilisant la proximité, la proximité ou la distance. Afin d'étiqueter les données invisibles sur la base des points de données observables étiquetés les plus proches, une méthode mathématique est utilisée pour déterminer la séparation entre les points sur un graphique.
Vous devez déterminer la distance entre les points de données afin d'identifier les points comparables les plus proches. Des mesures de distance telles que la distance euclidienne, la distance de Hamming, la distance de Manhattan et la distance de Minkowski peuvent être utilisées à cette fin. Le K est connu comme le nombre le plus proche voisin, et c'est souvent un nombre impair.
KNN peut être appliqué aux problèmes de classification et de régression. La prédiction faite lorsque KNN est utilisé pour les problèmes de régression est basée sur la moyenne ou la médiane des K occurrences les plus similaires.
Le résultat d'un algorithme de classification basé sur KNN peut être déterminé comme la classe avec la fréquence la plus élevée parmi les K occurrences les plus similaires. Chaque instance vote essentiellement pour sa classe, et la prédiction appartient à la classe qui reçoit le plus de votes.
7. K-signifie
Il s'agit d'une technique d'apprentissage non supervisé qui résout les problèmes de clustering. Les ensembles de données sont divisés en un certain nombre de clusters - appelons-le K - de telle sorte que les points de données de chaque cluster soient homogènes et distincts de ceux des autres clusters.
Méthodologie de clustering K-means :
- Pour chaque cluster, l'algorithme K-means sélectionne k centroïdes, ou points.
- Avec les centroïdes les plus proches ou les clusters K, chaque point de données forme un cluster.
- Désormais, de nouveaux centroïdes sont produits en fonction des membres du cluster déjà présents.
- La distance la plus proche pour chaque point de données est calculée à l'aide de ces centroïdes mis à jour. Jusqu'à ce que les centroïdes ne changent pas, ce processus est répété.
C'est plus rapide, plus fiable et plus simple à comprendre. En cas de problème, l'adaptabilité de k-means simplifie les ajustements. Lorsque les jeux de données sont distincts ou bien isolés les uns des autres, les résultats sont meilleurs. Il ne peut pas gérer les données erratiques ou les valeurs aberrantes.
8. Soutenir les machines vectorielles
Lorsque vous utilisez la technique SVM pour classer les données, les données brutes sont affichées sous forme de points dans un espace à n dimensions (où n est le nombre d'entités dont vous disposez). Les données peuvent ensuite être facilement classées car la valeur de chaque entité est alors reliée à une coordonnée spécifique.
Pour séparer les données et les placer sur un graphique, utilisez des lignes appelées classificateurs. Cette approche trace chaque point de données comme un point dans un espace à n dimensions, où n est le nombre d'entités dont vous disposez et la valeur de chaque entité est une valeur de coordonnée spécifique.
Nous allons maintenant localiser une ligne qui divise les données en deux ensembles de données qui ont été catégorisées différemment. Les distances des points les plus proches dans chacun des deux groupes seront les plus éloignées le long de cette ligne.
Étant donné que les deux points les plus proches sont ceux qui sont les plus éloignés de la ligne dans l'exemple ci-dessus, la ligne qui divise les données en deux groupes qui ont été catégorisés différemment est la ligne médiane. Notre classificateur est cette ligne.
9. Réduction de la dimensionnalité
En utilisant l'approche de la réduction de la dimensionnalité, les données de formation peuvent avoir moins de variables d'entrée. En termes simples, cela fait référence au processus de réduction de la taille de votre ensemble de fonctionnalités. Imaginons que votre ensemble de données comporte 100 colonnes ; la réduction de la dimensionnalité réduira ce montant à 20 colonnes.
Le modèle devient automatiquement plus sophistiqué et présente un risque accru de surajustement à mesure que le nombre de fonctionnalités augmente. Le plus gros problème lié à l'utilisation de données dans des dimensions plus importantes est ce que l'on appelle la « malédiction de la dimensionnalité », qui se produit lorsque vos données contiennent un nombre excessif de caractéristiques.
Les éléments suivants peuvent être utilisés pour accomplir la réduction de dimensionnalité :
- Pour trouver et choisir des caractéristiques pertinentes, la sélection de caractéristiques est utilisée.
- En utilisant des fonctionnalités déjà existantes, l'ingénierie des fonctionnalités crée manuellement de nouvelles fonctionnalités.
Conclusion
L'apprentissage automatique non supervisé ou supervisé est possible. Choisissez l'apprentissage supervisé si vos données sont moins abondantes et bien étiquetées pour la formation.
De grands ensembles de données seraient souvent performants et produiraient de meilleurs résultats en utilisant un apprentissage non supervisé. L'apprentissage en profondeur Les méthodes sont meilleures si vous disposez d'une importante collection de données facilement accessible.
Apprentissage par renforcement et l'apprentissage par renforcement profond sont des sujets que vous avez étudiés. Les caractéristiques, les usages et les contraintes des réseaux de neurones vous sont désormais clairs. Enfin, vous avez considéré les options pour différents langages de programmation, IDE et plates-formes lorsqu'il s'agissait de créer votre propre modèles d'apprentissage automatique.
La prochaine chose que vous devez faire est de commencer à étudier et à utiliser chaque machine learning approcher. Même si le sujet est vaste, n'importe quel sujet peut être compris en quelques heures si vous vous concentrez sur sa profondeur. Chaque sujet est isolé des autres.
Vous devez penser à un problème à la fois, l'étudier, le mettre en pratique et utiliser un langage de votre choix pour y implémenter le ou les algorithmes.
Soyez sympa! Laissez un commentaire