Abordări la clasificarea textelor
Există trei abordări ale sarcinii de clasificare a textelor [1].
În primul rând, clasificarea nu se face întotdeauna cu ajutorul unui computer. De exemplu, într-o bibliotecă obișnuită, titlurile tematice sunt atribuite cărților manual de către un bibliotecar. Această clasificare manuală este costisitoare și nu se aplică în cazurile în care este necesar să se clasifice un număr mare de documente la o viteză mare.
În sfârșit, a treia abordare se bazează pe învățarea în mașină. În această abordare, setul de reguli sau, mai general, criteriul pentru decizia clasificatorului de text, se calculează automat din datele de antrenament (cu alte cuvinte, clasificatorul este instruit). Datele de instruire reprezintă o serie de eșantioane bune de documente din fiecare clasă. În procesul de învățare în mașină, rămâne nevoia de marcare manuală (termenul de marcare se referă la procesul de atribuire a unei clase unui document). Dar marcarea este o sarcină mai simplă decât scrierea regulilor. În plus, marcarea poate fi făcută în modul normal de utilizare a sistemului. De exemplu, într-un program de e-mail, e posibil ca mesajele e-mail să poată fi marcate ca spam, formând astfel un set de antrenament pentru filtrul de e-mail pentru clasificatori. Astfel, clasificarea textelor bazate pe învățarea mașinilor este un exemplu de învățare cu profesorul. unde rolul profesorului este o persoană care definește un set de clase și marchează setul de învățare.
Există o colecție inițială de documente marcate R ⊂ C × D> \ subset> \ times >>. pentru care valorile Φ sunt cunoscute. De obicei, este împărțit în "training" și "check". Primul este utilizat pentru formarea clasificatorului, al doilea este folosit pentru verificarea independentă a calității muncii sale.
Indexarea documentelor Construiți un model numeric al textului, de exemplu, ca vector multidimensional al cuvintelor și greutatea lor în document. Reducerea dimensionalității modelului. Construirea și formarea clasificatorului Se pot folosi diferite metode de învățare în mașină. copacii decisivi. naiv clasificator Bayesian. rețele neuronale. metoda de susținere a vectorilor etc. Evaluarea calității clasificării Este posibilă evaluarea prin criterii de exhaustivitate, acuratețe, compararea clasificatorilor prin seturi de teste speciale.
Modelul Bayesian naiv
Modelul bayesian naiv este o metodă probabilistică de predare. Probabilitatea ca un document d să intre în clasa c este scrisă ca P (c | d). Deoarece scopul de clasificare este acela de a găsi cea mai potrivită clasă pentru acest document, în clasificarea bayesiană naivă, problema constă în găsirea celei mai probabile clase de cm
Calculează valoarea acestei probabilități direct imposibilă, pentru că este necesar ca setul de antrenament să conțină toate (sau aproape toate) combinații posibile de clase și documente. Cu toate acestea, folosind formula Bayes, putem rescrie expresia pentru P (c | d)
unde numitorul P (d) este omis, deoarece nu depinde de c și, prin urmare, nu afectează constatarea maximului; P (c) este probabilitatea ca o clasa c să apară. indiferent de documentul în cauză; P (d | c) este probabilitatea de întâlnire a documentului d între documentele din clasa c.
Folosind setul de antrenament, probabilitatea P (c) poate fi estimată ca
unde N c> este numărul de documente din clasa c. N este numărul total de documente din setul de antrenament. Aici este folosit un alt semn de probabilitate, deoarece cu ajutorul setului de antrenament se poate estima doar probabilitatea, dar nu se găsește valoarea exactă.
Pentru a estima probabilitatea P (d | c) = P (t 1. t 2. t n d | c), t. c)>. unde t k> este elementul din documentul d. n d> - numărul total de elemente din documentul (inclusiv repetarea) trebuie să intre ipotezele simplificatoare (1) a independenței condiționate a elementelor și (2) independența elementelor de poziție. Cu alte cuvinte, ne-am ignora, în primul rând, faptul că textul într-un limbaj natural apariția unui cuvânt este adesea strâns asociat cu apariția altor cuvinte (de exemplu, probabilitatea ca întâlnirea integrantă cuvânt într-un text cu ecuația cuvânt. Decât cu cuvântul bacterie) , și, în al doilea rând, probabilitatea de a îndeplini același cuvânt este diferită pentru diferite poziții din text. Din cauza acestor simplificări brute, modelul de limbă naturală analizat este numit naiv (cu toate acestea este suficient de eficient în problema clasificării). Deci, în lumina ipotezelor făcute, folosind regula de multiplicare pentru probabilitățile unor evenimente independente, putem scrie
P (d | c) = P (T 1. t 2. ... TND |. C) = P (t 1 | c) P (t 2 | c) ... P (TND | c) = Π k = 1 nd P (tk | c). , T _, \ ldots, t _> \ mid c) = P (T_ \ mid c) P (T_ \ mid c) \ ldots P (t _> \ mid c) = \ prod _ ^> P (T_ \ mid c) .>
Probabilitatea de estimare P (t | c) cu ajutorul setului de antrenament va fi
unde T CT> - numărul de elemente t de apariții ale tuturor claselor C (și orice poziție - este esențial să se folosească de a doua ipoteză simplificatoare altfel ar trebui să calculeze aceste probabilități pentru fiecare poziție în document, care nu se poate face suficient de precise din cauza sparsity datelor de formare - este dificil să se aștepte ca fiecare element să se întâlnească în fiecare poziție suficient de multe ori); T c> este numărul total de elemente din documentele din clasa c. Numărarea ia în considerare toate situațiile repetate.
După calificativul "antrenat", adică a găsit valoarea P ^ (c)> (c)> și P ^ (t | c)> (t \ la mijlocul c)>. puteți găsi clasa de documente:Pentru a evita, în ultima formulă, depășirea de mai jos din cauza numărului mare de factori, în practică, în loc de produs, se folosește de obicei suma logaritmilor. Logaritmul nu afectează constatarea maximului, deoarece logaritmul este o funcție în creștere monotonică. Prin urmare, în majoritatea implementărilor, în loc de ultima formulă, se utilizează următoarele:
Această formulă are o interpretare simplă. Șansele de clasificare a unui document de către o clasă întâlnită frecvent sunt mai mari, iar logul P ^ (c)> (c)> contribuie la valoarea totală a contribuției corespunzătoare. Valorile lui log P ^ (t | c)> (t \ mid c)> sunt mai mari, cu atât mai important este elementul t pentru identificarea clasei c. și, în consecință, cu cât este mai mare contribuția lor la total.