2016년 1월 28일 목요일

협업적 여과 방법

전자상거래 추천 자주 사용되고 있는 협업적 여과 방법을 이해하고, 관련한 주요 알고리즘을 알아 본다.

협업적 여과 방법

(Collaborative Filtering, CP)
사용자로 부터 얻은 기호 정보에 따라 관심사를 자동적으로 예측하게 해주는 방법이다.
널리 애용되는 방식이며 데이터가 풍부할 수록 정확한 예측에 유리하다.

사용자 기반의 유사 기호 군집 나누기
인구통계학적인 접근
 - 연령대, 성별, 지역 …
고객 세분화 기법
 - RFM (Recency, Frequency, Monetary)

아이탬 기반의 연관 상품 찾기
연관 규칙
 - 하나의 트랜잭션 내에서 동시 발생되는 항목간의 연관성을 발견한다.
순차 패턴
 - 트랜잭션 간에 순차 관계 연관성을 발견한다.

상품 추천 예시
 - 같은 연령대가 자주 구매하는 상품 목록을 제공한다.
 - 선택한 상품과 같이 자주 구매하는 상품 목록을 제공한다.
 - 같은 연령대가 선택한 상품과 같이 자주 구매하는 상품 목록을 제공한다.

* 선택 요소
차원 별로 추천 항목을 관리하고, 구매자가 여과해서 볼 것인가?
판매자가 위치에 가장 적합한 항목을 구매자에게 노출할 것인가?

관련 알고리즘

RFM (Recency, Frequency, Monetary)
수익에 기여하는 주요 영향인자인 RFM(최근, 빈도, 금액)에 가중치를 둬서 고객을 세분화하는 기법이다.

연관 규칙 (Association Rule)
하나의 트랜잭션 내에서 동시 발생되는 항목간의 연관성을 발견한다.
{a,b}, {a,b,c,d},{d}

순차 패턴 (Sequential Pattern)
트랜잭션 간에 순차 관계를 통해 향후 구매될 상품을 예측한다.
{a,b,c} -> {b,d} -> {a,c,e}

연관 규칙을 찾기 위한 Apriori 알고리즘 
데이터 처리 시에 방대한 자료 구조 비용을 해소 하고자, 바톰/업 방식으로 빈번하지 않은 부분 집합을 제거해가는 방식이다. 포인트는 집합의 빈도는 집합의 부분 집합의 빈도보다 많을 수 없다는 사실에서 시작한다.

빈번하지 않다는 것은 지지도가 낮은 것을 의미하는데, 공식을 통해서 알아보자.
순차 패턴에서 방향성을 표현한다고 할때 지지도와 신뢰도이다.

A -> B

지지도(support)
A와 B를 동시에 포함하는 트랜잭션 수 / 전체 트랜잭션 수

신뢰도(confidence)
A와 B를 동시에 포함하는 트랜잭션 수 / A를 포함하는 트랜잭션 수
= 지지도 (A and B) / 지지도 A

지지도와 신뢰도를 충족하는 목록을 추출하는 것이 목적이다.


커버사진
출저: 아마존 상품 추천 화면

0 개의 댓글:

댓글 쓰기