본문으로 건너뛰기

tf–idf

TFIDFTF*IDF

특정 단어가 특정 문서 내에서 얼마나 중요한지를 계산하는 방법 중 하나.

직관적인 의미

다른 문서들에는 잘 안나오는 단어(즉 idf(t,D)가 높음)가 특정 문서에 유독 자주 나오면(즉 tf(d,t)가 높음), 그 단어는 해당 문서의 키워드일 가능성이 높다.

Term frequency

tf(d,t)는 특정 문서 d에서 특정 단어 t가 나오는 비율이다. 일반적인 계산식 중 하나:

tf(d,t)=ft,dtdft,d

위 식에서 ft,d는 문서 d 안에 단어 t가 나오는 빈도를 뜻한다.

Inverse document frequency

idf(t,D)는 전체 문서 집합 D 중에서 단어 t가 담긴 문서가 얼마나 희소한지를 나타낸다. 희소할수록 값이 커진다.

idf(t,D)=logNnt

위 식에서 D, N, nt는 각각 다음과 같다:

  • D말뭉치를 구성하는 모든 문서의 집합
  • N은 문서의 수, 즉 집합 D의 크기 |D|
  • nt는 단어 t가 한 번이라도 나오는 문서의 수, 즉 |dD:td|. t말뭉치에 앖다면 분모가 0이므로 1을 더해주기도 한다(smoothing).

어떤 단어가 모든 문서에서 한 번 이상 나오면 idf(t,D)0이 된다.

tf-idf

tf-idf는 아래와 같이 구한다.

tfidf(t,d,D)=tf(t,d)idf(t,D)

See also