# 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'

