Il y a ce buzz partout – l’apprentissage automatique!
Alors, qu’est-ce que ce « Machine Learning(ML) ? »
Prenons un exemple pratique. Si vous pouviez imaginer la probabilité du résultat d’une tâche effectuée pour la première fois – disons que la tâche consiste à apprendre à conduire une voiture. En d’autres termes, comment réagiriez-vous ? Avec l’incertitude ?
En revanche, comment aimeriez-vous vous féliciter pour la même tâche après quelques années de pratique ? Probablement que vous auriez votre état d’esprit transitionné du paramètre de l’incertitude ou un plus certain. Alors, comment avez-vous obtenu cette expertise dans la tâche ?
Le plus probable est que vous avez acquis de l’expérience en ajustant certains paramètres, et que vos performances se sont améliorées. N’est-ce pas ? C’est l’apprentissage automatique.
On dit d’un programme informatique qu’il apprend de l’expérience(E) sur certaines tâches (T)pour donner le résultat le plus performant(P).
Dans le même ordre d’idées, les machines apprennent par certains concepts mathématiques complexes, et toutes les données pour elles sont sous la forme de 0 et de 1. Par conséquent, nous ne codons pas la logique de notre programme ; au lieu de cela, nous voulons qu’une machine trouve la logique à partir des données par elle-même.
En outre, si vous voulez trouver la relation entre l’expérience, le niveau d’emploi, les compétences rares et le salaire, alors vous devez enseigner des algorithmes d’apprentissage automatique.
Selon cette étude de cas, vous devez modifier les caractéristiques pour obtenir les étiquettes. Mais, vous ne codez pas l’Algorithme, et vous devez vous concentrer sur les données.
Donc, le concept est Données + Algorithme = Insights. Deuxièmement, les Algorithmes sont déjà développés pour nous, et nous devons savoir quel algorithme utiliser pour résoudre nos problèmes. Jetons un coup d’œil au problème de la régression et à la meilleure façon de choisir un algorithme.
L’apprentissage automatique : vue d’ensemble
Selon Andreybu, un scientifique allemand avec plus de 5 ans d’expérience de l’apprentissage automatique, « Si vous pouvez comprendre si la tâche d’apprentissage automatique est un problème de régression ou de classification, alors choisir le bon algorithme est un jeu d’enfant. »
Pour énumérer, la principale différence entre eux est que la variable de sortie dans la régression est numérique (ou continue) alors que celle pour la classification est catégorique (ou discrète).
La régression dans l’apprentissage automatique
Pour commencer, les algorithmes de régression tentent d’estimer la fonction de correspondance (f) des variables d’entrée (x) aux variables de sortie numériques ou continues (y). Maintenant, la variable de sortie pourrait être une valeur réelle, qui peut être un nombre entier ou une valeur à virgule flottante. Par conséquent, les problèmes de prédiction de régression sont généralement des quantités ou des grandeurs.
Par exemple, si l’on vous fournit un ensemble de données sur les maisons, et que l’on vous demande de prédire leurs prix, il s’agit d’une tâche de régression car le prix sera une sortie continue.
Les exemples d’algorithmes de régression courants comprennent la régression linéaire, la régression par vecteur de support (SVR) et les arbres de régression.
Classification dans l’apprentissage automatique
En revanche, dans le cas des algorithmes de classification, y est une catégorie que la fonction de mappage prédit. Pour élaborer, pour une ou plusieurs variables d’entrée, un modèle de classification tentera de prédire la valeur d’une seule ou de plusieurs conclusions.
Par exemple, si on vous fournit un ensemble de données sur les maisons, un algorithme de classification peut essayer de prédire si les prix des maisons « se vendent plus ou moins que le prix de vente recommandé. » Ici les deux catégories discrètes : au-dessus ou en dessous dudit prix.
Des exemples des algorithmes de classification courants incluent la régression logistique, Naïve Bayes, les arbres de décision et les K plus proches voisins.
Choisir les bons algorithmes
Comprendre vos données
- Prenez connaissance des statistiques récapitulatives
- Utilisez . le paramètre ‘Percentile’ pour identifier les plages des données
- Les moyennes et les médianes décrivent la tendance centrale
- Les corrélations peuvent indiquer des relations fortes
Visualisez les données
- Les diagrammes en boîte peuvent indiquer les exceptions.
- Les diagrammes de densité et les histogrammes montrent la dispersion des données
- Les diagrammes de dispersion peuvent décrire des relations de quantité
Nettoyer les données
- Traiter une valeur manquante. Le résultat est soumis à donner des résultats sensibles dans le cas (les données manquantes pour certaines variables peuvent entraîner des prédictions inexactes)
- Bien que les modèles d’arbres soient moins sensibles à la présence de valeurs aberrantes, les modèles régressifs ou autres modèles qui utilisent des équations sont plus sensibles aux exceptions
- Basiquement, les valeurs aberrantes pourraient être le résultat d’une mauvaise collecte de données, ou elles pourraient être des valeurs extrêmes légitimes
Curate the Data
En outre, tout en convertissant les données brutes en une donnée polie conforme aux modèles, il faut prendre soin de ce qui suit :
- Rendre les données plus faciles à interpréter.
- Capturer des données plus complexes.
- S’attacher à réduire la redondance et la dimensionnalité des données.
- Normaliser les valeurs des variables.
Catégoriser le problème par la variable d’entrée
- Vous avez des données étiquetées ; c’est un problème d’apprentissage supervisé.
- Si vous avez des données non étiquetées et que vous voulez trouver une structure, c’est un problème d’apprentissage non supervisé.
- Dans le cas où vous voulez optimiser une fonction objective en interagissant avec un environnement, c’est un problème d’apprentissage par renforcement.
Catégoriser le problème par la variable de sortie
- La sortie de votre modèle est un nombre ; c’est un problème de régression.
- Lorsque la sortie de votre modèle est une classe, alors c’est un problème de classification.
- La sortie de votre modèle est un ensemble de groupes d’entrée ; c’est un problème de clustering.
Le facteur de contrainte
- Prenez note de la capacité de stockage car elle varie pour différents modèles.
- La prédiction doit-elle être rapide ? Par exemple, dans les scénarios en temps réel comme la classification des panneaux de signalisation, soyez aussi rapide que possible pour éviter les accidents.
Enfin, trouvez l’algorithme
Maintenant que vous avez une image claire de vos données, vous pourriez mettre en œuvre des outils appropriés pour choisir le bon algorithme.
En attendant, pour une meilleure décision, voici une liste de contrôle des facteurs pour vous :
- Voir si le modèle s’aligne sur votre objectif commercial
- Combien de prétraitement le modèle nécessite
- Vérifier la précision du modèle
- Combien le modèle est explicable
- Combien le modèle est rapide : Combien de temps faut-il pour construire un modèle, et combien de temps faut-il au modèle pour faire des prédictions
- L’évolutivité du modèle
Pour ajouter à, il faut faire attention à la complexité de l’algorithme lors du choix.
Généralement, vous pourriez mesurer la complexité du modèle à l’aide des paramètres :
- Quand il nécessite deux ou plus de dix caractéristiques pour apprendre et prédire la cible
- Il s’appuie sur une ingénierie des caractéristiques plus complexe (par ex, l’utilisation de termes polynomiaux, d’interactions ou de composantes principales)
- Lorsque le scénario présente une plus grande surcharge de calcul (par exemple, un seul arbre de décision par rapport à une forêt aléatoire de 100 arbres)
En outre, le même algorithme peut être rendu plus complexe manuellement. Cela dépend purement du nombre de paramètres indulgents et du scénario envisagé. Par exemple, vous pourriez concevoir un modèle de régression avec plus de caractéristiques ou de termes polynomiaux et de termes d’interaction. Ou, vous pourriez concevoir un arbre de décision avec moins de profondeur.
Les algorithmes d’apprentissage automatique courants
Régression linéaire
Ce sont probablement les plus simples.
Plusieurs exemples où la régression linéaire est utilisée sont :
- Premièrement, quand il est temps de passer d’un endroit à un autre
- Prédire les ventes d’un produit particulier le mois prochain
- Impact du taux d’alcoolémie sur la coordination
- Prédire les ventes mensuelles de cartes-cadeaux et améliorer les projections de revenus annuels
Régression logistique
Apparemment, il y a beaucoup d’avantages à cet algorithme – intégration de plus de fonctionnalités avec une belle facilité d’interprétation, facilité de mise à jour pour annexer de nouvelles données.
Pour le dire autrement, vous pourriez l’utiliser pour :
- Prédire le churning des clients.
- Le cas particulier du credit scoring ou de la détection des fraudes.
- Mesurer l’efficacité des campagnes marketing.
Arbres de décision
Apparemment, les arbres simples sont rarement utilisés, mais en composition, avec beaucoup d’autres, ils construisent des algorithmes efficaces tels que Random Forest ou Gradient Tree Boosting. Cependant, l’un des inconvénients est qu’ils ne supportent pas l’apprentissage en ligne, vous devez donc reconstruire votre arbre lorsque de nouveaux exemples arrivent.
Les arbres sont excellents pour :
- Décisions d’investissement
- Défauts de paiement des prêts bancaires
- Qualifications des prospects
Bayes naïfs
Plus important encore, les Bayes naïfs sont un bon choix lorsque les ressources CPU et mémoire sont un facteur limitant. Cependant, son principal inconvénient est qu’il ne peut pas apprendre les interactions entre les caractéristiques.
Il peut être utilisé pour :
- La reconnaissance des visages
- Pour marquer un email comme spam ou non.
- Analyse des sentiments et classification des textes.
Conclusion
Par conséquent, de manière générale, dans un scénario en temps réel, il est quelque peu difficile de sous le bon algorithme d’apprentissage automatique pour le but. Cependant, vous pourriez utiliser cette liste de contrôle pour présélectionner quelques algorithmes à votre convenance.
En outre, opter pour la bonne solution à un problème de la vie réelle nécessite une compréhension experte de l’entreprise ainsi que le bon algorithme. Ainsi, enseignez vos données dans les bons algorithmes, exécutez-les tous en parallèle ou en série, et à la fin, évaluez les performances des algorithmes pour sélectionner le(s) meilleur(s).
Si vous cherchez à vous spécialiser dans l’apprentissage profond, vous pouvez consulter ce cours par apprentissage profond.