개발 일지
[추천시스템] Collaborative Filtering 협업 필터링 본문
Collaborative Filtering 협업 필터링
유저 A가 특정 이슈에 관해 유저 B와 같은 의견을 가진다면 또 다른 이슈에 관해서도 비슷한 의견을 가질 확률이 높다는 사실을 기반으로 한다.
Memory-based
1. 유저 간의 유사도를 기준으로 하는 User-Based
두 사용자가 얼마나 유사한 항목을 선호했는지를 기준으로 추천
각 사용자의 평가 점수를 하나의 벡터로 나타낸다면 두 사용자 간의 유사도는 두 벡터 간의 유사도로 정의할 수 있다.
벡터 간 유사도 계산에는 주로 코사인 유사도, 피어슨 유사도를 사용한다.
이러한 유저 기반 유사도 점수를 일종의 가중치로 사용하여 특정 사용자가 평가 하지 않은 컨텐츠에 대한 예측 평가 점수를 계산할 수 있다.
2. 아이템 간의 유사도를 기준으로 하는 Item-Based
유저로부터 받은 평가 점수를 사용해 아이템 간의 유사도를 계산할 수 있다.
User-Based 와 동일하게 아이템 간의 유사도를 사용하여 예측 점수를 계산할 수 있다.
현재 실제 추천 시스템 구현에는 User-Based보다 Item-Based가 더 보편적으로 사용된다. 그 이유로는 유사도 정보 업데이트의 유용성, 누적 데이터의 활용성 등이 있다.
참고
'ai' 카테고리의 다른 글
| [AI] SGD (Stochastic Gradient Descent) (0) | 2020.12.08 |
|---|---|
| [통계] Likelihood 가능도(우도) (0) | 2020.12.08 |