0% ont trouvé ce document utile (0 vote)
115 vues6 pages

Concepts et Techniques du Machine Learning

Transféré par

Hâdîl Bên Hëndä
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

Thèmes abordés

  • taux de réussite,
  • apprentissage supervisé,
  • régression,
  • données d'entraînement,
  • taux d'erreur,
  • exemples positifs,
  • prédiction,
  • séquences temporelles,
  • précision,
  • machines à vecteurs de support
0% ont trouvé ce document utile (0 vote)
115 vues6 pages

Concepts et Techniques du Machine Learning

Transféré par

Hâdîl Bên Hëndä
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

Thèmes abordés

  • taux de réussite,
  • apprentissage supervisé,
  • régression,
  • données d'entraînement,
  • taux d'erreur,
  • exemples positifs,
  • prédiction,
  • séquences temporelles,
  • précision,
  • machines à vecteurs de support

Le machine learning (ou apprentissage automatique) est un sous-domaine de

l’intelligence artificielle (IA) qui permet aux ordinateurs d'apprendre et de s'améliorer à


partir de données sans être explicitement programmés pour effectuer une tâche
spécifique. Au lieu de suivre des instructions rigides, les algorithmes de machine
learning s'adaptent, identifient des motifs et prennent des décisions basées sur des
informations précédemment traitées.

Voici les principaux concepts qui décrivent le machine learning :

1. Données d'entraînement : Les algorithmes de machine learning utilisent des


données pour "apprendre". Par exemple, pour qu'un modèle puisse reconnaître
des images de chiens, il doit être entraîné avec un grand nombre d'images de
chiens et d'autres animaux pour reconnaître la différence.

2. Algorithmes : Les algorithmes de machine learning utilisent les données pour


identifier des motifs et faire des prédictions. Ils varient en fonction de la tâche,
mais certains des plus courants incluent les arbres de décision, les réseaux de
neurones, et les forêts aléatoires.

3. Types d'apprentissage :

o Apprentissage supervisé : On fournit à l'algorithme des données


d'entrée et des réponses associées. Par exemple, avec des images
étiquetées "chien" ou "chat", le modèle apprend à les distinguer.

o Apprentissage non supervisé : Le modèle reçoit uniquement des


données d'entrée sans réponse. Il apprend à identifier des motifs (comme
des regroupements d'éléments similaires).

o Apprentissage par renforcement : Le modèle apprend par essais et


erreurs, en recevant des "récompenses" ou des "punitions" en fonction de
ses actions (utile dans des domaines comme les jeux ou la robotique).

4. Prédiction et décision : Une fois entraîné, un modèle peut faire des prédictions
sur de nouvelles données. Par exemple, un modèle peut prédire la probabilité
qu'un email soit un spam ou non, ou qu'un utilisateur veuille voir une certaine
vidéo.

Le machine learning a de nombreuses applications pratiques, telles que :

• Les systèmes de recommandation (Netflix, Amazon)

• La reconnaissance d'image et de voix (utilisée dans les assistants vocaux)

• Les diagnostics médicaux automatisés

• La détection de fraudes dans les transactions financières


En machine learning, lorsque l’on utilise un ensemble de données pour entraîner et
évaluer un modèle, il est courant de diviser cet ensemble en trois parties : jeu
d'entraînement, jeu de validation et jeu de test. Chacune de ces parties joue un rôle
distinct dans le développement et l’évaluation du modèle. Voici comment elles sont
généralement utilisées, ainsi que la proportion de données typiquement attribuées à
chacune :

1. Jeu d'entraînement (Training set)

• Utilité : Sert à entraîner le modèle, c'est-à-dire à ajuster ses paramètres pour


minimiser l'erreur sur les données.

• Proportion typique : 60-80% des données totales.

2. Jeu de validation (Validation set)

• Utilité : Sert à évaluer la performance du modèle pendant l'entraînement et à


ajuster les hyperparamètres (comme la profondeur d’un arbre de décision ou le
nombre de couches d'un réseau de neurones).

• Proportion typique : 10-20% des données totales.

3. Jeu de test (Test set)

• Utilité : Sert uniquement à évaluer la performance finale du modèle après


l'entraînement et la validation. Il fournit une estimation de la capacité du modèle
à généraliser à de nouvelles données.

• Proportion typique : 10-20% des données totales.

Voici quelques-unes des techniques de prédiction les plus courantes en machine


learning :

1. Régression

• But : Prédire une valeur numérique continue (par exemple, le prix d'une maison
ou la température).

• Techniques :

o Régression linéaire : Modèle simple qui prédit une variable cible en


fonction d'une ou plusieurs variables indépendantes. Elle est basée sur
l'hypothèse de linéarité entre les variables.

o Régression logistique : Technique de classification qui utilise une courbe


logistique pour prédire des classes binaires (par exemple, maladie
présente ou non).
o Régression polynomiale : Extension de la régression linéaire où le
modèle peut prendre en compte des relations non linéaires en utilisant
des puissances des variables.

2. Arbres de Décision (Decision Trees)

• But : Prédire des classes (classification) ou des valeurs (régression) en utilisant


une structure en forme d'arbre où chaque nœud représente une décision basée
sur une variable.

• Description : L'arbre est construit en divisant les données en segments basés


sur les caractéristiques les plus discriminantes, créant ainsi une structure
hiérarchique de décisions. Il est facile à interpréter mais peut être sujet à
l'overfitting.

3. Forêts Aléatoires (Random Forests)

• But : Réaliser des prédictions plus robustes pour des tâches de classification ou
de régression.

• Description : Une forêt aléatoire est un ensemble d'arbres de décision créés


aléatoirement, dont les prédictions sont combinées pour obtenir une réponse
finale. Cela permet de réduire le risque d'overfitting et améliore généralement la
précision par rapport à un seul arbre.

4. Machines à Vecteurs de Support (Support Vector Machines, SVM)

• But : Classifier des données en créant une frontière optimale qui sépare les
classes.

• Description : Le SVM crée un "hyperplan" qui maximise la marge entre les


classes. Il est efficace pour les problèmes de classification binaire et peut être
utilisé avec des "kernels" pour des séparations non linéaires.

5. Réseaux de Neurones Artificiels (Artificial Neural Networks, ANN)

• But : Réaliser des prédictions complexes en détectant des patterns dans des
données massives, souvent utilisées pour des tâches comme la reconnaissance
d'image et la prédiction de séries temporelles.

• Description : Inspirés par le cerveau humain, les réseaux de neurones sont


composés de couches de neurones connectés. Les modèles avancés, comme
les réseaux de neurones profonds (Deep Learning), comprennent des couches
multiples qui permettent d'analyser des relations très complexes dans les
données.

6. K-Plus Proches Voisins (K-Nearest Neighbors, KNN)


• But : Classifier des échantillons ou prédire une valeur en fonction des données
les plus proches dans l'espace des caractéristiques.

• Description : KNN compare un point à prédire avec les "K" points les plus
proches de lui dans l'ensemble d'apprentissage et le classe en fonction de la
majorité des classes voisines, ou en prenant la moyenne des valeurs voisines
pour la régression.

7. Naïve Bayes

• But : Classifier des données, en particulier pour des problèmes où les classes
sont conditionnellement indépendantes.

• Description : Naïve Bayes est basé sur le théorème de Bayes et suppose que
chaque caractéristique est indépendante des autres. Il est très rapide et
efficace, souvent utilisé pour la classification de texte et le filtrage de spam.

8. Réseaux de Neurones Récurrents (Recurrent Neural Networks, RNN)

• But : Prédire des séquences et des séries temporelles (comme les prix des
actions ou les prévisions météo).

• Description : Les RNN prennent en compte les informations temporelles en


reliant chaque sortie aux états précédents, ce qui les rend adaptés à des
données séquentielles. Une version avancée, le LSTM (Long Short-Term
Memory), est utilisée pour des séquences de longue durée.

9. Algorithmes de Boosting (ex : AdaBoost, Gradient Boosting, XGBoost)

• But : Améliorer la précision des prédictions en combinant plusieurs modèles


faibles pour créer un modèle fort.

• Description : Ces algorithmes corrigent les erreurs des modèles précédents


dans une séquence d'apprentissages, permettant d'atteindre une performance
de haute qualité. XGBoost est particulièrement populaire en raison de son
efficacité et de sa précision.

10. Réseaux de Convolution (Convolutional Neural Networks, CNN)

• But : Prédire et classifier des données où la structure spatiale est importante,


comme dans la reconnaissance d'images.

• Description : Les CNN sont conçus pour capter les motifs visuels à partir des
images. Ils utilisent des couches de convolution pour détecter des
caractéristiques comme les bords et les textures, et des couches de pooling
pour réduire la taille de l'image tout en conservant les informations importantes.
Accuracy (ou précision en français) et Error (ou erreur) sont deux mesures de
performance essentielles pour évaluer l’efficacité des modèles de machine
learning, notamment en classification.

1. Accuracy (Précision)

L’accuracy mesure le pourcentage de prédictions correctes effectuées par le


modèle par rapport au total des prédictions. C’est une mesure populaire pour
évaluer la performance des modèles de classification, car elle indique
directement le taux de réussite du modèle.

Formule de l’accuracy

Où :

• TP (True Positive) : Nombre de prédictions positives correctes (exemples positifs


correctement identifiés).

• TN (True Negative) : Nombre de prédictions négatives correctes (exemples


négatifs correctement identifiés).

• FP (False Positive) : Nombre de fausses prédictions positives (exemples négatifs


mal identifiés comme positifs).

• FN (False Negative) : Nombre de fausses prédictions négatives (exemples


positifs mal identifiés comme négatifs).

Exemple

Imaginons un modèle qui classe des emails comme Spam ou Non-Spam. Si le


modèle analyse 100 emails, et fait 90 prédictions correctes, l'accuracy sera :

Limites de l’accuracy

L’accuracy est utile, mais elle peut être trompeuse dans des ensembles de
données déséquilibrés. Par exemple, si 95% des emails ne sont pas des spams,
un modèle qui prédit systématiquement "Non-Spam" aura une accuracy élevée
(95%) sans réellement bien identifier les spams.

2. Error (Erreur)
L’error (ou taux d’erreur) représente le pourcentage de prédictions incorrectes
faites par le modèle. C'est une mesure complémentaire à l’accuracy et sert à
évaluer combien de fois le modèle s’est trompé.

Formule de l’error

Limites de l’error

Le taux d'erreur est simple et direct, mais comme l’accuracy, il peut ne pas
refléter correctement les performances d’un modèle dans des contextes
déséquilibrés ou lorsque certains types d'erreurs (FP ou FN) sont plus coûteux
que d'autres.

Common questions

Alimenté par l’IA

Les données d'entraînement, généralement 60-80% du total, servent à ajuster les paramètres du modèle pour minimiser l'erreur . Le jeu de validation, qui représente normalement 10-20% des données, évalue la performance du modèle en cours d'entraînement et ajuste les hyperparamètres . Enfin, le jeu de test, également 10-20%, évalue la performance finale du modèle, assurant qu'il peut généraliser efficacement à de nouvelles données . Utiliser ces divisions permet de développer et d'optimiser des modèles tout en évitant des biais et l'overfitting.

L'algorithme K-Plus Proches Voisins (KNN) fonctionne en analysant un point à prédire par rapport aux 'K' points les plus proches dans l'espace des caractéristiques . Pour les tâches de classification, KNN attribue une classe au point en fonction de la majorité des classes parmi ses voisins. En régression, KNN calcule une prédiction en prenant la moyenne des valeurs de ses voisins . La simplicité de sa logique basée sur la proximité permet de s'adapter facilement à diverses formes de données sans nécessiter de modèle paramétrique préalable.

L'apprentissage supervisé implique l'entraînement avec des données d'entrée associées à des réponses, permettant de prédire des classes ou des valeurs pour de nouvelles données. Par exemple, on entraîne un modèle avec des images étiquetées pour distinguer des animaux . L'apprentissage non supervisé, en revanche, utilise uniquement des données d'entrée pour identifier des motifs ou des regroupements sans étiquettes préalables . L'apprentissage par renforcement porte sur l'interaction avec un environnement où le modèle apprend par essais et erreurs, recevant des récompenses ou des punitions selon les actions prises, notamment utilisé en jeux vidéo et robotique .

L'accuracy peut être trompeuse dans des ensembles de données déséquilibrés. Par exemple, si 95% des emails ne sont pas des spams, un modèle qui prédit systématiquement 'Non-Spam' affichera une accuracy élevée de 95%, sans pour autant être performant dans l'identification des emails 'Spam'. Cela montre que l'accuracy seule ne reflète pas toujours la capacité d'un modèle à traiter certains déséquilibres ou à bien identifier des classes importantes .

La régression linéaire prédit une variable cible en supposant une relation linéaire entre les variables indépendantes et la variable cible . La régression polynomiale, quant à elle, étend cette approche en utilisant des polynômes, permettant de modéliser des relations non linéaires. Elle est utile lorsque la relation entre les variables n'est pas strictement linéaire, offrant ainsi une plus grande flexibilité pour capturer des tendances complexes dans les données .

Les forêts aléatoires sont privilégiées par rapport aux arbres de décision uniques car elles offrent des prédictions plus robustes et précises. Une forêt aléatoire combine plusieurs arbres de décision créés avec des échantillons aléatoires des données, ce qui aide à réduire le risque d'overfitting auquel les arbres individuels sont souvent sujets. Cette méthode d'ensemble améliore généralement la précision en exploitant la diversité des arbres pour tirer une conclusion prédictive finale .

Les RNN sont conçus pour les données séquentielles car ils prennent en compte les informations temporelles en reliant chaque sortie aux états précédents, ce qui leur permet de traiter des séquences continues et de capturer des dépendances temporelles . Les RNN sont particulièrement utilisés dans des applications telles que la prédiction de séries temporelles (par exemple, les prévisions météorologiques), la modélisation linguistique, et le traitement du langage naturel. Les variantes comme les LSTM (Long Short-Term Memory) sont capables de gérer des séquences de longue durée .

Les CNN tirent parti de la structure spatiale en utilisant des couches de convolution pour détecter des motifs visuels locaux tels que des bords et des textures, essentiels pour l'analyse d'images . Ces réseaux conservent la hiérarchie spatiale des pixels grâce à des filtres qui balayant l'image, capturant ainsi les relations spatiales à différentes échelles. Les couches de pooling suivent ces convolutions pour réduire la dimensionnalité, tout en préservant les caractéristiques importantes. Cela permet aux CNN de réaliser des classifications précises même lorsque les images sont altérées ou partiellement visibles .

Les techniques de Boosting, comme XGBoost, améliorent la précision des prédictions en combinant plusieurs modèles faibles, chacun corrigant les erreurs des précédents . Cette approche iterative permet d’accroître la performance du modèle final en réduisant l'erreur de biais. XGBoost, en particulier, est apprécié pour son efficacité, sa capacité à traiter de grandes quantités de données, et ses fonctionnalités avancées qui intègrent la régularisation pour éviter l'overfitting tout en augmentant la précision .

Les SVM peuvent être inefficaces sur des ensembles de données avec des classes non distinctement séparables dans un espace linéaire. Pour surmonter ce défi, les kernels permettent de transformer les données d'origine dans un espace de dimension supérieure où une séparation linéaire devient possible. Les kernels optimisent ainsi la capacité du SVM à distinguer des classes complexes en créant un hyperplan optimal qui maximise la marge entre elles .

Vous aimerez peut-être aussi