2.3.2 Item-Based Neighborhood Models
- item 기반 이웃 모델에서 피어그룹은 user가 아닌 item을 기준으로 구성됩니다.
- 따라서 item간에 유사성을 계산해야 합니다.
- 2.3.1과 마찬가지로 열간의 유사성을 계산하기 전에 등급 행렬의 각 행이 평균을 차감하여 중심화합니다.
- 이를 통해 평균 중심등급 s_(uj)를 계산합니다.
- item i에 대한 등급을 지정한 사용자 집합의 인덱스를 U_i로 지정합니다.
- 즉 user기반 등급 매트릭스에서 user가 지정한 item에 따라서 I_u를 지정했다면, item기반 등급 매트릭스에서는 item에 대한 등급을 지정한 사용자에 따라서 U_i를 지정합니다.
- 예를 들어 첫 번째, 세 번째, 네 번째 사용자가 item i에 대해서 등급을 지정한 경우 U_i={1,3,4}가 됩니다.
- 그 후 item(열) i와 j의 조정된 코사인 유사도(평균 중심으로 중심화 했기 때문)는 아래와 같이 정의 됩니다.

- item 기반 이웃 모델의 경우, 일반적으로 수정된 코사인(평균 중심화가 적용된)방법으로 유사도를 구하는 것이 좀 더 우수한 결과를 제공합니다.
평가 등급 예측 과정
첫 번째 단계
- 앞서 언급한 조정된 코사인 유사도를 바탕으로 예측할 item t와 가장 유사한 상위 k개 item을 결정합니다.
- 사용자 u가 등급을 지정한 항목 t에 대해 상위 k개 일치 항목을 Q_t(u)로 표시합니다.
두 번째 단계
- 상위 k개 일치 항목을 활용하여 예측 등급을 아래와 같이 계산합니다.

- item 기반 이웃 모델의 기본적인 아이디어는 예측의 마지막 단계에서 유사한 item에 대한 사용자 자신의 등급을 활용하는 것입니다.
- 또한, 변형 가능한 방법들도 위의 사용자 기반 방법과 유사합니다.
Example of Item-Based Algorithm
- 기존의 평가 등급을 평균 중심화를 적용하고, item-item간의 코사인 유사도를 계산한 결과가 아래와 같이 정리되어 있다고 하겠습니다.

- 여기서 첫 번째 item의 평가 등급중 세 번째 사용자의 평가 등급이 누락되어있습니다.
- 이를 item 기반 방법으로 계산해보겠습니다.
- 우선 첫 번째 item과 다른 item간의 유사도를 계산하여 이 중 가장 높은 유사도를 가지는 2개의 item을 선정하겠습니다.
- 표에서 확인할 수 있듯이 두 번째와 세 번째 item의 유사도가 가장 높습니다.
- 이제 기존(원시)등급과 유사도를 곱하여 가중치로 활용한 후 이를 통해 누락된 평가등급을 계산합니다.

- 위와 마찬가지로 여섯 번째 item의 평가에서 누락된 평가 등급도 계산해보았습니다.
- 위에서 언급하였던 것처럼 이웃 모델의 기본적인 아이디어는 예측의 마지막 단계에서 유사한 item에 대한 사용자 자신의 등급을 활용하는 것이기에 세 번째 사용자의 평가등급을 활용하여 계산하였습니다.
- 이러한 item 기반 방법의 경우는 해당되는 사용자의 다른 평가등급과 유사한 등급으로 예측이 가능 하기 때문에 예측 정확도가 높다는 것이 주요 장점입니다.
정리
사용자 기반
- 유사도의 기준이 사용자-사용자 입니다.
- 해당 사용자가 미평가한 'item'의 등급을 알기 위해서 사용합니다.
- 유사도*(유사도가 가장 높은 사용자의 평가등급)의 합/(유사도가 가장 높은 사용자 들의 유사도)의 합 으로 계산합니다.
- 일반적인 사용자 기반은 피어슨 상관계수를 유사도로 택한 것이 결과가 더 좋습니다.
- 사용자 기반은 찾고자 하는 user의 평가등급을 해당 item을 평가한 다른 user의 평가등급을 기반으로 계산합니다.
item 기반
- 평균 중심화를 적용한 코사인 유사도를 활용합니다.
- 해당 item을 미평가한 'user'가 평가 할 등급을 알기 위해서 사용합니다.
- 유사도*(유사도가 가장 높은 item의 평가등급)의 합/(유사도가 가낭 높은 item의 유사도의 합 으로 계산합니다.
- 일반적인 item 기반은 수정된(평균 중심화가 적용된) 코사인 유사도로 계산한 것이 결과가 더 좋습니다.
- item기반은 결국 찾고자 하는 item의 평가 등급을 해당 user의 다른 item 평가등급으로 기반으로 계산합니다.2.3.2
'[Rec-Sys]' 카테고리의 다른 글
| [ch02] 2.3 Predicting Ratings with Neighborhood-Based Methods(4) (0) | 2021.12.27 |
|---|---|
| [ch02] 2.3 Predicting Ratings with Neighborhood-Based Methods(2) (0) | 2021.12.14 |
| [ch02] 2.3 Predicting Ratings with Neighborhood-Based Methods(1) (0) | 2021.12.08 |
| [Ch02] 2.2 Key Properties of Ratings Matrices (0) | 2021.12.02 |
| [Ch02] 2.1 Introduction (0) | 2021.12.01 |