際際滷s in Catalan about neural machine translation, presented at a Softcatal meeting in February 2023.
1 of 40
Download to read offline
More Related Content
softcatala.pdf
1. Traducci坦 automtica neural
Traducci坦 automtica neural
Mikel L. Forcada1,2
1Departament de Llenguatges i Sistemes Informtics,
Universitat dAlacant, E-03071 Alacant
2Prompsit Language Engineering, S.L.,
Edifici Quorum III, Av. Universitat s/n, E-03202 Elx
Taller de desenvolupament del traductor neuronal de
Softcatal, 11 de febrer de 2023
2. Traducci坦 automtica neural
ndex
1 Traducci坦 automtica
2 Tecnologies de traducci坦 automtica
3 Traducci坦 automtica basada en corpus
4 Traducci坦 automtica neural
5 Comentaris finals
3. Traducci坦 automtica neural
Traducci坦 automtica
ndex
1 Traducci坦 automtica
2 Tecnologies de traducci坦 automtica
3 Traducci坦 automtica basada en corpus
4 Traducci坦 automtica neural
5 Comentaris finals
4. Traducci坦 automtica neural
Traducci坦 automtica
Traducci坦 automtica
Traducci坦 automtica
La traducci坦,
mitjan巽ant un sistema informtic (ordinador + programes)
dun text informatitzat en la llengua origen (LO)
que produeix un text informatitzat en la llengua meta (LM)
que es pot anomenar traducci坦 en brut.
Text LO
Traductor
automtic
Text LM en brut
5. Traducci坦 automtica neural
Tecnologies de traducci坦 automtica
ndex
1 Traducci坦 automtica
2 Tecnologies de traducci坦 automtica
3 Traducci坦 automtica basada en corpus
4 Traducci坦 automtica neural
5 Comentaris finals
6. Traducci坦 automtica neural
Tecnologies de traducci坦 automtica
Tipus de traducci坦 automtica
Hi ha dos tipus principals de traducci坦 automtica (TA):
La traducci坦 automtica basada en regles
La traducci坦 automtica basada en corpus
7. Traducci坦 automtica neural
Tecnologies de traducci坦 automtica
Traducci坦 automtica basada en regles
La TA basada en regles (per exemple, Apertium1):
va ser la primera aproximaci坦 a la TA,
progressa a partir de la traducci坦 mot a mot,
idealment fins a arribar al nivell de loraci坦.
Els experts en traducci坦 escriuen diccionaris de
traducci坦 i regles que transformen estructures de la LO en
estructures de la LM.
Els experts informtics escriuen programes (motors)
que consulten aquests diccionaris i apliquen aquestes
regles al text original.
1
Sistemes esca basats en Apertium: SoftCatal, SoftValenci,
SALT-usu
8. Traducci坦 automtica neural
Traducci坦 automtica basada en corpus
ndex
1 Traducci坦 automtica
2 Tecnologies de traducci坦 automtica
3 Traducci坦 automtica basada en corpus
4 Traducci坦 automtica neural
5 Comentaris finals
9. Traducci坦 automtica neural
Traducci坦 automtica basada en corpus
TA basada en corpus /1
Existing translations contain more solutions to more translation
problems than any other existing resource2
Objectiu
Aprendre a traduir a partir de traduccions existents (bitextos)
2
Les traduccions existents contenen m辿s solucions a m辿s problemes de
traducci坦 que cap altre recurs, Isabelle, P., et al., Proc. TMI 93.
10. Traducci坦 automtica neural
Traducci坦 automtica basada en corpus
TA basada en corpus /2
Els programes de TA basada en corpus aprenen a traduir a
partir de corpus amb centenars de milers o milions de
segments tradu誰ts.
Estrat竪gies principals:
La TA estad鱈stica (concebuda el 1989; auge: 19952015)
Apr辿n i usa models probabil鱈stics que sestimen comptant
successos en els corpus dentrenament.
La nova TA neural (represa el 2013; auge: 2015).
Es basa en xarxes neurals artificials inspirades en la
manera com el cervell apr辿n i generalitza.3
s lestat de la q端esti坦.
Els experts informtics escriuen el programari que apr辿n i
tradueix.
Els experts en traducci坦 ja han fet la faena: traduir.
3
Dac鱈 que es parle dintel揃lig竪ncia artificial.
11. Traducci坦 automtica neural
Traducci坦 automtica basada en corpus
TA basada en corpus /3
Per嘆 no tot s坦n flors i violes:
Els textos produ誰ts poden ser enganyosament naturals
(infidels).
Pot ser que no tinguem corpus de grandria suficient per a
lleng端es o dominis menys tradu誰des.
La qualitat de la traducci坦 dep辿n de la naturalesa i la
qualitat dels corpus dentrenament.
12. Traducci坦 automtica neural
Traducci坦 automtica basada en corpus
TA basada en corpus /4
Per a aprendre a traduir a partir de bitextos:
1 Els textos han destar segmentats en oracions
Els signes de puntuaci坦 i la informaci坦 de format poden ser
炭tils
2 Les oracions han destar alineades, 辿s a dir, cal identificar
les oracions que s坦n traducci坦 m炭tua
13. Traducci坦 automtica neural
Traducci坦 automtica basada en corpus
Alineaci坦 de segments
text esquerre E
segmen-
taci坦
text dret D
segmen-
taci坦
alineaci坦
dels
segments
UT
(e, d)
Mem嘆ria
de
traducci坦
E D
e1 d1
e2 d2
e3 d3
. . . . . .
eN dN
14. Traducci坦 automtica neural
Traducci坦 automtica basada en corpus
Exemple de corpus biling端e
. . . . . .
e347 = Normas para la entrega. d347 = Normes per al lliurament.
e348 = Buscamos la soluci坦n 坦ptima y
existe un criterio de decisi坦n voraz que
nos conduce a ella.
d348 = Busquem la soluci坦 嘆ptima i ex-
isteix un criteri de decisi坦 vora巽 que ens
hi condueix.
e349 = Buscamos todas las soluciones
factibles o todas las soluciones 坦ptimas.
d349 = Busquem totes les solucions
factibles o totes les solucions 嘆ptimes.
e350 = 2: Se comprueba para 2 valores
diferentes, por lo que se hacen dos lla-
madas recursivas.
d350 = 2: Es comprova per 2 valors
diferents, per la qual cosa es fan dues
crides recursives.
e351 = Sigue escrupulosamente los
nombres de ficheros que se citan en
este enunciado.
d351 = Useu exactament els noms de
fitxers que se citen en aquest enunciat.
e352 = No es necesario controlar posi-
bles errores en el contenido del fichero
de entrada ya que siempre se ajustar叩
fielmente al formato establecido.
d352 = No 辿s necessari controlar pos-
sibles errors en el contingut del fitxer
dentrada, ja que sempre sajustar fidel-
ment al format establert.
e353 = Entrada de datos al programa. d353 = Entrada de dades al programa.
. . . . . .
15. Traducci坦 automtica neural
Traducci坦 automtica neural
ndex
1 Traducci坦 automtica
2 Tecnologies de traducci坦 automtica
3 Traducci坦 automtica basada en corpus
4 Traducci坦 automtica neural
5 Comentaris finals
16. Traducci坦 automtica neural
Traducci坦 automtica neural
La TA neural: la nova TA basada en corpus
La traducci坦 automtica neural o basada en aprenentatge
profund (deep learning) 辿s una alternativa recent a la TA
estad鱈stica:
Tamb辿 es basa en corpus (m辿s dades, m辿s netes?)
Primeres idees en els noranta,4 abandonades per falta de
pot竪ncia dels ordinadors.
Es repr辿n vora el 2013.
Primer sistemes comercials el 2016 (Google Translate).
Competitiva amb la TA estad鱈stica en moltes aplicacions.
Tamb辿 s坦n neurals: DeepL, Microsoft, SoftCatal (enca,
frca, ptca).
4
Chalmers, Connect Sci 1990; Chrisman, Connect Sci 1991; Casta単o &
Casacuberta, EuroSpeech 1997; Forcada & eco, ICANN 1997
17. Traducci坦 automtica neural
Traducci坦 automtica neural
Neurones artificials /1
Per qu竪 sanomena neural (o neuronal)?
La fa programari que simula grans xarxes de neurones
artificials.
Lactivaci坦 (excitaci坦) de les neurones dep辿n de lactivaci坦
daltres neurones i de les caracter鱈stiques de les
connexions m炭tues.
El signe i la magnitud dels pesos daquestes connexions
determinen el comportament de la xarxa:
Les neurones connectades amb pes positiu tendeixen a
excitar-se o inhibir-se simultniament..
Les neurones connectades amb pes negatiu tendeixen a
ser en estats oposats.
Lefecte de la interacci坦 augmenta amb la magnitud del pes.
18. Traducci坦 automtica neural
Traducci坦 automtica neural
Neurones artificials /2
Lentrenament de la xarxa neural artificial fixa els pesos als
valors necessaris per a assegurar un comportament
determinat (patrons dexcitaci坦 o dinhibici坦).
19. Traducci坦 automtica neural
Traducci坦 automtica neural
Neurones artificials /3
S = F (wS + wS + wS)
S
S
S
S
w
w
w
-1
-0.5
0
0.5
1
-4 -2 0 2 4
F(x)
20. Traducci坦 automtica neural
Traducci坦 automtica neural
Xarxes neurals
x1
x2
x3
x4
x5
Entrada
h
(1)
1
h
(1)
2
h
(1)
3
h
(1)
4
Oculta 1
h
(2)
1
h
(2)
2
h
(2)
3
h
(2)
4
h
(2)
5
Oculta 2
h
(3)
1
h
(3)
2
h
(3)
3
h
(3)
4
Oculta 3
y1
y2
Eixida
Una xarxa neural amb 5 entrades, 4 neurones en la 1a capa
oculta, 5 neurones en la 2a capa oculta, 4 neurones en la 3a
capa oculta i 3 neurones deixida.
21. Traducci坦 automtica neural
Traducci坦 automtica neural
Representacions /1
Quan sentrenen amb alguna tasca ling端鱈stica, els valors
dactivaci坦 de capes de neurones formen representacions
de la informaci坦 que processen.
Per exemple,
(0.35, 0.28, 0.15, 0.76, . . . , 0.88)
podria ser la representaci坦 del mot estudi, i
(0.93, 0.78, 0.22, 0.31, . . . , 0.71)
la del mot gat.
22. Traducci坦 automtica neural
Traducci坦 automtica neural
Representacions /2
Imaginem representacions l竪xiques amb nom辿s tres neurones:
Els mots amb interpretacions similars s坦n a prop uns dels
altres.
23. Traducci坦 automtica neural
Traducci坦 automtica neural
Representacions /3
Les representacions solen ser tals que shi pot fer
aritm竪tica semntica (afegint i substraent valors dactivaci坦
neurona a neurona):
[rei] [home] + [dona] ' [reina]
24. Traducci坦 automtica neural
Traducci坦 automtica neural
TA neural/1
La majoria de les arquitectures neurals de TA:
S坦n predictores: prediuen els segments de leixida un a
un.
Una miqueta com el vostre tel竪fon m嘆bil prediu el mot
seg端ent quan teclegeu un missatge.
M辿s precisament, estimen la probabilitat o la
versemblan巽a p(t), per a cada possible segment t del
vocabulari deixida T, que aquest segment haja
dapar辿ixer en la posici坦 actual de leixida.
25. Traducci坦 automtica neural
Traducci坦 automtica neural
TA neural/2
La majoria de les arquitectures neurals de TA:
La descodificaci坦 selecciona el(s) segment(s) m辿s
probable(s).
La probabilitat del segment t en la posici坦 k de leixida,
pk (t), dep辿n
de tota la seq端竪ncia de m segments dentrada
sm
1 = s1s2 . . . sm, i
de la seq端竪ncia dels k 1 segments deixida ja predits i
consolidats tk1
1 = t1t2 . . . tk1. Matemticament:
pk (t|sm
1 , tk1
1 )
26. Traducci坦 automtica neural
Traducci坦 automtica neural
Segments?
Els sistemes de TA neural treballen amb segments (tokens):
Per als mots freq端ents, el segment 辿s el mot
Per als mots menys freq端ents, el mot es pot partir en
segments m辿s menuts:
Passe- j- - ve- m per les ext- ense- s a-
vi- ngu- des .
Aquesta segmentaci坦 sapr辿n automticament a partir del
corpus.
Aix鱈 seviten xarxes immenses, ja que la xarxa t辿
una entrada per a cada segment s del vocabulari S
dentrada, i
una eixida per a cada segment t del vocabulari T deixida.
27. Traducci坦 automtica neural
Traducci坦 automtica neural
La TA neural com una caixa negra,. . . ehem, groga/1
s1 s2 s3 . . . sm
segments de la frase dentrada
t1 t2
. . . tk1
segments deixida consolidats
traducci坦 automtica neural pk (t|sm
1 , tk1
1 )
vector de probablitats
tk
arg maxtT
segment deixida predit
t T
28. Traducci坦 automtica neural
Traducci坦 automtica neural
La TA neural com una caixa negra,. . . ehem, groga/2
Fortes fortuna iuvat .
segments de la frase dentrada
La sort afavoreix els
segments deixida consolidats
traducci坦 automtica neural
p5(t|Fortes fortuna iuvat .,
La sort afavoreix els)
vector de probabilitats
forts
arg maxtT
segment deixida predit
t T
29. Traducci坦 automtica neural
Traducci坦 automtica neural
La TA neural com una caixa negra,. . . ehem, groga/3
En un sistema de traducci坦 automtica ben entrenat
llat鱈catal,
p5(forts|Fortes fortuna iuvat ., La sort afavoreix els)
hauria de ser m辿s alta que
p5(d竪bils|Fortes fortuna iuvat ., La sort afavoreix els).
De fet, idealment, hauria de ser la m辿s alta per a tots els
segments en T:
forts = arg max
tT
p5(t|Fortes fortuna iuvat ., La sort afavoreix els)
30. Traducci坦 automtica neural
Traducci坦 automtica neural
TA neural: requisits
Entrenar un sistema de TA neural no 辿s normalment a labast
de traductors aut嘆noms o empreses menudes:
Cal tenir un corpus paral揃lel dentrenament amb centenars
de milers o milions doracions per a les lleng端es dinter辿s i,
idealment, per a la temtica desitjada.
Cal disposar dun equip informtic dalt rendiment equipat
amb GPUs (graphic processing units). Cost: milers
deuros.
31. Traducci坦 automtica neural
Traducci坦 automtica neural
TA neural: nou comportament
La TA neural (o neuronal) . . .
. . . treballa amb representacions de tota loraci坦
辿s dif鱈cil saber de quin mot origen ve cada mot meta.
. . . produeix textos gramaticalment molt naturals en LM.
. . . produeix errors amb motivaci坦 semntica: si no sha
vist un mot durant lentrenament, se substitueix. . .
. . . per un altre similar: palau castell
. . . o per una parfrasi: Michael Jordan lescorta dels
Chicago Bulls;
amb resultats perillosos a voltes: Tunis Noruega.
. . . poden inventar mots: engineratge, reclutaci坦, etc. quan
treballen amb segments m辿s que el mot (com es fa
comunament).
Qui postedita ha de prestar molta atenci坦 (crrega cognitiva ).
32. Traducci坦 automtica neural
Traducci坦 automtica neural
Com sentrena la traducci坦 automtica neural /1
Entrenar: ajustar tots els pesos de la xarxa neural.
Eixida: probabilitats dels segments en context
probabilitats de les oracions:
P(I love you .|Je taime) = p1(I |INICI, Je taime)
p2(love |I, Je taime)
p3(you |I love, Je taime)
p4(. |I love you, Je taime).
Objectiu: maximitzar la probabilitat
P(I love you .|Je taime) de la traducci坦 de refer竪ncia I love
you.
Cal maximitzar aquesta probabilitat per a totes les
traduccions del corpus dentrenament.
33. Traducci坦 automtica neural
Traducci坦 automtica neural
Com sentrena la traducci坦 automtica neural /2
Es comen巽a amb pesos aleatoris o els duna xarxa
anterior (preentrenada en una tasca relacionada).
Lalgorisme calcula quant canvien les probabilitats de les
traduccions del corpus dentrenament quan sincrementa
una miqueta cada pes de la xarxa.
Per a cada pes:
(Pes Probabilitat )? pes proporcionalment.
(Pes Probabilitat )? pes proporcionalment.
34. Traducci坦 automtica neural
Traducci坦 automtica neural
Com sentrena la traducci坦 automtica neural /3
(Pes Probabilitat )? pes proporcionalment.
(Pes Probabilitat )? pes proporcionalment.
El proc辿s es repeteix fins que
passa un temps, o
sha fet un nombre determinat de passades per tot el
corpus, o
la probabilitat de les traduccions en una part reservada del
corpus que no hem usat per a entrenar deixa daugmentar,
o
aquestes traduccions comencen a empitjorar dacord amb
un indicador automtic de la qualitat.
35. Traducci坦 automtica neural
Traducci坦 automtica neural
Com sentrena la traducci坦 automtica neural /4
Lalgorisme daprenentatge calcula un gradient de les
probabilitats de les oracions de refer竪ncia del conjunt
daprenentatge respecte de cada pes w que connecta
neurones:
gradient(P, w) =
P(amb w + w) P(amb w)
w
=
P
w
s a dir, quant varia la probabilitat per a un petit canvi w
en cada pes w.
Despr辿s de processar un cert nombre dexemples, els
pesos sactualitzen proporcionalment a lefecte sobre la
probabilitat ascens pel gradient
nou w = w + (taxa daprenentatge) gradient(P, w)
Aix嘆 es fa repetidament.
36. Traducci坦 automtica neural
Traducci坦 automtica neural
Com sentrena la traducci坦 automtica neural /5
Una manera davaluar el progr辿s del sistema durant
lentrenament: avaluaci坦 automtica.
Comparaci坦 automtica de leixida del sistema amb [una o
m辿s] traduccions professionals de refer竪ncia:
Similitud: BLEU (quants segments dun, de dos, de tres i
de quatre mots coincideixen). Idealment, com m辿s
coincid竪ncies, m辿s util 辿s la traducci坦.
Errors: TER (translation error rate, quants mots shan
desborrar, inserir o substituir i quants blocs dun o m辿s
mots shan de moure per cada 100 paraules). Idealment,
com menys errors, m辿s 炭til 辿s la traducci坦.
Tamb辿 es poden usar xarxes neurals entrenades per a
predir judicis humans de qualitat (p.ex., Comet).
La correlaci坦 daquests indicadors automtics amb la
utilitat en una aplicaci坦 concreta encara 辿s millorable.
37. Traducci坦 automtica neural
Comentaris finals
ndex
1 Traducci坦 automtica
2 Tecnologies de traducci坦 automtica
3 Traducci坦 automtica basada en corpus
4 Traducci坦 automtica neural
5 Comentaris finals
38. Traducci坦 automtica neural
Comentaris finals
Comentaris finals
La traducci坦 automtica 辿s la traducci坦 de textos en format
informtic amb usant ordinadors i programari adequat.
Dues tecnologies bsiques: TA basada en regles (i
diccionaris) i TA basada en corpus de text (estad鱈stica i
neural).
La TA neural 辿s lestat de la q端esti坦 de la TA basada en
corpus.
Es basa a simular el comportament de grans xarxes de
neurones artificials inspirades en les dels 辿ssers vius.
Entrenar un traductor neural 辿s usar exemples de
traduccions per a ajustar els pesos de manera que el
comportament de la xarxa resolga una tasca de traducci坦.
Es requereixen grans corpus biling端es alineats oraci坦 a
oraci坦 i ordinadors especialitzats molt potents.
40. Traducci坦 automtica neural
Comentaris finals
Aquestes transpar竪ncies s坦n lliures
Aquest treball es pot distribuir segons els t辿rmens de
la llic竪ncia Creative Commons
Reconeixement-CompartirIgual 4.0 Internacional
(http://creativecommons.org/licenses/by-sa/
4.0/deed.ca) o
la Llic竪ncia General P炭blica v. 3.0 de GNU: (https:
//www.gnu.org/licenses/gpl-3.0.ca.html).
Llic竪ncia dual! Escriviu-me si voleu el codi font L
A
TEX:
mlf@ua.es