데이터사이언스/추천시스템

추천시스템 - (13) 특성 평가

_금융덕후_ 2020. 8. 8. 16:00
728x90
반응형

추천시스템

 

추천시스템의 특성 평가

추천시스템은 도메인에 따라 여러가지 특성이 존재한다.

방송이나 드라마와 같이 인기도(Popularity)가 중요한 도메인이 있고,

E-commerce와 같이  사용자의 현재 관심사가 중요한 도메인도 있고,

도서나 문학과 같이 장기적인 선호도를 고려해야하는 도메인이 있다.

이러한 추천시스템의 특성들을 조금 일반화하여 평가할 수 있는 6가지 지표를 설명한다.

 

 

Coverage

Coverage란 추천시스템이 추천을 할 수 있는 아이템의 비율이다.

이는 개인 혹은 어떠한 신뢰(Confidence) 임계점에 대하여,

얼마나 많고 다양한 아이템을 추천할 수 있는지를 측정하는 지표이다.

 

예를 들면, 전체 아이템의 갯수가 1000개가 있는데, 전체 유저가 대체로 본 아이템들이 10%에 해당하면,

경향성을 너무 잘 반영해 학습된 추천 시스템들은 위 10%에 해당하는 아이템들만 추천할 가능성이 높아진다.

전체 아이템을 더 알맞게 잘 추천할 수 있는 추천시스템이 더 좋은 추천시스템이라는 이야기이다.

또한 이 지표는 비지니스적으로 아이템을 선정할 때 많은 도움을 줄 수 있다.

거의 모든 사람의 상위 20개에 나오지 않는 아이템들은 리스팅에서 내릴 것을 고민해 볼 수 있다.

 

Popularity

Popularity는 말 그대로 인기도이다.

얼마나 많은 사람이 이 아이템을 샀는지/클릭했는지를 측정하는 지표이다.

많은 경우 추천시스템의 성능을 비교할 때 사용하는 Baseline으로 사용된다.

(무조건 인기있는 아이템을 추천하는 것 보다 지표가 나쁘다면 좋지 않은 개인화 추천시스템이다.)

 

Novelty

 

Popularity의 반대되는 지표로 사용된다.

 

Personalization

Personalization은 추천시스템이 얼마나 개인화된 추천을 할 수 있는지를 측정하는 지표이다.

예를 들어 각 사용자의 상위 20개의 추천 리스트의 분산을 비교하는 방식으로 측정할 수 있다.

분산이 높다면 더 개인화 된 추천을 하는 시스템인 것이다.

 

Serendipity

Serendipity란 추천시스템이 얼마나 예측하지 않은 결과를 좋은 방향으로 내는지를 측정한다.

이는 한 아이템의 예측된 점수와 인기도의 점수를 비교해 얻을 수 있다.

주로 사용되는 수식은 다음과 같다:

$serend = \frac{1}{N} \sum^{N}_{i=1} max(Pr(s_i) - Prim(s_i), 0) * isrel(s_i)$

- $Pr(s_i)$는 예측된 점수를,

- $Prim(s_i)$는 미리 계산된 인기도를,

- $isrel(s_i)$는 아이템이 연된된 아이템인가, 즉 사용자가 좋아하는 아이템인가를 의미한다.

 

개인화된 추천시스템은 각 사용자의 취향을 잘 반영해야하기 때문에, 이는 중요한 지표가 된다.

 

Diversity

Diversity는 리스트 추천에서 얼마나 다양한 아이템이 추천되는가를 측정하는 지표이다.

이는 주로 장르/카테고리나 태그/키워드 벡터들을 페어로(pairwise) 유사도를 비교하게 된다.

만약 하위의 아이템들이 최상위 아이템과 비슷하다면, 이를 Penalize하는 방법을 사용할 수 있을 것이다.

 

728x90
반응형