$$\rightleftharpoonup{xx}$$
$$\longleftharp{xx}$$,
$$\longrightharp{xx}$$,
Il testo code-mixed e code-switched in inglese e Kokborok è stato raccolto manualmente da conversazioni locali e post pubblici disponibili sulle piattaforme social. Non sono state raccolte informazioni personali identificabili o sensibili. Tutte le procedure seguivano linee guida etiche istituzionali.
3. Progettazione e implementazione
3.1 Algoritmo
3.1.1 Per ogni gettone nella Frase (S):
un. Utilizzando il dizionario di frequenza, si calcola la probabilità lessicale Plexi .
b. Sulla base del modello N-gramma, si calcola la probabilitàP del carattere basata sui caratteri
c. interpolazione pesata di entrambi:
Pcombinato = λlexi Plexi + λchar Pchar
3.1.2. La combinazione di probabilità Pcombinata per ogni token è stata memorizzata come probabilità di emissione.
3.1.3. Applicare l'algoritmo di Viterbi:
un. Dato inizialmente con probabilità linguistiche iniziali.
b. Per ogni gettone:
i. Calcolare latransizione P count transition (continuazione nella stessa lingua).
eP switch (probabilità di cambio di lingua).
ii. Selezionare il percorso linguistico e massimizzare la probabilità della sequenza.
3.1.4. Emettere la sequenza linguistica di massima probabilità L con la probabilità complessiva più alta.
3.2 Ambiente computazionale
L'implementazione di tutti gli esperimenti è stata effettuata utilizzando Python 3.10 sulla piattaforma Google Colab. Il sistema utilizzava un insieme di pacchetti Python di base come NumPy, Pandas e Matplotlib per elaborare e visualizzare i dati, e scikit-learn (v1.3) per fare previsioni e analisi statistiche. L'integrazione del dizionario di frequenze, la modellazione n-gram dei caratteri e la decodifica di Viterbi furono implementate con script Python personalizzati. Il modello è stato addestrato e testato su un dataset di 10.000 frasi, con una divisione 70/30 per addestramento e test.
3.3 Identificazione linguistica
Una volta che una frase è stata tokenizzata, il modulo di identificazione linguistica decide se ogni token è in Kokborok o in inglese. L'architettura completa del sistema è illustrata nella Figura 1. Questa assegnazione linguistica viene poi utilizzata per determinare quali moduli di trascrizione sono appropriati. Unendo i dati di un modello a n-grammi di caratteri e da un dizionario di frequenza, si determina il linguaggio di un token.
A causa delle significative differenze ortografiche tra i due linguaggi descritti sopra, un classificatore che utilizza solo le informazioni del token stesso, senza alcuna caratteristica contestuale, già funziona bene. Tuttavia, dopo l'assegnazione iniziale, viene applicato un altro classificatore utilizzando l'algoritmo di Viterbi. Questo secondo classificatore riduce la classificazione errata degli omografi interlinguali e favorisce i raggruppamenti di parole appartenenti alla stessa lingua.

Figura 1: Pattern a livello di parola e cambiamenti di lingua penalizzanti usando il rithm algoritmico di Viterbi. Clicca qui per visualizzare una versione più grande di questa figura.

Figura 2: Metodo per l'identificazione linguistica delle frasi in codice misto. Clicca qui per visualizzare una versione più grande di questa figura.
Abbiamo raccolto i dati dal corpusdi Crúbadán 27 per il dizionario e il modello del carattere. In questo corpus sono presenti numerose lingue, incluse molte lingue minoritarie come il kokborok.
Poiché il dataset nel corpus di Crúbadán è insufficiente per il nostro scopo, abbiamo testato un nuovo dataset biblico di Kokborok. Rispetto ad altre lingue, le fonti disponibili sono relativamente poche. Di conseguenza, i dati per le frasi contrastanti di questo articolo sono stati raccolti da gruppi WhatsApp di lingua Kokborok come Platinum Jubilee, Population Group, Restoration International Group, Khumulwng, Depachara Baptist Society, United Tiprasa Forum (UTF), Depachara Youth Fellowship, Krishna Nagar (UE), Uchoi Christian Fellowship (UCF), Tipra Kwsrang Bodol, Tribal Engineering Society, National Institute of Technology Students Borok, Information Yarung e Tripura Uchoi Youth Association (TUYA).
Un totale di 10.000 frasi codificate in kokborok e inglese sono state raccolte da questi gruppi WhatsApp tra agosto 2021 e dicembre 2023. Le fonti e la distribuzione del dominio del dataset sono elencate nella Tabella 2.
| Nome | Totale delle parole contate |
| Parole della Bibbia di Kokborok | 718883 |
| Frasi miste in codice inglese e Kokborok | 68789 |
Tabella 2: Parole totali di Kokborok.
| Lingua | Token totali |
| Kokborok (trp) | 711509 |
| Inglese (en) | 1767141 |
Tabella 3: Modello del personaggio a 2 grammi.
| Sl. No | Frasi Misti Totali di Codice usate |
| 1 | 10,768 |
Tabella 4: Totale delle frasi miste addestrate.
Il modello del carattere e il dizionario sono stati tratti dal corpusdi Crúbadán 27. Questa collezione, accessibile per una vasta gamma di lingue, incluse numerose lingue minoritarie, viene creata automaticamente cercando su internet materiali nella lingua di destinazione. Il corpus di Kokborok in particolare è piuttosto piccolo perché l'approccio fu inizialmente creato per Kokborok.
Sebbene sia disponibile anche un corpus di Kokborok e inglese, è stato volutamente non utilizzato a causa della mancanza di dataset, in particolare per quanto riguarda il code-mixing e il code-flipping. Ci sono anche diversi termini inglesi nel corpus di Kokborok; alcune di queste parole ( inclusi no, do e o) sono più comuni rispetto al corpus inglese.
Il dizionario e il modello linguistico svolgono il compito di etichettatura indipendente da singola parola. Il nostro compito è paragonabile a quello di King et al.28.
Le probabilità lessicali (lex), carattere (ch) e delle parole vengono utilizzate per creare un'interpolazione lineare tra le frequenze delle componenti lessicale (ch) e lessicale (lex). La probabilità combinata (a pettine) che ne deriva è mostrata nell'equazione (1) qui sotto; i parametri dettagliati di interpolazione sono presentati nella Tabella 3. La strategia di interpolazione è raffigurata nella Figura 2.
Pcombinato = λlexi · Plexi + λchar · Personaggio (1)
Dove 0 ≤ λlexi, λchar ≤ 1; e λlexi + λchar = 1. Le parole senza base lessicale hanno una probabilità lessicale estremamente bassa ma non nulla. Presumibilmente, nel caso in cui una parola sia assente in entrambe le lingue lessiche, per l'implementazione viene utilizzato il modello dei caratteri invece della probabilità lessicale, anche se λlexi = 1.
Il nostro metodo per sviluppare il modello del personaggio si basa sulla catena di Markov n-gramma di Dunning (1994). Questo si ottiene contando rispettivamente n-grammi all'inizio e alla fine dei token, per stimare le probabilità iniziali e di transizione.
Il confronto delle prestazioni tra i modelli addestrati da 2 grammi e 4 grammi è mostrato di seguito.
(2)
·
(3)
Le parole iniziali e di transizione di una probabilità possono essere moltiplicate per ottenere la probabilità di una parola usando il modello linguistico (4).
P(〈w1w2w3〉) = P iniziale(〈w1 w2) · Transizione P (c3|〈w 1w2) · Transizione P(〉|c1w2w3) (4)
La lingua kokborok è molto ricca di prefissi e suffissi ed è una lingua morfologicamente agglutinante in cui suffissi come "o", "do" e "no" sono aggiunti alle parole base. Il 2-grammo aiuta a catturare efficacemente le transizioni morfologiche locali ai confini degli affassi, mentre il 4-grammo può catturare quelle parole di Kokborok che presentano dipendenze ortografiche più lunghe riscontrate nelle radici e nelle parole composte come Phailaidido, Thanlainai e Mwchangkha.
Questo vale per un corpus ampio, che aumenta la probabilità di diversi problemi di scarsità dei dati. Inoltre, la combinazione di caratteri potrebbe non apparire in tutti i casi, il che potrebbe far sì che la probabilità si azero. Il levigamento lambda viene utilizzato per risolvere questi tipi di problemi assegnando a ogni n-grammo contenente caratteri non visti un piccolo valore con probabilità diversa da zero. Il valore di lambda è fissato a 0,001.
(5)
dove N = rappresenta la quantità di osservazioni distinte in n-grammi.
(6)
dove D= è il numero di differenze rilevate in n-grammi. Si assume che la probabilità per un n-gramma non osservato sia la stessa.
(7)
dove C indica la dimensione del carattere.
I valori iniziali di Pcount, λlexi e λchar furono impostati empiricamente dall'analisi di frequenza dei corpi di Kokborok e inglese. Per prima cosa, abbiamo inizializzato λlexi a 0,5 e pesato sia le probabilità lessicali che basate sui caratteri, rendendo entrambe ugualmente contributive nella prima esecuzione. Questo livello di inizializzazione ci ha permesso di identificare il ruolo comparativo del lessico e del modello a n-grammi di caratteri tra i dataset.
Il parametro di transizione Pcount (che continua nella stessa lingua) è stato impostato a 0,6, basato sul rapporto tra le sequenze monolingui e i punti di interruzione nel dataset segnato manualmente. Questi valori fornivano un buon punto di partenza per la convergenza durante l'accordatura. Successivamente, il perfezionamento di tutti i parametri è stato effettuato attraverso una serie di tentativi ripetuti per massimizzare il Coefficiente di Correlazione di Matthews (MCC), dettagliato nella sezione Risultati.
Identificazione contestuale
Il modello contestuale utilizza le probabilità già inizializzate (Pcount e Pswitch) durante la fase di identificazione indipendente e le affina usando la decodifica di sequenze di Viterbi, così da ridurre le incongruenze di transizione e rilevare in modo ottimale il cambio di lingua.
L'output analitico del modello linguistico dipende dal contesto ed è ottenuto principalmente combinando il token corrente con il token successivo e utilizzando sia i token precedenti che attuali. Poiché esiste la possibilità che due parole con lo stesso valore di frequenza abbiano significati simili e causino una classificazione errata (errata classificazione), è stato utilizzato l'approccio dipendente dal contesto per trovare i termini di somiglianza presenti in entrambe le lingue.
Alcune parole, come "no", "do", "o", "are", "da (giorno)", "va", "sa (di)", "rosa", "anello" e molte altre, sono simili in entrambe le lingue. Di conseguenza, può essere piuttosto difficile identificare il linguaggio corretto quando si presenta questo tipo di ambiguità, e occasionalmente le lingue vengono classificate in modo errato.
Per affrontare questi problemi di identificazione linguistica, abbiamo presentato un insieme di modelli linguistici utilizzando un modello di Markov nascosto discriminativo e un machine learning supervisionato. Si assume che la probabilità di transizione per entrambe le lingue sia la stessa. Per il Pcount della stessa lingua, la probabilità continua è il parametro primario da dichiarare. Attraverso questo possiamo calcolare la probabilità di cambiare lingua.
P switch = 1 − Pcount (8)
La classificazione contestuale usando il percorso di Viterbi è mostrata nella Figura 3. L'obiettivo dell'algoritmo di Viterbi è determinare quale dei linguaggi delle sequenze di token sia il migliore secondo Pcount e Pswitch.
L'algoritmo di Viterbi viene applicato alla classificazione contestuale. Pcount e Pswitch sono usati per etichettare gli archi, e i nodi sono etichettati con la verosimiglianza relativa assegnata dal primo classificatore.
A causa della maggiore probabilità di utilizzare la lingua Kokborok, il percorso a tratteggiamenti verrebbe scelto se il primo classificatore fosse l'unico usato e non fossero disponibili informazioni contestuali.
L'impatto dell'aggiustamento basato sul contesto è visualizzato nella Figura 4. Questo dimostra come, in assenza di informazioni contestuali, la seconda, la terza e la quinta parola nella frase "Next week o phaisidi do" verrebbero erroneamente identificate come inglesi (en) (percorso tratteggiato). Sebbene le probabilità siano leggermente maggiori per l'inglese, i valori relativi sono vicini.
Due spostamenti linguistici saranno penalizzati e la probabilità della sequenza sarà inferiore al percorso ottimale dell'algoritmo di Viterbi se si considerano anche le probabilità di transizione. Pertanto, solo parole che hanno una probabilità sostanzialmente maggiore di originare dall'altra lingua — piuttosto che termini comuni in entrambe — possono innescare cambiamenti linguistici in brevi sequenze.
Il coefficiente di correlazione di Matthews è stato scelto come metrica di valutazione perché, rispetto ad altre metriche come precisione, ricordo e accuratezza, è significativamente più adatto per compiti di classificazione binaria, poiché tiene conto sia dei veri positivi e dei veri negativi, sia dei falsi positivi e dei falsi negativi.
(9)