2026 - 01 - 14
Classical Machine Learning - cf slides
Entrée : Ensemble d’exemples étiquetés.
Objectif : Pouvoir attribuer ue étiquette à un nouvel exemple.
Apprentissage d’une fonction \(f\) à partir d’exemples. On ne pourra pas trouver \(f\) mais une hypothèse \(h\) parmi un ensemble \(\mathbb{H}\) d’hypothèses qui s’approche le plus de \(f\).
=> Apprentissage = problème de recherche dans un espace
Syllogisme : a : tout homme est mortel b : socrate est un homme c : socrate est mortel
Principe inductife ERM (Empirical Risk Minimisation) : On cherche la fonction de H minimisant le risque empirique (erreur sur les données d’entrainement)
MAIS : Over Fitting
Solution : Séparer jeu d’apprentissage & de test
Un règle de classification ou de décision \(h\) est une application de \(\mathbb{X}\) dans \(\mathbb{C}\), avec \(\mathbb{C}\) fini
On appelle erreur empirique le nombre d’erreur obtenue sur le nombre d’exemple considérés.
On peut s’intéresser aux matrices de confusions :
| O | C | |
|---|---|---|
| O | 9 | 1 |
| C | 1 | 11 |
-> Erreur empirique = \(\frac{1+1}{9+1+1+11} = 9\%\)
Cas d’application :
Validation croisée : On fait varier l’ensemble d’apprentissage / de tests, et on obtient l’erreur en moyennant les erreurs obtenues. Par exemple, on peut faire \(n\) variations, en prenant l’intervalle \([\frac{k}{n}, \frac{k+1}{n}]\) pour le \(k^e\) apprentissage. Dans ce cas, on obtient \(n\) classifieurs différents.
NB : En gros, on essaie d’évaluer la qualité de l’approche, plutôt que d’obtenir le meilleur classifieur possible.
Leave One Out : On garde un seul exemple pour les tests à chaque fois en faisant de la validation croisée. Ainsi, si on a au total \(N\) exemples, on va faire \(N\) validations croisées.
Entropie \(H(W)\) :
Pour une variable aléatoire \(W\)
prenant \(n\) valeurs distinctes
:
\(H(W) = - \sum_{w \in D_w} P(w) log( P(w)
)\)
Entropie conditionelle :
\(H(W | A) = \mathbb{E_A}[H(W | A)] = \sum_{a
\in D_A} H(W | a) P(a) = \sum_{a} P(a) \sum_{w} P(w | a) log (P(w |
a))\)
À chaque étape, on calcule l’entropie conditionée par chaque attribut restant. On discrimine selon l’attribut fournissant l’entropie la plus faible.
Autre critère :
Que faire en cas d’attributs continus (par exemple numériques) ? On fixe un certain seuil discriminant.
En pratique :
RQ : On garde l’exemple pour un potentiel usage futur.
PB : Biaisé vers les attributs avec une grande arrité (beaucoup de valeurs possibles), car on peut classifier plus facilement avec, et donc on peut plus facilement diminuer l’entropie.
Rapport de Gain : \(GR(W,A) = \frac{Gain(W,A)}{SplitInfo(W,A)} = \frac{H() - }{}\)
En maximisant cette métrique, on mitige ce pb.
Il reste encore un pb : On fait une séparation orthogonalement aux axes. Pas très opti dans certains cas… On peut utiliser des arbres obliques, mais c’est complexe et coûteux.
PB : Find \(theta_0\) and \(theta_1\) such that \(h_{theta} : x \mapsto theta_0 + theta_1 x\) approximate the best (for a certain distance)
Usually, we want to minimise the quadratic mean cost : \(\frac{1}{2} \sum_{i=1}^m (h_{theta} (x_i) - y_i) ^ 2\).
PB : Find \(\mathbf{theta}\) such that \(h_{\mathbf{theta}} : \mathbf{x} \mapsto \left< \mathbf{theta} | (1, \mathbf{x}) \right>\) approximate the best (for a certain distance)
(One can also note \(\mathbf{x}_0 = 1\))
Like linear regression, but we want to classify in 2 classes.
We define the sigmoid / logistic function :
\(g : z \mapsto \frac{1}{1+exp(-z)}\)
We then take the hypothesis : \(h_{\theta} (x) = g(\theta^T x)\).
Then, we can classify, according to the following decision boundary :
Learning : by minimising negative log likelihood (or binary cross enthropy).
Use binomial law for \(Y\).
Generalised sigmoid : \(\mathbb{P}(Y=k|x;theta) = \frac{\theta_k^T x}{\sum_{c=1}^K exp(\theta_c^T x)}\) (again, proba to be in a class)
Also named MaxEnt, softmax regression, multinomial logit, multiclass LR, cond MaxEnt model…
We were using a linear function basis for our search space. Use a bigger base for the search, for instance, polynomials functions \(\rightarrow\) polynomial regression.
But : no longer one unique solution ?
Method : gradient descent (cf stat course).
Idea : add a cost to the loss function (\(+ \lambda reg(\theta)\)), increasing in \(\theta\).
Loss function : Error on one sample.
Cost function : Average of loss function on every sample.
Objective function : Weighted sum of cost function and regularization.