0% ont trouvé ce document utile (0 vote)
77 vues11 pages

Steps To Complete A Machine Learning

Cet article présente les étapes clés d'un projet d'apprentissage automatique, allant de la collecte et du nettoyage des données à la formation et au déploiement du modèle. Il aborde également des concepts tels que l'analyse exploratoire des données, la préparation des données, le choix des algorithmes, l'évaluation des modèles et le recyclage des modèles. Enfin, il souligne l'importance de l'ingénierie des fonctionnalités et des outils nécessaires pour mettre en production un modèle d'apprentissage automatique.

Transféré par

stevelutraze
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
77 vues11 pages

Steps To Complete A Machine Learning

Cet article présente les étapes clés d'un projet d'apprentissage automatique, allant de la collecte et du nettoyage des données à la formation et au déploiement du modèle. Il aborde également des concepts tels que l'analyse exploratoire des données, la préparation des données, le choix des algorithmes, l'évaluation des modèles et le recyclage des modèles. Enfin, il souligne l'importance de l'ingénierie des fonctionnalités et des outils nécessaires pour mettre en production un modèle d'apprentissage automatique.

Transféré par

stevelutraze
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Traduit de Anglais vers Français - [Link].

com

Notes de cours sur le Machine Learning

Dr FOTSING Eric

Étapes pour mener à bien un projet d'apprentissage automatique

1. Introduction
Cet article décrit les différentes étapes d'un projet d'apprentissage automatique. Il existe des étapes standard que
vous devez suivre pour un projet de science des données. Pour tout projet,

1. Tout d’abord, nous devonscollecter les données en fonction de nos besoins commerciaux (structurées et non
structurées, télécharger des exemples de jeux de données pour diverses applications).

2. L'étape suivante consiste ànettoyer les donnéescomme la suppression de valeurs, la suppression de valeurs aberrantes, la
gestion d'ensembles de données déséquilibrés, la modification de variables catégorielles en valeurs numériques, etc. (EDA,
prétraitement et fractionnement)

3. Après celaformation d'un modèle,utiliser diversapprentissage automatiqueetapprentissage profond algorithmes


(choisissez un algorithme en fonction de votre problème/données, sur-ajustez puis régularisez, ajustez les
hyperparamètres).

4. Ensuite, c'estévaluation du modèleen utilisant différentsmétriquecommerappel, score f1, précision, etc., importance des
fonctionnalités, coût de formation/d'inférence

5. Enfin,déploiement du modèlesur le cloud (mettre le modèle en production), réévaluer et

6. Recycler unmodèle (les anciennes prédictions sont-elles toujours valables ?).

Flux de travail du projet d'apprentissage automatique

1/9
2. Collecte de données

• Des questions à poser ?

1. Quel genre de problème essayons-nous de résoudre ?

2. Quelles sources de données existent déjà ?

3. Quelles sont les préoccupations en matière de confidentialité ?

4. Les données sont-elles publiques ?

5. Où devrions-nous stocker les fichiers ?

• Types de données

1. Données structurées : elles apparaissent sous forme de tableau (style lignes et colonnes, comme celles que vous trouveriez dans
une feuille de calcul Excel). Elles contiennent différents types de données, par exemple numériques, catégorielles,
chronologiques.

• Nominale/catégorique–Une chose ou une autre (mutuellement exclusive). Par exemple, pour les échelles de
voitures, la couleur est une catégorie. Une voiture peut être bleue mais pas blanche. L'ordre n'a pas d'importance.

• Numérique:Toute valeur continue dont la différence entre les deux est importante. Par exemple, lors
de la vente d'une maison, 107 850 $ représentent plus que 56 400 $.

• Ordinal:Données qui ont un ordre mais dont la distance entre les valeurs est inconnue. Par exemple, une question
telle que « comment évalueriez-vous votre santé sur une note de 1 à 5 ? 1 étant mauvais, 5 étant en bonne santé ».
Vous pouvez répondre 1, 2, 3, 4, 5, mais la distance entre chaque valeur ne signifie pas nécessairement qu'une
réponse de 5 est cinq fois meilleure qu'une réponse de 1.

• Séries chronologiques:Données au fil du temps. Par exemple, les valeurs de vente historiques des bulldozers de 2012
à 2018.

[Link]ées non structurées :Données sans structure rigide (images, vidéo, parole, texte en
langage naturel)
2/9
3/9
3. Préparation des données

[Link] exploratoire des données (EDA) : apprentissage des données avec lesquelles vous travaillez

1. Quels sont lesfonctionnalitévariables (entrée) et laciblevariable (sortie)

Par exemple, pour prédire une maladie cardiaque, les variables caractéristiques peuvent être l'âge, le
poids, la fréquence cardiaque moyenne et le niveau d'activité physique d'une personne. Et la variable cible
sera la présence ou non d'une maladie.

2. QuoigentilDe quelles données disposez-vous ? Structurées, non structurées, numériques, chronologiques. Y a-t-il des
valeurs manquantes ? Faut-il les supprimer ou les compléter : imputation de caractéristiques.

3. Où sont lesvaleurs aberrantesCombien y en a-t-il ? Pourquoi sont-elles là ? Y a-t-il des questions que vous pourriez poser à
un expert du domaine au sujet des données ? Par exemple, un médecin spécialiste des maladies cardiaques pourrait-il
apporter un éclairage sur votre ensemble de données sur les maladies cardiaques ?

3.2. Prétraitement des données, préparation de vos données à modéliser.

• Imputation de caractéristiques:remplir les valeurs manquantes (un modèle d'apprentissage automatique ne peut pas
apprendre sur des données qui n'existent pas)

[Link] unique :Remplir avec la moyenne, une médiane de la colonne.


[Link] multiples :Modélisez d'autres valeurs manquantes et avec ce que votre modèle trouve.
[Link] (K-voisins les plus proches) :Remplissez les données avec une valeur d’un autre exemple similaire.
4. Bien d'autres encore, comme l'imputation aléatoire, la dernière observation reportée (pour les séries chronologiques), la
fenêtre mobile et la plus fréquente.

• Codage des fonctionnalités(transformer des valeurs en nombres). Un modèle d'apprentissage automatique


nécessite que toutes les valeurs soientnumérique)

4/9
• Un codage à chaud:Transformez toutes les valeurs uniques en listes de 0 et de 1 où la valeur cible est 1 et les
autres sont des 0. Par exemple, lorsqu'une voiture est colorée en vert, rouge et bleu. Le futur de la couleur d'une
voiture verte serait représenté par [1, 0 et 0] et celui d'une voiture rouge par [0, 1 et 0].

• Encodeur d'étiquettes:Transformez les étiquettes en valeurs numériques distinctes. Par exemple, si vos variables
cibles sont des animaux différents, comme un chien, un chat ou un oiseau, elles peuvent devenir respectivement 0,
1 et 2.

• Encodage d'intégration:Apprenez à représenter les différents points de données. Par exemple, un


modèle de langage est une représentation de la relation entre différents mots. L'intégration devient
également de plus en plus disponible pour les données structurées (tabulaires).

• Normalisation des fonctionnalités(mise à l'échelle) oustandardisation:Lorsque vos variables numériques sont à des échelles
différentes (par exemple, le nombre de salles de bains est compris entre 1 et 5 et la taille du terrain entre 500 et 20 000 pieds
carrés), certains algorithmes d'apprentissage automatique ne fonctionnent pas très bien. La mise à l'échelle et la standardisation
permettent de résoudre ce problème.

• Ingénierie des fonctionnalités :transformer les données en une représentation (potentiellement) plus significative en
ajoutant des connaissances du domaine

1. Décomposer
2. Discrétisation : transformer de grands groupes en groupes plus petits
3. Fonctionnalités de croisement et d'interaction : combinaison de deux ou plusieurs fonctionnalités
4. L'indicateur présente les caractéristiques suivantes : utiliser d'autres parties des données pour indiquer quelque chose de potentiellement
significatif

• Sélection des fonctionnalités :sélectionner les fonctionnalités les plus précieuses de votre ensemble de données à modéliser. Réduire
potentiellement le surajustement et le temps d'entraînement (moins de données globales et moins de données redondantes sur lesquelles
s'entraîner) et améliorer la précision.

1.Réduction de la dimensionnalité:Une méthode courante de réduction de dimensionnalité,PCAou l'analyse en composantes


principales prend en compte un grand nombre de dimensions (caractéristiques) et utilise l'algèbre linéaire pour les
réduire à moins de dimensions. Par exemple, disons que vous avez 10 caractéristiques numériques, vous pouvez exécuter
l'ACP pour les réduire à 3.
[Link] des fonctionnalités (post-modélisation) :Adaptez un modèle à un ensemble de données, puis inspectez
les caractéristiques les plus importantes pour les résultats, supprimez les moins importantes.
3.Méthodes d'encapsulationtels que les algorithmes génétiques et l'élimination récursive de fonctionnalités impliquent la
création de grands sous-ensembles d'options de fonctionnalités, puis la suppression de celles qui n'ont pas d'importance.

• Gérer les déséquilibres:vos données contiennent-elles 10 000 exemples d’une classe mais seulement
100 exemples d’une autre ?

1. Collectez plus de données (si vous le pouvez)


2. Utilisez lescikit-learn-contrib déséquilibré-apprendreemballer
[Link] SMOTE :Technique de suréchantillonnage synthétique des minorités. Elle crée des échantillons synthétiques de
votre classe mineure pour essayer d'égaliser les chances.
4. Un article utile à consulter est « Apprendre à partir de données déséquilibrées ».

5/9
• 3.3. Fractionnement des données

[Link]înementensemble (généralement 70 à 80 % des données) : Modèleapprendà ce sujet.


[Link] (généralement 10 à 15 % des données) : Modèleles hyperparamètres sont réglésà ce sujet
[Link] (généralement 10 à 15 % des données) : modèlesperformance finaleest évalué sur cette base. Si vous l'avez fait
correctement, les résultats de l'ensemble de tests devraient donner une bonne indication de la façon dont le modèle devrait
se comporter dans le monde réel. N'utilisez pas cet ensemble de données pour ajuster le modèle.

6/9
4. Entraîner le modèle sur les données

3 étapes :
ou Choisissez un algorithme,
ou Sur-adapter le modèle,
ou Réduire le surapprentissage grâce à la régularisation)

• Choisir un algorithme

1. Algorithmes supervisés

Régression linéaire, régression logistique, KNN, SVM, arbre de décision et forêts aléatoires,
AdaBoost/Gradient Boosting Machine (boosting)

2. Algorithmes non supervisés - Clustering, réduction de dimensionnalité (PCA, Autoencodeurs, t-SNE),


détection d'anomalies

7/9
8/9
Type d'apprentissage

1. Apprentissage par lots


2. Apprentissage en ligne
3. Transfert d'apprentissage
4. Apprentissage actif
5. Assemblage

• Sous-ajustement–Cela se produit lorsque votre modèle ne fonctionne pas aussi bien que vous le souhaiteriez sur vos
données. Essayez de vous entraîner sur un modèle plus long ou plus avancé.

• Surapprentissage– se produit lorsque votre perte de validation commence à augmenter ou lorsque le modèle
fonctionne mieux sur l’ensemble d’entraînement que sur l’ensemble de test.

1.Régularisation :un ensemble de technologies pour prévenir/réduire le surapprentissage (par exemple L1, L2,
Dropout, Arrêt anticipé, Augmentation des données, Normalisation par lots)

• Réglage des hyperparamètres–effectuez une série d'expériences avec différents paramètres et voyez ce qui
fonctionne le mieux

5. Analyse/Évaluation
• Mesures d'évaluation

1. Classification - Exactitude, Précision, Rappel, F1, Matrice de confusion, Précision moyenne


(détection d'objet)
2. Régression – MSE,MAE,R^2
3. Mesure basée sur les tâches – Par exemple, pour la voiture autonome, vous souhaiterez peut-être connaître le nombre de
désengagements

9/9
• Importance des fonctionnalités

• Temps/coût de formation/d'inférence
• Outil « Et si » : comment mon modèle se compare-t-il aux autres modèles ?
• Exemples les moins fiables : qu'est-ce qui ne va pas dans le modèle ?
• Compromis biais/variance

6. Servir le modèle (déployer un modèle)


• Mettez le modèle dansproductionet voir comment ça se passe.
• Outilsvous pouvez utiliser : TensorFlow Servinf, PyTorch Serving, Google AI Platform, Sagemaker
• MLOps:là où l'ingénierie logicielle rencontre l'apprentissage automatique, essentiellement toute la technologie
requise autour d'un modèle d'apprentissage automatique pour le faire fonctionner en production

7. Modèle de recyclage

• SVoyez comment le modèle fonctionne après la diffusion (ou avant la diffusion) en fonction de diverses mesures
d'évaluation et revisitez les étapes ci-dessus si nécessaire (rappelez-vous que l'apprentissage automatique est très
expérimental, c'est donc là que vous voudrez suivre vos données et vos expériences).

10/9
• Vous constaterez également que les prédictions de votre modèle commencent à « vieillir » (généralement pas de manière optimale) ou à « dériver
», comme lorsque les sources de données changent ou sont mises à niveau (nouveau matériel, etc.). C'est à ce moment-là que vous devrez le
réentraîner.

8. Outils d'apprentissage automatique

11/9

Vous aimerez peut-être aussi