728x90

 

 

 

  • Netflix Prize
  • Recommendation and Collaborative Filtering
  • KNN-based Methods
  • Martrix Factorization
  • Recent Recommenders
  • Case Study

Netflix Prize

RMSE(Root Mean Square Error)

$\frac{1}{\left|R \right|}\sqrt{\sum_{(i,x)}^{}(\hat{r}_{xi}-r_{xi})^2}$

넷플릭스 원래 RMSE 인 0.9514에서 10% 더 줄여라!

Recommendation and Collaborative Filtering

추천 알고리즘의 종류

  • User Profile matching
  • Content based recommendation
  • Collaborative filtering(using user-item interactions)

Background

types of user-item matrix data

  • Explicit feedback : 평점, 좋아요, 등등
  • Implicit feedback : 클릭, 구매, 북마크 등등

Evaluating Recommendation Method

  • Rating prediction perspective : RMSE
  • Classification : Precision, Recall, F-measure(F1 score)
    • top-N recommendation list contains the true items
  • Ranking : NDCG, MRR
    • 진짜 item 중에 top-N에 든 것들이 얼마인지

Content-based Approach

사용자 기록과 비슷한 contents를 추천함

Similarity : Cosine Similarity, Pearson Correlation

$sim(u, i)=cos(\overrightarrow{w_u}, \overrightarrow{w_i}) = \frac{\overrightarrow{w_u}\cdot \overrightarrow{w_i}}{\left\| \overrightarrow{w_u}\right\|_2\times \left\| \overrightarrow{w_i}\right\|_2} = \frac{\sum_{s\in S}r_{x,s}r_{y, s}}{\sqrt{\sum_{s\in S_{xy}}r_{x,s}^2} \sqrt{\sum_{s\in S_{xy}}r_{y,s}^{2}}}$

 

Collaborative Filtering(CF), KNN-based Method

domian 별로 따로 적용해 줄 필요 없음

비슷한 취향을 가진 사람들끼리 묶어주기

 

Pearson Correlation Coefficient

$sim(x, y)=\frac{\sum_{s\in S}(r_{x,s}-\bar{r_x})(r_{y, s}-\bar{r_y})}{\sqrt{\sum_{s\in S_{xy}}(r_{x,s}-\bar{r_x})^2}\sqrt{\sum_{s\in S_{xy}}(r_{y, s}-\bar{r_y})^2}}$

  1. 비슷한 사람을 Top-n을 이용해 뽑아주기
  2. Rate를 예측한다.
    • 그냥 평균 내 버리기
    • similarity를 고려하여 각각 sim을 곱한 후, sim만의 합으로 나눠 구하기
    • 주로 4점을 주는 사람과 주로 2점을 주는 사람들의 영향을 받지 않기 위해 비슷한 사람의 평균을 고려해 예측해 주기

variation : 사람 말고 콘텐츠 기반 CF도 있음

Matrix Factorization

Latent Factor Models

딥러닝 때 나왔던 내용이다. 이 데이터 사이언스는 좀 구식의 기술을 다룬다고 수업 초기 때부터 말하시긴 하셨는데

이렇게 이어지는 군!

MSE를 줄이는 방향으로 학습시켜 latent feature들을 찾아낸 다음 matrix의 빈 부분들을 채워 넣는다.

여느 model이 그렇듯 overfitting 문제가 발생한다.

Regularization 진행해 줘야 함

여기에 Bias 랑 time까지 고려해서 달성했다는 이야기~

 

마지막 부분의 식은 범위에 맞지 않아 휙휙 넘어갔으므로 넘어간다.

 

728x90

'데이터 사이언스' 카테고리의 다른 글

Clustering 후반부 - 2단계  (1) 2024.06.17
Clustering 후반부 - 3단계  (0) 2024.06.17
Getting to know Your Data & Data preprocessing  (1) 2024.06.17
Clustering 전반부 - 3단계  (0) 2024.06.10
Clustering 전반부 - 2단계  (1) 2024.06.09