정보가 범람하는 시대에서 추천시스템은 유저가 선호할 만한 컨텐츠를 발견하는데 중요한 역할을 한다.
Amazon에서 구매하는 품목의 35%, 넷플릭스에서 사용자가 시청하는 컨텐츠의 75%는 추천시스템을 통해 이뤄진다.
1. Information Retrieval(IR) 정보 검색
- 정적 콘텐츠 기반 : 컨텐츠를 인덱싱(indexing) 하는데 시간을 투자
- 동적 정보 요구 : 쿼리들(Queries)이 "real-time"에서 존재
일반적인 접근으로 TF-IDF 가 있다.
TF-IDF
TF(Term Frequency) : 용어의 수
IDF(Inverse Document Frequency) : 문서 수의 반비례
문서 집합(corpus)에서 한 단어(term)가 얼마나 중요한지를 수치적으로 나타낸 가중치.
한 문서에서 단어가 등장하는 빈도가 높을 수록 커지고, 코퍼스에서 해당 단어를 포함하는 문서가 많을 수록 작아진다. [1]
2. Information Filtering(IF) 정보 필터링
- IR의 반대되는 접근 (동적 컨텐츠 기반, 정적 정보 요구)
- 유저의 요구를 모델링하는데 투자 : 유저 프로필 작성, 프로필을 기계학습 시키기, 피드백과 업데이트
- 새로운 콘텐츠를 필터로 거름
3. Collaborative Filtering(CF)
정보는 키워드나 토픽보다 퀄리티나 취향 같은 복잡성을 요구한다.
Collaborative의 의미
다른 유저의 데이터를 사용해 user-item preference 패턴을 찾는다.
이 때문에 추천시스템은 데이터 마이닝 분야에서도 확장되어 연구되기도 한다.
4. 추천 접근
1. Non-personalized and Sterotyped Recommendation
유명도, 인구통계 정보, 집단 선호도 등 집단의 성향을 분석하여 이뤄지는 추천
2. Product Association Recommendation
'A를 선호하는사람은 B 또한 선호한다' 같은 패턴을 활용
3. Content-based Recommendation
아이템의 내용에 기반해서 유저가 선호하는 것을 학습
4. Collaborative Recommendation
다른 유저의 경험에 기반해서 유저가 선호하는 것을 학습
5. 선호도 모델
Explicit Feedback
유저가 어떻게 생각하는지에 대한 의견
+ : 유저의 선호도를 명시적으로 표현
- : 얻는데 많은 비용을 요구함
예시) 평점, 리뷰, 투표
Implicit Feedback
유저의 행동으로 얻은 데이터
+ : 많이 수집할 수 있음
- : 유저의 행동이 반드시 선호를 반영하지 않음, 개인정보처럼 중요하게 고려되어야하는 부분이 있음
예시) 클릭, 구매, 팔로우
참조
[1] https://ko.wikipedia.org/wiki/Tf-idf