코드
from sklearn.feature_extraction.text import TfidfVectorizer #한글 to vector
sentence=("오늘도 폭염이 어여졌는데요, 내일은 반가운 비 소식이 있습니다","오늘도 폭염이 어여졌는데요, 내일은 반가운 비 소식이 있습니다","폭염을 피해 놀러왔다가 갑작스런 비로 망연자실하고 있습니다")
vector = TfidfVectorizer(max_features=100) #vector 100개 뽑기
tfidf_vector = vector.fit_transform(sentence)
print(vector.get_feature_names_out())
print(tfidf_vector.shape) #3개의 문장, 13개의 feacture로 선택된 단어
print(tfidf_vector[0])
from sklearn.metrics.pairwise import cosine_similarity
print(cosine_similarity(tfidf_vector[0], tfidf_vector[1])) #코사인으로 유사도 비교
print(cosine_similarity(tfidf_vector[1], tfidf_vector[2]))
<결과>
['갑작스런' '내일은' '놀러왔다가' '망연자실하고' '반가운' '비로' '소식이' '어여졌는데요' '오늘도' '있습니다'
'폭염을' '폭염이' '피해']
(3, 13)
(0, 9) 0.3022161829694632
(0, 6) 0.38915836081458494
(0, 4) 0.38915836081458494
(0, 1) 0.38915836081458494
(0, 7) 0.38915836081458494
(0, 11) 0.38915836081458494
(0, 8) 0.38915836081458494
[[1.]]
[[0.07083962]]