Recsys Use cases
2025년 04월 15일
#AI
부스트캠프 AI Tech RecSys Track에서 학습한 강의들을 바탕으로 정리한 글입니다.
Recommender System Examples
Youtube
Deep Neural Networks for YouTube Recommendations
1. Candidate Generation → 2. Ranking
문제 상황
-
Scale
- 수천만 개 이상의 비디오 중에서 수백 개만 보여줘야 함
-
Freshness
- 사용자 취향과 콘텐츠는 계속 변함
- 빠른 업데이트와 실시간성 필요
-
Noise
- 명시적 피드백 부족, 암묵적 피드백(클릭, 시청 시간 등) 위주
- 유저 행동 로그는 매우 희소하고, 노이즈가 많음
1. Candidate Generation (수백만 → 수천)
사용자에게 보여줄 Top-N 후보 아이템을 먼저 뽑음
-
문제 정의:
- extreme multiclass classification
- 전체 비디오 중에서 적절한 수천 개의 후보를 선택
-
User Vector 생성 방식
- Watch history, search query, context info 등의 feature vector를 concatenate 후 dense layer 통과
- 학습 시점 기준의 예시(Example Age) 정보 포함
-
Output Layer
- 학습: Softmax로 각 비디오에 대한 확률 분포 학습
- 서빙: ANN(Approximate Nearest Neighbor) 방식으로 빠르게 최근접 후보 검색
2. Ranking (수천 → 수백)
Candidate로 뽑힌 비디오들을 정교하게 정렬하여 실제 추천 리스트를 생성 단계
-
풍부한 feature 사용
- 유저 + 비디오 관련 feature들을 모두 활용
- ex) 사용자 위치, 디바이스, 시청 시간, 콘텐츠 유형 등
-
학습 목표
- 단순한 클릭이 아닌 시청 시간(view time) 등을 기반으로 학습
- Weighted Cross Entropy Loss 사용
→ 비디오 시청 시간에 따라 label의 weight 조정 - 낚시성/광고성 콘텐츠에 높은 점수를 주지 않도록 시청 시간에 기반한 정교한 Loss 설계
-
Feature Engineering 중심의 구조
- Deep Learning 모델 구조보다는 도메인 지식이 중요
- Feature selection/engineering에 따라 성능 편차 큼
Taobao
Contextual User Browsing Bandits for Large-Scale Online Mobile Recommendation
Netflix artwork
관련 글
추천 시스템 정리 (3)
부스트캠프 AI Tech RecSys Track에서 학습한 강의들을 바탕으로 정리한 글입니다. Bandit for Recommendation > Multi-Armed Bandit(MAB) 문제는 강화학습의 기초적인 형태로, 여러 개의 슬롯머신(arm)이 존재할 때 어떤 arm을 어...
추천 시스템 정리 (2)
부스트캠프 AI Tech RecSys Track에서 학습한 강의들을 바탕으로 정리한 글입니다. AutoEncoder for Recommender Systems 입력 데이터를 출력으로 복원하는 비지도 학습 모델. 중간 hidden layer는 input 데이터의 feature rep...
추천 시스템 정리 (1)
부스트캠프 AI Tech RecSys Track에서 학습한 강의들을 바탕으로 정리한 글입니다. Basic 유저는 직접 검색을 하지 않아도, 추천 알고리즘에 따라 유저의 취향에 맞는 아이템을 추천 받는다. (1) 유저의 직접적인 가이드가 없는 상황에서도 아이템을 선별해 주는 것과, ...