본 포스팅은 Fastcampus 강의를 수강하며 일부 내용을 정리한 글임을 밝힙니다. 보다 자세한 내용은 아래 강의를 통해 확인해주세요.
참고 : Fastcampus 딥러닝을 활용한 추천시스템 구현 올인원 패키지 Online
Ch 04. Contents-based Recommender System
Vector Representation
- 가정: m개의 review 문서
- 문서 전체에 등장하는 단어의 수는 n개
- 각 항목은 해당 단어가 review에 등장하는 빈도수 의미
- (Review 1, Word 0) = 2 ➡️ Review 1에 Word 0은 2번 등장
Term Vector Representation
-
Term Weight
- (i,j) = weight
- Term Frequency Vector: 단어의 빈도수로 벡터화. 문서 i에서 단어 j의 중요도
-
TF-IDF
- 흔하게 등장하는 단어는 중요하지 않은 단어
- Information Retreival에서 많이 사용하는 개념
- 각 단어에 가중치에 부여해서 Keword extraction 등에 활용
- 문서에서 특정 단어가 등장하는 것으로 문서끼리 관련있음을 표현 가능
- TF: 단어 w가 문서 d에 등장한 빈도수
- DF: 단어 w가 등장한 문서 d의 수
- N: 전체 문서 수
-
TF(w,d)=문서내모든단어의수문서내단어w의수
-
IDF(w,d)=log(단어w가포함된문서수(DF(W))전체문서수(N))
- If "단어 w가 포함된 문서 수 = 전체 문서 수", then TF−IDF(w,d)=0 (가중치=0)
- 즉, 단어 w가 모든 문서에 포함됐다는 것이므로 단어 w는 정보력은 없다!
-
DF가 큰 단어는 정보력이 적다
- 문서 Corpus(말뭉치)에 모두 포함된 단어는 흔히 등장한 단어 ➡️ 의미 크지 않음
- 흔하게 등장하는 단어는 유사도 계산에서도 제외됨
- 대부분 문법적 역할을 하는 조사, 관사 등
정리
-
TF−IDF(w,d)=TF(w,d)×IDF(w)
-
TF는 해당 단어가 해당 문서에서 얼마나 자주 등장하는지 체크
-
IDF는 해당 단어가 얼마나 다른 문서에 비해 해당 문서에서 특별한지 체크
TF-IDF로 장르, 영화, tag 이용한 추천 알고리즘 실습
Review
- 컨텐츠기반 추천시스템
- 컨텐츠를 어떻게 활용할 수 있는지
- 어떻게 컨텐츠들이 서로 연관이 있는지 평가하는 방법
- 근접이웃기반 컨텐츠기반 추천시스템 ➡️ k-nearest neighbor
- naive bayes classifer ➡️ 나이브베이즈 추천시스템
- TF-IDF 개념설명 그리고 실습