5.5 Ressources linguistiques
6.1.1 D ´ecomposition
6.1.3 Recomposition . . . 133 6.1.4 S ´election . . . 134
6.2 Evaluation du d ´ecoupage morphologique . . . 135´ 6.3 Evaluation des traductions g ´en ´er ´ees . . . 136´
6.3.1 R ´ef ´erences et mesures d’ ´evaluation . . . 136 6.3.2 Apport de la g ´en ´ericit ´e du mod `ele . . . 140 6.3.3 Apport des ressources linguistiques . . . 143 6.3.4 Apport de la strat ´egie de repli . . . 144 6.3.5 Apport des traductions fertiles . . . 146 6.3.6 Apport du corpus vulgaris ´e . . . 151 6.3.7 Analyse qualitative . . . 155
6.4 Discussion . . . 158
6.4.1 Bilan . . . 158 6.4.2 Perspectives . . . 159
Introduction
Dans ce chapitre, nous pr ´esentons la mise en œuvre de la m ´ethode de g ´en ´eration traduction d ´ecrite dans le chapitre 4 ( ´etapes 1 `a 4). L’objectif de cette m ´ethode est de pouvoir traduire
diverses sortes de mots morphologiquement complexes et de pouvoir g ´en ´erer des traductions fertiles.
Nous commenc¸ons par d ´etailler l’algorithme de g ´en ´eration de traduction (section 6.1). Puis, nous pr ´esentons les r ´esultats de l’ ´evaluation du module de d ´ecoupage morphologique dans la section 6.2. La section 6.3 ´evalue la qualit ´e des traductions g ´en ´er ´ees. Nous y d ´ecrivons diverses exp ´eriences dont le but est de mettre au jour l’apport des donn ´ees et des strat ´egies de g ´en ´eration. Les limites de notre travail ainsi que les perspectives de recherche sont discut ´ees dans la section 6.4.
6.1
Algorithme de g ´en ´eration de traductions
La m ´ethode de traduction pr ´esent ´ee au chapitre pr ´ec ´edent est implant ´ee gr ˆace `a l’algorithme 4. Cet algorithme prend en entr ´ee un terme source monolexical (source term) et produit en sortie z ´ero, une ou plusieurs unit ´es mono- ou poly-lexicales en langue cible (translations).
L’algorithme s’appuie sur les ressources d ´ecrites au chapitre pr ´ec ´edent, que nous notons ainsi :
– T rans est une ressource de traduction liant composants en langue source et composants en langue cible : table de traduction des morph `emes, dictionnaire bilingue g ´en ´eraliste et dictionnaire de cognats.
– V arsrc, resp.V artgt, est une ressource qui permet de g ´erer la variation en langue source
(src), resp. cible (tgt) : familles morphologiques, dictionnaire de synonymes. – Corpussrcun corpus segment ´e en mots, lemmatis ´e et ´etiquet ´e en langue source.
– Compsrc
type, resp.Comp tgt
type, est une liste de composants en langue source, resp. cible, o `u
type ´egale pref pour les pr ´efixes, conf pour les confixes, suf f pour les suffixes et word pour les mots (ces listes correspondent aux entr ´ees des ressources T rans et V arsrc et
aux mots extraits du corpus en langue source). – Stoptgtest une liste de mots outils en langue cible.
Pour plus de clart ´e, nous accompagnons la description de l’algorithme avec l’exemple de la traduction du terme anglaiscytotoxic vers le franc¸ais `a partir des donn ´ees suivantes (src = en ettgt = f r) :
En tant que m ´ethode de traduction compositionnelle, la fonction de g ´en ´eration de traductions se d ´ecompose en quatre sous-fonctions qui s’appliquent s ´equentiellement :
– D ´ecompositionD (section 6.1.1) – TraductionT (section 6.1.2) – RecompositionR (section 6.1.3) – S ´electionS (section 6.1.4)
La traduction de cytotoxic est donc donn ´ee par une composition de fonctions, chacune s’appliquant sur le r ´esultat fourni par la pr ´ec ´edente :
T ranslation(“cytotoxic”) = S(R(T (D(“cytotoxic”’))))
Algorithme 4 G ´en ´eration de traductions Require: source term, target corpus
translations ← ∅
for all {c1, ...ci} in D(source term) do ⊲ 1. D ´ecomposition
for all{t1, ...tj} in T (c1)× ... T (ci)do ⊲ 2. Traduction
if i 6= j then
continue
end if
for all {w1, ...wk} in R ({t1, ...tj}) do ⊲ 3. Recomposition
for all match in S({w1, ...wk}, target corpus) do ⊲ 4. S ´election
addmatch to translations
end for end for end for end for
return translations functionD(source term)
decompositions ← ∅
for all {m1, ...mi} in SPLIT(source term) do ⊲ 1.1 D ´ecoupage morphologique
for all {c1, ...cj} in CONCATENATE({m1, ...mi}) do ⊲ 1.2 Concat ´enation
add{c1, ...cj} to decompositions end for end for return decompositions end function functionR({t1, ...ti}) recompositions ← ∅
for all{t1, ...ti} in PERMUTATE({t1, ...ti}) do ⊲ 3.1 Permutation
for all {w1, ...wj} in CONCATENATE({t1, ...ti}) do ⊲ 3.2 Concat ´enation
if FILTER({w1, ...wj}) then ⊲ 3.3 Filtrage
add{w1, ...wj} to recompositions end if end for end for return recompositions end function 129
Compen
conf = {-cyto-}
Compen
word= {cytotoxic, cytotoxicity, toxic}
Compf rconf = {-cyto-}
Compf rword= {cellule, toxique} T rans = {
{-cyto- → -cyto-, cellule}, {toxic → toxique},
{cytotoxicity → cytotoxicit ´e} }
V aren= {cytoxic → cytoxicity}
Stopf r= {pour, le}
Corpusf r= “le/DETcytotoxicit ´e/N ˆetre/AUXle/DET
propri ´et ´e/Nde/PREPce/DETqui/PRO ˆetre/AUX
toxique/Apour/PREPle/DETcellule/N./PUN”
TABLE6.1 – Exemple de donn ´ees pour la traduction decytotoxic vers toxique pour les cellules etcytotoxicit´e
6.1.1
D ´ecomposition
La fonction de d ´ecompositionD comprend elle-m ˆeme en deux fonctions nomm ´ees SPLIT
(d ´ecoupage morphologique) et CONCATENATE(concat ´enation des morph `emes) :
D(“cytotoxic”’)
= CONCATENATE(SPLIT(“cytotoxic”’))
6.1.1.1 D ´ecoupage morphologique (SPLIT)
Cet ´etape d ´ecompose le terme source en morph `emes en suivant l’algorithme 5. Le d ´ecoupage se fait par simple projection des entr ´ees des ressources Compsrc, Compsrc
conf,
Compsrc
suf f, Compsrcword sur la chaˆıne de caract `eres repr ´esentant le terme source. On prend
´egalement en compte des contraintes de longueur sur les sous-chaˆınes appari ´ees avec les entr ´ees des ressources (L0, L1, L2). Par exemple, la chaine string[1 : n], compos ´ee de n caract `eres, peut ˆetre d ´ecoup ´ee en une base lexicalestring[1 : i] et un suffixe string[i + 1 : n] sistring[i + 1 : n] ∈ Compsrc
suf f etstring[1 : i] ≥ L2. Les contraintes de longueur utilis ´ees par
l’algorithme 5 ont ´et ´e param ´etr ´ees empiriquement (L0 = 5, L1 = 4, L2 = 4).
Un terme source est d’abord d ´ecompos ´e en un pr ´efixe optionnel + une base1, laquelle est
d ´ecompos ´ee en une base2 + un suffixe optionnel. Pour finir, la base2 est d ´ecompos ´ee en un
ou plusieurs confixes ou mots. Lorsque plusieurs d ´ecoupages sont possibles, seulement ceux ayant donn ´e le plus grand nombre de composants sont retenus.
CONCATENATE(SPLIT(“cytotoxic”’))
= CONCATENATE({cyto, toxic})
Algorithme 5 SPLIT: D ´ecoupage morphologique
Require: source term, Comppref,Compconf,Compsuf f,Compword
L0 = 5 ; L1 = 4 ; L2 = 4 ;
lemmas splits ← [ ] ⊲ D ´ecoupage sur les tirets puis d ´ecoupage de chaque sous- ´el ´ement
for all lemma inSPLIT ON HYPHENS(source term) do
pref ix =GET PREFIX(lemma) ⊲ Extraction du pr ´efixe optionnel
base =REMOVE PREFIX(pref ix, lemma)
suf f ix =GET SUFFIX(base) ⊲ Extraction du suffixe optionnel
base =REMOVE SUFFIX(lemma, suf f ix)
splits ← ∅ ⊲ Plusieurs d ´ecompositions possibles pour la base
for all (c1, ...cn) inGET COMPONENTS(base) do ⊲ (c1, ...cn) est la liste des composants
de la base
add(pref ix, c1, ..., cn, suf f ix) to splits
end for
addsplits to lemmas splits
end for
⊲ Combinaison de tous les d ´ecoupages de chaque sous- ´el ´ement splits = {(s1, ..., sn)|s1∈ lemmas splits[1], ..., sn∈ lemmas splits[n]}
⊲ Retourne les combinaisons avec le plus grand nombre de morph `emes
return{split|split ∈ splits, length(split) = max ({length(split)|split ∈ splits}) }
functionGET PREFIX(lemma)
for all pref in sorted by descending length (Comppref)do
base =REMOVE PREFIX(pref ix, lemma)
if lemma = pref or (lemma starts with pref and length(base)≥ L0 and (base ∈
Compwordsorbase can be decomposed into words or confixes)) then
return pref end if
end for end function
functionGET COMPONENTS(base)
C = {w|w ∈ Compwordsand length(w) ≥ L2} ∪ Compconf
return splits = {(c1, ..., cn)|ci ∈ C for all 1 ≤ i ≤ n, and c1+ ... + cn = base}
end function
functionGET SUFFIX(lemma)
for all suf f in sorted by descending length (Compsuf f)do
base =REMOVE SUFFIX(lemma, suf f ix)
if lemma ends with suf f and length(base) > length(suf f ) and length(base) ≥ L1 then return suf f
end if end for end function
6.1.1.2 Concat ´enation des morph `emes (CONCATENATE)
La fonction CONCATENATE g ´en `ere toutes les concat ´enations possibles des morph `emes
issus du d ´ecoupage morphologique. Par exemple, si le terme source abc a ´et ´e d ´ecoup ´e en trois morph `emes{a,b,c}, alors il existe quatre fac¸ons de concat ´ener ces morph `emes : {abc}, {a,bc}, {ab,c}, {a,b,c}. Pour un terme source ayant ´et ´e d ´ecoup ´e en n morph `emes, il existe 2n−1concat ´enations possibles.
CONCATENATE({cyto, toxic})
= {cyto, toxic}, {cytotoxic}
Cette ´etape de concat ´enation des morph `emes permet d’augmenter les possibilit ´es de trouver des traductions. Prenons l’exemple o `u nous souhaitons traduire le termenon-cytotoxic et o `u nos ressources contiennent des traductions pour non, cyto et cytotoxic mais pas pour toxic. Si nous nous basons uniquement sur la sortie du d ´ecoupage morphologique, c’est- `a- dire{non-,-cyto-,toxic}, la traduction de non-cytotoxic ´echoue car il n’y a pas de traduction pour toxic. Par contre, si nous passons par une ´etape de concat ´enation interm ´ediaire, nous obtenons aussi la d ´ecomposition {non-,cytotoxic}. Comme nos ressources contiennent des traductions pournon et cytotoxic, nous pouvons traduire le terme source.
Dans le cas o `u nous aurions quand m ˆeme eu la traductiontoxic → toxique, la concat ´enation permet de g ´en ´erer plusieurs traductions possibles et donc des variantes potentiellement int ´eressantes pour le traducteur. Par exemple, si le dictionnaire poss `ede les traductionsnon- →non, -cyto-→ cellule, toxic→ toxique, et cytotoxic→ cytotoxique, alors, nous pouvons g ´en ´erer
`a la fois la traduction non toxique pour les cellules et noncytotoxique.
Notons enfin que la concat ´enation reg ´en `ere la forme enti `ere du terme source (i.e. non d ´ecoup ´ee). Une fois de plus, ceci permet d’augmenter les possibilit ´es de traduire le terme, par exemple, en passant par un cognat et/ou une variante morphologique. Si nous savons quenoncytotoxic appartient `a la m ˆeme famille morphologique que noncytotoxicity et que nous savons quenoncytotoxicity se traduit par noncytotoxicit´e, alors nous pouvons ´etablir un lien de traduction direct entrenoncytotoxic en noncytotoxicit´e ce qui reste une traduction acceptable. Cette strat ´egie est une solution de repli int ´eressante lorsque le terme n’a pas pu ˆetre d ´ecoup ´e en morph `emes ou que la traduction de l’un des morph `emes a ´echou ´e.