Machine Learning
Machine Learning
Machine Learning
EL HACHIMI HAMZA
Encadré par:Pr. Akdim
IFA3 2023-2024
5 Etude de Cas
6 Conclusion
Définition
Le machine learning (ML) est une forme d’intelligence artificielle (IA) qui
est axée sur la création de systèmes qui apprennent, ou améliorent leurs
performances, en fonction des données qu’ils traitent. L’intelligence
artificielle est un terme large qui désigne des systèmes ou des machines
simulant une forme d’intelligence humaine. Le machine learning et l’IA
sont souvent abordés ensemble et ces termes sont parfois utilisés de
manière interchangeable bien qu’ils ne renvoient pas exactement au même
concept. Une distinction importante est que, même si l’intégralité du
machine learning repose sur l’intelligence artificielle, cette dernière ne se
limite pas au machine learning.
Définition
Reinforcement Learning
Reinforcement Learning
Reinforcement Learning
Les étapes :
Identifier les besoins et les objectifs :Avant de se lancer dans la
construction d’un modèle d’apprentissage viable, il reste indispensable
de savoir pourquoi la solution de Machine Learning doit être
implémentée. Les projets de Machine Learning constituent des
processus coûteux et laborieux. Le fait de fixer des objectifs
quantifiables permet, d’une part, d’établir un cadre et, d’autre part,
de juger si le projet est une réussite ou pas.
Collecter les données nécessaires : La qualité et la quantité des
données ont un impact direct sur l’efficacité du modèle résultant.
Pour développer leur capacité à accumuler des connaissances et à
prendre des décisions de façon autonome, les machines ont en effet
besoin de consommer une grande quantité d’informations : plus
celles-ci sont nombreuses et fiables, plus le résultat obtenu sera précis
et adapté aux besoins de l’entreprise.
Y = Xβ + ϵ
y1 1 x11 . . . x1p β0
y2 1 x21 . . . x2p β1
où Y = , X = , β= , et
.. .. .. .. ..
. . . . .
y 1 xn,1 . . . xnp βp
n
ε1
ε2
ϵ= .
..
.
εn
Y désigne le vecteur à expliquer de taille n, X la matrice explicative de
taille n × (p + 1), ϵ le vecteur d’erreurs de taille n.
n > (p + 1) et rang(X ) = p + 1
Remarque
Il est important de bien fairePla différence entre :
- l’expression E (yi ) = β0 + pj=1 βj xij (qui désigne l’espérance d’une
variable aléatoire scalaire), et l’expression E(Y ) = X β (qui désigne
l’espérance d’une variable aléatoire vectorielle) : on obtient dans un cas un
scalaire, dans l’autre cas un vecteur de Rn .
- l’expression V (yi ) = σ 2 (qui désigne la variance d’une variable aléatoire
scalaire), et l’expression V(Y ) = σ 2 In (qui désigne la covariance d’une
variable aléatoire vectorielle) : on obtientdans un cas un scalaire σ 2 ,
dans l’autre cas une matrice carrée σ 2 In de dimension n × n.
{(xi1 , . . . , xip , yi ) , i = 1, . . . , n} ,
β0 , β1 , . . . , βp et σ 2 .
Vocabulaire :
ŷi = βb0 + p
P
j=1 βj xij est appelé la valeur prédite.
b
ε̂i = yi − ŷi est appelé le résidu.
ŷi = xiT β.
b
min F (β)
β∈Rp+1
avec : !#2
p
n
"
X X
F (β) = yi − β0 + βj xij
i=1 j=1
T
= (Y − X β) (Y − X β)
= Y T Y − 2Y T X β + β T X T X β
EL HACHIMI HAMZA Encadré par:Pr. Akdim (Faculté desMachine
SciencesLearning
et Techniques - Marrakech Ingénierie
IFA3 2023-2024
en Finance et Actuariat
20 / 53
)
Algorithmes de Machine Learning
∂F (β)
=0
∂β
Rappels. Soient a et x deux vecteurs de dimension K , et soit A une
matrice de dimension K × K . On a :
∂aT x ∂x T a ∂x T Ax
= =a et = 2Ax si A est symétrique,.
∂x ∂x ∂x
On en déduit après quelques manipulations :
−1
βb = X T X XTY
Régression Logistique
Régression Logistique
Régression Logistique
Régression Logistique
Régression Logistique
∀ (X ∈ R n ) h(X ) = σ(ΘX )
i.e.
1
∀ (X ∈ R n ) h(X ) = Pn
1+ i=1 θi xi e−
Tout le problème de classification par régression logistique apparaı̂t alors
comme un simple problème d’optimisation où, à partir de données, nous
essayons d’obtenir le meilleur jeu de paramètre Θ permettant à notre
courbe sigmoı̈de de coller au mieux aux données. C’est dans cette étape
qu’intervient notre apprentissage automatique.
Régression Logistique
Une fois cette étape effectuée, voici un aperçu du résultat qu’on peut
obtenir:
Définition
La machine à vecteurs de support (SVM) est un puissant algorithme
d’apprentissage automatique utilisé pour les tâches de classification
linéaire ou non linéaire, de régression et même de détection des valeurs
aberrantes. Les SVM peuvent être utilisées pour diverses tâches, telles que
la classification de texte, la classification d’images, la détection de spam,
l’identification de l’écriture manuscrite, l’analyse de l’expression génique, la
détection des visages et la détection d’anomalies. Les SVM sont
adaptables et efficaces dans une variété d’applications, car elles peuvent
gérer des données de grande dimension et des relations non linéaires.
xn
l’équation appartient à l’hyperplan. Par exemple, en dimension
2, ax + by = 0 est bien l’équation caractéristique d’une droite vectorielle
(qui passe par l’origine).
wn
appelé biais.Une fois l’entraı̂nement terminé, pour classer une nouvelle
a1
..
entrée x = . ∈ Rn , le SVM regardera le signe de:
an
Si h(x) est positif ou nul, alors x est d’un côté de l’hyperplan affine et
appartient à la première catégorie, sinon x est de l’autre côté de
l’hyperplan, et donc appartient à la seconde catégorie.
En résumé, on souhaite savoir, pour un point x, s’il se trouve d’un côté ou
de l’autre de l’hyperplan. La fonction h nous permet de répondre à cette
question, grâce à la classification suivante:
h(x) ≥ 0 =⇒ x ∈ catégorie 1
h(x) < 0 =⇒ x ∈ catégorie 2
Calcul de la marge
Si l’on prend un point xk ∈ Rn , on peut prouver que sa distance à
l’hyperplan de vecteur support w et de biais b est donnée par¹:
lk w ⊤ · xk + b
∥w ∥
Maximisation de la marge
On veut trouver l’hyperplan de support w et de biais b qui permettent de
maximiser cette marge, c’est-à-dire qu’on veut trouver un hyperplan avec
la plus grande marge possible. Cela permettra, intuitivement, d’être
tolérant face aux petites variations. Cette intuition est justifiée: en 1995,
le Russe Vladimir Vapnik a prouvé que cette maximisation produit un
hyperplan optimal, c’està-dire qui donnera lieu au moins d’erreurs possible
(on parle de capacité de généralisation maximale).
Puisque l’on cherche l’hyperplan qui maximise la marge, on cherche
l’unique hyperplan dont les paramètres (w , b) sont donnés par la formule:
l (w ⊤ ·x +b )
arg max mink k ∥w ∥k .
w ,b
Comment les SVM interviennent dans les cas non linéairement séparable ?
Dans la majorité des cas, les données sont mélangés et le problème non
linéairement séparable. Il n’est alors pas possible de les séparer seulement
avec une droite, Et c’est la qu’entre en jeu la deuxième idée clé la fonction
noyau ou Astuce de noyau .
Afin de contourner le problème non linéairement séparable, on plonge dans
un espace de dimension supérieur (éventuellement infini) et on reconsidère
le problème dans cet espace là.
Cette manœuvre permet de passer d’un problème non linéairement
séparable à un problème linéairement séparable. La fonction noyau joue un
rôle primordiale. En effet, en passant d’un espace de dimension inférieur à
un espace de dimension supérieur, les calculs deviennent également plus
complexes et plus coûteux.
Avec l’approche one vs all, on utilise un SVM pour trouver une frontière
entre les groupes pions rouges et pions bleues, pions verts; puis un autre
SVM pour trouver une frontière entre pions bleus et pions rouges, pions
verts; et enfin une troisième SVM pour une frontière entre pions verts et
pions bleus, pions rouges. On extrait alors une frontière (non linéaire) de
ces trois frontières.
Classification K-means
Classification K-means
Classification K-means
Classification K-means
le coefficient de silhouette
Le coefficient de silhouette est une mesure de la similarité d’un objet avec
son propre cluster (cohésion) par rapport aux autres clusters (séparation).
La valeur du coefficient de silhouette varie de -1 à 1, où une valeur élevée
indique que l’objet est bien adapté à son propre cluster et mal adapté aux
clusters voisins.
Mathématiquement, le coefficient de silhouette pour chaque point de
données est calculé comme suit :
b−a
s= max(a,b)
Classification K-means
le coefficient de silhouette
a la moyenne des distances aux autres observations du même cluster
(càd la moyenne intra-cluster).
b est la la moyenne des distances aux autres observations du cluster le
plus proche (càd la moyenne inter-cluster).
Ce coefficient peut varier entre −1 et +1. Un coefficient proche de +1
signifie que l’observation est située bien à l’intérieur de son propre cluster,
tandis qu’un coefficient proche de 0 signifie qu’elle se situe près d’une
frontière ; enfin, un coefficient proche de −1 signifie que l’observation est
associée au mauvais cluster.
Classification K-means
Définition
Un arbre de décision est un outil d’aide à la décision représentant un
ensemble de choix sous la forme graphique d’un arbre. Les différentes
décisions possibles sont situées aux extrémités des branches (les feuilles
de l’arbre), et sont atteintes en fonction de décisions prises à chaque
étape. L’arbre de décision est un outil utilisé dans des domaines variés tels
que la sécurité, la fouille de données, la médecine, etc. Il a l’avantage
d’être lisible et rapide à exécuter. Il s’agit de plus d’une représentation
calculable automatiquement par des algorithmes d’apprentissage supervisé.
Etude de Cas
Cette étude de cas a pour objectif de créer une interface graphique à l’aide
de Tkinter, une bibliothèque d’interface graphique pour Python, afin
d’explorer un ensemble de données emblématique dans le domaine de
l’apprentissage automatique, en l’occurrence le jeu de données sur le
diabète. L’application met en œuvre plusieurs algorithmes de classification,
notamment SVM (Support Vector Machine), K-Means, Arbre de Décision
et Régression Logistique. L’objectif principal est de comparer les
performances de ces algorithmes dans la classification des patients en tant
que diabétiques ou non diabétiques.
Conclusion