# TF-IDF(Term Frequency-Inverse Document Frequency)

## 개요

DTM의 경우, 단순하게 단어의 빈도수를 측정하기 때문에 각 단어의 중요도 자체를 신경 쓰지 않는다는 단점이 존재한다.&#x20;

서로 다른 문서에는 분명히 해당 문서의 토픽에 높게 기여하는 단어도 있을 것이며, 단어의 등장 수 자체는 많지만 토픽에 크게 기여하지  않는 단어도 있을 수 있기 때문이다.

이는 DTM 내에 있는 각 단어에 대한 중요도를 계산할 수 있는 TF-IDF 가중치를 사용함으로써 보다 정확하게 문서를 분석할 수 있게 된다.

## 단어 빈도 - 역 문서 빈도(**TF-IDF)**

TF-IDF는 **단어의 빈도**와 **역 문서 빈도**를 사용하여 DTM 내의 각 단어들마다 중요한 정도를 가중치로 주는 기법이다.&#x20;

TF-IDF는 주로 문서의 유사도를 구하는 작업, 검색 시스템에서 검색 결과의 중요도를 정하는 작업, 문서 내에서 특정 단어의 중요도를 구하는 작업 등에 사용되면 본 프로젝트에서 적합한 용도라고 판단하였다.

**TF-IDF**는 **TF(단어의 빈도)**&#xC640; **IDF(역 문서 빈도)**&#xB97C; 곱한 값을 의미하는데, 문서를 d, 단어를 t, 문서의 총 개수를 n이라고 표현할 때 TF, IDF는 각각 다음과 같이 정의할 수 있다.

### &#x20;**TF(d,t) : 특정 문서 d에서의 특정 단어 t의 등장 횟수**

TF는 DTM과 같은 원리이며, 각 단어들이 가진 빈도수 정보를 뜻한다.&#x20;

### **DF(t) : 특정 단어 t가 등장한 문서의 수**

해당 단어가 등장했던 문서의 수이다. 유의할 점은 딱히 해당 문서에서 특정 단어 t가 많이 포함되어 있다는 것이 중요한 게 아닌 포함되어 있다는 정보 자체가 중요하다.

### **IDF(d, t) : df(t)에 반비례하는 수**

![](https://3577294876-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-L_Wo7SRUvbKJuPojzzZ%2F-LpcEILgiESncSRyA9eE%2F-LpcKUU8IuGBOa_zCKka%2Fimage.png?alt=media\&token=8601c84f-8971-4e93-9d6b-18e76915d96b)

IDF는 위의 DF의 역수를 취한 값을 뜻한다. 이를 통해 모든 단어에 공통적으로 등장하는 단어의 경우, 역 문서 빈도로 판단하여 가중치를 낮추는 방식이다.

### TF 행렬

![](https://3577294876-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-L_Wo7SRUvbKJuPojzzZ%2F-Lpbt65XITigvr2qaPVg%2F-Lpbu1ibexVxlVyAfaM-%2Fimage.png?alt=media\&token=e3ad7e10-2efd-48f5-83db-6d5054be3ff1)

### IDF 행렬

이를 통해 위와 같은 TF 값에 기반하여 각 단어의 **역 문서 빈도**를 아래와 같이 도출할 수 있다.

![](https://3577294876-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-L_Wo7SRUvbKJuPojzzZ%2F-LpcEILgiESncSRyA9eE%2F-LpcLMYM1NVEo1GGfTfU%2Fimage.png?alt=media\&token=45b0ebf9-29b9-40a5-afb7-0e0a5bc2420b)

### TF-IDF 행렬

위의 2가지 행렬에 기반하여 각 벡터의 가중치를 기반한 TF-IDF 값을 계산하면 다음과 같이 나열된다.

![](https://3577294876-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-L_Wo7SRUvbKJuPojzzZ%2F-LpcEILgiESncSRyA9eE%2F-LpcLbDleWj0ERrRMxBC%2Fimage.png?alt=media\&token=40f961aa-89b0-4c05-b23d-1f2bee4c3832)
