협력 필터링은 공통된 흥미를 가진 다른 사용자들로부터 정보를 획득하여 그들의 의견에 따라 웹 사이트를 추천하는 방법이다. 과거 수년간, 이 방법은 서적, 식품, 영화 등 다양한 e-commerce 영역에서 사용되었다. 본 논문에서는 협력 필터링 시스템에서 추천 항목을 결정하기 위한 사용자 간의 유사도 측정 방법을 제시하였다. 기존 연구에서는 사용자가 부여했던 전체 평가등급들의 분포를 고려하지 않은 채각 평가등급을 독립적으로 취급하여 사용자간 유사도를 산출하였으나, 본 연구에서는 사용자의 평가 등급 범위 내에서의 등급의 위치와 순위 정보를 이용하여 유사도를 산출하였다. 실제 데이터집합 상에서 평균 절대 오차의 성능을 측정한 결과, 대부분의 기존 방법들에 비해 제안 방법은 매우 우수하였고, 특히 정해진 등급범위가 클 경우에 그러하였다.
협력 필터링은 공통된 흥미를 가진 다른 사용자들로부터 정보를 획득하여 그들의 의견에 따라 웹 사이트를 추천하는 방법이다. 과거 수년간, 이 방법은 서적, 식품, 영화 등 다양한 e-commerce 영역에서 사용되었다. 본 논문에서는 협력 필터링 시스템에서 추천 항목을 결정하기 위한 사용자 간의 유사도 측정 방법을 제시하였다. 기존 연구에서는 사용자가 부여했던 전체 평가등급들의 분포를 고려하지 않은 채각 평가등급을 독립적으로 취급하여 사용자간 유사도를 산출하였으나, 본 연구에서는 사용자의 평가 등급 범위 내에서의 등급의 위치와 순위 정보를 이용하여 유사도를 산출하였다. 실제 데이터집합 상에서 평균 절대 오차의 성능을 측정한 결과, 대부분의 기존 방법들에 비해 제안 방법은 매우 우수하였고, 특히 정해진 등급범위가 클 경우에 그러하였다.
Collaborative filtering is a methodology to recommend websites by obtaining data and opinions from the other users with similar tastes. During the past few years, this method has been used in various fields such as books, food, and movies in e-commerce systems. This study addresses the computation o...
Collaborative filtering is a methodology to recommend websites by obtaining data and opinions from the other users with similar tastes. During the past few years, this method has been used in various fields such as books, food, and movies in e-commerce systems. This study addresses the computation of similarity between users to determine items to be recommended in collaborative filtering systems. Previous studies measured similarity between users by treating each user's ratings independently without considering the distribution of the user's ratings. In contrast, this study measures similarity by utilizing position and rank information of each rating in the range of the user's ratings. The result of the experiments on the real datasets demonstrated that the proposed method improves the mean absolute error significantly, compared to the previous methods, especially when the predetermined range of ratings is large.
Collaborative filtering is a methodology to recommend websites by obtaining data and opinions from the other users with similar tastes. During the past few years, this method has been used in various fields such as books, food, and movies in e-commerce systems. This study addresses the computation of similarity between users to determine items to be recommended in collaborative filtering systems. Previous studies measured similarity between users by treating each user's ratings independently without considering the distribution of the user's ratings. In contrast, this study measures similarity by utilizing position and rank information of each rating in the range of the user's ratings. The result of the experiments on the real datasets demonstrated that the proposed method improves the mean absolute error significantly, compared to the previous methods, especially when the predetermined range of ratings is large.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
Book-Crossing 데이타는 271,379권의 서적에 대하여 278,858명의 사용자들이 평가한 1-10 사이의 등급을 1,149,790개 포함하고 있다. 그러나 많은 사용자 및 서적의 평가수가 매우 적어 성능 측정의 정확성이 떨어지므로, 원데이터 행렬의 희소수준을 향상시키는 사전 처리를 하여 [15]에서처럼 희소수준이 다른 두 집합을 산출하고 각각 BX5-10과 BX5-20으로 명명하였는데, 이는 희소수준이 성능에 미치는 영향을 알아보고자 함이다. 희소수준이란 사용자수×항목수의 행렬 내 평가가 매겨지지 않은 요소의 비율이며, (값이 0인 요소 개수)/(행렬의 크기)로 산출한다.
본 논문에서는 메모리 기반 협력 필터링을 통한 추천 시스템을 위해서 사용자 간 유사도를 측정하기 위한 방법을 제안한다. 논문의 구성은 다음과 같다.
협력 필터링을 통한 추천 시스템은 광범위한 자료들 중에서 사용자에게 필요할 만한 자료들만을 골라 제시하므로 서적, 뉴스, 영화 등 다양한 분야에서 매우 유용하게 활용되어 정보화시대에 중요한 역할을 한다. 본 연구는 이러한 시스템에서 추천 항목을 결정하기 위한 사용자 간의 유사도 측정 방법을 제시하였다. 기존 연구에서는 전체 평가등급들의 분포를 고려하지 않은 채 사용자들의 공통 평가항목들의 등급을 독립적으로 취급하였으나, 본 연구에서는 평가 등급 범위 내에서 각 등급의 위치와 순위 정보를 이용하여 유사도를 산출하였다.
그러나, 각 사용자의 평가등급 결정은 주관적이어서, 어떤 사용자에게 등급 r은 낮은 등급이나, 다른 이에게는 높은 등급일 수 있다. 이러한 주관적 판단의 차이를 수치화하여 유사도 산출에 반영하기 위해, 본 연구에서는 평가 범위 전체를 고려한 방법을 제시한다. 즉, 사용자가 부여한 임의의 평가등급이 그가 부여한 과거 평가등급들 중 어떤 순위를 차지하는지를 측정한 후, 각 사용자의 평가등급의 순위 정보끼리 비교하여 유사도를 산출한다.
가설 설정
모델의 학습은 주로 확률, 통계나 기계 학습 기법을 활용하지만 좀 더 복잡한 기법으로서 Bayesian, 선형 회귀분석, 최대 엔트로피 모델, 마코프 결정 프로세스 등이 있다. 메모리 기반 시스템은 두 명의 사용자가 유사한 기호를 갖고 있다면, 다른 새로운 항목들에 대해서도 유사한 반응을 보일 것이라는 가정에 기초한다. 이 추천 시스템은 사용자에게 새로운 항목들에 대해 그가 부여할 등급을 예측하여, 가장 높은 예측등급의 항목을 추천한다.
제안 방법
PRS 값이 극단일 경우, 해당 사용자 쌍이 갖는 REL 유사도 값을 알아보았다. <그림 1>에 제시한 대로, BX5-20과 MovieLens 집합은 비슷한 양상을 보이는데, PRS가 1인 경우 REL은 대개 0.
예측 성능에 대한 인접사용자수(Number of nearest neighbors)의 영향을 조사하기 위하여, 그 수를 5부터 35까지 변화시켜 실험하였다. 각 공식을 이용하여 최인접 사용자들을 결정한 후, 이들이 부여한 등급을 기초로 예측하였을 때 그 정확도를 데이터집합별로 제시하였다. 그림에서 각 방법의 성능은 모든 집합에서 유사한 행태를 보인다.
본 연구는 이러한 시스템에서 추천 항목을 결정하기 위한 사용자 간의 유사도 측정 방법을 제시하였다. 기존 연구에서는 전체 평가등급들의 분포를 고려하지 않은 채 사용자들의 공통 평가항목들의 등급을 독립적으로 취급하였으나, 본 연구에서는 평가 등급 범위 내에서 각 등급의 위치와 순위 정보를 이용하여 유사도를 산출하였다. 제안 방법은 본 연구에서 선택한 두 데이터집합에 대해 대부분의 기존 방법보다 우수한 성능을 보였고 특히 주어진 평가범위가 클 때 매우 우수하였다.
기존에 많이 활용되었던 유사도 계산 방식인 Pearson correlation(PRS), Cosine similarity(COS), PIP, 그리고 제안 방식(REL)의 성능을 비교하기 위해, 이들 각각을 이용한 결과 등급이 사용자가 부여한 실제 평가등급과 얼마나 부합되는지를 측정하였다. 이러한 예측 정확도는 주로 MAE(Mean Absolute Error)[10]로 나타내며 다음과 같이 정의된다.
<그림 2>는 각 유사도 공식의 MAE 성능을 측정한 결과이다. 예측 성능에 대한 인접사용자수(Number of nearest neighbors)의 영향을 조사하기 위하여, 그 수를 5부터 35까지 변화시켜 실험하였다. 각 공식을 이용하여 최인접 사용자들을 결정한 후, 이들이 부여한 등급을 기초로 예측하였을 때 그 정확도를 데이터집합별로 제시하였다.
[16]에서는 시스템의 신규 사용자들에게 항목을 추천하는 어려움을 해결하기 위하여 새로운 유사도 방법을 고안하였다. 이 방법은 공통 항목에 대한 두 평가등급의 거리차를 기본으로 하되, 평가등급의 중앙값 또는 평균값을 기준으로 두 평가등급이 각기 이들 값에서 멀어져 있는 정도와 방향을 수치화하였다. PIP라고 명명된 유사도는 세 구성 요소의 곱으로 이루어지는데, 즉, Proximity, Impact, Popularity이다.
따라서 가능한 한 정확히 예측하는 것이 관건이다. 이를 위해 우선 과거에 사용자들이 부여하였던 모든 등급 이력을 보관하고, 공통 평가 항목에 대해 부여하였던 등급들을 토대로 사용자간 또는 항목 간 유사도를 계산한다.
이러한 주관적 판단의 차이를 수치화하여 유사도 산출에 반영하기 위해, 본 연구에서는 평가 범위 전체를 고려한 방법을 제시한다. 즉, 사용자가 부여한 임의의 평가등급이 그가 부여한 과거 평가등급들 중 어떤 순위를 차지하는지를 측정한 후, 각 사용자의 평가등급의 순위 정보끼리 비교하여 유사도를 산출한다. 두 사용자 u와 v가 등급을 매긴 공통 항목들의 집합을 I라 하고, ranku(ru,i)를 ru,i의 순위라고 할 때, 유사도는 다음과 같다.
대상 데이터
제안한 유사도 방법의 성능을 평가하기 위하여, MovieLens[17]와 Book-Crossing 데이터[14]를 사용하였다. Book-Crossing 데이타는 271,379권의 서적에 대하여 278,858명의 사용자들이 평가한 1-10 사이의 등급을 1,149,790개 포함하고 있다.
데이터처리
실험 결과의 신뢰도를 높이기 위해 MAE는 5회 크로스 확인(5-fold cross validation)의 평균으로 산출하였고, 각 회마다 서로 다른 훈련 데이터와 시험 데이타 집합을 80:20으로 구성하였다. 모든 실험은 1.
성능/효과
<그림 2>(c)의 MovieLens에 대한 실험 결과에서 COS와 PIP의 성능은 현저히 개선되었으나, REL와 PRS의 성능은 Book-Crossing 집합에 비해 저하된 것을 주목할 수 있다. COS와 PIP의 성능 개선 이유는 희소수준이 Book-Crossing 집합보다 매우 향상되었기 때문인 것으로 판단되나, PRS의 경우 <표 2>에 제시한대로 극단 값의 비율이 대폭 줄고 정상 범위 내의 값이 58.
2.1절에서 언급한 대로 Pearson 상관도(PRS)는 극단적인 값, 즉, 0, 1, 또는 -1의 값을 갖기 쉬운데, 이는 특히 두 사용자간에 공통된 평가항목수가 극히 적은 경우에 그러하다. 각 데이터집합별로 이들 극단 값의 산출 분포를 알아본 결과 <표 4>와 같았다.
유사도 간의 성능 차이는 두 집합 모두에서 매우 큰 것을 볼 수 있다. BX5-10 집합에서, REL은 COS, PIP, PRS 보다 각각 최대 0.72, 0.48, 0.23 향상된 결과를 보이며, 이러한 향상 정도는 인접 사용자수가 증가하면 대체로 함께 증가한다. 또한 BX5-20 집합에서 REL은 COS, PIP, PRS 보다 각각 최대 0.
COS와 PIP의 성능 개선 이유는 희소수준이 Book-Crossing 집합보다 매우 향상되었기 때문인 것으로 판단되나, PRS의 경우 에 제시한대로 극단 값의 비율이 대폭 줄고 정상 범위 내의 값이 58.83%와 31.15%로 늘어났음에도 불구하고 성능이 저하된 것을 볼 때 PRS 유사도의 성능과 희소수준과의 관련도가 COS에 비해 상대적으로 낮다는 것을 알 수 있다.
상대적 위치와 순위를 기반으로 하는 REL에 대해서는, MovieLens의 평가범위는 1-5이므로, 1-10일 때보다 변별력이 떨어지게 되어 성능이 저하된 것으로 판단된다. MovieLens에서 PIP의 성능은 COS, PRS, REL보다 각각 최대 0.23, 0.21, 0.16 향상되었다. 그러나, REL도 가장 흔히 사용되는 COS와 PRS 보다 좋은 결과를 나타내어, 최대 0.
5 이상이며 1에 근접할수록 더욱 큰 비중을 나타내었다. PRS 산출이 불가한 경우에도 유사한 양상을 보였으며, PRS가 -1일 때 REL값은 대략 0.3~0.7 사이의 중앙에 위치하는 경우가 많았고 그보다 클수록 빈도수도 줄었다. 즉, 제안 공식은 공통 평가항목수가 극히 적어도 극단 값을 드물게 산출하고 대개 0과 1 사이에 고르게 분포한다.
08이 개선되었다. 결론적으로 REL 방법은 평가범위가 큰 경우 그 효과가 극대화되는 장점이 있고, 반면 상대적으로 작은 경우, 기존의 COS나 PRS 방식보다는 월등하나, PIP에 비해 저조한 성능을 보였다.
16 향상되었다. 그러나, REL도 가장 흔히 사용되는 COS와 PRS 보다 좋은 결과를 나타내어, 최대 0.08이 개선되었다. 결론적으로 REL 방법은 평가범위가 큰 경우 그 효과가 극대화되는 장점이 있고, 반면 상대적으로 작은 경우, 기존의 COS나 PRS 방식보다는 월등하나, PIP에 비해 저조한 성능을 보였다.
23 향상된 결과를 보이며, 이러한 향상 정도는 인접 사용자수가 증가하면 대체로 함께 증가한다. 또한 BX5-20 집합에서 REL은 COS, PIP, PRS 보다 각각 최대 0.67, 0.44, 0.22 향상된 결과를 가져왔다. 특히, <그림 2>(a)와 (b)에서 PIP와 REL은 나머지 두 방법보다 인접 사용자수가 증가함에 따라 성능이 좀 더 가파르게 개선되었다.
기존 연구에서는 전체 평가등급들의 분포를 고려하지 않은 채 사용자들의 공통 평가항목들의 등급을 독립적으로 취급하였으나, 본 연구에서는 평가 등급 범위 내에서 각 등급의 위치와 순위 정보를 이용하여 유사도를 산출하였다. 제안 방법은 본 연구에서 선택한 두 데이터집합에 대해 대부분의 기존 방법보다 우수한 성능을 보였고 특히 주어진 평가범위가 클 때 매우 우수하였다. 향후 과제로서 제안방법을 Jester, Netflix 등의 다른 데이터집합에 대해 실험하고, 또 다른 기존 유사도와 비교 실험하여 그 성능을 조사 연구할 것이다.
01%인 것으로써 증명된다. 한 사용자가 100개 이상을 평가하는 MovieLens 집합에 대해서조차, PRS는 9.82%, COS는 12.13%의 극단 값을 갖는 것을 볼 때, 희소한 평가수를 가진 대부분의 상업 사이트에 대비하여 보다 정확한 유사도의 산출이 매우 중요하다는 것을 알 수 있다.
후속연구
제안 방법은 본 연구에서 선택한 두 데이터집합에 대해 대부분의 기존 방법보다 우수한 성능을 보였고 특히 주어진 평가범위가 클 때 매우 우수하였다. 향후 과제로서 제안방법을 Jester, Netflix 등의 다른 데이터집합에 대해 실험하고, 또 다른 기존 유사도와 비교 실험하여 그 성능을 조사 연구할 것이다.
질의응답
핵심어
질문
논문에서 추출한 답변
협력 필터링이란 무엇인가?
협력 필터링은 공통된 흥미를 가진 다른 사용자들로부터 정보를 획득하여 그들의 의견에 따라 웹 사이트를 추천하는 방법이다. 과거 수년간, 이 방법은 서적, 식품, 영화 등 다양한 e-commerce 영역에서 사용되었다.
과거에는 협력 필터링은 어떤 영역에서 사용되었는가?
협력 필터링은 공통된 흥미를 가진 다른 사용자들로부터 정보를 획득하여 그들의 의견에 따라 웹 사이트를 추천하는 방법이다. 과거 수년간, 이 방법은 서적, 식품, 영화 등 다양한 e-commerce 영역에서 사용되었다. 본 논문에서는 협력 필터링 시스템에서 추천 항목을 결정하기 위한 사용자 간의 유사도 측정 방법을 제시하였다.
개인화를 실행하는 주된 방법에는 무엇이 있는가?
개인화를 실행하는 주된 방법은 협력 필터링(collaborative filtering)과 내용 기반 필터링(content-based filtering)이다[7]. 두 방법은 모두 사용자가 관심을 보일만한 항목들을 식별하여 정보 과부하를 경감시키려 하였다.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.