👥
협업 필터링 (Collaborative Filtering)
\"너랑 취향 비슷한 사람이 이거 좋아했어\"
추천시스템의 원조격이다. 1990년대부터 쓰였고, 아직도 많은 서비스의 기반이다.
User-based CF
나와 비슷한 평점 패턴을 가진 유저를 찾고, 그 유저가 좋아한 아이템을 추천한다. 직관적이지만 유저 수가 늘면 계산 비용이 폭발한다.
Item-based CF
아이템 간 유사도를 미리 계산해 놓는다. "이 영화를 본 사람들이 저 영화도 봤다" 패턴. Amazon이 초기에 이걸로 대성공했다. 유저 수보다 아이템 수가 안정적이라 스케일링에 유리.
CF의 근본적 한계는 cold start다. 새 유저나 새 아이템은 행동 데이터가 없으니 추천이 불가능하다. 이걸 보완하려면 Content-based나 하이브리드 방식이 필요하다.
동작 원리
1
유저-아이템 상호작용 매트릭스 구성
2
유저 간 또는 아이템 간 유사도 계산 (코사인, 피어슨)
3
유사한 유저/아이템의 평점을 가중 평균으로 예측
4
예측 점수 기준 상위 N개 추천
장점
- ✓ 도메인 지식 없이도 작동한다
- ✓ 구현이 단순하고 직관적
단점
- ✗ Cold start 문제 (새 유저/아이템)
- ✗ 스파스 매트릭스에서 성능 저하
사용 사례
Netflix 초기 추천 엔진
Amazon \"이 상품을 구매한 고객이 함께 구매한 상품\"