Migliore risposta
La gente legge i testi. I testi sono costituiti da frasi e anche frasi da parole. Gli esseri umani possono comprendere facilmente le strutture linguistiche e il loro significato, ma le macchine non hanno ancora abbastanza successo nella comprensione del linguaggio naturale. Quindi, proviamo a insegnare alcune lingue alle macchine come facciamo per un bambino delle elementari. Questo è il concetto principale; le parole sono elementi di base, significativi con la capacità di rappresentare un significato diverso quando sono in una frase. A questo punto, teniamo presente che a volte i gruppi di parole forniscono più vantaggi di una sola parola quando si spiega il significato. Ecco la nostra frase “ Ho letto un libro sulla storia dellAmerica. ” La macchina vuole ottenere il significato della frase separandola in piccoli pezzi. Come dovrebbe farlo? 1. Può considerare le parole una per una. Questo è unigram ; ogni parola è un grammo. “Io”, “letto”, “un”, “libro”, “su”, “la”, “storia”, “di”, “America” 2. Può riguardare parole due alla volta. Questo è bigram ( digram ); ogni due parole adiacenti creano un bigram. “Ho letto”, “letto un”, “un libro”, “libro su”, “sulla”, “storia”, “storia di”, “dellAmerica” 3. Può riguardare parole tre alla volta. Questo è trigram ; ogni tre parole adiacenti creano un trigramma. “Ho letto un”, “letto un libro”, “un libro su”, “libro sulla”, “storia”, “storia di”, “storia dAmerica”
Risposta
Forse la tua domanda è più qualcosa come “cosè un bigram / trigram” e perché dovrei averne bisogno?
Se sì, ecco la mia risposta: lidea è di fare (statistica ) previsioni su ciò che sta accadendo in una frase. Le cose che accadono potrebbero essere che una parola particolare venga visualizzata successivamente o che un elemento appartenente a una particolare classe di parole venga visualizzato dopo (come: mi aspetto davvero un verbo dopo “Il ragazzo ha detto che aveva …”. Quindi, idealmente, la tua previsione dovrebbe essere migliore se prendi in considerazione tutto dallinizio * il * fino a * aveva *, che formerebbe un 7 grammi (sei predittori e il settimo da prevedere). Il problema è che i dati diventano troppo scarsi per fare previsioni basate su n + 1 grammi, quando n è un numero maggiore di … 2 (o forse 4)! Lesempio sopra era un 6 + 1 grammo. Quindi le persone lavorano con approssimazioni come bigram (1 + 1 grammi ) e trigrammi (2 + 1 grammi). Un bigram fa una previsione per una parola basata su quella precedente e un trigramma fa una previsione per la parola basata sulle due parole precedenti.
Bene , infatti, non ci sono applicazioni reali per i bigram (se ricordo bene), ma i trigram funzionano bene. Un unigram consiste solo nella parola, e lunico guadagno che avresti da un unigram w Potrebbe essere che tu abbia la frequenza della parola come predittore, invece di consentire che tutto assoluto si verifichi con uguale distribuzione. (Per linglese, gli unigrammi ti danno qualcosa come “la parola più probabile è sempre” il “; il bigram ti dà qualcosa come” avere “non è proprio così probabile dopo” il “, e un trigramma ti dà” mela “è del tutto possibile dopo “il marcio”.