'market basket analysis'에 해당되는 글 1

  1. 2008/07/04 메바21 Textcube.com 지능형 추천 기술 : 연관글 추천 (16)

텍스트큐브닷컴의 공식 블로그 feedback 난에 연관글 처리에 대한 질문이 여럿 올라왔다.

왼쪽아래 노출되는 연관글



설정을 했는데 왜 안나오냐는 질문들이 많아서,
동작원리에 대해서 설명하겠다.

연관글 추천에는
데이터마이닝(data mining) 기술의 대표적인 예인 장바구니 분석(market basket analysis) 기술을 사용했다.

수집한 데이터가 다음과 같다고 가정하자.
우리 비디오 가게 손님의 수는 총 100명
"태극기 휘날리며" 를 빌려본 사람은 20 명
"실미도"를 빌려본 사람은 30명
"태극기 휘날리며", "실미도"를 같이 본 사람은 10명

데이터 마이닝의 결과는 다음과 같다.
"태극기 휘날리며"를 본 사람은 "실미도"도 본다.
지지도(support, 전체 손님중 두 비디오를 모두 본 손님 비율) = 10%
신뢰도(confidence, 규칙 정확도, 태극기 보는 손님중 반은 실미도를 봄) = 50%
* 이렇게 얻어진 패턴을 연관성 규칙 또는 연관 규칙이라고 부른다. association rule 이다. 두항목뿐아니라 그 이상의 항목에 대한 패턴이 찾아질 수 있다.

결과의 이용은 다양한데, 다음과 같이 이용될 수있다.
"태극기 휘날리며"를 본 사람은 "실미도"도 본다는 사실을 사용자에게 직접 알린다.
"태극기 휘날리며"는 보았지만, "실미도"를 아직 안본 손님에게 "실미도"를 권한다.
"태극기 휘날리며"와 "실미도"를 같이 진열한다.
"태극기 휘날리며"와 "실미도"를 같이 빌려보면 대여료를 깎아주는 행사를 한다.

텍스트큐브닷컴에서는 하단에 출력해주는 방식으로 적용했다.


같은 방식의 추천중 대표적인 것이 멜론 가수 추천이다.

중앙부근에 보이는 연관 가수 목록들



이승철, 박효신 등이 추천된다.

연관성 규칙은 두 개의 항목이 정해진 기준 이상으로 나타날 때만 패턴으로 추출된다.
간단하게 말하자면, 성시경 페이지와 이승철 페이지 모두들 보는 사람이 일정비율이 있을때에만 성시경을 볼 때 이승철이 추천될 수 있는 것이다.

textcube.com 에서 작성한 글 아래에 연관글이 노출이 되기 위해서는 두 글을 같이 보는 사람이 어느 정도 쌓여야 하고, 이를 분석하는 데이터마이닝 엔진이 실행되어 서비스에 반영된 이후여야하는 두가지 조건이 만족되어야한다. (데이터마이닝엔진은 하루에 한번 실행된다)

멜론 내부에 돌고 있는 데이터 마이닝 엔진을 개발한 사람과 textcube.com 내의 데이터마이닝 엔진을 개발한 사람이 동일하므로, 추천 기능으로 보자면 형제 서비스라고 할 수있다.

그렇지만, textcube.com 의 연관글 추천 엔진은 최근에 upgrade 된 엔진으로 속도가 10배 이상 빨라졌다.