728x90
반응형
TF-IDF
TF-IDF(Term Frequency / Inverse Document Frequency)는 문서 내 텍스트 데이터를 분석할 때, 특정 단어가
문서에서 얼마나 중요한지를 측정하는 통계적 방법
TF : 단어가 특정 문서에서 얼마나 자주 등장했는지
IDF : 단어가 전체문서에서 얼마나 희소한지
TF(Term Frequency)
단어 t가 특정 문서d에서 얼마나 자주 등장했는지를 나타내는 척도
IDF(Inverse Document Frequency)
특정 단어가 전체 문서 집합에서 얼마나 희소한지를 측정
많이 등장하는 흔한단어는 낮은 가중치를, 드물게 등장하는 단어는 높은 가중치를 부여
TF-IDF(Term Frequency Inverse Document Frequency)
TF와 IDF를 곱하여 단어의 가중치를 계산
Scikit-learn TfidfVectorize 라이브러리를 사용한 예시 코드
from sklearn.feature_extraction.text import TfidfVectorizer
# 예제 문서 리스트
documents = [
"The cat sat on the mat",
"The dog barked at the cat",
"The bird sang on the tree"
]
# TF-IDF 벡터화
vectorizer = TfidfVectorizer()
tfidf_matrix = vectorizer.fit_transform(documents)
# 단어와 TF-IDF 값 확인
feature_names = vectorizer.get_feature_names_out()
tfidf_values = tfidf_matrix.toarray()
# TF-IDF 값을 보기 쉽게 정리
import pandas as pd
df = pd.DataFrame(tfidf_values, columns=feature_names)
print(df)
활용
- 텍스트 요약 : TF-IDF가 높은 단어를 중심으로 텍스트를 요약
- 키워드 추출 : 문서의 핵심 키워드를 자동으로 추출
- 문서 군집화 : TF-IDF로 변환한 문서 벡터를 사용하여 유사 문서를 군집화
728x90
반응형
'이론공부 > 데이터분석' 카테고리의 다른 글
과적합(Overfitting 방지 기법) (2) | 2025.01.04 |
---|---|
[텍스트분석] 토픽 모델링 (1) | 2025.01.03 |
CRISP-DM (0) | 2025.01.02 |
연관 분석(Association Analysis) (1) (0) | 2024.11.07 |
[웹로그 분석] 인덱스 페이지, 랜딩페이지 (0) | 2024.02.26 |