Publiquem models basats en xarxes neuronals per a la traducció automàtica de programari
2018-11-11 09:26:00

Introducció Els sistemes de traducció automàtica han viscut importants avanços tecnològics. En els darrers anys dues grans tendències s'han obert pas: la [traducció automàtica estadística](https://en.wikipedia.org/wiki/Statistical_machine_translation) (SMT) i la [traducció automàtica neuronal](https://en.wikipedia.org/wiki/Neural_machine_translation) (NMT). La traducció automàtica estadística es basa en l'aplicació de models estadístics a la traducció. Softcatalà ha creat i treballat amb models estadístics usant el programari lliure [Moses](http://www.statmt.org/moses/). Els resultats que hem obtingut han estat positius, però darrerament les proves que hem fet amb sistemes neuronals, per al context concret de traducció de programari, ens han permès assolir resultats superiors[1.Per mesurar i poder comparar el resultat de sistemes de traducció automàtica usem l'algorisme [BLEU](https://en.wikipedia.org/wiki/BLEU).]. En la resta d'aquest article ens basarem en els sistemes neuronals que són els que estem usant extensivament a Softcatalà. Com funcionen Els sistemes de traducció neuronals fan servir xarxes neuronals artificials (vegeu l'explicació[2. [Making sense of neural machine translation](https://www.dlsi.ua.es/~mlf/docum/forcada17j2.pdf), per [Mikel L. Forcada](https://www.dlsi.ua.es/~mlf/).]) per predir quina serà la traducció d'un text. Aquests sistemes s'entrenen amb corpus alineats en què per una frase en anglès proporcionem una traducció al català feta per humans. S'entrena la xarxa neuronal amb aquestes entrades, i al cap de dies d'entrenament, s'obté una xarxa neuronal capaç de traduir textos que no ha vist abans. Aquests sistemes són la base de traductors automàtics com el Google Translator. A Softcatalà hem usat [OpenNMT-tf](https://github.com/OpenNMT/OpenNMT-tf), que és una implementació lliure d'un sistema traducció neuronal basat en [TensorFlow](https://www.tensorflow.org/). Després de mesos de proves i de crear dotzenes de models, publiquem els dos models de traducció que ens han donat millors resultats: 

  * El model de traduccions de Softcatalà (<https://www.softcatala.org/pub/softcatala/opennmt-models/1532307246.zip>). Aquest model ha estat entrenat amb 190.523 frases que provenen de traduccions fetes per Softcatalà i hem aconseguit un BLEU de 30,50.
  * El model de traduccions lliures (<https://www.softcatala.org/pub/softcatala/opennmt-models/1532515736.zip>). Aquest model ha estat entrenat amb 566.699 frases que provenen de traduccions lliures extretes de més de 140 projectes i hem aconseguit un BLEU de 29,97.

Volem destacar que per entrenar aquests sistemes és fonamental disposar de corpus de qualitat alineats. Hem pogut disposar d'aquest corpus ràpidament gràcies a la feina feta durant molts anys de recopilació de [memòries de traducció](https://www.softcatala.org/recursos/memories.html) de programari i a l'esforç constant de moltes comunitats de traducció per millorar-ne la qualitat esmenant els errors detectats en els informes de qualitat. Utilització a Softcatalà Hem començat a fer servir el model basat en traduccions de Softcatalà per completar la traducció de la documentació en català de LibreOffice. El procés consisteix a traduir les frases que queden per traduir amb el model de Softcatalà basat en xarxes neuronals, les traduccions queden marcades per revisar, i després un humà les revisa. Alguns exemples de com queden les traduccions: 
    
    
    msgid "Press the Backspace key to delete the number."
    msgstr "Premeu la tecla de retrocés per suprimir el nombre."
    
    msgid "Enter the text to search in the <emph>Find</emph> text box."
    msgstr "Introduïu el text que voleu cercar a l'enllaç<emph>Cerca</emph> la caixa del text."
    
    msgid "Choose <emph>View - Styles</emph> and click the <emph>Page Styles</emph> "
    "icon in the Styles sidebar deck."
    msgstr  "Tria <emph>Visualitza - estils</emph> i feu clic a l'enllaç sobre el "
    "<emph>Estils de pàgina</emph> la icona a la barra lateral barra lateral (//)"

Seguint aquest procés hem observat que podem traduir aproximadament 6 vegades més de pressa, ja que en comptes de traducció la feina es converteix en postedició. Com podeu fer-ho servir Hem publicat els models i tota la informació de com utilitzar-los de manera lliure en el dipòsit [nmt-softcatala](https://github.com/Softcatala/nmt-softcatala) de Github. També disposem d'un grup a [Telegram de tecnologia i llengua](https://t.me/Softcatala_TecnoLlengua) en què us podem ajudar si voleu intentar utilitzar aquests sistemes per a la traducció de programari lliure. Quant a Softcatalà Softcatalà és una associació sense afany de lucre que treballa per la normalització de la llengua catalana en el sector informàtic relacionat amb Internet i les noves tecnologies, a partir de la traducció de programari lliure i de distribució gratuïta. Per a més informació sobre els programes que aquesta associació ha traduït al català, podeu consultar el seu lloc web a [https://www.softcatala.org](https://www.softcatala.org/).