Vous êtes sur la page 1sur 39

Initiation au Machine

Learning
Master AFM

Pr. Mouad BANANE


Organisation

 Cours

 Quiz

 Travaux pratiques

Initiation au Machine Learning


Introduction
générale

Commencer un premier
projet de Machine Learning

Appliquer l’apprentissage
non supervisé

Appliquer l’apprentissage
supervisé
Intelligence artificielle
AIMachine Learning
Deep Apprentissage
automatique
Learning Apprentissage profond IA
Initiation au Machine Learning 4
Intelligence Machine Deep Learning
Artificielle Learning Réseaux de neurones avec
méthodes statistiques qui de nombreuses couches qui
toute technique permettant permettent aux machines apprennent les
aux machines d'imiter « d'apprendre » des tâches à représentations et les
l'intelligence humaine partir de données sans tâches directement à partir
programmation explicite des données

Initiation au Machine Learning 5


C’est quoi le Machine Learning ?

Machine Learning = Apprentissage Automatique


Le Machine Learning est un type d'intelligence artificielle qui confère aux
ordinateurs la capacité d’apprendre sans être explicitement programmés.

Le Machine Learning est explicitement lié au Big Data, étant donné que pour
apprendre et se développer, les ordinateurs ont besoin de flux de données à
analyser, sur lesquelles s’entraîner.

De ce fait, le Machine Learning, issu par essence du Big Data, a précisément


besoin de ce dernier pour fonctionner.

Utiliser des données pour répondre aux questions

Entrainement Prédiction 6
Plus de données, plus de questions, de meilleures
réponses

Les algorithmes d'apprentissage automatique Applications du monde réel


trouvent des modèles naturels dans les données Avec l'essor du Big Data, l'apprentissage automatique
qui génèrent des informations et qui aident à est devenu particulièrement important pour résoudre
prendre de meilleures décisions et prédictions. des problèmes dans des domaines comme ceux-ci:
• Finance, pour la notation de crédit et le trading
Ils sont utilisés chaque jour pour prendre des
• Traitement d'image et vision par ordinateur, pour la
décisions critiques en matière de diagnostic
reconnaissance faciale, la détection de mouvement et la
médical, de négociation d'actions, de prévision de
détection d'objets
la charge énergétique, etc.
• Biologie, pour la détection des tumeurs, la découverte
de médicaments et le séquençage de l'ADN
Les sites multimédias s'appuient sur
• Production d'énergie, pour la prévision des prix et des
l'apprentissage automatique pour passer des
charges
millions d'options afin de recommander des
• Automobile, aérospatiale, pour la maintenance
chansons ou des films.
prédictive
• Traitement du langage naturel
Les magasins et les sites de commerce l'utilisent
pour mieux comprendre le comportement d'achat
de leurs clients.

Initiation au Machine Learning 7


Plus de données, plus de questions, de meilleures
réponses
Exemples
• La voiture autonome de Google

• Classification des emails dans Gmail

• Moteur de recherche Google

• La traduction temps réel de Skype

• La reconnaissance vocale Siri d’Apple

• Détection de fraude dans le monde de la banque

• La reconnaissance faciale

Initiation au Machine Learning 8


Comment fonctionne le Machine Learning ?

Lancer !
Approche
traditionnelle 🙂
Etudier le
Définir les règles Evaluation
problème


Analyser les
erreurs

Initiation au Machine Learning 9


Comment fonctionne le Machine Learning ?

Approche Machine
Learning Lancer !

Données
🙂
Etudier le Apprentissage Evaluer la
problème automatique solution


Analyser les
erreurs

Initiation au Machine Learning 10


Les étapes à réaliser pour mener à bien un projet
de Machine Learning

1 - Définition du problème à résoudre

2 - Préparer et nettoyer les données

3 - Analyser, explorer les données

4 - Choisir un modèle d’apprentissage

5 - Visualiser les résultats, et ajuster ou modifier le modèle d’apprentissage

Initiation au Machine Learning 11


Comment fonctionne le Machine Learning ?

L'apprentissage automatique utilise deux types de


techniques: l'apprentissage supervisé, qui forme un modèle
sur des données d'entrée et de sortie connues afin qu'il
puisse prédire les futures sorties, et l'apprentissage non
supervisé, qui trouve des modèles cachés ou des structures
intrinsèques dans les données d'entrée.
Apprentissage
non supervisé
Clustering
regrouper et interpréter
les données en se
basant uniquement sur
les données d'entrée
MACHINE
LEARNING Classification
Apprentissage
supervisé
Développer un
modèle prédictif basé
sur les données Régression
d'entrée et de sortie

Initiation au Machine Learning 12


Apprentissage supervisé

L'objectif de l'apprentissage automatique supervisé est de Utiliser l'apprentissage supervisé pour prédire les
construire un modèle qui effectue des prédictions basées sur
des preuves en présence d'incertitude. Un algorithme crises cardiaques
d'apprentissage supervisé prend un jeu connu de données
Supposons que les cliniciens veuillent prédire si quelqu'un aura
d'entrée et de réponses connues aux données (sortie) et
une crise cardiaque d'ici un an. Ils ont des données sur les
entraîne un modèle pour générer des prédictions
patients précédents, y compris l'âge, le poids, la taille et la
raisonnables pour la réponse aux nouvelles données.
tension artérielle. Ils savent si les patients précédents ont eu des
crises cardiaques dans l'année. Le problème est donc de
L'apprentissage supervisé utilise des techniques de
combiner les données existantes dans un modèle qui peut
classification et de régression pour développer des modèles
prédire si une nouvelle personne aura une crise cardiaque d'ici
prédictifs.
un an.
• Les techniques de classification prédisent des réponses discrètes, par
exemple, si un e-mail est authentique ou un spam, ou si une
tumeur est cancéreuse ou bénigne. Les modèles de
classification classent les données d'entrée en catégories. Les
applications typiques incluent l'imagerie médicale, la
reconnaissance vocale et la notation de crédit.

• Les techniques de régression prédisent des réponses continues - par


exemple, des changements de température ou des
fluctuations de la demande d'énergie. Les applications
typiques incluent la prévision de la charge électrique et le
trading.

Initiation au Machine Learning 13


Apprentissage supervisé

Initiation au Machine Learning 14


Apprentissage supervisé

Initiation au Machine Learning 15


Résumé

• L'apprentissage automatique (en anglais Machine Learning) est


un type d'intelligence artificielle qui confère aux ordinateurs la
capacité d’apprendre sans être explicitement programmés.

• Il consiste en la mise en place d’algorithmes ayant pour objectif


d’obtenir une analyse prédictive à partir de données, dans un but
précis.

• Les algorithmes de Machine Learning utilisent donc nécessairement


une phase dite d’apprentissage.

Initiation au Machine Learning 16


Résumé

Les algorithmes d'apprentissage peuvent se catégoriser selon le mode


d'apprentissage qu'ils emploient :
1. Apprentissage supervisé
les classes sont prédéterminées et les exemples connus, le
système apprend à classer selon un modèle de classement.

• Le processus se passe en deux phases. Lors de la première


phase (dite d'apprentissage), il s'agit de déterminer un modèle
des données étiquetées.
• La seconde phase (dite de test) consiste à prédire l'étiquette
d'une nouvelle donnée, connaissant le modèle préalablement
appris.

Initiation au Machine Learning 17


Résumé

2. Apprentissage non supervisé


• Quand le système ou l'opérateur ne disposent que d'exemples,
mais non d'étiquettes, et que le nombre de classes et leur nature
n'ont pas été prédéterminés.

• L'algorithme doit découvrir par lui-même la structure plus ou


moins cachée des données. Le partitionnement de données,
data clustering en anglais, est un algorithme d'apprentissage
non supervisé.

Initiation au Machine Learning 18


Résumé(Apprentissage supervisé)

• Régression: la variable de sortie est continue.

• Classification: la variable de sortie prend ses valeurs dans des


classes.

Initiation au Machine Learning 19


Résumé(Apprentissage supervisé)

• Les données sont déjà « labélisées »

• L’algorithme permet de trouver la loi déterminant l’output en


fonction des inputs.

• Random Forest, KNN, SVM, Régression linéaire, Régression


Logistique…

Initiation au Machine Learning 20


Résumé(Apprentissage supervisé)

Initiation au Machine Learning 21


Résumé(Apprentissage non supervisé)

• Aucun label n’est fourni à l’algorithme

• Il doit découvrir la structure caractéristique de l’input sans


assistance humaine

Initiation au Machine Learning 22


Résumé(Apprentissage non supervisé)

Initiation au Machine Learning 23


Rappel

Initiation au Machine Learning 24


Rappel

Initiation au Machine Learning 25


Rappel

Initiation au Machine Learning 26


Arbres de décision
Arbres de décision

• Un arbre de décision permet d’expliquer une variable cible à partir


d’autres variables dites explicatives.

• Du point de vue mathématique : soit une matrice X avec m


observations et n variables, associée à un vecteur Y à expliquer : il
faut trouver une relation entre X et Y.

• L’algorithme va chercher à partitionner les individus en groupes


d’individus les plus similaires possibles du point de vue de la
variable à prédire.

Initiation au Machine Learning 28


Arbres de décision

Initiation au Machine Learning 29


Arbres de décision - Exemple

• Quelle est votre chance d’acceptation d’un crédit à la banque ?


• Le schéma suivant permet de comprendre la probabilité
d’acceptation d’un crédit bancaire.

Initiation au Machine Learning 30


Arbres de décision

• Parmi ces dossiers, 1427 seront acceptés (soit 64,8%) et 774 seront
refusés (soit 35,2%). La variable explicative qui sépare le mieux les
dossiers acceptés (notre variable cible) des autres dossiers est l’âge du
client. Ainsi, chez 942 clients âgés entre 18 et 42 ans (42,8% de la totalité
des clients), le taux d’acceptation de crédit atteint 77,9% (soit 734
clients) alors que chez les 33 clients âgés de 63 ans et +, le taux
d’acceptation de crédit n’est que de 12,1%. La meilleure séparation de la
population des clients âgés entre 18 et 42 ans (Nœud 1) se fait en
fonction du revenu. Vous le voyez, les 459 clients ayant un revenu net
annuel supérieur à 55K euros ont un taux d’acceptation de crédit de
89,5%.
• Chez les clients âgés entre 43 ans et 62 ans, c’est le sexe qui est la
variable la plus explicative de l’acceptation d’un crédit. Ainsi, chez les
femmes, le taux d’acceptation d’un crédit est de 62,1% contre 48,4% pour
les hommes de cette même tranche d’âge.

Initiation au Machine Learning 31


KNN

K plus proches voisins= K-Nearest Neighbors


KNN

• KNN est un algorithme de Machine Learning qui appartient à la classe


des algorithmes d’apprentissage supervisé simple et facile à mettre en
œuvre
• KNN peut être utilisé pour résoudre les problèmes de classification et de
régression
• KNN: le plus proches voisins, le principe de ce modèle consiste à choisir
les k données les plus proches du point étudié afin d’en prédire sa valeur.

Initiation au Machine Learning 33


KNN TP - Les données et la problématique

• Jeu de données que nous allons utiliser.


C'est un dataset très célèbre, appelé
MNIST. Il est constitué d'un ensemble de
70000 images 28x28 pixels en noir et blanc
annotées du chiffre correspondant (entre 0
et 9).

• L'objectif de ce jeu de données était de


permettre à un ordinateur d'apprendre à
reconnaître des nombres manuscrits
automatiquement (pour lire des chèques
par exemple). Ce dataset utilise des
données réelles qui ont déjà été pré-
traitées pour être plus facilement utilisables
par un algorithme.

Initiation au Machine Learning 34


KNN TP - Les données et la problématique
• Objectif sera donc d'entraîner un modèle qui sera capable de reconnaître les chiffres
écrits sur ce type d'images.
• Dataset est téléchargeable directement à partir d'une fonction scikit-learn.

• L'objet mnist contient deux entrées principales, data et target. On peut les
afficher :

• data contient les images sous forme de tableaux de 28 x 28 = 784 couleurs de pixel
en niveau de gris, c'est-à-dire que la couleur de chaque pixel est représentée par un
nombre entre 0 et 16 qui représente si celle-ci est proche du noir ou pas (0 = blanc,
16 = noir).
• target qui contient les annotations (de 1 à 9) correspondant à la valeur "lue" du
chiffre

Initiation au Machine Learning 35


KNN TP

• Nous séparons le jeu de données en training set et testing set, on a appelé les
images d'exemple "X" et les annotations cibles "y" :

• On peut créer un premier classifieur 3-NN, c'est-à-dire qui prend en compte les 3
plus proches voisins pour la classification. Pour cela, on va utiliser l'implémentation
de l'algorithme qui existe dans la librairie scikit-learn :

• l'algorithme ici n'effectue aucune optimisation mais va juste sauvegarder toutes les
données en mémoire. C'est sa manière d'apprendre en quelque sorte.
• Testons à présent l’erreur de notre classifieur. La méthode score effectue
exactement ça, tester les performances de prédiction d'un classifieur, il renvoie ainsi
le pourcentage de prédiction véridique trouvée par le classifieur.

Initiation au Machine Learning 36


KNN TP - Optimisation du score sur les données test
• Pour trouver le k optimal, on va simplement tester le modèle pour tous les k de 2 à
15, mesurer l’erreur test et afficher la performance en fonction de k :

• Comme on peut le voir, le k-NN le plus performant est celui pour lequel k = 4. On
connaît donc notre classifieur final optimal : 4-NN. Ce qui veut dire que c'est celui qui
classifie le mieux les données, et qui donc dans ce cas précis reconnaît au mieux les
nombres écrits à la main.

• À titre d'exemple, vous pouvez afficher les prédictions du classifieur sur quelques
données

Initiation au Machine Learning 37


KNN TP - Optimisation du score sur les données test

Initiation au Machine Learning 38

Vous aimerez peut-être aussi