De nombreux modèles de machine learning peuvent être classés en deux grandes catégories :
Génératifs
Discriminants
Comprendre cette différence est essentiel, car elle révèle l'approche fondamentale que chaque type de modèle adopte pour résoudre un problème.
Ça t'aidera à choisir quelle voie est la mieux adaptée aux caractéristiques de ton jeu de données.
Le visuel suivant illustre leurs différences :

Aujourd'hui, on va les décortiquer en détail.
1) Les modèles discriminants

Les modèles discriminants, comme leur nom l'indique, sont principalement axés sur l'apprentissage de frontières de décision qui séparent les différentes classes.
Mathématiquement, ils maximisent la probabilité conditionnelle P(Y|X), ce qui se lit ainsi : « Étant donné une entrée X, maximise la probabilité de l'étiquette Y. »
Ces modèles sont donc explicitement conçus pour les tâches de classification.
Exemples courants :
Régression logistique
Random Forest
Réseaux de neurones
Arbres de décision, etc.
2) Les modèles génératifs

Les modèles génératifs, eux, sont principalement axés sur l'apprentissage de la distribution conditionnelle par classe, comme illustré dans la figure ci-dessus.
Ils maximisent la probabilité jointe P(X, Y) en apprenant la distribution conditionnelle par classe P(X|Y) :

Exemples courants :
Naive Bayes
Analyse discriminante linéaire (LDA)
Modèles de mélange gaussien, etc.
On a déjà couvert les probabilités jointes et conditionnelles. Lis ce shot data si tu veux comprendre ce que c'est : Un guide visuel sur les probabilités conjointes, marginales et conditionnelles.
Comme les modèles génératifs apprennent la distribution sous-jacente des données, ils peuvent générer de nouveaux échantillons.

Ce n'est pas possible avec les modèles discriminants.
De plus, les modèles génératifs ont des propriétés discriminantes — c'est-à-dire qu'ils peuvent être utilisés pour des tâches de classification si nécessaire.

En revanche, les modèles discriminants n'ont pas de propriétés génératives.
Quiz : discriminant ou génératif ?
Prenons un exemple pour mieux comprendre.
Imagine que tu es un système de classification de langues.

Il y a deux façons de classifier des langues.
Apprendre chaque langue, puis classifier une nouvelle langue sur la base des connaissances acquises.
Identifier certains patterns distinctifs dans chaque langue sans vraiment l'apprendre. Une fois fait, classifier une nouvelle langue à partir de ces patterns.
Tu arrives à deviner lequel est génératif et lequel est discriminant ?
Réponse
La première approche est générative. En effet, tu as appris la distribution sous-jacente de chaque langue.
Autrement dit, tu as appris la distribution jointe P(Mots, Langue).

Et comme tu comprends la distribution sous-jacente, tu peux maintenant générer de nouvelles phrases, non ?
La deuxième approche est discriminante. Tu n'as appris que des patterns distinctifs propres à chaque langue.
Ça ressemble à ça :
Si tels mots apparaissent, c'est probablement la « Langue A ».
Si cet ensemble de mots apparaît, c'est probablement la « Langue B ».
Et ainsi de suite.

Autrement dit, tu as appris la distribution conditionnelle P(Langue|Mots).
Est-ce que tu peux générer de nouvelles phrases ici ?
Non, n'est-ce pas ?
Voilà la différence entre les modèles génératifs et discriminants.
Par ailleurs, la description ci-dessus pourrait te donner l'impression que les modèles génératifs sont plus polyvalents — mais ce n'est pas vrai.
Les modèles génératifs ont leurs propres complications.
Par exemple, ils nécessitent généralement plus de données que les modèles discriminants.
Relie ça à l'exemple de classification de langues.
Imagine la quantité de données dont tu aurais besoin pour apprendre toutes les langues (approche générative) versus la quantité nécessaire pour identifier quelques patterns distinctifs (approche discriminante).
En règle générale, les modèles discriminants surpassent les modèles génératifs sur les tâches de classification.
Les modèles discriminants peuvent eux-mêmes être divisés en deux sous-catégories, qu'on verra dans le prochain post.
Envie d'aller plus loin ? DataXp t'attend : formations et parcours pour progresser en data science, machine learning et IA.
👉 En attendant, à toi de jouer : quels autres problèmes rencontre-t-on lors de l'entraînement de modèles génératifs ?

