0% ont trouvé ce document utile (0 vote)
5 vues6 pages

Améliorations de la rétropropagation

L'algorithme de rétropropagation du gradient pour les réseaux de neurones est présenté avec plusieurs améliorations possibles. Le document décrit ensuite l'application de ces réseaux pour prédire la faillite d'entreprises belges sur plusieurs années.

Transféré par

fatimaboudra
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
5 vues6 pages

Améliorations de la rétropropagation

L'algorithme de rétropropagation du gradient pour les réseaux de neurones est présenté avec plusieurs améliorations possibles. Le document décrit ensuite l'application de ces réseaux pour prédire la faillite d'entreprises belges sur plusieurs années.

Transféré par

fatimaboudra
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

6.

5 Améliorations
L’algorithme de rétropropagation du gradient tel qu’il vient d’ˆetre présenté con-
stitue la base. De nombreuses améliorations ont été présentées dans la littérature.
Entre autres:

• Utilisation d’un moment.


En plus de la correction des poids actuels selon le gradient, on ajoute une
fraction de l’ajustement qui a été réalisé aux itérations précédentes. On
accélère ainsi la convergence de l’algorithme.

w(t) = E(t) + w(t 1) (28)

• Validation croisée pour la détection de surapprentissage (d’où incapacité à


généraliser).

• Utilisation de la matrice Hessienne (méthode de Newton et quasi-Newton).

• Evolution de la constante d’apprentissage au cours du temps.

• Utilisation d’une ligne de recherche.

• Réinitialisation de l’algorithme après un certain temps.

La structure du réseau est aussi revue. Pour éviter une taille trop importante
du réseau et un apprentissage trop long, on peut utiliser la technique du ”pruning”
pour supprimer les connexions peu importantes.
Enn, les données peuvent ˆetre prétraitées. Pour améliorer la généralisation
du réseau, les entrées sont parfois légèrement bruitées. Elles peuvent aussi ˆetre
compressées. On obtiendra ainsi un réseau plus petit. Outre le fait qu’un réseau
avec peu de connexions sera plus facilement implémentable et à meilleur marché
qu’un réseau complexe, on obtient surtout un gain appréciable de traitements.

7 Analyse complète: étude de cas


7.1 Présentation du problème
Reprenons le problème présenté précédemment concernant un estimateur de la
santé nancière des entreprises. Nous allons tenter de prédire à l’aide des mˆemes
ratios qu’Altman le risque de faillite des sociétés commerciales belges en 1993 et
cela 1, 2 et 3 ans à l’avance. Pour cela, un simulateur de réseaux de neurones a été
écrit en respectant scrupuleusement la structure multicouches et l’algorithme de
rétropropragation tels qu’ils ont été dénis plus haut (sans aucune optimisation).
7.2 Phase 1: collecte des données
Les 5 ratios utilisés par Altman ont été extraits de la banque de données dif-
fusée par la Centrale des Bilans de la Banque Nationale Belge pour les entre-
prises commerciales (NACE 06) et cela pour les exercices bilantaires de 1990 à
1992. Les données ont été réparties pour chaque année entre un chier utilisé
lors de l’apprentissage et un chier utilisé ensuite pour tester la capacité de
généralisation.

Année Apprentissage Test


1990 8 282 2 363
1991 10 034 2 868
1992 13 329 3 810

Table 1: Nombre d’entreprises dans chaque chier

6 ensembles de données ont ainsi été crées où chaque ligne décrit une société
et chaque colonne est un des ratios. Un expert nancier, sur base des ratios
d’Altman en 1993, a alors réparti chacune de ces entreprises en deux catégories:
celles qui seront saines en 1993 (groupe 1) et celles qui au contraire risquent la
faillite à partir de 1993 (groupe 0). Cet indicateur a été ajouté comme sixième
colonne aux di érents chiers. Les 5 premières lignes du chier d’apprentissage
de 1990 sont présentées dans la table 2.

X1 X2 X3 X4 X5 Santé
0.23 0.18 -0.01 0.31 0.13 0
0.84 0.78 0.06 5.77 0.47 1
-0.06 0.08 0.01 0.15 0.38 0
0.16 0.11 -0.01 0.15 0.42 0
0.52 0.54 0.04 1.43 0.46 1

Table 2: Début du chier d’apprentissage de 1990

7.3 Phase 2: conception du réseau


En utilisant la structure multicouches et l’algorithme élémentaire tels qu’ils ont
été décrits, il ne reste que 2 paramètres à dénir: le nombre de neurones en
couche cachée et la constante d’apprentissage . On procède par essais successifs
pour déterminer les valeurs adéquates.
Le chier d’apprentissage d’une année est présenté au simulateur de réseaux
de neurones. Celui-ci va alors réaliser un nombre déterminé d’itérations. Une
iteration consiste en la présentation des 5 ratios de chacune des entreprises à
l’entrée du réseau, à la propagation de ces informations jusqu‘à la sortie et à la
rétropropagation de l’erreur vers l’entrée avec modication des poids. L’appren-
tissage s’arrˆete quand il n’est plus possible de faire diminuer l’erreur ou dès que
la diminution n’est plus signicative.
On présente ensuite au simulateur le chier de test de la mˆeme année. Les
5 ratios de chaque société sont propagés vers la sortie et on peut comparer les
résultats avec ceux donnés par l’expert nancier.
En répétant ces opérations pour di érents nombres de neurones en couche
cachée et pour di érentes valeurs de , on constate en étudiant les pourcentages
de classication correcte, qu’il n’est pas nécessaire d’utiliser plus de 2 neurones en
couche cachée et qu’une valeur adéquate de est 0.01. Utiliser plus de neurones
n’améliore pas les résultats, mais allonge la phase d’apprentissage. Des valeurs
supérieures de donnent des résultats moins précis et un temps d’apprentissage
plus long (égarement). De plus l’évolution de la fonction d’erreur au cours du
temps est assez chaotique. Quelques simulations pour les di érentes années sont
synthétisées dans les tableaux 3 et 4.

Conguration Apprentissage Test


1992 Correct Nbre Correct
iter
2 neurones
=0.2 83.82% 120 83.08%
=0.01 83.97% 442 83.52%
=0.001 84.04% 2 000 83.31%
10 neurones
=0.2 83.22% 860 82.83%
=0.01 84.23% 942 83.76%
=0.001 83.99% 2 000 83.20%

Table 3: Résultats des simulations pour 1992


Conguration Apprentissage Test
1990 Correct Nbre Correct
iter
2 neurones
=0.2 70.60% 767 70.5%
=0.01 70.78% 500 70.63%
=0.001 70.89% 3 000 70.21%
10 neurones
=0.2 70.82% 852 69.45%
=0.01 70.78% 600 70.5%
=0.001 70.47% 2 000 70.60%

Table 4: Résultats des simulations pour 1990

7.4 Phase 3: Analyse des résultats


D’après les tableaux 3 et 4, les réseaux de neurones sont aptes à traiter ce genre
de problème. 84% de classication correcte pour les données d’apprentissage de
1992 est un résultat honnˆete. De plus, le réseau a bien généralisé car pour un
chier test, le réseau s’en tire presque aussi bien. Une légère baisse est normale;
il est plus facile d’analyser des informations qui ont déjà été présentées au réseau
durant l’apprentissage qu’un ensemble inconnu. Pour les autres années, les scores
restent bons. Bien entendu, ils se dégradent plus on remonte dans le temps. Il
est plus di cile de faire des prévisions 3 ans à l’avance que l’année précédente.
Cette première analyse n’est pas su sante. On sait que l’on a obtenu un
réseau idéal pour les données d’apprentissage. On sait aussi qu’il donne de
bons résultats pour un chier test di érent. Par contre, nous ne savons pas
encore si ce réseau est le meilleur pour ce chier test ou un autre. En e et,
il est possible qu’après un certain nombre d’itérations le réseau ait trop étudié
les caractéristiques de l’ensemble d’apprentissage et se soit spécialisé dans celui-
ci. Pour s’en assurer, on utilise la technique de la validation croisée. Après
chaque itération de l’apprentissage, on obtient un réseau intermédiaire auquel on
présente un chier test (ou chier de validation). La fonction d’erreur pour le
chier d’apprentissage va décroˆtre au cours du temps. Par contre, la fonction
d’erreur calculée pour le chier de validation recommencera à augmenter s’il y a
surapprentissage. A ce moment, il vaut mieux s’arrˆeter.
Cette technique a été utilisée dans notre exemple. Un troisième chier a
été constitué et présenté au réseau durant l’apprentissage. La gure 9 montre
l’évolution de la fonction d’erreur au cours du temps pour le chier d’appren-
tissage et le chier de validation de 1992. On constate que l’erreur diminue
continuellement pour les deux chiers et tend vers une asymptote horizontale.
Le chier d’apprentissage était ici important et contenait un échantillon su -
isamment représentatif des entreprises que pour ne pas avoir de problèmes de
surapprentissage. Remarquons aussi en passant qu’après environ 440 itérations,
le meilleur réseau est atteint; l’erreur ne diminue pratiquement plus.

Figure 9: Evolution de l’erreur

Maintenant que nous avons une certaine conance dans les performances de
ce réseau, essayons de mieux comprendre les résultats. On sait que pour 1992,
le réseau diagnostiquera correctement la situation 84 fois sur 100. Inversément,
il ne se trompera que 16 fois sur 100. Pour un nancier, cette erreur n’aura pas
toujours le mˆeme prix. Si une société est jugée à risques alors qu’elle ne l’est
pas, il y aura juste un coˆ ut d’opportunité. Par contre, si une société à risques
est jugée saine, les dégats pourraient ˆetre beaucoup plus considérables. Il paraˆt
donc important de considérer les deux cas.
La table 5 montre des résultats plus détaillés obtenus pour les chiers tests.
Pour chaque année, le réseau sous-estime le nombre de sociétés saines et sures-
time le nombre de sociétés à risques. Par exemple en 1991, 17.71% des entreprises
sont considérées à tort malsaines et 7.22% seulement sont annoncées erronément
saines. L’investisseur qui ferait totale conance au réseau subirait donc essen-
tiellement des coˆ uts d’opportunités.
Si une erreur de classication est vraiment très néfaste, on peut encore pousser
plus loin l’analyse. Il est possible en étudiant les résultats de diminuer le pour-
centage de classication incorrecte. On a représenté une société parfaitement
saine par une sortie valant 1 et une société à risques par une sortie nulle. Le
réseau fournit des résultats continus entre 0 et 1. La valeur pivot 0.5 représentait
jusqu’à présent la scission entre les deux catégories. Cependant, on ne devrait
pas avoir la mˆeme conance en une valeur de 0.499 qu’en une valeur 0. Le
risque d’erreur est beaucoup plus grand pour la première. La solution envisagée
ici est de revoir le partitionnement de l’espace de sortie. Par exemple, en choi-
Obtenu Désiré Total
Sain Risqué
1992
Sain 30.24% 7.87% 38.11%
Risqué 8.61% 53.28% 61.89%
Total 38.85% 61.15% 100%
1991
Sain 20.82% 7.22% 28.04%
Risqué 17.71% 54.25% 71.96%
Total 38.53% 61.47% 100%
1990
Sain 17.22% 7.74% 24.96%
Risqué 21.63% 53.41% 75.04%
Total 38.85% 61.15% 100%

Table 5: Résultats détaillés des simulations pour l’ensemble test

Obtenu Désiré Total


Sain Risqué
1992
Sain 28.54% 6.80% 35.34%
Incertitude 2.83% 2.57% 5.40%
Risqué 7.48% 51.78% 59.26%
Total 38.85% 61.15% 100%
1991
Sain 15.73% 3.94% 19.67%
Incertitude 9.20% 8.68% 17.88%
Risqué 13.60% 48.85% 62.45%
Total 38.53% 61.47% 100%
1990
Sain 13.16% 5.12% 18.28%
Incertitude 11.47% 10.71% 22.18%
Risqué 14.22% 45.32% 59.54%
Total 38.85% 61.15% 100%

Table 6: Résultats a nés des simulations pour l’ensemble test

Vous aimerez peut-être aussi