# Model de llenguatge n-gram de paraules

Un model de llenguatge de paraula n-gram és un model de llenguatge purament estadístic. Ha estat substituït per models basats en xarxes neuronals recurrents, que han estat substituïts per grans models de llenguatge. Es basa en el supòsit que la probabilitat de la següent paraula en una seqüència depèn només d'una finestra de mida fixa de paraules anteriors. Si només es considerava una paraula anterior, s'anomenava model bigram; si dues paraules, un model de trigrama; si n−1 paraules, un model n -gram. Es van introduir fitxes especials per indicar l'inici i el final d'una frase $\langle s\rangle$ i $\langle /s\rangle$.
Per evitar que s'assigni una probabilitat zero a paraules no vistes, la probabilitat de cada paraula és lleugerament inferior al seu recompte de freqüència en un corpus. Per calcular-lo, es van utilitzar diversos mètodes, des del simple suavització "afegir-ne" (assignar un recompte d'1 a n-grams no vists, com a anterior no informatiu) fins a models més sofisticats, com ara models de descompte o retrocés Good–Turing.

## Model Unigram

Un cas especial, on n=1, s'anomena model unigrama. La probabilitat de cada mot d'una seqüència és independent de les probabilitats d'una altra paraula de la seqüència. La probabilitat de cada mot de la seqüència és igual a la probabilitat del mot en un document sencer.
$P_{\text{uni}}(t_{1}t_{2}t_{3})=P(t_{1})P(t_{2})P(t_{3}).$
El model consta d'unitats, cadascuna tractada com un autòmat finit d'un estat. Els mots amb les seves probabilitats en un document es poden il·lustrar de la següent manera.
| Mot | La seva probabilitat al doc |
| a | 0.1 |
| món | 0,2 |
| m'agrada | 0,05 |
| nosaltres | 0,05 |
| compartir | 0,3 |
La massa total de probabilitats de paraules distribuïdes pel vocabulari del document és 1.
$\sum _{\text{mot in doc}}P({\text{mot}})=1$La probabilitat generada per a una consulta específica es calcula com
$P({\text{query}})=\prod _{\text{mott in query}}P({\text{mot}})$Els models Unigram de diferents documents tenen diferents probabilitats dels mots. Les distribucions de probabilitat de diferents documents s'utilitzen per generar probabilitats d'èxit per a cada consulta. Els documents es poden classificar per a una consulta segons les probabilitats. Exemple de models unigrames de dos documents:
| Mot | La seva probabilitat al Doc1 | La seva probabilitat al Doc2 |
| a | 0.1 | 0,3 |
| món | 0,2 | 0.1 |
| m'agrada | 0,05 | 0,03 |
| nosaltres | 0,05 | 0,02 |
| compartir | 0,3 | 0,2 |

## Model Bigram

En una paraula bigrama (n=2) model lingüístic, s'aproxima la probabilitat de la frase que jo vaig veure la casa vermella (I saw the red house)
$P({\text{I, saw, the, red, house}})\approx P({\text{I}}\mid \langle s\rangle )P({\text{saw}}\mid {\text{I}})P({\text{the}}\mid {\text{saw}})P({\text{red}}\mid {\text{the}})P({\text{house}}\mid {\text{red}})P(\langle /s\rangle \mid {\text{house}})$

## Model de trigrama

En un trigrama ( n = 3) model de llenguatge, l'aproximació és
$P({\text{I, saw, the, red, house}})\approx P({\text{I}}\mid \langle s\rangle ,\langle s\rangle )P({\text{saw}}\mid \langle s\rangle ,I)P({\text{the}}\mid {\text{I, saw}})P({\text{red}}\mid {\text{saw, the}})P({\text{house}}\mid {\text{the, red}})P(\langle /s\rangle \mid {\text{red, house}})$
Tingueu en compte que el context del primer n–1 n-grams s'omple amb marcadors d'inici de frase, normalment denotats 
.
A més, sense un marcador de final de frase, la probabilitat d'una seqüència agramatical *Vaig veure que sempre seria més alta que la de la frase més llarga que vaig veure la casa vermella.

## n -grams per a la concordança aproximada

També es van utilitzar n -grams per a la concordança aproximada. Si convertim cadenes (amb només lletres de l'alfabet anglès) en caràcters de 3 grams, obtenim un $26^{3}$ -espai dimensional (la primera dimensió mesura el nombre d'ocurrències de "aaa", la segona "aab", i així successivament per a totes les combinacions possibles de tres lletres). Amb aquesta representació, perdem informació sobre la cadena. Tanmateix, sabem empíricament que si dues cadenes de text real tenen una representació vectorial similar (mesurada per la distància del cosinus ), és probable que siguin similars. També s'han aplicat altres mètriques a vectors de n -grams amb resultats variables, de vegades millors. Per exemple, les puntuacions z s'han utilitzat per comparar documents examinant quantes desviacions estàndard difereix cada n -gram de la seva ocurrència mitjana en una gran col·lecció, o corpus de text, de documents (que formen el vector "de fons"). En cas de recomptes petits, la puntuació g (també coneguda com a prova g) donava millors resultats.
També és possible adoptar un enfocament més basat en principis a les estadístiques dels n -grams, modelant la similitud com la probabilitat que dues cadenes provinguin directament de la mateixa font en termes d'un problema en la inferència bayesiana.

## Altres aplicacions

Els n-grams s'utilitzen en diverses àrees de la informàtica, la lingüística computacional i les matemàtiques aplicades.
S'han utilitzat per:
* dissenyar nuclis que permeten que algorismes d'aprenentatge automàtic, com ara màquines vectorials de suport, aprenguin a partir de dades de cadena
* trobar candidats probables per a l'ortografia correcta d'una paraula mal escrita
* millorar la compressió en algorismes de compressió on una petita àrea de dades requereix n -grams de major longitud
* avaluar la probabilitat que una seqüència de paraules determinada aparegui al text d'una llengua d'interès en sistemes de reconeixement de patrons, reconeixement de veu, OCR (reconeixement òptic de caràcters), reconeixement intel·ligent de caràcters (ICR), traducció automàtica i aplicacions similars.
* millorar la recuperació en els sistemes de recuperació d'informació quan s'espera trobar "documents" similars (un terme per al qual el significat convencional de vegades s'estén, depenent del conjunt de dades) donat un sol document de consulta i una base de dades de documents de referència
* millorar el rendiment de recuperació en l'anàlisi de seqüències genètiques com en la família de programes BLAST
* identificar la llengua en què es troba un text o l'espècie de la qual s'ha extret una petita seqüència d'ADN
* predir lletres o paraules a l'atzar per crear text, com en l'algoritme de premsa dissociada.
* criptoanàlisi

## Referències

* ↑ Bengio, Yoshua; Ducharme, Réjean; Vincent, Pascal; Janvin, Christian The Journal of Machine Learning Research, 3, 01-03-2003, pàg. 1137–1155.
* ↑ Kapadia, Shashank. «Language Models: N-Gram» (en anglès), 19-08-2019. [Consulta: 25 agost 2024].
* ↑ «N-gram Language Models» (en anglès). [Consulta: 25 agost 2024].
* ↑ Lee, Raymond S. T.. N-Gram Language Model (en anglès). Singapore: Springer Nature, 2024, p. 19–42. DOI 10.1007/978-981-99-1999-4_2. ISBN 978-981-99-1999-4.