machine learning
Ilef Meddeb
November 2024
1 definition de l’apprentissage automatique
la capacit´e des machines `a pr´edire les r´esultats sans ˆetre explicitement pro-
gramm´ees, il s’agit ´egalement de cr´eer et de mettre en œuvre des algorithmes
qui permettent aux machines de recevoir des donn´ees et d’utiliser ces donn´ees
pour : faire des pr´edictions, analyser des mod`eles et donner des recommanda-
tions
2 les types de l’apprentissage automatique
il existe 2 techniques;
2.1 l’apprentissage supervis´e
L’apprentissage supervis´e (SL) est un paradigme d’apprentissage automatique
dans lequel des objets d’entr´ee (par exemple, un vecteur de variables pr´edictives)
et une valeur de sortie souhait´ee (´egalement connue sous le nom de signal de su-
pervision ´etiquet´e par l’homme) entraˆınent un mod`ele. parmi ses approches
on distingue:
1. SVMs:SVM (Support Vector Machine ou Machine `a vecteurs de sup-
port) Les SVMs sont une famille d’algorithmes d‘apprentissage automa-
tique qui permettent de r´esoudre des probl`emes tant de classification que
de r´egression ou de d´etection d’anomalie. Ils sont connus pour leurs
solides garanties th´eoriques, leur grande flexibilit´e ainsi que leur simplicit´e
d’utilisation mˆeme sans grande connaissance de data mining.
2. DEEP LEARNING: L’apprentissage profond est un sous-ensemble de l’apprentissage
automatique qui se concentre sur l’utilisation de r´eseaux de neurones pour
effectuer des tˆaches telles que la classification, la r´egression et l’apprentissage
des repr´esentations
3. RANDOM FORESTS Une forˆet al´eatoire (RF) est un ensemble d’arbres
de d´ecision dans lesquels chaque arbre de d´ecision est entraˆın´e avec un
bruit al´eatoire sp´ecifique. Les forˆets al´eatoires sont la forme la plus pop-
ulaire d’ensemble d’arbres de d´ecision
1
4. Bayesian networks: A Bayesian network is a type of graphical model that
uses probability to determine the occurrence of an event. It is also known
as a belief network or a causal network. It consists of directed cyclic graphs
(DCGs) and a table of conditional probabilities to find out the probability
of an event happening.
2.2 Apprentissage non supervise:
L’apprentissage non supervis´e est une branche du machine learning, caract´eris´ee
par l’analyse et le regroupement de donn´ees non-´etiquet´ees. Pour cela, ces
algorithmes apprennent `a trouver des sch´emas ou des groupes dans les donn´ees,
avec tr`es peu d’intervention humaine. l’une de ses approches les plus connues
est ”k-means”:
definition de k-means:
K-means est une approche de regroupement de donn´ees pour l’apprentissage au-
tomatique non supervis´e qui peut s´eparer les donn´ees non ´etiquet´ees en un nom-
bre pr´ed´etermin´e de groupes disjoints de variance ´egale (clusters) en fonction de
leurs similitudes. C’est un algorithme populaire grˆace `a sa facilit´e d’utilisation
et sa rapidit´e sur de grands ensembles de donn´ees
2.3 Apprentissage par renforcement:
L’apprentissage par renforcement (RL) est une technique d’apprentissage au-
tomatique (ML) qui entraˆıne les logiciels `a prendre des d´ecisions afin d’obtenir
les r´esultats les plus optimaux. Il imite le processus d’apprentissage par essais et
erreurs que les humains utilisent pour atteindre leurs objectifs. Il est similaire `a
l’apprentissage supervis´e, mais au lieu de minimiser la perte, il vise `a maximiser
la r´ecompense.
3 Exercices
3.1 Exercice : Pr´ediction des Prix des Maisons
Objectif : Cr´eer un mod`ele de r´egression lin´eaire pour pr´edire les prix des
maisons en fonction de plusieurs caract´eristiques (comme la superficie, le
nombre de chambres, etc.).
´
Etapes :
1. Chargement des Donn´ees : Utilisez un jeu de donn´ees contenant des in-
formations sur les maisons et leurs prix (par exemple, le jeu de donn´ees
housing.csv).
2. Exploration des Donn´ees : Examinez les donn´ees pour comprendre les
diff´erentes caract´eristiques et leurs relations avec les prix des maisons.
2
3. ´etraitement des Donn´ees : Traitez les valeurs manquantes et normalisez
les caract´eristiques si n´ecessaire.
Exemple de Code Python
Voici un exemple de code Python :
1import pandas as pd
2import numpy as np
3from sk le arn . m odel _sel ecti on import train_test_split
4from sk le arn . l ine ar_m ode l import LinearRegression
5from sklearn.metrics import me an_sq uar ed _er ror , r2_ sco re
6
7# Charg er le jeu de d o n n e s
8da ta = pd . r ea d _c s v ( ’ ho usi ng . csv )
9
10 # Aff icher les p r e m i r e s lignes des d o n n e s
11 print ( d at a . he ad () )
12
13 # S p a r e r les c a r a c t r i s t i q u e s ( featur es ) et la cib le (
target)
14 X = data [[ ’ S up er fic ie ,’ No mb re _d e_c ha mb re s ’ ,Age ’,
Distance_du_centre_ville]]
15 y = dat a [ ’ Pr ix ]
16
17 # Divis er les d o n n e s en ense mbles d e n t r a n e m e n t et de test
18 X_ tr ai n , X_ te st , y _tr ai n , y_ tes t = t r ai n_ te st _ sp li t ( X , y ,
te st_si ze =0.2 , r and om_ sta te =42)
19
20 # C r e r un m o d l e de r g r e s s i o n l i n a i r e
21 model = LinearRegression()
22 mo de l . fit ( X_ tr ai n , y_ tra in )
23
24 # Faire des p r d i c t i o n s sur les d o n n e s de test
25 y_pred = model . p re dict ( X_test )
26
27 # C alc ul er l ’ er reu r qu adr at iq ue mo ye nn e ( MSE )
28 mse = me an _s qu ar ed _e rr or ( y_ tes t , y_p red )
29 print (f" E rr eur q ua dr ati qu e mo yen ne ( MS E ) : { mse :. 2 f} ")
30
31 # Cal culer le co eff ici ent de d t e r m i n a t i o n ( R ^2)
32 r2 = r 2_s co re ( y_ tes t , y_p red )
33 print (f" C oef fic ien t de d t e r m i n a t i o n (R ^2) : { r2 :.2 f} " )
Listing 1: Exemple de code Python
3.2 Exercice : Regroupement de Clients (Clustering)
objectif Utiliser des techniques de clustering pour segmenter un en-
semble de clients en groupes bas´es sur leurs comportements d’achat.
Cela peut aider `a comprendre les diff´erents types de clients et `a
adapter les strat´egies marketing en cons´equence.
3
Etapes:
(a) Chargement des Donn´ees : Utilisez un jeu de donn´ees contenant
des informations sur les clients (par exemple, le jeu de donn´ees cus-
tomers.csv).
(b) Exploration des Donn´ees : Examinez les donn´ees pour comprendre
les diff´erentes caract´eristiques et leur distribution.
(c) Pr´etraitement des Donn´ees : Traitez les valeurs manquantes et stan-
dardisez les caract´eristiques si n´ecessaire.
(d) Application de l’Algorithme de Clustering : Utilisez l’algorithme K-
means pour regrouper les clients en diff´erents clusters
(e) ´
Evaluation des Clusters : Visualisez les clusters et interpr´etez les
r´esultats.
Clustering de Clients
Voici un exemple de code Python pour regrouper des clients en utilisant
l’algorithme K-means :
1import pandas as pd
2import numpy as np
3from sk le arn . p rep roce ssin g import StandardScaler
4from sklearn.cluster import KMeans
5import ma tpl otli b . pyplot as plt
6import seab or n as sns
7
8# Charg er le jeu de d o n n e s
9da ta = pd . r ea d _c s v ( ’ cu st ome rs . c sv )
10
11 # Aff icher les p r e m i r e s lignes des d o n n e s
12 print ( d at a . he ad () )
13
14 # S l e c t i o n n e r les c a r a c t r i s t i q u e s per ti nen tes
15 X = data [[ ’ Age ’,Annual_Income,Spending_Score]]
16
17 # S tan dar dis er les c a r a c t r i s t i q u e s
18 scaler = StandardScaler()
19 X_ sc aled = sca le r . fi t_t ran sfo rm (X)
20
21 # A pp li qu er l ’ a lg o ri th me K - m ean s
22 kmeans = KMeans ( n _cl us ter s =3 , ra ndo m_s t ate =4 2)
23 km ean s . fi t ( X_ sca le d )
24 data[Cluster] = kmeans . labe ls _
25
26 # Vi sua lis er les c luste rs
27 plt . f ig ur e ( f ig si ze =(1 0 , 6) )
28 sns . sc att erp lot ( x= ’Annual_Income, y= Spending_Score, h ue =
Cluster, da ta = data , p al et te = viridis)
29 plt . t it le ( ’ C lu ste rs de C lie nts )
30 plt . x la be l ( Revenu Annuel)
31 plt . y la be l ( Scor e de D p e n s e )
4
32 plt . s ho w ()
Listing 2: Exemple de code Python pour le clustering de clients
3.3 Exercice : S´election des Donneurs d’Organes avec
l’Apprentissage par Renforcement
Objectif : D´evelopper un agent d’apprentissage par renforcement
qui peut apprendre `a s´electionner les donneurs d’organes de mani`ere
optimale pour maximiser les chances de r´eussite des transplantations.
Etapes;
(a) definition de l’environment:
´etats: Les ´etats peuvent inclure les caract´eristiques des patients
en attente d’une greffe (ˆage, groupe sanguin, ´etat de sant´e, etc.)
et les caract´eristiques des donneurs disponibles.
actions: L’agent peut choisir d’attribuer un organe sp´ecifique
d’un donneur `a un patient en attente.
r´ecompenses: La r´ecompense peut ˆetre bas´ee sur le succ`es de la
transplantation, la compatibilit´e entre le donneur et le receveur,
et les d´elais d’attente r´eduits.
(b) Moelisation de l’Environnement : Utiliser une biblioth`eque comme
OpenAI Gym pour mod´eliser l’environnement. efinir les ´etats, ac-
tions et r´ecompenses.
(c) Entraˆınement de l’Agent RL : Utiliser un algorithme d’apprentissage
par renforcement comme Q-learning ou Deep Q-learning pour en-
traˆıner l’agent. Simuler des transplantations pour que l’agent puisse
apprendre des diff´erentes situations.
Exemple d’Apprentissage par Renforcement
pour la S´election des Donneurs d’Organes
Voici un exemple de code Python pour appliquer l’apprentissage par ren-
forcement `a la s´election des donneurs d’organes :
1import numpy as np
2import gym
3from gym import spaces
4
5class O rg an Tr an sp la nt En v ( gym . Env ) :
6def _ _in it_ _ ( self ) :
7super ( O rga nTr an sp la nt Env , s el f ). _ _in it_ _ ()
8
5
1 / 6 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !