Par Yogita Kinha, consultante et blogueuse commentaires .
A lire aussi : Quels sont les bijoux piercing les plus populaires du moment ?
Eh bien, il n’y a pas de réponse directe et sûre à cette question. La réponse dépend de nombreux facteurs tels que l’énoncé du problème et le type de sortie souhaité, le type et la taille des données, le temps de calcul disponible, le nombre d’entités et les observations dans les données, pour n’en nommer que quelques-uns.
Lire également : Les must-have des accessoires pour un look urbain tendance
Voici quelques considérations importantes à prendre en compte lors du choix d’un algorithme.
Plan de l'article
1. Taille des données d’entraînement
Il est généralement recommandé de recueillir une bonne quantité de données pour obtenir des prévisions fiables. Cependant, la disponibilité des données est souvent une contrainte. Ainsi, si les données d’apprentissage sont plus petites ou si le jeu de données comporte moins d’observations et un plus grand nombre d’entités telles que la génétique ou les données textuelles, choisissez des algorithmes avec un biais élevé/une variance faible comme la régression linéaire, la Bayes naïve ou la SVM linéaire.
Si les données d’entraînement sont suffisamment importantes et que le nombre de les observations sont plus élevées que le nombre d’entités, on peut opter pour des algorithmes à faible biais ou à variance élevée comme KNN, les arbres de décision ou la SVM du noyau.
2. Précision et/ou interprétabilité de la sortie
La précision d’un modèle signifie que la fonction prédit une valeur de réponse pour une observation donnée, qui est proche de la valeur de réponse réelle pour cette observation. Un algorithme hautement interprétable (modèles restrictifs comme la régression linéaire) permet de comprendre facilement comment un prédicteur individuel est associé à la réponse, tandis que les modèles flexibles offrent une plus grande précision au prix d’une faible interprétabilité.
Une représentation du compromis entre la précision et l’interprétabilité, à l’aide de différentes méthodes d’apprentissage statistique. (source)
Certains algorithmes sont appelés restrictifs car ils produisent une petite plage de formes de la fonction de mappage. Par exemple, la régression linéaire est une approche restrictive car il ne peut générer que des fonctions linéaires telles que les lignes.
Certains algorithmes sont appelés flexibles car ils peuvent générer une gamme plus large de formes possibles de la fonction de mappage. Par exemple, KNN avec k=1 est très flexible car il prendra en compte chaque point de données en entrée pour générer la fonction de sortie de mappage. L’image ci-dessous montre le compromis entre les algorithmes flexibles et restrictifs.
Une représentation du compromis entre la flexibilité et l’interprétabilité, à l’aide de différentes méthodes d’apprentissage statistique. (source)
Maintenant, utiliser quel algorithme dépend de l’objectif du problème commercial. Si l’objectif est l’inférence, les modèles restrictifs sont meilleurs car ils sont beaucoup plus interprétables. Les modèles flexibles sont meilleurs si l’objectif est d’améliorer la précision. En général, à mesure que la flexibilité d’une méthode augmente, son interprétabilité diminue.
3. Vitesse ou temps d’entraînement
Une précision plus élevée signifie généralement une plus grande temps d’entraînement. De plus, les algorithmes nécessitent plus de temps pour s’entraîner sur des données d’entraînement volumineuses. Dans les applications du monde réel, le choix de l’algorithme dépend principalement de ces deux facteurs.
Des algorithmes tels que Naïve Bayes et la régression linéaire et logistique sont faciles à mettre en œuvre et rapides à exécuter. Les algorithmes tels que la SVM, qui impliquent le réglage des paramètres, les réseaux neuronaux avec un temps de convergence élevé et les forêts aléatoires, nécessitent beaucoup de temps pour entraîner les données.
4. Linéarité
De nombreux algorithmes partent de l’hypothèse que les classes peuvent être séparées par une ligne droite (ou son analogue de dimension supérieure). Les exemples incluent la régression logistique et les machines à vecteurs de support. Les algorithmes de régression linéaire supposent que les tendances des données suivent une ligne droite. Si les données sont linéaires, ces algorithmes fonctionnent très bien.
Cependant, les données ne sont pas toujours linéaires. Nous avons donc besoin d’autres algorithmes capables de gérer des structures de données complexes et de grande dimension. Les exemples incluent la SVM du noyau, forêt aléatoire, réseaux de neurones.
La meilleure façon de connaître la linéarité est d’ajuster une ligne linéaire ou d’exécuter une régression logistique ou une SVM et de vérifier les erreurs résiduelles. Une erreur plus élevée signifie que les données ne sont pas linéaires et nécessitent des algorithmes complexes pour être ajustées.
5. Nombre de fonctionnalités
Le jeu de données peut comporter un grand nombre d’entités qui peuvent ne pas toutes être pertinentes et significatives. Pour un certain type de données, telles que la génétique ou le texte, le nombre de caractéristiques peut être très élevé par rapport au nombre de points de données.
Un grand nombre de fonctionnalités peuvent ralentir certains algorithmes d’apprentissage, rendant le temps d’entraînement trop long. La SVM convient mieux aux données avec un espace d’entités important et des observations moindres. Les techniques d’ACP et de sélection des caractéristiques doivent être utilisées pour réduire la dimensionnalité et sélectionner des caractéristiques importantes.
Voici une aide-mémoire pratique qui détaille les algorithmes que vous pouvez utiliser pour différents types d’apprentissage automatique. problèmes.
source
Les algorithmes d’apprentissage automatique peuvent être divisés en apprentissage supervisé, non supervisé et par renforcement, comme indiqué dans mon précédent blog. Cet article vous explique comment utiliser la feuille.
La feuille de triche est principalement divisée en deux types d’apprentissage :
Des algorithmes d’apprentissage supervisé sont utilisés lorsque les données d’apprentissage ont des variables de sortie correspondant aux variables d’entrée. L’algorithme analyse les données d’entrée et apprend une fonction pour mapper la relation entre les variables d’entrée et de sortie.
L’apprentissage supervisé peut également être classé en régression, classification, prévision et détection des anomalies.
Les algorithmes d’apprentissage non supervisé sont utilisés lorsque les données d’apprentissage ne comportent pas de variable de réponse. Ces algorithmes tentent de trouver le modèle intrinsèque et les structures cachées dans les données. Clustering et réduction des dimensions Les algorithmes sont des types d’algorithmes d’apprentissage non supervisé.
L’infographie ci-dessous explique simplement la régression, la classification, la détection des anomalies et le regroupement, ainsi que des exemples où chacun de ces éléments pourrait être appliqué.
source
Les principaux points à prendre en compte lors de la résolution d’un nouveau problème sont les suivants :
- Définissez le problème. Quel est l’objectif du problème ?
- Explorez les données et familiarisez-vous avec les données.
- Commencez avec des modèles de base pour créer un modèle de référence, puis essayez des méthodes plus complexes.
Cela dit, rappelez-vous toujours que « de meilleures données battent souvent de meilleurs algorithmes », comme indiqué dans mon précédent blog. Il est tout aussi important de concevoir de bonnes fonctionnalités. Essayez plusieurs algorithmes et comparez leurs performances pour choisir celui qui convient le mieux à votre tâche spécifique. Essayez également les méthodes d’ensemble car elles offrent généralement une bien meilleure précision.
Original. Republié avec autorisation.
Lié :
- Comprendre les techniques d’apprentissage d’ensemble
- Choisir l’algorithme de clustering adapté à votre jeu de données
- Il n’y a pas de déjeuner gratuit dans DataScience