Tf-idf

Termfrekvens–invers dokumentfrekvens (engelsk: term frequency-inverse document frequency, forkortet tf–idf, TF*IDF, TFIDF, TF–IDF, eller Tf–idf) er et numerisk mål for hvor viktig en term er i et dokument. TF-IDF er beregnet på bakgrunn av termfrekvens (Term frequency) og invers dokumentfrekvens (Inverse Document Frequency). TF-IDF brukes ofte i informasjonsinnhenting, og søk. TF-IDF verdiene brukes ofte til å sammenlikne dokumenter i en samling mot en spørring, for å finne det mest relevante resultatet[1], for eksempel ved bruk av vektormodellen

Definisjoner

Termfrekvens er en målestokk på hvor ofte en term oppstår i et dokument, med andre ord hvor mange ganger eksisterer term t i dokument d. Dokumentfrekvens er en målestokk som viser hvor mange av dokumentene i den gjeldende samlingen som inneholder termen. Dette kan for eksempel være antall dokumenter i samlingen som inneholder termen t.

I TF-IDF bruker vi[hvem?] inversen av dokumentfrekvens.

IDF er definert som: IDF =

Dermed kan vi definere TF-IDF som:

TF-IDF = tfidf

Fordeler med TF-IDF

Fordeler med TF-IDF er at det alltid blir gitt en vekt til term t i et dokument d som er:

  • Høyest når t oppstår mange ganger i få dokumenter
  • Lavere når termen t oppstår få ganger i et dokument, eller oppstår i mange dokumenter
  • Lavest når en term oppstår i tilnærmet alle dokumentene

Varianter av TF-IDF

Sublineær TF

Dersom et ord oppstår tretti ganger i et dokument, er ikke ordet nødvendigvis tredve ganger så viktig som dersom ordet oppstår kun en gang i et dokument. For å forhindre at en term blir ansett som tredve ganger så viktig som et ord som kun oppstår en gang, kan vi bruke sublineær (Sublinear) tf-skalering. Istedenfor å øke tf verdien med en hver gang ordet oppstår kan vi bruke logaritmen av termfrekvensen.

w f =

Maksimum tf-normalisering

Maksimum tf normalisering er en teknikk der vi normaliserer alle tf-vektene i et dokument, på bakgrunn av den høyeste tf verdien i det gjeldende dokumentet. For hvert dokument la tfmax(d) = maxτ d tfτ, d, der τ dekker alle termene i dokument d. Så regner vi ut normalisert term frekvens for alle termer t i dokument d. Dermed kan vi definere maksimum tf-normalisering som:

ntft,d =

Der A er en verdi mellom 0 og 1, og er vanligvis satt til 0,4. A er en verdi som brukes til å dempe påvirkningen fra andre termer. Denne metoden normaliserer alle termer avhengig av den største termen i dokumentet. Den største fordelen med denne metoden er at den reduserer påvirkingen av at lengre dokumenter får høyere treffgrad fordi dokumentene inneholder flere ord.

Bruk av TF-IDF

TF-IDF brukes som rangeringsfunksjon i flere implementasjoner av søk. TF-IDF verdiene er verdiene som oftest blir brukt i vektormodellen, en modell som sammenlikner dokumenter for å finne det dokumentet som er mest relevant. I tillegg er det flere forbedrede søkealgoritmer som BM25[1] som bruker TF-IDF til å finne de mest relevante artiklene.

Referanser

  1. ^ a b Manning Christopher D, "Introduction to Information Retrieval" Cambrigde, 2009