next up previous
Next: Apprentissage par la méthode Up: Le Perceptron Previous: Algorithme d'apprentissage

Théorème d'apprentissage


théorème581

Démonstration : Soit n+1 le nombre d'entrées du perceptron. On suppose que chaque exemple possède une n+1-ème coordonnée égale à 1.

On note tex2html_wrap_inline3030 (resp. tex2html_wrap_inline3028) l'ensemble des exemples de S pour lesquels le perceptron doit calculer la valeur 1 (resp. 0).

L'hypothèse signifie qu'il existe un hyperplan de l'espace tex2html_wrap_inline3016 qui sépare tex2html_wrap_inline3030 de tex2html_wrap_inline3028.

Il existe donc un vecteur tex2html_wrap_inline3134 tel que :


displaymath3136
et
displaymath3138

Comme S est fini, cela implique qu'il existe un réel d strictement positif tel que :


displaymath3144

Pour tout Y de S, on a donc :


displaymath3150

 figure587
Figure 3.6: d est inférieur à la distance minimale d'un point de l'échantillon à l'hyperplan séparateur.

Soit M un majorant de tex2html_wrap_inline3156.

Soit tex2html_wrap_inline3158 les valeurs d'initialisation des poids synaptiques.

Supposons que l'algorithme d'apprentissage ne s'arrête pas. Nous allons montrer que cette hypothèse est absurde.

On note tex2html_wrap_inline3160 les états successifs différents des coefficients synaptiques (c'est-à-dire que pour tout i, on a tex2html_wrap_inline3164). Comme on a supposé que la présentation des exemples est équitable et que l'algorithme ne s'arrête pas, cela implique en particulier qu'il y a un nombre infini de tex2html_wrap_inline3160.

Nous allons calculer des bornes pour tex2html_wrap_inline3168 et tex2html_wrap_inline3170.

Passage de tex2html_wrap_inline3160 à tex2html_wrap_inline3174 :

Finalement, quelque soit le cas envisagé et pour tout tex2html_wrap_inline3204,


displaymath3206

On en déduit que pour tout tex2html_wrap_inline3208,


displaymath3210

Comme d>0, il existe un entier tex2html_wrap_inline2770 tel que tex2html_wrap_inline3216 pour tout tex2html_wrap_inline3218.

Donc, pour tex2html_wrap_inline3218,


displaymath3222

ce qui est impossible. En effet, le terme de gauche est un polynôme de degré 2 en i alors que le terme de droite est linéaire en i.

L'inconvénient majeur de cet algorithme est que si l'échantillon présenté n'est pas linéairement séparable, l'algorithme ne convergera pas et l'on aura aucun moyen de le savoir. On pourrait penser qu'il suffit d'observer l'évolution des poids synaptiques pour en déduire si l'on doit arrêter ou non l'algorithme. En effet, si les poids et le seuil prennent deux fois les mêmes valeurs sans que le perceptron ait appris et alors que tous les exemples ont été présentés, cela signifie d'après le théorème précédent que l'échantillon n'est pas séparable. Et l'on peut penser que l'on peut borner les poids et le seuil en fonction de la taille de la rétine. C'est vrai mais les résultats de complexité énoncés ci-dessous (sans démonstration) montrent que cette idée n'est pas applicable en pratique.


théorème611

Ces résultats sont assez décevants. Le premier montre que l'on peut borner les poids synaptiques en fonction de la taille de la rétine, mais par un nombre tellement grand que toute application pratique de ce résultat semble exclue.

Le dernier résultat montre en particulier que l'algorithme d'apprentissage peut nécessiter un nombre exponentiel d'étapes (en fonction de la taille de la rétine) avant de s'arrêter. En effet, les poids ne varient qu'au plus d'une unité à chaque étape.

Deux idées pour accélérer la vitesse d'apprentissage :

On peut remarquer que ces deux méthodes impliquent l'utilisation de poids réels.

Même lorsque l'algorithme d'apprentissage du perceptron converge, rien ne garantit que la solution sera robuste, c'est-à-dire qu'elle ne sera pas remise en cause par la présentation d'un seul nouvel exemple.

 figure623
Figure 3.7: Un nouvel exemple peut remettre en cause le perceptron appris.

Pire encore, cet algorithme n'a aucune tolérance au ``bruit'' : si du bruit, c'est-à-dire une information mal classée, vient perturber les données d'entrée, le perceptron ne convergera jamais. En particulier, les problèmes non-déterministes, c'est-à-dire pour lesquels une même description peut représenter des éléments de classes différentes ne peuvent pas être traités à l'aide d'un perceptron.

 figure630
Figure 3.8: Apprentissage en présence de bruit

On peut souhaiter qu'un perceptron ait la capacité d'apprendre ``approximativement'' des classes qui ne sont pas linéairement séparables.


next up previous
Next: Apprentissage par la méthode Up: Le Perceptron Previous: Algorithme d'apprentissage

Marc Tommasi
Wed May 14 15:14:59 MET DST 1997