Bigot

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 48

Mathématiques et IA

Les mathématiques au coeur de l’Intelligence


Artificielle pour la science des données
massives

Jérémie Bigot

Institut de Mathématiques de Bordeaux


Université de Bordeaux

MidisMath de l’UFMI

Février 2020
Mathématiques et IA

Un petit sondage...

Qui a déjà entendu parler (dans les médias) de :

Intelligence Artificielle (IA) ?

Big Data (Données Massives) ?


Mathématiques et IA

Un petit sondage...

Qui a déjà entendu parler :

des mathématiques au coeur des méthodes qui font le succès de


l’IA (telle que médiatisée aujourd’hui) ?
Mathématiques et IA

Un peu de terminologie... pour se mettre d’accord ?

Mais c’est quoi l’IA ?


Mathématiques et IA

Reconnaissance automatique d’images 1

1. Krizhevsky, A., Sutskever, I., and Hinton, G. E. (2012)


Mathématiques et IA

Un peu de terminologie... pour se mettre d’accord ?

Distinction entre IA forte et IA faible cf. Wikipedia 1

“L’IA faible est une intelligence artificielle non-sensible qui se


concentre sur une tâche précise”
“Tous les systèmes actuellement existants sont considérés comme
des intelligences artificielles faibles”

Cet exposé (et beaucoup des références actuelles dans les


médias) = IA faible

IA faible = apprentissage automatique à partir d’exemples en très


grand nombre

1. fr.wikipedia.org/wiki/Intelligence_artificielle_faible
Mathématiques et IA

Classification d’images - ILSVRC Challenge (2010) 1

apprentissage : 1.2 million d’images labellisées (1000 classes)


test : 150 000 images

1. Krizhevsky, A., Sutskever, I., and Hinton, G. E. (2012)


Mathématiques et IA

Intelligence artificielle et génération d’images


Base de données d’images de célébrités : CelebA Dataset 1

1. http://mmlab.ie.cuhk.edu.hk/projects/CelebA.html
Mathématiques et IA

Intelligence artificielle et génération d’images


Question : peut-on apprendre à partir d’un ensemble de visages à
en générer aléatoirement de nouveaux ?
Mathématiques et IA

Intelligence artificielle et génération d’images


Réponse : solution proposée par des chercheurs de la société
Nvidia 1

1. https://research.nvidia.com/publication/2017-10 Progressive-Growing-of
Mathématiques et IA

Intelligence artificielle et génération d’images


Question : quelles sont les vraies images et celles générées
aléatoirement 1 ?

1. https://research.nvidia.com/publication/2017-10 Progressive-Growing-of
Mathématiques et IA

Intelligence artificielle et génération d’images


Réponse - 1ère ligne : génération aléatoire et lignes 2 à 5 : vraies
images (les plus proches de l’image générée) 1 !

1. https://research.nvidia.com/publication/2017-10 Progressive-Growing-of
Mathématiques et IA

Succès récents et diffusion de l’IA

Raisons du succès de l’IA (faible)

Raffinement des méthodes d’apprentissage

Moyens de calculs

Taille des bases d’apprentissage

Popularisation par librairies de calcul facilement utilisables


Mathématiques et IA
Mathématiques de l’IA

1 Mathématiques de l’IA

2 Modèles de règle de classification

3 Apprentissage des paramètres d’un réseau de neurones

4 Les métiers de la science des données


Mathématiques et IA
Mathématiques de l’IA

Cet exposé ?

Les mathématiques en Licence à l’Université de Bordeaux à la base


des méthodes d’apprentissage de l’IA ?

Concepts enseignés en Licence à l’UB (bases pour l’IA)

1 fonctions de plusieurs variables à valeurs réelles


2 géométrie euclidienne (Pythagore encore et toujours !)
3 calcul vectoriel et matriciel
4 continuité, dérivabilité (différentiabilité), composition de fonctions
5 convergence et limite des suites
6 variables aléatoires, probabilités et statistique

Débouchés à la portée des jeunes diplômés en mathématiques


L’offre croissante des métiers en science des données !
Mathématiques et IA
Mathématiques de l’IA

Eléments de modélisation mathématique


Cadre de base - Apprentissage supervisé à 2 classes en traitement
d’images :

soit X1 , . . . , Xn un ensemble d’images appartenant à 2 classes


possibles notées 0 ou 1
on connait les classes des images notées Y1 , . . . , Yn avec
Yi ∈ {0, 1} pour 1 ≤ i ≤ n.

Exemple - Détection de la présence d’une éolienne dans une image


satellite 1

···
(X1 , Y1 = 1), (X2 , Y2 = 0) · · · (Xn−1 , Yn−1 = 1), (Xn , Yn = 0)
1. https ://defi-ia.insa-toulouse.fr/
Mathématiques et IA
Mathématiques de l’IA

Eléments de modélisation mathématique

Représentation mathématique d’une image - chaque image est


considéré comme un grand vecteur de dimension d dont les éléments
sont les valeurs prises par les pixels

Données - ensemble de couples (Xi , Yi ) ∈ Rd × {0, 1} pour 1 ≤ i ≤ n,


dit ensemble d’apprentissage

Problématique - determiner la classe d’une nouvelle image X ∈ Rd ?

Principe - trouver une fonction f : Rd → [0, 1] tel que f (X) représente


la probabilité que X appartiennent à la classe 1.

Terminologie - la fonction f est appelée règle de classification


Mathématiques et IA
Mathématiques de l’IA

Principes de base de l’apprentissage automatique

Principe - trouver une fonction f : Rd → [0, 1] tel que f (X) représente


la probabilité que X appartiennent à la classe 1.

Choix d’une méthode d’apprentissage - recherche d’une fonction 1


dépendant d’un ensemble de paramètres θ ∈ Rp

f : Rd × Rp → [0, 1]
(x, θ) 7→ f (x, θ)

Recherche des meilleurs paramètres - minimisation de l’erreur


d’apprentissage
n
1X 2
minp F(θ) avec F(θ) = (Yi − f (Xi , θ))
θ∈R n
i=1

1. fonctions de plusieurs variables à valeurs réelles


Mathématiques et IA
Modèles de règle de classification

1 Mathématiques de l’IA

2 Modèles de règle de classification

3 Apprentissage des paramètres d’un réseau de neurones

4 Les métiers de la science des données


Mathématiques et IA
Modèles de règle de classification

Méthode d’apprentissage - brique de base

Choix d’une méthode d’apprentissage - séparation de classes par


un hyperplan 2

2. géométrie euclidienne
Mathématiques et IA
Modèles de règle de classification

Méthode d’apprentissage - brique de base


Choix d’une méthode d’apprentissage - séparation de classes par
un hyperplan 2


Equation d’un hyperplan x ∈ Rd : hx, wi + b = 0 où
θ = (w, b) ∈ Rd × R sont les paramètres de l’hyperplan (ici d = 2)
2. géométrie euclidienne
Mathématiques et IA
Modèles de règle de classification

Méthode d’apprentissage - brique de base


Choix d’une méthode d’apprentissage - séparation de classes par
un hyperplan 2


Points au-dessus de l’hyperplan x ∈ Rd : hx, wi + b > 0

Points au-dessous de l’hyperplan x ∈ Rd : hx, wi + b < 0
2. géométrie euclidienne
Mathématiques et IA
Modèles de règle de classification

Méthode d’apprentissage - brique de base


Choix d’une méthode d’apprentissage - séparation de classes par
un hyperplan 2

Règle de classification f (x, θ) = σ (hx, wi + b) avec σ(z) = 11R+ (z) ou


1
σ(z) = 1+exp(−z) avec θ = (w, b) ∈ Rd × R
2. géométrie euclidienne
Mathématiques et IA
Modèles de règle de classification

Construction d’un réseau de neurones


Neurone de base : modèle du Perceptron (Rosenblatt, 1957)

Source : https://stats385.github.io/

Combinaison linéaire de x ∈ Rd avec ω = (ω1 , . . . , ωd ) ∈ Rd et b ∈ R


Fonction non-linéaire d’activation f (z) = σ(z) = 11R+ (z)
Mathématiques et IA
Modèles de règle de classification

Construction d’un réseau de neurones


Neurone de base : modèle du Perceptron (Rosenblatt, 1957)

Source : https://stats385.github.io/

Combinaison linéaire de x ∈ Rd avec ω = (ω1 , . . . , ωd ) ∈ Rd et b ∈ R


1
Autre choix σ(z) = 1+exp(−z) (sigmoı̈de) ou σ(z) = max(0, z) (ReLU)
Mathématiques et IA
Modèles de règle de classification

Apprentissage par combinaison de briques de base

Cas de données non-linéairement séparables ?


Mathématiques et IA
Modèles de règle de classification

Apprentissage par combinaison de briques de base

Limitations d’une règle de classification basée sur un seul


hyperplan !
Mathématiques et IA
Modèles de règle de classification

Construction d’un réseau de neurones


Utilisation de plusieurs hyperplans - Neurones cachés !

Source : https://stats385.github.io/

Ecriture condensée : x1 = σ1 (W1 x0 + b1 ), avec x0 = x, où


σ1 : Rd1 → Rd1 est une fonction non-linéaire entrée par entrée
W1 ∈ Rd×d1 (poids) b1 ∈ Rd1 (biais)
θ = (W1 , b1 ) : paramètres du réseau
Mathématiques et IA
Modèles de règle de classification

Construction d’un réseau de neurones


Combinaisons linéaires des “décisions de chaque hyperplan” !

Source : http://neuralnetworksanddeeplearning.com/index.html

Ecriture condensée : f (x, θ) = σ(W2 σ1 (W1 x + b1 ) + b2 ),


avec W1 ∈ Rd×d1 , b1 ∈ Rd1 , W2 ∈ Rd1 ×1 , b2 ∈ R et θ = (W1 , b1 , W2 , b2 )
Mathématiques et IA
Modèles de règle de classification

Construction d’un réseau de neurones


Perceptron multi-couches : calcul matriciel + composition de fonctions

Source : https://stats385.github.io/

Ecriture condensée - entrée x0 = x ∈ Rd , et pour ` = 1, . . . , L,


faire x` = σ` (W` x`−1 + b` ) avec σL fonction sigmoı̈de.
Mathématiques et IA
Modèles de règle de classification

Construction d’un réseau de neurones


Perceptron multi-couches : calcul matriciel + composition de fonctions

Source : http://neuralnetworksanddeeplearning.com/index.html

Réseau de neurones profonds : “nombreuses” couches cachées


Mathématiques et IA
Modèles de règle de classification

Apprentissage par combinaison de briques de base


Réseau de neurones à deux couches cachées (sortie dans [0, 1]) :
entrées d = 2
2 couches cachées d1 = 4 et d2 = 2 (activation par tangente
hyperbolique σ1 (z) = σ2 (z) = 1−exp(2z)
1+exp(2z) )
Mathématiques et IA
Modèles de règle de classification

Apprentissage par combinaison de briques de base


Réseau de neurones à deux couches cachées (sortie dans [0, 1]) :
entrées d = 2
2 couches cachées d1 = 4 et d2 = 2 (activation par tangente
hyperbolique σ1 (z) = σ2 (z) = 1−exp(2z)
1+exp(2z) )
Mathématiques et IA
Apprentissage des paramètres d’un réseau de neurones

1 Mathématiques de l’IA

2 Modèles de règle de classification

3 Apprentissage des paramètres d’un réseau de neurones

4 Les métiers de la science des données


Mathématiques et IA
Apprentissage des paramètres d’un réseau de neurones

Principes de base de l’apprentissage automatique


Réseau de neurones comme méthode d’apprentissage
choix d’une fonction f (x, θ) dépendant d’un ensemble de
paramètres θ ∈ Rp
f est définie (récursivement) par composition d’applications
affines et d’applications non-linéaires

f (x, θ) = σL (WL xL−1 + bL ) ∈ [0, 1],

avec x` = σ` (W` x`−1 + b` ) pour ` = 1, . . . , L − 1 et x0 = x ∈ Rd

Recherche des meilleurs paramètres - minimisation de l’erreur


d’apprentissage
n
1X 2
minp F(θ) avec F(θ) = (Yi − f (Xi , θ))
θ∈R n
i=1

Question : comment trouver un minimum de F ?


Mathématiques et IA
Apprentissage des paramètres d’un réseau de neurones

Vers les mathématiques computationnelles

Réponse : un minimum θ∗ de F vérifie

∇(F(θ∗ )) = 0 (1)

où  
∂ ∂
∇(F(θ)) = F(θ), · · · , F(θ)
∂θ1 ∂θp
est le gradient de F i.e. le vecteur dont les coordonnées sont les
dérivées partielles de F 4

Question : comment résoudre l’équation (2) ?

Solution : méthode numérique basée sur l’algorithmique !

4. continuité, dérivabilité (différentiabilité), composition de fonctions


Mathématiques et IA
Apprentissage des paramètres d’un réseau de neurones

Vers les mathématiques computationnelles

Réponse : un minimum θ∗ de F vérifie

∇(F(θ∗ )) = 0 (1)

où  
∂ ∂
∇(F(θ)) = F(θ), · · · , F(θ)
∂θ1 ∂θp
Solution : ré-écriture de l’équation (2) sous la forme

θ∗ = G(θ∗ ) avec G(θ) = θ − γ∇(F(θ)) et γ > 0,

et donc θ∗ est un point fixe de G !

Algorithme itératif 5 : θ(k+1) = G(θ(k) ) = θ(k) − γ∇(F(θ(k) )) pour


k = 0, 1, 2, . . ., et on considère que θ(K) ≈ θ∗ pour K assez grand !

5. convergence et limite des suites - Algorithme de descente du gradient


Mathématiques et IA
Apprentissage des paramètres d’un réseau de neurones

Vers les mathématiques computationnelles


Réponse : un minimum θ∗ de F vérifie

∇(F(θ∗ )) = 0 (2)

où  
∂ ∂
∇(F(θ)) = F(θ), · · · , F(θ)
∂θ1 ∂θp
1
Pn 2
et F(θ) = n i=1 (Yi − f (Xi , θ)) .

Algorithme itératif 5 : θ(k+1) = G(θ(k) ) = θ(k) − γ∇(F(θ(k) )) pour


k = 0, 1, 2, . . ., et on considère que θ(K) ≈ θ∗ pour K assez grand !

Etape fondamentale pour les réseaux de neurones : possibilité


d’un calcul rapide du gradient de θ 7→ f (Xi , θ) (pour déterminer ∇F(θ))
à l’aide de la formule de dérivation des fonctions composées !
5. convergence et limite des suites - Algorithme de descente du gradient
Mathématiques et IA
Apprentissage des paramètres d’un réseau de neurones

Vers les mathématiques computationnelles

Utilisation de Python et des libraires TensorFlow et Keras


Mathématiques et IA
Apprentissage des paramètres d’un réseau de neurones

Vers les mathématiques computationnelles

Utilisation de Python et des libraires TensorFlow et Keras


Mathématiques et IA
Apprentissage des paramètres d’un réseau de neurones

Hasard et modèles stochastiques au coeur de l’IA 6


Deux sources de hasard (processus aléatoires) se glissent dans
l’apprentissage d’une règle de classification :

A chaque itération, la mise à jour de θ(k) vers θ(k+1) se base sur


une sous partie Ik des données, choisie de façon aléatoire,
X 2
θ(k+1) = θ(k) − γ ∇Fi (θ), avec Fi (θ) = (Yi − f (Xi , θ))
i∈Ik

afin de limiter le coût calculatoire sur des données massives

Les données de l’ensemble d’apprentissage (X1 , Y1 ), . . . , (Xn , Yn )


sont des réalisations d’un couple de variables aléatoires et donc
la règle de classification par minimisation de l’erreur
d’apprentissage est également un objet de nature aléatoire !

6. variables aléatoires, probabilités et statistique


Mathématiques et IA
Apprentissage des paramètres d’un réseau de neurones

Complexité des réseaux de neurones profonds


Classification d’images - ILSVRC Challenge (2010) 1
apprentissage : 1.2 million d’images labellisées (1000 classes)
test : 150 000 images

1. Krizhevsky, A., Sutskever, I., and Hinton, G. E. (2012)


Mathématiques et IA
Apprentissage des paramètres d’un réseau de neurones

Complexité des réseaux de neurones profonds

Deep Neural Network AlexNet 1

Quelle compréhension des décisions prises par l’IA ?

1. https://www.learnopencv.com/understanding-alexnet/
Mathématiques et IA
Les métiers de la science des données

1 Mathématiques de l’IA

2 Modèles de règle de classification

3 Apprentissage des paramètres d’un réseau de neurones

4 Les métiers de la science des données


Mathématiques et IA
Les métiers de la science des données

Ressources documentaires
https://www.sfds.asso.fr/fr/group/formations_et_
metiers/470-zoom_sur_les_metiers/
- Brochure sur les métiers des mathématiques et de l’informatique
(ONISEP / SFDS)

- Brochure sur les métiers de la statistique (ONISEP / SFDS)


Mathématiques et IA
Les métiers de la science des données

Ressources documentaires

Le métier de Data Scientist !


Mathématiques et IA
Les métiers de la science des données

Ressources documentaires

Le métier de Data Scientist !


Mathématiques et IA
Les métiers de la science des données

Votre avis nous intéresse !

Les mathématiques en Licence à l’Université de Bordeaux à la base


des méthodes d’apprentissage de l’IA !

Etes-vous convaincu ?

Merci de votre attention !

Vous aimerez peut-être aussi