# 3 Identification de défigements candidats dans des tweets

Le processus que nous avons construit comporte trois étapes que nous décrivons ici : (I) l'extraction de tweets sources à partir de SF connues et le filtrage de ces tweets, (II) l'alignement des SF et des tweets et (III) l'isolement des segments communs constituant des défigements potentiels.

**Extraction de tweets et filtrage.** Pour collecter nos tweets, nous avons pris une base témoin de 217 expressions figées<fnref n="2" /> appartenant à quatre catégories : (1) extraits ou slogans de publicité ; (2) citations politiques ou historiques ; (3) accroches pour des films de cinéma et (4) autres types de locutions. Nous avons cherché autant que possible à répartir équitablement les SF de ces catégories entre des expressions anciennes et plus récentes d'une part, et des expressions dont la connaissance est *a priori* répandue chez les locuteurs du français, ou au contraire plus confidentielle d'autre part. Ce critère est quelque peu subjectif, mais l'objectif est de pouvoir regarder en détails un nombre limité d'expressions. Nous donnons ci-dessous un exemple de SF pour chaque catégorie :

1. Tu pousses le bouchon un peu trop loin, Maurice.

2. On ne peut pas accueillir toute la misère du monde.

3. Dans l'espace personne ne vous entend crier.

4. Partir, c'est mourir un peu.

Les mots des SF sélectionnées sont utilisés pour faire des requêtes via l'API de TWITTER. Pour chaque requête, nous donnons une SF complète, ceci afin de ne pas trop biaiser le corpus d'étude en contraignant trop les résultats. Nous avons réalisé 3 collectes quotidiennes entre novembre 2020 et janvier 2023 inclus aboutissant à un total de 3 362 750 tweets extraits. Chaque tweet est associé à la SF qui nous a permis de l'extraire. Nous avons ensuite pré-filtré les tweets en ne conservant que ceux qui comportent au moins 50 % de mots en commun avec la SF d'origine. Au final, nous obtenons 99 244 tweets. Nous excluons ensuite les « figements », c'est-à-dire les énoncés qui contiennent strictement l'expression figée recherchée. Le résultat de ce nouveau filtrage est représenté dans la Figure 1. Il résulte de tout cela un total de 56 687 tweets contenant potentiellement des défigements et 42 557 tweets contenant simplement un figement.

**Encodage et alignement des séquences figées et de leurs défigements potentiels.** Pour chaque tweet de notre corpus, nous calculons des alignements séquentiels pour visualiser les différences entre un défigement candidat et la SF associée. Ces alignements sont basés sur un découpage des tweets en mots et une analyse sur différentes couches d'informations linguistiques :

**brute** : tokenisation des formes de base du tweet et de la séquence figée;

**lemmatisée** : recherche des formes canoniques pour traiter les micro- variations formelles;

**étiquetée syntaxiquement** : pour rechercher la proximité de structure avec la SF;

**phonétisée** : encodage en phonèmes pour valoriser les SD jouant sur la sonorité.

Afin de faciliter un futur traitement multilingue, nous avons utilisé SPACY pour les trois premières couches (tokenisation, lemmatisation et étiquetage) et EPITRAN<fnref n="3" /> pour la phonétisation. Ensuite, nous alignons la SF et le tweet à l'aide de BIOPYTHON<fnref n="4" />. Cette librairie permet de calculer tous les alignements possibles entre deux séquences avec un alignement au token. Prenons l'expression

<footnote n="2">2. la liste complète est donnée sur le dépôt GitHub de notre projet https://github.com/JulienBez/DefigementTALN2023</footnote>

<footnote n="3">3. https://pypi.org/project/epitran/</footnote>

<footnote n="4">4. https://biopython.org/</footnote>
<figure><img src="image_29.png" /><figcaption>FIGURE 1 – Résultats de la récolte de tweets de novembre 2020 à janvier 2023 avant et après filtrage.</figcaption></figure>

figée « Travailler plus pour gagner plus » et le défigement suivant, fréquent (voire banal) dans notre
corpus : « Travailler plus pour gagner moins », l'alignement séquentiel obtenu serait :

Travailler plus pour gagner - plus

Travailler plus pour gagner moins -

**Isolement des potentiels défigements.** Les alignements contribuent à l'isolement d'une SD au sein d'un tweet, mais l'isolement n'est pas totalement réalisé puisque le tweet où le défigement est idéntifié peut contenir beaucoup plus de tokens que la SF d'origine. Les alignements sont commodes pour la lecture rapprochée des résultats mais ne permettent pas pour autant de délimiter précisément un défigement dans un tweet. L'étape suivante consiste donc à extraire les segments communs entre chaque tweet et son expression figée, c'est-à-dire d'extraire la plus grande séquence de mots commençant par le premier terme trouvé dans le tweet appartenant à l'expression figée et finissant par le dernier terme trouvé dans le tweet appartenant à cette expression. L'exemple ci-dessous représente un tweet de notre jeu de données, la SF qui a permis de sélectionner ce tweet et le segment commun identifié avec une distance d'édition au token de 2 (marqués en gras).

Tweet : @user1 @user2 C bon ça !! Travailler **moins** pour **bronzer** plus bye

SF : Travailler **plus** pour **gagner** plus

Défigement : Travailler **moins** pour **bronzer** plus

Les segments communs sont formés à partir de chaque alignement disponible pour un tweet (à raison d'un segment commun par alignement). Nous obtenons au moins un segment commun pour chaque couche d'information extraite du tweet (brute, lemmatisée, étiquetée et phonétisée). Dans le cas où, pour une même couche linguistique, nous avons plusieurs alignements, nous les conservons tous. Nous choisissons parmi ces alignements celui dont le segment commun est le plus proche de la SF<fnref n="5" />. Le Tableau 1 illustre de manière simplifiée ce que nous comparons entre une expression figée et le

<footnote n="5">5. Sans être strictement identique, puisque nous ne travaillons que sur les tweets ne comprenant pas la SF recherchée.</footnote>
<table><caption>TABLE 1 – Extraction du segment commun entre un tweet et une expression pour chaque couche linguistique (en gras les sous-séquences communes, en italiques les sous-séquences insérée).</caption><thead><tr><th>Couche</th><th>Séquence</th><th colspan="3">Segment commun dans le tweet</th><th>Sim</th></tr></thead><tbody><tr><td>BRUTE</td><td>Que la force soit avec toi</td><td>Que la force</td><td>(et la chance)</td><td>soit avec toi</td><td>.76</td></tr><tr><td>LEMME</td><td>Que le force être avec toi</td><td>Que le force</td><td>(et le chance)</td><td>être avec toi</td><td>.62</td></tr><tr><td>POS</td><td>SCONJ DET NOUN VERB ADP PRON</td><td>PRON DET NOUN</td><td>CCONJ DET NOUN</td><td>CCONJ ADP PRON</td><td>.36</td></tr><tr><td>PHON</td><td>kə la fɔrs swa avək twa</td><td>kə la fɔrs</td><td>(ɛ la ʃãsə)</td><td>swa avək twa</td><td>.76</td></tr></tbody></table>

segment commun extrait d'un tweet, nous y ajoutons la similarité cosinus calculée sur les vecteurs de bigrammes d'unités pour chaque couche (tokens, lemmes ...). Le segment commun permet de réduire le contenu du tweet à la sous-séquence constituant un potentiel défigement et donc de mieux mesurer la similarité que si nous gardions l'intégralité du tweet pour calcul. Pour les défigements simples (substitution ou insertion), le segment commun peut correspondre intégralement au potentiel défigement recherché, comme c'est le cas dans le Tableau 1.

## 4 Observations sur la qualité des défigements candidats

**Cas de l'absence de défigement.** Sans surprise, nous isolons des segments communs ne correspondant pas du tout à des défigements. Il s'agit de séquences dites libres. (1) et (2) en sont des exemples.

1. Tout ça pour travailler samedi prochain en plus yes. (SF : « travailler plus pour gagner plus »)

2. En train de regarder le plus beau travailler. (SF : « train de vie »)

**Expressions sans trace de défigement.** Nous n'utilisons pas les tweets contenant exactement la SF. Ces tweets ne font pas état d'un quelconque défigement. Nous notons deux situations ambiguës liées à la non prise en compte des tweets contenant l'expression recherchée mot pour mot : les défigements qui se prolongent dans le contexte du figement et les défigements non marqués formellement.

**Défigement en milieu d'énoncé** C'est le type de défigement le mieux identifié par notre méthodologie. Voici quelques exemples identifiés à partir des SF « Dans l'espace, personne ne vous entendra crier » et « Travailler plus pour gagner plus ».

3. Dans la **Beauce personne** ne vous entendra crier.

4. Travailler plus pour redistribuer plus.

**Défigement en début/fin d'énoncé.** Parfois, les modifications se situent en début ou fin d'expression, il est alors plus difficile de borner le segment commun. Ainsi, notre méthode ne permet pas d'isoler :

5. Dans l'espace, personne ne vous entendra crier **BONNE ANNÉE**.

6. Travailler plus pour **ne plus rien gagner**.

**Expressions ouvertes sur leur contexte droit.** Elles ont la spécificité d'être ouvertes sur leur contexte droit. Nous avons ainsi pour les SF « Ce moment où ... » et « Je traverse la rue et ... » :

7. Ce moment où **tu prends conscience que tu ne mérites pas ça...**

8. je traverse la rue et **je te trouve un boulot**.

9. Moi je traverse la rue et **je t'en gagne une de médaille d'or**.

Pour le moment, nous n'appliquons pas de traitements particuliers à ce type d'expressions. Nous envisageons cependant de préciser que pour ces expressions, il nous faut récupérer tout le contexte droit jusqu'à la première marque de fin de phrase (un point) ou même jusqu'à la fin du tweet.
# 5 Tri des défigements candidats par mesures de similarité

Afin d'évaluer si une approche par mesures de similarités permet de détecter des défigements, nous créons plusieurs classements des segments communs. Un classement est créé pour chaque mesure de similarité et pour chaque couche d'information linguistique. Nous cherchons à comparer systématiquement l'expression figée recherchée et les segments communs correspondants. Nous supposons qu'il doit exister un seuil, variable selon les expressions et les couches, à partir duquel les résultats renvoyés correspondent régulièrement à des SD. Nous testons différentes mesures de similarités (Cosinus, Dice, Hamming, Jaccard, Kulsinski, Matching et Rusell-rao). Nous allons observer plus en détails les défigements obtenus par couche linguistique pour la SF « Travailler plus pour gagner plus » (parmi 7 520 tweets contenant des défigements candidats). Nous prenons les dix défigements candidats les plus fréquents et nous les classons par mesure de similarité pour chaque couche. Les résultats obtenus avec la mesure de similarité cosinus sont présentés dans les Tableaux 2 à 5. Une SD remarquable a tendance à être plus utilisée selon (Cusimano, 2015), d'où notre choix de travailler sur les 10 candidats les plus fréquents.

<table><caption>TABLE 2 – Couche brute</caption><thead><tr><th>Défigement potentiel</th><th>Sim</th><th>Freq</th></tr></thead><tbody><tr><td>travailler plus pour gagner moins</td><td>0,80</td><td>364</td></tr><tr><td>travailler plus pour gagner pareil</td><td>0,80</td><td>10</td></tr><tr><td>travailler plus pour gagner autant</td><td>0,80</td><td>9</td></tr><tr><td>travailler plus pour payer plus</td><td>0,73</td><td>44</td></tr><tr><td>travailler plus sans gagner plus</td><td>0,73</td><td>21</td></tr><tr><td>travailler plus pour partager plus</td><td>0,73</td><td>10</td></tr><tr><td>travailler moins pour gagner plus</td><td>0,70</td><td>176</td></tr><tr><td>travailler plus pour vivre moins</td><td>0,60</td><td>16</td></tr><tr><td>travailler plus pour perdre moins</td><td>0,60</td><td>14</td></tr><tr><td>travailler moins et gagner plus</td><td>0,50</td><td>30</td></tr></tbody></table>

<table><caption>TABLE 3 – Couche lemmatisée</caption><thead><tr><th>Défigement potentiel</th><th>Sim</th><th>Freq</th></tr></thead><tbody><tr><td>travailler plus pour gagner moins</td><td>0,80</td><td>364</td></tr><tr><td>travailler plus pour gagner pareil</td><td>0,80</td><td>10</td></tr><tr><td>travailler plus pour gagner autant</td><td>0,80</td><td>9</td></tr><tr><td>travailler plus pour payer plus</td><td>0,73</td><td>44</td></tr><tr><td>travailler plus sans gagner plus</td><td>0,73</td><td>21</td></tr><tr><td>travailler plus pour partager plus</td><td>0,73</td><td>10</td></tr><tr><td>travailler moins pour gagner plus</td><td>0,70</td><td>176</td></tr><tr><td>travailler plus pour vivre moins</td><td>0,60</td><td>16</td></tr><tr><td>travailler plus pour perdre moins</td><td>0,60</td><td>14</td></tr><tr><td>travailler moins et gagner plus</td><td>0,50</td><td>30</td></tr></tbody></table>

<table><caption>TABLE 4 – Couche étiquetée</caption><thead><tr><th>Défigement potentiel</th><th>Sim</th><th>Freq</th></tr></thead><tbody><tr><td>travailler plus pour gagner moins</td><td>1,0</td><td>438</td></tr><tr><td>travailler moins pour gagner plus</td><td>1,0</td><td>179</td></tr><tr><td>travailler plus pour payer plus</td><td>1,0</td><td>44</td></tr><tr><td>travailler plus sans gagner plus</td><td>1,0</td><td>21</td></tr><tr><td>travailler plus pour vivre moins</td><td>1,0</td><td>18</td></tr><tr><td>travailler plus pour perdre moins</td><td>1,0</td><td>14</td></tr><tr><td>travailler plus pour gagner autant</td><td>1,0</td><td>12</td></tr><tr><td>gagner plus sans travailler plus</td><td>1,0</td><td>11</td></tr><tr><td>travailler plus pour produire plus</td><td>1,0</td><td>10</td></tr><tr><td>travailler plus pour mourir plus</td><td>1,0</td><td>7</td></tr></tbody></table>

<table><caption>TABLE 5 – Couche phonétisée</caption><thead><tr><th>Défigement potentiel</th><th>Sim</th><th>Freq</th></tr></thead><tbody><tr><td>travailler plus pour gagner moins</td><td>0,80</td><td>364</td></tr><tr><td>travailler plus pour gagner pareil</td><td>0,80</td><td>10</td></tr><tr><td>travailler plus pour gagner autant</td><td>0,80</td><td>9</td></tr><tr><td>travailler plus pour payer plus</td><td>0,73</td><td>44</td></tr><tr><td>travailler plus sans gagner plus</td><td>0,73</td><td>21</td></tr><tr><td>travailler plus pour partager plus</td><td>0,73</td><td>10</td></tr><tr><td>travailler moins pour gagner plus</td><td>0,70</td><td>176</td></tr><tr><td>travailler plus pour vivre moins</td><td>0,60</td><td>16</td></tr><tr><td>travailler plus pour perdre moins</td><td>0,60</td><td>14</td></tr><tr><td>travailler moins et gagner plus</td><td>0,57</td><td>30</td></tr></tbody></table>

Nous remarquons pour les couches brute, lemmatisée et phonétisée des résultats identiques avec sept défigements pour des mesures de similarités allant de 0,7 à 0,8 et trois défigements pour des mesures de similarité allant de 0,6 à 0,5. Nous observons deux différences notables entre les résultats obtenus avec ces trois couches et les résultats obtenus à la couche étiquetée. La première est une différence de fréquence des segments communs. Cela peut s'expliquer par le nombre important d'alignements trouvés pour la couche étiquetée (34 008 alignements) par rapport aux autres couches (11 708 pour
les couches brute et lemmatisée, 11 710 pour la couche phonétisée). Nous rappelons que pour chaque tweet, un alignement est renvoyé par possibilité d'alignement identifiée avec la librairie Biopython et ce pour chaque couche linguistique étudiée. Comme les étiquettes morphosyntaxiques d'une SF peuvent être assez communes et se retrouver de multiples fois dans un tweet, il n'est pas surprenant que les alignements morphosyntaxiques soient multiples. La seconde différence concerne les mesures de similarité obtenues. Sont renvoyés avec une mesure de similarité égale à 1 tous les segments communs dont la structure morphosyntaxique correspond exactement à celle de la SF. Bien que les segments communs renvoyés dans le Tableau 4 correspondent tous à des défigements, nous retrouvons également des segments communs comme (10), (11) et (12) avec une même similarité de 1.

10. Fait tout pour agir maintenant

11. Je fais comment pour travailler

12. Commence alors à décliner progressivement

Pour cette expression, la couche étiquetée ne s'avère pas efficace, par contre en observant les trois autres couches, nous observons qu'un seuil de similarité de 0,7 pour Cosinus et Dice permet de ne garder que des SD. Nous présentons dans le Tableau 6 les 20 résultats les plus fréquents obtenus avec la couche brute et une similarité cosinus entre 0,8 et 0,7 et nous y ajoutons les résultats obtenus avec les autres mesures de similarité pour chaque segment commun. Nous remarquons (lignes grisées) un ensemble de SD possédant les mêmes résultats d'une mesure de similarité à l'autre (0,73 pour la similarité cosinus). Au total, nous comptons 74 potentiels défigements avec les mêmes résultats pour chaque mesure de similarité pour notre SF. Sur ces 73 potentiels défigements, 65 sont des SD et 8 ne sont pas des SD. Nous divisons les séquences qui ne sont pas des SD en deux catégories : les SF avec un énoncé fautif (13 à 16) et les SD qui n'ont été capturées que partiellement (17 à 20).

13. travailler plus poyr gagner plus

14. travailler plus pour gagné plus

15. travailler plus pour gagniez plus

16. travailler plus pour gagnez plus

17. travailler plus pour le plus

18. travailler plus pour la plus

19. travailler plus pour l ukraine plus

20. travailler plus pour être plus

Toutes les SD obtenues pour ces résultats sont globalement de la même forme : il s'agit de défigements par substitution d'un des termes de l'expression recherchée par un autre terme. Nous pourrions isoler un seuil de similarité dans lequel nous observerions toutes les occurrences de SD par substitution d'un terme. Cependant, ce seuil varie selon les expressions. On remarque des SD formées par substitution d'un terme avec des similarités supérieures et inférieures à celles que nous analysons, que nous indiquons en bleu dans le Tableau 6. Nous observons que la position des termes substitués a un impact sur les mesures de similarités renvoyées. Le seuil d'identification varie sans doute selon le procédé de formation du défigement. Notons que ces seuils ne garantissent pas l'absence de faux positifs. Il faudrait pouvoir quantifier ces faux positifs pour chaque seuil et établir une méthode permettant de les trier. Par exemple, pour les fautes d'orthographe, nous pouvons observer la couche lemmatisée : pour notre seuil, on éliminerait ainsi les faux positifs (13), (14) et (15), qui contiennent des formes mal orthographiées du verbe « gagner ». De même, si nous recherchons des défigements par substitution, il est très probable que les SD aient une similarité de 1 sur la couche morphosyntaxique avec nos mesures de similarité. On exclut ainsi (17), (18), (19) et potentiellement (13) du fait de la faute d'orthographe, non répertoriée dans le lexique et non-étiquetée. En revanche, (20) n'est pas écarté avec ces filtrages.
<table><caption>TABLE 6 – Résultats obtenus avec la SF « Travailler plus pour gagner plus » pour chaque mesure de similarité, classés par similarité cosinus décroissante.</caption><thead><tr><th colspan="3">Défigement potentiel</th><th>Cos</th><th>Dic</th><th>Ham</th><th>Jac</th><th>Kul</th><th>Mat</th><th>Rus</th><th>#</th></tr></thead><tbody><tr><td>travailler plus</td><td>pour gagner</td><td>moins</td><td>,80</td><td>,82</td><td>,60</td><td>,70</td><td>,54</td><td>,70</td><td>,70</td><td>364</td></tr><tr><td>travailler plus</td><td>pour gagner</td><td>parmi</td><td>,80</td><td>,82</td><td>,60</td><td>,70</td><td>,54</td><td>,70</td><td>,70</td><td>10</td></tr><tr><td>travailler plus</td><td>pour gagner</td><td>autant</td><td>,80</td><td>,82</td><td>,60</td><td>,70</td><td>,54</td><td>,70</td><td>,70</td><td>9</td></tr><tr><td>travailler plus</td><td>pour travailler</td><td>plus</td><td>,78</td><td>,71</td><td>,33</td><td>,56</td><td>,38</td><td>,56</td><td>,56</td><td>5</td></tr><tr><td>travailler plus</td><td>pour gagner un peu</td><td>plus</td><td>,78</td><td>,70</td><td>,54</td><td>,54</td><td>,37</td><td>,54</td><td>,54</td><td>3</td></tr><tr><td>travailler plus</td><td>pour payer</td><td>plus</td><td>,73</td><td>,62</td><td>,45</td><td>,45</td><td>,29</td><td>,45</td><td>,45</td><td>44</td></tr><tr><td>travailler plus</td><td>sans gagner</td><td>plus</td><td>,73</td><td>,62</td><td>,45</td><td>,45</td><td>,29</td><td>,45</td><td>,45</td><td>21</td></tr><tr><td>travailler plus</td><td>pour partager</td><td>plus</td><td>,73</td><td>,62</td><td>,45</td><td>,45</td><td>,29</td><td>,45</td><td>,45</td><td>10</td></tr><tr><td>travailler plus</td><td>pour produire</td><td>plus</td><td>,73</td><td>,62</td><td>,45</td><td>,45</td><td>,29</td><td>,45</td><td>,45</td><td>9</td></tr><tr><td>travailler plus</td><td>et gagner</td><td>plus</td><td>,73</td><td>,62</td><td>,45</td><td>,45</td><td>,29</td><td>,45</td><td>,45</td><td>9</td></tr><tr><td>travailler plus</td><td>pour être</td><td>plus</td><td>,73</td><td>,62</td><td>,45</td><td>,45</td><td>,29</td><td>,45</td><td>,45</td><td>7</td></tr><tr><td>travailler plus</td><td>pour mourir</td><td>plus</td><td>,73</td><td>,62</td><td>,45</td><td>,45</td><td>,29</td><td>,45</td><td>,45</td><td>7</td></tr><tr><td>travailler plus</td><td>pour crever</td><td>plus</td><td>,73</td><td>,62</td><td>,45</td><td>,45</td><td>,29</td><td>,45</td><td>,45</td><td>7</td></tr><tr><td>travailler plus</td><td>pour donner</td><td>plus</td><td>,73</td><td>,62</td><td>,45</td><td>,45</td><td>,29</td><td>,45</td><td>,45</td><td>6</td></tr><tr><td>travailler plus</td><td>pour perdre</td><td>plus</td><td>,73</td><td>,62</td><td>,45</td><td>,45</td><td>,29</td><td>,45</td><td>,45</td><td>5</td></tr><tr><td>travailler plus</td><td>pour avoir</td><td>plus</td><td>,73</td><td>,62</td><td>,45</td><td>,45</td><td>,29</td><td>,45</td><td>,45</td><td>4</td></tr><tr><td>travailler plus</td><td>pour faire</td><td>plus</td><td>,73</td><td>,62</td><td>,45</td><td>,45</td><td>,29</td><td>,45</td><td>,45</td><td>4</td></tr><tr><td>travailler moins</td><td>pour gagner</td><td>plus</td><td>,70</td><td>,71</td><td>,45</td><td>,55</td><td>,38</td><td>,55</td><td>,55</td><td>176</td></tr><tr><td>travailler autant</td><td>pour gagner</td><td>plus</td><td>,70</td><td>,71</td><td>,45</td><td>,55</td><td>,38</td><td>,55</td><td>,55</td><td>5</td></tr><tr><td>travailler à l'étranger</td><td>pour gagner</td><td>plus</td><td>,70</td><td>,70</td><td>,45</td><td>,55</td><td>,38</td><td>,55</td><td>,55</td><td>2</td></tr></tbody></table>

Nous réalisons la même expérience avec une nouvelle SF : « Que la force soit avec toi » (1 523 occurrences). Nous obtenons le Tableau 7. Nous retrouvons en gris les potentiels défigements dont la mesure de similarité cosinus est égale à 0,73. Là encore, nous retrouvons pour ces résultats des défigements formés par la substitution d'un des termes de la SF. Nous remarquons tout de même des différences entre les résultats des mesures de similarités d'une SF à l'autre (sauf pour les similarités Cosinus et Kulsinski).

Les SD « que la force et le courage soit avec toi » et « que le pouvoir de la force soit avec toi » ont bien une mesure de similarité cosinus égale à 0,73 mais leur procédé de formation n'est pas la substitution d'un des termes de l'expression recherchée. Nous remarquons des résultats différents pour toutes les autres mesures de similarités pour ces deux SD, ce qui permet de les isoler des autres SD avec une distance cosinus de 0,73 qui sont bien formées par substitution d'un terme.

Toujours dans le Tableau 7, nous indiquons en bleu un second seuil à partir duquel nous observons des SD formées par insertion d'un, deux ou trois mots au sein de l'expression recherchée. Il est donc bien possible d'observer des types de défigements différents en fonction du seuil que nous analysons. À ce stade, nous trouvons ces seuils par une lecture des résultats obtenus pour deux expressions. Un de nos prochains objectifs sera d'identifier automatiquement les seuils permettant d'isoler uniquement des SD. La finalité de ce travail nous permettra de savoir si des seuils de mesure de similarité peuvent représenter plusieurs types de défigement, comme c'est le cas avec les exemples que nous avons traités.
<table><caption>TABLE 7 – Résultats obtenus avec la SF « Que la force soit avec toi » pour chaque similarité, classés selon la mesure de similarité cosinus.</caption><thead><tr><th colspan="2">Potentiel défigement</th><th>Cos</th><th>Dic</th><th>Ham</th><th>Jac</th><th>Kul</th><th>Mat</th><th>Rus</th><th>#</th></tr></thead><tbody><tr><td>que</td><td>la force de dieu soit avec toi</td><td>,78</td><td>,77</td><td>,62</td><td>,62</td><td>,45</td><td>,62</td><td>,62</td><td>9</td></tr><tr><td>que</td><td>la force du café soit avec toi</td><td>,78</td><td>,77</td><td>,62</td><td>,62</td><td>,45</td><td>,62</td><td>,62</td><td>6</td></tr><tr><td>que</td><td>la force de guérir soit avec toi</td><td>,78</td><td>,77</td><td>,62</td><td>,62</td><td>,45</td><td>,62</td><td>,62</td><td>6</td></tr><tr><td>que</td><td>la force et l'amour soit avec toi</td><td>,78</td><td>,77</td><td>,62</td><td>,62</td><td>,45</td><td>,62</td><td>,62</td><td>4</td></tr><tr><td>que</td><td>la force du vent soit avec toi</td><td>,78</td><td>,77</td><td>,62</td><td>,62</td><td>,45</td><td>,62</td><td>,62</td><td>3</td></tr><tr><td>que</td><td>la force du tigre soit avec toi</td><td>,78</td><td>,77</td><td>,62</td><td>,62</td><td>,45</td><td>,62</td><td>,62</td><td>3</td></tr><tr><td>que</td><td>la force du dragon soit avec toi</td><td>,78</td><td>,77</td><td>,62</td><td>,62</td><td>,45</td><td>,62</td><td>,62</td><td>3</td></tr><tr><td>que</td><td>la force soit avec moi et toi</td><td>,78</td><td>,77</td><td>,62</td><td>,62</td><td>,45</td><td>,62</td><td>,62</td><td>2</td></tr><tr><td>que</td><td>la force of god soit avec toi</td><td>,78</td><td>,77</td><td>,62</td><td>,62</td><td>,45</td><td>,62</td><td>,62</td><td>2</td></tr><tr><td>que</td><td>la force et la patience soit avec toi</td><td>,76</td><td>,74</td><td>,53</td><td>,59</td><td>,42</td><td>,59</td><td>,59</td><td>4</td></tr><tr><td>que</td><td>là force soit avec toi</td><td>,73</td><td>,73</td><td>,57</td><td>,57</td><td>,4</td><td>,57</td><td>,57</td><td>9</td></tr><tr><td>que</td><td>la paix soit avec toi</td><td>,73</td><td>,73</td><td>,57</td><td>,57</td><td>,4</td><td>,57</td><td>,57</td><td>6</td></tr><tr><td>que</td><td>la force soit en toi</td><td>,73</td><td>,73</td><td>,57</td><td>,57</td><td>,4</td><td>,57</td><td>,57</td><td>6</td></tr><tr><td>que</td><td>la force et le courage soit avec toi</td><td>,73</td><td>,71</td><td>,56</td><td>,56</td><td>,38</td><td>,56</td><td>,56</td><td>6</td></tr><tr><td>que</td><td>le pouvoir de la force soit avec toi</td><td>,73</td><td>,71</td><td>,56</td><td>,56</td><td>,38</td><td>,56</td><td>,56</td><td>3</td></tr><tr><td>que</td><td>le force soit avec toi</td><td>,73</td><td>,73</td><td>,57</td><td>,57</td><td>,4</td><td>,57</td><td>,57</td><td>3</td></tr><tr><td>que</td><td>la santé soit avec toi</td><td>,73</td><td>,73</td><td>,57</td><td>,57</td><td>,4</td><td>,57</td><td>,57</td><td>2</td></tr><tr><td>que</td><td>la réussite soit avec toi</td><td>,73</td><td>,73</td><td>,57</td><td>,57</td><td>,4</td><td>,57</td><td>,57</td><td>2</td></tr><tr><td>que</td><td>la force ne soit pas avec toi</td><td>,70</td><td>,69</td><td>,53</td><td>,53</td><td>,36</td><td>,53</td><td>,53</td><td>6</td></tr><tr><td>que</td><td>la force ne soit jamais avec toi</td><td>,70</td><td>,69</td><td>,53</td><td>,53</td><td>,36</td><td>,53</td><td>,53</td><td>2</td></tr></tbody></table>

## 6 Conclusion et perspectives

Dans cet article, nous nous sommes intéressés à un cas particulier de créativité lexicale : le défigement linguistique. Nous avons construit un corpus de tweets sur lequel nous avons appliqué une méthode de reconnaissance de séquences défigées (SD) fondée sur des mesures de similarité. Nous avons exploité des mesures de similarité pour identifier des SD dans ce corpus de tweets. Nous avons utilisé différentes couches d'analyse linguistique pour parvenir à une reconnaissance de ces SD en nous limitant à une approche des défigements interprétables hors contexte. Dans le futur, nous envisageons d'exploiter plus avant la notion de « remotivation » des SD telle que proposée par (Eline & Zhu, 2014) qui pourrait permettre de différencier les SD volontaires des énoncés fautifs et d'interroger la relation entre degré de figement et défigement. Nous estimons qu'une mesure de similarité combinant les couches linguistiques brutes, étiquetée et lemmatisée permet une meilleure reconnaissance de défigements. Il nous reste à déterminer si la couche phonétique peut, elle aussi, se révéler utile dans notre tâche et à exploiter également une couche syllabique. Les résultats obtenus avec les mesures de similarité nous montrent qu'il est possible de créer une classification des défigements. On observe des seuils de similarité permettant de regrouper des SD formées par les mêmes procédés linguistiques. Nous nous demandons si ces seuils devront être « fixés » globalement ou pourront être calculés pour chaque expression, ou pour chaque procédé de construction. Déterminer automatiquement ces seuils, en exploitant des modèles de langue contextuels est une autre voie que nous comptons explorer.
Références

BAPTISTA J., CORREIA A. & FERNANDES G. (2004). Frozen Sentences of Portuguese : Formal Descriptions for NLP. In T. TANAKA, A. VILLAVICENCIO, F. BOND & A. KORHONEN, Éds., *ACL Workshop on Multiword Expressions : Integrating Processing*, p. 72–79, Barcelona, Spain. HAL : [hal-01025937](http://hal.inria.fr/01025937).

CATALÀ D. & BAPTISTA J. (2007). Spanish adverbial frozen expressions. In *Proceedings of the Workshop on A Broader Perspective on Multiword Expressions*, p. 33–40.

CUSIMANO C. (2015). Figement de séquences défigées. *Pratiques*, (159-160), 69 78. DOI: [10.4000/pratiques.2833](https://doi.org/10.4000/pratiques.2833).

ELINE J. & ZHU L. (2014). Défigement et inférence - cas d'études du Canard enchaîné. *SHS Web of Conferences*, **8**, 681 695. DOI: [10.1051/shsconf/20140801235](https://doi.org/10.1051/shsconf/20140801235).

FIALA P. & HABERT B. (1989). La langue de bois en éclat : les défigements dans les titres de presse quotidienne française. *Mots. Les langages du politique*, **21**(1), 83–99. DOI: [10.3406/mots.1989.1504](https://doi.org/10.3406/mots.1989.1504).

FORT K., GUILLAUME B., CONSTANT M., LEFÈBVRE N. & PILATTE Y.-A. (2018). “Fingers in the Nose” : Evaluating Speakers’ Identification of Multi-Word Expressions Using a Slightly Gamified Crowdsourcing Platform. In *Proceedings of the Joint Workshop on Linguistic Annotation, Multiword Expressions and Constructions (LAW-MWE-CxG-2018)*, p. 207–213, Santa Fe, New Mexico, USA : Association for Computational Linguistics.

FORT K., GUILLAUME B., PILATTE Y.-A., CONSTANT M. & LEFÈBVRE N. (2020). Rigor Mortis : Annotating MWEs with a Gamified Platform. In *Proceedings of the Twelfth Language Resources and Evaluation Conference*, p. 4395–4401, Marseille, France : European Language Resources Association.

FRANÇOIS J. & MANGUIN J.-L. (2006). Dispute théologique, discussion oiseuse et conversation téléphonique : les collocations adjectivo-nominales au cœur du débat. *Langue française*, **150**(2), 50–65. DOI: [10.3917/lf.150.0050](https://doi.org/10.3917/lf.150.0050).

GALISSON R. (1993). Les palimpsestes verbaux : des révélateurs culturels remarquables, mais peu remarqués. *Repères. Recherches en didactique du français langue maternelle*, **8**(1), 41–62. DOI: [10.3406/reper.1993.2091](https://doi.org/10.3406/reper.1993.2091).

GRECIANO (1985). Gréciano Gertrud, Signification et dénotation en Allemand. La sémantique des expressions idiomatiques, Paris, Klincksieck, 1983. *L'information grammaticale*, **24**(1), 47–48.

GROSS G. (1996). *Les expressions figées en français. Noms composés et autres locutions - Gaston Gross*. OPHRYS.

GROSS M. (1982). Une classification des phrases « figées » du français. *Revue québécoise de linguistique*, **11**(2), 151. DOI: [10.7202/602492ar](https://doi.org/10.7202/602492ar).

LAMIROY B. (2008). Le figement : à la recherche d'une définition. *ZFSL, Zeitschrift für französische Sprache und Literatur*, **36**, 85–99.

LECLER A. (2004). Blague à part, peut-on traiter la question du défigement en termes dialogiques ? *Cahiers de praxématique*, (43), 81–106. DOI: [10.4000/praxematique.1807](https://doi.org/10.4000/praxematique.1807).

LECLÈRE C. (2000). Expressions figées dans la francophonie : le projet bfqs.

MEJRI S. (1998). La conceptualisation dans les séquences figées. *L'information grammaticale*, **2**(1), 41–48. DOI: [10.3406/igram.1998.3699](https://doi.org/10.3406/igram.1998.3699).
MEJRI S. (2005). Figement absolu ou relatif : la notion de degré de figement. *Linx. Revue des linguistes de l'université Paris X Nanterre*, (53), 183-196. DOI: 10.4000/linx.283.

MEJRI S. (2009). Figement, défigement et traduction. Problématique théorique. *Pratiques*, p. 153.

MOLINARO N. & CARREIRAS M. (2010). Electrophysiological evidence of interaction between contextual expectation and semantic integration during the processing of collocations. *Biological Psychology*, **83**, 176-190. DOI: 10.1016/j.biopsycho.2009.12.006.

NUNBERG G., SAG I. A. & WASOW T. (1994). Idioms. *Language*, **70**(3), 491–538. DOI: 10.2307/416483.

ROMMERS J., DIJKSTRA T. & BASTIAANSEN M. (2013). Context-dependent Semantic Processing in the Human Brain : Evidence from Idiom Comprehension. *Journal of Cognitive Neuroscience*, **25**(5), 762–776. DOI: 10.1162/jocn_a_00337.

TAN M., JIANG J. & DAI B. T. (2021). A bert-based two-stage model for chinese chengyu recommendation. *Transactions on Asian and Low-Resource Language Information Processing*, **20**(6), 1–18.

VALITUTTI A., TOIVONEN H., DOUCET A. & TOIVANEN J. M. (2013). “let everything turn well in your wife” : generation of adult humor using lexical constraints. In *Proceedings of the 51st Annual Meeting of the Association for Computational Linguistics (Volume 2 : Short Papers)*, p. 243–248.
# Tri-apprentissage génératif : génération de données pour de la reconnaissance d'entités nommées semi-supervisé

Hugo Boulanger

Thomas Lavergne

Sophie Rosset

Laboratoire Interdisciplinaire des Sciences du Numérique – LISN, CNRS,
Université Paris-Saclay

prenom.nom@lisn.upsaclay.fr

## RÉSUMÉ

Le développement de solutions de traitement automatique de la langue pour de nouvelles tâches nécessite des données, dont l'obtention est coûteuse. L'accès aux données peut être limité en raison de la nature sensible des données. La plupart des travaux récents ont exploité de grands modèles pré-entraînés pour initialiser des versions spécialisées de ceux-ci. La spécialisation d'un tel modèle nécessite toujours une quantité élevée de données étiquetées spécifiques à la tâche cible. Nous utilisons l'apprentissage semi-supervisé pour entraîner des modèles dans un contexte où le nombre d'exemples étiquetés est limité et le nombre de données non étiquetées est nul. Nous étudions plusieurs méthodes pour générer le corpus non étiqueté nécessaire à l'utilisation de l'apprentissage semi-supervisé. Nous introduisons les méthodes de génération entre les épisodes d'entraînement et utilisons les modèles entraînés pour filtrer les exemples générés. Nous testons cette génération avec le tri-apprentissage et l'auto-apprentissage sur des corpus Anglais et Français.

## ABSTRACT

### Generative Tri-training : Semi-Supervised NER with On-the-fly Generation of Unlabeled Data.

Developing Natural Language Processing solutions to new tasks or domains requires data, which is costly to collect and annotate. For particular domains, access to data is limited due to the sensitive nature of the data. These past years, most works have leveraged large general pre-trained models to initialize specialized versions of these. The specialization of such a model still requires a relatively high quantity of labeled data specific to the target task. We use semi-supervised learning to train models in a context where the number of labeled examples is limited, and the number of unlabeled data is zero. Since semi-supervised learning requires unlabeled examples, we study methods of generating the necessary unlabeled corpus. We introduce the generation methods between the training episodes and use the models trained to filter the generated examples. We test this on-the-fly generation with tri-training and self-training with corpora in English and French.

**MOTS-CLÉS** : REN, génération, faible ressources, semi-supervision.

**KEYWORDS:** NER, generation, low resource, semi-supervision.

## 1 Introduction

La reconnaissance d'entités nommées (REN) est une tâche d'étiquetage de séquences. L'entraînement de modèles de REN nécessite généralement une quantité importante de données étiquetées. L'accès aux données, étiquetées ou non, est compliqué pour certaines langues ou certains domaines. Par

<figure><img src="image_30.png" /></figure>
exemple, obtenir des données médicales prend des années car l'obtention de données diffusables et l'annotation par des spécialistes est un processus lent. Par conséquent, l'apprentissage dans un environnement à faibles ressources est un sujet en plein essor. Le but de cet article est de proposer une méthode permettant de réduire la quantité de données naturelles annotées nécessaires pour entraîner des modèles de REN.

Les techniques d'apprentissage par transfert (Ruder, 2019) sont un moyen d'utiliser les connaissances acquises depuis d'autres données pour améliorer les performances des modèles. L'apprentissage semi-supervisé est un autre paradigme d'apprentissage qui aborde le problème des ressources limitées (Van Engelen & Hoos, 2020). Dans ce paradigme, le contexte de faibles ressources fait généralement référence à une faible quantité de données étiquetées mais à une grande quantité de données non étiquetées disponibles. Contrairement à l'apprentissage semi-supervisé, le problème que nous cherchons à résoudre est de n'avoir qu'une petite quantité de données étiquetées et aucune donnée non étiquetée. Nous utilisons de grands modèles de langue génériques sans réglage fin pour générer les données non étiquetées utilisées dans l'apprentissage semi-supervisé. Nous n'affinons pas nos modèles de génération car nous ne disposons pas de suffisamment de données.

Nous évaluons plusieurs méthodes de génération utilisant des modèles de langue pré-entraînés. Premièrement, nous employons deux méthodes de génération fondées sur la modélisation classique de gauche à droite : la génération de la phrase suivante et la complétion de phrases. Ensuite, nous utilisons deux méthodes de modélisation séquence à séquence pour remplacer le contexte ou les mentions dans les phrases étiquetées. Nous évaluons notre méthode sur deux corpus bien connus, CoNLL (Sang & De Meulder, 2003) et I2B2 (Uzuner et al., 2011). Nos principales contributions sont les suivantes<fnref n="1" /> :

- L'algorithme de tri-apprentissage génératif, un algorithme qui ajoute la génération et la sélection des exemples non étiquetés à chaque épisode de l'algorithme de tri-apprentissage.

- Une analyse complète des méthodes de génération multiples pour l'algorithme de tri-apprentissage générative.

## 2 Contexte

L'apprentissage d'un modèle de REN nécessite une grande quantité de données étiquetées. L'augmentation a été utilisée pour améliorer les performances des modèles de traitement automatique de la langue. Des techniques telles que la traduction circulaire (Sennrich et al., 2016), l'augmentation EDA (Wei & Zou, 2019) ou la génération de paraphrases en utilisant BART (Dopierre et al., 2021) ont été utilisées pour améliorer la classification de phrases. Cependant, la paraphrase utilisant la rétro-traduction sur des données médicales pour une tâche d'étiquetage n'est pas efficace (Neuraz et al., 2018). Par conséquent, nous ne l'utiliserons pas sous cette forme, mais l'utilisation de modèle de langue se rapproche de cette pratique. Une méthode utilisant des modèles de langue pour augmenter les données, DAGA (Ding et al., 2020), s'est avérée efficace dans un contexte d'apprentissage supervisé et semi-supervisé. Cette méthode utilise les données d'apprentissage pour entraîner un BiLSTM afin de générer des données étiquetées ou non étiquetées. Nous avons choisi d'utiliser des modèles de langue pré-entraînés.

L'apprentissage semi-supervisé est un paradigme d'apprentissage visant à améliorer les performances des modèles entraînés en ajoutant des exemples non étiquetés à l'ensemble d'apprentissage (Van En-

<footnote n="1">1. Le code est disponible ici : https://github.com/HugoBoulanger/Tritraining-Gen</footnote>
gelen & Hoos, 2020). Ce paradigme comporte plusieurs branches qui dépendent de la manière dont les données non étiquetées sont utilisées. L'utilisation de pseudo-étiquettes à différents stades de l'entraînement a fonctionné pour la REN (Wang et al., 2021b). Les modèles aux stades d'apprentissage précédents génèrent des pseudo-étiquettes pour les étapes suivantes. Ces algorithmes dépendent du nombre de modèles entraînés et des modèles utilisés pour générer les pseudo-étiquettes. L'algorithme le plus simple est l'auto-apprentissage (Yarowsky, 1995), qui entraîne un modèle et l'utilise pour créer les pseudo-étiquettes. D'autres méthodes utilisant des ensembles de modèles ont été créées pour réduire les biais induits par la génération des pseudo-étiquettes par le même modèle. Le co-training (Blum & Mitchell, 1998) est une méthode d'entraînement de deux modèles dans laquelle chaque modèle génère les pseudo-étiquettes de l'autre. Une généralisation de cette méthode existe dans laquelle un ensemble de *n* modèles est entraîné, et les pseudo-étiquettes pour un modèle *m*<sub>j</sub> sont produites en utilisant un système de vote à travers les *n* autres modèles. L'algorithme semi-supervisé que nous utilisons est une variante utilisant trois modèles appelée tri-apprentissage (Zhou & Li, 2005). Des résultats positifs existent avec cette méthode sur la tâche d'extraction de concepts cliniques. Une version optimisée pour les données de l'algorithme de tri-apprentissage est le tri-apprentissage avec désaccord (Søgaard, 2010). Cette version réduit la quantité de données nécessaires en ajoutant uniquement les données pseudo-étiquetées au jeu d'entraînement d'un modèle quand celui-ci est en désaccord avec les deux autres. Nous n'avons pas implémenté cette version du tri-apprentissage car nous voulons conserver autant de données générées pertinentes que possible. Nous proposons un algorithme de tri-apprentissage génératif, qui utilise le système de vote pour écarter les échantillons nouvellement générés sur lesquels il n'y a pas d'accord.

Nous utilisons des modèles de langue pour générer de nouvelles données non étiquetées nécessaires à l'apprentissage semi-supervisé. Nous utilisons les modèles GPT-2 (Radford et al., 2019) et T5 (Raffel et al., 2020) dans leur version à 1M paramètres. Ces données servent à entraîner nos étiqueteurs, qui utilisent des modèles BERT (Devlin et al., 2018) pré-entraînés comme base de leur architecture.

# 3 Tri-apprentissage génératif

**Tri-apprentissage** Le tri-apprentissage (Zhou & Li, 2005) est un algorithme d'apprentissage semi-supervisé pour entraîner un ensemble de trois modèles. Chaque modèle est entraîné sur des données non étiquetées qui reçoivent des pseudo-étiquettes des deux autres modèles. Les phrases pseudo-étiquetées sont utilisées lorsque les deux modèles parviennent à un accord, ce qui permet à la fois l'ajout de pseudo-étiquettes et un filtrage des phrases non-adaptées. La génération d'un ensemble de données non étiquetées de taille fixe pour l'apprentissage semi-supervisé semble arbitraire. Il n'y a aucune garantie que les modèles utiliseront les données pour apprendre car il n'y a aucune garantie que les modèles parviendront à un accord sur les pseudo-étiquettes. En pratique, certaines des données générées ne sont jamais utilisées. Pour résoudre ce problème, nous avons conçu l'algorithme de tri-apprentissage génératif qui se sert des qualités de filtrage du tri-apprentissage pour sélectionner les phrases issues de la génération au fil des épisodes.

**Pré-entraînement** Le tri-apprentissage nécessite une étape d'entraînement pour initialiser les étiqueteurs afin qu'ils soient capables de produire des pseudo-étiquettes. Nous appelons cette étape l'étape de pré-entraînement. Elle est représentée entre les lignes 1 et 4 de l'Algorithme 1. L'étape de pré-entraînement est effectuée sur des sous-ensembles de données échantillonnés avec remise à
**Algorithme 1 :** Tri-apprentissage génératif

**Entrées :** $S_n$ le sous-ensemble de données annotées, $g$ la méthode de génération

1 **pour** $i \in [1; 3]$ **faire**
2 $m_i^{-2} \leftarrow entrainement(chantillonnage(S_n), BERT)$
3 $m_i^{-1} \leftarrow entrainement(S_n, m_i^{-2})$
4 **fin**
5 $t \leftarrow 0$
6 $U^0, L_1^{-1}, L_2^{-1}, L_3^{-1} \leftarrow \emptyset$
7 **tant que** un $m_i$ apprend toujours **faire**
8 $L_1^t, L_2^t, L_3^t \leftarrow generation(S_n \cup \bigcup_{i=1}^3 L_i^{t-1}, m_{i,i}^{t-1} \in [1; 3], g)$
9 $U^{t+1} \leftarrow U^t \cup enlever_etiquettes(\bigcup_{i=1}^3 L_i^t)$
10 **pour** $i \in [1; 3]$ **faire**
11 $j, k \leftarrow [1; 3] - \{i\}$
12 **pour** $x \in U^t$ **faire**
13 $\begin{cases} \text{si } m_j^{t-1}(x) = m_k^{t-1}(x) \text{ and } (m_i^{t-1}(x) \neq m_j^{t-1}(x) \text{ or } \text{drop}(p > .5)) & \text{alors} \\ L_i^t \leftarrow L_i^t \cup \{(x, m_j^{t-1}(x))\} \end{cases}$
14
15 **fin**
16 **fin**
17 **fin**
18 **pour** $i \in [1; 3]$ **faire**
19 $\begin{cases} \text{si } m_i \text{ apprend toujours alors} \\ m_i^t \leftarrow entrainement(S_n \cup L_i^t, m_i^{t-1}) \end{cases}$
20
21 **fin**
22 **fin**
23 $t \leftarrow t + 1$
24 **fin**

partir de l'ensemble étiqueté $S_n$ (Ruder & Plank, 2018). Ces sous-ensembles font **la même taille que** $S_n$. Cependant, nous avons constaté que l'ajout d'un épisode d'apprentissage sur l'ensemble étiqueté complet $S_n$ après l'ensemble échantillonné améliore considérablement les performances du tri-apprentissage. Cet ajout se trouve à la ligne 3 de l'Algorithme 1.

**Tri-apprentissage génératif** L'algorithme 1 et la figure 1 reflètent les modifications apportées à l'algorithme de tri-apprentissage. Avec le tri-apprentissage, nous entraînons un ensemble de trois modèles $m_i, i \in [1; 3]$. L'entraînement est divisé en épisodes au cours desquels nous entraînons les trois modèles. Pour un modèle $m_i$ donné, l'entraînement épisodique s'arrête lorsque le score du modèle sur l'ensemble de validation est inférieur à celui de l'épisode précédent. Ce processus est décrit dans la Figure 2. Au début de chaque épisode (ligne 8 de l'algorithme 1), nous générons de nouveaux sous-ensembles de données pseudo-étiquetées $L_i^t$ à partir des données annotées et pseudo-annotées de l'épisode précédent. Nous ajoutons les données générées sans annotation aux données non-annotées disponibles pour l'étape suivante ligne 9. Ces sous-ensembles sont générés à partir des ensembles étiquetés et précédemment pseudo-étiquetés. Nous ajoutons les exemples nouvellement générés $L_i^t$ sans leurs étiquettes aux exemples précédemment générés $U^t$ pour l'épisode suivant. Chacun de ces
<figure><img src="image_31.png" /><figcaption>FIGURE 1 – Étape *t* du tri-apprentissage génératif. En rectangles les données, et avec les coins arrondis les modèles et ensembles de modèles.</figcaption></figure>

ensembles pseudo-étiquetés $L_i^t$ est ensuite augmenté à l'aide d'exemples précédemment générés $U^t$
avec le mécanisme classique de tri-apprentissage (lignes 10 à 17 de Alg. 1). Enfin, entre les lignes 18
et 22, nous entraînons les modèles qui nécessitent encore un entraînement. Cet algorithme résout le
problème des données inutilisées en rejetant les exemples fraîchement générés sur lesquels il n'y a
pas d'accord, comme le montre la Figure 1. Nous utilisons une modification du désaccord avec une
chance sur deux pour chaque modèle de conserver les exemples pseudo-étiquetés sur lesquels il y a
un accord complet, comme le montrent les lignes 13 et 14. La motivation derrière ce changement est
de conserver en parti les exemples vus par les modèles pour éviter l'oubli, tout en bénéficiant d'une
quantité de données plus faible pour améliorer la vitesse d'apprentissage.

<figure><img src="image_32.png" /><figcaption>FIGURE 2 – Mécanisme de validation pour un modèle $m_i$. Nous découpons le jeu de validation du corpus naturel en deux, une partie servant durant l’entraînement, et une autre servant à comparer entre les épisodes.</figcaption></figure>

Pour le tri-apprentissage, et l'aspect épisodique en général, nous avons besoin de deux ensembles de données de validation pour évaluer notre entraînement. Nous divisons l'ensemble de validation de nos corpus en deux. La première moitié sert d'ensemble de validation pour l'entraînement des modèles pendant l'épisode. La seconde moitié est utilisée pour comparer les modèles entre les épisodes et définir le moment où un modèle doit arrêter son apprentissage. Ce mécanisme est décrit dans la Figure 2.
# 4 Méthodes de génération

Les méthodes pour générer de nouveaux échantillons non étiquetés sont au cœur de cette étude. La modélisation de la langue est l’outil que nous utiliserons pour générer de nouveaux exemples. Il existe plusieurs façons de faire de la modélisation de la langue. La façon la plus traditionnelle de faire de la modélisation de la langue est de prédire les tokens de gauche à droite. Ces modèles utilisent le contexte à gauche pour prédire les tokens suivants à droite. Nous utiliserons ce type de modélisation pour nos deux premières méthodes de génération. Le modèle que nous utilisons pour ces méthodes de génération est GPT-2² (Radford et al., 2019). Il existe d'autres modèles entraînés sur d'autres tâches. Dans notre cas, nous utiliserons aussi T5 (Raffel et al., 2020), qui a été entraîné en utilisant un objectif de remplacement de séquences. Nos deux dernières méthodes de génération utilisent cette capacité de remplacement pour éditer la mention ou le contexte d'une phrase étiquetée ou pseudo-étiquetée. Pour ces méthodes, nous utilisons T5 v1.1³. Toutes les méthodes de génération sont appliquées à des phrases étiquetées ou pseudo-étiquetées. Chaque méthode est illustrée par un exemple pour lequel le rouge indique les portions provenant directement de la phrase d'origine, le bleu indique les portions générées, et le gras indique les portions annotées.

**génération de phrase suivante :** Pour la génération de phrase suivante, nous utilisons le texte d'une phrase étiquetée ou pseudo-étiquetée comme contexte gauche pour modéliser le texte suivant. Notre hypothèse est que les nouvelles phrases apportées à l'ensemble de données par cette méthode apporteront de la variété à l'ensemble tout en restant dans le domaine.

Ceci est un exemple. → Il permet de décrire la situation.

**Complétion de phrase :** La complétion est une méthode utilisant la modélisation de gauche à droite pour compléter la phrase. La position à partir de laquelle générer est choisie par échantillonnage entre les premiers tokens des mentions dans la phrase. Si la phrase ne contient aucune mention, la position est échantillonnée entre 25% et 75% de la longueur de la phrase. Nous supposons que cette méthode apportera de la variété aux mentions tout en conservant l'approche classique de modélisation.

Ceci est un exemple. → Ceci est un objet d'intérêt.

**Remplacement de mentions :** Notre objectif est d'apporter la diversité aux objets d'intérêt en remplaçant les mentions des phrases étiquetées. Si plus d'une mention est présente, nous échantillonnons la mention qui doit être remplacée. Nous ignorons les phrases sans mention. Notre hypothèse est que les modèles de langue ont appris des informations sur n'importe quel sujet pendant leur entraînement. Les sujets qui nous intéressent sont liés aux concepts que nous souhaitons étiqueter dans les phrases. Nous supposons qu'étant donné un contexte qui contient une instance d'un concept donné, le modèle sera capable de remplacer cette instance par d'autres instances du même concept. Nous pensons que cette méthode fonctionnera mieux en combinaison avec d'autres méthodes.

Cet exemple est plus adapté. → Cet objet d'intérêt est plus adapté.

**Remplacement de contexte :** Le remplacement du contexte fonctionne de manière similaire au remplacement des mentions, sauf que c'est le texte non étiqueté qui est remplacé. Nous créons une liste de séquences contenant toutes les séquences de contexte de la phrase. Nous échantillonnons la séquence qui sera remplacée. Nous ignorons les phrases sans mention. Notre hypothèse est que les

<footnote n="2">2. https://huggingface.co/gpt2-large</footnote>

<footnote n="3">3. https://huggingface.co/google/t5-v1_1-large</footnote>
modèles d’étiquetage apprennent à prédire à la fois à partir du contexte et des mentions. De cette hypothèse, nous déduisons que l’apprentissage à partir de contextes plus variés pourrait être bénéfique pour l’étiqueteur.

Ceci est un **exemple**. → **Nous avons besoin d'un exemple.**

# 5 Ressources

<table><thead><tr><th></th><th>nb. phrases train</th><th>nb. phrases test</th><th>BERT large</th><th>BioBERT</th><th>SOTA</th></tr></thead><tbody><tr><td>CoNLL</td><td>14 986</td><td>3 683</td><td><strong>92,0</strong></td><td></td><td>94,6</td></tr><tr><td>I2B2</td><td>11 482</td><td>27 625</td><td>85,0</td><td><strong>86,6</strong></td><td>90,3</td></tr></tbody></table>

TABLE 1 – Performances des modèles utilisés en score $F_1$ quand ils sont entraînés sur le corpus naturel complet et comparaison avec l'état de l'art. Métrique calculée avec seqeval (Ramshaw & Marcus, 1995; Nakayama, 2018). État de l'art pour CoNLL (Wang et al., 2021a) et I2B2 (Si et al., 2019) d'après papers with code<fnref n="5" />.

**Données** Nous testons notre méthode sur deux corpus, CoNLL 2003 English (Sang & De Meulder, 2003) et I2B2 (Uzuner et al., 2011). CoNLL est un corpus de nouvelles Reuters en anglais dans lequel des personnes, des lieux, des organisations et diverses entités sont étiquetées. I2B2 est un corpus de dossiers médicaux en anglais dans lequel les traitements, les problèmes et les tests sont étiquetés. Notre travail vise à permettre l'entraînement de modèles à faibles ressources. Nous testons notre méthode sur des corpus disponibles afin d'obtenir des résultats pouvant être comparés aux méthodes de l'état de l'art. Pour simuler un environnement à faibles ressources, nous devons restreindre la quantité de données disponibles pour l'entraînement. Nous échantillonnons les données pour obtenir des ensembles d'entraînement réduits. Nous répétons nos expériences sur un ensemble de graines afin de prendre en compte les biais d'échantillonnage dans l'évaluation de la méthode.

**Modèles** L'architecture des modèles que nous utilisons est BERT avec un classificateur MLP, ce qui nous permet de bénéficier de la vaste gamme de modèles BERT pré-entraînés. Nous affinons les modèles sur les données d'apprentissage, que ce soit pour la baseline ou les méthodes d'augmentation testées avec les paramètres présenté dans BERT (Devlin et al., 2018). Nous avons testé quelques modèles BERT pré-entraînés sur les corpus complets afin de sélectionner les modèles que nous utiliserons (voir Tableau 1). Nous avons opté pour BERT Large (Devlin et al., 2018) pour CoNLL, et BioBERT (Lee et al., 2020) pour I2B2.

# 6 Expériences

Nous avons conçu un ensemble d'expériences pour évaluer le tri-apprentissage génératif. Ces expériences comparent l'apprentissage supervisé au tri-apprentissage génératif et avec les données

<footnote n="5">5. https://paperswithcode.com/</footnote>
de tâches disponibles. La génération avec semi-supervision est testée avec deux algorithmes d'ap-
prentissage semi-supervisé : le tri-apprentissage et l'auto-apprentissage. Notre baseline est l'appren-
tissage supervisé sur des données étiquetées sans aucune semi-supervision. Notre **topline est le**
**tri-apprentissage** avec des données naturelles comme données non étiquetées. Pour la topline, nous
considérons un ensemble de 10 000 phrases de chaque corpus à partir duquel nous extrayons les
corpus supervisés $S_n$, composé de 50 à 1 000 phrases, et le reste est utilisé comme l'ensemble non
étiqueté servant à peupler les $L_i^t$. Dans ces cas plus ou moins extrêmes, la quantité de données n'est
pas suffisante pour apprendre des modèles performants, comme le montrent les résultats de la baseline
Table 2.

À chaque épisode d’apprentissage semi-supervisé, nous générons une quantité fixe de données. Nous visons à générer 5 000 exemples pour chaque épisode. Cette quantité est suffisamment importante pour apporter une quantité significative d’informations mais pas trop afin d’éviter de ralentir le processus d’apprentissage. Nous générons une plus petite quantité de données pour les premiers épisodes car la quantité de contexte disponible, les données étiquetées et pseudo-étiquetées, est plus petite. Cette petite quantité de données pourrait également voir son signal noyé si trop de données sont générées, comme on le voit avec la méthode topline. Nous facilitons les deux premières étapes en générant seulement 500 et 2 500 exemples au lieu de 5 000.

La génération se fait dans le contexte de l'apprentissage semi-supervisé. Pour le tri-apprentissage, les exemples générés sont répartis en trois ensembles, un pour chaque modèle entraîné dans le tri-apprentissage. Les nouveaux ensembles de données sont générés en appliquant la méthode de génération respective aux exemples échantillonnés de l'ensemble de données naturelles et aux ensembles pseudo-étiquetés de l'épisode précédent. Les trois modèles étiquettent ensuite le texte généré par la méthode de génération. Si deux modèles ou plus parviennent à un accord, les nouvelles données sont conservées avec les pseudo-étiquettes. Ces données pseudo-étiquetées sont envoyées soit au paquet du modèle qui n'est pas d'accord si deux modèles sont d'accord, soit à l'un des ensembles au hasard si les trois modèles sont d'accord. Si aucun accord n'est trouvé, les données sont rejetées. Nous continuons à générer de nouveaux exemples jusqu'à ce que nous atteignions la quantité attendue ou un nombre maximal d'opérations de génération autorisé que nous avons fixé à 10 000 pour éviter de générer indéfiniment. En pratique, cette limite n'est jamais atteinte. Chaque méthode de génération génère cinq nouvelles phrases pour chaque phrase d'entrée.

7 Résultats

Les résultats de la baseline et les Δ entre la méthode présentée et la baseline sont présentés dans le tableau 2. Par souci de place, nous n’avons pas indiqué les résultats obtenus sur des sous-ensembles de taille 1000, mais ils conservent les tendances observés. Les résultats de la topline sont bien supérieurs aux résultats du supervisé. Les résultats du supervisé vont de 60,0 $F_1$ avec des sous-ensembles de taille 50 à 84,6 $F_1$ avec une taille de 500 pour CoNLL avec des gains décroissant de 8,6 à 3,8 pour la topline. Pour I2B2, les résultats de la baseline sont plus petits que ceux de CoNLL, allant de 39,3 à 77,6 $F_1$ score avec des gains. Les gains de I2B2 vont de 8,9 à la taille 100 à 5,4 à la taille 500 et sont légèrement inférieurs pour 50 phrases, avec 8,3.

Les résultats décrits dans cette section se trouvent dans le Tableau 2 pour les ressources faibles, et
dans le Tableau 4 pour les corpus complets. Pour le tri-apprentissage, chaque méthode affiche des
gains positifs à chaque taille de sous-ensemble et certaines dépassent même la topline. C’est le cas
<table><caption>TABLE 2 – Δ de $F_1$ des différentes méthodes comparées à l'apprentissage supervisé. Les écarts type sur les cinq seeds utilisées sont rapportés en plus petit. Bsl. et tl sont les résultats obtenus avec la baseline et la topline. Les abréviations fl, cp, m, cr, et cb décrivent la génération de phrase suivante, la complétion, le remplacement de mentions, le remplacement de contexte, et l'expérience combinée.</caption><thead><tr><th rowspan="2">Crp.<br>Taille</th><th colspan="4">CoNLL</th><th colspan="4">I2B2</th></tr><tr><th>50</th><th>100</th><th>250</th><th>500</th><th>50</th><th>100</th><th>250</th><th>500</th></tr></thead><tbody><tr><td>bsl.</td><td>60,0 2,9</td><td>70,5 4,7</td><td>81,3 1,7</td><td>84,6 1,2</td><td>39,3 3,1</td><td>50,4 1,4</td><td>63,8 0,7</td><td>71,5 1,0</td></tr><tr><td>Δtl</td><td>+8,6 2,5</td><td>+5,6 2,0</td><td>+4,2 0,7</td><td>+3,8 1,0</td><td>+8,3 2,2</td><td>+8,9 2,2</td><td>+6,7 1,2</td><td>+5,4 0,7</td></tr><tr><td colspan="9" style="text-align: center;">Tri-apprentissage</td></tr><tr><td>Δfl</td><td>+8,9 2,6</td><td>+4,4 2,8</td><td>+3,1 0,4</td><td>+2,8 1,0</td><td>+6,3 2,6</td><td>+4,5 2,6</td><td>+4,2 1,6</td><td>+3,6 1,0</td></tr><tr><td>Δcp</td><td>+7,8 1,9</td><td>+4,7 4,0</td><td>+2,7 1,0</td><td>+2,9 0,7</td><td>+6,3 1,6</td><td>+5,6 2,8</td><td>+4,9 1,5</td><td>+4,3 1,7</td></tr><tr><td>Δm</td><td>+9,0 2,1</td><td>+4,1 2,6</td><td>+2,8 1,1</td><td>+2,6 0,8</td><td>+10,4 4,5</td><td>+7,4 2,9</td><td>+7,1 1,7</td><td>+4,6 1,0</td></tr><tr><td>Δcr</td><td>+7,3 1,9</td><td>+2,9 2,3</td><td>+1,2 0,4</td><td>+1,7 0,7</td><td>+5,6 1,5</td><td>+7,7 3,1</td><td>+6,0 1,2</td><td>+4,2 1,0</td></tr><tr><td>Δcb</td><td>+9,3 2,7</td><td>+4,6 2,6</td><td>+3,4 1,0</td><td>+2,9 1,0</td><td>+7,7 1,5</td><td>+6,4 1,7</td><td>+5,7 1,9</td><td>+4,4 1,2</td></tr><tr><td colspan="9" style="text-align: center;">Auto-apprentissage</td></tr><tr><td>Δfl</td><td>+4,8 2,9</td><td>+1,4 3,6</td><td>-0,1 1,1</td><td>+0,6 1,0</td><td>+0,8 1,7</td><td>+0,2 2,3</td><td>-0,7 1,3</td><td>-0,2 0,5</td></tr><tr><td>Δcp</td><td>+3,9 2,7</td><td>+0,8 2,0</td><td>-0,4 1,0</td><td>+0,6 0,9</td><td>-0,5 1,6</td><td>+0,3 2,9</td><td>-1,4 0,8</td><td>-0,9 1,8</td></tr><tr><td>Δm</td><td>+6,0 2,9</td><td>+2,5 2,8</td><td>+0,7 0,6</td><td>+0,8 0,4</td><td>+4,5 2,6</td><td>+2,9 1,8</td><td>+3,0 1,1</td><td>+2,0 1,1</td></tr><tr><td>Δcr</td><td>+4,3 2,0</td><td>-0,5 4,0</td><td>-1,1 1,2</td><td>-0,2 0,7</td><td>+3,6 1,8</td><td>+3,6 2,5</td><td>+3,9 0,9</td><td>+2,2 0,7</td></tr><tr><td>Δcb</td><td>+4,9 3,5</td><td>+1,4 3,1</td><td>-0,4 0,4</td><td>+0,9 1,2</td><td>+1,6 1,0</td><td>+0,7 1,7</td><td>-0,1 1,2</td><td>+0,6 1,6</td></tr></tbody></table>

des méthodes de génération de phrase suivante et de remplacement de mention pour CoNLL avec des gains moyens de 8,9 et 9,0 $F_1$. C'est également le cas pour la méthode de remplacement de mention pour I2B2 avec des gains moyens de 10,4 et 7,1 $F_1$ score aux tailles 50 et 250, respectivement. Les gains suivent les mêmes tendances que la topline, avec des rendements décroissants plus la taille du sous-ensemble est élevée. Pour CoNLL, le remplacement de contexte est la méthode de génération la moins performante dans l'ensemble. Pour I2B2, avec un sous-ensemble d'apprentissage de taille 50, le remplacement de contexte est la méthode la moins performante. Néanmoins, avec des quantités de données plus importantes, elle devient la deuxième méthode la plus performante, et la génération de phrase suivante devient la moins performante. Le remplacement de mentions est la meilleure méthode de génération individuelle sur I2B2, avec les meilleurs ou les seconds meilleurs résultats pour chaque taille de sous-ensemble. Dans l'ensemble, les méthodes fondées sur GPT-2 donnent des résultats inférieurs aux méthodes fondées sur T5v1.1 sur I2B2.

Les gains avec l'auto-apprentissage sont inférieurs à leurs homologues du tri-apprentissage, avec quelques résultats négatifs. La génération de mentions reste la meilleure méthode individuelle, car c'est la meilleure méthode pour CoNLL et elle est en concurrence avec le remplacement de contexte en fonction de la taille du sous-ensemble pour I2B2.

La méthode combinée est réalisée en échantillonnant la méthode de génération parmi les méthodes disponibles chaque fois que nous voulons générer. La méthode présente deux comportements différents sur les deux corpus. Pour CoNLL, la méthode de génération combinée est la meilleure méthode de génération. Pour I2B2, la méthode de génération combinée s'apparente davantage à une méthode
<table><caption>TABLE 3 – Score de l’Almost Stochastic Dominance (Dror et al., 2019) du tri-apprentissage à faible ressources avec indice de significativité de 0.05. Nous testons si la méthode de la ligne A est dominante sur la méthode de la colonne B. A est dominante sur B si le score est inférieur à 0.5.</caption><thead><tr><th></th><th>Suivante</th><th>Complétion</th><th>Mentions</th><th>Contexte</th><th>Combiné</th></tr></thead><tbody><tr><th>Suivante</th><td></td><td>0.68</td><td>0.96</td><td>0.81</td><td>0.92</td></tr><tr><th>Complétion</th><td><strong>0.35</strong></td><td></td><td>0.79</td><td>0.63</td><td>0.69</td></tr><tr><th>Mention</th><td><strong>0.05</strong></td><td><strong>0.22</strong></td><td></td><td><strong>0.20</strong></td><td><strong>0.26</strong></td></tr><tr><th>Contexte</th><td><strong>0.21</strong></td><td><strong>0.38</strong></td><td>0.82</td><td></td><td>0.51</td></tr><tr><th>Combiné</th><td><strong>0.11</strong></td><td><strong>0.33</strong></td><td>0.76</td><td>0.51</td><td></td></tr></tbody></table>

<table><caption>TABLE 4 – $F_1$ scores des méthodes de génération sur les corpus complets. Une seed a été utilisée.</caption><thead><tr><th></th><th>baseline</th><th>complétion</th><th>suivante</th><th>mention</th><th>contexte</th><th>combiné</th></tr></thead><tbody><tr><th>CoNLL</th><td>92,0</td><td>92,1</td><td>91,8</td><td>92,2</td><td>92,2</td><td><strong>92,3</strong></td></tr><tr><th>I2B2</th><td>86,6</td><td>87,5</td><td><strong>88,0</strong></td><td>87,7</td><td>87,6</td><td>87,5</td></tr></tbody></table>

moyenne. Elle est par ailleurs inférieure ou égale aux méthodes de remplacement, à l'exception du remplacement de contexte sur le plus petit sous-ensemble. La génération combinée est supérieure aux méthodes de modélisation de gauche à droite pour I2B2. Dans l'ensemble, la méthode combinée a un facteur de corrélation de Pearson plus élevé pour les méthodes de suivi et de complétion avec 0,98 et 0,97 que pour la mention et le remplacement de contexte avec 0,92 et 0,80, respectivement. Ces coefficients ont été calculés avec les résultats rapportés dans le Tableau 2 et les résultats sur les sous-ensembles de taille 1000. Nous avons utilisé le test d'Almost Stochastic Dominance (ASD) (Dror et al., 2019) pour déterminer quelle est la meilleure méthode de génération sur nos sous-ensembles de données avec un indice de significativité de 0.05. D'après les résultats montrés Table 3, le remplacement de mentions est dominant sur toutes les autres méthodes et est donc la méthode à privilégier. La complétion n'est dominante que sur la génération de phrase suivante, qui ne domine aucune méthode. Le remplacement de contexte et la méthode combiné sont équivalentes.

À but indicatif, nous avons calculé des résultats pour le tri-apprentissage génératif sur les corpus de taille complète Table 4. Pour CoNLL, nos meilleurs résultats sont avec la méthode combinée avec une amélioration de 0,3. Nous obtenons cependant une détérioration de 0,2 avec la génération de phrase suivante. Globalement, sur CoNLL grandeur nature, nous obtenons des résultats positifs mais non significatifs. Pour I2B2, toutes les méthodes augmentent significativement le score $F_1$ avec des améliorations allant de 0,9 pour la complétion et la méthode combinée à 1,4 pour le suivi.

# 8 Conclusion

Dans cet article, nous avons proposé et évalué une méthode permettant d'allier génération de données et semi-supervision dans le but de réduire la dépendance aux données pour l'apprentissage étiqueté. Nous avons montré que notre méthode fonctionnait bien avec le tri-apprentissage, et moins bien avec l'auto-apprentissage. Nous avons testé différentes méthodes de génération découlant de la modélisation de langue pour générer des données. Parmi ces méthodes, le remplacement de mention
par T5 est la méthode ayant montré les meilleurs résultats sur nos deux corpus de test et domine les autres méthodes présentées d'après le test ASD. Cependant, utiliser des données naturelles de la tâche comme données non-annotées produit presque toujours de meilleurs résultats. Il reste cependant beaucoup de questions auxquelles nous souhaiterions répondre dans de futurs travaux. Nous avons montré que la génération permettait de transformer une tâche supervisée en tâche semi-supervisée avec des gains de performances. Il peut être intéressant d'analyser l'impact des données produites de cette manière dans un cadre supervisé.

# 9 Remerciements

Ces travaux ont été financé sur le projet PSPC AIDA : 2019-PSPC-09 par BPI-France. Ces travaux ont bénéficié d'un accès aux ressources HPC de l'IDRIS sous l'allocation 2021-AD011013018 faite par GENCI. Ces travaux ont aussi bénéficié d'un accès aux ressources HPC de Saclay-AI au travers de la machine Lab-IA.

# Références

BLUM A. & MITCHELL T. (1998). Combining labeled and unlabeled data with co-training. In *Proceedings of the eleventh annual conference on Computational learning theory*, p. 92–100.

DEVLIN J., CHANG M.-W., LEE K. & TOUTANOVA K. (2018). Bert: Pre-training of deep bidirectional transformers for language understanding. *arXiv preprint arXiv:1810.04805*.

DING B., LIU L., BING L., KRUENGKRAI C., NGUYEN T. H., JOTY S., SI L. & MIAO C. (2020). Daga: Data augmentation with a generation approach for low-resource tagging tasks. *arXiv preprint arXiv:2011.01549*.

DOPIERRE T., GRAVIER C. & LOGERAIS W. (2021). Protaugment: Intent detection meta-learning through unsupervised diverse paraphrasing. In *Proceedings of the 59th Annual Meeting of the Association for Computational Linguistics and the 11th International Joint Conference on Natural Language Processing (Volume 1: Long Papers)*, p. 2454–2466.

DROR R., SHLOMOV S. & REICHART R. (2019). Deep dominance - how to properly compare deep neural models. In *Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers)*: Association for Computational Linguistics.

LEE J., YOON W., KIM S., KIM D., KIM S., SO C. H. & KANG J. (2020). Biobert: a pre-trained biomedical language representation model for biomedical text mining. *Bioinformatics*, **36**(4), 1234–1240.

NAKAYAMA H. (2018). seqeval: A python framework for sequence labeling evaluation. Software available from https://github.com/chakki-works/seqeval.

NEURAZ A., LLANOS L. C., BURGUN A. & ROSSET S. (2018). Natural language understanding for task oriented dialog in the biomedical domain in a low resources context. *CoRR*, **abs/1811.09417**.

RADFORD A., WU J., CHILD R., LUAN D., AMODEI D. & SUTSKEVER I. (2019). Language models are unsupervised multitask learners. *OpenAI Blog*, **1**(8), 9.

RAFFEL C., SHAZEER N., ROBERTS A., LEE K., NARANG S., MATENA M., ZHOU Y., LI W. & LIU P. J. (2020). Exploring the limits of transfer learning with a unified text-to-text transformer. *Journal of Machine Learning Research*, **21**, 1–67.
RAMSHAW L. & MARCUS M. (1995). Text chunking using transformation-based learning. In *Third Workshop on Very Large Corpora*.

RUDER S. (2019). *Neural Transfer Learning for Natural Language Processing*. Thèse de doctorat, National University of Ireland, Galway.

RUDER S. & PLANK B. (2018). Strong baselines for neural semi-supervised learning under domain shift. In *Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers)*, p. 1044–1054.

SANG E. T. K. & DE MEULDER F. (2003). Introduction to the conll-2003 shared task : Language-independent named entity recognition. In *Proceedings of the Seventh Conference on Natural Language Learning at HLT-NAACL 2003*, p. 142–147.

SENNRICH R., HADDOW B. & BIRCH A. (2016). Improving neural machine translation models with monolingual data. In *Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers)*, p. 86–96.

SI Y., WANG J., XU H. & ROBERTS K. (2019). Enhancing clinical concept extraction with contextual embeddings. *Journal of the American Medical Informatics Association*, **26**(11), 1297–1304.

SØGAARD A. (2010). Simple semi-supervised training of part-of-speech taggers. In *Proceedings of the ACL 2010 Conference Short Papers*, p. 205–208.

UZUNER Ö., SOUTH B. R., SHEN S. & DUVALL S. L. (2011). 2010 i2b2/va challenge on concepts, assertions, and relations in clinical text. *Journal of the American Medical Informatics Association : JAMIA*, **18**(5), 552.

VAN ENGELEN J. E. & HOOS H. H. (2020). A survey on semi-supervised learning. *Machine Learning*, **109**(2), 373–440.

WANG X., JIANG Y., BACH N., WANG T., HUANG Z., HUANG F. & TU K. (2021a). Automated concatenation of embeddings for structured prediction. In *Proceedings of the 59th Annual Meeting of the Association for Computational Linguistics and the 11th International Joint Conference on Natural Language Processing (Volume 1: Long Papers)*, p. 2643–2660.

WANG Y., MUKHERJEE S., CHU H., TU Y., WU M., GAO J. & AWADALLAH A. H. (2021b). Meta self-training for few-shot neural sequence labeling. In *Proceedings of the 27th ACM SIGKDD Conference on Knowledge Discovery & Data Mining*, p. 1737–1747.

WEI J. & ZOU K. (2019). EDA : Easy data augmentation techniques for boosting performance on text classification tasks. In *Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing (EMNLP-IJCNLP)*, p. 6382–6388, Hong Kong, China : Association for Computational Linguistics.

DOI : 10.18653/v1/D19-1670.

YAROWSKY D. (1995). Unsupervised word sense disambiguation rivaling supervised methods. In *33rd annual meeting of the association for computational linguistics*, p. 189–196.

ZHOU Z.-H. & LI M. (2005). Tri-training : Exploiting unlabeled data using three classifiers. *IEEE Transactions on knowledge and Data Engineering*, **17**(11), 1529–1541.
# Évaluation d'un générateur automatique de reformulations médicales

Ioana Buhnila¹ Amalia Todirascu¹

(1) LiLPa UR 1339, Université de Strasbourg, 67000 Strasbourg, France

ioana.buhnila@etu.unistra.fr, todiras@unistra.fr

## RESUME

Les textes médicaux sont difficiles à comprendre pour le grand public à cause des termes de spécialité. Ces notions médicales ont besoin d'être *reformulées* en utilisant des mots de la langue commune. La **reformulation** représente le processus de réécriture qui a le rôle d'expliquer ou simplifier une phrase ou syntagme. Nous présentons la méthodologie de construction d'un jeu de données original (termes et reformulations) permettant la détection et génération des nouvelles reformulations médicales. Pour compléter ce corpus, nous menons des expériences de génération automatique de reformulations médicales sous-phrastiques avec l'outil **APT** (Nighojkar & Licato, 2021), qui s'appuie sur des techniques d'apprentissage profond. Nous adaptons le modèle de langue de type Transformer **T5** (Raffel et al., 2020) avec des termes médicaux et leurs reformulations annotés manuellement en français et en roumain, langue romane peu dotée en ressources pour le TAL. Nous présentons une analyse détaillée des résultats de la génération automatique des paraphrases.

## ABSTRACT

### Evaluation of an automatic medical paraphrase generator

Medical texts are difficult to understand for laypeople due to technical terms. Medical concepts need to be *paraphrased* using words from the common language. **Paraphrasing** is the process of rewriting with the aim of explaining or simplifying a sentence or phrase. We present the method for manually building a dataset for paraphrase detection and generation. We are conducting experiments on automatic generation of sub-phrastic medical paraphrases with the machine learning tool **APT** (Nighojkar & Licato, 2021), using deep learning techniques. We train the Transformer **T5** language model (Raffel et al., 2020) with manually annotated medical terms and paraphrases in French and Romanian, a Romance language lacking resources for NLP applications. We present a detailed analysis of the results of the paraphrase generation.

**MOTS-CLES** : génération automatique de la reformulation, apprentissage automatique, texte médical, Transformer T5

**KEYWORDS:** paraphrase generation, machine learning, medical text, T5 Transformer

# 1 Introduction

Les connaissances médicales de spécialité sont facilement consultables en ligne. Pourtant, elles ne sont pas toujours facilement compréhensibles pour le grand public. Cette difficulté est due au grand nombre de termes médicaux employés dans ces textes. Le terme est une unité lexicale de spécialité

<figure><img src="image_33.png" /></figure>
qui représente des connaissances spécifiques à un domaine du savoir (Costa, 2005). La terminologie médicale est difficile à comprendre pour un non-spécialiste à cause de l'origine grecque ou latine de dénominations, par exemple le terme « myocardiaque », formé avec une base latine « myo » (muscle) et une base grecque « cardia » (cœur) (Grabar & Hamon, 2016). Ces connaissances spécialisées sont faciles à comprendre pour un spécialiste, mais leur sens reste souvent obscur pour le grand public, d'où la nécessité d'une vulgarisation constante dans ce domaine (Grabar & Hamon, 2016). Vulgariser la médecine représente le processus de simplification lexicale et syntaxique qui a comme but de rendre les notions médicales très techniques compréhensibles en fonction du public cible. Informer correctement le grand public sur les questions médicales est une tâche qui demande un effort soutenu, vu l'innovation continue et les défis sanitaires constants (Pecout et al., 2019).

Nous considérons que les reformulations sont nécessaires dans la vulgarisation scientifique (Vargas, 2008 ; Cardon, 2018). La reformulation est un processus linguistique de transformation du discours qui a le rôle d'expliquer, simplifier ou pointer une phrase ou un syntagme. Nous travaillons sur des reformulations sous-phrastiques, ne dépassant pas la portée de la phrase, qui se présentent sous forme d'explications, de paraphrases (syntagmes synonymiques) ou de définitions de termes scientifiques monolexicaux et polylexicaux, de type « <terme>placebo</terme> ou <ref>absence d'intervention</ref> ». Notre objectif est double : de construire manuellement un corpus valide de termes médicaux et leurs reformulations (au sens large du terme) et de générer automatiquement d'autres reformulations médicales à partir de nos données annotées précédemment sur deux corpus, en français et en roumain, et ainsi agrandir automatiquement nos corpus de reformulations. Ce qui nous motive davantage dans notre recherche est le nombre restreint de ressources pour la reformulation dans le domaine médical pour la simplification de textes (Cardon, 2018 ; Cardon & Grabar, 2019), particulièrement pour des langues de moindre diffusion comme le roumain (Buhnila, 2021).

Nous présentons dans la section 2 l'état de l'art sur la génération des reformulations, suivi par notre méthodologie et les données exploitées (dans la section 3). Dans la section 4 nous présentons nos expériences de génération automatique, l'analyse et l'évaluation des résultats de génération de reformulations médicales. La conclusion, la comparaison avec l'état de l'art et des perspectives de recherches sont présentées dans la section 5.

## 2 Contexte

Certaines études ont été réalisées sur la reformulation dans le domaine de la médecine (Elhadad & Sutaria, 2007 ; Deléger & Zweigenbaum, 2009 ; Grabar & Hamon, 2015). Des ressources lexicales comme WordNet (Miller, 1998) pour la langue générale et UMLS (Bodenreider, 2004) ou Snomed (Spackman et al., 1997 ; Donnelly, 2006) pour le domaine médical sont utiles pour l'identification automatique des paraphrases selon leur degré de synonymie (Cardon & Grabar, 2019 ; Koptient et al., 2019). Il existe plusieurs travaux sur la simplification lexicale automatique des textes écrits (Specia et al., 2012 ; Shardlow, 2014 ; Grabar & Hamon, 2015 ; Saggion, 2017 ; Cardon, 2021). Ces études sont réalisées sur des termes simples et majoritairement sur la paraphrase phrastique. Nous travaillons sur les reformulations sous-phrastiques de termes médicaux simples et polylexicaux. Nous prenons en compte des reformulations variées (définitions, exemples, explications) qui sont très différentes au niveau lexical et syntaxique par rapport à l'original. Notre but est de construire un corpus de reformulations qui illustre ces phénomènes et de générer des nouvelles reformulations médicales.

Dans ce sens, nous nous intéressons à l'apprentissage automatique par réseaux de neurones, car plusieurs méthodes peuvent être appliquées pour travailler sur la paraphrase :
- *Similarité sémantique* textuelle (STS), qui mesure le degré d'équivalence des textes ou des phrases similaires qui contiennent des mots en commun (Agirre et al., 2016);

- *Identification de paraphrase (PI)*, qui identifie si deux phrases ou segments ont le même sens (Brockett & Dolan, 2005; Xu et al., 2015);

- *Génération des paraphrases (PG)*, qui crée de nouveaux textes à partir des données d'entrée et des modèles de langues (Gupta et al., 2018; Bowman et al., 2016).

Les méthodes basées sur des mesures de similarité textuelle (STS ou PI) comptabilisent les mots qui ont une forme similaire. Ces méthodes ont des limites quant à l'identification des paraphrases qui utilisent des mots ou des phrases avec des formes très différentes. Ainsi, nous adoptons une architecture neuronale de type paradigme contradictoire, qui vise à identifier des différences lexicales et syntaxiques, qui permet aussi de générer des paraphrases (PG) pour créer des reformulations les plus diverses possibles, en gardant le plus possible le même contenu sémantique (moins pour les reformulations de type explication). Nous considérons cette méthode la plus adaptée à notre tâche d'identification de la reformulation, vu la grande diversité des reformulations médicales identifiées dans nos corpus : paraphrases, exemplifications, synonymes, de type définition, explication ou abréviation. Nous présentons en détail cette architecture dans le point suivant.

## 2.1 L'architecture neuronale APT

Pour générer des reformulations à partir du terme médical, nous faisons appel à l'architecture neuronale **APT** (*Adversarial Paraphrasing Task*) (Nighojkar & Licato, 2021). Cette architecture utilise une méthode pour générer des reformulations composées avec des significations équivalentes mais présentant des différences lexicales et syntaxiques. Ce modèle vise à identifier le sens général d'une phrase, non pas uniquement le sens des mots séparés. L'architecture **APT** est construite sur deux principes :

- *La similarité de sens* : cette similarité se vérifie par le fait que deux phrases qui sont mutuellement implicites sont sémantiquement équivalentes, et sont donc, des paraphrases ;

- *La dissimilarité de la structure* : mesurée avec BLEURT (Sellam et al., 2020), un score qui évalue les textes générés automatiquement en se basant sur les plongements des mots du modèle de langue BERT (Devlin et al., 2019). Ce score évalue la similarité lexicale et syntaxique de chaque paire de phrases. BERT est adapté pour la tâche d'évaluation de la qualité de la prédiction automatique par rapport à l'évaluation humaine. Le score BLEURT utilise un ensemble réduit de données annotées par les humains pour adapter BERT à cette tâche d'évaluation. Pourtant, les données de référence utilisées pour créer BLEURT ont été générées automatiquement par plusieurs types de transformations : mot ou segment de phrase masqué et remplacé à l'aide de BERT, traduction et rétrotraduction de la phrase et suppression aléatoire des mots.

Dans leur étude, Nighojkar et Licato (2021) mènent les expériences sur des paraphrases phrastiques en anglais, appartenant au langage général. Ils utilisent un score MI (implication mutuelle) entre 2 segments, qui mesure les inférences nécessaires pour déduire le sens du premier à partir du deuxième et vice-versa, à l'aide du modèle de langue **T5-base**. Ainsi, ils sélectionnent des paraphrases qui ont un score d'implication mutuelle MI grand et un score BLEURT (score de similarité de phrases) réduit. Les expériences avec les corpus anglais annotés manuellement ont donné des meilleurs résultats par rapport aux données extraits automatiquement de Twitter. Nous testons ce modèle contradictoire d'identification de la reformulation (**APT**) sur nos données sous-phrastiques (terme médical versus reformulation), en français et en roumain, appartenant au domaine médical. Par rapport à Nighojkar et Licato (2021), nous travaillons avec des reformulations sous-phrastiques présentant peu de similarités lexicales ou syntaxiques avec l'original.
Pour lancer nos expériences de génération, nous adoptons des modèles de langues de type
Transformer, en faisant appel aux données annotées manuellement, plus fiables que des jeux de
données de grande taille acquises automatiquement. Nous présentons ce concept et notre méthode
par la suite.

## 2.2 Modèle de langues de type Transformer

Un *modèle de langue* est une représentation des informations linguistiques variées qui participent à la construction du sens dans une langue donnée par des règles linguistiques et des normes d'usage spécifiques à cette langue. Ces normes sont converties en vecteurs (des valeurs numériques attribuées aux mots et séquences de mots) pour les rendre exploitables par une machine. Le modèle de langue estime la probabilité qu'un mot ou un syntagme soit présent dans une langue, en fonction du contexte. Les *Transformers* (Vaswani et al., 2017) sont des modèles de langues pour l'apprentissage automatique profond par des réseaux de neurones. Les *Transformers* traitent les données de manière séquentielle (position des mots) à l'aide de mécanismes d'auto-attention et de systèmes de type encodeur-décodeur (chaque mot reçoit un vecteur numérique).

Nous utilisons le modèle de langue **T5** (*Text-to-Text Transformer*) de Google (Raffel et al., 2020), car il contient quatre langues, dont nos langues d'étude : l'allemand, l'anglais, le français et le roumain. Ce Transformer est pré-entrainé sur C4 (*Colossal Clean Crawled Corpus*) un corpus nettoyé avec une taille colossale de 7 téraoctets, extrait du corpus Web de Common Crawl. **T5** a été pré-entrainé pour plusieurs tâches spécifiques du TAL, dont l'identification de la paraphrase et la similarité de phrases. Nous l'adaptons pour notre propre jeu de données (nous travaillons sur des reformulations sous-phrastiques au lieu des reformulations phrastiques) dans un domaine spécifique. Nous présentons notre méthode et les données exploitées pour générer des reformulations médicales dans le point suivant.

# 3 Méthodologie

Afin de générer des reformulations spécifiques au domaine médical, nous devons adapter le modèle
de langue **T5** à l'aide de données médicales. Nos données sont des paires (terme médical,
reformulation médicale), en français et en roumain, données que nous avons extrait semi-
automatiquement à l'aide des ontologies et des reformulations. Ces données sont annotées
manuellement, suivant la méthodologie proposée par (Buhnila, 2021 ; 2022b). Nous adaptons le
modèle **T5** pour le français, ainsi que pour le roumain et nous utilisons l'architecture **APT**
(Nighojkar & Licato, 2021) pour la génération de prédictions de reformulations médicales. Ces
prédictions sont analysées et évaluées en suivant notre échelle de lisibilité pour élargir les corpus de
reformulations. Nous détaillons ces étapes et les données utilisées par la suite.

## 3.1 Données médicales annotées

Pour le français nous travaillons sur deux corpus : **CLEAR Cochrane** (Grabar & Cardon, 2018) et **ClassYN** (Todirascu et al., 2012). Ces corpus écrits et comparables sont constitués des textes scientifiques du domaine médical destinés aux experts et des textes simplifiés pour le grand public. Le corpus **CLEAR Cochrane** a une taille de 4 355 054 tokens et le corpus **ClassYN** de 1 779 423 tokens. Pour la langue roumaine, nous exploitons le corpus **GrandMed-Ro** (Buhnila, 2018) constitué à partir des textes de vulgarisation extraites de la toile avec Sketch Engine (Kilgarriff et al., 2014) (6 440 951 tokens).
Nous identifions automatiquement les termes médicaux dans notre corpus français avec l'annotateur **SIFR-BioPortal** (Tchechmedjiev et al., 2018), utilisant l'ontologie médicale **SNOMED-3.5VF** (Côté, 1998) (qui contient 150 906 concepts médicaux) et des scripts en Perl pour l'extraction des phrases contenant les termes. À notre connaissance, il n'existe pas de liste de termes médicaux en roumain en libre accès. Pour cela, nous avons extrait les entités nommées médicales du corpus médical annoté **MoNERo** (Mitrofan et al., 2019) et nous avons créé une **terminologie médicale en roumain** de 14 133 termes. Notre méthode consiste dans l'extraction automatique de phrases qui contiennent simultanément des termes médicaux et des marqueurs lexicaux ou grammaticaux de reformulation, de type « c'est-à-dire », « autrement dit », « encore appelé », « est un », « également appelé », « désigne », signifie », etc., et leurs équivalents roumains (Grabar & Hamon, 2015 ; Antoine & Grabar, 2016 ; Buhnila, 2022a). Nous prenons en compte également les marqueurs orthographiques comme les doubles points ou les parenthèses.

Les phrases qui contiennent des termes médicaux et des marqueurs de reformulations sont extraites automatiquement. Ces phrases sont par la suite annotées semi-automatiquement et analysées manuellement du point de vue lexical et sémantico-pragmatique afin d'identifier des reformulations de termes médicaux (selon les critères de Buhnila, 2021 ; 2022a ; 2022b). Nous définissons les *relations lexicales* comme le lien lexical qui existe entre les deux segments, le terme médical et la reformulation. Nous analysons et annotons les relations lexicales de type *synonymie*, *hypéronymie*, *hyponymie et méronymie*<fnref n="1" />, dans le contexte du texte médical (Condamines, 2018 ; Ramadier, 2016 ; Săpoiu, 2013). *Les fonctions sémantico-pragmatiques* représentent les raisons qui poussent le locuteur à utiliser la reformulation dans les textes écrits du domaine médical (de type *définition*, *paraphrase*, *synonymie*, *dénomination*<fnref n="2" />, *exemplification*, *explication*) (Malaise et al., 2004 ; Eshkol-Taravella & Grabar, 2017 ; Buhnila, 2022a). Les phrases ont été annotées par au moins deux annotateurs non-spécialistes du domaine de la médecine. L'accord inter-annotateur Kappa (Cohen, 1960) pour l'annotation des phrases contenant des reformulations valides ou sans reformulation est, pour le français, de **0,78 (0,62)** pour toutes les phrases du corpus CLEAR et **0,95** pour ClassYN), et pour le roumain, de **0,82** (pour 1 010 phrases annotées du corpus GrandMed-Ro).

Afin de construire des listes de reformulations correctes pour chaque langue, nous avons réalisé une adjudication entre les deux annotations. Lorsqu'il y avait des différences dans les deux annotations (statut *oui* versus statut *non*), nous avons choisi le statut de plus adapté de la reformulation en suivant le guide d'annotation. À l'issue de nos analyses, nous avons constitué une liste de **8 626** paires de terme – reformulation extraites des corpus français CLEAR Cochrane et ClassYN et **3 027** paires du corpus roumain GrandMed-Ro.

## 3.2 Données d'entraînement

Nous avons lancé nos expériences avec la plateforme **APT** et la version **T5-base** du Transformer qui a 220 millions de paramètres, permettant des prédictions de bonne qualité en anglais. Nous l'adaptons pour le français et le roumain en s'appuyant sur les données annotées et validées manuellement. Pour chaque expérience monolingue, nous avons utilisé trois types de données :

1. Un corpus d'entraînement : **8 146** paires *terme – reformulation* pour le français et **2 727** paires pour le roumain ;

<footnote n="1">¹ La relation d'holonymie n'est pas présente dans les reformulations identifiées. Nous n'avons pas traité la relation d'antonymie, car nous cherchons des reformulations qui gardent une équivalence de sens et non pas des contraires.</footnote>

<footnote n="2">² Notre définition de la *dénomination* : le terme est reformulé à l'aide d'un autre nom (ou terme), en gardant une relation lexicale d'équivalence sémantique (la synonymie), mais sans l'intention d'expliciter ou simplifier le terme reformulé.</footnote>
2. *Un corpus de validation :* l'évaluation est réalisée pendant le processus d'apprentissage sur des blocs de vingt exemples corrects de paires *termes – reformulation* ;

3. *Un corpus de test :* **480** paires *terme – reformulation* extraites aléatoirement de la liste de reformulations du corpus français et **300** paires *terme – reformulation* du corpus roumain (car nombre réduit de phrases annotées). Ces exemples n'ont pas été utilisés pour l'entraînement pour éviter les biais.

Dans la section suivante nous présentons en détail les résultats de ces expériences, la précision des prédictions correctes pour les deux langues, le français et le roumain.

# 4 Expériences et résultats

Nous avons modifié les paramètres de l'architecture **APT** pour avoir entre 1 et 5 prédictions de reformulations médicales pour chacun de 480, respectivement 300 termes médicaux de la liste de test. L'adaptation du modèle **T5-base** avec les reformulations a duré 24 heures pour chacune de langues de notre étude. Nous avons utilisé une taille maximale de 256 mots (pour les reformulations), le taux d'apprentissage (3e-4), 4 epochs et des batchs (entrainement et validation) de taille de 20 paires, le paramètre concernant la réduction des poids (0,01), un optimiseur AdamW (l'epsilon 1e-8). Nous évaluons manuellement chaque prédiction et nous présentons les résultats de notre analyse.

## 4.1 Génération des reformulations médicales

Nous avons obtenu **2 268 prédictions** de reformulations médicales générées automatiquement pour les **480** termes médicaux du corpus de test en français, et **1 490 prédictions** en roumain pour les **300** termes de test. Par exemple, le terme médical « drépanocytose » est associé à deux types d'informations : la reformulation médicale issue de nos annotations manuelles « est une maladie héréditaire du sang causée par des anomalies de la production d'hémoglobine » (sous l'intitulé *Truth*, reformulation de référence) et des prédictions automatiques (*Prediction*) : « maladie du sang génétique » ; « , maladie héréditaire de l'hémoglobine », « d'autres maladies génétiques » ; « tel que maladie génétique » ; « : maladie d'Alzheimer ». Nous observons que pour cet exemple, les quatre premières prédictions sont correctes. Parmi les 480 termes médicaux en français, **180 (37,50%)** termes ont été attribués des prédictions de reformulations correctes. Pour le roumain, **80 (26,66%)** termes ont été bien reformulés par le modèle de langue **T5-base**. La faible précision pour le roumain s'explique par la taille réduite de données disponibles pour l'entraînement (2 727 reformulations annotées par rapport à 8 146 pour le français) et par la morphosyntaxe plus complexe de la langue (déclinaisons, cas marqués morphologiquement, signes diacritiques absents dans le corpus qui a été utilisé pour construire le modèle T5).

<table><caption>TABLE 1 : Résultats de génération automatique de prédictions avec T5-base</caption><thead><tr><th rowspan="2">Prédiction avec T5-base</th><th colspan="2">CLEAR et ClassYN</th><th colspan="2">GrandMed-Ro</th></tr><tr><th>N° termes</th><th>Précision</th><th>N° termes</th><th>Précision</th></tr></thead><tbody><tr><td>au moins une prédiction correcte</td><td>180</td><td>37,50%</td><td>80</td><td>26,66%</td></tr><tr><td>aucune prédiction correcte</td><td>300</td><td>62,50%</td><td>220</td><td>73,33%</td></tr><tr><td>Total</td><td>480</td><td>100%</td><td>300</td><td>100%</td></tr></tbody></table>
Afin d'évaluer la qualité des prédicitions automatiques de reformulations, nous avons créé un **guide d'annotation** sur une **échelle d'annotation** permettant de les évaluer, que nous présentons en détail ci-dessous.

## 4.2 Evaluation des prédicitions automatiques

L'échelle d'annotation conçue pour évaluer les prédicitions est construite en trois parties :

1. La première évalue chaque prédiction de reformulation générée :

- La valeur 2 : pour les prédicitions identiques à la reformulation médicale initiale (Truth, qui est la valeur de référence) ;

- La valeur 1 : pour les prédicitions correctes, mais différentes de la reformulation médicale initiale ;

- La valeur 0 : pour les prédicitions incorrectes. Même s'il y a des parties de reformulations correctement construites, nous avons attribué la valeur 0 en cas de mots inventés ou des mots inadaptés dans le contexte (par exemple on parle de *l'inflammation de la peau* et on utilise des symptômes des *infections urinaires*) ;

- La valeur -1 : pour les répétitions du terme médical.

2. La deuxième calcule la moyenne de toutes les prédicitions d'un terme ;

3. La troisième évalue si au moins une des prédicitions générées est correcte parmi toutes les reformulations générées pour un terme médical à la fois :

- La valeur 1 : le terme médical a au moins une prédiction de reformulation médicale correcte ;

- La valeur 0 : le terme médical n'a reçu que des prédicitions de reformulations médicales qui ne sont pas correctes.

Nous présentons notre analyse et évaluation des résultats de prédicitions et nous calculons la précision de génération automatique de reformulations du modèle T5-base.

## 4.3 Analyse de prédicitions de reformulations

Nous analysons en détail les scores donnés à chacune de 2 268 prédicitions générées automatiquement par le modèle T5-base (voir Table 2). Très peu de prédicitions sont identiques à la valeur de référence (Truth) : pour 73 prédicitions (3,21%) le modèle a généré correctement les reformulations correspondantes pour 27 termes médicaux. Ces prédicitions sont de plusieurs types :

- **Abréviations** : Terme : *troubles associés à l'entorse cervicale* ; Truth : (TAEC) ; Prediction : (TAEC) ;

- **Hypéronymes** : Terme : *maladies cardiovasculaires, l'ostéoporose et la démence* ; Truth : *telles que maladies chroniques* ; Prediction : maladies chroniques ;

- **Paraphrases** : Terme : *syndrome confusionnel* ; Truth : (délirium) ; Prediction : (délirium) ;

- **Dénominations** : Terme : *sclérose latérale amyotrophique* ; Truth : / maladie du motoneurone ; Prediction : / maladie du motoneurone.

Dans les cas des *dénominations*, l'apparition fréquente de la paire respective de terme – reformulation dans le corpus d'apprentissage joue un rôle important dans la précision de la prédiction générée. Par exemple, nous comptons 16 prédicitions générées automatiquement de type « maladie du motoneurone » pour le terme « sclérose latérale amyotrophique », qui apparaît 11 fois dans la liste de termes du corpus de test et 41 fois ensemble avec le terme dans le corpus d'entraînement. Nous remarquons également que, même si APT a été paramétré pour générer maximum 5 prédicitions pour chaque terme médical, il peut trouver la reformulation correcte exacte
(selon Truth) avec un seul essai, comme par exemple pour les termes médicaux polylexicaux « essais contrôlés randomisés » ; Truth: (ECR) ; Prediction: (ECR) ou « Organisation mondiale de la Santé » ; Truth: (OMS) ; Prediction: (OMS).

<table><caption>TABLE 2 : Statistiques sur les scores de l'échelle d'évaluation de prédicitions avec T5-base</caption><thead><tr><th rowspan="2">Échelle d'annotation des prédicitions</th><th colspan="2">CLEAR et ClassYN</th><th colspan="2">GrandMed-Ro</th></tr><tr><th>N° prédicitions</th><th>Précision %</th><th>N° prédicitions</th><th>Précision %</th></tr></thead><tbody><tr><td>Score 2</td><td>73</td><td>3,21%</td><td>3</td><td>0,2%</td></tr><tr><td>Score 1</td><td>244</td><td>10,75%</td><td>117</td><td>7,85%</td></tr><tr><td>Scores positifs</td><td>317</td><td>13,97%</td><td>120</td><td>8,05%</td></tr><tr><td>Score 0</td><td>1848</td><td>81,48%</td><td>1 320</td><td>88,59%</td></tr><tr><td>Score -1</td><td>94</td><td>4,14%</td><td>50</td><td>3,35%</td></tr><tr><td>Scores négatifs</td><td>1942</td><td>85,62%</td><td>1 370</td><td>91,94%</td></tr><tr><td>Total</td><td>2 268</td><td>100%</td><td>1 490</td><td>100%</td></tr></tbody></table>

Parmi toutes les prédicitions générées pour le français, **317 (13,97%)** sont des reformulations correctes pour les **180 termes** ayant au moins une prédiction correcte (**37,50%**). **T5-base** a généré également d'autres reformulations correctes que celle de la colonne *Truth* parmi ses prédicitions, **244 (10,75%)** plus précisément. Ainsi, nous avons obtenu des **nouvelles reformulations**, en dehors de celles qui ont été données comme exemples lors de l'entraînement. Concernant les prédicitions correctes en roumain, nous observons que la majorité (**98,25%**) de prédicitions générées sont des reformulations nouvelles (*score 1*) par rapport aux données d'apprentissage, les reformulations annotées (*score 2*). Par exemple, pour le terme « *Infectiile herpetice* » (les infections par l'herpès), dont la reformulation initiale était « *sunt afectiuni eruptive de natura inflamatorie* » (*sont des affections éruptives de nature inflammatoire*), **T5-base** a généré la reformulation « *cum ar fi o infectie virala contagioasa* » (*telle qu'une infection virale contagieuse*). Nous avons identifié 112 (7,51%) prédicitions qui contiennent des répétitions de type « boala boala » (*maladie maladie*), « un tip tip » (*un type type*), « cum ar fi un virus viral viral » (*comme un virus viral viral*), « fiind afectiune cronica cronica » (*étant une affection chronique chronique*), « afectiune afectiune » (*affection, affection*).

Pour éliminer les répétitions du même mot dans la prédiction générée, nous avons mené une deuxième expérience (**Exp 2**) avec **T5-base** et l'architecture **APT** (**sans répétition du même mot**). Nous avons évalué les prédicitions générées lors de cette deuxième expérience pour le corpus français et le corpus roumain et nous comparons les deux versions (**Exp 1** et **Exp 2**, sans répétitions) ci-dessous. Pour le français, la précision des termes avec au moins une prédiction correcte a augmenté à **44,79%** (7,29% de plus que dans l'**Exp 1**). Pour le roumain, nous avons identifié **19% de termes supplémentaires avec au moins une prédiction correcte** pour obtenir une nouvelle précision de **45,66%** (Table 3).

Les prédicitions correctes (*score 1* et *score 2*) restent quand même limitées : **381 (16,80%)** pour le français et **222 (14,94%)** pour le roumain. La contrainte sans répétitions imposée à la deuxième expérience augmente le nombre de prédicitions correctes (*scores positifs*) de **2,83%** pour le français et de **6,89%** pour le roumain (voir Table 4).
<table><caption>TABLE 3 : Statistiques sur les résultats de prédicitions de l'expérience 1 (répétitions possibles) et 2 (sans répétitions)</caption><thead><tr><th rowspan="2">Modèle</th><th colspan="4">CLEAR et ClassYN</th><th colspan="4">GrandMed-Ro</th></tr><tr><th colspan="2">T5-base Exp 1</th><th colspan="2">T5-base Exp 2</th><th colspan="2">T5-base Exp 1</th><th colspan="2">T5-base Exp 2</th></tr><tr><th>Données statistiques</th><th>N° trm</th><th>%</th><th>N° trm</th><th>%</th><th>N° trm</th><th>%</th><th>N° trm</th><th>%</th></tr></thead><tbody><tr><td>au moins une prédiction correcte</td><td>180</td><td>37,50%</td><td>215</td><td>44,79%</td><td>80</td><td>26,66%</td><td>137</td><td>45,66%</td></tr><tr><td>aucune prédiction correcte</td><td>300</td><td>62,50%</td><td>265</td><td>55,20%</td><td>220</td><td>73,33%</td><td>163</td><td>54,33%</td></tr><tr><td>Total</td><td>480</td><td>100%</td><td>480</td><td>100%</td><td>300</td><td>100%</td><td>300</td><td>100%</td></tr></tbody></table>

Nous avons calculé le **score inter-annotateur Kappa** (Cohen, 1960) pour **1 196 prédicitions** en français et **1 234 prédicitions** en roumain (générées pour **250** termes de chaque langue), annotées par deux annotateurs francophones, non-spécialistes du domaine de la médecine. Nous avons obtenu un score inter-annotateur Kappa de **0,44** pour le français et de **0,48** pour le roumain. Ces accords sont **modérés** car ils concernent quatre valeurs d'annotation différentes selon le guide d'annotation de prédicitions automatiques (2, 1, 0 et -1). Par conséquent, ces scores sont très précis pour chaque valeur. Nous avons calculé également le score Kappa pour les **250** termes **annotés par langue**. Pour les 250 termes annotées en français le score est de **0,42** et en roumain de **0,55**, également des scores inter-annotateur Kappa **modérés**. Les scores modérés s'expliquent par la difficulté de la tâche : il est difficile d'identifier la reformulation correcte (surtout quand les mots inventés utilisent des préfixes ou suffixes utilisés couramment pour créer des termes).

<table><caption>TABLE 4 : Statistiques sur les scores de l'échelle d'évaluation de prédicitions : expériences 1 et 2</caption><thead><tr><th rowspan="2">Échelle d'évaluation</th><th colspan="4">CLEAR et ClassYN</th><th colspan="4">GrandMed-Ro</th></tr><tr><th colspan="2">T5-base Exp 1</th><th colspan="2">T5-base Exp 2</th><th colspan="2">T5-base Exp 1</th><th colspan="2">T5-base Exp 2</th></tr><tr><th></th><th>N°</th><th>%</th><th>N°</th><th>%</th><th>N°</th><th>%</th><th>N°</th><th>%</th></tr></thead><tbody><tr><td>Score 2</td><td>73</td><td>3,21%</td><td>50</td><td>2,20%</td><td>3</td><td>0,2%</td><td>7</td><td>0,47%</td></tr><tr><td>Score 1</td><td>244</td><td>10,75%</td><td>330</td><td>14,55%</td><td>117</td><td>7,85%</td><td>214</td><td>14,41%</td></tr><tr><td>Scores positifs</td><td>317</td><td>13,97%</td><td>382</td><td>16,85%</td><td>120</td><td>8,05%</td><td>223</td><td>15,01%</td></tr><tr><td>Score 0</td><td>1 848</td><td>81,48%</td><td>1 796</td><td>79,22%</td><td>1 320</td><td>88,59%</td><td>1 216</td><td>81,88%</td></tr><tr><td>Score -1</td><td>94</td><td>4,14%</td><td>89</td><td>3,92%</td><td>50</td><td>3,35%</td><td>45</td><td>3,03%</td></tr><tr><td>Scores négatifs</td><td>1 942</td><td>85,62%</td><td>1 885</td><td>83,14%</td><td>1 370</td><td>91,94%</td><td>1 261</td><td>84,91%</td></tr><tr><td>Total</td><td>2 268</td><td>100%</td><td>2 267</td><td>100%</td><td>1 490</td><td>100%</td><td>1 485</td><td>100%</td></tr></tbody></table>

Nous avons analysé les prédicitions annotées avec le *score 1* afin d'identifier celles qui sont des nouvelles reformulations par rapport au jeu de données d'entraînement (les 8 146 paires *terme-reformulation* pour le français et les 2 727 paires pour le roumain). Nous analysons les prédicitions uniques, sans doublons, et nous observons que lors de l'**Exp 2**, **T5-base** a généré **81,55%** de nouvelles reformulations en français et **86%** en roumain (Table 5). Les nouvelles reformulations obtenues sont en général des reformulations assez simples, des variantes du nom de la maladie sous forme d'adjectif (*schizophrénie : une maladie schizophrénique*).
<table><caption>TABLE 5 : Statistiques sur les prédictions automatiques de score 1</caption><thead><tr><th rowspan="3">Modèle</th><th colspan="4">CLEAR et ClassYN</th><th colspan="4">GrandMed-Ro</th></tr><tr><th colspan="2">T5-base Exp 1</th><th colspan="2">T5-base Exp 2</th><th colspan="2">T5-base Exp 1</th><th colspan="2">T5-base Exp 2</th></tr><tr><th>N° ref</th><th>%</th><th>N° ref</th><th>%</th><th>N° ref</th><th>%</th><th>N° ref</th><th>%</th></tr></thead><tbody><tr><td>nouvelle prédiction</td><td>135</td><td>68,52 %</td><td>84</td><td>81,55 %</td><td>94</td><td>84,68 %</td><td>172</td><td>86 %</td></tr><tr><td>prédiction entraînement</td><td>62</td><td>31,47 %</td><td>19</td><td>18,44 %</td><td>17</td><td>15,31 %</td><td>28</td><td>14 %</td></tr><tr><td>Total sans doublons</td><td>197</td><td>100 %</td><td>103</td><td>100 %</td><td>111</td><td>100 %</td><td>200</td><td>100 %</td></tr></tbody></table>

Les résultats des scores négatifs sont dus également aux mots inventés ou mal orthographiés, générés par le Transformer. En français nous avons identifié seulement 8 mots inventés (0,35%) de type « maladie nichéolaire », « une maladie caractérisée par une ote de cœur ». Cependant, pour le roumain le nombre de mots inventés est beaucoup plus grand (Exp 1 : 71 mots (4,76%) ; Exp 2 : 129 mots (8,68%)), comme nous l'observons dans les exemples suivants : « reprezinta o afectiune in care se dezvolta un tumefl rea in cortija » (représente une affection dont se developpe [mot inventé] mauvaise [mot inventé]), « numiti articulatari » (nommés [mot inventé]), « este o boala a virusesului » (est une maladie de [mot inventé]).

Nous remarquons que ces mots inventés ont un lemme correct, comme dans les deux derniers exemples, « articulație » (articulation) et « virus » (virus). La difficulté pour le roumain vient de la déclinaison avec article enclitique (attaché à la fin du mot) et par la présence des cas en roumain. Dans l'exemple « este o boala a virusesului », la forme correcte du dernier mot serait la forme articulée, cas génitif du mot virus, c'est-à-dire « a virusului » (du virus). La forme incorrecte « a virusesului » montre que le Transformer n'a pas trouvé la bonne particule à ajouter à la fin du mot pour illustrer le cas génitif (qui exprime la possession en roumain) ou qu'il a ajouté la particule au mot anglais viruses (forme au pluriel de virus). Nous observons ce problème également avec le mot « articulatari », dont la forme correcte est « articulații » (articulations). L'absence de signes diacritiques du roumain (ă, î, â, ț, ş), problème récurrent dans les textes de vulgarisation sur la toile, complexifie encore la tâche du Transformer.

D'autres erreurs de génération concernent l'insertion des mots ou séquences de mots qui n'ont pas de lien avec le contexte dans la reformulation. Le terme « cholangite sclérosante primitive » (« maladie intestinale inflammatoire » (reformulation de référence)) est reformulé comme « une maladie chronique qui peut être caractérisée par des troubles cholestatiques, des antécédents et des taches causés par une inflammation des voies et des structures de la peau ». « Les structures de la peau » n'ont pas de lien direct avec les maladies intestinales. Ce type d'erreur est difficilement identifiable mais apparaît fréquemment dans les paraphrases annotées avec le score 0.

## 4.4 Analyse de la lisibilité des prédictions

Nous avons analysé le niveau de lisibilité (Laframboise, 1978 ; François, 2011) des reformulations générées automatiquement. Nous avons constitué un guide d'annotation de la lisibilité pour les non-spécialistes sur trois niveaux :

- Niveau 1, facile à comprendre : la reformulation médicale est plus facile à comprendre que le terme médical (il y a que des mots plus simples dans la reformulation) ;
- *Niveau 2, même complexité* : même niveau de complexité ou de technicité entre le terme médical et sa reformulation, c'est-à-dire que le sens de deux parties est difficile à comprendre par l'annotateur ;

- *Niveau 3, difficile à comprendre* : la reformulation médicale est plus complexe ou plus technique que le terme et par conséquent plus difficile à comprendre.

L'évaluation sur les deux langues est réalisée par deux annotateurs non-spécialistes de la médecine, francophones ayant comme langue maternelle le roumain. Nous limitons cette analyse seulement aux nouvelles prédictions de reformulations (*score 1*). Nous n'avons pas évalué les reformulations incorrectes (*score 0*) à cause de la présence de termes inventés et de sens perturbés (mots inadaptés au contexte).

<table><caption>TABLE 6 : Évaluation du niveau de lisibilité des prédictions</caption><thead><tr><th rowspan="3">Niveau de lisibilité</th><th colspan="2">CLEAR et ClassYN</th><th colspan="2">GrandMed-Ro</th></tr><tr><th>Annot 1</th><th>Annot 2</th><th>Annot 1</th><th>Annot 2</th></tr><tr><th>N° (%)</th><th>N° (%)</th><th>N° (%)</th><th>N° (%)</th></tr></thead><tbody><tr><td>Niveau 1</td><td>221 (66,96%)</td><td>247 (74,84%)</td><td>179 (83,64%)</td><td>193 (90,18%)</td></tr><tr><td>Niveau 2</td><td>72 (21,81%)</td><td>42 (12,72%)</td><td>27 (12,61%)</td><td>2 (0,93%)</td></tr><tr><td>Niveau 3</td><td>37 (11,21%)</td><td>41 (12,42%)</td><td>8 (3,73%)</td><td>19 (8,87%)</td></tr><tr><td>Total</td><td colspan="2">330 (100%)</td><td colspan="2">214 (100%)</td></tr></tbody></table>

Les résultats de l'évaluation montrent que, en moyenne, **70,90%** des prédictions en français et **86,91%** en roumain sont plus faciles à comprendre que le terme médical. Ces prédictions peuvent servir à la simplification automatique de termes médicaux.

# 5 Conclusion

Nos expériences préliminaires prouvent que l'architecture **APT** peut être utilisée également pour générer des **reformulations sous-phrastiques médicales** avec une précision de **44,79%** pour le français et **45,66%** pour le roumain (si l'on considère les termes qui ont au moins une bonne prédiction). Si Nighojkar et Licato (2021) ont généré un grand nombre de paraphrases de la langue générale en anglais, nos expériences sont menées sur des données du domaine médical en français et en roumain, ce qui rend la tâche plus difficile. Les résultats sont comparables entre les deux langues.

Nous avons créé des **ressources annotées** et vérifiées manuellement partageables<fnref n="3" /> et un **guide d'annotation et d'évaluation des reformulations** issues des textes naturels et des générations automatiques. Le guide peut s'appliquer pour l'évaluation d'autres jeux de données (termes et de leur reformulation) pour d'autres domaines. Nous nous analysé les nouvelles reformulations générées automatiquement et nous avons interprété les résultats. Notre adaptation d'un seul paramètre pour éviter les répétitions montre que l'architecture **APT** permet **d'augmenter** la précision (concernant le nombre de termes ayant au moins une reformulation correcte générée automatiquement) à **45%**. Nous exploiterons les erreurs observées afin de les éviter dans des expériences futures pour améliorer nos résultats de prédictions sur les deux langues d'étude, en particulier pour éviter les mots inventés. L'outil DERIF (Namer, 2002) pourrait être utilisé pour générer des paraphrases à partir des mêmes familles lexicales ou évaluer certaines reformulations générées automatiquement. L'évaluation manuelle des prédictions générées prouve qu'elles peuvent constituer des reformulations médicales faciles à comprendre par le grand public.

<footnote n="3">³ Les ressources, le code et le guide seront disponibles à partir de 15 juin 2023 sur la plateforme github : https://github.com/ibuhnila/refomed</footnote>
Références

AGIRRE E., BANEA C., CER D., DIAB M., GONZALEZ AGIRRE A., MIHALCEA R., RIGAU G. & WIEBE J. (2016). Semeval-2016 task 1: Semantic textual similarity, monolingual and cross-lingual evaluation. In *SemEval-2016. 10th International Workshop on Semantic Evaluation*; 2016 Jun 16-17; San Diego, CA. Stroudsburg (PA): ACL; 2016. p. 497-511. ACL (Association for Computational Linguistics).

ANTOINE E. & GRABAR N. (2016). Exploitation de reformulations pour l'acquisition d'un vocabulaire expert/non expert. In *TALN 2016 : Traitement Automatique des Langues Naturelles*. Paris, France. HAL : https://hal.archives-ouvertes.fr/hal-01426816.

BODENREIDER O. (2004). The Unified Medical Language System (UMLS): Integrating Biomedical Terminology. *Nucleic Acids Research* 32 (90001): 267D - 270. DOI : https://doi.org/10.1093/nar/gkh061.

BOWMAN S., GAUTHIER J., RASTOGI A., GUPTA R., MANNING C. D. & POTTS C. (2016). A Fast Unified Model for Parsing and Sentence Understanding. In *Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics* (Volume 1: Long Papers), p. 1466-1477.

BROCKETT C. & DOLAN W. B. (2005). Support Vector Machines for Paraphrase Identification and Corpus Construction. In *Proceedings of the Third International Workshop on Paraphrasing (IWP2005)*, p. 1-8. http://aclweb.org/anthology/I/I05/I05-5001.

BUHNILA I. (2018). *Simplification lexicale entre les textes scientifiques et les textes de vulgarisation du domaine de la médecine*. Mémoire de Master. Université de Strasbourg, France.

BUHNILA I. (2021). Building a Corpus of Medical Paraphrases in Romanian. In *Proceedings of the The 16th Edition of the International Conference on Linguistic Resources and Tools for Natural Language Processing – ConsILR-2021*, Iasi, p. 139-152.

BUHNILA I. (2022a). Le Rôle Des Marqueurs et Indicateurs Dans l'analyse Lexicale et Sémantico-Pragmatique de Reformulations Médicales. *8e Congrès Mondial de Linguistique Française (CMLF)*, 4-8 juillet 2022, Orléans, SHS Web of Conferences 138: 10005. DOI : https://doi.org/10.1051/shsconf/202213810005.

BUHNILA I. (2022b). Identifying Medical Paraphrases in Scientific versus Popularization Texts in French for Laypeople Understanding. In *Proceedings of the Third Workshop on Scholarly Document Processing*. Gyeongju, Republic of Korea, p. 69-79. Association for Computational Linguistics.

CARDON R. (2018). Approche lexicale de la simplification automatique de textes médicaux. In *Actes de la conférence Traitement Automatique de la Langue Naturelle, TALN 2018*, p. 159-73. Rennes, France.

CARDON R. (2021). *Simplification automatique de textes techniques et spécialisés*. Informatique et langage [cs.CL]. Thèse de doctorat. Université de Lille. Français. (NNT : 2021LILUH007). (tel-03343769v2).

CARDON R. & GRABAR N. (2019). Automatic detection of parallel sentences in comparable biomedical corpora. In *TALN 2019*. Toulouse, France. HAL : https://hal.archives-ouvertes.fr/hal-02430446.

COHEN, J. (1960). A coefficient of agreement for nominal scales. *Educ. Psychol. Meas.*, 20, p. 27-46.

CÔTÉ R. A. (1998). Systematized Nomenclature of Human and Veterinary Medicine: SNOMED International. Version 3.5. *Northfield, IL: College of American Pathologists*.

CONDAMINES A. (2018). Nouvelles perspectives pour la terminologie textuelle. J. Altmanova; M. Centrella; K.E. Russo. *Terminology and Discourse, Peter Lang*, p. 1-13.
COSTA R. (2005). Texte, terme et contexte. In *Actes des septièmes Journées scientifiques du réseau de chercheurs Lexicologie Terminologie Traduction*, p. 79-88. Bruxelles, Belgique.

DELÉGER L. & ZWEIGENBAUM P. (2009). Extracting lay paraphrases of specialized expressions from monolingual comparable medical corpora. In *Proceedings of the 2nd Workshop on Building and Using Comparable Corpora: from Parallel to Non-parallel Corpora*, p. 2-10. BUCC '09. Suntec, Singapore: Association for Computational Linguistics.

DEVLIN J., CHANG M.-W., LEE K. & TOUTANOVA K. (2019). BERT: Pre-training of deep bidirectional transformers for language understanding. In *Proceedings of NAACL*. http://arxiv.org/abs/1810.04805.

DONNELLY K. (2006). SNOMED-CT: The Advanced Terminology and Coding System for EHealth. *Studies in Health Technology and Informatics*, 121, p. 279-90.

ELHADAD N. & SUTARIA K. (2007). Mining a Lexicon of Technical Terms and Lay Equivalents. In *Biological, translational, and clinical language processing*, p. 49-56. Prague, Czech Republic: Association for Computational Linguistics. https://www.aclweb.org/anthology/W07-1007.

ESHKOL-TARAVELLA I. & GRABAR N. (2017). Taxinomie dans les reformulations du point de vue de la linguistique de corpus. *Syntaxe et Sémantique, vol. 18, no. 1*, p. 149-184.

FRANÇOIS T. (2011). *Les apports du traitement automatique du langage à la lisibilité du français langue étrangère*. Thèse de Doctorat. Université Catholique de Louvain. Louvain, France.

GRABAR N. & CARDON R. (2018). CLEAR - Simple Corpus for Medical French. In *Proceedings of the 1st Workshop on Automatic Text Adaptation (ATA)*, p. 3-9. Tilburg, the Netherlands: Association for Computational Linguistics. DOI: https://doi.org/10.18653/v1/W18-7002.

GRABAR N. & HAMON T. (2015). Extraction automatique de paraphrases grand public pour les termes médicaux. In *22ème Traitement Automatique des Langues Naturelles*, 14. Caen, France.

GRABAR N. & HAMON T. (2016). Exploitation de la morphologie pour l'extraction automatique de paraphrases grand public des termes médicaux. *Traitement Automatique des Langues*, Varia, 57 (1), p. 85-109.

GUPTA A., AGARWAL A., SINGH P. & RAI P. (2018). A deep generative framework for paraphrase generation. In *Proceedings of the AAAI conference on artificial intelligence* (Vol. 32, No. 1).

KILGARRIFF A., BAISA V., BUŠTA J., JAKUBÍČEK M., KOVÁŘ V., MICHELFEIT J., RYCHLÝ P. & SUCHOMEL V. (2014). The Sketch Engine: ten years on. *Lexicography* 1, p. 7-36.

KOPTIENT A., CARDON R. & GRABAR N. (2019). Simplification-induced transformations: typology and some characteristics. In *BioNLP 2019*. Florence, Italy. DOI: https://doi.org/10.18653/v1/W19-5033.

LAFRAMBOISE Y. (1978). La lisibilité : Qu'est-ce que la lisibilité ? Quels éléments rendent un texte lisible et un autre pas ? *Québec français 32*, p. 27-29.

MALAISE V., ZWEIGENBAUM P. & BACHIMONT, B. (2004). Repérage et exploitation d'énoncés définitoires en corpus pour l'aide à la construction d'ontologie. In *Actes de la 11ème conférence sur le Traitement Automatique des Langues Naturelles*. Articles longs, p. 149-158, Fès, Maroc. ATALA.

MILLER G. A. (1998). *WordNet: An Electronic Lexical Database*. MIT Press.

MITROFAN M., BARBU MITITELU V. & MITROFAN G. (2019). MoNERo: A Biomedical Gold Standard Corpus for the Romanian Language. In *Proceedings of the 18th BioNLP Workshop and Shared Task*, p. 71-79. Florence, Italy: Association for Computational Linguistics. DOI: https://doi.org/10.18653/v1/W19-5008.

NAMER, F. (2002). Acquisition automatique de sens à partir d'opérations morphologiques en français : études de cas. In *Actes de la 9ème conférence sur le Traitement Automatique des Langues Naturelles*. Articles longs, p. 237-246, Nancy, France. ATALA.

NIGHOJKAR, A. & LICATO, J. (2021). Improving Paraphrase Detection with the Adversarial Paraphrasing Task. In *Proceedings of the 59th Annual Meeting of the Association for Computational*
*Linguistics and the 11th International Joint Conference on Natural Language Processing (Volume 1: Long Papers)*, p. 7106–7116, Online. Association for Computational Linguistics.

PECOUT A., TRAN T. M. & GRABAR N. (2019). Améliorer la diffusion de l'information sur la maladie d'Alzheimer: étude pilote sur la simplification de textes médicaux. *Ela. Etudes de linguistique appliquée*, no 195 (3), p. 325-41.

RAFFEL C., SHAZEER N., ROBERTS A., LEE K., NARANG S., MATENA M., ZHOU Y., LI W. & LIU P. J. (2020). Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer. *Journal of Machine Learning Research (JMLR)*, 21(140).

RAMADIER L. (2016). Indexation et apprentissage de termes et de relations à partir de comptes rendus de radiologie. Thèse en Informatique. Université Montpellier, Français. (NNT : 2016MONTT298). (tel-01479769v2).

SAGGION H. (2017). Automatic Text Simplification. *Synthesis Lectures on Human Language Technologies* 10 (1), p. 1-137. DOI: https://doi.org/10.2200/S00700ED1V01Y201602HLT032.

SAPOIU C. (2013). *Hiponimia în terminologia medicală. Modalități de abordare în semantică și lexicografie*. Pitești, Editura Trend, 199 pages.

SELLAM T., DAS D. & PARIKH A. (2020). BLEURT: Learning Robust Metrics for Text Generation. In *Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics*, p. 7881–7892, Online. Association for Computational Linguistics.

SPACKMAN, K. A., CAMPBELL K. E. & CÔTÉ, R. A. (1997). SNOMED RT: a reference terminology for health care. In *Proceedings of the AMIA Annual Fall Symposium*, p. 640-44.

SPECIA L., KUMAR J. S. & MIHALCEA R. (2012). SemEval-2012 task 1: English Lexical Simplification. In *Proceedings of the First Joint Conference on Lexical and Computational Semantics - Volume 1: Proceedings of the main conference and the shared task*, and Volume 2: *Proceedings of the Sixth International Workshop on Semantic Evaluation*, p. 347–355. SemEval ’12. Montréal, Canada: Association for Computational Linguistics.

SHARDLOW M. (2014). A Survey of Automated Text Simplification. *International Journal of Advanced Computer Science and Applications* 4 (1). DOI: https://doi.org/10.14569/SpecialIssue.2014.040109.

TODIRASCU A., PADO S., KRISCH J., KISSELEW M. & HEID U. (2012). French and German Corpora for Audience-Based Text Type Classification. In *Proceedings of the Eight International Conference on Language Resources and Evaluation (LREC’12)*, p. 1591–1597. Istanbul, Turkey: European Language Resources Association (ELRA).

TCHECHMEDJIEV A., ABDAOUI A., EMONET V., ZEVIO S. & JONQUET C. (2018). SIFR annotator: ontology-based semantic annotation of French biomedical text and clinical notes. *BMC bioinformatics*, 19(1), 405.

VARGAS E. (2008). Un comportement de type céramique, c'est-à-dire cassant : les reformulations intratextuelles dans les émissions de vulgarisation télévisées allemandes. In *Pragmatique de la reformulation. Types de discours - Interactions didactiques*. Sous la direction de M. SCHUWER. M.-C. LE BOT, E. RICHARD, p. 21-38. Rennes: Presses Universitaires de Rennes.

VASWANI A., SHAZEER N., PARMAR N., USZKOREIT J., JONES L., GOMEZ A. N., KAISER L. & POLOSUKHIN I. (2017). Attention is all you need. *CoRR*, abs/1706.03762.

XU W., CALLISON-BURCH C. & DOLAN W. B. (2015). Semeval-2015 task 1: Paraphrase and semantic similarity in twitter (pit). In *Proceedings of the 9th international workshop on semantic evaluation (SemEval 2015)*, p. 1-11.
# Étude comparative des plongements lexicaux pour l'extraction d'entités nommées en français

Danrun Cao¹,² Nicolas Béchet¹ Pierre-François Marteau¹

(1) Univ. Bretagne Sud, CNRS, IRISA, Rue Yves Mainguy, 56000 Vannes, France

(2) OctopusMind, 2 Pl. Saint-Pierre, 44000 Nantes, France

danrun.cao@univ-ubs.fr, nicolas.bechet@univ-ubs.fr,

pierre-francois.marteau@univ-ubs.fr

## RÉSUMÉ

Dans ce papier nous présentons une étude comparative des méthodes de plongements lexicaux pour le français sur la tâche de Reconnaissance d'entités nommées (REN). L'objectif est de comparer la performance de chaque méthode sur la même tâche et sous les mêmes conditions de travail. Nous utilisons comme corpus d'étude la proportion française du corpus WikiNER. Il s'agit d'un corpus de 3,5 millions de tokens avec 4 types d'entités. 10 types de plongements lexicaux sont étudiés, y compris les plongements non-contextuels, des contextuels et éventuellement ceux à base de transformer. Pour chaque plongement, nous entraînons un BiLSTM-CRF comme classifieur. Pour les modèles à base de transformer, nous comparons également leur performance sous un autre cas d'usage : *fine-tuning*.

## ABSTRACT

### Comparative study of word embeddings for French Named Entity Recognition

In this paper we present a comparative study of word embedding methods for French named entity recognition (NER). Our objectif is to compare each method's performance when facing the same task and under the same working conditions. We use the French proportion of WikiNER as corpus of study. It is a 3.5-million token corpus with 4 entity types. 10 embedding methods are studied, including non-contextual ones, contextual ones and transformer-based ones. For each embedding, we train a BiLSTM-CRF as token classifier. for transformer-based models, we also compare their performance under another usage which is fine-tuning.

**MOTS-CLÉS** : Plongements lexicaux, Reconnaissance d'entités nommées, état de l'art.

**KEYWORDS:** Word embeddings, Names entity recognition, benchmark.

## 1 Introduction

En traitement automatique des langues (TAL), une entité nommée est définie comme étant un syntagme nominal se référant à un objet réel du monde. Ce syntagme est appelé la "mention" de l'entité en question. Une entité peut avoir plusieurs mentions. Par exemple "France" et "République Française" sont deux mentions renvoyant à l'entité "France". Ces objets peuvent être abstraits ou concrets, en fonction des besoins de chaque cas d'application. Il est important que la mention permette aux lecteurs d'identifier l'entité cible de manière précise et unique. Ceci sous entend qu'une mention ne peut être associée qu'à une seule entité. Quelques exemples courants d'entités nommées correspondent à des noms de personnes ou d'entreprises, des endroits, des dates, des évènements, etc.

<figure><img src="image_34.png" /></figure>
La tâche de reconnaissance d'entités nommées (REN) consiste à identifier ces entités dans un texte non structuré et à leur attribuer une liste de catégories prédéfinies. La tâche CoNLL 2003 (Sang & De Meulder, 2003) en est un exemple bien connu. Elle propose deux corpus annotés en anglais et en allemand. Quatre types d'entités sont traités : personne (PER, *person*), endroit (LOC, *location*), organisation (ORG, *organization*) et divers (MISC, *miscellaneous*). La REN est non seulement une tâche importante en soi, mais elle constitue aussi un composant clé pour des tâches plus complexes comme l'extraction de relations sémantiques, le résumé automatique, la fouille d'opinion, etc.

Historiquement, la tâche REN est abordée avec des méthodes à base de règles. Ces règles sont développées par des experts du domaine correspondant. Plusieurs pistes peuvent être suivies, par exemple en s'appuyant sur les caractéristiques morphologiques des entités (majuscule, minuscule, expressions régulières...), les informations lexicales et syntaxiques des mots, et éventuellement des ressources complémentaires (dictionnaires terminologiques, bases de connaissance...). Un des premiers travaux publiés de ce genre est (Rau, 1991), où l'auteure résout un problème de détection de noms d'entreprise par un système de règles symboliques. La méthode repose sur la mise en oeuvre de règles empiriques, et elle est peu coûteuse en temps de calcul. Cependant, elle est dépendante d'une intervention humaine importante et de ressources lexicales propres au domaine traité, ce qui constitue sa principale faiblesse. Ces ressources peuvent être coûteuses à produire. Il n'est pas toujours aisé d'y accéder, pour des raisons de propriétés intellectuelles et de moyen d'acquisition. Par ailleurs, les règles, ainsi que les ressources lexicales, nécessitent des mises à jour régulières, ce qui constitue un travail fastidieux.

Les approches plus récentes pour la REN privilégient les méthodes par apprentissage automatique. Elles prennent en entrée du texte brut, le vectorisent et utilisent un modèle de classification pour produire des annotations d'entité au niveau du token. On entend par "token" une séquence continue de caractères non vides, qui constitue l'unité minimale prise en compte lors du traitement automatique des données textuelles. Au début, ce vecteur de token se définit manuellement. Nous choisissons des caractéristiques et/ou des heuristiques permettant de capturer les spécificités d'un token, et leur valeur constitue alors le vecteur du token. Nous entraînons ensuite un annotateur automatique, tels que SVM et CRF, qui classifie les tokens en fonction de leur vecteur (Shen et al., 2004; Kazama & Torisawa, 2007).

Dans cette étude, nous nous intéressons à une méthode qui consiste à projeter les tokens dans un espace vectoriel continu, et ce de manière automatique. Cette méthode, que nous appellerons plongement lexical dans le reste de l'article, permettent d'encoder plus ou moins efficacement l'espace sémantique d'un token et éventuellement d'un texte entier. Cet article présente une étude comparative, pour la langue française, des méthodes de plongement issues de l'état de l'art sur une tâche de REN, en exploitant une même méthode de classification au niveau token. Cette étude permet d'analyser quantitativement l'impact des différents plongements lexicaux sur les résultats obtenus.

# 2 Travaux connexes

## 2.1 Plongement lexical

On entend par "plongement lexical" la représentation vectorielle des mots dans un espace métrique. Cet espace peut être interprété comme un espace sémantique de la langue, pour lequel chaque dimension correspond à un concept sémantique concret ou abstrait. La valeur des différentes dimensions décrit
alors la "proportion" de présence de chaque concept dans un mot, ce qui constitue une représentation quantifiée du "sens" du mot.

Nous distinguons deux types de plongements : non-contextuel et contextuel. Pour les plongements non-contextuels, chaque mot est associé à un vecteur unique, quel que soit le contexte dans lequel il est utilisé. Le premier algorithme de ce genre est *SENNA* (Collobert et al., 2011). *SENNA* initialise des vecteurs aléatoires pour chaque mot du vocabulaire et les entraîne de manière conjointe avec le classifieur en charge d'étiqueter les tokens. Il est possible d'ajouter des descripteurs empiriques comme ceux utilisés dans les systèmes à base de règles. Pour ce faire, *SENNA* génère des vecteurs aléatoires pour chacune des valeurs de ces descripteurs, et les concatène aux vecteurs de mots. Ces vecteurs de descripteurs sont également entraînés conjointement avec l'étiqueteur. Un peu plus tard, (Mikolov et al., 2013) ont proposé *Word2Vec*. Son concept clé est qu'un mot peut être défini par son contexte, et que les mots qui partagent un même contexte sont potentiellement des synonymes, lesquels pourront alors être représentés par des vecteurs proches. *fastText* (Bojanowski et al., 2017) est une extension de *Word2Vec* qui exploite les informations des sous-mots, c.-à-d. les n-grammes de caractères qui composent les mots. Cela permet notamment de prendre en compte les affixes et les racines des mots, et de mieux gérer les mots hors vocabulaire. Dans une autre approche, *GloVe* (Pennington et al., 2014) calcule les vecteurs en s'appuyant sur les co-occurrences des mots. Un dernier exemple de plongement non-contextuel est proposé dans (Chiu & Nichols, 2016). Ce modèle génère des vecteurs de mot par agrégation de vecteurs définis au niveau des caractères. L'ordre et la composition des caractères permettent également de représenter l'espace sémantique d'un mot. Chaque caractère initialement reçoit un vecteur aléatoire.

Les plongements non-contextuels ont montré de belles performances dans plusieurs tâches de TAL telles que l'analyse de sentiment, la fouille d'opinion, etc. Cependant ils ne traitent pas correctement les cas d'ambiguïté comme les polysèmes et les expressions figées. Pour corriger cette lacune, les plongements contextuels ont été introduits. Ils ont la particularité de travailler au niveau de la phrase plutôt qu'au niveau des mots isolés. *ELMo* (Peters et al., 2018) est un réseau de neurones constitué de deux couches de *Long Short-Term Memory (LSTM)* (Hochreiter & Schmidhuber, 1997) bidirectionnel (*BiLSTM*) qui traite une phrase vectorisée en entrée. *LSTM* est un réseau de neurones récurrents spécialisé dans le traitement des données séquentielles. En plus de sa capacité à "mémoriser" les entrées précédentes, il décide également à quel point cette mémoire doit être prise en compte dans l'étape courante. Un *biLSTM* est donc un *LSTM* qui considère la séquence de données dans les deux sens : vers l'avant (*forward*) et vers l'arrière (*backward*). Ce processus produit cinq représentations d'un mot : la suite de vecteurs de mots, 2 représentations *forward*, et 2 *backward*. Le vecteur final est produit par une combinaison pondérée de ces cinq représentations, les poids étant dépendants de la tâche à réaliser. Un autre exemple de plongement contextuel est *flair* (Akbik et al., 2018). *flair* considère une phrase comme une suite de caractères, et ce dans les deux sens. Un *LSTM* est entraîné à prédire le prochain caractère étant donné les précédents (ou les suivants). La représentation finale d'un mot est obtenue par concatenation de deux éléments : l'encodage du premier caractère de la phrase jusqu'au dernier caractère du mot, et celui du dernier caractère de la phrase jusqu'au début du mot.

Les architectures récentes à base de *Transformer* (Vaswani et al., 2017) se sont rapidement imposées dans l'état de l'art des méthodes de vectorisation. Une caractéristique importante du modèle *Transformer* est le mécanisme d'attention. Ce dernier permet au modèle de mesurer l'impact de chacun des autres tokens du texte lors du traitement du token courant, et ce en optimisant les poids d'attention. Le modèle tient compte également de l'ordre d'occurrence des tokens, en exploitant un vecteur qui encode l'emplacement de chaque token. Le premier modèle de plongement à base de *Transformer*
publié est BERT (Devlin et al., 2019). Il reprend la structure de Transformer d'origine, à savoir 12 couches identiques. Le modèle est entraîné sur deux tâches cibles non-supervisées : prédiction du token caché (Masked Language Modeling, MLM) et prédiction de la prochaine phrase (Next Sentence Predictions, NSP). Ces deux objectifs permettent au modèle de capturer à la fois les informations lexicales et phrastiques. Depuis, de nombreux variants de BERT ont été proposés, notamment :

— RoBERTa (Liu et al., 2019) et DistilBERT (Sanh et al., 2020) qui apportent des modification au niveau de la structure du réseau.

— CamemBERT (Martin et al., 2020), FlauBERT (Le et al., 2020) et PhoBERT (Nguyen & Tuan Nguyen, 2020) qui sont spécialisés sur d'autres langues que l'anglais.

À part BERT et les modèles dérivés, un autre modèle Transformer, XLM (Lample & Conneau, 2019), a été proposé. XML reprend également la structure de Transformer d'origine, mais en exploitant trois tâches d'entraînement : MLM comme dans BERT, prédiction du prochain token (Causal Language Modeling, CLM), et traduction (Translation Language Modeling, TLM). Un variant XLM-R (Conneau et al., 2020) basé sur l'architecture de RoBERTa a également été développé.

## 2.2 REN pour le français

En analysant les travaux effectués sur la REN en français, nous avons constaté un manque de corpus volumineux en français librement accessibles pour le développement des modèles de REN.

Le premier corpus REN en langue française librement accessible est proposé par (Sagot et al., 2012). Il s'agit de l'annotation d'entités nommées sur le corpus French Treebank (FTB) (Abeillé et al., 2003). Le corpus comprend 5 890 phrases issues du journal *Le Monde*, avec un total de 11 636 entités. Sur ce corpus, (Dupont, 2017) a entraîné et proposé l'outil SEM. La méthode s'appuie sur des descripteurs empiriques tels que les affixes, les noms communs précédents et suivants l'entité, ainsi que sur des lexiques. Un modèle à base de champ aléatoire conditionnel (conditional random field ou CRF, (Lafferty et al., 2001)) est ensuite entraîné puis utilisé comme classifieur. Ce système obtient un F1 score de 83,7% sur le corpus FTB-NER. (Suárez et al., 2020) ont proposé une comparaison entre SEM, *fastText*, *CamemBERT* et *FrELMo*. Le meilleur résultat est obtenu par la combinaison de *fastText* et *CamemBERT*, et le classifieur *LSTM-CRF*, le F1 score atteignant 90,25%. Les auteurs de *CamemBERT* ont également évalué leur modèle sur FTB-NER. Ils emploient *CamemBERT* en plongement et entraînent un LSTM-CRF. Le F1 score est de 89,55%.

Europeana Newspapers (Neudecker, 2016) est un autre corpus REN multilingue en accès libre, qui inclut le français, constitué d'articles de journaux numérisés avec des outils d'OCR. Cependant, l'OCR utilisé introduit de nombreuses erreurs et le corpus nécessite un travail de correction additionnel.

Enfin, FENEC (Millour et al., 2022) est un corpus contenant six genres de textes (prose, poésie, informations, encyclopédie, parole et multi-sources), annoté en entité nommée sous le schéma Quaero (Rosset et al., 2011). Ce corpus contient 11 149 tokens et 875 entités.

## 3 Corpus

Nous choisissons la proportion française du corpus WikiNER (Nothman et al., 2013) comme corpus d'étude, nous le désignerons WikiNER-fr dans la suite. WikiNER-fr comprend 134 092 phrases et 3.5 millions tokens, issus de plus de 61 000 articles Wikipédia. Il concerne les mêmes type d'entités que
ceux exploités dans CoNLL 2003, à savoir PER, LOC, ORG et MISC. Le tableau 1 montre le nombre de tokens pour chaque type d'entités dans le corpus.

<table><caption>TABLE 1 – Nb. de tokens pour chaque type d'entités dans le corpus</caption><thead><tr><th>Entité</th><th>PER</th><th>LOC</th><th>ORG</th><th>MISC</th></tr></thead><tbody><tr><td>Nb. de tokens</td><td>129 978</td><td>155 565</td><td>45 443</td><td>81 594</td></tr></tbody></table>

Les annotations de WikiNER ont été produites de manière semi-supervisée. D'abord les auteurs ont catégorisé manuellement environ 2 500 articles. Ensuite un classifieur est entraîné sur ce corpus initial puis exploité pour annoter le reste des pages. Parmi les trois modèles de classification comparées, le meilleur est la Régression logistique, avec un F1 score autour de 93% pour toutes les langues.

Puis la catégorie de chaque page Wikipédia est projetée sur les mentions associées aux hyperliens qui pointent vers la page en question. Par exemple, si la page "France" est annotée LOC, et si dans la phrase "Foucault retourne en France en 1960", le mot "France" reçoit un hyperlien vers la page "France", alors le mot "France" sera étiqueté LOC. Dans un article Wikipédia, seule la première occurrence d'une entité reçoit un hyperlien. Les auteurs ont alors mis en place quatre stratégies d'inférence afin de repérer les autres mentions des entités dans le corpus. 5 variants du corpus sont proposés, du corpus le plus bruité/exhaustif au corpus le moins bruité/exhaustif. Dans notre étude, nous avons choisi le variant wiki-2, un bon compromis produit en considérant l'avant-dernier niveau d'inférence (Nothman et al., 2013).

A noter que, mis à part le corpus d'entraînement initial, aucune vérification manuelle n'a été réalisée sur l'ensemble du corpus. Le corpus est alors dit en version *silver-standard*. Les auteurs ont montré que les modèles entraînés sur un corpus *silver-standard* pouvaient atteindre une performance comparable, ou parfois mieux dans certains cas, à ceux appris sur un corpus *gold-standard*, c.-à-d. sur un corpus révisé manuellement. Or cette comparaison a été faite uniquement sur le sous-corpus anglais. Dans le but de vérifier cette propriété pour le Français, nous avons choisi aléatoirement 20% des phrases du WikiNER-fr et révisé manuellement les annotations. Le processus de révision est détaillé dans (ref anonyme). Nous appellerons ce corpus révisé WikiNER-fr-gold dans la suite.

# 4 Expériences

## 4.1 Plongements lexicaux non-contextuels

Parmi les plongements lexicaux non-contextuels, nous avons évalué *Word2Vec*, *fastText* et *GloVe*. Pour *Word2Vec*, nous avons exploité le modèle pré-entraîné par Jean-Philippe Fauconnier. Ce modèle a été entraîné sur le corpus frWaC (Baroni et al., 2009), un ensemble de textes issus du WEB constitué de 1,6 milliards tokens. Pour *Glove*, nous avons entraîné un nouveau modèle sur le corpus frWac, afin que les résultats puissent être comparés à ceux obtenus par *Word2Vec*. Nous le mettrons à disposition de la communauté. Finalement pour *fastText*, nous utilisons le modèle proposé par l'équipe développeuse pré-entraîné sur le corpus *Common Crawl*. Nous étudions également la contribution des n-grammes de caractères de *fastText* pour la REN.
## 4.2 Plongements lexicaux contextuels

7 types de plongements lexicaux contextuels sont évalués, dont cinq exploitent l'architecture de type *transformer*. Les 2 modèles *non-transformer* sont *flair* et *ELMo*. Pour *flair*, 3 modèles sont évalués : un modèle français entraîné sur Wikipédia français, un autre modèle français entraîné sur frWaC, et un modèle multilingue entraîné sur le corpus JW300 (Agić & Vulić, 2019). Ce dernier est un corpus parallèle de plus de 300 langues, dont le français. Concernant *ELMo*, il existe un modèle français pré-entraîné (Che et al., 2018), disponible dans la librairie ELMoForManyLangs.

Parmi les 5 modèles transformers, nous distinguons là encore deux catégories : monolingue et multilingue. Les modèles français évalués sont *CamemBERT* et *DistilCamemBERT* (Delestre & Amar, 2022). Ce dernier est un travail inspiré par *DistilBERT* appliqué sur *CamemBERT*. Les trois autres modèles multilingues sont : *BERT* multilingue, *DistilBERT* multlingue, et *XLM-R*. Certains de ces modèles proposent des variants entraînés sur différents corpus ou avec des nombres différents de paramètres. Nous évaluons tous ces variants mais ne présentons que les résultats du meilleur variant dans la section 5. Il existe deux cas d'usage courants des modèles transformers. Le premier consiste à rajouter une couche de type perceptron comme classifieur, puis à poursuivre l'entraînement d'un modèle pré-entraîné sur la tâche cible. Ce processus est appelé *fine-tuning*. Cela permet au modèle d'optimiser ses paramètres spécifiquement pour la tâche cible. Une fois *fine-tuné*, le modèle pourra être exploité sans tenir compte de la couche de classification. Le deuxième correspond aux situations dans lesquelles un modèle pré-entraîné sert uniquement à produire des vecteurs de mot statiques. Ces vecteurs sont utilisés pour entraîner un classifieur sur les deux cas d'usage que nous comparons.

## 4.3 Procédure

Pour chaque plongement, nous entraînons un biLSTM-CRF et l'utilisons pour extraire et catégoriser les entités nommées en quatre classes. Cette procédure est implémentée à l'aide de la librairie Flair (Akbik et al., 2019). Le réseau biLSTM est initialisé avec 512 neurones (configuration par défaut de Flair). Le classifieur est entraîné sur un nombre d'époques inférieur à 150. Le corpus est découpé en trois sous ensembles : 60% entraînement, 20% validation et 20% test. Le jeu de test contient les mêmes phrases que WikiNER-fr-gold. Lors de l'entraînement, le modèle apprend sur les données d'entraînement et est évalué sur les données de validation. Une fois que le modèle a convergé, il est évalué d'abord sur les données de test puis sur WikiNER-fr-gold. Ceci nous permet de mesurer l'impact des erreurs du corpus sur la performance des modèles. Le taux d'apprentissage est initialisé à 0, 1. Celui-ci diminue en fonction de la qualité de l'entraînement obtenue à chaque époque.

A part le modèle fastText qui inclut les n-grammes, les plongements non-contextuels sont tous confrontés au problème des mots inconnus. Il est ainsi nécessaire de définir manuellement le vecteur à attribuer aux mots inconnus. Nous comparons ici deux stratégies pour proposer un vecteur "par défaut" pour les termes inconnus : (1) nous considérons la moyenne de tous les vecteurs du modèle ou (2) nous utilisons un vecteur nul, i.e. un vecteur dont toutes les dimensions prennent la valeur 0.

Certains des modèles à évaluer, comme ELMo et BERT, sont par nature des réseaux de neurones qui n'ont pas de couche de sortie permettant de produire des plongements directement. Ce sont les couches cachées qui encodent la langue. Il faut donc choisir une stratégie d'utilisation de ces couches cachées. Pour ELMo, nous concaténons l'état caché des 3 couches, c.-à-d. la couche d'entrée et les 2 couches de BiLSTM. Selon les auteurs (Peters et al., 2018), l'utilisation de la concaténation des couches permet une meilleure performance en général que d'une seule couche spécifique. Pour les
modèles à base de transformers, nous nous sommes référés aux résultats présentés dans l'article d'origine de BERT (Devlin et al., 2019). Les auteurs ont testé plusieurs stratégies sur le benchmark CoNLL 2003, et le meilleur résultat est obtenu avec la concaténation des états cachés des 4 dernières couches. Nous reprenons cette même configuration dans nos expériences.

L'évaluation finale est effectuée aux niveaux token et entité. Au niveau token, nous vérifions si la bonne catégorie d'entité a été attribué à un token. Au niveau entité, il faut que l'annotation et les frontières soient correctes. Nous utilisons la précision, le rappel et le F1 score comme métrique d'évaluation, et nous calculons la moyenne pondérée de ces métriques pour les quatre types d'entité.

# 5 Résultats

Le tableau 5 présente nos résultats. Le meilleur résultat pour chaque type de plongement est en gras, et le meilleur résultat sur l'ensemble des plongements est donné en bas du tableau en gras italique.

Nous remarquons en premier lieu une perte de performance générale quand nous évaluons les modèles sur WikiNER-fr-gold, avec une baisse de 1,11% en moyenne au niveau token et 1,85% au niveau entité. La seule exception est mBERT qui améliore légèrement sa performance. Les modèles étant entraînés sur le corpus *silver-standard*, cette perte est attendue car les modèles apprennent sur des données bruitées. Dans les annotations produites par le meilleur modèle de chaque catégorie, nous constatons les mêmes types d'erreurs et d'incohérences que ceux présents dans le corpus d'origine. Les modèles sont capables d'en corriger quelques unes, mais tout en produisant d'autres erreurs. Ceci confirme la nécessité d'une correction de corpus que nous avons décrit et initié dans cette étude.

Parmi les plongements non-contextuels, le meilleur résultat est obtenu par fastText avec les n-grammes. Il atteint un niveau de performance supérieur même à certains modèles à base de transformer. La deuxième place est occupée avec un petit écart par sa version sans n-grammes qui utilise un vecteur nul pour représenter les mots hors vocabulaire. L'ajout des n-grammes a exigé 5 fois plus de RAM (10,3Go avec n-grammes contre 2,05Go sans n-grammes), sans produire une amélioration considérable (+0.23% en moyenne). Concernant les deux stratégies de gestion de mots hors vocabulaire, le vecteur moyenne semble être une meilleure option pour Word2Vec (+1,03% en moyenne) et notamment GloVe (+8,3% en moyenne). En revanche, il semble préférable d'utiliser un vecteur nul pour les modèles fastText (+6,1% en moyenne).

Dans les deux cas d'usage des plongements à base de transformer, c'est CamemBERT en version large qui produit les meilleurs F1 scores, suivi par CamemBERT en version base et XLM-R en version large. Parmi les variants de CamemBERT-base, celui pré-entraîné sur Wikipédia obtient le meilleur résultat en mode statique, et celui sur CCNet (Wenzek et al., 2020) semble meilleur en mode *fine-tuning*. Toutefois, nous remarquons que l'écart entre CamemBERT-large et CamemBERT-base n'est pas très grand (0.5% en statique et 0.1% en *fine-tuning*). Sachant que la taille de CamemBERT-large est trois fois celle de CamemBERT-base (350m paramètres contre 110m), l'entraînement ainsi que l'exploitation du premier exigent bien plus de ressources de calcul que le second. Ceci pourrait être un facteur important à prendre en compte pour les cas d'usage industriels par exemple où on voudrait limiter le coût de ressources. Dans le même esprit, nous avons comparé mBERT avec DistilBERT-m. Malgré un nombre de paramètres plus faible (-40% d'après les auteurs), DistilBERT-m obtient quasiment la même performance que mBERT.
<table><thead><tr><th rowspan="2">Plongement</th><th colspan="2">WikiNER-fr test</th><th colspan="2">WikiNER-fr-gold</th></tr><tr><th>F1 token</th><th>F1 entité</th><th>F1 token</th><th>F1 entité</th></tr></thead></table>

### Plongements non-contextuels

<table><tr><td>Word2Vec+moyenne</td><td>89,6%</td><td>87,4%</td><td>88,2%</td><td>84,2%</td></tr><tr><td>GloVe+moyenne</td><td>89,3%</td><td>87,3%</td><td>87,9%</td><td>83,9%</td></tr><tr><td>fastText+moyenne</td><td>87,8%</td><td>84,8%</td><td>86,7%</td><td>82%</td></tr><tr><td>Word2Vec+nul</td><td>87,8%</td><td>86,1%</td><td>86,9%</td><td>84,5%</td></tr><tr><td>GloVe+nul</td><td>81,9%</td><td>76,9%</td><td>80,9%</td><td>75,5%</td></tr><tr><td>fastText+nul</td><td>92,7%</td><td>91,3%</td><td>91,7%</td><td>89,8%</td></tr><tr><td><strong>fastText+n-grammes</strong></td><td><strong>92,9%</strong></td><td><strong>91,6%</strong></td><td><strong>91,9%</strong></td><td><strong>90%</strong></td></tr></table>

### Plongements contextuels non-transformer

<table><tr><td>ELMo</td><td>90,6%</td><td>88,8%</td><td>89,7%</td><td>87,3%</td></tr><tr><td>flair français Wikipédia</td><td>91,0%</td><td>89,1%</td><td>90,1%</td><td>87,7%</td></tr><tr><td><strong>flair français frwac</strong></td><td><strong>91,9%</strong></td><td><strong>90,2%</strong></td><td><strong>90,6%</strong></td><td><strong>88,3%</strong></td></tr><tr><td>flair multilingue</td><td>89,7%</td><td>87,5%</td><td>88,7%</td><td>86,2%</td></tr></table>

### Plongements transformer français statiques

<table><tr><td>Camembert base ccnet</td><td>93,9%</td><td>92,6%</td><td>92,5%</td><td>90,5%</td></tr><tr><td>Camembert base wikipédia</td><td>94,3%</td><td>93,0%</td><td>93,2%</td><td>91,2%</td></tr><tr><td><strong>Camembert large</strong></td><td><strong>95%</strong></td><td><strong>93,7%</strong></td><td><strong>93,5%</strong></td><td><strong>91,4%</strong></td></tr><tr><td>DistilCamembert base</td><td>92,7%</td><td>91,1%</td><td>91,4%</td><td>89,2%</td></tr></table>

### Plongements transformer multilingues statiques

<table><tr><td>mBERT</td><td>93,0%</td><td>91,5%</td><td>91,7%</td><td>89,6%</td></tr><tr><td>DistilBERT-m</td><td>92,7%</td><td>91,2%</td><td>91,5%</td><td>89,4%</td></tr><tr><td>XLM-R base</td><td>91,1%</td><td>89,3%</td><td>89,9%</td><td>87,6%</td></tr><tr><td><strong>XLM-R large</strong></td><td><strong>93,9%</strong></td><td><strong>92,5%</strong></td><td><strong>92,5%</strong></td><td><strong>90,5%</strong></td></tr></table>

### Plongements transformer français + fine-tuning

<table><tr><td>Camembert base ccnet</td><td>94,0%</td><td>92,3%</td><td>92,8%</td><td>90,3%</td></tr><tr><td><strong>Camembert large</strong></td><td><strong>94,1%</strong></td><td><strong>92,5%</strong></td><td><strong>92,8%</strong></td><td><strong>90,5%</strong></td></tr><tr><td>DistilCamembert base</td><td>93,1%</td><td>91,0%</td><td>92%</td><td>89,3%</td></tr></table>

### Plongements transformer multilingues + fine-tuning

<table><tr><td>mBERT</td><td>92,0%</td><td>89,6%</td><td>92,4%</td><td>89,7%</td></tr><tr><td>DistilBERT-m</td><td>92,5%</td><td>90,1%</td><td>91,3%</td><td>88,2%</td></tr><tr><td>XLM-R base</td><td>92,5%</td><td>90,5%</td><td>91,3%</td><td>88,5%</td></tr><tr><td><strong>XLM-R large</strong></td><td><strong>93,6%</strong></td><td><strong>91,6%</strong></td><td><strong>92,6%</strong></td><td><strong>90%</strong></td></tr></table>

### Meilleur résultat

<table><caption>TABLE 2 – Résultats d’évaluation des plongements</caption><tr><td><em>Camembert large en statique</em></td><td><strong>95%</strong></td><td><strong>93,7%</strong></td><td><strong>93,5%</strong></td><td><strong>91,4%</strong></td></tr></table>
# 6 Conclusion

Nous avons évalué 10 types de plongements lexicaux sur le corpus WikiNER-fr. L'objectif est de montrer, face à une même tâche et dans les mêmes conditions initiales, quel modèle est le plus adapté à une tâche REN. Nous avons effectué une évaluation supplémentaire des modèles sur WikiNER-fr-gold, la version révisée d'une partie du corpus WikiNER-fr. Dans les deux cas, les modèles à base de transformer ont obtenu les meilleurs résultats. Nous constatons une perte de performance générale lors de l'évaluation sur WikiNER-fr-gold. Les erreurs constatées dans le corpus WikiNER-fr sont reproduites dans les annotations réalisées par les modèles entraînés sur ce corpus. Il est donc nécessaire de réviser le corpus. Enfin, il convient de noter qu'un nombre de paramètres important ne garantit pas un gain de performance signifiant.

# Références

ABEILLÉ A., CLÉMENT L. & TOUSSENEL F. (2003). Building a Treebank for French. In A. ABEILLÉ, Éd., *Treebanks: Building and Using Parsed Corpora*, volume 20, p. 165–187. Dordrecht: Springer Netherlands. DOI: 10.1007/978-94-010-0201-1_10.

AGIĆ & VULIĆ I. (2019). JW300: A Wide-Coverage Parallel Corpus for Low-Resource Languages. In *Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics*, p. 3204–3210, Florence, Italy: Association for Computational Linguistics. DOI: 10.18653/v1/P19-1310.

AKBIK A., BERGMANN T., BLYTHE D., RASUL K., SCHWETER S. & VOLLGRAF R. (2019). *FLAIR: An Easy-to-Use Framework for State-of-the-Art NLP*. In *NAACL 2019*, p. 54–59.

AKBIK A., BLYTHE D. & VOLLGRAF R. (2018). Contextual String Embeddings for Sequence Labeling. In *Proceedings of the 27th International Conference on Computational Linguistics*, p. 1–12, Santa Fe, New Mexico, USA: Association for Computational Linguistics.

BARONI M., BERNARDINI S., FERRARESI A. & ZANCHETTA E. (2009). The WaCky wide web: a collection of very large linguistically processed web-crawled corpora. *Language Resources and Evaluation*, **43**(3), 209–226. DOI: 10.1007/s10579-009-9081-4.

BOJANOWSKI P., GRAVE E., JOULIN A. & MIKOLOV T. (2017). Enriching Word Vectors with Subword Information. *Transactions of the Association for Computational Linguistics*, **5**, 135–146. DOI: 10.1162/tacl_a_00051.

CHE W., LIU Y., WANG Y., ZHENG B. & LIU T. (2018). Towards Better UD Parsing: Deep Contextualized Word Embeddings, Ensemble, and Treebank Concatenation. In *Proceedings of the CoNLL 2018 Shared Task: Multilingual Parsing from Raw Text to Universal Dependencies*, p. 55–64, Brussels, Belgium: Association for Computational Linguistics. DOI: 10.18653/v1/K18-2005.

CHIU J. P. C. & NICHOLS E. (2016). Named Entity Recognition with Bidirectional LSTM-CNNs. *Transactions of the Association for Computational Linguistics*, **4**, 357–370. DOI: 10.1162/tacl_a_00104.

COLLOBERT R., WESTON J., BOTTOU L., KARLEN M., KAVUKCUOGLU K. & KUKSA P. (2011). Natural Language Processing (almost) from Scratch. *J. Mach. Learn. Res.*, **12**, 2493–2537. DOI: 10.5555/1953048.2078186.
CONNEAU A., KHANDELWAL K., GOYAL N., CHAUDHARY V., WENZEK G., GUZMÁN F., GRAVE E., OTT M., ZETTLEMOYER L. & STOYANOV V. (2020). Unsupervised Cross-lingual Representation Learning at Scale. In Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, p. 8440–8451 : Association for Computational Linguistics. DOI: 10.18653/v1/2020.acl-main.747.

DELESTRE C. & AMAR A. (2022). DistilCamemBERT : a distillation of the French model CamemBERT. In *CAp (Conférence sur l’Apprentissage automatique)* : arXiv. DOI: 10.48550/ARXIV.2205.11111.

DEVLIN J., CHANG M.-W., LEE K. & TOUTANOVA K. (2019). BERT : Pre-training of Deep Bidirectional Transformers for Language Understanding. In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics : Human Language Technologies, p. 4171–4186, Minneapolis, Minnesota : ACL. DOI: 10.18653/v1/N19-1423.

DUPONT Y. (2017). Exploration de traits pour la reconnaissance d'entités nommées du Français par apprentissage automatique. In Actes des 24ème Conférence sur le Traitement Automatique des Langues Naturelles. 19es REncontres jeunes Chercheurs en Informatique pour le TAL (RECITAL 2017), p. 42–55, Orléans, France : ATALA.

HOCHREITER S. & SCHMIDHUBER J. (1997). Long Short-Term Memory. Neural Computation, 9(8), 1735–1780. DOI: 10.1162/neco.1997.9.8.1735.

KAZAMA J. & TORISAWA K. (2007). Exploiting Wikipedia as External Knowledge for Named Entity Recognition. In Proceedings of the 2007 EMNLP-CoNLL, p. 698–707, Prague, Czech Republic : Association for Computational Linguistics.

LAFFERTY J., MCCALLUM A. & PEREIRA F. (2001). Conditional Random Fields : Probabilistic Models for Segmenting and Labeling Sequence Data. In Proceedings of the Eighteenth International Conference on Machine Learning, ICML '01, p. 282–289, San Francisco, CA, USA : Morgan Kaufmann Publishers Inc. DOI: 10.5555/645530.655813.

SAMPLE G. & CONNEAU A. (2019). Cross-lingual Language Model Pretraining. In Proceedings of the 33rd International Conference on Neural Information Processing Systems, p. 11, Red Hook, NY, USA : Curran Associates Inc. DOI: 10.5555/3454287.3454921.

LE H., VIAL L., FREJ J., SEGONNE V., COAVOUX M., LECOUTEUX B., ALLAUZEN A., CRABBÉ B., BESACIER L. & SCHWAB D. (2020). FlauBERT : Unsupervised Language Model Pre-training for French. In Proceedings of the Twelfth Language Resources and Evaluation Conference, p. 2479–2490, Marseille, France : European Language Resources Association.

LIU Y., OTT M., GOYAL N., DU J., JOSHI M., CHEN D., LEVY O., LEWIS M., ZETTLEMOYER L. & STOYANOV V. (2019). RoBERTa : A Robustly Optimized BERT Pretraining Approach. In Proceedings of the 20th Chinese National Conference on Computational Linguistics, p. 1218–1227, Huhhot, China : Chinese Information Processing Society of China.

MARTIN L., MULLER B., ORTIZ SUÁREZ P. J., DUPONT Y., ROMARY L., DE LA CLERGERIE, SEDDAH D. & SAGOT B. (2020). CamemBERT : a Tasty French Language Model. In Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, p. 7203–7219 : Association for Computational Linguistics. DOI: 10.18653/v1/2020.acl-main.645.

MIKOLOV T., CHEN K., CORRADO G. & DEAN J. (2013). Efficient Estimation of Word Representations in Vector Space. DOI: 10.48550/ARXIV.1301.3781.

MILLOUR A., DUPONT Y., JOUGLAR A. & FORT K. (2022). FENEC : un corpus à échantillons équilibrés pour l'évaluation des entités nommées en français. In Actes de la 29e Conférence sur
le Traitement Automatique des Langues Naturelles. Volume 1 : conférence principale, p. 82–94,
Avignon, France : ATALA.

NEUDECKER C. (2016). An Open Corpus for Named Entity Recognition in Historic Newspapers.
In Proceedings of the Tenth International Conference on Language Resources and Evaluation, p.
4348–4352, Portorož, Slovenia : European Language Resources Association.

NGUYEN D. Q. & TUAN NGUYEN A. (2020). PhoBERT : Pre-trained language models for Vietnamese. In Findings of the Association for Computational Linguistics : EMNLP 2020, p. 1037–1042 : Association for Computational Linguistics. DOI : 10.18653/v1/2020.findings-emnlp.92.

NOTHMAN J., RINGLAND N., RADFORD W., MURPHY T. & CURRAN J. R. (2013). Learning multilingual named entity recognition from Wikipedia. Artificial Intelligence, 194, 151–175. DOI: 10.1016/j.artint.2012.03.006.

PENNINGTON J., SOCHER R. & MANNING C. (2014). Glove : Global Vectors for Word Representa-
tion. In Proceedings of EMNLP 2014, p. 1532–1543, Doha, Qatar : Association for Computational
Linguistics. DOI : 10.3115/v1/D14-1162.

PETERS M. E., NEUMANN M., IYYER M., GARDNER M., CLARK C., LEE K. & ZETTLEMOYER
L. (2018). Deep contextualized word representations. In Proceedings of the 2018 NAACL :
Human Language Technologies, Volume 1 (Long Papers), volume 1, p. 2227–2237, New Orleans,
Louisiana : Association for Computational Linguistics. DOI : 10.18653/v1/N18-1202.

RAU L. (1991). Extracting company names from text. In [1991] Proceedings. The Seventh IEEE Conference on Artificial Intelligence Application, volume i, p. 29–32, Miami Beach, FL, USA : IEEE Comput. Soc. Press. DOI : 10.1109/CAIA.1991.120841.

ROSSET S., GROUIN C. & ZWEIGENBAUM P. (2011). Entités nommées structurées : guide d'annotation Quaero.

SAGOT B., RICHARD M. & STERN R. (2012). Annotation référentielle du Corpus Arboré de Paris 7 en entités nommées. In Proceedings of the Joint Conference JEP-TALN-RECITAL 2012, volume 2, p. 535–542, Grenoble, France : ATALA/AFCP.

SANG E. F. T. K. & DE MEULDER F. (2003). Introduction to the CoNLL-2003 Shared Task : Language-Independent Named Entity Recognition. In Proceedings of the Seventh Conference on Natural Language Learning at HLT-NAACL 2003, p. 142–147.

SANH V., DEBUT L., CHAUMOND J. & WOLF T. (2020). DistilBERT, a distilled version of BERT : smaller, faster, cheaper and lighter. DOI : 10.48550/ARXIV.1910.01108.

SHEN D., ZHANG J., SU J., ZHOU G. & TAN C.-L. (2004). Multi-criteria-based active learning for named entity recognition. In Proceedings of the 42nd Annual Meeting on Association for Computational Linguistics, p. 589–es, Barcelona, Spain : Association for Computational Linguistics. DOI : 10.3115/1218955.1219030.

SUÁREZ P. J. O., DUPONT Y., MULLER B., ROMARY L. & SAGOT B. (2020). Establishing a New State-of-the-Art for French Named Entity Recognition. In Proceedings of the 12th LREC, p. 4631–4638, Marseille, France : European Language Resources Association.

VASWANI A., SHAZEER N., PARMAR N., USZKOREIT J., JONES L., GOMEZ A. N., KAISER L. & POLOSUKHIN I. (2017). Attention Is All You Need. In Proceedings of the 31st International Conference on Neural Information Processing Systems, p. 6000–6010, Long Beach, California, USA : Curran Associates Inc. DOI : 10.5555/3295222.3295349.

WENZEK G., LACHAUX M.-A., CONNEAU A., CHAUDHARY V., GUZMÁN F., JOULIN A. & GRAVE E. (2020). CCNet : Extracting High Quality Monolingual Datasets from Web Crawl Data. In Proceedings of the 12th LREC, p. 4003–4012 : European Language Resources Association.
# "Honey, Tell Me What's Wrong", Explicabilité Globale des Modèles de TAL par la Génération Coopérative

Antoine Chaffin¹, ²* Julien Delaunay³*

(1) IRISA, 263 Avenue du Général Leclerc, 35000 Rennes, France

(2) IMATAG, 13 Rue Dupont-des-Loges, 35000 Rennes, France

(3) Inria, 263 Avenue du Général Leclerc, 35000 Rennes, France

*Désigne une contribution équivalente

antoine.chaffin@irisa.fr, julien.delaunay@inria.fr

## RÉSUMÉ

L'omniprésence de l'apprentissage automatique a mis en lumière l'importance des algorithmes d'explicabilité. Parmi ces algorithmes, les méthodes agnostiques au type de modèle génèrent des exemples artificiels en modifiant légèrement les données originales. Elles observent ensuite les changements de décision du modèle sur ces exemples artificiels. Cependant, de telles méthodes nécessitent d'avoir des exemples initiaux et fournissent des explications uniquement sur la décision pour ces derniers. Pour répondre à ces problématiques, nous proposons *Therapy*, la première méthode d'explicabilité modèle-agnostique pour les modèles de langue qui ne nécessite pas de données en entrée. Cette méthode génère des textes qui suivent la distribution apprise par le classifieur à expliquer grâce à la génération coopérative. Ne pas dépendre d'exemples initiaux permet, en plus d'être applicable lorsqu'aucune donnée n'est disponible (e.g. pour des raisons de confidentialité), de fournir des explications sur le fonctionnement global du modèle au lieu de plusieurs explications locales, offrant ainsi une vue d'ensemble du fonctionnement du modèle. Nos expériences montrent que, même sans données en entrée, Therapy fournit des informations instructives sur les caractéristiques des textes utilisées par le classifieur qui sont compétitives avec celles fournies par les méthodes utilisant des données.

## ABSTRACT

"Honey, Tell Me What's Wrong", Global Explainability and Diagnosing of NLP Models through Cooperative Generation

The ubiquity of complex machine learning has raised the importance of model-agnostic explanation algorithms. These methods sample artificial instances by slightly perturbing target instances and observing the variations in the model decision. However, such methods require access to initial samples and only provide explanations of the decision for these. To tackle these problems, we propose Therapy, the first model-agnostic explanation method adapted to text which requires no input dataset. This method generates texts following the distribution learned by a classifier through cooperative generation. Not relying on initial samples, in addition to allowing use in cases where no data is available (e.g, for confidentiality reasons), provides global explanations of the model rather than multiple local ones, offering an overview of the model behavior. Our experiments show that although no input data is used to generate samples, Therapy provides insightful information about features used by the classifier that are competitive with the ones from methods relying on input samples.

**MOTS-CLÉS** : explicabilité, génération coopérative, traitement automatique des langues.

<figure><img src="image_35.png" /></figure>
# 1 Introduction

L'émergence des modèles basés sur l'apprentissage automatique à permis leur adoption dans des domaines variés, allant de la simple recommandation à des secteurs critiques tels que la santé (Buch et al., 2018; Esteva et al., 2017; Karatza et al., 2021) et le droit (Araszkiewicz et al., 2022; Tagarelli & Simeri, 2022). Le besoin grandissant de précision induit une augmentation de la complexité de ces modèles, accentuant leur dénomination de boite noire. Ce manque de transparence limite (et empêche) leur déploiement dans différents domaines, en raison par exemple de l'augmentation significative de modèles souffrant de biais. Entre autres, certains *chatbots* ont été déployés bien que comportant des biais liés aux minorités religieuses (Abid et al., 2021) ou de genre (Lucy & Bamman, 2021) et expliquer leur fonctionnement reste un problème ouvert.

Parmi les méthodes proposées pour répondre à ces problèmes, celles qui sont modèle-agnostiques sont préférées car applicables à tout type de modèle d'apprentissage automatique. Parmi ces dernières, les explications locales ont obtenu un fort succès car elles fournissent un bon compromis entre précision et utilité des explications. Les explications locales sont générées en perturbant une entrée afin de construire un voisinage autour de cette entrée et en étudiant comment le modèle réagit à ces petites différences. Cela permet de mettre en évidence les caractéristiques importantes pour le modèle et de fournir des éléments d'explication sur la décision du modèle pour cette entrée (e.g., les mots les plus importants de chaque classe). Selon une étude récente sur les tendances dans le domaine de l'explicabilité (Jacovi, 2023), les méthodes d'explication locale agnostique au modèle, telles que LIME (Ribeiro et al., 2016) sont les plus utilisées.

Cependant, l'explication d'un modèle à partir d'un exemple précis présente trois défauts. Premièrement, il faut évidemment disposer d'entrées à expliquer ; ce qui peut être impossible pour des raisons de confidentialité ou de respect de la vie privée par exemple. Deuxièmement, choisir des entrées qui sont représentatives du modèle et/ou des données sur lesquelles le modèle sera utilisé est une tâche complexe. Troisièmement, cela donne une explication de la décision **pour cette entrée** et pour cette entrée uniquement. Ainsi, cela ne fournit que des informations très locales sur le comportement du modèle, qui ne représentent qu'une petite partie du domaine d'entrée du modèle. Pour cette raison, certaines méthodes d'explications ont proposé d'agréger plusieurs explications locales afin de fournir une explication plus globale. Néanmoins, ces explications restent fortement liées aux données d'entrée et ne fournissent des informations que sur le voisinage de ces échantillons. Ces méthodes nécessitent donc que les différentes données d'entrée couvrent la partie de l'espace la plus large possible.

Avec l'objectif de supprimer cette dépendance aux données d'entrée et de générer une explication globale du modèle, nous proposons *Therapy*, une méthode qui utilise la génération coopérative (Holtzman et al., 2018; Scialom et al., 2020; Chen et al., 2020; Bakhtin et al., 2021; Chaffin et al., 2022) pour générer des textes suivant la distribution d'un classifieur. La distribution des textes générés permet ensuite d'étudier les caractéristiques importantes du modèle, fournissant ainsi une explication globale agnostique au modèle. Dans ce papier, nous présentons d'abord les travaux connexes dans la Section 2, la Section 3 introduit ensuite des notions sur la génération de textes et plus particulièrement la génération coopérative. La Section 4 détaille quant à elle le fonctionnement de la méthode tandis que la Section 5 présente les expériences réalisées pour comparer les performances de Therapy avec les méthodes d'explication usuelles.
## 2 Travaux connexes

Générer une explication pour des données textuelles est une tâche ardue qui nécessite de prendre en compte à la fois la sémantique du texte mais également le domaine de la tâche (e.g. analyse de sentiment, détection de spam). De plus, il est fréquent de devoir évaluer un modèle déjà déployé pour des raisons d'équité ou de détection de biais par exemple mais que les données ne soient plus accessibles pour des raisons de sécurité ou de confidentialité. Afin de résoudre ce problème, les chercheurs se sont concentrés sur les méthodes d'explications post-hoc (Jacovi, 2023). Suivant la catégorisation de Bodria et al. (2021), nous différencions les explications sous forme d'exemples de celles par attribution de caractéristiques.

### 2.1 Explications sous forme d'exemples

Les méthodes d'explications sous forme d'exemples tirent leur racine des sciences sociales (Miller, 2019) et montrent des contrefactuels qui indiquent le changement minimum requis pour modifier une prédiction, ou des prototypes, des exemples représentatif d'une classe. Les méthodes contrefactuelles perturbent le document cible jusqu'à trouver le document le plus proche qui soit classé différemment par le modèle complexe. À l'inverse, les méthodes qui génèrent des prototypes sélectionnent les instances qui représentent le plus une classe cible. Parmi les méthodes post-hoc, certaines proposent des codes de contrôle permettant de surveiller la perturbation du texte en entrée, tandis que d'autres entraînent des mécanismes complexes pour générer des phrases réalistes en perturbant une instance dans un espace latent. Polyjuice (Wu et al., 2021) et GYC (Madaan et al., 2021) feront partie de la première catégorie et proposent des codes de contrôle allant du changement de sentiment ou de temps jusqu'à l'ajout ou le retrait de mots. x SPELLS (S. Punla et al., 2022) et CounterfactualGAN (Robeer et al., 2021), sont des méthodes qui entraînent respectivement un auto-encodeur variationnel et un réseau adversarial génératif pour convertir les textes en entrée dans un espace latent. Des modifications y sont ensuite réalisées afin de retourner des contrefactuels réalistes proches de l'exemple original.

### 2.2 Explications par attribution

Parmi les méthodes post-hoc, les explications par attribution associent un poids aux termes en entrée afin d'indiquer leur impact positif ou négatif sur la prédiction finale. Les méthodes telles que SHAP (Lundberg & Lee, 2017), LIME (Ribeiro et al., 2016) et ses variantes (Gaudel et al., 2022; Shankaranarayana & Runje, 2019; Zafar & Khan, 2019; Visani et al., 2020; ElShawi et al., 2019; Bramhall et al., 2020) restent les plus utilisées pour générer des explications (Jacovi, 2023). Les explications sont dites locales puisque ces méthodes perturbent un document en entrée en modifiant légèrement les valeurs et en observant le comportement du modèle complexe dans cette localité. Pour les données texte, LIME masque aléatoirement les mots du document en entrée afin d'en créer diverses variations et entraîne un modèle linéaire sur ces exemples. Les coefficients du modèle linéaire, associés aux différents mots, sont ensuite retournés et utilisés comme explication. Bien que la majorité des études (Arrieta et al., 2020; Bodria et al., 2021) fasse une différence entre les explications locales et globales, LIME introduit LIME-SP (pour sélection sous modulaire), une méthode qui génère une explication globale à partir de *n* explications locales. Ces *n* explications sont choisies parmi un plus grand ensemble afin de couvrir le plus possible l'espace d'entrée tout en réduisant la redondance.
# 3 Génération de textes

## 3.1 Génération coopérative

Les modèles de langue génératifs (LM) tels que la famille des GPT (Radford et al., 2018, 2019; Brown et al., 2020) apprennent la distribution de probabilité de séquences de symboles $x_1, x_2, \dots, x_T$ (souvent appelés *tokens*) appartenant à des séquences de taille variable $T$ sur un vocabulaire $\mathcal{V}$. La probabilité d'une séquence $x$ (aussi appelée vraisemblance) est définie comme la probabilité jointe de chacun de ses tokens. Cette probabilité peut être factorisée en utilisant la formule des probabilités composées : $p(x_{1:T}) = \prod_{t=1}^{T} p(x_t \mid x_{1:t-1})$. Le LM est entraîné à produire une distribution de probabilité sur le dictionnaire pour le prochain token sachant ceux en entrée, i.e., $p_\theta(x_t \mid x_{1:t-1})$ à un pas de temps donné $t$. Cela permet d'obtenir un modèle de langue auto-régressif qui génère des séquences itérativement. Le modèle utilise les distributions apprises pour émettre un token $x_t$ et l'ajouter au contexte $x_{1:t-1}$, qui sera utilisé pour la prochaine itération. Le processus de génération –ou décodage– démarre généralement en utilisant une petite séquence initiale appelée l'amorce. Les grands modèles de langue apprennent une très bonne approximation de la distribution de leurs données d'apprentissage, ce qui permet de générer des textes plausibles en maximisant la vraisemblance du modèle $p(x)$. Cependant, cette approche offre très peu de contrôle sur le texte généré à l'exception de l'amorce.

Les approches de génération coopérative (Holtzman et al., 2018; Scialom et al., 2020; Chen et al., 2020; Bakhtin et al., 2021; Chaffin et al., 2022) permettent de résoudre ce problème en utilisant des modèles discriminatifs pour guider le modèle de langue durant la génération. Elles utilisent l'information du modèle externe pour guider le modèle de langue afin de générer des textes qui possèdent une propriété reconnue par le modèle discriminatif. Dans le cas où le modèle est un classifieur qui apprend à prédire la probabilité $D(c | x)$ qu'une séquence $x$ d'appartenir à la classe $c$, le but est de générer un texte qui maximise la probabilité d'appartenir à la classe cible. En raison de la taille de l'espace de toutes les séquences possibles ($|\mathcal{V}|^n$ pour une séquence de longueur $n$); il est infaisable d'évaluer $D(c | x)$ pour toutes les séquences possibles. Ainsi, les méthodes coopératives utilisent la distribution du modèle de langue génératif pour restreindre l'exploration aux séquences plausibles uniquement. De cette manière, la séquence produite maximise $p(x) * D(c | x) \propto p(x | c)$, résultant en une séquence qui est à la fois bien écrite et qui appartient à la classe cible.

## 3.2 Décodage guidé par Monte Carlo Tree Search

Parmi ces approches coopératives, celles qui utilisent le Monte Carlo Tree Search (MCTS) pour guider le décodage des modèles de langue ont obtenu de très bons résultats (Scialom et al., 2021a; Chaffin et al., 2022; Leblond et al., 2021; Lamprier et al., 2022). Le MCTS est un algorithme itératif qui cherche une solution dans un arbre trop grand pour être parcouru de façon exhaustive. Il est adapté à la génération de texte car l'espace de recherche créé durant le décodage correspond à un arbre : la racine correspond à l'amorce et les enfants d'un nœud correspondent aux séquences construites en augmentant le préfixe de leur parent d'un token supplémentaire. La boucle du MCTS est composée de 4 étapes : sélection, expansion, simulation et rétro-propagation.

1. **Sélection.** Une exploration de la racine de l'arbre à une feuille non explorée. Le chemin vers la feuille est défini en sélectionnant, à chaque nœud, l'enfant qui maximise la *Polynomial Upper*
Confidence Trees (PUCT) (Rosin, 2011; Silver et al., 2017) qui est définie, pour un nœud i par :

$$PUCT(i) = \frac{s_i}{n_i} + c_{puct} p(x_i | x_{1:t-1}) \frac{\sqrt{N_i}}{1 + n_i} \quad (1)$$

avec $n_i$ le nombre de simulations jouées après le nœud i, $s_i$ le score agrégé du nœud, $N_i$ le nombre de simulations jouées après son parent et $c_{puct}$ une constante qui définit le compromis entre exploitation (se focaliser sur des nœuds avec des bons scores) et exploration (explorer des nœuds prometteurs).

2. **Expansion.** La création des enfants du nœud sélectionné s'il n'est pas terminal (i.e, correspondant au token de fin de séquence).

3. **Simulation (roll-out).** Le tirage de tokens additionnels (en utilisant la distribution du modèle de langue) jusqu'à un nœud terminal.

4. **Rétro-propagation.** L'évaluation de la séquence $x$ associée au nœud terminal et l'agrégation de son score à tous les parents jusqu'à la racine. Pour guider la génération vers des textes qui appartiennent à une classe donnée, le score d'une séquence $x$ associée à une feuille peut être défini par la probabilité $D(c | x)$ donnée par le classifieur. Différentes méthodes d'agrégation peuvent être utilisées, Chaffin et al. (2022) calcule la moyenne du score actuel et de celui du nœud terminal alors que (Scialom et al., 2021b; Lamprier et al., 2022) prennent le maximum des deux.

Cette boucle est répétée un certain nombre de fois, puis le token à ajouter à l'amorce est choisi grâce à l'arbre construit. Parmi les nœuds enfants de la racine, deux choix sont possibles : soit celui ayant été sélectionné le plus de fois, soit celui ayant un score agrégé le plus élevé. Comme nous souhaitons obtenir des séquences aussi stéréotypiques des classes du modèle discriminatif que possible, nous choisissons celui ayant le score le plus élevé. Ce nœud devient ensuite la nouvelle racine, et le processus est répété jusqu'à produire la séquence finale.

Contrairement aux méthodes traditionnelles qui décodent de gauche à droite et peuvent manquer des séquences qui deviennent meilleures après quelques étapes de génération ou se retrouver bloquer dans des séquences sous optimales, le MCTS brise le décodage myope en définissant le score d'un token sur la base des continuations possibles de la séquence. En plus d'être plug-and-play, c'est à dire que n'importe quel modèle de langue génératif (auto-régressif) peut être guidé durant le décodage par n'importe quel classifieur, cette approche a obtenu des résultats à l'état de l'art dans la tâche de génération contrainte, qui consiste à générer des textes qui maximisent $D(c | x)$ tout en maintenant une qualité d'écriture élevée.

# 4 Méthode

Dans cet article, nous présentons Therapy, une méthode d'explication agnostique au modèle qui n'utilise pas de données en entrée. Therapy utilise un modèle de langue guidé par le classifieur à expliquer pour générer des textes représentatifs des classes apprises par le classifieur. Pour ce faire, Therapy extrait les mots importants pour le classifieur en l'utilisant pour guider le modèle de langue via la génération coopérative. Puisque les textes générés coopérativement suivent la distribution $p(x)D(c | x)$, leur distribution peut ensuite être utilisée pour étudier le classifieur $D$: les mots avec des fréquences élevées sont susceptibles d'être importants pour le classifieur. Ainsi, Therapy entraîne un modèle de régression logistique sur les représentations tf-idf des textes générés et retourne les
coefficients les plus importants et leurs termes associés comme explication. Comme $p(x)$ est le même pour toutes les classes, l'utilisation des tf-idf sur le corpus entier (i.e, les textes générés pour toutes les classes) filtre les mots qui sont fréquents uniquement à cause de $p(x)$ ou pour plusieurs classes. Les termes résultants sont donc dûs à la partie de la distribution venant du classifieur. L'entraînement d'un modèle de régression logistique sur les tf-idf permet d'extraire les termes les plus importants et d'étudier leur importance relative pour chaque classe. Therapy offre donc le niveau d'explicabilité d'une régression logistique basée sur des n-grams. Enfin, grâce à l'aspect plug-and-play de la génération guidée par MCTS, Therapy est une méthode agnostique au modèle qui peut expliquer tout type de modèle via n'importe quel modèle de langue et retourner une explication du fonctionnement global du classifieur.

En substance, la méthode est similaire à l'utilisation de LIME combinée à un modèle de langue qui remplace des tokens masqués lorsque le nombre de tokens remplacés tend vers l'infini mais avec deux avantages. Premièrement, la méthode ne repose pas sur des exemples en entrée mais génère ces exemples à partir de rien en utilisant le modèle de langue auto-régressif. Ceci est particulièrement utile pour les cas où les données ne peuvent pas être partagées pour des raisons de confidentialité (Amin-Nejad et al., 2020). De plus, au lieu d'explorer le voisinage de ces exemples (et donc de conditionner les explications au contexte de ces exemples), le domaine d'exploration est défini par le modèle de langue. Ce modèle de langue peut être générique ou spécifique à un domaine sur lequel sera utilisé le classifieur pour s'assurer qu'il fonctionne correctement sur ce type de données précis.

Deuxièmement, la méthode ne génère pas **avant** de classifier mais utilise le classifieur **durant** la génération. Ainsi, au lieu de générer des textes "au hasard" et espérer que les caractéristiques importantes apparaissent, la méthode interroge explicitement le modèle pour des caractéristiques discriminantes via la maximisation de $D(c | x)$. Cela rend la méthode plus efficace et réduit la probabilité de générer (a) des mots rares mais qui ne sont pas importants pour le modèle, et (b) des textes "entre-deux" qui possèdent les caractéristiques de plusieurs classes et peuvent être perturbants. Par ailleurs, notre méthode s'appuie directement sur la distribution apprise par le classifieur étudié pour guider la génération, contrairement aux méthodes comme Polyjuice et GYC, qui en plus d'utiliser des exemples en entrée, s'appuient sur une distribution apprise par le modèle de langue pour biaiser la génération vers certaines caractéristiques (via les codes de contrôle).

Nous avons décidé d'appeler cette approche Therapy puisque nous associons son fonctionnement à celui d'un thérapeute (le LM). Ce thérapeute interroge son patient (le classifieur) afin de comprendre son comportement et éventuellement découvrir des comportements pathologiques (des biais).

# 5 Expériences

Dans cette section, nous présentons d'abord les détails expérimentaux de l'évaluation de Therapy (Section 5.1). Nous évaluons ensuite Therapy au travers de 3 expériences. La première expérience (Section 5.2), mesure la corrélation de Spearman des explications avec les poids de la boite transparente et étudie l'impact de la quantité de textes générés sur la qualité de l'explication retournée par le modèle linéaire. Nous comparons ensuite la capacité de Therapy à identifier les mots les plus importants pour le classifieur avec celles de LIME et SHAP dans la Section 5.3. Enfin, nous observons si les termes retournées par les différentes approches sont suffisants pour modifier la prédiction du classifieur. Le code de Therapy ainsi que celui des expériences sont disponibles publiquement.
## 5.1 Configuration expérimentale

**Explication de boite transparente.** Puisqu'il n'y a pas de vérité terrain disponible pouvant être utilisée comme objectif pour les méthodes d'explication évaluées, nous utilisons un modèle boite transparente. Un modèle est dit boite transparente lorsque ses paramètres utilisés pour faire une prédiction sont connus, on dit aussi que le modèle est explicable par conception. Tout au long de nos expérimentations, nous utilisons comme modèle boite transparente une régression logistique implémentée en utilisant sklearn (Pedregosa et al., 2011). Les poids de ce modèle représentent le score d'importance associé à chacun des termes du vocabulaire.

**Implémentation de Therapy.** Lors de l'évaluation de la méthode proposée, nous utilisons l'implémentation de PPL-MCTS (Chaffin et al., 2022) disponible sur GitHub. L'utilisation de la boite transparente dans PPL-MCTS se fait simplement en définissant la fonction qui prend en entrée une séquence et retourne son score. Le choix du modèle de langue génératif définit le domaine sur lequel nous voulons des explications pour le comportement du classifieur. Pour montrer que la méthode fonctionne bien avec un modèle de langue général (sans domaine particulier), nous utilisons OPT-125m (Zhang et al., 2022). Une régression logistique est ensuite apprise sur la représentation tf-idf des textes générés et les coefficients de la régression logistique sont finalement retournés comme scores d'importance des différents tokens.

**Jeu de données utilisés.** Toutes les expériences ont été réalisées sur deux jeux de données différents issus de (Zhang et al., 2015). Le premier, *amazon_polarity* : est un jeu de données de classification binaire composé de commentaires de produits Amazon labelisés comme positifs ou négatifs. Les textes qui le composent sont relativement courts et possèdent des champs lexicaux très caricaturaux. Le second, AG_news est un jeu de classification thématique à 4 classes (*world*, *sport*, *business* et *sci/tech*). Les textes de ce jeu sont plus longs et plus variés, mais ils possèdent différents indicateurs caractéristiques liés au fait qu'ils sont extraits d'articles de presse en ligne. Des exemples de textes générés par Therapy pour chacun des jeux de données ainsi que les premiers top-mots retournés sont disponibles en Annexe A.

**Méthodes comparées.** Nous comparons dans les Section 5.3 et 5.4, les résultats de Therapy avec les deux approches par attribution de caractéristiques les plus répandues : LIME (Ribeiro et al., 2016) et SHAP (Lundberg & Lee, 2017) en utilisant les implémentations publiques. La différence principale entre LIME et SHAP est que la première génère un échantillon en perturbant une instance puis entraîne localement un modèle de régression linéaire tandis que la seconde utilise la théorie des jeux pour calculer l'importance de chaque élément. Nous avons utilisé les versions globales de ces méthodes sur 500 textes du jeu de test. Pour SHAP, nous avons décidé de garder les 10000 mots les plus importants pour chacun des jeux de données tandis que pour LIME, nous avons retourné les 500 explications locales avec les 35 mots les plus importants et regroupé les couples mots-valeurs dans un dictionnaire composé de 4592 mots pour *amazon_polarity* et 5770 pour *ag_news*.

## 5.2 Corrélation de Spearman

Une bonne explication de boite transparente est une liste de mots qui contient à la fois ses mots importants (i.e, a une bonne couverture) et les relie à des scores d'importance similaires. Ainsi, nous calculons la corrélation de Spearman entre les top mots de la boite transparente (ceux ayant un poids > 1) et leur score attribué par la méthode d'explication. La corrélation de Spearman a été préférée à celle de Pearson car les scores retournés par LIME et SHAP peuvent être très différents des poids de
<figure><img src="image_36.png" /><figcaption>FIGURE 1 – Corrélation de Spearman en fonction du nombre de textes générés par classe pour amazon_polarity et ag_news</figcaption></figure>

la boite transparente et une corrélation de rang donne donc une comparaison plus juste.

## 5.2.1 Influence du nombre de textes générés

Un des paramètres critiques de la méthode proposée est le nombre de textes à générer. En effet, un nombre élevé de tokens permet une plus grande couverture mais nécessite plus de calculs. Nous reportons la corrélation de Spearman en fonction du nombre de textes générées par classe dans la Figure 1. Nous pouvons voir que la corrélation augmente rapidement jusqu'à atteindre un plateau, ce qui signifie qu'une petite quantité de textes permet d'obtenir un bon aperçu du comportement du modèle et que la méthode ne nécessite pas énormément de calculs pour fonctionner. Pour la suite des expérimentations, nous fixons le nombre de textes générés par Therapy à 3000 par classe.

<table><caption>TABLE 1 – Corrélation de Spearman (p-valeur) entre les top mots de la boite transparente et les différentes méthodes d'explications. Les résultats sont donnés par classe et par jeu de données. Le suffixe ‘other’ indique que les explications sont générées à partir de l'autre jeu de données.</caption><thead><tr><th rowspan="2">Jeu de données<br>Classe</th><th colspan="2">AMAZON_POLARITY</th><th colspan="4">AG_NEWS</th></tr><tr><th>Positive</th><th>Negative</th><th>World</th><th>Sports</th><th>Business</th><th>Sci/Tech</th></tr></thead><tbody><tr><td>LIME</td><td>0.64 (5.0e-7)</td><td>0.44 (1.5e-3)</td><td>0.09 (0.53)</td><td>0.16 (0.27)</td><td>0.20 (0.16)</td><td>0.19 (0.19)</td></tr><tr><td>LIME-other</td><td>0.21 (0.14)</td><td>0.18 (0.21)</td><td>-0.03 (0.85)</td><td>0.23 (0.12)</td><td>0.09 (0.52)</td><td>0.29 (0.04)</td></tr><tr><td>SHAP</td><td>0.71 (7.6e-9)</td><td>0.76 (1.6e-10)</td><td>0.47 (6.2e-4)</td><td>0.62 (1.7e-06)</td><td>0.53 (8.0e-5)</td><td>0.61 (2.4e-6)</td></tr><tr><td>SHAP-other</td><td>0.02 (0.87)</td><td>0.26 (0.06)</td><td>-0.05 (0.71)</td><td>0.04 (0.77)</td><td>0.15 (0.31)</td><td>0.12 (0.41)</td></tr><tr><td>Therapy</td><td>0.49 (3.3e-08)</td><td>0.31 (1.0e-4)</td><td>0.27 (1.6e-07)</td><td>0.37 (4.0e-12)</td><td>0.38 (5.6e-13)</td><td>0.3 (8.9e-09)</td></tr></tbody></table>

## 5.2.2 Comparaison avec les autres méthodes

Les corrélations de Spearman pour chacune des approches évaluées sont disponibles dans la Table 1. Les résultats obtenus par Therapy sont meilleurs que ceux de LIME sur ag_news mais moins bon sur amazon_polarity tandis que SHAP donne des résultats meilleurs que les autres méthodes sur les deux jeux de données. Ces résultats sont bons pour Therapy puisque LIME et SHAP génèrent des explications à partir du jeu de données de test, garantissant ainsi que les caractéristiques cibles se trouvent dans les exemples en entrée. Or, lorsque cette hypothèse ne tient plus, par exemple en
<figure><img src="image_37.png" /><figcaption>FIGURE 2 – Courbes de précision/rappel sur les top mots de la boite transparente (régression logistique) pour les différentes méthodes d'explications</figcaption></figure>

utilisant comme données d'entrée le jeu de test de l'autre jeu de données (dénoté par *other* dans nos résultats), les méthodes ne parviennent plus à trouver les caractéristiques importantes et les corrélations chutent drastiquement, bien en dessous des résultats obtenus par Therapy.

## 5.3 Précision et rappel

Outre l'attribution correcte de scores aux caractéristiques importantes du modèle, il est également nécessaire que l'explication fournisse une sortie informative en pratique. Il faut donc s'assurer que les mots retournés dans l'explication (i.e, les mots avec les scores les plus élevés) soient effectivement des mots importants pour le modèle étudié et que ses mots les plus importants soient trouvés. Ainsi, la Figure 2 montre pour différents nombres de mots importants retournés, les valeurs de précision et de rappel moyennées sur toutes les classes. Le nombre *k* de mots retournés varie de 10 à 1500. La précision est obtenue en mesurant la proportion de mots retournés dans l'explication qui appartiennent au top mots de la boite transparente tandis que le rappel est la proportion des top mots de la boite transparente qui sont présents dans l'explication.

On observe que Therapy obtient de moins bons résultats que LIME (bien qu'obtenant un meilleur rappel sur ag_news) tandis que SHAP est meilleur que les deux méthodes sur les deux jeux de données. À nouveau, lorsque les données ne contiennent plus nécessairement les caractéristiques importantes pour le modèle (-other), les résultats s'écroulent et Therapy surpasse les deux approches. Cette limitation est visible par le plateau au niveau des scores de rappels pour ces méthodes : elles trouvent effectivement bien les caractéristiques importantes **présentes dans les données**, mais sont limitées à celles-ci uniquement, fixant la limite supérieure des caractéristiques pouvant être trouvées. En pratique, les biais contenus dans le modèle peuvent être suffisamment subtils pour ne pas être présents dans le jeu de données à disposition, auquel cas, LIME et SHAP ne peuvent pas les détecter. Therapy, au contraire, obtient de bons résultats en utilisant le même LM générique pour les deux jeux de données, sans utiliser d'apriori. La méthode permet donc d'obtenir un très bon aperçu du comportement du modèle lorsqu'aucune donnée, ou plus largement, lorsqu'aucune donnée représentative des caractéristiques importantes du modèle n'est disponible. Dans ce dernier cas de figure, Therapy permet d'offrir une recherche plus exhaustive que celles se basant sur des textes existants, obtenant un score de rappel important.
<figure><img src="image_38.png" /><figcaption>FIGURE 3 – Proportion de textes dont la classification change en fonction du nombre de mots importants utilisés pour effectuer le remplacement.</figcaption></figure>

## 5.4 Insertion/suppression de mots importants

Une manière de valider l'exactitude des explications est de retirer les mots que l'explication indique comme étant importants pour une classe et d'observer comment les prédictions du modèle évoluent. L'intuition derrière cette approche est que supprimer la "cause" forcera le modèle à changer sa décision (Petsiuk et al., 2018). De la même manière, rajouter un mot indiqué par l'explication comme étant important pour une autre classe devrait réduire la confiance du modèle. Ainsi, nous calculons une métrique d'insertion/suppression en mesurant la proportion de textes dont la classification par la boite transparente est modifiée lorsque l'on retire un mot étant indiqué comme important pour cette classe et que nous le remplaçons par un mot important pour une autre classe. La Figure 3 montre les résultats agrégés sur chacune des classes des deux jeux de données pour Therapy, LIME, SHAP et leurs versions utilisant l'autre jeu de données (-other). On observe que SHAP et Therapy sont les plus efficaces et obtiennent des résultats similaires, parvenant à modifier la prédiction du classifieur plus souvent que LIME à mesure que le nombre de mots échangés augmente. On remarque également que sur le jeu de données ag_news, où les mots importants sont moins communs que pour amazon_polarity, Therapy est capable de modifier la prédiction près de 70% du temps, tandis que SHAP et LIME n'arrivent à modifier la prédiction que dans 30% de cas en utilisant l'autre jeu de données. Ce qui montre encore une fois que ces méthodes nécessitent des données très spécifiques alors que Therapy est capable de trouver les mots importants pour chaque classe sans avoir accès à aucune donnée et sans utiliser d'apriori sur le modèle.

## 6 Conclusion

Les méthodes d'explicabilité usuelles s'appuient fortement sur des données en entrée, qui ne sont pas forcément disponibles et peuvent ne pas contenir les biais et caractéristiques importantes du modèle. Nous proposons Therapy, une méthode qui emploie la génération de texte coopérative afin de générer des données synthétiques qui suivent la distribution apprise par le modèle étudié. Ainsi, la recherche est dirigée par un modèle de langue génératif pré-entraîné et permet une exploration plus large que celle restreinte au voisinage des données d'entrée. Cela permet de relaxer la plupart des contraintes et aprioris induits par les méthodes qui se basent sur des exemples. Dans le cas extrême