Vous êtes sur la page 1sur 16

C LASSIFICATION DE TEXTES ET

CO - TRAINING À PARTIR DE TEXTES


POSITIFS ET NON ÉTIQUETÉS?
François Denis? , Rémi Gillerony , Marc Tommasiy

?
Équipe BDA, Laboratoire d’Informatique Fondamentale de Marseille (LIF -
UMR 6166) ; fdenis@cmi.univ-mrs.fr
y Équipe Grappa, Université de Lille 3, BP 149, 59653 Villeneuve d’Ascq
Cedex, France ; gilleron,tommasi@univ-lille3.fr

Résumé
Nous présentons plusieurs algorithmes de classification de textes pour
des problèmes à deux classes en contexte semi-supervisé. Nous considérons
le cas où l’on dispose d’un échantillon de textes de la classe cible (textes
positifs) et d’un échantillon de textes de classe inconnue (textes non étique-
tés). Cette situation est fréquente en recherche d’information et ne nécessite
pas l’étape, particulièrement coûteuse, de classification manuelle des textes.
Nous décrivons un premier algorithme PNB dérivé de l’algorithme de Bayes
naïf qui produit des résultats expérimentaux encourageants. Nous présen-
tons ensuite des algorithmes de co-training, basés sur PNB, pour lesquels
l’information initiale est réduite à un petit nombre de textes positifs. Nous
montrons expérimentalement que les performances de l’algorithme de base
sont très sensiblement améliorées par la technique de co-training.
Mots-clés : classification supervisée et semi-supervisée, classification de
textes, exemples positifs, co-training

1 I NTRODUCTION
Il existe de nombreux algorithmes de classification supervisée pour la fouille
de données et la fouille de textes. Ces algorithmes ont en général des perfor-
mances satisfaisantes dès que le nombre d’exemples étiquetés est suffisamment
grand. Cependant, il est souvent coûteux d’étiqueter un échantillon, plus particu-
lièrement en fouille de textes, car cette opération doit être réalisée manuellement
? Ce travail a été réalisé grâce aux supports : CPER 2000-2006, Contrat de Plan état - région
Nord/Pas-de-Calais: axe TACT, projet TIC ; fonds européens FEDER TIC - Fouille Intelligente de
données - Traitement Intelligent des Connaissances OBJ 2-phasing out - 2001/3 - 4.1 - n 3 ; projet
DATADIAB - ACI télémédecine et technologies pour la santé du projet DATADIAB dans le cadre
d’une ACI télémédecine et technologies pour la santé.
CAp 2002

par un expert du domaine. Partant de ces constatations, un nouveau thème de re-


cherche a émergé depuis quelques années : l’apprentissage semi-supervisé, dont
l’objectif est le développement d’algorithmes d’apprentissage en présence d’un
petit nombre d’exemples étiquetés et d’un grand nombre d’exemples non étique-
tés. Parmi les différentes approches possibles de cette problématique, une des
plus naturelles consiste à adapter des algorithmes de classification supervisée en
leur permettant d’utiliser l’information apportée par les exemples non étiquetés.
Citons, pour exemple, l’utilisation de l’algorithme EM (Nigam & Ghani, 2000),
l’utilisation d’algorithmes d’inférence transductive (Joachims, 1999), l’utilisation
des exemples non étiquetés pour définir une distance ou une fonction noyau (Hof-
mann, 1999), l’utilisation de deux vues sur les exemples (Blum & Mitchell, 1998;
Nigam et al., 2000).
Dans les problèmes de classification de textes liés à la découverte d’informa-
tions pour un utilisateur particulier, il est fréquent que des exemples positifs soient
disponibles naturellement et qu’un grand nombre d’exemples non étiquetés soient
disponibles à moindre coût. Considérons par exemple le problème de la recherche
de pages Web pour un utilisateur. Les pages pointées par ses signets (bookmarks)
sont autant d’exemples positifs de pages intéressantes pour cet utilisateur. On dis-
pose aisément d’exemples non étiquetés. On peut donc, sans aucune intervention
manuelle, constituer un échantillon d’apprentissage composé d’exemples positifs
et non étiquetés. Un deuxième exemple est la recherche de références bibliogra-
phiques. Les références contenues dans les bases personnelles de l’utilisateur sont
des exemples positifs, les bases bibliographiques disponibles sur le Web contenant
autant d’exemples non étiquetés que souhaité. L’objectif sera alors d’extraire des
références potentiellement intéressantes pour l’utilisateur à l’aide de ces exemples
positifs et non étiquetés.
Dans cet article, nous nous limitons à la tâche de classification et nous propo-
sons des algorithmes de classification de textes à partir de textes positifs et non
étiquetés. Dans la section 2, nous adaptons l’algorithme de Bayes naïf classique
NB à ce contexte. Notre algorithme, PNB, suppose connue la proportion de textes
positifs, ce paramètre pouvant être obtenu soit par une estimation empirique soit
par une connaissance du domaine. Notre algorithme estime les probabilités d’ap-
parition des mots des textes négatifs, alors qu’aucun exemple de texte négatif
n’est fourni en entrée. Nous comparons NB et PNB sur des corpus classiques et
nous constatons expérimentalement que notre algorithme, avec N exemples posi-
tifs et suffisamment d’exemples non étiquetés en entrée, a de meilleurs résultats
que l’algorithme de Bayes naïf, avec N exemples étiquetés en entrée.
Dans la section 3, nous nous plaçons dans le cadre du « co-training » défini
dans (Blum & Mitchell, 1998). L’idée générale est d’utiliser plusieurs vues indé-
pendantes et redondantes sur les informations fournies en entrée dans un contexte
semi-supervisé. Cette idée a été utilisée pour la classification de pages web (Blum
& Mitchell, 1998), pour des tâches d’extraction d’information (Yarowski, 1995;
Collins & Singer, 1999). Nous nous limiterons au problème de la classification de
textes en supposant que deux vues sur les exemples sont disponibles. Nous pré-
sentons des algorithmes de co-training où l’information initiale se limite à un petit
Classification de textes

nombre de textes positifs. Nous décrivons un premier algorithme basé sur PNB
qui n’utilise que des textes positifs et non étiquetés. Nous présentons ensuite un
deuxième algorithme qui utilise également des exemples étiquetés comme néga-
tifs au long des itérations. Nous donnons des résultats expérimentaux qui montrent
que les performances de nos algorithmes s’améliorent nettement avec les étapes
de co-training. Il est donc possible d’apprendre efficacement à partir d’un très
petit nombre de textes positifs et de textes non étiquetés lorsque l’on dispose de
deux vues sur les exemples.

2 A LGORITHME DE BAYES NAÏF À PARTIR DE TEXTES


POSITIFS ET NON ÉTIQUETÉS

2.1 Algorithme de Bayes naïf


L’algorithme de Bayes naïf, qui possède de nombreuses variantes, est très uti-
lisé en classification de textes (Lewis, 1998). Basée sur un modèle de génération
des textes, l’hypothèse dite naïve consiste à supposer que pour chaque classe,
la présence d’un mot dans un texte de cette classe est indépendante de celle des
autres du mots du texte. Bien que cette hypothèse soit clairement fausse, il s’avère
que l’algorithme de Bayes naïf est l’un des plus performants en classification de
textes (Domingos & Pazzani, 1997; Lewis & Ringuette, 1994). Nous nous limi-
tons à des problèmes à deux classes f0; 1g où la classe d’étiquette 1 sera appelée
la classe positive. Nous considérons que les textes sont représentés par des « sacs
de mots », c’est-à-dire des ensembles de mots avec répétition. L’algorithme de
Bayes naïf que nous utilisons est présenté dans la table 1. Cet algorithme présup-
pose un modèle génératif de textes dans lequel on choisit une classe selon une
loi de Bernoulli, puis une longueur de texte et enfin, les mots du texte sont tirés
aléatoirement selon une loi multinomiale spécifique à la classe. On fait également
l’hypothèse supplémentaire que les longueurs des textes sont indépendantes des
classes.
Étant donné un vocabulaire V et un ensemble D de textes étiquetés, nous notons
P D l’ensemble des textes positifs et ND l’ensemble des textes négatifs de D. Les
probabilités des classes peuvent alors être estimées par :

P^ (0) =
Card (ND) ; P^ (1) = Card (P D) (1)
Card (D) Card (D)
où Card (X ) est le cardinal de l’ensemble X .
Un élément important est l’estimation des quantités P r(wi j ) qui représentent
les probabilités des mots ou encore les paramètres des lois multinomiales du mo-
dèle générateur. Ces probabilités peuvent être estimées par les fréquences d’ap-
parition des mots dans les textes de chaque classe. Ces estimations pouvant être
nulles, un texte ne pourra être classé dans la classe dès lors qu’il contient un mot
n’apparaissant dans aucun des textes de la classe . Pour cette raison, les estima-
tions précédentes sont lissées ou, de façon équivalente, une distribution a priori sur
CAp 2002

les lois multinomiales est présupposée. Nous considérons le «lissage de Laplace»


et les probabilités des mots sont estimées à l’aide des formules suivantes :

N (w ; ND)
P^r(w j0) =
1+ i
(2)
i
Card (V ) + N (ND)
N (w ; P D)
P^r(w j1) =
1+ i
(3)
i
Card (V ) + N (P D)
où N (wi ; X ) est le nombre total d’occurrences du mot wi dans les textes de l’en-
semble X et N (X ) le nombre total d’occurrences de mots dans les textes de
l’ensemble X .

TAB . 1 – Algorithme de Bayes naïf NB avec textes étiquetés

Étant donné un ensemble D = P D [ ND de textes étiquetés, le classifieur


de Bayes naïf classe un texte d = fw1 ; : : : ; wn g – où un mot peut apparaître
avec répétitions – dans la classe

Y
i=n

NB(d) = argmax P^ ( ) P^r(w j )


i (4)
2f0;1g i=1

où les probabilités des classes sont estimées à l’aide des équations 1 et où les
probabilités des mots sont estimées à l’aide des équations 2 et 3.

Pour définir notre algorithme à partir d’exemples positifs et non étiquetés, nous
utiliserons l’équation suivante :

P r(wi ) = P r(wi j0)P r(0) + P r(wi j1)P r(1) (5)


où P r(wi ) est la probabilité que le générateur de textes tire le mot wi et P r(1)
est la probabilité que le générateur de textes tire un mot d’un texte positif. Si on
dispose d’un ensemble D = P D [ ND de textes étiquetés, une estimation de
P r(wi ) est NN(w(D
i ;D )
)
et une estimation de P r(1) est NN((PDD)) . Mais, sous l’hypo-
thèse d’indépendance de la longueur des textes par rapport à la classe, un autre
estimateur possible pour P r(1) est P^ (1) = Card (P D )
Card (D) .

2.2 Algorithme de Bayes naïf à partir de textes positifs et non


étiquetés
Nous supposons maintenant que les données d’apprentissage sont constituées
d’un ensemble P D de textes positifs et d’un ensemble UD de textes négatifs. Il
s’agit de calculer des estimations de probabilité suffisamment précises pour les
Classification de textes

quantités qui apparaissent dans l’équation 4 à partir de textes positifs et non éti-
quetés uniquement. Nous faisons l’hypothèse supplémentaire qu’une estimation
P^ (1) de la probabilité de la classe positive est donnée en entrée de l’algorithme.
Cette entrée supplémentaire nous permet de déduire une estimation de la proba-
bilité de la classe négative en fixant P^ (0) égal à 1 P^ (1). Il reste donc à estimer
les probabilités des mots conditionnellement à chacune des classes.

E STIMATION DES PROBABILITÉS DES MOTS

Les probabilités des mots de la classe positive peuvent être estimées en utilisant
l’échantillon d’entrée P D à l’aide de l’équation 3. Pour les probabilités des mots
de la classe négative, en utilisant l’équation 5, nous pouvons en déduire que :

P r(w ) P r(w j1)  P r(1)


P r(w j0) = i i
(6)
i
1 P r(1)
Dans cette équation, nous pouvons également estimer les probabilités des mots
de la classe positive à l’aide de l’équation 3. Il nous reste donc à déterminer des
estimations pour les quantités P r(wi ) et P r(1).
Estimation des P r(wi ). Sous l’hypothèse que l’ensemble des textes non étique-
tés est généré relativement au modèle générateur de textes, nous pouvons estimer
les probabilités P r(wi ) par les fréquences estimées sur l’ensemble de textes non
étiquetés, soit :

N (w ; UD)
P^r(w ) = i
(7)
i
N (UD)
Estimation de P r(1). Deux estimateurs peuvent être envisagés pour P r(1). Tout
d’abord, sous l’hypothèse que les longueurs des textes sont indépendantes des
classes, les textes positifs et négatifs ont la même longueur moyenne et, par consé-
quent, un estimateur de P^r (1) peut être P^ (1).
Nous avons cependant vu, à la fin de la section précédente, que dans le cas d’un
ensemble D = P D [ ND de textes étiquetés, la quantité NN(P D)
(D )
est également
un estimateur de P r(1). Nous pouvons en déduire l’équation suivante :

N (P D) Card (P D) Card (D)


P^r(1) =
Card (P D)  Card (D)  N (D)
Avec les données d’entrée de notre algorithme, le terme N (P D)=Card (P D)
peut être calculé avec l’ensemble P D, le terme Card (P D)=Card (D) sera fixé
à P^ (1), le terme Card (D)=N (D), sous l’hypothèse que les textes non étiquetés
sont générés relativement au modèle générateur de textes, sera estimé sur l’en-
semble des textes non étiquetés. Nous obtenons donc l’estimation suivante :

P^r(1) =
N (P D)
 P^ (1) 
Card (UD)
Card (P D) N (UD)
CAp 2002

Il est possible, lorsque les ensembles de textes fournis en entrée sont trop petits,
que ces estimations soient supérieures à 1. Par conséquent, nous introduisons une
borne arbitraire pour ces estimations et nous obtenons le deuxième estimateur
possible pour P r(1), cet estimateur étant défini par la formule suivante :
 N (P D) Card (UD) ; 1 + P^ (1)

P^r(1) = min
Card (P D)  P^ (1) 
N (UD) 2
(8)

Nous disposons donc d’estimateurs pour toutes les probabilités apparaissant


dans l’équation 6. Il nous reste à étudier le problème du lissage.

L ISSAGE DES PROBABILITÉS DES MOTS


En utilisant l’équation 7, les estimations des probabilités des mots de la classe
négative données par l’équation 6 peuvent se réécrire sous la forme :

N (w ; UD) P^r(w j1)  P^r(1)  N (UD)


P^r(w j0) = i i

P^r(1))  N (UD)
i
(1

Ces estimations peuvent être négatives. Les estimations négatives sont mises
à 0, les estimations sont ensuite normalisées. Nous utilisons alors le lissage de
Laplace et obtenons nos estimations finales P^r (wi j0) des probabilités des mots
de la classe négative qui sont définis par :

fR(w ); 0g  1 X
P r(w j0)
1 + max
où Z =
i Z
(9)
Card (V ) + (1 P^r(1))  N (UD) wi 2V jP r(wi j0)>0
i

où R(wi ) = N (wi ; UD) P^r (wi j1)  P^r(1)  N (UD), P^r (wi j1) est calculé
à l’aide de l’équation 3, et P^r (1) est posé égal à P^ (1) ou est calculé avec l’équa-
tion 8.

2.3 Résultats expérimentaux


Nous comparons les performances de notre algorithme PNB avec l’algorithme
de Bayes naïf NB sur la base WebKB1 et sur la base Reuters2 . La base WebKB est
constituée de 1051 pages Web collectées sur des sites de départements informa-
tique d’Universités américaines. Nous considérons le problème de classification
binaire consistant à déterminer les pages qui décrivent des unités d’enseignement,
classe qui sera considérée comme la classe positive. 22% des pages Web de la
base sont positives. Chaque exemple est constitué de deux sacs de mots, le pre-
mier correspondant aux mots de la page Web, le second aux mots contenus dans
les hyperliens pointant sur la page. Nous n’utiliserons ici que la première vue.
1 disponible à http ://www-2.cs.cmu.edu/afs/cs/project/theo-4/text-
learning/www/datasets.html
2 disponible à http ://moscow.mt.cs.cmu.edu :8081/reuters_21450/parc/
Classification de textes

TAB . 2 – Algorithme PNB de Bayes naïf avec textes positifs et non étiquetés

Étant donnés une estimation P^ (1) de la probabilité de la classe positive, un


ensemble P D de textes positifs et un ensemble UD de textes non étiquetés,le
classifieur de Bayes naïf classe un texte d = (w1 ; : : : ; wn ) – où un mot peut
apparaître avec répétitions – dans la classe

Y
i=n

PNB(d) = argmax P^ ( ) P^r(w j )


i (10)
2f0;1g i=1

où la probabilité de la classe négative est estimée par 1 P^ (1), les probabilités


des mots de la classe positive sont estimées à l’aide de l’équation 3 et les
estimations des probabilités des mots de la classe négative sont calculées à
l’aide de l’équation 9.

Nous n’utilisons pas de prétraitement (pas de « stopliste », pas de lemmatisation).


La base Reuters est l’une des plus utilisées en classification de textes. nous utili-
sons une version préparée par Y. Yang. Les textes sont répartis dans 135 classes.
Nous présentons les résultats pour deux problèmes binaires où la classe cible est
acq et grain.
Nous comparons PNB et NB en faisant varier le nombre de textes fournis en
entrée. Nous utilisons la version de PNB dans laquelle P^r (1) est calculé avec
l’équation 8. Les résultats sont présentés dans les tables 3 et 4. Les résultats
montrent que les performances de PNB avec p textes positifs sont meilleures que
celles de NB avec p textes étiquetés. D’autres expériences peuvent être trouvées
dans (Denis et al., 2002) : influence du nombre de textes non étiquetés, choix
de l’estimateur de P r(1), influence de la qualité de l’estimation de P (1) sur les
performances de PNB.

3 C O - TRAINING À PARTIR D ’ EXEMPLES POSITIFS ET


NON ÉTIQUETÉS

3.1 Co-training
Le « co-training » a été introduit dans (Blum & Mitchell, 1998) dans le cadre de
l’apprentissage semi-supervisé. Il consiste dans le développement d’algorithmes
d’apprentissage lorsque les données peuvent être considérées selon plusieurs vues.
Dans la base WebKB par exemple, une même donnée est constituée à la fois du
texte d’une page Web et du texte regroupant tous les hyperliens pointant sur cette
page. Blum et Mitchell ont prouvé des résultats théoriques d’apprenabilité dans
ce cadre sous les hypothèses que chacune des deux vues est suffisante pour clas-
CAp 2002

TAB . 3 – Une comparaison entre NB et PNB : pour un entier p fixé, nous com-
parons les erreurs des classifieurs de Bayes naïf construits avec p textes étiquetés
(colonne NBp ), des classifieurs de Bayes naïf construits avec p textes positifs et
N ' p  1=0:22 textes non étiquetés (colonne PNBp;N ), des classifieurs de Bayes
naïf construits avec N textes étiquetés (colonne NBN ) ; pour chaque valeur de p
200 expériences sont réalisées ; les erreurs sont estimées sur un ensemble de test ;
les erreurs moyennes sont fournies accompagnées de l’écart-type empirique.

p N NB p PNB p;N NB N

5 22 23.95(12.4) 16.24(12.67) 12.67(4.72)


10 45 17.49(7.00) 13.05(4.68) 8.50(3.56)
20 91 12.67(4.72) 10.12(3.70) 6.03(1.95)
30 137 10.25(4.51) 8.63(2.95) 5.44(1.64)
40 182 9.24(4.22) 8.12(2.61) 5.07(1.45)
50 228 8.55(3.73) 7.22(2.39) 4.97(1.38)
60 274 7.32(3.18) 6.59(1.83) 4.68(1.35)
70 319 6.74(2.40) 6.39(1.95) 4.54(1.29)

ser les documents et qu’elles sont indépendantes relativement à chaque classe. Ils
ont également proposé un algorithme d’apprentissage semi-supervisé, c’est-à-dire
prenant en entrée des étiquetés et non étiquetés.
Cet algorithme, appliqué à la base WebKB, est présenté dans la table 5. L’al-
gorithme utilisé sur chacune des deux vues est l’algorithme de Bayes naïf. Un
exemple d non étiqueté est un couple (d1 ; d2 ) où d1 est le sac des mots apparais-
sant sur la page Web et d2 le sac des mots des hyperliens pointant sur la page.
Nous notons abusivement UD = (UD1 ; UD2 ) un ensemble d’exemples non éti-
quetés avec deux vues. Pour un exemple étiqueté (d; ) où d = (d1 ; d2 ), nous
considérons les deux exemples étiquetés (d1 ; ) et (d2 ; ) obtenus par projection
sur chacune des deux vues. Étant donné un ensemble D d’exemples étiquetés
avec deux vues, nous notons D1 (respectivement D2 ) l’ensemble des exemples
étiquetés obtenus par projection sur la première vue (respectivement la seconde).
Par abus de notation, nous notons D = (D1 ; D2 ) un ensemble d’exemples éti-
quetés avec deux vues. L’algorithme de co-training tire un échantillon de taille u
dans lequel seront choisis les exemples à étiqueter. L’algorithme est incrémental.
À chaque étape de co-training, un classifieur est appris sur chacune des deux vues
avec l’échantillon d’exemples étiquetés courant ; chacun des deux classifieurs éti-
quette alors des exemples non étiquetés en choisissant ceux qui sont classés avec
la plus grande confiance. Après un certain nombre k d’étapes, trois classifieurs
sont définis : les classifieurs de Bayes naïfs sur chacune des deux vues et leur
combiné dont la sortie est basée sur le produit des probabilités estimées par cha-
cun des deux classifieurs.
Dans les expériences sur la base WebKB décrites dans (Blum & Mitchell, 1998),
u est choisi égal à 75 ; k est choisi égal à 30 ; la graine, c’est-à-dire l’échantillon
Classification de textes

TAB . 4 – Une comparaison entre NB et PNB pour les classes acq et grain de la
base Reuters : les colonnes sont identiques à celles de la table 3.

p N NB p PNB p;N NB N

Catégorie acq ; P^ (1) vaut 0.18


40 232 12.69 11.01 7.25
200 1164 7.32 5.45 4.22
360 2096 6.03 4.54 3.88
520 3028 5.17 4.24 3.91
Catégorie grain ; P^ (1) vaut 0.045
40 885 5.10 3.47 3.07
80 1771 4.32 3.27 3.10
120 2657 4.12 3.28 3.30
160 3542 3.83 3.49 3.50

d’entrée, contient 12 exemples dont 3 sont positifs et 9 négatifs ; à chaque étape de


co-training, un exemple positif et trois exemples négatifs sont ajoutés par chacun
des deux classifieurs (p = 1; n = 3). En plus du choix des algorithmes de base,
il y a donc de nombreux paramètres à fixer. Il est important de noter que le choix
de l’échantillon initial contenant 3 exemples positifs et 9 exemples négatifs et le
choix des paramètres p et n font qu’une estimation du poids de la classe positive
est donnée à l’apprenant dans le co-training. Des résultats expérimentaux sont
donnés dans (Blum & Mitchell, 1998), une comparaison entre les algorithmes de
co-training et des algorithmes basés sur EM est donnée dans (Nigam & Ghani,
2000).

3.2 Co-training à partir d’exemples positifs et non étiquetés


Nous allons définir des algorithmes de co-training dans le cas où l’on ne dis-
pose que d’exemples positifs et d’exemples non étiquetés. L’information initiale
est donc réduite à un (petit) nombre d’exemples positifs. Nous allons définir
un algorithme incrémental qui, apprenant sur chacune des deux vues, enrichit
l’échantillon d’apprentissage. Dans cette partie, à chaque étape de co-training,
des exemples positifs sont ajoutés à chaque étape. Dans la partie suivante, nous
autoriserons l’ajout d’exemples étiquetés (positifs et négatifs) à chaque étape.
L’algorithme PCT de co-training à partir d’exemples positifs et non étiquetés
est présenté dans la table 6. Il prend en entrée une estimation de la probabilité de la
classe positive, un ensemble d’exemples positifs et un ensemble d’exemples non
étiquetés. À chaque étape de co-training, un ensemble UDlearn d’exemples non
étiquetés est tiré aléatoirement dans UD dans le but d’estimer les probabilités
des mots. Le cardinal de UDlearn est choisi égal à Card (P D)=P^ (1). Ensuite,
un classifieur est généré sur chacune des deux vues en utilisant l’algorithme de
CAp 2002

TAB . 5 – Algorithme de co-training CT

Co-training algorithm CT (Blum & Mitchell, 1998)


paramètres : u, p, n, k
entrée : D = (D1 ; D2 ) un ensemble d’exemples étiquetés ;
UD = (UD1 ; UD2) un ensemble d’exemples non étiquetés
Créer un échantillon UDpool en tirant aléatoirement u exemples dans UD
répéter k étapes de co-training
pour i = 1; 2
Apprendre un classifieur NBi avec l’échantillon Di
Dans UDpool choisir p exemples classés positifs par NBi et n exemples
classés négatifs par NBi
Ajouter ces 2p + 2n exemples étiquetés dans D
Choisir aléatoirement 2p + 2n exemples de UD et les mettre dans UDpool
sortie : classifieurs NB1 , NB2 et Combine (NB1 ; NB2 )

Bayes naïf à partir de textes positifs et non étiquetés. Chacun des classifieurs choi-
sit alors p exemples classés positifs avec la plus grande confiance, exemples qui
sont ajoutés à l’échantillon courant P D d’exemples positifs. L’ensemble UDpool
est l’ensemble d’exemples dans lequel sont choisis les exemples positifs, il est
initialisé à UD et mis à jour à chaque étape de co-training. Après k étapes de co-
training, trois classifieurs sont produits en sortie : les classifieurs de Bayes naïfs
sur chacune des deux vues et leur combiné.

3.3 Co-training à partir d’exemples positifs et non étiquetés


avec ajout d’exemples positifs et négatifs
À chaque étape de co-training dans l’algorithme PCT, on ajoute uniquement des
exemples positifs. Or on dispose de classifieurs sur chacune des deux vues. L’idée
est donc d’utiliser ces classifieurs pour, à chaque étape, ajouter des exemples po-
sitifs et des exemples négatifs. Pour cela, nous allons d’abord proposer une mo-
dification de notre algorithme de Bayes naïf à partir d’exemples positifs et non
étiquetés pour qu’il utilise également les exemples négatifs introduits. Il faut no-
ter ici que nous ne pouvons utiliser l’algorithme de Bayes naïf classique, en effet,
les exemples négatifs peuvent être en petit nombre et la confiance dans l’étiquette
de ces exemples négatifs peut être faible, l’étiquette étant fournie par l’algorithme
de base sur chacune des vues. Autrement dit, nous avons à notre disposition trois
ensembles : P D d’exemples positifs, ND d’exemples négatifs et UD d’exemples
non étiquetés. La situation diffère de la situation usuelle pour deux raisons : (i) le
ratio Card (P D)=(Card (P D) + Card (ND)) n’est pas une estimation de la pro-
babilité de la classe positive et (ii) la confiance dans les étiquettes des exemples
Classification de textes

TAB . 6 – Algorithme de co-training à partir d’exemples positifs et non étiquetés ;


on n’ajoute que des exemples positifs

Algorithme de co-training PCT


paramètres : k , p
entrée : P^ (1) estimation de la probabilité de la classe positive ;
P D = (P D1 ; P D2) un ensemble d’exemples positifs ;
UD = (UD1 ; UD2) un ensemble d’exemples non étiquetés
UDpool égal à UD
répéter k étapes de co-training
Tirer aléatoirement Card (P D )
^ (1)
P
exemples de UD et former UDlearn
pour i = 1; 2
Apprendre PNBi avec en entrée P^ (1), P Di et UDilearn
Dans UDpool choisir p exemples classés positifs par PNBi
Ajouter les 2p exemples positifs dans P D ; les retirer de UDpool
sortie : classifieurs PNB1 , PNB2 et Combine (PNB1 ; PNB2 )

étiquetés au long des étapes de co-training est réduite.


Le point important est toujours l’estimation des probabilités des mots condition-
nellement aux classes. Pour les mots de la classe positive, on utilise l’ensemble
P D et l’équation 3. Pour la classe négative, on peut utiliser l’échantillon ND
d’exemples négatifs et l’équation 2 ou utiliser les échantillons P D d’exemples
positifs et UD d’exemples non étiquetés et l’équation 9. Nous allons utiliser ces
deux estimateurs car le nombre d’exemples négatifs peut être petit. De plus la
confiance dans l’étiquette négative peut être faible car ce sont des exemples néga-
tifs ajoutés lors des étapes de co-training. Si nous notons P^r (wi j0; ND) l’estima-
teur obtenu avec ND et l’équation 2 et P^r (wi j0; P D; UD) l’estimateur obtenu
avec P D, UD et l’équation 9, les estimations des probabilités des mots de la
classe négative sont définies par :

P^r(w j0) = (1 )P^r (w j0; P D; UD) + P^r(w j0; ND)


i i i (11)
où le paramètre est choisi égal à :

Card(ND) P^ (1)
=
1
 Card(P D)
 (12)
2 ^ 1 P (1)
où P^ (1) est l’estimateur de la probabilité de la classe positive fourni en entrée de
l’algorithme. Lorsqu’il n’y a pas d’exemples négatifs (à la première étape de co-
training), vaut 0 et les probabilités sont estimées uniquement sur les ensembles
P D et UD fournis en entrée. Lorsque le nombre d’exemples négatifs est petit,
est petit car notre confiance est plus grande dans l’étiquette des exemples positifs
CAp 2002

TAB . 7 – Algorithme de co-training à partir d’exemples positifs et non étiquetés ;


on ajoute des exemples positifs et des exemples négatifs à chaque étape de co-
training
Algorithme de co-training PNCT
paramètres : p, n, k
entrée : P^ (1) estimation de la probabilité de la classe positive ;
P D = (P D1 ; P D2 ) un ensemble d’exemples positifs ;
UD = (UD1 ; UD2) un ensemble d’exemples non étiquetés
UDpool égal à UD ; ND égal à ;
répéter k étapes de co-training
Tirer aléatoirement Card (P D )
^ (1)
P
exemples de UD et former UDlearn
pour i = 1; 2
Apprendre PNNBi avec en entrée P^ (1), P Di , UDilearn et NDi
Dans UDpool choisir p exemples classés positifs par PNNBi et
choisir n exemples classés négatifs
Ajouter les 2p exemples positifs dans P D ; ajouter les 2n exemples
dans ND ; retirer les 2n + 2p exemples de UDpool
sortie : classifieurs PNNB1 , PNNB2 et Combine (PNNB1 ; PNNB2 )

qui contient les exemples fournis en entrée de l’algorithme. Quand, après un cer-
tain nombre d’étapes de co-training, le ratio du nombre d’exemples positifs sur le
nombre d’exemples positifs et négatifs est proche de la probabilité de la classe po-
sitive alors vaut 1/2, c’est-à-dire que nous accordons une confiance équivalente
aux deux estimateurs.
Nous avons donc défini un algorithme de Bayes naïf PNNB qui prend en entrée
P^ (1), P D un échantillon d’exemples positifs, UD un échantillon d’exemples
non étiquetés et ND un ensemble d’exemples négatifs, il se déduit de PNB en
utilisant l’équation 11 pour calculer les probabilités des mots de la classe négative.
Nous pouvons donc définir un algorithme de co-training PNCT qui va utiliser les
exemples négatifs ajoutés au long des étapes de co-training. Cet algorithme est
décrit dans la table 7.

3.4 Résultats expérimentaux


Nous utilisons la base WebKB avec les deux vues « full-text » qui correspond
aux mots de la page et « inlinks » qui correspond aux mots des hyperliens pointant
sur la page. Nous comparons les performances des algorithmes PCT et PNCT.
Pour chaque expérience, nous prélevons aléatoirement un ensemble test de 263
exemples. Nous prélevons ensuite dans l’ensemble d’apprentissage un ensemble
d’exemples étiquetés contenant Card (P D) exemples positifs, ces exemples posi-
tifs constitueront la graine P D. Les exemples restants, sans leur étiquette, consti-
tuent l’ensemble UD. L’estimation P^ (1) de la probabilité de la classe positive est
Classification de textes

fixée égale à 0:22. Le paramètre k est choisi égal au nombre maximal d’étapes de
co-training réalisables avec les exemples disponibles. Les paramètres p et n sont
choisis égaux respectivement à 1 et 3.
Dans une première série d’expériences, nous étudions l’évolution des taux d’er-
reurs pour les deux algorithmes. La taille de la graine initiale est fixée égale à
20. Les erreurs sont estimées sur l’ensemble test et les résultats présentés sont
des moyennes sur 100 expériences. La figure 1 (respectivement la figure 2) donne
l’évolution des taux d’erreurs des trois classifieurs de sortie au long des itéra-
tions de l’algorithme de co-training PCT (respectivement PNCT). On constate
que, dans les premières itérations, les taux d’erreurs augmentent, puis à partir
d’un certain nombre d’étapes, les taux d’erreurs du classifieur sur la vue « full-
text » et du classifieur combiné diminuent jusqu’à améliorer sensiblement les
performances initiales. On peut expliquer ceci par le fait que les étiquettes des
premiers exemples ajoutés sont peu fiables et que le nombre d’exemples dispo-
nibles doit atteindre un seuil pour que les estimations deviennent suffisamment
précises. On peut également remarquer que les résultats sur la vue « inlinks »
sont plus décevants, cette vue étant assez pauvre (souvent moins d’une dizaine de
mots). Lorsque l’on regarde les expériences individuelles, pour une graine de 20,
on trouve une évolution similaire à celle présentée dans la courbe des moyennes
mais une courbe moins lisse. Pour des graines plus petites, par exemple 10 posi-
tifs, un mauvais choix de la graine induit des performances initiales médiocres,
performances qui peuvent encore se dégrader au long des étapes de co-training.
Toutefois, on constate expérimentalement que cette situation est peu fréquente.

’combined_’
20 ’fulltext_’
’inlinks_’

15
error rate

10

0
0 10 20 30 40 50 60 70
cotraining steps

F IG . 1 – Évolution des taux d’erreurs au long des itérations de l’algorithme de


co-training PCT
CAp 2002

’combined_’
20 ’fulltext_’
’inlinks_’

15
error rate

10

0
0 10 20 30 40 50 60 70
cotraining steps

F IG . 2 – Évolution des taux d’erreurs au long des itérations de l’algorithme de


co-training PNCT

Dans un deuxième série d’expériences, nous étudions l’évolution des taux d’er-
reurs des deux algorithmes de co-training en fonction de la taille de la graine.
La table 8 présente les résultats pour les deux algorithmes et les trois classifieurs
de sortie. Le classifieur combiné est toujours meilleur que les deux classifieurs
de base sur les vues « full-text » et « inlinks ». L’algorithme PNCT obtient de
meilleures performances que l’algorithme PCT. Il faut cependant noter qu’après,
par exemple, 50 étapes de co-training, PCT dispose des 20 exemples positifs de
la graine et de 100 exemples étiquetés positifs au long des étapes de co-training
tandis que PNCT dispose du même nombre d’exemples positifs mais aussi de 300
exemples étiquetés négatifs au long des étapes de co-training.
Nous pouvons comparer les résultats fournis dans les tables 8 et 3 et remar-
quer que, par exemple, PNCT avec une graine de 10 exemples positifs atteint
les mêmes performances que NB avec 100 exemples étiquetés. Ceci montre, sur
la base WebKB, qu’une approche de co-training avec exemples positifs et non
étiquetés uniquement fournit des résultats expérimentaux encourageants.
D’après (Blum & Mitchell, 1998), l’algorithme CT arrive à atteindre des taux
d’erreurs de 5% en partant d’une graine de 12 exemples constituée de 3 exemples
positifs et 9 exemples négatifs. Avec notre implantation de leur algorithme, nous
n’arrivons pas à atteindre des taux d’erreurs aussi bas. En particulier, il est assez
fréquent que pour certains tirages des 12 exemples initiaux, l’algorithme CT ait
des performances très mauvaises.
Classification de textes

TAB . 8 – Taux d’erreurs des algorithmes PCT (cinq premières lignes) et PNCT
(cinq dernières lignes) pour les trois classifieurs au départ (avec p exemples posi-
tifs – colonne start) et après k étapes de co-training (colonne stop)

full text inlinks combined


p start stop start stop start stop k
10 13.32 7.27 17.45 20.21 12.52 7.11 75
20 9.76 5.85 16.85 19.15 9.07 5.73 65
30 9.06 5.68 15.74 18.00 8.21 5.56 55
40 8.04 5.46 15.18 16.11 7.16 5.13 45
50 7.01 5.57 15.32 15.44 6.30 5.12 35
full text inlinks combined
p start stop start stop start stop k
10 12.39 6.53 15.12 15.54 11.70 5.85 75
20 10.40 5.83 13.97 14.89 9.48 5.18 65
30 9.11 5.54 13.57 14.67 8.23 4.92 55
40 8.16 5.86 13.33 14.50 7.21 5.17 45
50 7.22 5.61 12.82 14.09 6.31 4.87 35

4 C ONCLUSION

Nous avons proposé un algorithme de classification de textes « à la Bayes » à


partir de textes positifs et non étiquetés. Cet algorithme donne des résultats en-
courageants sur des bases d’évaluation du domaine. Nous souhaitons approfondir
le problème de l’estimation de P r(1), problème qui est lié à l’introduction de
la longueur des documents dans les modèles dits de Bayes naïfs. Nous souhai-
tons également pouvoir proposer un algorithme qui ne requiert pas en entrée une
estimation de la probabilité de la classe positive. Une solution possible, utilisée
dans (Letouzey et al., 2000), est de lancer l’algorithme avec différentes estima-
tions puis de choisir une hypothèse sur un ensemble de validation. Une seconde
solution serait de chercher à estimer directement cette probabilité.
Nous avons également appliqué notre algorithme dans un cadre de co-training.
Ici encore, nous obtenons des résultats encourageants sur la base WebKB. Ces
résultats doivent être confirmés par d’autres expériences.
Les travaux présentés dans cet article confirment l’intérêt des recherches faites
dans le cadre de l’apprentissage semi-supervisé et suggèrent que des exemples
non étiquetés peuvent améliorer considérablement les performances de l’appren-
tissage même lorsque l’information étiquetée de base est constituée d’un petit
nombre d’exemples positifs.
CAp 2002

Remerciements
Nous remercions Laurent Brehelin qui, par ses remarques très pertinentes et
ses propositions intéressantes, a contribué largement à améliorer la lisibilité et la
qualité de cet article.

R ÉFÉRENCES
B LUM A. & M ITCHELL T. (1998). Combining labeled and unlabeled data with co-
training. In Proc. 11th Annu. Conf. on Comput. Learning Theory, p. 92–100 : ACM
Press, New York, NY.
C OLLINS M. & S INGER Y. (1999). Unsupervised models for named entity classifica-
tion. In Proceedings of the Joint SIGDAT Conference on Empirical Methods in Natural
Language Processing and Very Large Corpora, p. 100 – 110.
D ENIS F., G ILLERON R. & T OMMASI M. (2002). Text classification from positive and
unlabeled examples. In IPMU’02, 9th International Conference on Information Proces-
sing and Management of Uncertainty in Knowledge-Based Systems.
D OMINGOS P. & PAZZANI M. (1997). On the optimality of the simple bayesian classifier
using zero-one loss. Machine Learning, 29, 103–130.
H OFMANN T. (1999). Text categorization with labeled and unlabeled data : A generative
model approach. In Working Notes for NIPS 99 Workshop on Using Unlabeled Data for
Supervised Learning.
J OACHIMS T. (1999). Transductive inference for text classification using support vec-
tor machines. In Proceedings of ICML-99, 16th International Conference on Machine
Learning, p. 200–209.
L ETOUZEY F., D ENIS F. & G ILLERON R. (2000). Learning from positive and unlabe-
led examples. In ALT’00, Eleventh International Conference on Algorithmic Learning
Theory, Lecture Notes in Artificial Intelligence, p. 71 – 85 : Springer Verlag.
L EWIS D. D. (1998). Naive (bayes) at forty : the independence assumption in information
retrieval. In S. V ERLAG, Ed., Tenth European Conference on Machine Learning, p. 4 –
15.
L EWIS D. D. & R INGUETTE M. (1994). A comparison of two learning algorithms for
text categorization. In Third Annual Symposium on Document Analysis and Information
Retrieval, p. 81 – 93.
N IGAM K. & G HANI R. (2000). Analyzing the applicability and effectiveness of co-
training. In Proceedings of CIKM-00, Ninth International Conference on Information
and Knowledge Management, p. 86–93.
N IGAM K., M C C ALLUM A. K., T HRUN S. & M ITCHELL T. M. (2000). Text classi-
fication from labeled and unlabeled documents using EM. Machine Learning, 39(2/3),
103–134.
YAROWSKI D. (1995). Unsupervised word sense disambiguation rivaling supervised
methods. In Proceedings thirty-third meeting of the ACL, p. 189 – 196.

Vous aimerez peut-être aussi