This commit is contained in:
JOLIMAITRE Matthieu 2024-02-26 15:36:47 +01:00
commit 96ca9fecd3
6 changed files with 769 additions and 0 deletions

233
ia/02_intro.md Normal file
View file

@ -0,0 +1,233 @@
# modèles de régression et classification
## regression linéaire
Déterminer une relation linéaire entre l'évolution de deux variables.
- est-ce que la distance parcourue dans une certaine cathégorie de véhicules routiers ets affectée par le prix de l'essence ?
- est-ce que le niveau de cholesterol est affecté psi un individu suit une diète ? est-ce que d'autres variables entrent e ligne de compte ( age, genre ) ?
### objectifs
- Technique statistique objective pour synthétiser l'information disponiable.
- On cherche un modèle parcimonieux.
- Simplification, on cherche un modèle plus simple pour des performances comparables.
### spécifications
Le choix d'un modèle est guidé par des considération indiquant des relations existantes entre les valeurs
> #### exemple
> Loi de newton dans un système
Souvent, le modèle est inconnu mais nous cherchons à trouver une approximation fiable.
> #### exemple
> Relation entre le revenus par population des pays et leur taux de natalité
### Jeu de données de forbes
Principe : Substituer la lecture d'une grandeur par la lecture d'une autre grandeur et chercher la valeur de la grandeur initiale par proportionnalité.
Démarche : constituer un ensemble de relevés des grandeurs à mettre en relation, puis approximer la relation entre les évolutions dans cet ensemble et estimer l'erreur.
> #### historiquement
> Lire la pression de l'air dans un milieu en y faisant boullir de l'eau, a servi à trouver la relation entre l'haltitude et la pression de l'air.
## Apprentissage suppervisé
Tâche de classification : entrainer un modèle à catégoriser des entrées dans une classe de donnée après un entrainement sur des entrées étiquetées.
### hypothèse
Il existe une fonction f : observation -> étiquette de catégorie
f est inconnue, nous faisons des hypothèses sur sa forme
Nous cherchons les paramètres de la forme de f
### Approche
- Espace d'entré X, espace de sortie Y
- variables aléatoires (x, y) e X × Y, suivant une loie inconnue P
- données D_n = { x_i,y_i } observations de variables respectant P
trouver une fonction f : X -> Y qui décrit Y en fonction de X en minimisant l'erreur théorique
risque R : (f) : E_p[L(X, Y, f)]
avec :
- L(X, Y, f) une fonction de perte, quadratique pour une loi linéaire
> note
> on ne peut pas évaluer R(f) car c'est le risque d'une loi inconnue
Chercher des alternatives à f, minimisant le risque
- f_D_e = arg min
Régularisation : pénaliser la complexité à travers reg(f) ??
- f_D_e = argmin [ R_d_e(f) + reg(f) ]
Minimisation du risque structurel
- séquence F_i, i e N, de modèles à capacité crossante.
### Composantes du risque
- Risque résiduel
- présent en cas de bruit
- la relation X -> Y n'est pas une fonctiont déterministe
- Erreur d'approximation
- présent si le modème n'est pas bien choisi par rapport à la relation réelle
- Erreur d'estimation
- présent si les relevés sont faites d'une manière imparfaite
- proportionnelle à la taille et l'amplitude de l'échantillon
- Élargir F
- Baisse l'erreur d'approximation.
- Augmente l'erreur d'estimation.
> note
> - le risque empirique doit avoir tendance à augmenter avec la taille de l'échantillon
> - le risque ??? doit avoir tendance à diminuer
> - idéalement, nous cherchons une convergence entre les deux
### Dimension de vapnik Chervonenkis
avec un échangillon E { x_i } dans R^n
- il y a 2^n façons de séparer en 2 sous-échantillon (grouper en deux catégories)
- un ensemble F de fonction f classifiant un x dans une de deux cathégories
- F pulvérise E si elle classifie tous les éléments de E
- F est dit de VC-dimension si, pour un h donnée
- F pulvérise un échantillon de h vecteurs
- F ne pulvérise pas d'échantillon de h+1 vecteurs
#### Théorème
la minimisation du risque est cohérente uniquement si la VC-dimension de F est finie.
#### Illustration
dans un plan R^2,
```
|
| o
|
| x o
-|----------
|
```
Pour toute catégorisation de trois points, il existe une droite capable de séparer tous les points.
L'ensemble de ces droites pulvérise l'ensemble de 3 points.
```
|
| o x
|
| x o
-|----------
|
```
Il n'existe aucune droite catégorisant les points `o` et les points `x`.
L'ensemble des droites ne pulvérise pas les ensembles de 4 points.
### Ensembles de donnée de l'apprentissage
Bases de donnée pour l'apprentissage
- éntrées étiquetées.
- échantillonées de manière représentative.
- trois bases utiles
- base d'apprentissabe : utilisé pour optimiser les paramètres du modèle avec certains hyper-paramètres.
- base de validation : utilisé pour faire un choix des hyper-paramètres du modèle.
- base de test : utilisé pour évaluer la fiabilité du modèle.
### arbre de décision
Dans un modèle de catégorisation à plusieurs paramètres,
Pour catégoriser une entrée, nous pouvons hiérarchiser les parapètres et prendre des décisions de classification successives
organisées en arbre en fonction d'un seul paramètre à la fois jusqu'à une catégorisation.
```
[ condition 1 ]
/ \
True False
/ \
( CAT_1 ) [ condition 2 ]
/ \
True False
/ \
( CAT_2 ) ( CAT_1 )
```
- Un arbre de décision est déterministe.
- Il existe toujours un arbre de décision pour une fonction de catégorisation déterministe.
- Dans le pire des cas, il existe un chemin par donnée entrée.
- Un arbre ne représente pas forcément la relation de manière cohérente.
#### Illustration
Prédiction de l'attente dans un restaurant en fonction des attributs du restaurant
[ voir slide ]
#### Entropie
???
- Anti-proportionnelle à la certitude de la classification
- ' cout qu'il reste pour trouver la classification idéale '
- Dans une classification, nous voulons minimiser l'antropie.
### Mesures de la performance
- précision : taux de prédiction justes
- matrice de confusion : tableau d'occurences des cas d'erreur
- courbe RDC : ???
- Rappel : ???
- score F1 : ??? (voiture ?)
- Aire sous la courbe : ???
## classes linéairement séparables
Pour un set de donnée d'apprentissage D = { x_i, y_i }
Dans le cas idéal, il existe une droite séparant les points de D en deux catégories que nous souhaitons séparer
Une possibilité : choisir la séparation qui maximise la marge entre la séparation et les premiers points
- plusieurs séparations peuvent être possibles
## Courbes ROC
( Receiver Operating Characteristics )
- Permet d'estimer le résultat d'une classification sur un ensemble de donnée.
- Table de vérité de type :
```
\ | classe présente | classe absente
--------------------|-----------------|---------------
classe détectée | Vrai Positif | Faux Positif
--------------------|-----------------|---------------
classe Non détectée | Faux Négatif | Vrai Négatif
```
En fonction d'un seuil de décision fixé
- sensitivité
- = Q Vrai positifs / Q Positif
- = Q Vrai Positifs / (Q Vrai Positifs + Q Faux Négatifs)
- = 'Taux de Vrai Positifs'
- 1 - Spécificité
- = Q Faux Positifs / Q Négatifs
- = Q Faux Positifs / (Q Vrai Négatifs + Q Faux Positifs)
- = 1 - ( Q Vrai Négatifs / (Q Vrai Négatifs + Q Faux Positifs) )
- = 'Taux de Faux Négatifs'