TF-IDF

TF-IDF(Term Frequency-Inverse Document Frequency)는 정보 검색(Information Retrieval) 및 텍스트 마이닝(Text Mining)에서 특정 단어가 문서 집단(Corpus) 내 특정한 문서에서 갖는 중요도를 수치화한 통계적 가중치 지표다.

자연어 처리에서 문서를 벡터 형식으로 변환할 때 관측된 단어의 빈도만 사용할 경우 발생하는 한계(관사, 조사 등 불용어가 높은 중요도를 차지하는 문제)를 해결하기 위해 고안되었다.

핵심 개념 및 계산 구조 (Core Concepts and Calculation)

TF-IDF 값은 단어 빈도(TF)와 역문서 빈도(IDF)를 곱하여 산출한다.

  1. TF (Term Frequency): 특정 단어가 개별 문서 내에 등장하는 횟수다. 이 값이 높을수록 해당 단어는 그 문서 내에서 중요한 개념일 확률이 높다.
  2. DF (Document Frequency) 및 IDF (Inverse Document Frequency): DF는 특정 단어가 나타나는 전체 문서의 수를 의미한다. IDF는 전체 문서의 수를 DF로 나눈 뒤 로그(log)를 취한 역수 값이다. ‘the’, ‘is’, ‘a’와 같이 거의 모든 문서에 등장하는 범용적인 단어는 IDF 값이 0에 가까워지며 수학적인 페널티를 받게 된다.

결과적으로 TF-IDF는 특정 문서 내에서는 자주 등장하지만 다른 문서들에서는 거의 등장하지 않는 단어(희소성 있는 핵심어)에 높은 가중치를 부여한다.

텍스트 표현 모델 간 비교 (Comparison of Text Representation Models)

자연어 처리에서 문서를 수치화된 기계 판독 데이터로 변환하는 대표적인 모델들은 다음과 같은 차이가 있다.

비교 항목Bag of Words (BoW)TF-IDF단어 임베딩 (Word2Vec, GloVe)
표현 방식 (Representation)단어의 출현 횟수 단순 카운트출현 횟수 및 역문서 빈도를 조합한 가중치단어의 주변 문맥을 반영한 밀집 벡터(Dense Vector)
핵심 목적 (Primary Focus)단어 사전 기준 유무 및 빈도 매핑문서 내 핵심 키워드 식별 및 정보 검색(IR) 최적화단어 간의 의미적 유사성 및 구문적 관계 학습
범용 단어 처리 (Frequent Words)페널티 부여 불가 (사전 전처리로 제거 필수)IDF 연산을 통해 자동 페널티 부여 및 가중치 축소문맥 정보에 따라 임베딩 공간 내 분포 위치 결정
의미적 관계 (Semantic Meaning)단어 간의 순서와 문맥적 의미 완전 무시문맥적 의미 파악 부재 (단어 간 상호 연관성 무시)단어 간의 유의미한 거리 계산 및 연관성 파악 가능
벡터 형태 (Vector Structure)고차원 희소 행렬 (Sparse Matrix, 대부분이 0)고차원 희소 행렬 (Sparse Matrix, 대부분이 0)저차원 밀집 행렬 (Dense Matrix, 실수값으로 구성)

출처 (Sources):

Entities