7 algorithmes d’apprentissage automatique à savoir expliqués en 10 minutes

 7 algorithmes d’apprentissage automatique à savoir expliqués en 10 minutes


algos ML
Image de l’auteur | Idéogramme

# Introduction

De votre filtre de spam par e-mail aux recommandations musicales, les algorithmes d’apprentissage automatique alimentent tout. Mais ils n’ont pas besoin d’être des boîtes noires soi-disant complexes. Chaque algorithme est essentiellement une approche différente pour trouver des modèles dans les données et faire des prédictions.

Dans cet article, nous apprendrons les algorithmes essentiels d’apprentissage automatique que chaque professionnel de données doit comprendre. Pour chaque algorithme, je vais expliquer ce qu’il fait et comment il fonctionne en langage clair, suivi de quand vous devriez l’utiliser et quand vous ne devriez pas. Commençons!

# 1. Régression linéaire

Ce que c’est: La régression linéaire est un algorithme d’apprentissage automatique simple et efficace. Il trouve la meilleure ligne droite à travers vos points de données pour prédire les valeurs continues.

Comment ça marche: Imaginez que vous essayez de prédire les prix des maisons en fonction de la superficie en pieds carrés. La régression linéaire essaie de trouver la meilleure ligne d’ajustement qui minimise la distance entre tous vos points de données et la ligne. L’algorithme utilise l’optimisation mathématique pour trouver la pente et l’interception qui correspondent le mieux à vos données.

Où l’utiliser:

  • Prédire les ventes en fonction des dépenses publicitaires
  • Estimation des cours des actions
  • Prévision de la demande
  • Tout problème où vous vous attendez à une relation grossièrement linéaire

Quand il est utile: Lorsque vos données ont une tendance linéaire claire et que vous avez besoin de résultats interprétables. C’est également génial lorsque vous avez des données limitées ou avez besoin d’informations rapides.

Quand ce n’est pas le cas: Si vos données ont des modèles complexes et non linéaires ou ont des valeurs aberrantes et des caractéristiques dépendantes, la régression linéaire ne sera pas le meilleur modèle.

# 2. Régression logistique

Ce que c’est: La régression logistique est également simple et est souvent utilisée dans les problèmes de classification. Il prédit des probabilités, des valeurs dans la plage (0,1).

Comment ça marche: Au lieu de tracer une ligne droite, la régression logistique utilise une courbe en forme de S (fonction Sigmoïde) pour cartographier toute entrée à une valeur entre 0 et 1. Cela crée un score de probabilité que vous pouvez utiliser pour la classification binaire (oui / non, spam / non spam).

Où l’utiliser:

  • Détection de spam par e-mail
  • Diagnostic médical (maladie / aucune maladie)
  • Marketing (les clients achèteront / ne pas acheter)
  • Systèmes d’approbation du crédit

Quand il est utile: Lorsque vous avez besoin d’estimations de probabilité avec vos prévisions, avez des données linéairement séparables ou avez besoin d’un classificateur rapide et interprétable.

Quand ce n’est pas le cas: Pour des relations complexes et non linéaires ou lorsque vous avez plusieurs classes qui ne sont pas facilement séparables.

# 3. Arbres de décision

Ce que c’est: Les arbres de décision fonctionnent exactement comme la prise de décision humaine. Ils posent une série de questions oui / non pour parvenir à une conclusion. Considérez-le comme un organigramme qui fait des prédictions.

Comment ça marche: L’algorithme commence par l’intégralité de votre ensemble de données et trouve la meilleure question pour le diviser en groupes plus homogènes. Il répète ce processus, créant des branches jusqu’à ce qu’elle atteigne des groupes purs (ou s’arrête en fonction des critères prédéfinis). Par conséquent, les chemins des racines aux feuilles sont des règles de décision.

Où l’utiliser:

  • Systèmes de diagnostic médical
  • Notation du crédit
  • Sélection de fonctionnalités
  • Tout domaine où vous avez besoin de décisions naturellement explicables

Quand il est utile: Lorsque vous avez besoin de résultats hautement interprétables, avez des types de données mixtes (numériques et catégoriques) ou que vous souhaitez comprendre les fonctionnalités qui comptent le plus.

Quand ce n’est pas le cas: Ils sont souvent sujets à un sur-ajustement, instables (les petits changements de données peuvent créer des arbres très différents).

# 4. Forest aléatoire

Ce que c’est: Si un arbre de décision est bon, de nombreux arbres sont meilleurs. Random Forest combine plusieurs arbres de décision pour faire des prédictions plus robustes.

Comment ça marche: Il crée plusieurs arbres de décision. Chacun des arbres de décision est formé sur un sous-ensemble aléatoire des données à l’aide d’un sous-ensemble aléatoire de fonctionnalités. Pour les prédictions, il faut un vote de tous les arbres et utilise la majorité des victoires pour la classification. Comme vous pouvez déjà le deviner, il utilise la moyenne des problèmes de régression.

Où l’utiliser:

  • Problèmes de classification comme la détection d’intrusion du réseau
  • Recommandations de commerce électronique
  • Toute tâche de prédiction complexe

Quand il est utile: Lorsque vous voulez une précision élevée sans trop de réglage, vous devez gérer les valeurs manquantes ou souhaiter un classement d’importance des fonctionnalités.

Quand ce n’est pas le cas: Lorsque vous avez besoin de prédictions très rapides, avez une mémoire limitée ou nécessitez des résultats hautement interprétables.

# 5. Prise en charge des machines vectorielles

Ce que c’est: Support Vector Machines (SVM) trouve la frontière optimale entre les différentes classes en maximisant la marge. La marge est la distance entre la limite et les points de données les plus proches de chaque classe.

Comment ça marche: Considérez-le comme trouver la meilleure clôture entre deux quartiers. SVM ne trouve aucune clôture; Il trouve celui qui est autant que possible des deux quartiers. Pour les données complexes, il utilise des « astuces de noyau » pour fonctionner dans des dimensions plus élevées où la séparation linéaire devient possible.

Où l’utiliser:

  • Classification multiclasse
  • Sur des ensembles de données petits à moyens avec des limites claires

Quand il est utile: Lorsque vous avez des marges claires entre les classes, des données limitées ou des données de grande dimension (comme le texte). Il est également efficace et polyvalent avec différentes fonctions de noyau.

Quand ce n’est pas le cas: Avec de très grands ensembles de données (formation lente), des données bruyantes avec des classes qui se chevauchent ou lorsque vous avez besoin d’estimations de probabilité.

# 6. K-means clustering

Ce que c’est: K-Means est un algorithme non supervisé qui regroupe des données similaires pointues ensemble sans connaître la « bonne » réponse au préalable. C’est comme organiser une pièce en désordre en rassemblant des objets similaires.

Comment ça marche: Vous spécifiez le nombre de clusters (k), et l’algorithme place k Centroïdes au hasard dans votre espace de données. Il attribue ensuite chaque point de données au centroïde le plus proche et déplace les centroïdes au centre de leurs points attribués. Ce processus se répète jusqu’à ce que les centroïdes cessent de bouger.

Où l’utiliser:

  • Segmentation du client
  • Quantification d’image
  • Compression de données

Quand il est utile: Lorsque vous devez découvrir des modèles cachés, segmenter les clients ou réduire la complexité des données. Il est simple, rapide et fonctionne bien avec les grappes globulaires.

Quand ce n’est pas le cas: Lorsque les clusters ont des tailles, des densités ou des formes non sphériques différentes. Il n’est pas non plus robuste pour les valeurs aberrantes et vous oblige à spécifier K au préalable.

# 7. Bayes naïf

Ce que c’est: Naive Bayes est un classificateur probabiliste basé sur le théorème de Bayes. Il s’appelle « naïf » car il suppose que toutes les caractéristiques sont indépendantes les unes des autres, ce qui est rarement vrai dans la vie réelle mais fonctionne étonnamment bien dans la pratique.

Comment ça marche: L’algorithme calcule la probabilité de chaque classe compte tenu des fonctionnalités d’entrée en utilisant le théorème de Bayes. Il combine la probabilité antérieure (à quel point chaque classe est courante) avec la probabilité (dans quelle mesure chaque fonctionnalité est probable pour chaque classe) pour faire des prédictions. Malgré sa simplicité, il est remarquablement efficace.

Où l’utiliser:

  • Filtrage de spam e-mail
  • Classification de texte
  • Analyse des sentiments
  • Systèmes de recommandation

Quand il est utile: Lorsque vous avez des données de formation limitées, avez besoin de prédictions rapides, travaillez avec des données de texte ou que vous souhaitez un modèle de base simple.

Quand ce n’est pas le cas: Lorsque l’hypothèse d’indépendance des caractéristiques est gravement violée, vous avez des caractéristiques numériques continues (bien que les Bayes naïfs gaussiens puissent vous aider), ou nécessitez les prédictions les plus précises possibles.

# Conclusion

Les algorithmes dont nous avons discuté dans cet article forment le fondement de l’apprentissage automatique, notamment: régression linéaire pour les prédictions continues; régression logistique pour la classification binaire; Arbres de décision pour les décisions interprétables; forêts aléatoires pour une précision robuste; SVMS pour une classification simple mais efficace; k-means pour le regroupement de données; et des Bayes naïfs pour la classification probabiliste.

Commencez par des algorithmes plus simples pour comprendre vos données, puis utilisez des méthodes plus complexes en cas de besoin. Le meilleur algorithme est souvent le plus simple qui résout efficacement votre problème. Comprendre quand utiliser chaque modèle est plus important que la mémorisation des détails techniques.

Bala Priya C est développeur et écrivain technique d’Inde. Elle aime travailler à l’intersection des mathématiques, de la programmation, de la science des données et de la création de contenu. Ses domaines d’intérêt et d’expertise incluent DevOps, la science des données et le traitement du langage naturel. Elle aime lire, écrire, coder et café! Actuellement, elle travaille sur l’apprentissage et le partage de ses connaissances avec la communauté des développeurs en créant des tutoriels, des guides pratiques, des pièces d’opinion, etc. Bala crée également des aperçus de ressources engageants et des tutoriels de codage.





Source link

Related post