[추천 시스템] 추천 시스템 관련 분야, 프로젝트 진행 방법 예시

Woong·2023년 10월 12일
0

추천 시스템

목록 보기
2/3

추천 시스템 관련 스킬 분야

비즈니스 문제 해결 능력

  • 추천 시스템을 도입하여 무엇을 기대할 수 있는지 정의
    • 사용자의 어떤 행동 변화를 기대하는가
    • Key Goal Indicator(KGI) 또는 Key Performance Indicator(KPI) 책정
      • 클릭률, 구입률, 체류율, 트윗 수 등
    • 시스템과 서비스상 사용자 행동에 관한 이해

데이터 사이언스 능력

  • 추천 시스템을 구현하기 위한 능력
    • 데이터 양, 종류, 추천 시스템 구현 복잡도에 따라 요구되는 부분이 다를 수 있음
  • 데이터의 성질, 추천 알고리즘별 장단점 파악
    • Python, SQL 등 데이터를 가공
    • 추천 알고리즘 검토, 오픈소스 활용 및 개선, 논문 조사 및 적용 등

데이터 엔지니어링 능력

  • 비즈니스 요건을 고려하여 시스템을 안정적으로 가동하기 위한 능력
    • 데이터 가공, 추천 목록 작성, 데이터베이스 저장 등 파이프라인 조정
    • 병렬 처리, 데이터베이스 설계, 튜닝 등

프로젝트 진행 방법론 (예시)

과제 정의

  • 비즈니스상 목적을 명확히 하고, 이를 나타낼 KPI 결정
  • KPI 목표에 따른 과제 정리, 조치 검토, 목표 달성을 위한 정량적/정성적 분석
    • 정량적 분석 : 사용자 행동 로그 데이터 분석
    • 정성적 분석 : 사용자 인터뷰 등 정량화하기 어려운 분석. 사용자 심리 상태 등 파악에 활용

가설 수립

  • 각 과제별 대응책, 중요도, 비용, 우선순위 등 정리
  • 비용을 검토하고 비용 대비 효과(Return On Investment, ROI) 가 높은 순으로 진행
    • 경우에 따라 추천 시스템 도입 대신 검색 시스템을 개선하는 것이 유리할 수 있음

데이터 설계/수집/가공

  • 데이터 정리

    • 사용자, 아이템 콘텐츠 정보
      • 사용자 프로필: 나이, 성별 등
      • 사용자 기호 : 어떤 아이템을 좋아하는가
      • 아이템 : 아이템 설명, 태그, 카테고리, 등록일 등
    • 사용자, 아이템 인터랙션 정보
      • 열람, 북마크, 구입, 사용, 평가 등
  • ex) 서비스 초기 인터랙션 데이터가 없을 경우

    • -> 아이템 정보를 사용한 추천 시스템 구축부터 검토
  • ex) 아이템 정보가 부실한 경우

    • -> 직접 정리하거나, 크라우드 소싱(croud sourcing)을 활용해 보강

알고리즘 선정

  • 추천 시스템에 적용할 추천 알고리즘 선정
    • 계산 시간, 필요 데이터, 예측 정확도 등 고려

학습/파라미터 튜닝

  • 추천 시스템의 학습과 튜닝 수행

    • recall, precision 등 머신러닝 지표
    • 아이템 선택에 따른 추천 아이템이 납득이 되는가
  • 데이터 편향(bias) 고려

    • ex) 쇼핑몰은 별 5개가 많은 편향
    • ex) 검색 엔진에 따른 편향
      • 검색 결과 상위일수록 클릭률이 높아 추천 확률이 올라감

시스템 구현

  • batch 추천
    • 주1회, 일1회 등 주기적으로 추천 목록을 업데이트
    • 학습 모델에 따라 오랜 시간이 소요될 수 있음
    • 추천 모델 학습 -> 추천 모델에 의한 예측 2단계 처리로 작성
  • 실시간 추천
    • 사용자의 직전 행동 이력을 즉시 반영해 추천 목록 생성
      • 데이터 동기화, 실시간 연산 등 고려

평가 및 개선

  • A/B 테스트
    • 일부 사용자에게만 추천 기능을 제공해 구입 금액, 체류 시간 등 비교
  • 출시 전후 시계열에 따른 트렌드를 평가
  • 시스템 안에서의 이동으로 인한 영향도 고려
    • ex) 추천 시스템 도입 후 매출이 증가하였으나, 검색 사용자가 급격히 감소하는 등

reference

  • 서적 O'REILLY '추천 시스템 입문'

0개의 댓글