Partie II Contributions à la Traduction Automatique Statistique
3.3 Le corpus de sous-titres
3.3.2 Solution : programmation dynamique
Plusieurs solutions ont déjà été envisagées pour résoudre le problème d’alignement de corpus
parallèles [Moore 02, Brown 91, Melamed 96, Vandeghinste 04, Gale 91b] (nous invitons le
lec-teur à se référer à l’article [Singh 05] pour une étude comparative de ces méthodes). La plupart
des travaux sont basés sur la programmation dynamique. Ils utilisent pour cela une fonction
objectif qui permet de déterminer la distance existante entre les différents segments des corpus
parallèles, un segment pouvant être un paragraphe, une phrase ou une suite de mots.
3.3.2.1 Optimisation de l’alignement
Le problème consistant à aligner deux fichiers de sous-titrage d’un même film est un problème
classique de programmation dynamique. Etant donné tous les sous-titres anglais et français d’un
film, l’objectif est de trouver le meilleur alignement possible entre eux.
Nous allons pour cela considérer tous les alignements possibles et trouver quel est le meilleur
selon un critère d’optimisation qui sera dans notre cas la Fmesure. Nous allons utiliser cette
mesure pour trouver le meilleur chemin allant du premier sous-titre de chacune des deux version
de sous-titrage jusqu’au dernier.
La figure 3.6 modélise le problème. Chaque nœud (e
i, f
j)représente un alignement potentiel
entre le sous-titre anglais e
iet le sous-titre français f
j. Un chemin valide commence au nœud
(e
0, f
0) et se termine au nœud (e
E, f
F), E et F étant le nombre respectif de sous-titres dans
la version anglaise et française du film considéré. Les arcs représentent les transitions entre
alignements. A partir d’un nœud, trois transitions sont possibles :
64 Chapitre 3. Les corpus
Fig.3.6 – Alignement dynamique entre les sous-titres anglaise
iet les sous-titres françaisf
jd’un
même film
– transition verticale de(e
i, f
j) à (e
i, f
j+1). Le sous-titree
iest aligné avec deux sous-titres
consécutifs f
jetf
j+1. La progression se fait seulement dans le fichier français. (cf. figure
3.3 où le sous-titre anglais 9est aligné avec les sous-titres français 11 et12)
– transition diagonale de (e
i, f
j) à (e
i+1, f
j+1). La progression se fait dans les deux fichiers.
(cf. figure 3.2 où les sous-titres anglais 16 et17 sont respectivement alignés avec les
sous-titres français13 et14))
– transition horizontale de (e
i, f
j) à (e
i+1, f
j). Les sous-titres consécutifs e
iet e
i+1sont
alignés avec le même sous-titref
j. La progression se fait uniquement dans le fichier anglais.
Les transitions verticale et horizontale nous permettent de gérer les concaténations de sous-titres
et les suppressions de sous-titres. Une transition verticale signifie soit qu’un même sous-titre
anglais est aligné avec deux sous-titres français, soit qu’il y a un sous-titre français de plus qui
n’est pas rapporté en anglais. De la même façon, une transition horizontale indique soit que deux
sous-titres anglais sont alignés avec le même sous-titre français, soit qu’un des deux sous-titres
anglais n’est pas présent dans la version française du film. Nous verrons comment décider si de
telles transitions sont le cas de concaténation de sous-titres ou au contraire le cas d’insertion ou
d’omission.
Pour chaque nœud (e
i, f
j), nous définissons un score S(e
i, f
j) de correspondance basé sur la
Fmesure (F
M) et sur le score du nœud précédent et calculé comme suit :
S(e
i, f
j) =max
S(e
i, f
j−1) +β
Fm(F
M(e
i, f
j) +ǫ) (↑)
S(e
i−1, f
j−1) +α
Fm(F
M(e
i, f
j) +ǫ) (ր)
S(e
i−1, f
j) +λ
Fm(F
M(e
i, f
j) +ǫ) (→)
α
Fm,β
Fmetλ
Fmsont des paramètres optimisés dans le but d’obtenir les meilleures performances
d’alignement sur un corpus de test. Ils accordent un poids différent à chacune des transitions
3.3. Le corpus de sous-titres 65
possibles. La valeur de ces coefficients dépend de la valeur de la FmesureF
M. Notons également
que pour prévenir des problèmes liés à des scores nuls, nous utilisons une constante de lissage
ǫ. La Fmesure est donc utilisée comme mesure de distance entre deux sous-titres. Il s’agit d’une
moyenne harmonique entre la précision (P) et le rappel (R) :
F
M(e
i, f
j) = 2×R(e
i, f
j)×P(e
i, f
j)
R(e
i, f
j) +P(e
i, f
j) (3.1)
Si la Fmesure entre deux sous-titres est supérieure ou égale à0,5 alors nous pouvons considérer
que plus de la moitié du sous-titre anglais est couvert par le sous-titre français et que par
conséquent l’un a de fortes chances de correspondre à l’autre.
Le rappel et la précision sont calculés en comparant les mots du sous-titre anglais aux traductions
des mots du sous-titre français.
R(e
i, f
j) = match(e
i, tr(f
j))
N(e
i) P(e
i, f
j) =
match(e
i, tr(f
j))
N(f
j) (3.2)
match(e
i, tr(f
j)) =
N(ei)X
k=1δ(e
ki, tr(f
jl))∀l∈[1−N(f
j)] (3.3)
tr(f
j) est la traduction mot-à-mot en anglais du sous-titre français f
j. Cette traduction est
obtenue à l’aide d’un dictionnaire Français-Anglais. N(x) est le nombre de mots contenus dans
le sous-titre x. match(e
i, tr(f
j)) est le nombre de mots identiques entre le sous-titre e
iet la
traduction mot-à-mot du sous-titre f
j. Enfin δ(x, y) est la fonction de Kronecker valant 1 si x
ety sont identiques et 0 sinon. Un exemple de calcul de la fonction match()est donné dans la
figure 3.7. Pour chaque mot du sous-titre français, un dictionnaire bilingue fournit les traductions
were you ruin in inside per within
traduction mot−à−mot
f :
e :
dans
vous l’ avion vous mort
you the plane are dead
you crashed on the you are dead
étiez
plane
etes
^
Fig. 3.7 – Exemple de calcul de la fonction match()
possibles. Si une des traductions est présente dans le sous-titre anglais, la fonction match() est
incrémentée. Dans notre exemple, la fonction renvoie la valeur 6 puisque 6 mots du sous-titre
anglais se retrouvent dans les traductions possibles des mots du sous-titre français. Afin que
la mise en correspondance des sous-titres soit plus précise, la fonction match() est également
66 Chapitre 3. Les corpus
incrémentée lorsqu’une même forme orthographique apparaît dans les deux sous-titres français
et anglais. Cela permet ainsi de faire correspondre les noms propres sans qu’ils ne soient présents
dans le dictionnaire bilingue utilisé.
Les scoresS(e
i, f
j)sont calculés ainsi de la gauche vers la droite. Une fois tous les nœuds évalués,
et partant du meilleur score associé au dernier sous-titre anglais, le meilleur alignement est
obtenu par retour arrière jusqu’au premier sous-titre. Nous présentons, dans la section suivante,
les expériences menées avec cette méthode d’alignement automatique.
Dans le document
Les Triggers Inter-langues pour la Traduction Automatique Statistique
(Page 74-77)