기록하는삶

[추천 시스템/RecSys] 추천 시스템의 필요성과 의의, 사용 데이터, 평가 지표 본문

AI/추천시스템(RecSys)

[추천 시스템/RecSys] 추천 시스템의 필요성과 의의, 사용 데이터, 평가 지표

mingchin 2022. 3. 7. 23:33
728x90
반응형

과거 유저가 접할 수 있는 상품과 컨텐츠가 제한적이었던 TV 채널, 영화관, 백화점, 신문 등의 플랫폼 혹은 채널에 비해 웹과 모바일 환경에서는 비교할 수 없을 정도로 많은 상품이 존재하는 경우가 대부분이다. 이에 따라 유저가 직접 검색과 정보 비교를 통해 상품을 탐색하던 것과 달리, 수많은 상품 중 유저에게 필요하거나 유저가 좋아할 것이라 예상되는 상품을 선별해 보여주는 추천 시스템이 필요하게 되었다.

조회수가 얼마 되지 않더라도 영상이 추천되기도 하는 유튜브 알고리즘이나, 알만한 친구를 추천해주는 SNS의 친구 추천 서비스, 쇼핑몰에서의 상품 추천, 넷플릭스와 같은 OTT 서비스의 작품 추천 등이 대표적인 예인데, 최근에는 여러 사업 부문에서 인기도 하위 80%에 해당하는 상품 혹은 작품의 소비량이 상위 20%의 소비량을 넘어서는, Long tail 현상이 일어나며 추천 시스템의 역할이 더욱 중요해졌다.

 

1) 추천 시스템에서 사용하는 데이터

크게 유저 관련 데이터, 아이템 관련 데이터, 그리고 유저-아이템의 상호작용 데이터를 사용한다.

 

[유저 관련 데이터]

① 식별자(Identifier): 유저 ID, 디바이스 ID, 브라우저 쿠키

② 데모그래픽(demographic) 정보: 성별, 연령, 지역, 관심사 등

③ 유저 행동 정보: 페이지 방문 기록, 아이템 평가, 구매여부 등의 피드백 기록

 

위의 유저 관련 데이터들을 구축하는 행위를 '유저 프로파일링(user profiling)'이라 한다.

 

[아이템 관련 데이터]

아이템 ID와 아이템의 메타 데이터가 여기에 속한다. 추천 아이템의 종류의 경우 도메인에 따라 너무나 다양한데, 예를 들어 네이버나 다음과 같은 포탈의 경우 뉴스, 블로그, 웹툰 등의 컨텐츠가, 넷플릭스나 유튜브와 같은 미디어는 영화, 드라마, 음악, 동영상 등의 컨텐츠가 추천 아이템이 될 것이다. 추천 아이템의 메타 데이터의 경우 종류에 따라 극명하게 달라지기 때문에 별도의 접근과 분석이 필요하며, 대표적인 예시는 아래와 같다.

 

- 영화: 장르, 출연 배우, 감독, 소개글, 개봉일 등

- 상품: 상품 카테고리, 브랜드, 출시일, 상품 이미지, 색상, 가격 등

- 음악: 아티스트, 작곡가, 장르, 음악 신호 그 자체 등

 

[유저-아이템 상호작용 데이터]

유저가 온라인 혹은 오프라인에서 아이템과 상호작용 할 때 로그로 남는 정보로, 추천 시스템에 피드백이 되는 데이터다. 평점과 같이 유저에게 직접 받는 Explicit Feedback과 유저가 아이템을 클릭했는지 여부 또는 유저가 특정 페이지에 머무른 시간 등과 같이 유저의 활동에서 간접적으로 추출하는 Implicit Feedback으로 나눌 수 있다.

 

2) 추천 시스템의 문제 정의와 평가 지표

추천 시스템의 성능 평가는 보통 최종적으로 비즈니스 및 서비스 관점에서 매출 및 PV(Page View)의 증가 여부, CTR(Click Through Rate)의 상승 여부 등으로 이루어지게 된다. 추가적으로 품질 면에서는 얼마나 유저에게 관련된 아이템이 추천되는가(연관성), 얼마나 다양한 아이템이 추천되는가(다양성), 얼마나 새로운 아이템이 추천되는가(새로움), 유저가 기대하지 못한 뜻밖의 아이템이 추천되는가(참신성) 등을 따져 평가된다. 다만 이는 모델 학습단계에서는 직접적으로 평가하기 어려운 항목들이다. 따라서 추천 시스템의 모델 학습 단계에서는 유저에게 적합한 아이템 top K개를 추천하는 랭킹 문제와 유저의 특정 아이템에 대한 선호도 혹은 구매 확률을 추정하는 예측 문제를 해결하기 위한 metric을 설정하여 평가하게 된다.

 

[랭킹 문제의 평가 지표]

① Precision@K: 추천한 K개의 아이템 대비 실제 유저가 관심있는 아이템의 비율

② Recall@K: 관심있는 전체 아이템 중 추천한 아이템의 비율

③ AP(Average Precision)@K: Precision@1 부터 Precision@K 까지의 평균값

④ MAP(Mean Average Precision): 모든 유저에 대한 AP@K의 평균

AP@K와 MAP@K의 경우 유저가 관심있어 하는 순서대로 아이템을 추천할수록 지표의 값이 커지는 특징이 있다.

 

⑤ NDCG(Normalized Discounted Cumulative Gain)@K: MAP@K와 유사하게 top K개의 추천 리스트와 실제 유저의 선호 아이템을 비교하여 값을 구하되, 유저의 아이템 선호 순서에 따른 가중치가 반영되는 지표로, 0이상 1이하의 값을 가지며 1에 가까울수록 유저의 아이템 선호와 유사한 추천이 되었다고 볼 수 있다.

산식은 위와 같다. 요약하면 가장 이상적인(유저의 아이템 선호 순서에 꼭 맞는) 순서와 얼마나 유사한 추천이 되었는지를 비율로 표현한 값이다. 예시는 아래와 같다.

[예측 문제의 평가 지표]

각 유저의 아이템에 대한 평가/선호도 행렬을 채우는 문제로, MAE, RMSE, AUC 등을 활용한다. 문제 정의에 따라 예측의 대상은 평점, 만족도, 구매 확률 등이 될 수 있다.

728x90
반응형