scieee AI-readable full text Open interactive document viewer

Adaptació dels models de llenguatge per a la transcripció de vídeos de poli[Media]

Martínez Villaronga, Adrià Agustí

Abstract

Al llarg del darrer segle la forma de consumir la informació ha canviat de forma important. Mentre que a principis del segle XX, tot i l' incipient aparició de la cinematografia, gairebé tots els mitjans eren escrits, ara, tan sols 100 anys més tard i ficats de ple en el que s' anomena societat de la informació, aquesta apareix en tot tipus de formes i suport, mantenint-se el suport escrit (analògic o digital) com un dels més importants, però prenent gran importància també els mitjans audiovisuals. A les darreres dècades, i gràcies a internet, s' han canviat també els hàbits de consum de la informació, tenint l' usuari l' opció de triar quina informació vol i quan la vol. En aquest context, i en l' àmbit educatiu, han aparegut iniciatives que pretenen acostar el coneixement a usuaris d' arreu del món mitjançant la distribució de classes enregistrades en vídeo. Tot i la importància d' aquestes iniciatives, presenten alguns inconvenients respecte a les fonts tradicionals de coneixement com pot ser un llibre. El principal inconvenient, i el que més ens afecta, és el fet que gran part de la informació siga audible. Això suposa una dificultat afegida a l' hora de trobar, fent servir les tècniques clàssiques de computació, un segment o frase concreta, de forma que sovint caldrà reproduir la seqüència sencera per tal de trobar el fragment desitjat. També suposa un desavantatge considerable per a usuaris amb audició reduïda o nul·la, els quals no serien capaços d' accedir a la informació.

Full text

! ! UNIVERSITAT POLITÈCNICA DE VALÈNCIA ESCOLA TÈCNICA SUPERIOR D’ENGINYERIA INFORMÀTICA DEPARTAMENT DE SISTEMES INFORMÀTICS I COMPUTACIÓ Adaptació dels models de llenguatge per a la transcripció de vídeos de poli[Media]. Projecte Final de Carrera - Enginyeria Informàtica Adrià Agustí Martínez Villaronga Supervisat per: Dr. Alfons Juan Císcar Dr. Jesús Andrés Ferrer 25 de juliol de 2012 ! ! ! ! Als meus pares i a la meua germana. A Fernando, Joan i Jose, amb qui he compartit tots i cadascun d’aquests 5 anys de carrera. A Tonga, per les ajudes lingüístiques. AMiquel,quealfinalheacabatel projecte abans que ell. I a Jesús i a Alfons, per donar-me l’oportunitat de treballar amb ells i per la seua ajuda a l’hora de fer aquest projecte ! ! ! ! Índex 1Introducció 1 1.1 Motivació del projecte . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.2 Reconeixement de formes . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.3 Reconeixement automàtic de la parla . . . . . . . . . . . . . . . . . . . 3 1.4 Models que intervenen al reconeixement . . . . . . . . . . . . . . . . . 5 1.5 Avaluació dels resultats . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2Modelatdellenguatgesd’n-grames 9 2.1 Models de llenguatge basats en n-grames . . . . . . . . . . . . . . . . . 9 2.2 Construcció de models de llenguatge . . . . . . . . . . . . . . . . . . . 10 2.2.1 Tècniques de suavitzat . . . . . . . . . . . . . . . . . . . . . . . 12 Suavitzat additiu . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Descompte absolut . . . . . . . . . . . . . . . . . . . . . . . . . 12 Kneser-Ney . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Modified Kneser-Ney . . . . . . . . . . . . . . . . . . . . . . . . 14 Diferències entre tècniques de backoffid’interpolació . . . . . 14 2.3 Interpolació de models de llenguatge . . . . . . . . . . . . . . . . . . . 15 2.4 La perplexitat com a mesura d’avaluació d’un model de llenguatge . . 15 2.5 Eines informàtiques per al modelat de llenguatges . . . . . . . . . . . . 16 2.5.1 El format ARPA de models de llenguatge . . . . . . . . . . . . 17 3Descripciódelcorpus 19 3.1 N-grames de Google . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 3.1.1 Format i característiques del corpus . . . . . . . . . . . . . . . 19 3.2 poli[Media] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 3.2.1 La plataforma poli[Media] . . . . . . . . . . . . . . . . . . . . . 20 3.2.2 El corpus poli[Media] . . . . . . . . . . . . . . . . . . . . . . . 21 3.2.3 Format de les transcripcions . . . . . . . . . . . . . . . . . . . . 22 4Experimentació 25 4.1 Preprocés de les dades . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 4.1.1 Preprocés dels fitxers de Google . . . . . . . . . . . . . . . . . 26 4.1.2 Preprocessat de poli[Media] . . . . . . . . . . . . . . . . . . . . 27 4.2 Construcció del vocabulari . . . . . . . . . . . . . . . . . . . . . . . . . 27 4.3 Experiments bàsics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 4.3.1 Model de llenguatge de Google . . . . . . . . . . . . . . . . . . 28 4.3.2 Model de llenguatge de poli[Media] . . . . . . . . . . . . . . . . 28 4.3.3 Model interpolat de Google + poli[Media] . . . . . . . . . . . . 28 v ! ! Índex 4.4 Model interpolat poli[Media] + transparències . . . . . . . . . . . . . . 29 4.5 Model interpolat Google + poli[Media] + transparències . . . . . . . . 30 4.6 Model interpolat Google + poli[Media] + transparències + transparències sincronitzades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 4.7 Resum dels resultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 5 Conclusions 35 5.1 Treball futur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 vi PRHLT-DSIC-UPV ! ! Capítol 1 Introducció 1.1 Motivació del projecte Al llarg del darrer segle la forma de consumir la informació ha canviat de forma important. Mentre que a principis del segle XX, tot i l’incipient aparició de la cinematografia, gairebé tots els mitjans eren escrits, ara, tan sols 100 anys més tard ificatsdepleenelques’anomenasocietatdelainformació,aquestaapareixentot tipus de formes i suport, mantenint-se el suport escrit (analògicodigital)comun dels més importants, però prenent gran importància també els mitjans audiovisuals. Alesdarreresdècades,igràciesainternet,s’hancanviattambéelshàbitsdeconsum de la informació, tenint l’usuari l’opció de triar quina informació vol i quan la vol. En aquest context, i en l’àmbit educatiu, han aparegut iniciatives que pretenen acostar el coneixement a usuaris d’arreu del món mitjançant la distribució de classes enregistrades en vídeo. Tot i la importància d’aquestes iniciatives, presenten alguns inconvenients respecte a les fonts tradicionals de coneixement com pot ser un llibre. El principal inconvenient, i el que més ens afecta, és el fet que gran part de la informació siga audible. Això suposa una dificultat afegida a l’hora de trobar, fent servir les tècniques clàssiques de computació, un segment o frase concreta, de forma que sovint caldrà reproduir la seqüència sencera per tal de trobar el fragment desitjat. També suposa un desavantatge considerable per a usuaris amb audició reduïda onul·la, els quals no serien capaços d’accedir a la informació. Una solució a aquests problemes podria ser el subtitulat dels vídeos, proporcionant un suport textual que permetria la cerca eficient de segments i facilitaria l’accés al contingut sonor del vídeo a la gent amb problemes d’audició. Tanmateix, la generació d’aquests subtítols de forma manual suposa una despesa important en temps i recursos dels quals no sempre es disposa. La generació automàtica dels subtítols, en canvi, podria ser una solució gràcies 1 ! ! Capítol 1. Introducció al seu baix cost econòmic i temporal si es compara amb la transcripció manual. Les tècniques de reconeixement de la parla, basades en les tècniques de reconeixement de formes, permetrien, a partir de la font d’àudio i d’un model prèviament entrenat, generar, de forma automàtica, subtítols per al vídeo. No obstant això, la transcripció no és perfecta i, especialment en el nostre cas on tractem amb continguts que sovint fan servir un vocabulari específic, els errors de transcripció poden dificultar la comprensió del missatge. Un fet destacable d’aquest tipus de xarrades és que sovint van acompanyades de transparències que contenen informació textual sobre el contingut de la classe. Creiem que l’ús adequat d’aquesta informació addicional pot ajudar a millorar la qualitat de les transcripcions. 1.2 Reconeixement de formes El reconeixement de formes o reconeixement de patrons (de l’anglès pattern recognition)ésunadisciplinaenglobadadinslainformàtical’objectiudelaqualéslapercepció d’objectes en entorns complexos per un sistema. En aquest cas, la percepció o reconeixement d’un objecte consisteix a atorgar-li un significat semàntic a aquest mitjançant l’associació d’una etiqueta [DH73][Jel97]. El procés bàsic de reconeixement de formes consta de tres etapes (figura 1.1). 1. Preprocés El senyal (una imatge, una ona d’audio en cru) es processa per tal d’eliminar el possible soroll i adequar-lo als processos que se li aplicaran posteriorment. 2. Extracció de característiques Consisteix en obtenir una sèrie de mesures a partir del senyal preprocessat a l’etapa 1 que siguen significatives per a la tasca de classificació, la qual és l’objectiu final del reconeixement. 3. Classificació L’objectiu és, a partir de les dades d’entrada i en base a un model prèviament entrenat, associar una etiqueta a cada una de les mostres que es desitgen reconèixer. Figura 1.1: Procés de classificació en el reconeixement de formes Com ja hem mencionat, la classificació es fa en base a un model. Per obtenir aquest model es fan servir tècniques estadístiques d’aprenentatge sobre un conjunt de dades 2PRHLT-DSIC-UPV ! ! 1.3. Reconeixement automàtic de la parla de les quals es coneix l’etiqueta de cada una de les mostres (conjunt d’entrenament). L’objectiu de l’entrenament és obtenir un model que s’aproxime a aquestes dades correctament etiquetades. Formalment, donada una funció desconeguda g:X→Y que associa a cada x∈Xuna etiqueta y∈Y,iunconjuntdedadesd’entrenament D={(x1,y 1),...,(xn,y n)},l’objectiuésgenerarunafuncióh:X→Yque aproxime tan precisament com siga possible la funció g.Enaltresparaules,volemgeneraruna funció hque siga capaç de classificar correctament, és a dir assignar l’etiqueta y∈Y correcta, al màxim nombre possible de mostres x∈Xd’entre un conjunt de prova. Així, utilitzarem la regla de decisió de Bayes [?] per calcular l’etiqueta més probable ˆyper a una mostr x: ˆy=argmax y∈Yp(y|x)(1.1) IaplicantlaregladeBayespodemdesenvoluparl’expressióperlaprobabilitata posteriori de y,p(y|x),delasegüentforma: p(y|x)=p(x|y)p(y) p(x)=p(x|y)p(y) !y!∈Yp(x|y")p(y")(1.2) Quedant l’expressió per a l’etiqueta més probable així: ˆy=argmax y∈Yp(y|x)=argmax y∈Y p(x|y)p(y) p(x)(1.3) Com que no estem interessats en el valor de p(y|x),sinóenlayde valor màxim, podem prescindir del càlcul de p(x)i representar-ho com segueix: ˆy=argmax y∈Yp(x|y)p(y)(1.4) Améstambépodemferservirlogaritmesqueensserviranperpodermantenirla precisió treballant amb nombres molt xicotets: ˆy=argmax y∈Ylog(p(x|y)p(y)) = arg max y∈Ylog p(x|y)+logp(y)(1.5) És mitjançant el conjunt d’entrenament, i fent servir tècniques d’aprenentatge, que s’estimaran les probabilitats a priori de les classes, p(y),ilesprobabilitatscondicionals de x,p(x|y). 1.3 Reconeixement automàtic de la parla Dins el reconeixement de formes ens interessa especialment el reconeixement de la parla (ASR, de l’Automatic Speech Recognition). Aquesta és una branca especialment complexa del reconeixement de formes. Repassem com ha evolucionat el reconeixement de formes des dels seus inicis [Jel97]. PRHLT-DSIC-UPV 3 ! ! Capítol 2. Modelat de llenguatges d’n-grames 1-grames 2-grames 3-grames 4-grames ell ell menja ell menja a ell menja a casa menja menja a menja a casa aacasa casa Taula 2.1: Separació en n-grames de la frase ell menja a casa p(w)=p(w1...w k)=p(w1)p(w2|w1)... p(wk|w1...w k−1) p(w)="k i=1 p(wi|w1...w i−1) L’ús de la història sencera té un problema de dispersió, fent que siga molt fàcil l’aparició de probabilitats 0.Laconsideraciód’únicamentunnombrereduïtdeparaules anteriors reduirà en gran mesura aquesta dispersió, augmentant la densitat de les dades d’entrenament. Així, segons aquesta proposta, la probabilitat d’una frase, donat un model de trigrames es calcula així: p(w)= k # i=1 p(wi|wi−2wi−1) Per exemple, amb un model de trigrames, la probabilitat de la frase ell menja a casa es calcularia de la següent forma: p(ell menja a casa)=p(ell)·p(menja |ell)·p(a|ell menja)·p(casa |menja a) Cal remarcar que sovint aquests models també tenen en compte l’inici i final de frase, als quals anem a denotar mitjançant <s>i</s>respectivament. Això és útil perquè ajuda a poder predir el final de frase. L’exemple anterior quedaria de la següent forma si considerem els símbols d’inici i final: p(ell menja a casa)=p(ell|<s>)·p(menja |<s> ell)· p(a|ell menja)·p(casa |menja a)·p(</s> |acasa) 2.2 Construcció de models de llenguatge Sabem que un model de llenguatge assigna una probabilitat a cada possible frase, per tant la forma més directa i senzilla de construir un model seria mitjançant un conjunt molt gran de frases en l’idioma desitjat i definir cada probabilitat com la freqüència relativa de la frase. Però per molt gran que fóra aquest conjunt d’entrenament seria impossible contemplar totes les possibles frases d’un idioma. Així, si es vol reconèixer una frase wque no s’ha vist en la fase d’entrenament, la probabilitat assignada p(w) 10 PRHLT-DSIC-UPV ! ! 2.2. Construcció de models de llenguatge serà 0ipertant(recordeml’equació1.7)laprobabilitatqueseliassignaràap(w|x) serà també 0,permoltaltaqueforalaprobabilitatp(x|w). Els models d’n-grames són un primer pas per intentar resoldre els problema de les probabilitats 0.Sienllocdecalcularlaprobabilitatd’unafrasesenceralacalculem apartirdelesparts(n-grames) que la formen, serà molt més difícil que apareguen probabilitats 0.Anemaveurecompodemobtenirlaversemblançap(wn|w1...w n−1) que millor s’ajusta a la població que tenim: Siga D={w1...w N}un conjunt de frases sobre un vocabulari W,laprobabilitat del conjunt serà: p(D)= N # n=1 p(wn) p(D)= N # n=1 Ln # l=1 p(wnl|hnl) On hnl representa la història, és a dir, w(i−k+1)l...w i−1l. Siga Θ={p(w),p(w|w"),p(w|w"w"")∀w, w",w"" ∈W},elconjuntdeparàmetres per a un model de trigrames la versemblança del qual volem maximitzar: ˆ Θ=argmax ΘpΘ(D)=argmax Θ N # n=1 Ln # l=1 p(wnl|hnl) =argmax Θlog N # n=1 Ln # l=1 p(wnl|hnl)=argmax Θ N $ n=1 Ln $ l=1 logp(wnl|hnl) Optimitzant aquesta equació arribem: pML(wn|w1...w n−1)= c(w1...w n) !wnc(w1...w n)=c(w1...w n) c(w1...w n−1)(2.1) on la funció c(s)indica el nombre de vegades que ha aparegut la seqüència sa les dades d’entrenament. A aquesta forma d’estimar la probabilitat se la coneix com estimador de màxima versemblança (Maximum Likelihood en anglès). L’estimació per màxima ver semblança ens donarà la distribució que millor s’ajusta al conjunt de dades que han servit per entrenar-la. Aquestes dades són un subconjunt de la població de possibles mostres i una distribució que s’ajuste molt bé aunsubconjuntnosempres’ajustaràbéalapoblaciócomplet.Amés,ésevidentque al subconjunt utilitzat per entrenar no apareixeran totes les paraules possibles de la població, per tant això farà que fent servir una estimació per màxima versemblança PRHLT-DSIC-UPV 11 ! ! Capítol 2. Modelat de llenguatges d’n-grames apareguen probabilitats 0per a n-grames que sí que estan presents a la població. Per tant caldrà redistribuir la massa de probabilitat de tal forma que s’ajuste millor a l’univers, tot i que això supose un pitjor ajustament al conjunt d’entrenament, evitant probabilitats 0per a paraules que no s’hagen vist durant l’entrenament. Les tècniques de suavitzat que presentem a continuació realitzen aquesta redistribució. 2.2.1 Tècniques de suavitzat Suavitzat additiu La forma més simple de resoldre el problema de les probabilitats 0 seria suposar que qualsevol paraula ha estat una mica més freqüent del que realment ho ha estat, per fer-ho afegim un factor δacadarecompte,amb0<δ<1típicament. Per simplificar la notació, a partir d’ara expressarem wi...w jcom wj i.Així,calcularem padd(wi|wi−1 i−n+1)= δ+c(wi i−n+1) δ|V|+!wic(wi i−n+1)(2.2) on Vés el vocabulari, el conjunt de totes les paraules considerades. Aquest mètode tan bàsic no sol ser suficientment bo ja que pot arribar a distorsionar molt la distribució original. Suposem les paraules w1iw2tals que c(w1)=10ic(w1w2)=10.És evident que després de w1sempre (o, si més no, gairebé sempre) apareixerà w2,idefet, l’estimació per màxima versemblança així ho indicaria p(w2|w1)=c(w1w2) c(w1)=10 10 =1. En canvi fent servir un suavitzat additiu amb un diccionari de 200 paraules i δ=1 la probabilitat nova seria p(w2|w1)= c(w1w2)+δ δ|V|+c(w1)=11 210 =0.052,quenoescorrespon alarealitatquehavíemobservat. Descompte absolut Quan hi ha poques dades d’entrenament pot ser difícil estimar directament la probabilitat d’un n-grama p(wi|wi−1 i−n+1),noobstant,espotferservirlainformacióde l’(n−1)-grama corresponent, és a dir, p(wi|wi−1 i−n+2),jaqueaquestahauràestatestimada a partir de més dades. Una bona forma de combinar les probabilitats dels n-grames i dels (n−1)-grames és interpolant segons el model presentat per [JM80]. A[BDPDP +92] donen una forma elegant de realitzar aquesta interpolació: pinterp(wi|wi−1 i−n+1)=λwi−1 i−n+1 pML(wi|wi−1 i−n+1)+(1−λwi−1 i−n+1)pinterp(wi|wi−1 i−n+2)(2.3) Partint d’aquesta idea, el suavitzat per descompte absolut [NE91] [NEK94], en lloc de multiplicar la màxima versemblança pML(wi|wi−1 i−n+1)per un factor λwi−1 i−n+1 , descompta una quantitat fixa Dals recomptes diferents de 0,mentrequelapart corresponent a la distribució d’ordre menor és manté igual: pabs(wi|wi−1 i−n+1)=max{c(wi i−n+1)−D,0} !wic(wi i−n+1)+(1−λwi−1 i−n+1 )pabs(wi|wi−1 i−n+2)(2.4) 12 PRHLT-DSIC-UPV ! ! 2.2. Construcció de models de llenguatge Podem observar que, en restar Dhem anat guanyant una massa de probabilitat. Aquesta és la massa que distribuirem de forma uniforme entre tots els n-grames. Aquest guany que ara li correspon a cada un dels n-grames, que és el valor de 1− λwi−1 i−n+1 ,ve donat per l’expressió 1−λwi−1 i−n+1 =D !wic(wi i−n+1)N1+(wi−1 i−n+1 •) La funció N1+(wi−1 i−n+1 •)que apareix a l’equació 2.2.1 indica el nombre de paraules diferents que poden aparèixer a la posició del punt •,ésadir,elnombredecontexts diferents que poden acompanyar a wi−1 i−n+1.Formalmenthopodemdefiniraixí: N1+(wi−1 i−n+1 •)=|{wi:c(wi−1 i−n+1wi)>0}| (2.5) Kneser-Ney Aquest suavitzat, introduït per Kneser i Ney l’any 1995 [KN95], és una extensió del descompte absolut on la distribució d’ordre menor, que s’utilitza quan la d’ordre major és nul·la o gairebé nul·la, es construeix d’una manera nova optimitzada per a aquests casos. El següent exemple pot ajudar a entendre la idea en què es basa Kneser-Ney. En un text en valencià la paraulayork podria ser prou comú, però amb la particularitat que la majoria de vegades anirà precedida per la paraula nova.Elsalgorismes que hem vist fins ara calculen la probabilitat dels unigrames en funció de la seua freqüència i per tant en eixos casos assignaran a p(york)un valor alt. Intuïtivament podem pensar que potser és millor donar-li a l’unigrama york una probabilitat baixa ja que només apareix acompanyat de la paraula nova, cas en el qual serà el model de bigrames que modelarà correctament la probabilitat. El suavitzat de Kneser-Ney aconsegueix modelar aquesta idea intuïtiva fent la probabilitat de l’unigrama proporcional no al nombre de vegades que apareix la paraula, sinó al nombre de paraules diferents que el precedeixen. La probabilitat pKN(wi|wi−1 i−n+1)segons el suavitzat de Kneser-Ney queda així: pKN(wi|wi−1 i−n+1)=max{c(wi i−n+1)−D,0} !wic(wi i−n+1)+D !wic(wi i−n+1)N1+(wi−1 i−n+1•)pKN(wi|wi−1 i−n+2) (2.6) Aquesta equació és pràcticament igual que l’equació 2.4, encara que aquí canviarà la forma de calcular el cas base de la recursió: pKN(wi)=N1+(•wi) N1+(••) On N1+(•wi)és el nombre de contexts diferents que precedeixen a wi,iN1+(••) és la suma per a cada wide N1+(•wi),esadir: PRHLT-DSIC-UPV 13 ! ! Capítol 2. Modelat de llenguatges d’n-grames N1+(•wi)=|{wi−1:c(wi−nwi)>0}| N1+(••)=$ wi N1+(•wi) Modified Kneser-Ney Chen i Goodman proposen a [CG99] una modificació de l’algorisme de Kneser-Ney amb molt bons resultats. La proposta consisteix a no fer servir un únic valor Dper als descomptes, sinó que s’utilitzaran tres paràmetres diferents D1,D2iD3+ en funció de si l’n-grama ha aparegut una, dues o tres o més vegades així la fórmula del suavitzat queda com segueix: pKN(wi|wi−1 i−n+1)=c(wi i−n+1)−D(c(wi i−n+1)) !wic(wi i−n+1)+γ(wi−1 i−n+1)pKN(wi|wi−1 i−n+2)(2.7) on D(c)=         0si c=0 D1si c=1 D2si c=2 D3+ si c≥3. Per aconseguir que la distribució sume 1 definim γ(wi−1 i−n+1)així: γ(wi−1 i−n+1)=D1N1(wi−1 i−n+1 •)+D2N2(wi−1 i−n+1 •)+D3+N3+(wi−1 i−n+1 •) !wic(wi i−n+1) Ací, Nk(wi−1 i−n+1 •)és el nombre de contexts que apareixen exactament kvegades precedits de wi−1 i−n+1 iNk+(wi−1 i−n+1 •)és el nombre de contexts que apareixen komés vegades. Diferències entre tècniques de backoffid’interpolació L’equació 2.3 presentava el model bàsic d’un suavitzat que combinava probabilitats d’ordre superior amb probabilitats d’ordre inferior. Aquesta forma de combinar probabilitats s’anomena interpolació. La interpolació consisteix a fer una suma ponderada entre les probabilitats d’ordre superior i d’ordre inferior. L’equació següent mostra una altra forma de representar una interpolació que s’ajusta més a la forma que tenen les equacions que hem anat veient als apartats anteriors: p(wi|wi−1 i−n+1)=τ(wi|wi−1 i−n+1)+γ(wi−1 i−n+1)p(wi|wi−1 i−n+2)(2.8) En aquest cas, tant per als n-grames que no han aparegut mai com per als que sí, calculem la seua probabilitat a partir de les distribucions d’ordre superior i d’ordre 14 PRHLT-DSIC-UPV ! ! 2.3. Interpolació de models de llenguatge inferior. En contraposició a aquest model, el model de backoffnomés fa servir les probabilitats d’ordre inferior en cas que c(wi i−n+1 =0: p(wi|wi−1 i−n+1)=)τ(wi|wi−1 i−n+1)si c(wi i−n+1)>0 γ(wi−1 i−n+1)p(wi|wi−1 i−n+2)si c(wi i−n+1)=0.(2.9) El model interpolat en general funciona millor [CG99] i és el que s’ha triat per als experiments. Cal no confondre la interpolació en el context del suavitzat de models de llenguatge amb la interpolació de models que explicarem tot seguit. 2.3 Interpolació de models de llenguatge La interpolació de models és una forma de combinar models de llenguatge per crear-ne un de nou. La forma de combinar-los en la qual ens centrem en aquest projecte és la interpolació lineal. Aquesta consisteix en la suma ponderada dels diferents models a combinar. pLM (wi|wi−1 i−n+1)=λ1pLM1(wi|wi−1 i−n+1)+...+λnpLMn(wi|wi−1 i−n+1) = n $ k=1 λkpLMk(wi|wi−1 i−n+1) L’objectiu en interpolar dos o més models és trobar aquells valors de λque fan que la perplexitat (veure secció 2.4) siga mínima. Per obtenir aquests valors fer servir EM, si considerem les λcom si foren les probabilitats de cadascun dels models en el model interpolat: pLM (wi|wi−1 i−n+1)= n $ k=1 p(LM)pLMk(wi|wi−1 i−n+1)(2.10) 2.4 La perplexitat com a mesura d’avaluació d’un model de llenguatge Per poder comparar entre diferents models de llenguatge farem servir una mesura anomenada perplexitat que es defineix de la forma següent: donat un conjunt de prova T={t(1),t (2),...,t (M)}amb Mfrases i Nparaules en total, definim la perplexitat PPp(T)del model psobre Tcom: PPp(T)=2 −1 NPM m=1 log2p(t(m))(2.11) En el cas concret dels n-grames podrem expandir la fórmula anterior: PPp(T)=2 −1 NPM m=1 log2(QK(m) k=1 p(t(m) k|t(m) k−n+1...t(m) k−1)) =2 −1 NPM m=1 PK(m) k=1 log2p(t(m) k|t(m) k−n+1...t(m) k−1) (2.12) PRHLT-DSIC-UPV 15 ! ! Capítol 2. Modelat de llenguatges d’n-grames Podem entendre la perplexitat com el nombre de possibles paraules que podran aparèixer de mitjana després d’un prefix donat [AF10]. La perplexitat depèn de dos factors: l’eficiència del model i la complexitat de la tasca. Així, si comparem els models sota les mateixes circumstàncies és evident que a menys baixa perplexitat millor serà el model. Per exemple, si estem comparant diferents tècniques de suavitzat podrem considerar millor aquella que presente una menor perplexitat. No obstant això, una millora en la perplexitat no sempre indicarà una millora en el rendiment del sistema. L’exemple següent mostrarà un cas molt evident on pot baixar-se la perplexitat fins a 1, sense que això implique que el sistema és millor. Suposem que entrenem un model de llenguatge en base a un vocabulari buit. Qualsevol paraula serà interpretada com el símbol de paraula desconeguda <unk>iper tant el model de llenguatge assignarà probabilitat 1ap(<unk>),p(<unk>|< unk >),p(<unk>|<unk><unk>), etc. Quan calculem la perplexitat, a causa de fer servir el vocabulari buit, interpretarem també qualsevol símbol com a <unk>. És evident que la probabilitat de qualsevol frase de la forma <unk>...<unk> serà 1també. Com que el logaritme d’1és zero, al final tindrem que la perplexitat és 20=1,queéslaperplexitatmésbaixapossible. Aquest sistema, efectivament és molt bo predient que després d’un símbol desconegut vindrà un altre símbol desconegut, però no és un bon model per al reconeixement, ja que no és capaç de predir cap paraula. No obstant aquest problema, com ja hem dit, si comparem els models fent servir el mateix vocabulari, la perplexitat sí que serà una bona mesura per avaluar models de llenguatge. 2.5 Eines informàtiques per al modelat de llenguatges Per treballar amb els models de llenguatge s’ha fet servir SRILM [Sto02]. SRILM és un conjunt d’eines informàtiques per a la construcció i l’aplicació de models de llenguatge estadístics per al seu ús en el reconeixement de la parla i la traducció automàtica entre d’altres. El sistema ha estat en desenvolupament des de l’any 1995 a l’SRI Speech Technology and Research Laboratory. Consta d’una sèrie de scripts iprogramesqueensserviranperconstruirmodels,interpolar-losicalcular perplexitats. Les tres eines que s’han fet servir en aquest projecte són: ngram-count Aquest programa s’encarrega de totes les tasques relacionades amb la construcció dels models, bàsicament •Generar un model de llenguatge en format ARPA (secció 2.5.1) a partir d’un 16 PRHLT-DSIC-UPV ! ! 2.5. Eines informàtiques per al modelat de llenguatges text o d’un fitxer amb els recomptes dels n-grames. Permet especificar l’ordre del model (unigrames, bigrames, trigrames, etc.) •Aplicar diferents tipus de suavitzat com el Kneser-Ney o el modified Kneser-Ney, tant en les seues versions de backoffcom en la forma interpolada. •Calcular els descomptes per al Kneser-Ney. •Permet especificar un vocabulari. ngram Amb aquest programa podrem realitzar les tasques d’aplicació de models de llenguatge. L’ús que en farem nosaltres serà per calcular la perplexitat d’un text donat un model de llenguatge i calcular un model de llenguatge interpolat a partir dels models de llenguatge bàsics i dels valors de les λ. Al’horadecalcularlaperplexitatelprogramaperdefectemostraràunmissatge indicant entre d’altres dades el nombre de paraules del text, el nombre de frases i la perplexitat. Ara bé, una opció especialment interessant és l’opció -debug 2 que mostrarà per a cada frase la descomposició en n-grames i la probabilitat de cada un d’ells, així com la perplexitat de cada una de les frases, a més de la perplexitat total del text. Aquesta informació serà necessària per calcular els valors de λper a una interpolació de perplexitat mínima. Una altra opció que ens interessa és -skipoovs. Per defecte, si trobem una paraula que no pertany al vocabulari calculem la seua probabilitat igual que amb les paraules que si que hi pertanyen però que no han aparegut mai a l’entrenament. L’opció -skipoovs ens permet saltar eixes paraules i no tindre-les en compte en el càlcul de la perplexitat. compute-best-mix Aquest script,donatsnmodels de llenguatge, calcularà els valors de λ1...λ ntals que la perplexitat siga mínima. El que necessita que li passem aquest script és l’eixida que havíem obtingut prèviament fent servir ngram amb l’opció -debug 2. 2.5.1 El format ARPA de models de llenguatge Els models de llenguatge amb els quals treballarem estan en format ARPA, que és el format amb el qual treballa SRILM i un dels formats utilitzats de forma més comuna. Un fitxer en format ARPA és un fitxer de text pla i és prou senzill d’entendre. Veiem un esquema d’un fitxer complet: \data\ ngram 1=n1 ngram 2=n2 PRHLT-DSIC-UPV 17 ! ! Capítol 2. Modelat de llenguatges d’n-grames ... ngram N=nN \1-grams: p w [bow] ... \2-grams: p w1 w2 [bow] ... \N-grams: pw1...wN ... \end\ El fitxer va introduït per la paraula clau data seguit d’nlínies que indiquen el nombre d’n-grames de cada ordre. A continuació trobem els n-grames, un per línia, separats en diferents seccions segons l’ordre, on cada secció ve precedida per la paraula clau N-grams:. Per cada un dels n-grames tenim tres camps, el primer indica el logaritme en base 10 de la probabilitat condicional de l’n-grama, el segon camp són les nparaules que formen l’n-grama i el tercer camp, opcional, és el logaritme en base 10 del backoffper aeixen-grama. El fitxer acaba amb la paraula clau end que indica el final del model. 18 PRHLT-DSIC-UPV ! ! Capítol 3 Descripció del corpus Al llarg d’aquest capítol presentarem els dos corpus de dades que s’han fet servir per l’entrenament i l’experimentació al llarg del desenvolupament del projecte. En primer lloc explicarem què són i quines característiques tenen els fitxers d’n-grames de Google, i a continuació introduirem la plataforma poli[Media]. 3.1 N-grames de Google L’Ngram Viewer de Google books és una eina gràfica que mostra estadístiques sobre l’ús de paraules o frases (n-grames) en els 5.2 milions de llibres que Google tenia digitalitzats fins l’any 2008. La base de dades on es cerquen les paraules va ser creada l’any 2009 als Google labs i conté 500G de paraules en diferents idiomes publicades a llibres des de l’any 1500 fins al 2008. Aquesta base de dades està disponible a internet sota llicència Creative Commons.Enaquestprojectes’hanfetservirnomés els n-grames en castellà. Es pot trobar més informació i detalls sobre la construcció del corpus a [MSA+11]. 3.1.1 Format i característiques del corpus Acausadel’enormequantitatd’n-grames el corpus està dividit en diferents fitxers cada un dels quals conté un fragment del corpus complet. Convé ressaltar que cada fitxer conté únicament una mida n, és dir, a un fitxer no hi haurà barrejats 1-grames, 2-grames i 3-grames. Així mateix, l’ordre màxim dels n-grames que podem trobar és 5. Cada un dels fitxers és un fitxer de text comprimit amb zip que conté un n-grama per línia i cada camp està separat mitjançant l’ús de tabuladors. A continuació mostrem el format de les línies. ngram TAB year TAB match_count TAB page_count TAB volume_count NEWLINE El primer camp (ngram)ésl’n-grama,ambcadaunadelesnparaules que el componen separades fent ús d’espais. El camp year indica l’any a què fa referència el recompte. 19 ! ! Capítol 4. Experimentació corpus poli[Media] s’identifica el locutor per saber si és home o dona. Aquest tipus d’informació, que pot ser útil o necessària per a altres tasques no és interessant per al modelat de llenguatges, on l’única cosa que necessitem és una llista de paraules i les seues freqüències, per tant serà desitjable aplicar un preprocés per tal de mantenir només aquelles dades que ens siguen d’interès, per facilitar així el treball amb els fitxers. 4.1.1 Preprocés dels fitxers de Google Si recordem els fitxers de google (secció 3.1) teníem les aparicions de cada n-grama separades per anys i per a cada any, a més del nombre de vegades que apareix l’n-grama també s’emmagatzemava el nombre de llibres i de pàgines on apareixia. L’única dada que ens interessa és la freqüència, per tant la resta de camps els desestimarem. De cara al reconeixement de veu, també ens és igual si la paraula hola ha aparegut com hola,Hola oHOLA.Éslamateixaparaulaiespronunciaigual,pertanttambécaldrà aplicar-li un filtrat als n-grames per passar-los a minúscules. Els símbols de puntuació tampoc no es pronuncien i per tant tampoc no els tindrem en compte. També hem decidit filtrar els accents, de forma que la paraula comprensión apareixerà com comprension.Unaaltradecisióques’hapreshasigutometreelsnúmeros,jaque aquests no es pronuncien. Una vegada fet tot això, tindrem diverses entrades per a una mateixa paraula i caldrà combinar-les. Suposem l’exemple següent: él 2000 5 3 4 él 2001 7 2 2 Él 2000 2 2 2 ÉL 2000 3 2 1 ÉL 2001 4 2 3 el 2000 13 7 4 el 2001 19 5 12 El 2000 7 3 5 El 2001 5 4 5 EL 2000 2 1 2 EL 2001 3 2 2 Una vegada preprocessat obtindrem el següent: el 5 el 7 el 2 el 3 el 4 el 13 el 19 el 7 26 PRHLT-DSIC-UPV ! ! 4.2. Construcció del vocabulari el 5 el 2 el 3 I totes aquestes entrades d’el s’hauran de combinar en una única, ja que assumim que totes es pronuncien igual: el 70 Per últim caldrà filtrar per vocabulari, de forma que aquells n-grames que continguen paraules de fora del vocabulari no es tindran en compte. Al final, per motius que explicarem més endavant, caldrà guardar dues versions dels fitxers de recomptes, una amb filtratge per vocabulari i una altra sense filtrar. 4.1.2 Preprocessat de poli[Media] En el cas de poli[Media] recordem que el nostre corpus està format per fitxers XML amb les seues etiquetes corresponents, les quals caldrà eliminar. Un cas especial d’aquestes etiquetes són les marques de temps (<Sync time="XXX"/>), que si que caldrà tenir-les en compte quan es faça la separació per transparències. Amésd’eliminarlesetiquetesd’XMLtambéhauremd’eliminarlesmarquesde silenci ([sonido de fondo] i/SF//) així com les marques que indiquen una disfluència /so pronunciat/paraula correcta/,quedant-nosenaquestcasambl’expressió de la dreta. Aquesta part només serà necessària en les transcripcions de l’àudio; per a les transparències no serà necessària. El següent pas serà eliminar signes de puntuació i accents i passar-ho tot a minúscules, seguint els mateixos criteris que havíem seguit amb Google, de forma que els dos corpus siguen compatibles. Per últim caldrà separar les transcripcions i les transparències de forma que cada un dels fitxers resultants corresponga a una única diapositiva. Això és necessari per alatascadeGoogle+poli[Media]+transparències+transparènciessincronitzades. 4.2 Construcció del vocabulari El nostre vocabulari estarà format per: •Els 50000 unigrames més freqüents de Google després del preprocés. •Totes les paraules que apareguen al conjunt d’entrenament de poli[Media] •Les paraules que apareixen a les transparències El vocabulari final, unint aquests tres conjunts de paraules, consta de 62792 paraules. PRHLT-DSIC-UPV 27 ! ! Capítol 4. Experimentació 4.3 Experiments bàsics Aquests són els models de partida. 4.3.1 Model de llenguatge de Google Per calcular el model de Google ho farem a partir dels recomptes que hem generat en el preprocés. Primer hem de calcular els descomptes del Kneser-Ney. Els descomptes es calcularan en base al corpus de Google complet, aquell que no havíem filtrat per vocabulari. Amb els descomptes calculats ja podem calcular el ML, ara sí, a partir dels recomptes filtrats de forma que només contemplarem n-grames on totes les paraules formen part del vocabulari. Amb el model construït calcularem la perplexitat del model sobre dev isobretest. En tots els casos calcularem la perplexitat fent servir l’opció skipoovs itambésense fer-la servir, per poder comparar com es comporten els models quan no es tenen en compte les paraules que no pertanyen al vocabulari. La taula 4.1 mostra els resultats obtinguts. Perp. sense l’opció skipoovs Perp. amb l’opció skipoovs Perp. sobre dev 1295.62 1019.11 Perp. sobre test 1907.54 1554.07 Taula 4.1: Resultats de calcular la perplexitat per al ML de Google sobre dev itest 4.3.2 Model de llenguatge de poli[Media] Calculem els descomptes a partir del textd’entrenamenticonstruïmelmodelde llenguatge. Després calcularem la perplexitat sobre dev isobretest.Lataula4.2 mostra els resultats. Perp. sense l’opció skipoovs Perp. amb l’opció skipoovs Perp. sobre dev 290.79 291.98 Perp. sobre test 320.14 324.89 Taula 4.2: Resultats de calcular la perplexitat per al ML de poli[Media] sobre dev itest 4.3.3 Model interpolat de Google + poli[Media] Els models de llenguatge de Google i de poli[Media] són els que ja havíem calculat a les seccions 4.3.1 i 4.3.2 respectivament. Una vegada s’han obtingut els models, cal 28 PRHLT-DSIC-UPV ! ! 4.4. Model interpolat poli[Media] + transparències generar els fitxers de debug (secció 2.5) sobre els vídeos de dev, i a partir dels resultats obtenir els valors λGiλpque minimitzen la perplexitat sobre el conjunt de dev.Per obtenir-los es fa servir la interpolació lineal vista a la secció 2.3. Els valors obtinguts són els que es presenten a la taula 4.3. λsense skipoovs λamb skipoovs λG0.384 0.399 λp0.616 0.601 Taula 4.3: Valors de λGiλpque minimitzen la perplexitat sobre dev Amb els valors de λGiλpcalculats generarem el nou model pMLG+p(wi|wi−1 i−n+1)= λGpMLG(wi|wi−1 i−n+1)+λppMLp(wi|wi−1 i−n+1)i fem el càlcul de la perplexitat sobre els conjunts de dev idetest,elsresultatsdelqualestrobenalataula4.4. Perp. sense l’opció skipoovs Perp. amb l’opció skipoovs Perp. sobre dev 170.20 166.94 Perp. sobre test 204.92 203.30 Taula 4.4: Resultats de calcular la perplexitat per al ML Google + poli[Media] sobre dev itest Amb aquests tres models donem per acabatselsexperimentsbàsics.Elmodelde Google + poli[Media] serà el que farem servir com a base amb el qual compararem els resultats que obtinguem amb els nostres models adaptats. 4.4 Model interpolat poli[Media] + transparències La primera prova d’adaptació que farem serà utilitzar per a cada vídeo el model de llenguatge de poli[Media] interpolat amb el model de llenguatge de les transparències corresponents. El model de llenguatge de poli[Media] no varia i serà el mateix de la secció 4.3.2. Per a les transparències, cal generar un ML de llenguatge diferent per a cada un dels vídeos. Atesa la poca extensió de cada un dels vídeos pot ser que la quantitat de dades siga insuficient per a poder calcular els descomptes de modified Kneser-Ney. Si es dóna el cas, s’intentarà fer servir el Kneser-Ney original i, si això no fos, possible es farà servir un descompte constant de 0.8. El fet que els fragments siguen tan menutsfaràquepotserunmodeldetrigrames funcione pitjor que un model d’ordre menor. És per això que es generaran models de llenguatges per a unigrames, bigrames i trigrames per, posteriorment, saber quin PRHLT-DSIC-UPV 29 ! ! Capítol 4. Experimentació model convé més quedar-se. Amb tots els models ja entrenats caldrà obtenir els fitxers de debug.Perapoli[Media] serveix el que ja teníem calculat de la secció 4.3.2. En el cas dels vídeos caldrà aplicar cada ML al vídeo corresponent. Això ens generarà un fitxer de debug per a cada vídeo però, per poder fer la interpolació, ens cal tenir el fitxer de debug del text complet, per tant caldrà combinar tots els fitxers generats per obtenir un nou fitxer amb la perplexitat del ML dels vídeos per al text complet. Els fitxers de debug també s’hauran de generar per als models d’unigrames, bigrames i trigrames. Amb els fitxers de debug dels dos models ja construïts només cal calcular les lambdes de perplexitat mínima. Una vegada sapiguem quina és aquesta perplexitat podrem decidir quin model funciona millor per als vídeos, si unigrames, bigrames o trigrames. Els valors de les λilesperplexitatsobtingudesencadacasestrobenales taules 4.5 i 4.6. Per al càlcul de les perplexitats en test caldrà calcular-les individualment per a cada vídeo i després obtenir la perplexitat total, de la mateixa forma que havíem fet per obtenir la de dev. λ1-grames λ2-grames λ3-grames λp0.761 0.664 0.648 λt0.239 0.336 0.352 λpamb skipoovs 0.753 0.665 0.655 λtamb skipoovs 0.247 0.335 0.345 Taula 4.5: Valors de λpiλtque minimitzen la perplexitat sobre dev 1-grames 2-grames 3-grames Perp. sobre dev 190.35 130.71 117.93 Perp. sobre dev amb skipoovs 200.85 133.97 117.18 Perp. sobre test --127.70 Perp. sobre test amb skipoovs --123.95 Taula 4.6: Resultats de calcular la perplexitat per al ML poli[Media] + transparències sobre dev itest 4.5 Model interpolat Google + poli[Media] + transparències El desenvolupament d’aquest experiment és igual que l’anterior però afegint-hi el model de Google. Els valors de λobtinguts i les perplexitats es mostren a les taules 30 PRHLT-DSIC-UPV ! ! 4.6. Model interpolat Google + poli[Media]+transparències+transparències sincronitzades 4.7 i 4.8. λ1-grames λ2-grames λ3-grames λG0.354 0.293 0.278 λp0.488 0.437 0.429 λt0.158 0.270 0.293 λGamb skipoovs 0.353 0.296 0.283 λpamb skipoovs 0.480 0.435 0.432 λtamb skipoovs 0.166 0.269 0.285 Taula 4.7: Valors de λG,λpiλtque minimitzen la perplexitat sobre dev 1-grames 2-grames 3-grames Perp. sobre dev 135.81 101.73 92.85 Perp. sobre dev amb skipoovs 143.21 103.73 91.61 Perp. sobre test --105.07 Perp. sobre test amb skipoovs --101.06 Taula 4.8: Resultats de calcular la perplexitat per al ML Google + poli[Media] + transparències sobre dev itest 4.6 Model interpolat Google + poli[Media] + transparències + transparències sincronitzades Aquest és l’experiment final amb el qual esperem obtenir la mínima perplexitat. El procediment serà molt similar als dos anteriors, però caldrà dividir el corpus a nivell de transparència, enlloc d’a nivell de vídeo. Igual que passava en el cas dels vídeos, itenintencomptequearacadamodelesconstruiràapartird’unaunitatd’extensió molt més menuda com és una transparència, també caldrà construir models de diferents ordres per a cada una de les transparències i triar aquell que tinga un millor comportament. Pel mateix motiu també pot passar que a l’hora de construir el model no hi haja informació per calcular els descomptes de Kneser-Ney i de modified Kneser-Ney, i en aquest cas caldria fer servir un descompte constant. Com que a l’experiment anterior havíem vist que els millors resultats s’obtenien construint models de trigrames per als vídeos, per aquest experiment s’han fet servir directament aquests models i s’ha variat només l’ordre dels models sincronitzats a nivell de transparència. 4.7 Resum dels resultats Fets tots els experiments, a la taula 4.11podemveurecom,amesuraqueelmodel s’adapta millor al vídeo, les perplexitats es van reduint. A la figura 4.1 es pot veure, de forma més gràfica, aquesta evolució per als models sense skipoovs. PRHLT-DSIC-UPV 31 ! ! λ1-grames λ2-grames λ3-grames λG0.272 0.269 0.269 λp0.416 0.408 0.408 λt0.266 0.220 0.197 λs0.046 0.103 0.126 λGamb skipoovs 0.272 0.272 0.275 λpamb skipoovs 0.407 0.404 0.409 λtamb skipoovs 0.245 0.202 0.183 λsamb skipoovs 0.076 0.122 0.133 Taula 4.9: Valors de λG,λp,λtiλsque minimitzen la perplexitat sobre dev 1-grames 2-grames 3-grames Perp. sobre dev 89.45 85.52 84.10 Perp. sobre dev amb skipoovs 100.17 90.86 85.11 Perp. sobre test --105.98 Perp. sobre test amb skipoovs --101.89 Taula 4.10: Resultats de calcular la perplexitat per al ML Google + poli[Media] + transparències + sincronització sobre dev itest GpG+pp+tG+p+tG+p+t+s Sense skipoovs 1907.54 320.14 204.92 117.93 105.07 105.98 Amb skipoovs 1554.07 324.89 203.30 117.18 101.06 101.89 Taula 4.11: Evolució de les perplexitats segons el ML utilitzat ! ! Google poli[Media] G+P P+V G+P+V G+P+V+S 0 200 400 600 800 1000 1200 1400 1600 1800 2000 PPL sense skipoovs Figura 4.1: Evolució de la perplexitat amb els diferents models provats ! ! ! ! Capítol 5 Conclusions En aquest projecte preteníem millorar la qualitat de les transcripcions automàtiques en el context dels vídeos amb xarrades docents. Per això volíem aprofitar el fet que aquest tipus de xarrades solen anar acompanyades de transparències. En el context del reconeixement automàtic de la parla hi ha dos models que juguen un paper fonamental, el model acústic i el model de llenguatge. El nostre objectiu era crear models de llenguatge específics per a cada vídeo combinant, mitjançant la tècnica de la interpolació, models de llenguatge més general amb models extrets a partir de les transparències. Per avaluar els models obtinguts farem servir la perplexitat, de manera que, com més baix siga el valor serà millor el resultat. Per treballar amb models de llenguatge s’han fet servir les eines de modelatge de llenguatges SRILM, que permeten generar models de llenguatge a partir d’un text, d’un fitxer amb recomptes o mitjançant la interpolació de dos o més models i aplicar diferents tècniques de suavitzat. Les eines d’SRILM també permeten calcular les perplexitats dels models sobre un text i calcularelsvalorsdelspesosperalainterpolació que minimitzen la perplexitat. S’han fet servir dos corpus de dades: d’una banda, els fitxers d’n-grames de Google, extrets dels llibres de Google books des de 1500 fins a 2008, s’han utilitzat per entrenar un model general; d’altra, banda el corpus poli[Media] format per 739 vídeos d’aquesta plataforma, així com les transparències de 49 d’ells corresponents als conjunts de dev idetest. Sobre aquests conjunts de dades s’han portat a terme una sèrie d’experiments consistents a calcular la perplexitat que tenen diferents models de llenguatge sobre el conjunt de test. Els primers experiments, sense adaptació específica als vídeos, corresponien als models de llenguatge de Google, de poli[Media] i a la interpolació de Google i poli[Media], aquest darrer amb una perplexitat de 204 sobre test.Apartir d’aquest punt s’han realitzat tres experiments més: •Interpolant poli[Medi] amb un model adaptat a nivell de vídeo. 35