3.2 Apprentissage des seuils de l’architecture TRF
3.2.2 Automatic Multiple-Thresholds Learning algorithm (AMTL)
CMP n’est pas adapté à toutes les fonctions possibles de notre approche, PSO est
difficilement interprétable car il est stochastique. De plus aucun de ces deux algorithmes
ne peut apprendre le rejet de distance sans contre-exemples. Toutes ces raisons nous
ont poussé à développer un algorithme générique, efficace et interprétable.
L’algorithme que nous présentons dans cette section se nomme AMTL pour
ap-prentissage automatique de seuils multiples (Automatic Multiple-Thresholds Learning
Algorithm). Cette approche est un cadre générique pour l’apprentissage des seuils des
différentes natures de rejet. AMTL est un algorithme glouton basé sur des heuristiques
définissables par l’utilisateur. Différentes variantes de cet algorithme donc sont possibles
et nous présentons les deux plus intéressantes AMTL1 et AMTL2.
AMTL utilise un classifieur principal déjà appris et un ensemble de fonctions de
confiance déjà choisies. De plus il a besoin de deux bases d’apprentissage : une base
d’exemples notéeD
Eet une base de contre-exemples notéeD
A. Le contenu de ces deux
bases dépend de la nature du rejet appris comme expliqué dans les sections précédentes :
pour le rejet de distance,D
Econtient les formes à accepter etD
Acontient les formes à
rejeter disponibles ; pour le rejet d’ambiguïtéD
Econtient les formes bien reconnues et
D
Acontient les formes mal reconnues par le classifieur principal. Le choix des fonctions
de confiance et des heuristiques utilisées dépendant du problème considéré, le seul
paramètre de AMTL estθ le taux de faux rejet maximal permis.
Comme on peut le voir dans l’Algorithme 2, AMTL est composé de cinq étapes :
1. A l’initialisation les valeurs des fonctions de confiance sont calculées pour tous les
exemples et contre-exemples puis les seuils sont fixés de manière à rejeter tous les
contre-exemples et tous les exemples,E etC contiennent la liste des exemples et
contre-exemples rejetés ;
2. Les étapes suivantes sont répétées tant que le critère d’arrêt n’est pas vérifié par
la fonctioncas_d_arrêt;
3. Le seuil qu’il va falloir modifier est choisi suivant la politique de choix des seuils
par la fonction choisir_le_seuil;
4. Le seuil choisi est ensuite diminué suivant la politique de descente des seuils grâce
à la fonction diminuer_le_seuil pour accepter de plus en plus d’exemples (et
de contre-exemples) ;
5. Mise à jour des exemples et contre-exemples encore rejetés, on retire de E et C
ceux qui sont acceptés par un des seuils.
En considérant l’espace<
Ndes valeurs possibles des seuils, AMTL est basé sur le fait
qu’il y a deux points remarquables : le point de rejet nulP
0où tous les seuils sont à zéro,
et le point de rejet totalP
Toù tous les seuils sont suffisamment hauts pour tout rejeter.
Cet algorithme cherche un chemin pour aller de P
Tà P
0en suivant itérativement une
dimension (un seuil) à chaque étape. Ce chemin ressemble à un escalier enN dimensions.
La dimension parcourue à chaque étape est choisie par la fonction choisir_le_seuil
en essayant de minimiser le FRR et maximiser le TRR plus ou moins localement suivant
cette fonction. Ensuite la fonction diminuer_le_seuil diminue le seuil choisi. Il faut
Apprentissage des seuils de l’architecture TRF 65
Algorithme 2 : Algorithme AMTL d’apprentissage des seuils.
Entrées : Le classifieur
Entrées :Ψensemble des N fonctions de confiance ψ
iEntrées :D
Ebase d’exemples
Entrées :D
Abase de contre-exemples
Entrées :θparamètre du cas d’arrêt
Résultat:T ensemble desN seuils de rejett
idébut
//Initialisation
pour chaque ψ
i∈Ψfaire
1
E
i← {ψ
i(e
k),∀e
k∈D
E, ψ
i(e
k)>0}
E ←E∪ {E
i}
C
i← {ψ
i(c
k),∀c
k∈D
A, ψ
i(c
k)>0}
C ←C∪ {C
i}
σ
i←max(C
i∪E
i)
//Apprentissage itératif des seuils
tant que NONcas_d_arrêt(θ,Ψ, T, D
E, D
A)faire
2
s← choisir_le_seuil(T, E, C)
3T ←diminuer_le_seuil(s, T, E, C)
4//Mise à jour
pour chaque i= 1..N faire
5
E
i←E
i− {ψ
i(e
k),∃s ψ
s(e
k)> t
s}
C
i←C
i− {ψ
i(c
k),∃s ψ
s(c
k)> t
s}
fin
du parcours deP
TàP
0puisqu’il n’y a pas de remise en cause des choix (pas de retour
arrière).
Ce sont les deux fonctionschoisir_le_seuiletdiminuer_le_seuilcontenant les
heuristiques définies par l’utilisateur qui déterminent l’apprentissage des seuils. La
fonc-tioncas_d_arrêtne change pas le parcours de l’espace des possibilités mais seulement
le moment de l’arrêt du parcours. C’est pourquoi nous avons choisi arbitrairement de
considérer le taux de faux rejet comme critère d’arrêt : l’apprentissage s’arrête lorsque
F RR(D
E)< θ.
Il est donc possible de définir différentes variantes de AMTL et nous en proposons
deux, chacune avec des objectifs différents. D’un côté AMTL1 a besoin de
contre-exemples pour son apprentissage et est dédié au problème A→A. D’un autre côté
AMTL2 n’utilise pas de contre-exemples et est donc dédié au problème A→B. Nous
présentons ensuite dans la section 3.2.2.3 d’autres possibilités pour chacune des trois
fonctions qui pourraient être utilisées dans d’autres contextes d’utilisation que le nôtre.
3.2.2.1 AMTL1 utilisant les contre-exemples
Le but de AMTL1 est de trouver le meilleur compromis entre le rejet des exemples
et le rejet des contre-exemples. Pour cela il utilise une fonctionchoisir_le_seuilqui
sélectionne le seuil qui minimise le nombre de contre-exemples acceptés pour
l’accep-tation d’un nouvel exemple. Ensuite la fonction diminuer_le_seuil diminue le seuil
choisi pour accepter autant de contre-exemples nécessaires pour accepter un exemple
de plus. Elle fixe donc le seuil sur le contre-exemple suivant le premier exemple. Les
Algorithmes 3 et 4 formalisent ces fonctions d’apprentissage.
Algorithme 3: Fonction choisir_le_seuil de AMTL1.
Entrées : Le classifieur
Entrées :E confiances des exemples e
krejetés
Entrées :C confiances des contre-exemples c
krejetés
Entrées :T ensemble des N seuils de rejet t
iRésultat:s seuil choisi
début
pour chaque i= 1..N faire
//Compter le nombre de contre-exemples à accepter
n
i←card{ψ
i(c
k)∈C
i, ψ
i(c
k)≥maxE
i}
s←argmin
i(n
i)
fin
Algorithme 4: Fonction diminuer_le_seuilde AMTL1.
Entrées : Le classifieur
Entrées :E confiances des exemples e
krejetés
Entrées :C confiances des contre-exemples c
krejetés
Entrées :sseuil choisi
Entrées :T ensemble des N seuils de rejet t
iRésultat:T
0nouveaux seuils
début
//Le seuil est fixé sur le premier contre-exemple
//juste après le premier exemple
t
s←max
k{ψ
s(c
k)∈C
s, ψ
s(c
k)<maxE
s}
fin
Ainsi AMTL1 prend en compte la localisation des contre-exemples par rapport aux
exemples et fera plus de rejet là où il y aura une forte proportion de contre-exemples.
Apprentissage des seuils de l’architecture TRF 67
3.2.2.2 AMTL2 sans contre-exemples
L’objectif de AMTL2 est d’obtenir une meilleure description des connaissances du
système par rapport à AMTL1. Pour cela il n’utilise aucune information à propos
des contre-exemples. La fonction choisir_le_seuilchoisit le seuil t
iqui maximise la
pseudo-densitéd
id’exemples activant la fonctionψ
i. La pseudo-densité d
id’exemples
est définie en considérant la variation relative du seuil t
ipour accepter la moitié des
exemples restant à accepter. SoitM
ile nombre d’exemples restant à accepter parψ
i:
M
i= kE
ik. Soit V
ila variation nécessaire de t
ipour accepter M
i/2 exemples. On a
alors :
d
i= M
it
i2V
i. (3.18)
Utiliser la moitié des exemples restant à accepter permet d’avoir une vision plus globale
de la densité des données sans être perturbé par les effets instables des formes très
éloignées. Ensuite la fonctiondiminuer_le_seuildiminue le seuil choisi pour accepter
un seul exemple de plus. Elle fixe donc le seuil sur l’exemple suivant. Les Algorithmes 5
et 6 formalisent ces fonctions d’apprentissage.
Algorithme 5 : Fonction choisir_le_seuilde AMTL2.
Entrées : Le classifieur
Entrées :E confiances des exemplese
krejetés
Entrées :T ensemble des N seuils de rejet t
iRésultat:sseuil choisi
début
pour chaque i= 1..N faire
//Calcule de la pseudo densité d’exemples à accepter
V
i←maxE
i−min{ψ
i(e
k)∈E
i, ψ
i(e
k)>median(E
i)}
d
i←
card{Ei}ti2Vi