Ch 07-1. Hybrid Recommender System

Yeonghyeon·2022년 8월 4일
0

Recommender System

목록 보기
19/33

본 포스팅은 Fastcampus 강의를 수강하며 일부 내용을 정리한 글임을 밝힙니다. 보다 자세한 내용은 아래 강의를 통해 확인해주세요.
참고 : Fastcampus 딥러닝을 활용한 추천시스템 구현 올인원 패키지 Online


Hybrid Recommender System;
하이브리드 ➡️ 뭐든지 합친다 (성능 향상 기대, 어떤 효과 있을지, 어떤 장단점 있을지)
즉, contents-based recommder system과 collaborative filtering의 장점만 합쳐보는 작업

Contents-based vs. Collaborative Filtering

Contents-based

장점

  1. 다른 사용자에 의존할 필요 X

  2. 새로운 아이템 추천 가능

단점

  1. 아이템의 비슷한 분류를 주로/계속 추천할 수 밖에 없음

  2. 눈에 보이는 특징만 활용가능, 아이템의 잠재적 의미 활용하기 어려움

Collaborative Filtering

장점

  1. 집단지성 활용 ➡️ 평가(추천성)의 품질 높아짐

  2. 잠재적 특징 활용 ➡️ 폭넓은 추천 가능 (in Model-based CF)

  3. Implicit feedback 활용 가능

  4. 데이터가 쌓일 수록 추천 품질 향상

단점

  1. 한번도 평가되지 않은 아이템을 추천할 확률 적음 (cold-start)

  2. 과거 데이터에 의존 ➡️ 초기(또는 데이터가 부족한) 사용자에게는 추천 품질 떨어짐

  3. 과거 데이터와 큰 사이즈 데이터에 굉장히 의존 (더 배울 수 있는 것이 많아지고, 잠재적 특징 더 발견 가능)

Hybrid란

  • 다양한 데이터와 다양한 알고리즘 조합하는 방식

    • 유저와 아이템 프로필, 유저와 아이템의 상호관계, 유저 주변의 다른 유저 정보, 아이템과 비슷한 다른 아이템 정보
  • 가용할 수 있는 최대 정보(지식)을 다양한 source로부터 얻어서 활용하는 방식

  • 다양한 추천알고리즘의 장점만 모아서 성능 좋고 뛰어난 시스템 만드는 방식

    ➡️ Robust한 inference 가능

Hybrid Recommender System이란

하이브리드의 목적

0점을 60점대로 올리는 것이 아닌, 60점대의 여러 모델을 하이브리드해서 최종 70점대를 찍는 것

Simple Hybrid Method

wegithed Ensemble

  • 여러 모델의 추천 결과(score, 유사도, 평점 등)를 하나로 ensemble 하는 기법
    • 각 모델마다 weight가 있다고 가정하고, 모델 별로 나타낸 결과에서 각 weight를 곱해서 ensemble 결과 도출
    • 이때 모델의 weight를 정하는 방법: 모델 별로 test셋에 대한 성능을 기준으로 가장 높은 성능을 낸 모델은 큰 weight, 가장 성능이 낮은 모델은 작은 weight를 줌

Other Hybrid Methods

- Weighted Ensemble

  • Soft Ensemble(점수) 또는 Hard Vote(다수결)와 같은 방법으로 여러 모델의 추천결과를 하나로 합쳐서 최종 추천 아이템 정하는 방식

- Mixed

  • 추천시스템이 적용될 플랫폼에 특징이 다른 여러 추천알고리즘 활용하고, 이때 알고리즘의 추천 결과를 모두 보여주는 방식

- Switch

  • 플랫폼 내 사용자 or 서비스 상태 등 특정 상황 고려하여 여러 추천 알고리즘의 추천 결과를 선택적으로 보여주는 방식
  • ex) 사용자 접속 기기: 모바일 기기 ➡️ content-based, 컴퓨터 ➡️ collaborative filtering

- Feature Combination

  • 보유하고 있는 데이터로부터 얻을 수 있는 다양한 feature를 모두 조합하여 추천 알고리즘을 학습하고 추천하는 방식 (하나의 추천 알고리즘에 모든 feature 때려 넣음)

- Meta-Level

  • 여러 추천 알고리즘을 활용할 때 첫번째 모델이 다음 모델의 input이 되면서 서로가 서로의 정보를 학습하여 추천하는 방식
  • 다음 모델은 더 나은 추천모델이 될 수 있음 (이전 모델이 잘한 것(장점)을 바탕으로 다음 모델은 더 잘하겠지)

Evaluation for Hybrid Methods

1. Service Perspective

  • Business KPI: 사업 목표 달성했는지
  • Online/Offline evaluation

2. Model Performance Perspective

  • Accuracy, Coverage, Popularity
  • Diversity, Serendipity(Novelty), Scalability : 수치화된 점수들이 더 좋아졌는지 다양한 지표로 측정
  • Personlization
  • Rating Prediction: RMSE, NDCG

0개의 댓글