[RecSys] 추천시스템이란?

mincheol2·2022년 3월 7일
0

RecSys

목록 보기
1/23

이 글은 부스트캠프 AI Tech 3기 강의를 듣고 정리한 글입니다.

개요

Query 라는 Keyword로 검색하면 그 결과에 맞는 정보를 주는 것
사용자가 정확한 의도를 가지고 검색하여 당겨오는 방식으로 pull 방식이라고도 한다.

Recommendation

사용자의 흥미나 의도를 고려하여 정보를 추출해 주는 것으로 Push 방식이라고도 한다.

추천시스템의 필요성

  • 과거에는 상품, 컨텐츠의 양이 제한적
  • 웹/모바일 환경은 다양한 상품, 컨텐츠를 등장시킴
    • 정보의 부족 -> 정보의 풍요
    • Few Popular Item -> Long Tail Phenomenon
  • 정보를 찾는데 시간이 오래걸림

개인화

Long Tail Phenomenon 로의 변화로 개인화가 중요시 됨

즉 LongTail 추천이 잘 될 수록 개인화가 잘 된것으로 볼 수 있음

Ex) 유튜브 동영상 추천

조회수가 급상승한 영상 -> 관련 영상 -> 채널의 영상 추천
( 조회수가 적은 경우에도 )

Ex) SNS 친구 추천

수많은 유저 가운데 내가 알만한 사람들을 추천

사용 데이터

User 관련 데이터

  • 유저 프로파일링
    : 유저에 관련된 정보를 구축 -> 개별 유저 혹은 유저 그룹별로 추천

  • 식별자(Identifier) (가장 중요)
    : 유저 ID / 디바이스ID(광고 추천시) / 브라우저 쿠키(로그인 안했을 시)

  • 데모그래픽 정보
    : 성별, 연령, 지역, 관심사
    유저로부터 직접 수집하는 것이 가장 좋지만 개인정보보호법으로 어려워 지면서 추정으로 알아내기도 한다.


  • 유저 행동 정보
    : 페이지 방문 기록, 아이템 평가, 구매 등의 피드백 기록

Item 관련 정보

  • 아이템 프로파일링
    • 아이템 ID ( 가장 중요 )
    • 아이템의 고유정보(meta data)
      : Content based recommendation에서 주로 쓰임
      ex )
      영화 -> 장르, 감독, 배우, 소개글, 개봉년도 등
      상품 -> 카테고리, 브랜드, 출시일, 상품 이미지 등

User-Item Interaction 정보

  • Feedback : user 가 아이템과 상호작용시 남은 Log

    • Explicit Feedback
      유저가 아이템에 대한 만족도를 직접 평가 한 경우
      ex) 영화평점, 음식점 리뷰평점 등


    • Implicit Feedback
      유저가 아이템을 간접적으로 평가했다고 볼 수 있는 경우
      ex) 클릭 , 해당 아이템 구매, 영상 재생 등

추천시스템 현업에서 핵심 데이터는 Implicit Feedback 이다.

주의할 점은 Implicit Feedback은 선호도(Preference)를 확신 할 수 없다는 점이다.
(논문을 읽다보면 Implicit Feedback 은 Preference 가 아닌 신뢰도 Confidence 를 보장한다는 말이 자주 보인다.)

문제 정의

추천 시스템의 목적은 특정 유저에게 적합한 아이템을 추천하는 것이다.
그렇다면 user-item interaction 을 평가할 score가 필요하다.

랭킹( Ranking ; Top K )

유저에게 적합한 아이템 Top K개를 추천하는 문제

Top K 를 정하기 위한 score 가 필요하지만 유저가 아이템에 가지는 정확한 선호도를 구할 필요는 없음

이말인 즉슨 score 와 평점의 스케일이 달라도 상관 없다.
(예를 들어 score 범위가 0~100 이고 평점은 1~5 라도 상관 없다)

  • 평가지표 : Precision @ K , Recall @ K, MAP @ K, nDCG @ K

평가지표 정리

예측( Prediction )

유저가 아이템을 가질 선호도를 정확하게 예측 (평점 / 클릭or구매확률)

Explicit Feedback : U가 영화 A에 내릴 평점값 예측

Implicit Feedback : U가 I를 구매할 확률 예측

-> user-item matrix completion 문제로 귀결됨

  • 평가지표 : MAE, RMSE , AUC
profile
옹오옹오오오옹ㅇㅇ

0개의 댓글