빅데이터 김교수의 "AI노마드연구소" AI로 열어가는 노마드 세상!

빅데이터 김교수의 "AI노마드연구소" AI로 열어가는 노마드 세상입니다. AI 코딩작성, SNS 분석, AI업무자동화 컨설팅 0507-1419-0222

자세히보기

교육/인공지능교육

TF-IDF정의와 sklearn 예시

빅데이터 김교수 2023. 1. 24. 22:06

TF-IDF(term frequency-inverse document frequency)란?

 

 TF-IDF(term frequency-inverse document frequency)는 문서에서 단어의 중요성을 측정하는 데 사용되는 수치 통계입니다. 문서의 단어에 대한 TF-IDF 값은 용어 빈도(TF)와 역 문서 빈도(IDF)의 곱입니다. TF는 단어가 문서에 나타나는 횟수이고 IDF는 단어를 포함하는 문서의 로그 스케일링된 역 비율입니다. 단어의 TF-IDF 값이 높을수록 문서에 더 중요합니다. 다음은 scikit-learn 라이브러리를 사용하여 Python에서 TF-IDF를 계산하는 방법의 예입니다.

from sklearn.feature_extraction.text import TfidfVectorizer

# Define a list of documents
documents = ["this is the first document", "this document is the second document", "and this is the third one", "is this the first document"]

# Create a TfidfVectorizer object
vectorizer = TfidfVectorizer()

# Fit the vectorizer to the documents
X = vectorizer.fit_transform(documents)

# Get the feature names
feature_names = vectorizer.get_feature_names()

# Print the TF-IDF values for each word
for doc in X:
    for word in doc.nonzero()[1]:
        print(feature_names[word], doc[0, word])

그러면 문서의 각 단어에 대한 TF-IDF 값이 출력됩니다.