Sari la conținut

tf–idf

De la Wikipedia, enciclopedia liberă

În recuperarea informațiilor, tf–idf sau TFIDF, abreviere din engleză term frequency–inverse document frequency, însemnând frecvența termenului–frecvența inversă în documente, este o măsură statistică numerică destinată cuantizării importanței unui cuvânt într-un document într-o colecție sau corpus. Această măsură este adesea folosită ca factor de ponderare în căutările din recuperarea informațiilor, text mining și modelarea utilizatorului. Valoarea tf–idf crește proporțional cu numărul de apariții ale unui cuvânt într-un document și este contrabalansat de numărul de documente din corpus care conțin cuvântul, ceea ce ajută la ponderarea necesară din cauză că unele cuvinte apar mai frecvent în general. tf–idf este una dintre cele mai populare metode de ponderare a termenilor astăzi, iar 83% din sistemele de recomandare bazate pe text din bibliotecile digitale folosesc tf–idf[1].

Diferite variante de ponderare cu tf–idf sunt adesea folosite de către motoarele de căutare drept instrument central în atribuirea de scoruri și ierarhizarea după relevanță a unui document relativ la o interogare din partea unui utilizator. tf–idf poate fi folosit cu succes pentru filtra cuvinte vide în diverse domenii, inclusiv sumarizare automată și clasificare.

Una dintre cele mai simple funcții de rang este calculată prin însumarea tf–idf pentru fiecare termen din interogare. Multe alte funcții mai sofisticate sunt variante ale acestui model simplu.

Frecvența termenului

[modificare | modificare sursă]

Dacă presupunem că avem un set de documente de tip text și se dorește ierarhizarea documentelor în funcție de relevanța față de interogare, „o vacă maro”. O modalitate simplă de a începe este prin eliminarea documentelor care nu conțin toate cuvintele, „o”, „vacă” și „maro”, chiar dacă asta lasă în urmă încă multe documente. Pentru a le separa în continuare, se poate număra de câte ori apare fiecare termen în fiecare document. Numărul de apariții ale unui termen într-un document se numește frecvența termenului. Cu toate acestea, în cazul în care lungimea documentelor variază foarte mult, sunt necesare ajustări (a se vedea definiția de mai jos). Prima formă de ponderare a termenilor se datorează lui Hans Peter Luhn (1957) și poate fi rezumată astfel[2]:

„Ponderea unui termen care apare într-un document este propoțională cu frecvența termenului.”

Frecvența inversă în documente

[modificare | modificare sursă]

Deoarece termenul „o” este atât de comun, frecvența termenului tinde să pună accent pe acele documente care conțin o frecvență ridicată a cuvântului „o”, fără a oferi suficientă pondere cuvintelor mai informative „vacă” și „maro”. Termenul „o” nu este un cuvânt-cheie potrivit pentru a distinge întrerelevanța documentelor și termenilor, spre deosebire de cuvintele mai puțin utilizate „vacă” și „maro”. Așadar, un factor de frecvență inversă în documente este inclus pentru a reduce ponderea termenilor care apar foarte frecvent în colecția de documente și pentru a mări ponderea termenilor care apar rar.

Karen Spärck Jones (1972) a conceput o interpretare statistică a specifictății unui termen, numită Frecvență Înversă în Documente (abreviată idf), care a devenit un punct foarte important în ponderarea termenilor[3]:

„Specificitatea unui termen poate fi cuantizată ca funcție inversă a numărului de documente în care apare.”
  1. Tf–idf este produsul a două statistici, frecvența termenilor și frecvența inversă în documente. Există diverse metode pentru determinarea valorilor exacte ale acestor statistici.
  2. O formulă care își propune să definească importanța unui cuvânt sau unei fraze cheie într-un document sau o pagină web.
Variante de pondere a frecvenței termenilor (tf)
schemă de ponderare valoare tf
binar
numărare brută
frecvența termenilor
normalizare logaritmică
normalizare dublă 0.5
normalizare dublă K

Frecvența termenului

[modificare | modificare sursă]

În cazul frecvenței termenului tf(t,d), cea mai simplă opțiune este utilizarea numărării brute a unui termen într-un document. Cu alte cuvinte, numărul de apariții ale termenului t în documentul d. Dacă ft,d este numărul brut de apariții, atunci cea mai simplă schemă tf este tf(t,d) = ft,d. Alte posibilități includ[4]:128

  • „Frecvențe” booleene: tf(t,d) = 1 dacă t apare în d și 0 în caz contrar;
  • Frecvența termenului ajustată pentru lungimea documentului: ft,d ÷ (numărul de cuvinte în d);
  • Frecvența scalată logaritmic: tf(t,d) = log (1 + ft,d);[5]
  • Frecvența augmentată, pentru a preveni erori în cazul documentelor mai lungi, de exemplu, frecvența brută împărțită frecvența brută a termenului care apare cel mai des în document:

Frecvența inversă în documente

[modificare | modificare sursă]
Variante de pondere a frecvenței inverse în documente (idf)
schemă de ponderare valoare idf ()
unar 1
frecvența inversă în documente
frecvența inversă în documente netedă
frecvența inversă în documente maximă
frecvența inversă în documente probabilistică

Frecvența inversă în documente este o măsură a cât de multă informație este conținută de termen, adică dacă e comun sau rar în colecția de documente. Este valoarea logaritmată a inversului fracției dintre numărul de documente care conțin cuvântul și numărul total de documente:

unde

  • : numărul total de documente în corpus
  •  : numărul de documente în care apare termenul (de exemplu, ). Dacă termenul nu este în corpus, acest lucru va duce la o împărțire la zero. Prin urmare, de obicei se modifică numitorul astfel încât să fie .
Grafice a diferite funcții de frecvență inversă în documente: standard, netedă, probabilistică.

Frecvența termenului–frecvența inversă în documente

[modificare | modificare sursă]

Așadar, tf–idf este calculat ca

O pondere ridicată a tf-idf este atinsă de o frecvență mare a termenului (în documentul dat) și o frecvență scăzută în documente în cadrul întregii colecții de documente. Ponderile tind astfel să filtreze termenii obișnuiți. Deoarece raportul din funcția logaritmică a idf este întotdeauna mai mare sau egal cu 1, valoarea idf (și tf-idf) este mai mare sau egală cu 0. Pe măsură ce un termen apare în mai multe documente, raportul din logaritm se apropie de 1, aducând idf și tf-idf mai aproape de 0.

Scheme de ponderare recomandate pentru tf-idf
schema de ponderare pondere a termenului în documente ponderea termenului interogat
1
2
3

Justificarea idf

[modificare | modificare sursă]

Idf a fost introdus, ca „specificitatea ermenului”, de Karen Spärck Jones într-un articol din 1972. Deși a funcționat bine ca euristică, fundamentele sale teoretice au fost problematice pentru cel puțin trei decenii după aceea, timp în care mulți cercetători au încercat să găsească justificări din teoria informației pentru aceasta[6].

Explicația lui Spärck Jones nu a inclus multă teorie, în afară de o legătură cu legea lui Zipf[6]. Au fost efectuate încercări pentru a defini idf probabilistic[7], prin estimarea probabilității ca un anumit document d să conțină un termen t ca frecvența relativă în documente,

astfel încât să se poată defini idf ca

Și anume, frecvența inversă în documente este logaritmul frecvenței „inverse” relative în documente.

Această interpretarea probabilistică la rândul său are aceeași formă ca auto-informarea. Cu toate acestea, aplicarea de astfel de noțiuni de teoria informației la probleme de recuperarea informațiilor creează dificultăți atunci când se încearcă definirea spațiilor de evenimente pentru distribuțiile de probabilitate necesare: atât documentele, cât și interogările și termenii trebuie să fie luați în considerare[6].

Legătura cu teoria informației

[modificare | modificare sursă]

Conceptele de frecvența termenului și frecvența inversă în document pot fi formulate folosind teoria Informației, ajutând la explicarea faptului că produsul acestora are sens pentru conținutul informațional al unui document. Reamintim expresia entropiei condiționate a unui document „ales la întâmplare” condiționat de faptul că acesta trebuie să conțină un termen concret (și presupunem că toate documentele au probabilitate egală de a fi alese, iar este r=probabilități)):

În termeni de notație, și sunt „variabile aleatoare”, corespunzând respectiv extragerii unui document sau unui termen. Acum reamintim definiția informației mutuale, care poate fi exprimată ca

Ultimul pas este de extinderea , probabilitatea necondiționată de a alege un termen, în contextul alegerii (aleatoare) a unui document, pentru a obține:

Această expresie arată că însumarea Tf-idf a tuturor documentelor și termenilor posibili recuperează informația mutuală între documente și termeni, luând în considerare toate particularitățile distribuției lor comune (pentru detalii, a se vedea[8]). Prin urmare, fiecare Tf-idf poartă denumirea de „informație” atașată unei perechi termen x document.

Exemplu de tf–idf

[modificare | modificare sursă]

Să presupunem că avem tabelele cu numărul de apariții ale termenilor într-un corpus format din doar două documente, după cum sunt enumerate în partea dreaptă.

Document 2
Termen Număr de apariții
acesta 1
este 1
un 2
caiet 3
Document 1
Termen Număr de apariții
acesta 1
este 1
un 2
stilou 1

Calculul tf–idf pentru termenul „acesta” se realizează după cum urmează:

În forma brută a frecvenței, tf este doar frecvența termenului „acesta” pentru fiecare document. În fiecare document, cuvântul „acesta” apare o singură dată. Dar deoarece documentul 2 are mai multe cuvinte, frecvența sa relativă este mai mică.

O valoare idf este constantă pe corpus și ține cont de procentajul de documente care includ cuvântul „acesta”. În cazul de față, avem un corpus de două documente și ambele includ cuvântul „acesta”.

Deci tf–idf este 0 pentru cuvântul „acesta”, ceea ce duce la concluzia că termenul nu este foarte informativ, deoarece apare în toate documentele.

Cuvântul „caiet” este mult mai interesant, deoarece apare de trei ori, dar numai în cel de-al doilea document:

În cele din urmă,

(folosind logaritmul zecimal).

Dincolo de termeni

[modificare | modificare sursă]

Ideea din spatele tf–idf se aplică și în cazul altor entități în afară de termeni. În 1998, conceptul de idf a fost aplicat la citări[9]. Autorii susțin că „dacă o citare foarte neobișnuită este împărtășită de două documente, aceasta ar trebui să fie ponderată mai mult decât o citare inclusă într-un număr mare de documente”. În plus, tf–idf a fost aplicat „cuvintelor vizuale”, cu scopul identificării obiectelor în videoclipuri[10] și propozițiilor întregi[11]. Cu toate acestea, conceptul de tf–idf nu s-a dovedit a fi mai eficient în nici un caz față de simpla schemă tf (fără idf). Când tf–idf a fost aplicat citărilor, cercetătorii au găsit nici o îmbunătățire față de o simplă pondere care ia în calcul doar numărul de citări fără o componentă idf[12].

Scheme derivate

[modificare | modificare sursă]

Mai multe scheme de ponderare a termenilor au fost derivate din tf–idf. Una dintre ele este TF–PDF (Frecvența Termenului * Frecvența Proporțională în Documente)[13]. TF–PDF a fost introdus în anul 2001, în contextul identificării subiectelor emergenete în mass-media. Componenta PDF măsoară diferența dintre de câte ori un termen apare în diferite domenii. O altă schemă derivată este TF–IDuF. În TF–IDuF[14], idf nu este calculat pe baza documentelor din corpusul în care se efectuează căutarea. În schimb, idf este calculat pe colecții de documente personale ale utilizatorilor. Autorii au raportat că TF–IDuF a fost la fel de eficace ca tf–idf, dar ar putea fi aplicat și în situații când, de exemplu, un sistem de modelare a utilizatorilor nu are acces la un corpus de documente global.

  1. ^ Breitinger, Corinna; Gipp, Bela; Langer, Stefan (). „Research-paper recommender systems: a literature survey”. International Journal on Digital Libraries (în engleză). 17 (4): 305–338. doi:10.1007/s00799-015-0156-0. ISSN 1432-5012. 
  2. ^ Luhn, Hans Peter (). „A Statistical Approach to Mechanized Encoding and Searching of Literary Information” (PDF). IBM Journal of Research and Development. 1 (4): 309–317. doi:10.1147/rd.14.0309. Arhivat din original (PDF) la . Accesat în . There is also the probability that the more frequently a notion and combination of notions occur, the more importance the author attaches to them as reflecting the essence of his overall idea. 
  3. ^ Spärck Jones, K. (). „A Statistical Interpretation of Term Specificity and Its Application in Retrieval”. Journal of Documentation. 28: 11–21. doi:10.1108/eb026526. 
  4. ^ Manning, C.D.; Raghavan, P.; Schutze, H. (). „Scoring, term weighting, and the vector space model” (PDF). Introduction to Information Retrieval. p. 100. doi:10.1017/CBO9780511809071.007. ISBN 978-0-511-80907-1. 
  5. ^ „TFIDF statistics | SAX-VSM”. 
  6. ^ a b c Robertson, S. (). „Understanding inverse document frequency: On theoretical arguments for IDF”. Journal of Documentation. 60 (5): 503–520. doi:10.1108/00220410410560582. 
  7. ^ See also Probability estimates in practice in Introduction to Information Retrieval.
  8. ^ Aizawa, Akiko (). „An information-theoretic perspective of tf–idf measures”. Information Processing and Management (în engleză). 39 (1): 45–65. doi:10.1016/S0306-4573(02)00021-3. 
  9. ^ Bollacker, Kurt D.; Lawrence, Steve; Giles, C. Lee (). CiteSeer: An Autonomous Web Agent for Automatic Retrieval and Identification of Interesting Publications. Proceedings of the Second International Conference on Autonomous Agents. AGENTS '98. pp. 116–123. doi:10.1145/280765.280786. ISBN 978-0-89791-983-8. 
  10. ^ Sivic, Josef; Zisserman, Andrew (). Video Google: A Text Retrieval Approach to Object Matching in Videos. Proceedings of the Ninth IEEE International Conference on Computer Vision – Volume 2. ICCV '03. pp. 1470–. ISBN 978-0-7695-1950-0. 
  11. ^ Seki, Yohei. „Sentence Extraction by tf/idf and Position Weighting from Newspaper Articles” (PDF). National Institute of Informatics. 
  12. ^ Beel, Joeran; Breitinger, Corinna (). „Evaluating the CC-IDF citation-weighting scheme – How effectively can 'Inverse Document Frequency' (IDF) be applied to references?” (PDF). Proceedings of the 12th IConference. Arhivat din original (PDF) la . Accesat în . 
  13. ^ Khoo Khyou Bun; Bun, Khoo Khyou; Ishizuka, M. (). Emerging Topic Tracking System. Proceedings Third International Workshop on Advanced Issues of E-Commerce and Web-Based Information Systems. WECWIS 2001 (în engleză). p. 2. doi:10.1109/wecwis.2001.933900. ISBN 978-0-7695-1224-2. 
  14. ^ Langer, Stefan; Gipp, Bela (). „TF-IDuF: A Novel Term-Weighting Scheme for User Modeling based on Users' Personal Document Collections” (PDF). IConference.