분석시각화 대회 코드 공유 게시물은
내용 확인 후
좋아요(투표) 가능합니다.
Python 튜토리얼
Lv1 전처리 13/14 python 파이썬 TF-IDF (1)
안녕하세요 여러분! 👨🏫👩🏫
이번시간에는 BOW의 TF-IDF(Term Frequency - Inverse Document Frequency)에 대해 알아 보겠습니다.
이전에 설명한 카운트 기반 벡터화는 숫자가 높을 수록 중요한 단어로 인식합니다. 하지만 단순히 단어의 빈도만 고려한다면 모든 문서에서 자주 쓰일 수 밖에 없는 단어들이 중요하다고 인식 될 수 있습니다. 이런 문제를 보완하기 위해 TF-IDF(Term Frequency - Inverse Document Frequency) 벡터화를 사용합니다.
TF-IDF는 개별 문서에서 자주 등장하는 단어에는 높은 가중치를, 모든 문서에서 자주 등장하는 단어에 대해서는 패널티를 주는 방식으로 값을 부여 합니다.
예를 들어 총 5개의 문서가 있다고 가정하면, 딥러닝이라는 단어는 5개 문서에서 모두 등장하고, 머신러닝이라는 단어는 1번문서에서만 빈번히 등장한다고 했을때, TF-IDF의 값은 딥러닝이란 단어는 낮게 부여 되고 머신러닝이라는 단어는 높게 부여 됩니다.
문서의 양이 많을경우 보통 TF-IDF 방식의 벡터화를 사용합니다.
TF-IDF의 사용 방법은 CountVectorizer와 크게 다르지 않습니다
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
# 라이브러리 로딩
from sklearn.feature_extraction.text import TfidfVectorizer
corpus = [
'This is the first document.',
'This is the second second document.',
'And the third one.'
]
tfidf = TfidfVectorizer()
print(tfidf.fit_transform(corpus).toarray()) # corpus 리스트 내부 텍스트로 부터 각 TF-idf 를 계산합니다.
print(tfidf.vocabulary_)# 각 단어의 인덱스가 어떻게 부여되었는지를 보여줍니다.
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
output :
[[0. 0.43306685 0.56943086 0.43306685 0. 0.
0.33631504 0. 0.43306685]
[0. 0.30833187 0. 0.30833187 0. 0.81083871
0.2394472 0. 0.30833187]
[0.54645401 0. 0. 0. 0.54645401 0.
0.32274454 0.54645401 0. ]]
{'this': 8, 'is': 3, 'the': 6, 'first': 2, 'document': 1, 'second': 5, 'and': 0, 'third': 7, 'one': 4}
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
다음 시간에는 TfidfVectorizer()와 청와대 청원 데이터를 이용하여 실습을 진행해 보도록 하겠습니다.💫💫
↩️ 오늘의 파이썬 리스트
#데이콘_101 #AI #머신러닝 #딥러닝 #파이썬 #파이선 #데이터분석 #데이터사이언티스트 #코랩 #Python #colab #kaggle #pandas #numpy #sckit-learn #TfidfVectorizer
✅
done
✅
✅
✅
데이콘(주) | 대표 김국진 | 699-81-01021
통신판매업 신고번호: 제 2021-서울영등포-1704호
서울특별시 영등포구 은행로 3 익스콘벤처타워 901호
이메일 dacon@dacon.io | 전화번호: 070-4102-0545
Copyright ⓒ DACON Inc. All rights reserved
✅