Académique Documents
Professionnel Documents
Culture Documents
1. Introduction
L'apprentissage automatique est un sous-domaine de l'intelligence artificielle (IA) dont,
l'objectif est de formaliser la connaissance portée par un ensemble de données. Il est question
en apprentissage automatique de comprendre la structure des données et de les intégrer dans
des modèles qui peuvent être compris et utilisés par les tout le monde.
Bien que faisant partie du domaine de l'informatique, l’AM diffère des approches
informatiques traditionnelles. En effet dans cette dernière, les algorithmes sont des ensembles
d'instructions explicitement programmées et utilisées par les ordinateurs pour calculer ou
résoudre des problèmes. Les algorithmes d'apprentissage automatique quant à eux,
permettent aux ordinateurs de s'entraîner sur les entrées de données et utilisent l'analyse
statistique pour produire des valeurs qui se situent dans une plage spécifique. Pour cette
raison, l'apprentissage automatique facilite l'utilisation des ordinateurs dans la
construction de modèles à partir de données d'échantillonnage afin d'automatiser les
processus de prise de décision en fonction des données saisies.
Tout utilisateur des plus récentes technologie bénéficies de l'apprentissage automatique.
La technologie de reconnaissance faciale par exemple permet aux plateformes de médias
sociaux d'aider les utilisateurs à marquer et partager des photos d'amis. La technologie de
reconnaissance optique des caractères (OCR) convertit les images du texte en caractères
mobiles. Les moteurs de recommandation, alimentés par l'apprentissage automatique,
suggèrent les films ou émissions de télévision à regarder en fonction des préférences de
l'utilisateur. Les voitures autonomes qui utiliseront l'apprentissage automatique pour naviguer
seront bientôt disponibles pour les consommateurs.
L'apprentissage automatique étant un domaine en développement continu, il faut tenir
compte de certaines considérations lors de la manipulation des technologies d'apprentissage.
Ces considérations regroupent l’ensemble d’hypothèses qui peuvent constituer un biais dans
le processus d'apprentissage.
Dans cette partie, nous étudierons les méthodes d'apprentissage supervisé et non
supervisé, ainsi que les approches algorithmiques courantes de l'apprentissage automatique
Nous allons explorer L’environnement de programmation MATLAB et PYTHON. De plus,
nous discuterons des biais qui sont perpétués par les algorithmes d'apprentissage automatique,
et considérons ce qui peut être gardé à l'esprit pour les éviter lors de la manipulation des
algorithmes.
2
donc une compétence non négociable. Python en particulier est le langage de programmation
le plus populaire parmi les ingénieurs ML en raison de sa nature polyvalente et de son vaste
écosystème de bibliothèques et de frameworks comme TensorFlow, PyTorch et Scikit
Learn. Les outils s'avèrent être des outils essentiels pour diverses tâches effectuées par les
ingénieurs ML, telles que la manipulation de données, le développement de modèles et
l'évaluation. De plus, les langages de programmation sont une condition préalable à
l'inscription à tout programme de certification ML.
2. Algorithmes d'apprentissage automatique
Un autre aspect important du travail d'un ingénieur en apprentissage automatique est la
compréhension des algorithmes d'apprentissage automatique. Bien que vous n'ayez pas besoin
d'apprendre par cœur tous les algorithmes d'apprentissage automatique, il est recommandé que
vous ayez une compréhension approfondie des principes fondamentaux des algorithmes
suivants :
• Régression linéaire ;
• Régression logistique ;
• Decision Trees ;
• Random Forests;
• Support Vector Machines;
• Naive Bayes;
• k-Nearest Neighbors;
• Clustering algorithms Algorithmes de Classification tels que: K-Means (K-moyennes)
et Hierarchical Clustering (Classification Hierarchique ; CAH…)
Il est important de savoir quand et comment appliquer ces algorithmes à différents types de
problèmes. Il faut également être conscient des forces et des faiblesses de chaque algorithme.
Note : (https://www.usaii.org/ai-insights/machine-learning-algorithms-for-beginners-with-
popular-python-codes) suivre ce lien avoir des codes de base…
3. Deep Learning and Neural Networks
L’apprentissage profond a complètement révolutionné le domaine de l’apprentissage
automatique. Il a permis aux ingénieurs ML et IA de travailler sur des tâches complexes telles
que la reconnaissance d'images, la NPL (Traitement du Langage Naturel), la reconnaissance
vocale, etc. Ainsi, il est important de se familiariser avec l'architecture de réseau neuronal
populaire telle que :
- Réseaux de neurones convolutifs (CNN) pour le traitement d'images.
- Réseaux de neurones récurrents (RNN) pour les données de séquence.
- Réseaux LSTM (Long Short-Term Memory) pour les tâches séquentielles.
- Modèles de transformateurs pour le Traitement du Langage Naturel.
3
Il est aussi également recommandé de maîtriser les frameworks d'apprentissage
profond tels que TensorFlow et PyTorch. Ils facilitent la mise en œuvre de modèles
d’apprentissage profond.
4. Natural Language Processing
Le NLP ou Natural Language Processing est un sous-domaine de l’intelligence
artificielle. Il met principalement l’accent sur l’interaction humaine et informatique. Avec
l’aide de la NLP, les machines peuvent apprendre à comprendre, interpréter et générer un
langage semblable à celui des humains. Il s'agit donc d'une compétence ML indispensable
pour développer des algorithmes et des modèles adaptés à l'analyse du langage.
5. L’Analyse Statistique
L'analyse statistique comprend la collecte, l'analyse et l'interprétation des données
pour extraire des informations précieuses et faciliter une prise de décision éclairée. Dans le
monde de l’apprentissage automatique, l’analyse statistique est un outil très important qui
pose les bases mathématiques de nombreux algorithmes d’apprentissage automatique. Son
application comprend la détection de modèles de données, les tests d'hypothèses et la
modélisation prédictive.
La maîtrise de l'analyse statistique nécessite une compréhension approfondie des outils
et bibliothèques essentiels tels que R, Python, SAS et SPSS. Une compréhension complète
de ces outils et langages de programmation est indispensable pour maîtriser l’analyse
statistique.
6. Connaissance du domaine d’Application
La connaissance du domaine est souvent une compétence sous-estimée en
apprentissage automatique, mais elle peut faire la différence entre un bon modèle et un
excellent. Comprendre le domaine spécifique du problème, ses nuances et le contexte dans
lequel le modèle sera appliqué peut conduire à une ingénierie des fonctionnalités et à une
conception de modèle plus éclairées. Les ingénieurs en apprentissage automatique et en IA
doivent collaborer étroitement avec les experts du domaine pour tirer parti de leurs
connaissances et affiner les modèles en conséquence.
Si vous voulez faire des certifications dans le domaine du ML :
(Https://www.usaii.org/artificial-intelligence-certifications)
(Https://www.usaii.org/artificial-intelligence-certifications/certified-artificial-intelligence-
engineer)
4
4. Méthodes d'apprentissage automatique
Les méthodes basées sur l’apprentissage supervisé utilisent les algorithmes basés sur
des données d'entrée et de sortie étiquetées par l’homme tandis que l’apprentissage non
supervisé ne fournit pas à l'algorithme des données étiquetées pour lui permettre de trouver
une structure et de découvrir une logique dans données entrées. Toutefois, il se développe des
algorithmes qui combine à la fois l’apprentissage supervisée et non supervisé connu sous
l’appellation de l’apprentissage semi-supervisé.
Par exemple, avec un apprentissage supervisé, un algorithme peut être alimenté avec des
images de requins étiquetés Poisson des images d'océans étiquetés comme Ocean. En étant
5
formé sur ces données, l'algorithme d'apprentissage supervisé devrait être capable d'identifier
plus tard des images de requin non marquées comme Poisson des images océaniques non
étiquetées Ocean. Un cas d'utilisation de l'apprentissage supervisé consiste à utiliser des
données historiques pour prédire des événements futurs statistiquement probables. Il peut
utiliser les informations historiques sur les marchés boursiers pour anticiper les fluctuations à
venir ou être utilisé pour filtrer les courriers indésirables. Dans l'apprentissage supervisé, des
photos étiquetées de chiens peuvent être utilisées comme données d'entrée pour classer les
photos non marquées de chiens.
6
Note Pratique : Pour construire un système d’aide à la décision utilisant les méthodes
de classification, on entraine plusieurs classifieurs (algorithmes) avec la même base de
données. Le choix de l’algorithme à retenir sera alors guidé par le classifieur qui donnera la
plus faible erreur de classification.
- implicite : c’est le cas des méthodes du k plus proches voisin ou classifieur bayésien
Dans le cas des méthodes structurelles, une forme est représentée par une chaine
ordonnée de symbole. Elles s’appuient donc sur la comparaison des représentations
structurées en forme de chaînes de graphes ou d’arbres dont les prototypes sont préalablement
enregistrés.
Modélisation
7
On dit alors que l’algorithme généralise la connaissance contenue dans les données en éditant
un modèle d’apprentissage qui sera par la suite évalué afin de déterminer ses performance,
c’est-à-dire le taux de réussite lorsqu’il sera question de déterminer l’appartenance à d’une
nouvelle donnée à une classe.
8
5.2 Le classifieur des k plus proches voisins (kppv)
La méthode des kppv est une méthode simple qui ne nécessite aucune hypothèse sur
les classes c’est-à-dire sur la fonction qui relie la classe aux points qui la constitue. L’idée
fondatrice est de faire voter les plus proches voisins sur l’appartenance d’une nouvelle
observation à la classe majoritaire parmi les k plus proches voisins. Formellement, étant
donné un point x ϵ R d à classer, R d l’espace de représentation des données, le classement
consiste à déterminer la classe de chacun des k points les plus proches de x en terme de
distance parmi les points de l’ensemble d’apprentissage représentés dans R d. La décision est
alors d’affecter x à la même classe que celle de ses k voisins les plus proches.
5.2.1 Règle des kppv pour k =1
Soit d (. , .) une distance définie dans l’espace de représentation Rd, x v le plus proche
voisin de x nouvelle donnée à classer, x v appartient bien à l’espace d’apprentissage
{ x 1 , x 2 , … , x n }.
x v est définie telle que: d (x , x¿¿ v)=min1 ≤i ≤n d ( x , x i ) ,i=1, 2 , … , n ¿ (1)
Etant donnée w ¿ ) la vraie classe de x i, avec w (x i)∈¿ l’ensemble des classes, la règle de
décision du plus proche voisin s’écrit :
^ ( x ) =w(x v )
w (2)
9
Soit k w le nombre d’observations issues du groupe des plus proches voisins appartenant
j
c
à une classe w j ∈¿ Il vient que, ∑ k w =k . Ainsi, une nouvelle observation est prédite dans la
j
j=1
( )
d 1
(∑ (| )
d 1
r r
Distance de Minkowski : d (x 1 , x 2 )= x 1 j−x 2 j|) (5)
j =1
Avec r ≥ 1
La distance de Minkowski généralise les distances :
- Euclidienne : r=2 ;
- Manhatann ou distance dite de "city-block" : r = 1;
- Distance du "max", noté d ∞ , telle que :
d ∞ =max1 ≤ j ≤d|x s − y s|
10
t −1
Distance de Mahalanobis: d (x 1 , x 2 )=(x 1−x 2 ) Γ (x 1−x 2) (6)
où Γ −1 est l’inverse de la matrice variance-covariance des variables descriptives des objets.
Il est souhaitable de noter ici que, la distance de Mahalanobis possède la propriété
intéressante de mieux prendre en compte la forme géométrique des classes, alors que la
distance euclidienne est très utilisée à cause de l’invariance qu’elle assure par rapport à une
translation et une rotation des objets.
Il peut se présenter une difficulté de choix de l’appartenance d’une nouvelle donnée à
une classe. Il est recommandé de créer une nouvelle classe dans laquelle seront rangées les
données présentant une incertitude pour le classifieur. Techniquement, pour le classifieur, on
introduit une procédure de "rejet" suivant une propriété à vérifier. Si aucune classe ne vérifie
cette propriété, la nouvelle donnée est rejetée dans la nouvelle classe prévue à cet effet.
Dans le cas du classifieur kppv , un seuil s peut être fixée sur le nombre de voisin, tel
que la règle de décision du plus proche voisin serait :
^ ( x ) =wi si au moins s points se trouvent parmi les plus proches voisins de x
w
appartenant à w i; sinon, w ^ ( x ) =w0 , avec w 0 une nouvelle classe n’appartenant pas à
{ w1 , w2 , … , wc }. Il existe deux possibilités de rejet :
- le rejet d’ambiguïté, qui se rapproche de la définition ci-dessous ;
- et le rejet de distance, lorsqu’un point éligible dans le groupe des voisins, est éloigné
d’une distance d ' fixée au préalable.
La mise en œuvre de l’algorithme des kppv nécessite pour un ensemble d’apprentissage
de taille n , de calculer n distances dans un espace de dimension d pour prendre une décision.
La méthode s’avère alors lente en phase de décision.
11
Annexe1
Définition des concepts utilisés en IA
✅ Vision par ordinateur : Utiliser des algorithmes pour interpréter et comprendre les
informations visuelles des images et des vidéos.
12
pour faire des prédictions , identifier des modèles ou extraire des informations liées aux
tendances et dépendances temporelles .
✅ Moyennes mobiles : Calcul des moyennes de points de données dans une fenêtre mobile
pour identifier les tendances et les modèles .
✅ Lissage exponentiel : Une famille de méthodes de prévision basées sur des moyennes
pondérées d'observations passées en mettant l'accent sur les données récentes .
✅ Les modèles ARIMA sont largement utilisés pour les tâches de prévision de séries
chronologiques et peuvent être ajustés avec des paramètres spécifiques (p, d, q) pour s'adapter
aux caractéristiques des données analysées.
✅ Régression - Prédire des valeurs numériques continues, comme les prix de l'immobilier.
✅ Classification : Catégorisation des données dans des classes prédéfinies, telles que la détection des
courriers indésirables.
✅ Prétraitement des données – Nettoyage, transformation et organisation des données pour analyse.
✅ Nettoyage des données - Il s'agit du processus d’identification et de correction des erreurs, des
incohérences et des inexactitudes dans les ensembles de données afin de garantir la qualité et la
fiabilité des données pour l'analyse ou la modélisation.
13
✅ Exploration de données : il s'agit du processus de découverte de modèles, d'informations et de
connaissances précieux à partir de grands ensembles de données à l'aide de diverses techniques
informatiques, telles que l'apprentissage automatique et l'analyse statistique.
✅ Transformation des données – Cela implique de modifier le format, la structure ou les valeurs des
données pour les rendre adaptées à l’analyse, à la modélisation ou à la visualisation, incluant souvent
des tâches telles que la normalisation, la mise à l'échelle et l'ingénierie des fonctionnalités.
✅ Anomalie - Il s'agit d'un point de données inhabituel ou rare qui s'écarte considérablement
des modèles attendus ou normaux dans un ensemble de données.
✅ Détection des anomalies - Traiter la classe minoritaire comme des anomalies et appliquer
des techniques de détection des anomalies pour les identifier.
✅ Local Outlier Factor (LOF - est un algorithme utilisé pour identifier les points de données
dans un ensemble de données qui sont significativement différents de leur voisinage local,
indiquant potentiellement des anomalies ou des valeurs aberrantes.
✅ Médiane - Fournissez les informations moyennes de manière plus efficace que la moyenne
et elles ne sont pas affectées par les valeurs aberrantes des données.
✅ Écart type — La racine carrée de la variance, fournissant une mesure plus interprétable de
la variabilité des données.
✅ Percentile - Il s'agit d'une mesure qui indique le pourcentage de points de données égaux ou
inférieurs à une valeur spécifique dans un ensemble de données.
14
✅ PDF (Fonction de densité de probabilité) - Il s'agit d'une fonction statistique qui décrit la
probabilité qu'une variable aléatoire continue prenne une valeur spécifique dans une plage
donnée.
✅ CDF (Cumulative Density Function) - C'est une fonction statistique qui donne la probabilité
cumulée qu'une variable aléatoire soit inférieure ou égale à une valeur spécifique.
15