공부 기록
추천 알고리즘 (Recommendation Algorithm) 본문
사용자가 선호할만한 아이템을 추측함으로써 여러 가지 항목 중
사용자에게 적합한 특정 항목을 추천하여 제공하는 알고리즘
1. 추천의 종류
사용자의 행동 로그(behavior log) 데이터로 사용자의 호감을 조사하고 좋아할만한 아이템 추천
- 전체 추천 : 불특정 다수에 대한 무작위 추천 ex) TV 광고, 네이버 광고배너 등
- 그룹 추천 : 사용자를 특정 분야로 나눠 그에 특화된 추천을 제공 ex) 대학생 인기검색어 등
- 개념 추천
- 사용자의 이력을 바탕으로 관심사를 추축해 맞는 아이템을 보여줌
- 일반적으로 협업 필터링(Collaborative Filtering)이 사용되며 추천 알고리즘의 기반이 됨
- 아이템 기반 추천
- 아이템 기반의 추천 ex) 쇼핑몰의 유사 상품 추천, 넷플리스나 유튜브 추천 영화나 동영상
- 단일 알고리즘으로 쓰이지 않고 개인 추천과 하이브리드 형태로 결합하거나 메타 데이터를 이용해 재가공
선호도 조사 방법
사용자 레이팅(User Rating)
협업 필터링을 위한 기본 데이터이다. 사용자의 선호도 조사 방법은 아래와 같다
- 명시적 레이팅(explicit rating)
- 사용자의 분명한 피드백을 받는 방법
- 단점
- 데이터 반약도(data sparsity)가 크다 ex) 물건을 구매후 정성적인 평점과 리뷰를 남기는 경우가 적음
- 점수 편향이 존재 ex) 상품에 부정적인 경험을 한 사람이 피드백을 남길 가능성이 더 낮다
- 점수 범위(scope)가 사용자 마다 다르다 ex) A는 2~4점 사이, B는 3~5점 사이 점수만 준다면 평균의 의미가 없어짐
- 암묵적 점수(implicit feedback)
- 조회여부와 구매여부에 따라 선호도를 추정하는 방식
- 명시적 레이팅에 비해 편향이 적다
- 목록에 노출되었으나 조회하지 않으면 -1점, 목록에 노출되지 않았다면 0점, 조회되면 1점, 구매나 특정 액션을 했다면 3점 등으로 점수를 부여함
메타 데이터와 소셜 관계 데이터
콘텐츠 기반 필터링(Content-based filtering)을 위한 데이터는 메타 데이터와 소셜 관계 데이터
- 메타 데이터 :
- 소셜 관계 데이터 :
알고리즘 종류
개인 추천 알고리즘
- 행렬 분해(Matrix factorization, MF)
- 특정한 행렬에서 속성을 추출하기 위해 사용되는 방법
- 맞춤형 개인 추천을 위한 개념으로 특정 사용자 간의, 혹은 특정 아이템 소비군의 유사도를 분석하는데 큰 도움 된다행렬 분해(Matrix factorization, MF)
- 유클리드 거리, 코사인 유사도, 피어슨 상관계수를 이용한 유사도 측정
개념 추천 알고리즘
- 협업 필터링(Collaborative Filtering, CF)
- 모델 기반의 협업 필터링과 메모리 기반 협업 필터링이 존재
- 모델기반 협업 필털이 : 나이브 베이지안(Naive Bayesian)이나 뉴럴 네트워크(Neural Network) 등 다양한 머신러닝 기법을 통해서 추천
- 메모리기반 협업 필터링 :
- 유저와 아이템에 대한 레이팅을 모두 메모리 위에 올려두고 유저/아이템 간의 관계를 계산
- 장점 : 간단하지만 의외로 추천의 성능이 매우 좋음
- 단점 : 커버리지 자체가 낮은편
- 최소 한 번 이상의 조회가 일어난 상품이 아니면 추천 리스트에 올라갈 수 없고, 새로운 유저나 아이템에 대해 레이팅 자체가 존재하지 않아 품질 저하 문제가 발생
- 또, 기본적으로 인기도에 의한 추천이기 때문에 인기 있는 사움들이 계속 추천될 확률이 높음
- 행렬 분해와 유사성 측정을 통해 개인 추천을 하더라도 해당 상품의 인기에 크게 의존하여 만족도가 떨어질 수 있음
랭킹과 필터링
- 이미 유저가 충분히 알고 있는 아이템은 제거한다.
- 자주 노출되거나 사용자가 이미 조회/구매한 아이템은 필터링하고, 유사한 아이템이나 다른 새로운 아이템의 순위를 더 높여 사용자의 피로도를 최소화하고 만족도를 높이는 것이 중요
REF
http://wiki.hash.kr/index.php/%EC%B6%94%EC%B2%9C_%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98