KR20110074167A - 차이 확률 변수의 원점 모멘트를 이용한 유사성 척도에 기반한 협업 필터링 추천 시스템 및 유사도 테이블 구축방법 - Google Patents

차이 확률 변수의 원점 모멘트를 이용한 유사성 척도에 기반한 협업 필터링 추천 시스템 및 유사도 테이블 구축방법 Download PDF

Info

Publication number
KR20110074167A
KR20110074167A KR1020090131059A KR20090131059A KR20110074167A KR 20110074167 A KR20110074167 A KR 20110074167A KR 1020090131059 A KR1020090131059 A KR 1020090131059A KR 20090131059 A KR20090131059 A KR 20090131059A KR 20110074167 A KR20110074167 A KR 20110074167A
Authority
KR
South Korea
Prior art keywords
user
item
similarity
preference
preferences
Prior art date
Application number
KR1020090131059A
Other languages
English (en)
Other versions
KR101116026B1 (ko
Inventor
홍광석
권형준
Original Assignee
성균관대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 성균관대학교산학협력단 filed Critical 성균관대학교산학협력단
Priority to KR1020090131059A priority Critical patent/KR101116026B1/ko
Publication of KR20110074167A publication Critical patent/KR20110074167A/ko
Application granted granted Critical
Publication of KR101116026B1 publication Critical patent/KR101116026B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/40Data acquisition and logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Tourism & Hospitality (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Mathematical Physics (AREA)
  • Game Theory and Decision Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Development Economics (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은, 사용자의 유사성 혹은 아이템의 유사성을 이용하는 메모리 기반 협업 필터링의 성능 개선을 위한 새로운 유사성 척도를 제안한다. 이러한 유사성 척도 RMS(Raw Moment-based Similarity)는, 협업 필터링 기법에서 새로운 사용자 혹은 새로운 아이템이 등장한 이후에 일정 기간 발생하는 콜드 스타트(cold-start: 완전 시작) 조건에서 공통 선호도가 극히 적어 유사도 측정이 정확하지 못한 경우에 유효하고, 선형적인 특성을 가지는 두 변수의 유사성을 판별하기 위한 분야에 범용적으로 사용될 수 있다.

Description

차이 확률 변수의 원점 모멘트를 이용한 유사성 척도에 기반한 협업 필터링 추천 시스템 및 유사도 테이블 구축방법 {COLLABORATIVE FILTERING RECOMMENDER SYSTEM BASED ON SIMILARITY MEASURES USING THE ORIGIN MOMENT OF DIFFERENCE RANDOM VARIABLE AND METHOD CONSTRUCTING SIMILARITY TABLE USING RMS}
본 발명은, 사용자의 유사성 혹은 아이템의 유사성을 이용하는 메모리 기반 협업 필터링의 성능 개선을 위한 새로운 유사성 척도에 기반한 협업 필터링 추천 시스템 및 유사도 테이블 구축방법에 관한 것이다.
추천 시스템은, 개인화 기술의 하나로서, 사용자가 관심을 보일만한 콘텐츠 혹은 정보를 사용자에게 추천하는 것이다. 과거에는 단순히 사용자의 기호정보에 맞추어 추천하는 규칙 기반의 알고리즘이 성행하였으나, 정보기술이 발전하면서 인공지능 분야의 소프트컴퓨팅 기법, 데이터베이스 분야의 데이터마이닝 기법 등에 의해 사용자의 행동 패턴을 파악하기 시작하면서 사용자의 성향을 분석하고 이에 맞게 사용자가 선호할 것이라고 생각되는 정보 및 콘텐츠를 추천하는 등과 같이 추 천 시스템은 점점 진화하고 있다.
추천 시스템을 구축하기 위한 기법 중 하나인 협업 필터링(Collaborative Filtering)은 현존하는 가장 뛰어난 추천 방법론으로 알려져 있다. 이 협업 필터링은 많은 사용자들로부터 얻은 기호정보(taste information)에 따라 사용자들의 관심사들을 자동적으로 예측하게 해주는 방법이다. 협력 필터링 접근법의 근본적인 가정은 사용자들의 과거의 경향이 미래에서도 그대로 유지 될 것이라는 전제에 있다. 즉, 사용자 A가 과거에 특정 스타일의 콘텐츠를 선호하였다면, 미래에도 그럴 것이라는 가설에 근거하여 추천을 수행하는 기법이다. 예를 들어, 음악에 관한 협력 필터링 혹은 추천시스템(recommendation system)은 사용자들의 기호(좋음, 싫음)에 대한 부분적인 목록(partial list)을 이용하여 그 사용자의 음악에 대한 기호를 예측하게 된다. 이 시스템은 특정 사용자의 정보에만 국한 된 것이 아니라 많은 사용자들로 부터 수집한 정보를 사용한다는 것이 특징이다. 이것이 단순히 투표를 한 수를 기반으로 각 아이템의 관심사에 대한 평균적인 평가로 처리하는 방법과 차별화 된 것이다. 즉 고객들의 선호도와 관심 표현을 바탕으로 선호도, 관심에서 비슷한 패턴을 가진 고객들을 식별해 내는 기법이다. 비슷한 취향을 가진 고객들에게 서로 아직 구매하지 않은 상품들은 교차 추천하거나 분류된 고객의 취향이나 생활 형태에 따라 관련 상품을 추천하는 형태의 서비스를 제공하기 위해 사용된다.
이와 같이 협업 필터링은, 많은 사용자들에게 얻은 선호도 정보를 이용함으로써, 아이템(정보 혹은 콘텐츠 등의 추천 대상 매개체)에 대한 사용자의 선호도를 예측할 수 있다. 사용자 선호도를 1, 2, 3, 4, 5, 6, 7, 8의 여덟 단계로 부여할 수 있는 시스템에서 아래의 표 1과 같은 사용자-아이템간의 선호도 매트릭스를 가정하면, 협업 필터링의 궁극적인 목적은 아직 평가되지 않은 부분, 즉, 아래의 매트릭스에서 '?'부분을 정확하게 예측하는 것이다.
표 1. 사용자-아이템 선호도 매트릭스의 예
Figure 112009080303041-PAT00001
협업 필터링 추천 시스템에서는 예측한 선호도와 실제 사용자가 부여한 선호도의 오차를 구하여 성능을 평가한다. 협업 필터링 기법의 기술 분류 중 하나인 메모리 기반의 협업 필터링 방법은 다음과 같은 세 단계로 실행된다.
1) 유사도 계산 단계
유사도 계산은 메모리 기반 추천 시스템에서 가장 중요한 단계이다. 사용자 기반 접근 방법은 추천 대상 사용자와 다른 모든 사용자들 사이의 유사도를 계산한다. 추천 대상 사용자와 다른 사용자들이 공통적으로 선호도를 부여한 아이템을 이용한다. 아래의 표 2는 USER 3의 ITEM 4에 대한 선호도('?'로 표기된 부분)를 예측하고자 하는 목적으로 USER 3과 USER 4의 유사도를 계산하기 위해 사용되는 선호도 데이터를 표기한 것이다. 표 2에 있어서, 유사도 계산 대상이 되는 사용자 USER 3과 USER 4는 각각 이산변수 X와 Y로 표현할 수 있는 바, X = {4, 2, 3}, Y = {8, 3, 4}와 같이 되어 두 변수는 선형적인 관계를 갖게 된다.
표 2. 사용자 기반 접근 방법에서 사용자 간의 유사도 계산을 위한 데이터의 예
Figure 112009080303041-PAT00002
아이템 기반 접근 방법은 추천하고자 하는 아이템과 다른 모든 아이템 사이의 유사도를 계산한다. 유사도 계산의 대상이 되는 두 아이템에 모두 선호도를 부여한 사용자들의 선호도를 이용한다. 아래의 표 3은 USER 3의 ITEM 4에 대한 선호도('?'로 표기된 부분)를 예측하고자 하는 목적으로 ITEM 4와 ITEM 5의 유사도를 계산하기 위해 사용되는 선호도 데이터를 표기한 것이다. 유사도 계산 대상이 되는 아이템 ITEM 4와 ITEM 5고 또한 각각 이산변수 X와 Y로 표현할 수 있는 바, X = {5, 4, 5}, Y = {2, 3, 8}과 같이 되어 두 변수는 선형적인 관계를 갖게 된다.
표 3. 아이템 기반 접근 방법에서 아이템 간의 유사도 계산을 위한 데이터의 예
Figure 112009080303041-PAT00003
변수 X와 Y의 유사도를 측정하면, 사용자와 사용자, 혹은 아이템과 아이템 사이의 유사성을 알 수 있다. 유사도를 측정하기 위한 척도는 정보검색 분야에서 널리 이용되는 코사인 유사도, 상관계수 기반 방법인 피어슨 곱적률 상관계수와 스피어만 순위 상관계수 등이 있다.
아래의 식 (1)은 코사인 유사도를 나타내고, 식 (2)는 스피어만 순위 상관계수를 나타내며, 식 (3)은 피어슨 곱적률 상관계수를 나타낸다.
Figure 112009080303041-PAT00004
(1)
Figure 112009080303041-PAT00005
(2)
Figure 112009080303041-PAT00006
(3)
여기서, X 및 Y는 선형적인 특성을 갖는 변수이고, Xi 및 Xi는 선형적인 특성을 갖는 변수 X 및 Y의 i번째 값이다.
사용자 기반 접근 방법이든 아이템 기반 접근 방법이든, 서로간의 공통 선호 도가 없다면 유사도 계산은 불가능하고, 점수 예측에 사용될 수 없다. 접근 방법에 따라서 아이템 혹은 사용자의 유사도 테이블을 만들어 실시간 추천 시간을 대폭적으로 감소시킬 수 있다. 사용자가 총 5명인 경우와 혹은 아이템이 총 5개인 경우의 유사도 테이블의 예를, 도 1과 도 2에 나타내었다. 유사도 테이블의 갱신은, 시스템 관리자가 정한 시간 주기에 따라서 자동적으로 이루어질 수 있다.
2) 근접 이웃 형성 단계
상기 1)의 단계에서 계산된 유사도에 따라서 근접 이웃을 형성하는 단계이다. 근접 이웃이란, 선호도 예측에 사용할 데이터를 뜻한다. 유사도가 계산된 모든 데이터를 고려하는 방법, 상위 N개를 선택하는 Top-N 방법, 특정 유사도 임계치 이상의 데이터를 고려하는 방법 등이 있다. 사용자 기반 접근 방법에서는 점수 예측에 사용할 사용자들을 선별하고, 아이템 기반 접근 방법에서는 점수 예측에 사용할 아이템들을 선별하는 것이다.
근접 이웃의 숫자가 너무 적거나 너무 많으면, 추천 시스템의 성능을 악화시키는 요인이 된다. 근접 이웃의 개수를 1로 설정하고 증가시키면서 실험하면, 특정 시점에서 가장 좋은 성능을 낸 후에 점점 하락한다. 이러한 이유로, 계산 시간이 빠르면서도 좋은 성능을 보이는 Top-N 방법을 이용하고, KNN(K-nearest neighborhood: K-최근접 이웃) 방법이라고 칭하기도 한다.
3) 선호도 예측 단계
추천 대상 사용자와 근접 이웃들의 유사도를 가중치로 삼아 추천 대상 사용자에게 발생하지 않은 아이템들의 선호도를 예측한다.
아래의 식 (4)는 사용자 기반 접근법의 예측을 나타내고, 식 (5)는 아이템 기반 접근법의 예측을 나타낸다.
Figure 112009080303041-PAT00007
(4)
Figure 112009080303041-PAT00008
(5)
여기서, u는 추천 대상 사용자, i는 추천 대상 아이템, ru는 추천 대상 사용자 u가 부여한 아이템들의 선호도, wu ,v는 사용자 u와 사용자 v의 유사도, rv ,i는 사용자 v의 아이템 i에 대한 선호도, rv는 사용자 v의 선호도, ri는 사용자들이 부여한 아이템 i의 선호도, wi ,j는 아이템 i와 j의 유사도, ru ,j는 사용자 u의 아이템 j에 대한 선호도, rj는 사용자들이 부여한 아이템 j의 선호도이다.
특정 아이템에 대한 선호도 예측 점수가 높다는 것은, 그 아이템에 대한 추천 대상 사용자의 선호도가 높다고 예상되는 것이므로, 예측 점수를 내림차순으로 정렬하여 사용자에게 추천함으로써 사용자 기반 협업 필터링의 프로세스가 완료된다.
다음에는 이러한 기존의 유사성 척도의 문제점에 대해 설명한다.
먼저, 콜드 스타트 조건이란 새로운 사용자 혹은 아이템이 데이터베이스에 생성된 후, 사용자 선호도 데이터가 극히 적은 경우에 예측 성능이 저하되는 것을 의미한다. 협업 필터링 기법에서 사용자 선호도 예측 성능을 향상시키기 위해 해결해야 할 조건 중 하나이다.
기존의 코사인 유사도와 상관계수 기반의 유사도 측정 방법은, 도 3, 도 4, 도 5, 도 6과 같은 모습의 선호도 그래프에서 예측 성능의 저하를 야기한다. 도 3, 도 4, 도 5, 도 6은 콜드 스타트 조건에서 빈번하게 발생하는 선호도 형태를 나타내는 것으로서, 콜드 스타트 조건이 아닌(공통 선호도 개수가 많은) 때에는 도 3, 도 4, 도 5, 도 6과 같은 형태의 선호도 그래프가 나타나는 경우가 드물기 때문에, 코사인 유사도와 상관계수 기반의 방법들은 모두 일정한 성능을 보장할 수 있다. 그렇지만, 새로운 사용자 혹은 새로운 아이템이 데이터베이스에 지속적으로 추가될 것이므로, 콜드 스타트 조건을 위해 특화된 유사성 척도가 반드시 필요함은 분명하다.
도 3, 도 4, 도 5, 도 6에 있어서, X축은 아이템, Y축은 선호도, u1은 사용자 1, u2는 사용자 2를 의미한다. 즉, 사용자 u1과 u2가 4개의 아이템에 부여한 선호도를 그래프로 나타낸 것이다. 뒤이은 내용은 사용자 기반 접근법으로 설명하지만, 아이템 기반 접근법도 동일하다.
도 3을 참조하면, 두 사용자의 선호도는 평행을 이루고 있다. 이러한 경우, 코사인 유사도의 계산 결과는 두 사용자가 완전히 동일함을 나타내는 1을 출력한다. 완전히 동일하다고 표현할 수 있는 경우는 u1 = {1, 1, 1, 1}, u2 = {1, 1, 1, 1}과 같이 두 사용자의 선호도가 완전히 일치해야 하는 경우일 뿐이다. 그러나, 두 사용자의 유사도 그래프가 평행한 경우, 코사인 유사도는 무조건 1을 출력하기 때문에, 유사도 측정에 문제가 있다.
도 3과 같이 두 사용자의 선호도가 평행을 이루면, 상관계수 기반의 두 유사성 척도인 피어슨 곱적률 상관계수와 스피어만 순위 상관계수는 표준편차가 0으로 되어, 앞에서 설명한 계산식에서 분모가 0으로 되기 때문에, 유사도 측정이 불가능하다. 유사도 측정이 불가능하다는 것은, 근접 이웃에 포함시킬 수 없어(메모리 기반 협업 필터링 단계 2) 선호도 예측에 활용할 수 없기 때문에, 데이터를 무용지물로 만들게 된다.
도 4를 참조하면, 두 사용자의 선호도 그래프가 지그재그 형태를 보이는 경우에 상관계수 기반의 방법들은 두 사용자의 성향이 정반대임을 나타내는 -1을 출력한다. 동일한 아이템 목록에서 두 사용자가 유사한 선호도를 보였음에도 불구하고 정반대의 성향을 보인다는 것은 명백히 잘못된 결과이다.
도 4의 (a)에 나타낸 그래프와 도 4의 (b)에 나타낸 그래프는 모두 상관계수 기반의 방법들이 -1을 출력한다는 것도 문제지만, 코사인 유사도는 왼쪽 그래프의 경우 0.8, 오른쪽 그래프의 경우 0.96을 출력한다. 두 선호도 그래프도 모두, 두 사용자의 선호도 차이는 동일함에도 불구하고 코사인 유사도는 다른 결과를 보이는 바, 이는 공정하지 못한 결과라고 볼 수 있다.
도 5를 참조하면, 도 4와 유사한 지그재그 형태에서 선호도 하나가 변형된 모습이다. 피어슨 곱적률 상관계수는, 도 5의 (a)에 나타낸 그래프에서는 -0.904, (b)에 나타낸 그래프에서는 -0.816을 출력한다. 도 2와 비교해 보았을 때, 도 2보다 반대 성향이 강해짐에도 불구하고, 오히려 점점 유사하다는 결과를 보이고 있는 바, 이는 잘못된 결과라고 볼 수 있다.
도 6은 두 사용자의 공통 선호도가 1개인 경우를 나타내고 있다. 이러한 경우, 코사인 유사도는 선호도 값에 상관없이 1을 출력하며, 상관계수 기반 방법들은 공분산과 표준편차를 구할 수 없어 계산이 불가능하다. 즉, 공통 선호도가 1개인 경우에는, 기존의 유사성 척도들은 잘못된 결과를 보이므로, 선호도 예측 성능을 저하시킨다.
본 발명이 해결하고자 하는 기술적 과제는, 협업 필터링 추천 시스템이 사용자의 선호도를 예측할 때에 콜드 스타트 조건에서 발생하는 문제점을 보완하여 선호도 예측 성능을 향상시킬 수 있는 차이 확률 변수의 원점 모멘트를 이용한 유사성 척도에 기반한 협업 필터링 추천 시스템 및 유사도 테이블 구축방법을 제공하고자 하는 것이다.
콜드 스타트 조건에서는 사용자 혹은 아이템의 유사도를 계산하기 위한 공통 선호도의 개수가 극히 적으며, 기존의 유사성 척도는 도 1, 도 2, 도 3, 도 4와 같은 문제점이 빈번하게 발생하여 선호도 예측 성능 저하의 요인이 된다.
본 발명에서는 도 9에 나타낸 식을 이용하여 두 변수의 차이로 구성되는 다항확률변수(D)를 구하고, D를 이용하여 도 10에 나타낸 식에 따라 두 변수의 유사성을 계산하여 콜드 스타트 조건에서 더욱 정확히 유사도를 측정한다. 또한, 도 10에 나타낸 식에서 모멘트 차수(r)를 조정하여 도 11에서 나타낸 바와 같이 유사도 분포를 변경하여 동일한 선호도 차이를 보이는 여러 조건에서 유사도 차별화를 둘 수 있는 특징에 의해 여러 가지 다른 특성을 가지는 사용자-선호도 매트릭스에 적용하기 쉽도록 하는 유연성을 제공한다. 또한, 사용자-선호도 매트릭스가 포함하고 있는 선호도 범위, 사용자 수, 아이템 수 등의 다양한 특성이 바뀌더라도, 본 발명에서 제안하는 유사성 척도는 그에 맞게 동작함은 물론이다. 콜드 스타트 조건은 물론, 도 1, 도 2, 도 3, 도 4와 같은 경우가 아니더라도, 기존의 유사성 척 도보다 뒤떨어진 성능을 보이지 않음을 도 12 및 도 13의 실험결과를 통해 확인할 수 있었다.
콜드 스타트 조건에서는, 사용자 혹은 아이템의 유사도를 계산하기 위한 공통 선호도의 개수가 극히 적으며, 기존의 유사성 척도는 도 1, 도 2, 도 3, 도 4와 같은 문제점이 빈번하게 발생하여 선호도 예측 성능 저하의 요인이 된다.
이에 본 발명에서는 두 변수의 차이로 구성되는 다항확률변수를 구하고, 이를 이용하여 두 변수의 모멘트를 계산하여 콜드 스타트 조건에서 더욱 정확히 유사도를 측정한다. 또한, 모멘트 차수(r)를 조정하여 동일한 선호도 차이를 보이는 여러 조건에서 유사도 차별화를 둘 수 있는 특징이 있으며, 유사도 분포를 조절할 수 있어서 여러 가지 다른 특성을 가지는 사용자-선호도 매트릭스에 적용하기 쉽도록 하는 유연성을 제공한다. 콜드 스타트 문제에 강하면서도 콜드 스타트 조건이 아닌 경우에 있어서도 기존의 유사성 척도보다 뒤떨어진 성능을 보이지 않음을 예시도면에 의한 실험결과를 통해 검증하였다.
본 발명의 제1 관점에 따르면, 두 사용자 혹은 두 아이템의 공통 선호도의 차이에 기초한 두 변수의 차이로 구성되는 다항확률변수를 구하고, 이를 이용하여 두 변수의 모멘트를 계산함으로써 유사도를 측정하는 차이 확률 변수의 원점 모멘트를 이용한 유사성 척도에 기반한 협업 필터링 추천 시스템으로서,
사용자가 입력한 시스템 관리자가 규정한 정수형 숫자 범위 내에서 아이템에 대한 선호도를 수신하는 선호도 데이터 수신수단과,
상기 선호도 데이터 수신수단에서 수신된 선호도에 대해, 소정의 절차에 따라 과거에 예측된 선호도와 사용자로부터 수신된 아이템 선호도의 오차를 계산하여 시스템의 성능을 측정하는 성능 측정수단,
입력된 선호도, 과거에 현재 사용자가 입력한 선호도, 과거에 현재 사용자가 아닌 사람들이 입력한 선호도 데이터를 기초로, 유사도 측정 방법을 이용하여 사용자 유사도 및/또는 아이템 유사도를 측정하는 유사도 측정수단,
아이템 유사도 데이터베이스로부터 선호도 예측에 사용할 아이템을 검색하는 유사 아이템 검색수단,
사용자 유사도 데이터베이스로부터 추천하고자 하는 사용자와 유사한 성향을 보이는 사용자들을 검색하는 유사 사용자 검색수단,
사용자 기반 방법 및 아이템 기반 방법 중 한 가지를 선택하여 사용자가 아직 평가하지 않은 아이템에 대한 선호도를 예측하는 선호도 예측수단,
사용자가 아직 평가하지 않은 아이템에 대해 예측된 선호도가 높은 순서대로 아이템을 정렬하여 추천 목록을 생성하는 추천 아이템 목록 생성수단 및,
상기 추천 아이템 목록 생성수단에서 생성된 추천 아이템 목록에 의거하여 상위로부터 소정 개수의 아이템과 그 아이템에 대한 예상 선호도를 사용자에게 추천하는 아이템 추천수단을 구비하여 구성된 차이 확률 변수의 원점 모멘트를 이용한 유사성 척도에 기반한 협업 필터링 추천 시스템이 제공된다.
상기 유사도 측정 방법은 확률 변수의 모멘트를 이용한 유사성 척도(Raw Moment-based Similarity: RMS)에 의해 행해지고, 상기 유사도 측정수단에 의해 측정된 아이템 유사도와 사용자 유사도는 개별적으로 저장되는 것이 바람직하다.
상기 수신된 아이템에 대한 선호도는, 다른 모든 사용자의 아이템에 대한 선호도가 저장되는 공용 사용자-아이템 선호도 데이터베이스에 저장되는 것이 바람직하다.
상기 성능 측정은, 사용자로부터 새로운 선호도를 수신할 때마다 오차의 평균으로 계산되는 것이 바람직하다.
시스템 관리자가 특정한 임계치를 지정하여 유사 사용자의 숫자를 제한할 수 있는 것이 바람직하다.
또, 본 발명의 제2 관점에 따르면, RMS를 이용하여 유사도 측정 대상이 되는 두 사용자의 유사도 테이블을 구축하는 방법으로서,
사용자 B 변수와 사용자 T 변수를 모두 0으로 초기화하는 단계와,
상기 사용자 B를 1만큼 증가시키는 단계,
상기 사용자 T의 값을 상기 사용자 B의 값과 동일하게 설정하는 단계,
상기 사용자 T를 1만큼 증가시키는 단계,
상기 사용자 B와 사용자 T 모두 평가한 아이템 선호도를 추출하는 단계,
차이확률변수 D를 계산하는 단계,
상기 차이확률변수 D의 1/2, 2, 2/3, 3차 모멘트를 계산하는 단계,
상기 계산 결과들을 사용자 유사도 테이블에 저장하는 단계,
상기 사용자 T의 값이 총 사용자 수(N)와 동일한지 여부를 판단하는 단계 및,
상기 사용자 B의 값이 총 사용자 수(N)와 동일한지 여부를 판단하는 단계를 구비하는 RMS를 이용한 사용자 유사도 테이블의 구축방법이 제공된다.
상기 RMS를 이용한 사용자 유사도 테이블의 구축방법은, 사용자가 공통 평가한 아이템의 선호도를 이용하여 선호도 데이터를 가지고 있는 모든 사용자 사이의 유사도를 구하는 것이 바람직하다.
상기 사용자 B와 사용자 T 모두 평가한 아이템 선호도를 추출하는 단계에서, 사용자 B가 1이고 사용자 T가 2일 때, 추출되는 아이템 선호도는 {2, 3, 4} 및 {4, 5, 2}로 추출되는 것이 바람직하다.
또한, 본 발명의 제3 관점에 따르면, RMS를 이용하여 유사도 측정 대상이 되는 두 아이템의 유사도 테이블을 구축하는 방법으로서,
아이템 B 변수와 아이템 T 변수를 모두 0으로 초기화하는 단계와,
상기 아이템 B를 1만큼 증가시키는 단계,
상기 아이템 T의 값을 상기 아이템 B의 값과 동일하게 설정하는 단계,
상기 아이템 T를 1만큼 증가시키는 단계,
상기 아이템 B와 상기 아이템 T에 모두 평가한 사용자의 아이템 선호도를 추출하는 단계,
차이확률변수 D를 계산하는 단계,
상기 차이확률변수 D의 1/2, 2, 2/3, 3차 모멘트를 계산하는 단계,
상기 계산 결과들을 아이템 유사도 테이블에 저장하는 단계,
상기 아이템 T의 값이 총 아이템 수(N)와 동일한지 여부를 판단하는 단계 및,
상기 아이템 B의 값이 총 아이템 수(N)와 동일한지 여부를 판단하는 단계를 구비하는 RMS를 이용한 아이템 유사도 테이블의 구축방법이 제공된다.
이 RMS를 이용한 아이템 유사도 테이블의 구축방법은, 하나의 사용자가 두 아이템에 모두 평가한 선호도들을 이용하여 선호도 데이터를 가지고 있는 모든 사용자 사이의 유사도를 구하는 것이 바람직하다.
상기 아이템 B와 상기 아이템 T에 모두 평가한 사용자의 아이템 선호도를 추출하는 단계에서, 아이템 B가 1이고 아이템 T가 2일 때, 추출되는 사용자의 아이템 선호도는 {1, 3} 및 {2, 2}로 추출되는 것이 바람직하다.
본 발명에 의하면, 두 변수의 차이로 구성되는 다항확률변수를 구하고, 이를 이용하여 두 변수의 모멘트를 계산하여 콜드 스타트 조건에서 더욱 정확히 유사도를 측정하며, 또한 모멘트 차수(r)를 조정하여 동일한 선호도 차이를 보이는 여러 조건에서 유사도 차별화를 둘 수 있는 특징이 있고, 유사도 분포를 조절할 수 있어서 여러 가지 다른 특성을 가지는 사용자-선호도 매트릭스에 적용하기 쉽도록 하는 유연성을 제공할 수 있다.
이하, 첨부도면을 참조하면서 본 발명의 실시예에 대해 설명한다.
도 7은 본 발명의 설명 및 도면에서 출현하는 수식에서의 기수법을 나타내고, 도 8은 본 발명의 실시예에 따른 유사성 척도에 기반한 협업 필터링 추천 시스템을 나타낸다.
도 8에 있어서, 선호도 데이터 수신부(1)는 사용자가 입력한 시스템 관리자가 규정한 정수형 숫자 범위 내에서 아이템에 대한 선호도를 수신한다. 수신된 아이템에 대한 선호도는 다른 모든 사용자의 아이템에 대한 선호도가 저장되는 공용 사용자-아이템 선호도 데이터베이스에 저장된다.
성능 측정기(2)는, 선호도 데이터 수신부(1)에서 수신된 선호도에 대해, 아래 절차에 따라 과거에 예측된 선호도와 사용자로부터 수신된 아이템 선호도의 오차를 계산하여 시스템의 성능을 측정한다. 성능 측정은 사용자로부터 새로운 선호도를 수신할 때마다 오차의 평균으로 계산된다.
RMS 유사도 측정부(3)는, 입력된 선호도, 과거에 현재 사용자가 입력한 선호도, 과거에 현재 사용자가 아닌 사람들이 입력한 선호도 데이터를 공용 사용자-아이템 선호도 데이터베이스에서 꺼내어 본 발명에서 제안하는 유사도 측정 방법인 RMS를 이용하여 사용자 유사도(도 14) 및 아이템 유사도(도 15)를 측정한다. 이렇게 측정된 아이템 유사도와 사용자 유사도는 개별적으로 저장된다.
유사 아이템 검색부(4)는, RMS 아이템 유사도 데이터베이스(5)로부터 사용자가 평가하지 않은 아이템과 유사한 아이템(선호도 예측에 사용할 아이템)을 검색한다. 시스템 관리자는 특정한 임계치를 지정하여 유사 사용자의 숫자를 제한할 수 있다.
유사 사용자 검색부(6)는, RMS 사용자 유사도 데이터베이스(7)로부터 추천하고자 하는 사용자와 유사한 성향을 보이는 사용자(선호도 예측에 사용할 사용자)들을 검색한다. 시스템 관리자는 특정한 임계치를 지정하여 유사 사용자의 숫자를 제한할 수 있다.
선호도 예측부(8)는, 사용자 기반 방법 및 아이템 기반 방법 중 한 가지를 선택하여 사용자가 아직 평가하지 않은 아이템에 대한 선호도를 예측한다.
추천 아이템 목록 생성부(9)는, 사용자가 아직 평가하지 않은 아이템에 대해 예측된 선호도가 높은 순서대로 아이템을 내림차순으로 정렬하여 추천 목록을 생성한다.
아이템 추천부(10)는, 추천 아이템 목록에 의거하여 상위 n개의 아이템과 그 아이템에 대한 예상 선호도를 사용자에게 추천한다.
본 발명은, 콜드 스타트 조건에서 선호도 예측 성능이 저하되는 문제를 개선하기 위한 새로운 유사성 척도이다. 앞에서 언급한 바와 같이, 도 3, 도 4, 도 5, 도 6과 같은 선호도 그래프는 공통 선호도가 비교적 많을 때는 물론이고, 특히 공통 선호도가 적은 경우에도 더욱 빈번하게 발생한다. 즉, 콜드 스타트 조건에서 아주 빈번하게 발생하여 협업 필터링 추천 시스템의 예측 성능을 저하시키는 주 요인이 된다. 이에 본 발명에서는 확률 변수의 모멘트를 이용한 유사성 척도(Raw Moment-based Similarity: RMS)를 제안한다.
도 9는 두 사용자 혹은 두 아이템의 공통 선호도의 차이를 가지고 생성할 수 있는 다항확률변수(D)를 생성하는 방법을 설명하는 도면이다. D는 본 발명에서 제안하는 RMS 유사도를 계산하기 위해 사용된다. 다항확률변수(D)는 통계학에서 다음과 같은 다항확률법칙(Multinomial Random Law)에 따른다. 본 발명에서 제안하는 방법에서 다항확률변수(D)에서 나타날 수 있는 사건의 개수는 R+1개이다.
Figure 112009080303041-PAT00009
(6)
1부터 5까지의 정수형 선호도를 부여할 수 있는 협업 필터링 추천 시스템에서 X = {5, 3, 2}이고 Y = {3, 2, 4}일 때, 도 9에 나타낸 식에 따라서 다항확률변수(D)는 다음과 같이 될 것이다.
D = {2, 1, 2}
도 10은 본 발명에서 제안하는 RMS 유사도를 계산하는 식을 나타낸다. 도 9에 나타낸 식에 의해 생성된 다항확률변수(D)의 r차 모멘트를 구하여 선호도 데이터베이스에 입력될 수 있는 최대 선호도와 최소 선호도 차이의 r승으로 나누면, 그 결과값의 범위는 0으로부터 1로 정규화된다. 1은 변수 X와 Y가 완전히 다름을 뜻하고, 0은 완전히 동일함을 뜻한다.
선호도 예측 시에 가중치로 사용할 수 있으려면, 유사할수록 0으로부터 1로 정규화된 값이 1에 수렴해야 한다. 그러므로, 결과값의 역을 취한다. 1로부터 5까지의 정수형 선호도를 부여할 수 있는 협업 필터링 추천 시스템(R은 5 - 1 = 4)에서 X = {5, 3, 2}이고 Y = {3, 2, 4}일 때, 도 8에 의해 다항확률변수(D)를 구하고, 이를 도 10에 나타낸 식에 적용하여 1차 모멘트(r=1)를 이용한 RMS(X, Y)는 다 음 식 (7)과 같이 구할 수 있다.
Figure 112009080303041-PAT00010
(7)
또한, 2차 모멘트(r=2)를 이용한 RMS(X, Y)는 다음의 식 (8)과 같이 구할 수 있다.
Figure 112009080303041-PAT00011
(8)
또한, 제곱근 모멘트를 이용한 RMS(X, Y)는 다음 식 (9)와 같이 구할 수 있다.
Figure 112009080303041-PAT00012
(9)
본 발명에서 제안하는 방법은 도 3, 도 4, 도 5, 도 6과 같은 상황에서 비롯되는 기존 유사성 척도들의 문제점을 보완하여, 콜드 스타트 조건에서 더욱 직관적이고 명확하게 유사함의 정도를 판별할 수 있다. 그 근거는, 도 10에 나타낸 바와 같다. 도 11은 모멘트 차수(r)을 di의 제곱근(1/2제곱), 제곱, 제곱근의 세제곱(2/3제곱), 제곱으로 설정했을 때에 유사도가 어떻게 나타나는지를 나타내고 있 다.
도 11에서는 본 발명에서 제안하는 유사성 척도가 기존의 유사성 척도와 차별화되는 두 가지 주요 특징을 발견할 수 있다. 첫 번째 특징은, 도 11의 (a)에 나타낸 표의 차이합이 16인 세 가지 경우의 유사도 변화에서 확인된다. 차이의 합계가 모두 16으로 동일하지만, 모멘트 차수(r)의 변경에 의해서 어떻게 차별화를 줄 수 있는지를 나타내고 있다. 선호도 차이가 큰 것의 빈도가 높고 낮음에 의해서 도 11의 (b)에 나타낸 그래프의 사각형으로 표기한 부분처럼 변화한다.
두 번째 특징은, 모멘트 차수 r을 낮게 설정할수록 유사도 분포는 낮은 쪽에 형성되고, 높게 설정할수록 높은 쪽에 형성된다는 것이다. 본 발명에서 제안하는 알고리즘의 이러한 유연성은, 각자 다른 특성(선호도의 최소값과 최대값, 사용자의 수, 아이템의 수, 선호도의 데이터의 수 등)을 가지는 사용자-선호도 매트릭스에서 높은 성능을 이끌어 내기 위한 수단이 될 수 있다.
도 12와 도 13은 협업 필터링에서 선호도 예측 성능을 평가하기 위한 측정 지표인 MAE(Mean Absolute Error)를 측정한 결과를 나타낸다. 비교 대상 알고리즘은 COS(코사인 유사도), PCC(피어슨 곱적률 상관계수), SRCC(스피어만 순위 상관계수)이며, 데이터 세트는 기존의 많은 연구들에서 사용된 바 있는 MovieLens의 데이터 세트를 이용하였다. 기존의 수많은 연구논문들에서 사용하는 방법과 동일하게, [사용자-아이템-선호도]의 포맷으로 구성된 총 100,000개의 선호도 데이터에서 임의로 30,000개를 샘플링하여 테스트 데이터(실험을 위한 입력 데이터)로 사용하였고, 나머지 70,000개의 데이터를 트레이닝 데이터(유사도 테이블 구성을 위한 데이 터)로 사용하여 실험하였다.
도 12를 참조하면, 도 3, 도 4, 도 5, 도 6의 경우가 빈번하게 나타나는 콜드 스타트 조건은 물론, 콜드 스타트 조건이 아닌 경우가 혼합되어 있는데도 불구하고, 본 발명에서 제안하는 유사성 척도가 기존의 방법들보다 두드러지게 향상된 성능을 보임을 확인할 수 있다. 이는, 콜드 스타트 조건은 물론이고, 많은 공통 선호도를 갖는 두 변수의 유사도 계산에서도 기존의 유사성 척도보다 뒤떨어지지 않음을 보여준다.
도 13은 유사도 계산 시에 강제적으로 공통 선호도 개수를 제한하여 실험한 결과이다. 이는, 도 12에서 가장 좋은 성능을 보였던 근접 이웃 개수를 선택하고, 콜드 스타트 조건을 인위적으로 만들어 실험한 결과로서, 본 발명에서 제안하는 RMS가 기존의 유사성 척도보다 콜드 스타트 문제에 얼마나 강한지 직관적으로 알 수 있는 결과이다. 도 13에서 나타낸 바와 같이, 본 발명에서 제안하는 방법은 기존의 방법보다 콜드 스타트 문제에 강함을 알 수 있다.
도 14는, 메모리 기반 협업 필터링의 사용자 기반 접근법에 있어서, 본 발명에서 제안하는 RMS를 이용한 사용자 유사도 테이블(데이터베이스)의 구축 순서도를 나타낸다. 이 도면에서, B_USER와 T_USER는 유사도 측정 대상이 되는 두 사용자를 나타내며, N은 최대 사용자 개수이다. 선호도 데이터를 가지고 있는 모든 사용자 사이의 유사도를 구하는 방법을 나타내고 있다. 구축한 사용자 유사도 테이블(데이터베이스)의 구조의 예는, 아래의 표 4와 같다.
표 4
ITEM 1 ITEM 2 ITEM 3 ITEM 4
USER 1 1 2 3 4
USER 2 4 5 2
USER 3 1 2 3
USER 4 3 2 3
USER 5 5 4 2
도 14를 참조하면, 본 발명에서 제안하는 RMS를 이용한 사용자 유사도 테이블(데이터베이스)의 구축 순서는 다음과 같다.
먼저, 단계 S1에서는 B_USER 변수와 T_USER 변수를 모두 0으로 초기화하고, 단계 S2에 있어서는 B_USER을 1만큼 증가시킨다.
이어서, 단계 S3에서는 T_USER의 값을 B_USER의 값과 동일하게 설정하고, 단계 S4에 있어서는 T_USER을 1만큼 증가시킨다.
이어서, 단계 S5에서는 B_USER와 T_USER 모두 평가한 아이템 선호도를 추출한다. 상기의 표 4에 있어서, B_USER가 1이고 T_USER가 2일 때, 추출되는 아이템 선호도는 {2, 3, 4} 및 {4, 5, 2}가 된다.
다음으로, 단계 S6에 있어서 차이확률변수 D를 계산하고, 단계 S7에서는 D의 1/2, 2, 2/3, 3차 모멘트를 계산한다.
다음으로, 단계 S8에서는, 계산 결과들을 다음과 같은 형태로 사용자 유사도 테이블(DB)(20)에 저장한다. 예컨대,
{B_USER T_USER RMS(1/2) RMS(2) RMS(2/3) RMS(3)}
ex) 1 2 결과값 결과값 결과값 결과값
다음으로, 단계 S9에 있어서는, T_USER의 값이 총 사용자 수(N)와 동일하면 다음 단계로 진행하고, 그렇지 않다면 단계 S4로 리턴한다.
다음으로, 단계 S10에 있어서는, B_USER의 값이 총 사용자 수(N)와 동일하면 다음 단계로 진행하고, 그렇지 않다면 단계 S3으로 리턴한다.
이와 같이 해서, 본 발명에서 제안하는 RMS를 이용한 사용자 유사도 테이블(데이터베이스)을 구축할 수 있다.
도 15는 본 발명에서 제안하는 RMS를 이용한 아이템 유사도 테이블(데이터베이스)의 구축 순서를 나타낸다. 본 도면에서, B_ITEM과 T_ITEM은 유사도 측정 대상이 되는 두 아이템을 나타내며, N은 최대 아이템 개수이다.
RMS 계산을 위해서, 사용자 기반 접근법에서는 두 사용자가 공통 평가한 아이템의 선호도를 이용하지만, 아이템 기반 접근법에서는 하나의 사용자가 두 아이템에 모두 평가한 선호도들을 이용하는 점에서는 차이가 있다.
구축한 아이템 유사도 테이블(데이터베이스스)의 구조의 예는, 아래의 표 5와 같다.
표 5
ITEM 1 ITEM 2 ITEM 3 ITEM 4
USER 1 1 2 3 4
USER 2 4 5 2
USER 3 1 2 3
USER 4 3 2 3
USER 5 5 4 2
도 15를 참조하면, 본 발명에서 제안하는 RMS를 이용한 아이템 유사도 테이 블(데이터베이스)의 구축 순서는 다음과 같다.
먼저, 단계 S11에서는 B_ITEM 변수와 T_ITEM 변수를 모두 0으로 초기화하고, 단계 S12에 있어서는 B_ITEM을 1만큼 증가시킨다.
이어서, 단계 S13에서는 T_ITEM의 값을 B_ITEM의 값과 동일하게 설정하고, 단계 S14에 있어서는 T_ITEM을 1만큼 증가시킨다.
이어서, 단계 S15에서는 B_ITEM와 T_ITEM에 모두 평가한 사용자의 아이템 선호도를 추출한다. 상기의 표 5에 있어서, B_ITEM가 1이고 T_ITEM가 2일 때, 추출되는 사용자의 아이템 선호도는 {1, 3} 및 {2, 2}가 된다.
다음으로, 단계 S16에 있어서 차이확률변수 D를 계산하고, 단계 S17에서는 D의 1/2, 2, 2/3, 3차 모멘트를 계산한다.
다음으로, 단계 S18에서는, 계산 결과들을 다음과 같은 형태로 아이템 유사도 테이블(DB)(30)에 저장한다. 예컨대,
{B_ITEM T_ITEM RMS(1/2) RMS(2) RMS(2/3) RMS(3)}
ex) 1 2 0.5 0.6 0.7 0.8
다음으로, 단계 S19에 있어서는, T_ITEM의 값이 총 아이템 수(N)와 동일하면 다음 단계로 진행하고, 그렇지 않다면 단계 S14로 리턴한다.
다음으로, 단계 S20에 있어서는, B_ITEM의 값이 총 아이템 수(N)와 동일하면 다음 단계로 진행하고, 그렇지 않다면 단계 S13으로 리턴한다.
이와 같이 해서, 본 발명에서 제안하는 RMS를 이용한 아이템 유사도 테이블(데이터베이스)을 구축할 수 있다.
본 발명에서 제안하는 유사성 척도 RMS는, 협업 필터링 추천 시스템은 물론이고, 다른 다양한 분야에 응용될 수 있다. 기존의 코사인 유사도 및 상관계수 기반 유사성 척도가 사용되는 정보검색, 통계 분석 등은 물론이고, 동일한 크기를 갖는 정지영상의 유사성 비교, 동일한 시간에 수신되는 두 신호의 유사성 비교 등 선형적인 특성을 가지는 두 변수의 유사성을 판단하기 위한 처리가 요구되는 분야에는 어디에든지 응용 가능하다.
도 1은 사용자 기반 협업 필터링의 수행 시간 감축을 위한 유사도 테이블을 나타낸 도면이다.
도 2는 아이템 기반 협업 필터링의 수행 시간 감축을 위한 유사도 테이블을 나타낸 도면이다.
도 3은 공통 선호도가 평행인 경우를 나타낸 도면이다.
도 4는 공통 선호도가 지그재그 형태인 경우 (1)을 나타낸 도면이다.
도 5는 공통 선호도가 지그재그 형태인 경우 (2)를 나타낸 도면이다.
도 6은 공통 선호도가 1개인 경우를 나타낸 도면이다.
도 7은 본 발명에서의 기수법을 설명하는 도면이다.
도 8은 본 발명의 실시예에 따른 유사성 척도에 기반한 협업 필터링 추천 시스템을 나타낸 도면이다.
도 9는 선형적인 관계를 갖는 두 변수의 차이의 절대값으로 생성되는 다항확률변수(D)를 구하는 방법을 설명하는 도면이다.
도 10은 본 발명에서 제안하는 확률 변수의 모멘트를 이용한 유사성 척도를 설명하는 도면이다.
도 11은 본 발명에서 제안하는 RMS의 모멘트 차수 조정에 따른 유사도 분포 변화의 예를 나타낸 도면이다.
도 12는 근접 이웃 개수의 변화에 대한 절대평균오차 측정 실험결과(full-rating experiment)를 나타낸 도면이다.
도 13은 공통 선호도 개수 변화에 대한 절대평균오차 측정 실험결과(cold-start experiment)를 나타낸 도면이다.
도 14는 RMS를 이용한 사용자 유사도 데이터베이스 구축 순서도이다.
도 15는 RMS를 이용한 아이템 유사도 데이터베이스 구축 순서도이다.

Claims (11)

  1. 두 사용자 혹은 두 아이템의 공통 선호도의 차이에 기초한 두 변수의 차이로 구성되는 다항확률변수를 구하고, 이를 이용하여 두 변수의 모멘트를 계산함으로써 유사도를 측정하는 차이 확률 변수의 원점 모멘트를 이용한 유사성 척도에 기반한 협업 필터링 추천 시스템으로서,
    사용자가 입력한 시스템 관리자가 규정한 정수형 숫자 범위 내에서 아이템에 대한 선호도를 수신하는 선호도 데이터 수신수단과,
    상기 선호도 데이터 수신수단에서 수신된 선호도에 대해, 소정의 절차에 따라 과거에 예측된 선호도와 사용자로부터 수신된 아이템 선호도의 오차를 계산하여 시스템의 성능을 측정하는 성능 측정수단,
    입력된 선호도, 과거에 현재 사용자가 입력한 선호도, 과거에 현재 사용자가 아닌 사람들이 입력한 선호도 데이터를 기초로, 유사도 측정 방법을 이용하여 사용자 유사도 및/또는 아이템 유사도를 측정하는 유사도 측정수단,
    아이템 유사도 데이터베이스로부터 선호도 예측에 사용할 아이템을 검색하는 유사 아이템 검색수단,
    사용자 유사도 데이터베이스로부터 추천하고자 하는 사용자와 유사한 성향을 보이는 사용자들을 검색하는 유사 사용자 검색수단,
    사용자 기반 방법 및 아이템 기반 방법 중 한 가지를 선택하여 사용자가 아직 평가하지 않은 아이템에 대한 선호도를 예측하는 선호도 예측수단,
    사용자가 아직 평가하지 않은 아이템에 대해 예측된 선호도가 높은 순서대로 아이템을 정렬하여 추천 목록을 생성하는 추천 아이템 목록 생성수단 및,
    상기 추천 아이템 목록 생성수단에서 생성된 추천 아이템 목록에 의거하여 상위로부터 소정 개수의 아이템과 그 아이템에 대한 예상 선호도를 사용자에게 추천하는 아이템 추천수단을 구비하여 구성된 것을 특징으로 하는 차이 확률 변수의 원점 모멘트를 이용한 유사성 척도에 기반한 협업 필터링 추천 시스템.
  2. 제1항에 있어서, 상기 유사도 측정 방법은 확률 변수의 모멘트를 이용한 유사성 척도(Raw Moment-based Similarity: RMS)에 의해 행해지고, 상기 유사도 측정수단에 의해 측정된 아이템 유사도와 사용자 유사도는 개별적으로 저장되는 것을 특징으로 하는 차이 확률 변수의 원점 모멘트를 이용한 유사성 척도에 기반한 협업 필터링 추천 시스템.
  3. 제1항 또는 제2항에 있어서, 상기 수신된 아이템에 대한 선호도는, 다른 모든 사용자의 아이템에 대한 선호도가 저장되는 공용 사용자-아이템 선호도 데이터베이스에 저장되는 것을 특징으로 하는 차이 확률 변수의 원점 모멘트를 이용한 유사성 척도에 기반한 협업 필터링 추천 시스템.
  4. 제1항 또는 제2항에 있어서, 상기 성능 측정은, 사용자로부터 새로운 선호도를 수신할 때마다 오차의 평균으로 계산되는 것을 특징으로 하는 차이 확률 변수의 원점 모멘트를 이용한 유사성 척도에 기반한 협업 필터링 추천 시스템.
  5. 제1항 또는 제2항에 있어서, 시스템 관리자가 특정한 임계치를 지정하여 유사 사용자의 숫자를 제한할 수 있는 것을 특징으로 하는 차이 확률 변수의 원점 모멘트를 이용한 유사성 척도에 기반한 협업 필터링 추천 시스템.
  6. RMS를 이용하여 유사도 측정 대상이 되는 두 사용자의 유사도 테이블을 구축하는 방법으로서,
    사용자 B 변수와 사용자 T 변수를 모두 0으로 초기화하는 단계와,
    상기 사용자 B를 1만큼 증가시키는 단계,
    상기 사용자 T의 값을 상기 사용자 B의 값과 동일하게 설정하는 단계,
    상기 사용자 T를 1만큼 증가시키는 단계,
    상기 사용자 B와 사용자 T 모두 평가한 아이템 선호도를 추출하는 단계,
    차이확률변수 D를 계산하는 단계,
    상기 차이확률변수 D의 1/2, 2, 2/3, 3차 모멘트를 계산하는 단계,
    상기 계산 결과들을 사용자 유사도 테이블에 저장하는 단계,
    상기 사용자 T의 값이 총 사용자 수(N)와 동일한지 여부를 판단하는 단계 및,
    상기 사용자 B의 값이 총 사용자 수(N)와 동일한지 여부를 판단하는 단계를 구비하는 것을 특징으로 하는 RMS를 이용한 사용자 유사도 테이블의 구축방법.
  7. 제6항에 있어서, 두 사용자가 공통 평가한 아이템의 선호도를 이용하여 선호도 데이터를 가지고 있는 모든 사용자 사이의 유사도를 구하는 것을 특징으로 하는 RMS를 이용한 사용자 유사도 테이블의 구축방법.
  8. 제6항 또는 제7항에 있어서, 상기 사용자 B와 사용자 T 모두 평가한 아이템 선호도를 추출하는 단계에서, 사용자 B가 1이고 사용자 T가 2일 때, 추출되는 아이템 선호도는 {2, 3, 4} 및 {4, 5, 2}로 추출되는 것을 특징으로 하는 RMS를 이용한 사용자 유사도 테이블의 구축방법.
  9. RMS를 이용하여 유사도 측정 대상이 되는 두 아이템의 유사도 테이블을 구축하는 방법으로서,
    아이템 B 변수와 아이템 T 변수를 모두 0으로 초기화하는 단계와,
    상기 아이템 B를 1만큼 증가시키는 단계,
    상기 아이템 T의 값을 상기 아이템 B의 값과 동일하게 설정하는 단계,
    상기 아이템 T를 1만큼 증가시키는 단계,
    상기 아이템 B와 상기 아이템 T에 모두 평가한 사용자의 아이템 선호도를 추출하는 단계,
    차이확률변수 D를 계산하는 단계,
    상기 차이확률변수 D의 1/2, 2, 2/3, 3차 모멘트를 계산하는 단계,
    상기 계산 결과들을 아이템 유사도 테이블에 저장하는 단계,
    상기 아이템 T의 값이 총 아이템 수(N)와 동일한지 여부를 판단하는 단계 및,
    상기 아이템 B의 값이 총 아이템 수(N)와 동일한지 여부를 판단하는 단계를 구비하는 것을 특징으로 하는 RMS를 이용한 아이템 유사도 테이블의 구축방법.
  10. 제9항에 있어서, 하나의 사용자가 두 아이템에 모두 평가한 선호도들을 이용하여 선호도 데이터를 가지고 있는 모든 사용자 사이의 유사도를 구하는 것을 특징으로 하는 RMS를 이용한 아이템 유사도 테이블의 구축방법.
  11. 제9항 또는 제10항에 있어서, 상기 아이템 B와 상기 아이템 T에 모두 평가한 사용자의 아이템 선호도를 추출하는 단계에서, 아이템 B가 1이고 아이템 T가 2일 때, 추출되는 사용자의 아이템 선호도는 {1, 3} 및 {2, 2}로 추출되는 것을 특징으로 하는 RMS를 이용한 아이템 유사도 테이블의 구축방법.
KR1020090131059A 2009-12-24 2009-12-24 차이 확률 변수의 원점 모멘트를 이용한 유사성 척도에 기반한 협업 필터링 추천 시스템 KR101116026B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090131059A KR101116026B1 (ko) 2009-12-24 2009-12-24 차이 확률 변수의 원점 모멘트를 이용한 유사성 척도에 기반한 협업 필터링 추천 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090131059A KR101116026B1 (ko) 2009-12-24 2009-12-24 차이 확률 변수의 원점 모멘트를 이용한 유사성 척도에 기반한 협업 필터링 추천 시스템

Publications (2)

Publication Number Publication Date
KR20110074167A true KR20110074167A (ko) 2011-06-30
KR101116026B1 KR101116026B1 (ko) 2012-02-13

Family

ID=44404573

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090131059A KR101116026B1 (ko) 2009-12-24 2009-12-24 차이 확률 변수의 원점 모멘트를 이용한 유사성 척도에 기반한 협업 필터링 추천 시스템

Country Status (1)

Country Link
KR (1) KR101116026B1 (ko)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013032199A1 (ko) * 2011-08-26 2013-03-07 주식회사 네오위즈인터넷 높은 연관성을 가지는 아이템을 추천하는 사용자 기반의 추천 엔진
WO2013032198A1 (ko) * 2011-08-26 2013-03-07 주식회사 네오위즈인터넷 높은 연관성을 가지는 아이템을 추천하는 아이템 기반의 추천 엔진
KR20140056716A (ko) * 2012-10-31 2014-05-12 에스케이플래닛 주식회사 상품 추천 서비스 시스템, 그 시스템에서의 협업 필터링 기반 상품 추천을 위한 방법 및 장치
KR101394247B1 (ko) * 2012-12-14 2014-05-14 성균관대학교산학협력단 관계 기반 상황 인식 서비스 추천 방법 및 시스템
KR101453623B1 (ko) * 2012-12-26 2014-10-28 한양대학교 산학협력단 추천 시스템에서 유저의 검색 키워드를 이용한 아이템 선호도 추론 방법 및 시스템
US9858318B2 (en) 2012-01-20 2018-01-02 Entit Software Llc Managing data entities using collaborative filtering
KR101877282B1 (ko) * 2017-02-14 2018-07-11 주식회사 아이디어랩스 개인화 회귀 분석을 이용하여 품목의 이용자가 상기 품목에 부여하는 선호도를 예측하기 위하여 정보를 정화하는 방법 및 이를 이용한 컴퓨팅 장치
CN112307028A (zh) * 2020-10-31 2021-02-02 海南大学 跨数据信息知识模态的面向本质计算的差分内容推荐方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102070049B1 (ko) 2017-08-08 2020-04-01 한국과학기술원 보조정보를 이용하는 조건부 변분 오토인코더 기반의 협업 필터링 방법 및 장치

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007323315A (ja) 2006-05-31 2007-12-13 Nippon Telegr & Teleph Corp <Ntt> 協調フィルタリング方法、協調フィルタリング装置、および協調フィルタリングプログラムならびにそのプログラムを記録した記録媒体
US8468155B2 (en) 2006-06-22 2013-06-18 Infosys Limited Collaborative filtering-based recommendations
KR20090020817A (ko) * 2007-08-24 2009-02-27 연세대학교 산학협력단 협동적 필터링 기반의 추천 시스템 및 방법과 이웃 선정방법
KR101060487B1 (ko) * 2007-11-19 2011-08-30 서울대학교산학협력단 태그 클라우드를 이용한 콘텐츠 추천 장치 및 방법

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013032199A1 (ko) * 2011-08-26 2013-03-07 주식회사 네오위즈인터넷 높은 연관성을 가지는 아이템을 추천하는 사용자 기반의 추천 엔진
WO2013032198A1 (ko) * 2011-08-26 2013-03-07 주식회사 네오위즈인터넷 높은 연관성을 가지는 아이템을 추천하는 아이템 기반의 추천 엔진
US9858318B2 (en) 2012-01-20 2018-01-02 Entit Software Llc Managing data entities using collaborative filtering
KR20140056716A (ko) * 2012-10-31 2014-05-12 에스케이플래닛 주식회사 상품 추천 서비스 시스템, 그 시스템에서의 협업 필터링 기반 상품 추천을 위한 방법 및 장치
KR101394247B1 (ko) * 2012-12-14 2014-05-14 성균관대학교산학협력단 관계 기반 상황 인식 서비스 추천 방법 및 시스템
KR101453623B1 (ko) * 2012-12-26 2014-10-28 한양대학교 산학협력단 추천 시스템에서 유저의 검색 키워드를 이용한 아이템 선호도 추론 방법 및 시스템
KR101877282B1 (ko) * 2017-02-14 2018-07-11 주식회사 아이디어랩스 개인화 회귀 분석을 이용하여 품목의 이용자가 상기 품목에 부여하는 선호도를 예측하기 위하여 정보를 정화하는 방법 및 이를 이용한 컴퓨팅 장치
CN112307028A (zh) * 2020-10-31 2021-02-02 海南大学 跨数据信息知识模态的面向本质计算的差分内容推荐方法
CN112307028B (zh) * 2020-10-31 2021-11-12 海南大学 跨数据信息知识模态的面向本质计算的差分内容推荐方法

Also Published As

Publication number Publication date
KR101116026B1 (ko) 2012-02-13

Similar Documents

Publication Publication Date Title
KR101116026B1 (ko) 차이 확률 변수의 원점 모멘트를 이용한 유사성 척도에 기반한 협업 필터링 추천 시스템
Gohari et al. A new confidence-based recommendation approach: Combining trust and certainty
McLaughlin et al. A collaborative filtering algorithm and evaluation metric that accurately model the user experience
US6636862B2 (en) Method and system for the dynamic analysis of data
Cremonesi et al. An evaluation methodology for collaborative recommender systems
CN107220365A (zh) 基于协同过滤与关联规则并行处理的精准推荐系统及方法
KR20050043917A (ko) 통계적 개인화된 추천 시스템
CN109471982B (zh) 一种基于用户和服务聚类QoS感知的Web服务推荐方法
CN106534976B (zh) Iptv视频业务中用户满意度的智能化预测方法
Zhang et al. Fuzzy user-interest drift detection based recommender systems
Margaris et al. Improving collaborative filtering's rating prediction quality by considering shifts in rating practices
He et al. A time-context-based collaborative filtering algorithm
CN104063555B (zh) 面向遥感信息智能分发的用户模型建模方法
Maihami et al. Proposing a novel method for improving the performance of collaborative filtering systems regarding the priority of similar users
Dwivedi et al. An Item-based Collaborative Filtering Approach for Movie Recommendation System
Sitkrongwong et al. Latent probabilistic model for context-aware recommendations
CN110059257B (zh) 基于评分修正的项目推荐方法
Karahodža et al. Temporal dynamics of changes in group user's preferences in recommender systems
Kim et al. An improved recommendation algorithm in collaborative filtering
Kannikaklang et al. A hybrid recommender system for improving rating prediction of movie recommendation
Samundeeswary et al. Comparative study of recommender systems built using various methods of collaborative filtering algorithm
Liu et al. Personal recommendation based on weighted bipartite networks
CN108681947B (zh) 基于物品的时间关联度和覆盖度的协同过滤推荐方法
CN116523597A (zh) 大数据云熵挖掘的电子商务定制化推荐方法
Pirasteh et al. An asymmetric weighting schema for collaborative filtering

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20150115

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160113

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee