머신러닝(Machine Learning)/추천 시스템(Recommendation System)

추천 시스템 개발을 위한 웹로그 수집 방법 1 of 2

leebaro 2017. 9. 26.
728x90


효과적인 추천 시스템 구축을 위해서 웹로그 분석은 매우 중요한 역할을 한다.

현재 진행 중인 추천 시스템 구축 프로젝트에서도 상용 웹로그 수집/분석 솔루션을 이용하여 로그를 수집하고, 고객을 이용 패턴을 분석하기 위해 웹로그를 사용한다.


기업에서 웹로그 수집 솔루션을 사용하고 있으면 해당 솔루션에서 발생하는 데이터를 전달 받아 사용하면 되지만 만약 그런 솔루션이 없다면 웹로그 수집이 선행되어야 한다.(물론 웹 로그가 없다고 추천 시스템을 구축하지 못하는 것은 아니다.)


그럼 웹로그가 추천시스템 개발 시 어떤 용도로 사용되는지와 웹로그를 수집할 수 있는 방법에 대해 간단하게 정리 해보려고 한다.


추천 시스템에서 웹 로그가 필요한 이유


웹로그가 필요한 이유는 다양하게 있겠지만 생각나는데로 적어본다.(온라인 쇼핑몰이라고 가정하겠다.)

  1. 고객의 방문 성향 분석
    고객이 얼마의 주기로 방문을 하는지, 얼마의 시간동안 쇼핑을 하는지, 주로 접속하는 시간이 언제인지, 주로 접속하는 요일이 언제인지 등을 알 수 있다.
  2. 고객의 관심 상품 분석
    고객이 접속해서 어떤 상품을 조회하는지 확인 할 수 있다. 고객이 상품의 특정 카테고리를 클릭하거나, 특정 상품의 상세 페이지를 클릭한다면, 해당 상품에 관심이 있다고 가정할 수 있다.

  3. 접속 세션별 관심 상품 분석
    동일한 고객이라도 세션별로는 다른 목적을 가지고 쇼핑몰에 접속했다고 볼 수 있다. 고객이 어제 접속 시에는 의류와 관련된 쇼핑을 주로 했지만, 오늘 접속시에는 모자를 주로 봤다면, 같은 고객이지만, 두 개의 세션은 다른 목적을 가지고 있다고 볼 수 있다. 이 경우 한 명의 고객이지만 두 명의 고객으로 분류하여 데이터를 학습한다면, 향후 다른 고객이 모자에 관심 있는 고객이 접속 시 모자에 관심있던 세션에 대한 학습 데이터 기반으로 추천 하는 것이 구매 확률을 높일 수 있다.

  4. A/B 테스트 결과 검증
    추천 시스템을 개발할 때는 한 개의 모델을 만드는 것이 아니다. 다양한 추천 모델을 만들어 검증을 하고, 해당 도메인의 전문가에게 추천 결과에 대한 피드백을 받고, 문제가 없다면 그 다음에 고객 대상으로 A/B 테스트를 한다. 이 때 A 모델과 B 모델을 고객에게 노출 시 어떤 추천 모델을 더 선호하는지 확인하기 위해서도 웹 로그가 필요하다.

  5. 추천 모델 적용 실적 분석
    최종적으로 선택된 모델을 적용 후 추천 결과에 대한 실적을 평가해야 한다. 이 때는 노출 대비 얼마나 클릭했는지, 화면의 어느 영역에 추천 상품을 노출시 효과가 있는지 분석하는데 활용된다.


다음 글에서는 웹 로그를 수집하는 방법에 대해서 정리해보고자 한다. 원래는 이 것을 적기 위해서 글을 시작했는데, 생각나는 내용들을 적다보니 다음으로 넘어가게 되었다.


다음 글에서는 웹로그를 수집하기 위한 상용 솔루션, 무료 솔루션, 오픈 소스들에 대해서 정리해 볼 것이다. 오픈 소스는 플럼(Flume), 스크라이브(Scribe), Fluentd, logstash에 대해서 이야기 해보려고 한다.



728x90