KR20130062442A - 협업 필터링 추천 방식을 이용한 추천 방법 및 추천 시스템 - Google Patents

협업 필터링 추천 방식을 이용한 추천 방법 및 추천 시스템 Download PDF

Info

Publication number
KR20130062442A
KR20130062442A KR1020110122493A KR20110122493A KR20130062442A KR 20130062442 A KR20130062442 A KR 20130062442A KR 1020110122493 A KR1020110122493 A KR 1020110122493A KR 20110122493 A KR20110122493 A KR 20110122493A KR 20130062442 A KR20130062442 A KR 20130062442A
Authority
KR
South Korea
Prior art keywords
user
content
similar
user terminal
recommendation
Prior art date
Application number
KR1020110122493A
Other languages
English (en)
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 KR1020110122493A priority Critical patent/KR20130062442A/ko
Publication of KR20130062442A publication Critical patent/KR20130062442A/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
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0282Rating or review of business operators or products
    • 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
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations
    • 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

Landscapes

  • Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Engineering & Computer Science (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Marketing (AREA)
  • General Physics & Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

추천 시스템이 사용자 단말에게 컨텐츠를 추천하는 방법에 따르면, 다수의 사용자들을 그룹핑하여 속성이 유사한 사용자들로 구성된 하나 이상의 유사 집단을 도출하는 단계, 상기 하나 이상의 유사 집단 중에서 상기 사용자 단말이 속하는 유사 집단 내의 사용자들과 상기 사용자 단말을 대상으로 사용자 기반 협업 필터링을 수행하는 단계 및 상기 사용자 기반 협업 필터링을 통해 도출된 컨텐츠 별 선호도 예측값을 토대로 상기 사용자 단말에게 컨텐츠를 추천하는 단계를 포함한다.

Description

협업 필터링 추천 방식을 이용한 추천 방법 및 추천 시스템{METHOD AND SYSTEM FOR RECOMMENDATION USING STYLE OF COLLABORATIVE FILTERING}
본 발명은 협업 필터링 추천 방식을 사용하는 추천 방법 및 추천 시스템에 관한 것으로서, 개인화 기법에 따라 사용자와 관련된 서비스 또는 컨텐츠를 추천하는 기술이다.
일반적으로 추천 시스템은 다량의 컨텐츠 중에서 필터링된 컨텐츠를 사용자에게 추천하는 시스템이다. 이러한 추천 시스템이 사용하는 추천 방식은 사용자와 성향이 유사한 사용자들이 공통적으로 좋아하는 컨텐츠를 추천해주는 협업 필터링 추천 방식, 사용자가 이전에 이용한 컨텐츠와 내용 정보가 유사한 다른 컨텐츠를 추천해주는 내용기반 추천 방식, 인구통계학적 정보를 분석하여 규칙을 찾아 컨텐츠를 추천해주는 인구통계학적 추천방식 등을 이용할 수 있다.
이 중에서 협업 필터링 추천 방식이 가장 성공적인 추천 기법으로 알려져 있다. 예를 들어, 도서 추천을 제공하는 아마존이나 영화 추천을 제공하는 넷플릭스 등과 같은 인터넷 사이트에서 널리 활용되고 있다.
협업 필터링 추천 방식은 사용자가 선호하는 패턴과 유사한 다른 사용자의 선호도를 이용하여 사용자에게 관련된 서비스를 추천하는 개인화 기법으로서, 사용자 기반 협업 필터링 추천 방식과 아이템 기반 협업 필터링 추천 방식으로 구분된다. 이중에서 사용자 기반 협업 필터링 추천 방식은 사용자들 간의 유사성을 측정하여 선호도가 비슷한 다른 사용자가 평가한 상품을 기반으로 특정 사용자가 선호할만한 상품을 추천하는 방식이다.
이러한 사용자 기반 협업 필터링 추천 방식은 컨텐츠 아이템의 내용 정보가 없는 환경에서도 의미있는 추천을 할 수 있다. 하지만, 종래에 사용자 기반 협업 필터링 추천 방식에서 유사도를 계산할 때, 목표 사용자와 모든 사용자간의 유사도를 계산하기 때문에 많은 시간이 소비된다는 문제점이 있다. 즉 사용자의 수가 많아지는 경우 사용자간 유사도를 계산하는데 소요되는 시간이 기하급수적 증가로 인해 서비스 확장성에 문제가 발생한다.
또한, 신규 컨텐츠처럼 둘 이상의 사용자가 모두 평가를 수행한 컨텐츠가 없는 경우, 아이템에 대한 상호 작용을 생성시킬수 없기 때문에 사용자의 선호도 예측 및 추천을 하지 못하는 문제점이 발생한다.
따라서, 본 발명이 이루고자 하는 기술적 과제는 사용자 속성이 유사한 사용자들로 구성된 유사 집단의 사용자들만을 대상으로 유사도를 계산하는 협업 필터링 추천 방식을 이용한 추천 방법 및 추천 시스템을 제공하는 것이다.
또한, 본 발명이 이루고자 하는 다른 기술적 과제는 사용자 기반 협업 필터링 추천 방식과 아이템 기반 협업 필터링 추천 방식이 복합된 협업 필터링 추천 방식을 이용한 추천 방법 및 추천 시스템을 제공하는 것이다.
본 발명의 한 특징에 따르면 추천 방법이 제공된다. 이 방법은, 추천 시스템이 사용자 단말에게 컨텐츠를 추천하는 방법으로서, 다수의 사용자들을 그룹핑하여 속성이 유사한 사용자들로 구성된 하나 이상의 유사 집단을 도출하는 단계; 상기 하나 이상의 유사 집단 중에서 상기 사용자 단말이 속하는 유사 집단 내의 사용자들과 상기 사용자 단말을 대상으로 사용자 기반 협업 필터링을 수행하는 단계; 및 상기 사용자 기반 협업 필터링을 통해 도출된 컨텐츠 별 선호도 예측값을 토대로 상기 사용자 단말에게 컨텐츠를 추천하는 단계를 포함한다.
이때, 상기 상기 도출하는 단계와 상기 사용자 기반 협업 필터링을 수행하는 단계 사이에, 상기 추천 시스템이 보유한 컨텐츠 중에서 둘 이상의 사용자가 모두 평가한 컨텐츠가 존재하는지 판단하는 단계; 및 사용자 평가가 존재하지 않는 컨텐츠에 대해 상기 사용자 단말이 속하는 유사 집단 내의 사용자들을 대상으로 아이템 기반 협업 필터링을 수행하는 단계를 더 포함하고,
상기 사용자 기반 협업 필터링을 수행하는 단계는, 상기 둘 이상의 사용자가 모두 평가한 컨텐츠에 대해 수행된다.
또한, 상기 추천하는 단계는,
상기 사용자 기반 협업 필터링 또는 상기 아이템 기반 협업 필터링을 통해 도출된 컨텐츠 별 선호도 예측값을 토대로 컨텐츠 추천 리스트를 생성하는 단계; 및 상기 컨텐츠 추천 리스트에 대해 랭킹 알고리즘을 적용하여 랭킹 순위가 높은 컨텐츠들로 구성된 추천 리스트를 재구성하여 상기 사용자 단말로 전송하는 단계를 포함한다.
이때, 상기 추천하는 단계는,
상기 추천 리스트를 생성하는 단계 이전에, 상기 사용자 단말의 상황 정보를 수집하여 현재 상황에 적합하지 않은 컨텐츠를 제외하기 위한 컨텍스트 필터링을 수행하는 단계를 더 포함할 수 있다.
또한, 상기 하나 이상의 유사 집단을 도출하는 단계는,
사용자 로그 및 상황 정보를 수집하는 단계; 및 상기 사용자 로그 및 상황 정보를 속성이 유사한 유사 집단으로 클러스터링하는 단계를 포함한다.
또한, 상기 클러스터링하는 단계는,
상기 사용자 로그 및 상황 정보를 토대로 제1 중심점을 선정하는 단계; 상기 제1 중심점을 기준으로 유사도를 계산하여 제1 유사 집단들로 그룹핑하는 단계; 상기 제1 유사 집단들에서 각각 새로운 제2 중심점을 선정하는 단계; 상기 제2 중심점을 기준으로 유사도를 계산하여 제2 유사 집단들로 그룹핑하는 단계; 상기 제2 유사 집단들에서 각각 새로운 제3 중심점을 선정하는 단계; 상기 제3 중심점을 기준으로 유사도를 계산하여 제3 유사 집단들로 그룹핑하는 단계; 상기 제2 중심점과 상기 제3 중심점을 비교하여 일치하는지 판단하는 단계; 일치하지 않으면, 상기 제2 중심점을 선정하는 단계부터 상기 제3 유사 집단들로 그룹핑하는 단계를 반복하는 단계; 및 일치하면, 상기 제3 유사 집단들을 최종 유사 집단으로 선정하는 단계를 포함한다.
또한, 상기 사용자 기반 협업 필터링을 수행하는 단계는,
상기 하나 이상의 유사 집단 중에서 상기 사용자 단말이 속하는 유사 집단 내의 사용자들과 상기 사용자 단말 간의 유사도를 계산하는 단계; 및 상기 유사도를 가중치로 하여 컨텐츠 별 선호도를 예측하는 단계를 포함한다.
또한, 상기 예측하는 단계는,
상기 사용자 단말이 속하는 유사 집단 선호도 평균값, 상기 사용자 단말이 속하는 유사 집단에 대한 상기 사용자 단말의 선호도 및 상기 사용자 단말이 속하는 유사 집단에 대한 상기 사용자 단말의 유사도 가중치를 이용하여 컨텐츠 별 선호도 예측값이 도출된다.
또한, 상기 사용자 기반 협업 필터링을 수행하는 단계는,
상기 유사도를 계산하는 단계 이전에,상기 사용자 로그를 기반으로 컨텐츠 별 사용자 선호도 집합을 생성하는 단계; 상기 사용자 선호도 집합을 훈련하여 컨텐츠 별 선호도 가중치를 도출하는 단계; 및 상기 사용자 선호도 집합 및 컨텐츠 별 선호도 가중치를 포함하는 추천 규칙을 생성하는 단계를 더 포함하고, 상기 컨텐츠 별 선호도를 예측하는 단계는, 상기 추천 규칙을 통해 도출된 컨텐츠들을 대상으로 수행된다.
본 발명의 다른 특징에 따르면 추천 시스템이 제공된다. 이 시스템은, 사용자 단말에게 컨텐츠를 추천하는 추천 시스템으로서, 사용자 로그 및 상황 정보를 수집하는 수집 서버; 상기 사용자 로그 및 상황 정보를 토대로 다수의 사용자들을 그룹핑하여 속성이 유사한 사용자들로 구성된 하나 이상의 유사 집단을 도출하는 클러스터 서버; 상기 하나 이상의 유사 집단 중에서 상기 사용자 단말이 속하는 유사 집단 내의 사용자들과 상기 사용자 단말을 대상으로 사용자 기반 협업 필터링을 수행하여 컨텐츠 별 선호도 예측값을 도출하는 훈련 서버; 및 상기 컨텐츠 별 선호도 예측값을 토대로 상기 사용자 단말에게 컨텐츠를 추천하는 추천 서버를 포함한다.
이때, 상기 훈련 서버는, 둘 이상의 사용자가 모두 평가한 컨텐츠에 대해서 상기 사용자 기반 협업 필터링을 수행하고, 사용자 평가가 존재하지 않는 컨텐츠에 대해 상기 사용자 단말이 속하는 유사 집단 내의 사용자들을 대상으로 아이템 기반 협업 필터링을 수행하여 상기 컨텐츠 별 선호도 예측값을 도출한다.
또한, 상기 훈련 서버는, 상기 사용자 로그를 기반으로 도출된 컨텐츠 별 사용자 선호도 집합 및 컨텐츠 별 선호도 가중치를 포함하는 추천 규칙을 상기 사용자 기반 협업 필터링을 통해 갱신하며, 상기 사용자 단말이 속하는 유사 집단 선호도 평균값, 상기 사용자 단말이 속하는 유사 집단에 대한 상기 사용자 단말의 선호도 및 상기 사용자 단말이 속하는 유사 집단에 대한 상기 사용자 단말의 유사도 가중치를 이용하여 컨텐츠 별 선호도 예측값을 도출하는 상기 사용자 기반 협업 필터링을 수행한다.
또한, 상기 클러스터 서버는, 상기 사용자 로그 및 상황 정보를 제1 중심점을 기준으로 제1 유사 집단들로 그룹핑하고, 상기 제1 유사 집단들에서 각각 새로운 제2 중심점을 선정하여 상기 제2 중심점을 기준으로 유사도를 계산하여 제2 유사 집단들로 그룹핑하며, 상기 제2 유사 집단들에서 선정한 각각 새로운 제3 중심점을 기준으로 유사도를 계산하여 제3 유사 집단들로 그룹핑하고, 상기 제2 중심점과 상기 제3 중심점이 일치할때까지 새로운 유사 집단을 그룹핑하는 과정을 반복하여 최종 유사 집단을 선정한다.
본 발명의 실시예에 따르면, 모든 사용자간 유사도가 아닌 목표 사용자가 속한 집단의 사용자만을 대상으로 유사도를 계산하므로, 사용자가 폭발적으로 증가하더라도 훈련 시간을 단축시킬 수 있다.
또한, 사용자 기반 협업 필터링 방식과 아이템 기반 협업 필터링 방식이 복합된 협업 필터링을 수행함으로써, 종래에 둘 이상의 사용자가 모두 평가를 수행한 컨텐츠가 없는 경우 또는 신규 컨텐츠인 경우에 그 컨텐츠를 추천하지 못하는 문제점을 해결할 수 있다.
도 1은 본 발명의 실시예에 따른 추천 시스템의 구성도이다.
도 2는 본 발명의 실시예에 따른 클러스터링 과정을 도식화한 도면이다.
도 3은 본 발명의 실시예에 따른 추천 규칙 생성 과정을 나타낸 순서도이다.
도 4는 본 발명의 실시예에 따른 추천 방법을 나타낸 흐름도이다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 어떤 구성 요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다.
또한, 명세서에 기재된 "…부", "…기", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
이하, 도면을 참조로 하여 본 발명의 실시예에 따른 협업 필터링 추천 방식을 이용한 추천 방법 및 추천 시스템에 대하여 상세히 설명한다.
도 1은 본 발명의 실시예에 따른 추천 시스템의 구성을 나타낸 블록도이고, 도 2는 본 발명의 실시예에 따른 클러스터링 과정을 도식화한 도면이다.
도 1을 참조하면, 추천 시스템(100)은 서비스 제공 서버(200)와 외부 연동을 수행한다. 이러한 서비스 제공 서버(200)는 사용자 단말(300)에게 서비스를 제공하고, 사용자의 서비스 이용 내역을 비롯한 사용자의 행동을 나타내는 사용자 로그를 추천 시스템(100)에게 제공한다.
여기서, 서비스 제공 서버(200)는 음악 서버(210), 영화 서버(230), 3rd Party 서버(250)를 포함할 수 있다.
사용자 단말(300)은 추천 시스템(100)으로부터 컨텐츠를 추천받고, 음악 서버(210), 영화 서버(230), 3rd Party 서버(250)에 접속하여 서비스를 제공받는다. 이러한 사용자 단말(300)은 네트워크 접속이 가능하고, 데이터를 송수신할 수 있는 단말로서, 스마트폰, 휴대 단말, 노트북, 태블릿 PC 등이 될 수 있다.
여기서, 음악 서버(210)는 음원 플레이어를 내장하고, 음원 플레이어를 통해 사용자 단말(300)에게 음원 컨텐츠를 제공한다. 그리고 음악 서버(210)는 사용자 단말(300)을 비롯한 사용자의 청취 이력, 구매 이력 및 메타 데이터(metadata)를 수집 서버(101)에게 제공한다. 이때, 메타 데이터는 음원 컨텐츠와 관련된 음원 장르, 음악명, 아티스트 등을 포함한다.
영화 서버(230)는 무비 플레이어를 내장하고, 무비 플레이어를 통해 사용자 단말(300)에게 영화 컨텐츠를 제공한다. 그리고 영화 서버(230)는 사용자 단말(300)을 비롯한 사용자의 시청 이력, 구매 이력 및 메타 데이터를 수집 서버(101)에게 제공한다. 이때, 메타 데이터는 영화 컨텐츠와 관련된 영화 장르, 영화명, 아티스트 등을 포함한다.
3rd 파티(party) 서버(250)는 사용자 단말(300)의 현재 상황에 적합한 추천 서비스를 제공하기 위해 현재 상황 정보를 추론하기 위한 정보 예를 들어 날씨와 같은 정보를 수집 서버(101)에게 제공한다.
또한, 추천 시스템(100)은 수집 서버(101), 클러스터 서버(103), 훈련 서버(105), 훈련 데이터베이스(107), 규칙 데이터베이스(109) 및 추천 서버(111)를 포함한다.
여기서, 추천 시스템(100)의 구성은 별개의 서버로 구현되었으나, 마치 하나의 장치로 구현되어 있듯이 실시간 연결이 가능하다. 이때, 클러스터 서버(103), 훈련 서버(105), 훈련 데이터베이스(107), 규칙 데이터베이스(109) 및 추천 서버(111)는 내부 전산망(미도시)으로 연결되어 상호 연동할 수 있다.
또한, 수집 서버(101), 클러스터 서버(103), 훈련 서버(105), 훈련 데이터베이스(107), 규칙 데이터베이스(109) 및 추천 서버(111)는 하나의 장치 내에 탑재되어 각각의 기능으로 구현될 수 있다.
이때, 수집 서버(101)는 음악 서버(210), 영화 서버(230), 3rd Party 서버(250)로부터 사용자 로그를 수집하는데, 예를 들어, 사용자 단말(300)을 비롯한 사용자의 사용 이력, 구매 이력 정보, 상황 정보(예, 날씨)를 수집한다. 그리고 사용자 단말(300)에게 추천 서비스의 리스트를 제공하기 위해 카테고리, 음악명, 아티스트, 영화명, 배우 등 음악 및 영화의 메타 데이터를 수집하여 저장한다.
수집 서버(101)는 훈련 서버(105)에서 사용할 수 있도록 수집된 사용자 로그 데이터의 전처리를 수행한다. 이러한 전처리는 데이터 클리닝(Data Cleaning), 데이터 어그리게이션(Data Aggregation), 데이터 인터프리테이션(Data Interpretation)을 포함한다. 또한, 수집 서버(101)는 상황 정보와 관련된 컨텍스트 필터링을 수행한다. 이러한 컨텍스트 필터링은 컨텍스트 클리닝(Context Cleaning), 컨텍스트 어그리게이션(Context Aggregation), 컨텍스트 인터프리테이션(Context Interpretation)과 같은 전처리 과정을 포함한다.
클러스터 서버(103)는 클러스터링을 수행하는 서버로서, 여기서, 클러스터링은 사용자의 여러 가지 속성들을 고려하여 특성이 비슷한 사용자들로 그룹핑하는 과정이다.
이때, 사용자 세분화를 위한 그룹핑 방식은 인구통계적 방식, 구매패턴 방식, 생활패턴 방식으로 수행될 수 있다.
인구통계적 방식은 사용자의 프로파일, 예를 들어, 성별, 나이, 거주지, 직업, 소득, 교육, 종교를 기반으로 사용자를 세분화 및 그룹화한다. 그리고 구매패턴 방식은 사용자의 구매 이력, 예를 들어, 컨텐츠, 주기, 거래액을 기반으로 사용자를 세분화 및 그룹화한다. 그리고 생활패턴 방식은 사용자의 행위 이력과 프로파일, 예를 들어, 라이프스타일, 성격, 취미, 가치관을 기반으로 사용자를 세분화 및 그룹화한다.
클러스터 서버(103)는 이러한 그룹핑 방식에 따라 클러스터링을 수행하는데, 구체적으로, n개의 객체를 가진 데이터베이스와 k개의 군집의 수가 주어졌을 때, 군집에 해당하는 k/4개의 인구통계학적 그룹, k/2개의 구매패턴 그룹, k/4개의 생활패턴 그룹의 분할(k<=n)을 만들고, 군집 유사성은 군집의 중심점(Centroid)과 소속된 객체들과의 거리를 평균하여 유사도를 측정한다.
예를 들어, 클러스터 서버(103)는 100개의 군집으로 분류할 때 인구통계학적 그룹은 25개, 구매패턴 그룹은 50개, 생활패턴 그룹은 25개로 분류한다. 그리고 군집의 중심점을 나타내는 값으로 임의의 k개를 선택한다. 남겨진 객체들은 선택된 k개의 중심점들과의 거리를 계산하여 가장 가까운 군집에 할당한다. 그리고 각 군집에 새로운 군집중심(평균)을 구한다.
이처럼, 클러스터 서버(103)가 클러스터링하는 과정을 도식화하면, 도 2와 같다.
먼저, 도 2의 (a)와 같이, 클러스터 서버(103)가 6개의 객체 데이터를 입력받는다.
다음, 도 2의 (b)와 같이, 클러스터 서버(103)는 임의로 중심점을 잡는다.
다음, 도 2의 (c)와 같이, 클러스터 서버(103)는 임의로 잡은 중심점을 기준으로 유사도를 계산하여 가까운 군집에 할당한다.
다음, 도 2의 (d)와 같이, 클러스터 서버(103)는 도 2의 (c)에서 할당한 군집에서 각각 새로운 군집중심점을 구한다.
다음, 도 2의 (e)와 같이, 클러스터 서버(103)는 도 2의 (d)에서 구한 새로운 군집중심점을 기준으로 유사도를 계산하여 가까운 군집에 할당한다.
다음, 도 2의 (f)와 같이, 클러스터 서버(103)는 도 2의 (e)에서 할당한 군집에서 각각 새로운 군집중심점을 구한다.
다음, 도 2의 (g)와 같이, 클러스터 서버(103)는 도 2의 (f)에서 구한 새로운 군집중심점을 기준으로 유사도를 계산하여 가까운 군집에 할당한다.
이처럼, 도 2의 (d)~(g) 과정을 군집중심점의 이동이 없을 때까지 즉 군집중심점이 수렴할 때까지 반복한 후, 도 2의 (h)와 같이 최종 클러스터링 그룹이 확정된다.
이때, 최종 클러스터링 그룹은 하기 수학식 1을 통해 계산될 수 있다. 일반적으로 제곱오차(squared-error) 기준이 사용되며 다음과 같이 정의된다.
Figure pat00001
여기서, E는 모든 데이터들의 제곱오차를 합한 값이다. i는 중심점이 수렴할때까지 반복되는 횟수이다. p는 주어진 레코드를 나타낸다. mi는 군집, ci는 평균이다.
이러한 제곱오차(squared-error) 기준은 결과로 나온 k개의 군집을 가능한 압축 혹은 분리되도록 하는 것이다.
다시, 도 1를 참조하여 설명하면, 훈련 서버(105)는 수집 서버(101)가 수집한 사용자 로그를 기반으로 추천 규칙을 생성한다.
훈련 서버(105)는 사용자 로그 및 상황 정보를 기 정의된 훈련 알고리즘을 이용하여 훈련하여 컨텐츠 별 사용자 선호도를 나타내는 추천 규칙을 생성한다. 이때, 컨텐츠 별 초기 사용자 선호도 값은 사용자 로그를 통해 획득한 사용자가 특정 컨텐츠에 대해 입력한 평점이고, 최종 선호도 값은 훈련 서버(105)에 의해 협업 필터링을 통해 도출된다.
훈련 서버(105)가 수집 서버(101)로부터 입력받는 데이터는 보통 n개의 컨텐츠에 대한 m명의 사용자 선호도 집합으로 구성되며, 이는 m×n(사용자-컨텐츠) 행렬로 표현한다. 예를 들어, 구매 로그 데이터로부터 선호도를 측정할 경우, 행렬 P의 i번째 행, j번째 열의 값 Pij 컨텐츠에 대해 가중치(1 ~ 5) 값을 가지게 되며, 이러한 컨텐츠 별 선호도 가중치가 추천 규칙에 포함된다.
또한, 훈련 서버(105)는 훈련 데이터베이스(107)에 저장된 훈련할 때 사용하는 컨텐츠들을 대상으로 둘 이상의 사용자의 평가 정보가 존재하는 컨텐츠들에 대해서는 본 발명의 실시예에 따른 사용자 기반 협업 필터링을 수행하여 최종 선호도 값을 도출한다. 반면, 둘 이상의 사용자의 평가 정보가 존재하지 않는 컨텐츠들 즉 기존의 훈련되었던 컨텐츠가 아닌 새로운 컨텐츠에 대해서는 아이템 기반 협업 필터링을 수행하여 최종 선호도 값을 도출한다.
여기서, 사용자 기반 협업 필터링 및 아이템 기반 협업 필터링은 모두 클러스터 서버(103)에 의해 그룹핑된 유사 집단 중에서 사용자 단말이 속하는 유사 집단만을 대상으로 한다.
훈련 데이터베이스(107)는 수집 서버(101)가 수집한 사용자 로그 및 사용자 로그로부터 훈련 과정을 거쳐 훈련 서버(105)에서 생성된 추천 규칙을 저장한다.
규칙 데이터베이스(109)는 훈련 서버(105)에서 생성된 추천 규칙을 저장하는데, 사용자 히스토리 기반의 추천 규칙을 저장한다. 즉, 검색 시스템(미도시)에서 인덱스 역할을 하는 프로파일 형태로 추천 규칙을 저장한다.
이때, 추천에 필요한 정보는 훈련 데이터베이스(107)와 규칙 데이터베이스(109)에 저장되는 정보는 동일하다. 하지만, 훈련 데이터베이스(107)는 사용자 이력을 저장하고 훈련을 통해 도출된 추천 규칙은 규칙 데이터베이스(109)에 저장된다. 즉 훈련 서버(105)는 사용자 추천 요청에 대한 응답을 신속하게 하기 위해서 훈련 데이터베이스(107)에 저장된 정보를 통해 생성된 추천 규칙을 규칙 데이터베이스(109)에 복사(copy)해둔다.
여기서, 수집 서버(101)가 사용자 로그를 훈련 데이터베이스(107)에 저장하고 훈련 서버(105)가 이 정보를 활용하여 추천 규칙을 생성하며, 바로 이 정보가 사용자 히스토리이다.
추천 서버(111)는 사용자에게 음악, 영화 추천 요청을 받으면 사용자의 현재 상황에 가장 적합한 것을 추천하기 위해 상황 정보 필터링 및 규칙 데이터베이스(109)에 저장된 추천 규칙을 토대로 추천 로직을 수행한다. 그리고 추천 로직에 의해 생성된 추천 리스트에 대해 랭킹(Ranking) 알고리즘을 적용하여 순위를 도출하여 순위가 높은 컨텐츠들로 구성된 최종 확정된 추천 리스트를 사용자 단말(300)에게 전송한다.
이러한 추천 시스템(100)의 동작은 크게 사용자 로그 및 상황 정보를 수집하고 모델링하여 추천 규칙을 생성 및 저장하는 제1 과정과, 사용자가 앱을 실행시켜 추천 요청을 하면 추천 로직에 따라 추론된 컨텐츠들로 구성된 추천 리스트를 제공하는 제2 과정으로 구분된다.
여기서, 제1 과정을 도 3을 참조하여 설명하고, 제2 과정을 도 4를 설명하기로 한다. 이때, 도 1 및 도 2의 구성과 동일한 도면 부호를 사용한다.
먼저, 도 3은 본 발명의 실시예에 따른 추천 규칙 생성 과정을 나타낸 순서도이다.
도 3을 참조하면, 수집 서버(101)가 사용자가 행위 기반 정보를 중심으로 사용자 로그를 수집한다(S101). 이때, 주기적인 단위(day, 3시간단위 처럼)로 수집할 수 있다.
예를 들어, 음악 추천 서비스를 제공하기 위해서는 청취이력, 구매이력 및 메타 데이타를 음악 서버(210)로부터 수집한다. 영화 추천 서비스를 제공하기 위해서는 시청이력, 구매이력 및 메타 데이타를 영화 서버(230)로부터 수집한다. 사용자가 그 당시 접해 있던 상황에 최적화된 서비스를 제공하기 위해 상황 정보를 3rd Party 서버(250)로부터 수집한다. 예를 들어, 비오는 날 또는 눈오는 날에 어울릴 것 같은 음악을 추천하기 위해 날씨 정보를 3rd Party 서버(250)로부터 수집한다.
다음, 수집 서버(101)는 S101 단계에서 수집한 사용자 로그를 정제하기 위한 전처리 과정을 수행한다(S103).
즉 수집된 사용자 로그를 활용하기 위해 불필요한 데이터를 제거하는 데이터 클리닝(Data Cleaning), 데이터를 취합하는 데이터 어그리게이션(Data Aggregation), 데이터를 의미있는 것으로 해석하는 데이터 인터프리테이션(Data Interpretation) 절차를 수행한다.
그리고, 수집된 상황 정보 중에서 사용자의 상황을 반영할 수 있는 정보들을 선별 및 취합하는 전처리 과정을 수행하는 사용자 로그에서 직접적으로 추출할 수 있는 저수준 상황정보인 LLC(Low Leverl Context), 불필요한 상황 정보를 제거하는 컨텍스트 클리닝(Context Cleaning), 상황 정보를 취합하는 컨텍스트 어그리게이션(Context Aggregation), 상황 정보를 의미 있는 것으로 해석하기 위해 LLC와 로그 정보를 바탕으로 취합, 추론 과정을 거쳐 획득할 수 있는 고수준 상황정보인 HLC(High Level Context)로 변환하는 컨텍스트 인터프리테이션(Context Interpretation) 절차를 수행한다. 이처럼, 정제된 사용자 로그와 상황정보는 훈련 데이터베이스(107)에 저장된다.
다음, 훈련 서버(105)는 S103 단계에서 전처리된 사용자 로그 및 상황 정보를 모델링하여 사용자의 프로파일을 생성하여 훈련 데이터베이스(107)에 저장한다(S105).
다음, 훈련 서버(105)는 훈련 데이터베이스(107)에 저장된 정보를 사용자 로그를 기반하여 추천 규칙을 생성하고 훈련하는 과정을 수행한다(S107). 이처럼 생성된 추천 규칙은 훈련 데이터베이스(107)에 저장된다.
즉 훈련 서버(105)로 입력된 n개의 컨텐츠에 대한 m명의 사용자 선호도 집합으로 구성된 m×n(사용자-컨텐츠) 행렬을 갱신하는 과정을 수행하여 생성된 추천 규칙은 훈련 데이터베이스(107)에 저장된다. 여기서, m×n(사용자-컨텐츠) 행렬은 코사인 유사도 알고리즘과 선호도 수학식에 의해 생성될 수 있다.
다음, 클러스터 서버(103)는 훈련 데이터베이스(107)에 저장된 사용자 로그들을 유사한 속성을 가진 로그들로 구분하는 사용자 클러스터링을 수행한다(S109). 전술한 것처럼, 군집의 유사성은 군집의 중심점(Centroid)와 소속된 객체들과의 거리를 평균하여 측정하여 몇 개의 집단으로 분류한다.
이때, 훈련 서버(105)는 훈련 데이터베이스(107)에 저장된 추천 규칙에 따른 컨텐츠 들이 둘 이상의 사용자가 모두 평가한 컨텐츠인지를 판단한다(S111). 여기서, 평가 여부는 사용자 로그에 포함되어 있다.
여기서, 둘 이상의 사용자가 모두 평가한 컨텐츠로 판단되면, 본 발명의 실시예에 따른 유사 집단 기반의 사용자 기반 협업 필터링 알고리즘이 수행된다.
여기서, 둘 이상의 사용자가 모두 평가한 컨텐츠인지 아닌지 판단 대상이 되는 컨텐츠는 훈련 데이터베이스(107)에 저장된 컨텐츠이며 훈련 서버(105)에서 훈련할 때 사용할 컨텐츠이다.
그러면, 훈련 서버(105)는 S109 단계에서 군집된 집단과 목표 사용자가 속한 집단의 사용자 간에 유사도를 계산한다(S113). 여기서, 사용자간 유사도 계산 알고리즘은 피어슨 상관계수, 코사인 유사도, Confidence가 이용될 수 있지만, 상기에 국한되는 것은 아니다.
다음, 훈련 서버(105)는 S113 단계에서 계산된 유사도를 가중치로 하여 각 컨텐츠에 대한 선호도를 예측하는데, 유사집단의 가중치를 고려하여 최종 선호도 값을 다음 수학식 2와 같이 계산하여 예측한다(S115).
Figure pat00002
Figure pat00003
= 아이템 i에 대한 사용자 a에 대한 최종 선호도 예측값
Figure pat00004
= 사용자 a의 유사집단 선호도 평균값
Figure pat00005
= 사용자 a의 유사집단 j 에 대한 선호도
Figure pat00006
= 사용자 a의 유사집단 j의 가중치
여기서,
Figure pat00007
은 훈련 서버(105)에 의해 상관계수 알고리즘으로 계산된다.
한편, S111 단계에서 둘 이상의 사용자가 모두 평가한 컨텐츠가 아닌 경우로 판단되면, 아이템 기반 협업 필터링 알고리즘이 수행된다. 즉 신규 컨텐츠처럼 평가 정보가 존재하지 않으면, 목표 사용자가 속한 집단 내에서만 아이템 기반 협업 필터링 알고리즘이 수행된다.
여기서, 아이템 기반 협업 필터링 추천 방식은 아이템 간의 유사성, 즉 사용자가 선호도를 입력한 기존 상품들과 추천하고자 하는 상품들간의 유사성을 측정하여 사용자가 어떤 상품을 선호하는지 예측하여 추천하는 방식이다.
이때, 훈련 서버(105)는 S109 단계에서 군집된 유사 집단 내에서만 아이템간 유사도를 계산(S119)하고, 이처럼 계산된 유사도를 가중치로 하여 각 컨텐츠에 대한 선호도값을 예측한다(S121). 즉 훈련 서버(105)는 사용자 로그를 기반으로 도출된 컨텐츠 별 사용자 선호도 집합 및 컨텐츠 별 선호도 가중치를 포함하는 추천 규칙을 유사 집단 내에서의 사용자 기반 협업 필터링을 통해 갱신한다.
여기서, 아이템 기반 유사도 계산 및 선호도값 예측은 기존의 아이템 기반 협업 필터링 알고리즘이 사용되면, 다만 S109 단계에서 군집된 유사 집단 내에서만 아이템간 유사도를 계산하는 점만이 다르다.
그러면, 훈련 서버(105)는 S115 단계 및 S119 단계에서 예측된 각 컨텐츠에 대한 선호도값으로 구성된 추천 규칙을 규칙 데이터베이스(109)에 저장한다(S121).
다음, 도 4는 본 발명의 실시예에 따른 추천 방법을 나타낸 흐름도이다.
도 4를 참조하면, 사용자 단말(300)은 추천 어플리케이션을 실행(S201)하면, 자동으로 추천 시스템(100)에게 추천 요청 메시지를 전송한다(S203).
그러면, 추천 시스템(100)의 추천 서버(111)는 추천 로직을 실행시키기 전에 현재 상황에 적합하지 않는 컨텐츠를 제외시키기 위해 사용자 단말(300)의 상황 정보를 필터링하는 컨텍스트 필터링(Context Filtering)을 수행한다(S205).
즉 사용자 단말(300)의 현재 상황에 적합한 컨텐츠를 추천하기 위해 상황 정보 필터링하며, 추천 로직을 실행시키기 전에 현재 상황에 적합하지 않는 컨텐츠를 추천하지 않기 위해 관련 없는 컨텐츠 리스트를 제거하기 위해 과정을 수행한다.
다음, 추천 서버(111)는 규칙 데이터베이스(109)에 저장된 추천 규칙을 토대로 사용자 단말(300)에게 적합한 컨텐츠들을 추론(S207)하여 추천 리스트를 구성한다(S209). 그리고 추천 리스트에 대해 기 정의된 랭킹 알고리즘을 적용(S211)하여 랭킹 순위가 높은 순서대로 선정된 추천 아이템으로 구성된 최종 추천 리스트를 도출한다(S213).
그러면, 추천 서버(111)는 S213 단계에서 도출된 최종 추천 리스트가 포함된 추천 메시지를 사용자 단말(300)에게 전송한다(S215).
이상에서 설명한 본 발명의 실시예는 장치 및 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시예의 구성에 대응하는 기능을 실현하는 프로그램 또는 그 프로그램이 기록된 기록 매체를 통해 구현될 수도 있다.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.

Claims (13)

  1. 추천 시스템이 사용자 단말에게 컨텐츠를 추천하는 방법으로서,
    다수의 사용자들을 그룹핑하여 속성이 유사한 사용자들로 구성된 하나 이상의 유사 집단을 도출하는 단계;
    상기 하나 이상의 유사 집단 중에서 상기 사용자 단말이 속하는 유사 집단 내의 사용자들과 상기 사용자 단말을 대상으로 사용자 기반 협업 필터링을 수행하는 단계; 및
    상기 사용자 기반 협업 필터링을 통해 도출된 컨텐츠 별 선호도 예측값을 토대로 상기 사용자 단말에게 컨텐츠를 추천하는 단계
    를 포함하는 추천 방법.
  2. 제1항에 있어서,
    상기 상기 도출하는 단계와 상기 사용자 기반 협업 필터링을 수행하는 단계 사이에,
    상기 추천 시스템이 보유한 컨텐츠 중에서 둘 이상의 사용자가 모두 평가한 컨텐츠가 존재하는지 판단하는 단계; 및
    사용자 평가가 존재하지 않는 컨텐츠에 대해 상기 사용자 단말이 속하는 유사 집단 내의 사용자들을 대상으로 아이템 기반 협업 필터링을 수행하는 단계를 더 포함하고,
    상기 사용자 기반 협업 필터링을 수행하는 단계는,
    상기 둘 이상의 사용자가 모두 평가한 컨텐츠에 대해 수행되는 추천 방법.
  3. 제2항에 있어서,
    상기 추천하는 단계는,
    상기 사용자 기반 협업 필터링 또는 상기 아이템 기반 협업 필터링을 통해 도출된 컨텐츠 별 선호도 예측값을 토대로 컨텐츠 추천 리스트를 생성하는 단계; 및
    상기 컨텐츠 추천 리스트에 대해 랭킹 알고리즘을 적용하여 랭킹 순위가 높은 컨텐츠들로 구성된 추천 리스트를 재구성하여 상기 사용자 단말로 전송하는 단계
    를 포함하는 추천 방법.
  4. 제3항에 있어서,
    상기 추천하는 단계는,
    상기 추천 리스트를 생성하는 단계 이전에,
    상기 사용자 단말의 상황 정보를 수집하여 현재 상황에 적합하지 않은 컨텐츠를 제외하기 위한 컨텍스트 필터링을 수행하는 단계
    를 더 포함하는 추천 방법.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서,
    상기 하나 이상의 유사 집단을 도출하는 단계는,
    사용자 로그 및 상황 정보를 수집하는 단계; 및
    상기 사용자 로그 및 상황 정보를 속성이 유사한 유사 집단으로 클러스터링하는 단계
    를 포함하는 추천 방법.
  6. 제5항에 있어서,
    상기 클러스터링하는 단계는,
    상기 사용자 로그 및 상황 정보를 토대로 제1 중심점을 선정하는 단계;
    상기 제1 중심점을 기준으로 유사도를 계산하여 제1 유사 집단들로 그룹핑하는 단계;
    상기 제1 유사 집단들에서 각각 새로운 제2 중심점을 선정하는 단계;
    상기 제2 중심점을 기준으로 유사도를 계산하여 제2 유사 집단들로 그룹핑하는 단계;
    상기 제2 유사 집단들에서 각각 새로운 제3 중심점을 선정하는 단계;
    상기 제3 중심점을 기준으로 유사도를 계산하여 제3 유사 집단들로 그룹핑하는 단계;
    상기 제2 중심점과 상기 제3 중심점을 비교하여 일치하는지 판단하는 단계;
    일치하지 않으면, 상기 제2 중심점을 선정하는 단계부터 상기 제3 유사 집단들로 그룹핑하는 단계를 반복하는 단계; 및
    일치하면, 상기 제3 유사 집단들을 최종 유사 집단으로 선정하는 단계
    를 포함하는 추천 방법.
  7. 제5항에 있어서,
    상기 사용자 기반 협업 필터링을 수행하는 단계는,
    상기 하나 이상의 유사 집단 중에서 상기 사용자 단말이 속하는 유사 집단 내의 사용자들과 상기 사용자 단말 간의 유사도를 계산하는 단계; 및
    상기 유사도를 가중치로 하여 컨텐츠 별 선호도를 예측하는 단계
    를 포함하는 추천 방법.
  8. 제7항에 있어서,
    상기 예측하는 단계는,
    상기 사용자 단말이 속하는 유사 집단 선호도 평균값, 상기 사용자 단말이 속하는 유사 집단에 대한 상기 사용자 단말의 선호도 및 상기 사용자 단말이 속하는 유사 집단에 대한 상기 사용자 단말의 유사도 가중치를 이용하여 컨텐츠 별 선호도 예측값이 도출되는 추천 방법.
  9. 제9항에 있어서,
    상기 사용자 기반 협업 필터링을 수행하는 단계는,
    상기 유사도를 계산하는 단계 이전에,
    상기 사용자 로그를 기반으로 컨텐츠 별 사용자 선호도 집합을 생성하는 단계;
    상기 사용자 선호도 집합을 훈련하여 컨텐츠 별 선호도 가중치를 도출하는 단계; 및
    상기 사용자 선호도 집합 및 컨텐츠 별 선호도 가중치를 포함하는 추천 규칙을 생성하는 단계를 더 포함하고,
    상기 컨텐츠 별 선호도를 예측하는 단계는,
    상기 추천 규칙을 통해 도출된 컨텐츠들을 대상으로 수행되는 추천 방법.
  10. 사용자 단말에게 컨텐츠를 추천하는 추천 시스템으로서,
    사용자 로그 및 상황 정보를 수집하는 수집 서버;
    상기 사용자 로그 및 상황 정보를 토대로 다수의 사용자들을 그룹핑하여 속성이 유사한 사용자들로 구성된 하나 이상의 유사 집단을 도출하는 클러스터 서버;
    상기 하나 이상의 유사 집단 중에서 상기 사용자 단말이 속하는 유사 집단 내의 사용자들과 상기 사용자 단말을 대상으로 사용자 기반 협업 필터링을 수행하여 컨텐츠 별 선호도 예측값을 도출하는 훈련 서버; 및
    상기 컨텐츠 별 선호도 예측값을 토대로 상기 사용자 단말에게 컨텐츠를 추천하는 추천 서버
    를 포함하는 추천 시스템.
  11. 제10항에 있어서,
    상기 훈련 서버는,
    둘 이상의 사용자가 모두 평가한 컨텐츠에 대해서 상기 사용자 기반 협업 필터링을 수행하고, 사용자 평가가 존재하지 않는 컨텐츠에 대해 상기 사용자 단말이 속하는 유사 집단 내의 사용자들을 대상으로 아이템 기반 협업 필터링을 수행하여 상기 컨텐츠 별 선호도 예측값을 도출하는 추천 시스템.
  12. 제11항에 있어서,
    상기 훈련 서버는,
    상기 사용자 로그를 기반으로 도출된 컨텐츠 별 사용자 선호도 집합 및 컨텐츠 별 선호도 가중치를 포함하는 추천 규칙을 상기 사용자 기반 협업 필터링을 통해 갱신하며, 상기 사용자 단말이 속하는 유사 집단 선호도 평균값, 상기 사용자 단말이 속하는 유사 집단에 대한 상기 사용자 단말의 선호도 및 상기 사용자 단말이 속하는 유사 집단에 대한 상기 사용자 단말의 유사도 가중치를 이용하여 컨텐츠 별 선호도 예측값을 도출하는 상기 사용자 기반 협업 필터링을 수행하는 추천 시스템.
  13. 제10항 내지 제12항 중 어느 한 항에 있어서,
    상기 클러스터 서버는,
    상기 사용자 로그 및 상황 정보를 제1 중심점을 기준으로 제1 유사 집단들로 그룹핑하고, 상기 제1 유사 집단들에서 각각 새로운 제2 중심점을 선정하여 상기 제2 중심점을 기준으로 유사도를 계산하여 제2 유사 집단들로 그룹핑하며, 상기 제2 유사 집단들에서 선정한 각각 새로운 제3 중심점을 기준으로 유사도를 계산하여 제3 유사 집단들로 그룹핑하고, 상기 제2 중심점과 상기 제3 중심점이 일치할때까지 새로운 유사 집단을 그룹핑하는 과정을 반복하여 최종 유사 집단을 선정하는 추천 시스템.
KR1020110122493A 2011-11-22 2011-11-22 협업 필터링 추천 방식을 이용한 추천 방법 및 추천 시스템 KR20130062442A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110122493A KR20130062442A (ko) 2011-11-22 2011-11-22 협업 필터링 추천 방식을 이용한 추천 방법 및 추천 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110122493A KR20130062442A (ko) 2011-11-22 2011-11-22 협업 필터링 추천 방식을 이용한 추천 방법 및 추천 시스템

Publications (1)

Publication Number Publication Date
KR20130062442A true KR20130062442A (ko) 2013-06-13

Family

ID=48860139

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110122493A KR20130062442A (ko) 2011-11-22 2011-11-22 협업 필터링 추천 방식을 이용한 추천 방법 및 추천 시스템

Country Status (1)

Country Link
KR (1) KR20130062442A (ko)

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105335409A (zh) * 2014-07-31 2016-02-17 华为技术有限公司 一种目标用户的确定方法、设备和网络服务器
CN105704566A (zh) * 2016-04-25 2016-06-22 浪潮软件集团有限公司 一种基于电视机顶盒的视频推荐系统
KR20160090509A (ko) * 2015-01-22 2016-08-01 주식회사 디케이아이테크놀로지 감성기반 사용자특성 분석을 이용한 개인화된 광고 제공 서비스 방법
WO2016122206A1 (ko) * 2015-01-28 2016-08-04 주식회사 에브리프라이데이 맞춤체험기반 상품 커머스 서비스 방법
KR20160108701A (ko) * 2015-03-05 2016-09-20 주식회사 벤플 추천 다양성과 정확성을 고려하여 공간 네트워크를 생성하는 방법
KR101677749B1 (ko) * 2015-05-28 2016-11-21 네이버 주식회사 개인 선호 성향을 고려한 추천 서비스 방법 및 이를 위한 추천 서비스 서버
KR101719198B1 (ko) * 2016-03-21 2017-03-23 성신여자대학교 산학협력단 단말이나 디바이스 내 개인정보 및 지불정보 관리 방법 및 이를 이용한 추천 시스템
WO2017057793A1 (en) * 2015-09-30 2017-04-06 Melephant Inc. Method and apparatus for managing content
US9954937B2 (en) 2014-03-26 2018-04-24 Samsung Electronics Co., Ltd. Method for grouping a plurality of devices and grouping system
CN108710622A (zh) * 2018-03-13 2018-10-26 北京光宇之勋科技有限公司 基于机器学习的网页信息推荐方法及推荐系统
CN108876508A (zh) * 2018-05-03 2018-11-23 上海海事大学 一种电商协同过滤推荐方法
KR20180128147A (ko) * 2017-05-23 2018-12-03 식신 주식회사 모바일 컨텍스트 정보 기반의 음식점 추천방법 및 그를 위한 장치
KR20200115007A (ko) * 2019-03-29 2020-10-07 (주) 미스터멘션 챗봇 시스템을 활용한 컨시어지 서비스를 위한 추천 시스템
KR20220133666A (ko) * 2021-03-25 2022-10-05 주식회사 단감소프트 성격 특성 기반의 추천 장치 및 방법
WO2022216034A1 (ko) * 2021-04-07 2022-10-13 주식회사 피씨엔씨 협업필터링과 도서 기반 추천을 결합한 하이브리드 방식의 도서 추천을 위한 장치 및 이를 위한 방법
KR20230068376A (ko) * 2020-11-30 2023-05-17 주식회사 뮤즈라이브 사용자 활동 기반 상품 추천 방법
KR102634274B1 (ko) * 2023-03-15 2024-02-06 (주)모두빌리지 인공지능 알고리즘 기반의 렌탈 금융 서비스를 제공하는 방법, 장치, 및 시스템

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9954937B2 (en) 2014-03-26 2018-04-24 Samsung Electronics Co., Ltd. Method for grouping a plurality of devices and grouping system
CN105335409B (zh) * 2014-07-31 2019-02-01 华为技术有限公司 一种目标用户的确定方法、设备和网络服务器
CN105335409A (zh) * 2014-07-31 2016-02-17 华为技术有限公司 一种目标用户的确定方法、设备和网络服务器
KR20160090509A (ko) * 2015-01-22 2016-08-01 주식회사 디케이아이테크놀로지 감성기반 사용자특성 분석을 이용한 개인화된 광고 제공 서비스 방법
WO2016122206A1 (ko) * 2015-01-28 2016-08-04 주식회사 에브리프라이데이 맞춤체험기반 상품 커머스 서비스 방법
KR20160108701A (ko) * 2015-03-05 2016-09-20 주식회사 벤플 추천 다양성과 정확성을 고려하여 공간 네트워크를 생성하는 방법
KR101677749B1 (ko) * 2015-05-28 2016-11-21 네이버 주식회사 개인 선호 성향을 고려한 추천 서비스 방법 및 이를 위한 추천 서비스 서버
WO2017057793A1 (en) * 2015-09-30 2017-04-06 Melephant Inc. Method and apparatus for managing content
KR101719198B1 (ko) * 2016-03-21 2017-03-23 성신여자대학교 산학협력단 단말이나 디바이스 내 개인정보 및 지불정보 관리 방법 및 이를 이용한 추천 시스템
CN105704566A (zh) * 2016-04-25 2016-06-22 浪潮软件集团有限公司 一种基于电视机顶盒的视频推荐系统
KR20180128147A (ko) * 2017-05-23 2018-12-03 식신 주식회사 모바일 컨텍스트 정보 기반의 음식점 추천방법 및 그를 위한 장치
CN108710622A (zh) * 2018-03-13 2018-10-26 北京光宇之勋科技有限公司 基于机器学习的网页信息推荐方法及推荐系统
CN108710622B (zh) * 2018-03-13 2022-12-27 星际数科科技股份有限公司 基于机器学习的网页信息推荐方法及推荐系统
CN108876508A (zh) * 2018-05-03 2018-11-23 上海海事大学 一种电商协同过滤推荐方法
KR20200115007A (ko) * 2019-03-29 2020-10-07 (주) 미스터멘션 챗봇 시스템을 활용한 컨시어지 서비스를 위한 추천 시스템
KR20230068376A (ko) * 2020-11-30 2023-05-17 주식회사 뮤즈라이브 사용자 활동 기반 상품 추천 방법
KR20220133666A (ko) * 2021-03-25 2022-10-05 주식회사 단감소프트 성격 특성 기반의 추천 장치 및 방법
WO2022216034A1 (ko) * 2021-04-07 2022-10-13 주식회사 피씨엔씨 협업필터링과 도서 기반 추천을 결합한 하이브리드 방식의 도서 추천을 위한 장치 및 이를 위한 방법
KR20220139140A (ko) * 2021-04-07 2022-10-14 주식회사 피씨엔씨 협업필터링과 도서 기반 추천을 결합한 하이브리드 방식의 도서 추천을 위한 장치 및 이를 위한 방법
KR102634274B1 (ko) * 2023-03-15 2024-02-06 (주)모두빌리지 인공지능 알고리즘 기반의 렌탈 금융 서비스를 제공하는 방법, 장치, 및 시스템

Similar Documents

Publication Publication Date Title
KR20130062442A (ko) 협업 필터링 추천 방식을 이용한 추천 방법 및 추천 시스템
CN110462604B (zh) 基于设备使用关联互联网设备的数据处理系统和方法
TWI636416B (zh) 內容個人化之多相排序方法和系統
Zhao et al. User profiling from their use of smartphone applications: A survey
WO2018041168A1 (zh) 信息推送方法、存储介质和服务器
KR102233805B1 (ko) 미인지된 및 새로운 유저들에 대한 향상된 유저 경험
US20120185481A1 (en) Method and Apparatus for Executing a Recommendation
Özgöbek et al. A survey on challenges and methods in news recommendation
CN111782965A (zh) 意图推荐方法、装置、设备及存储介质
US9754306B2 (en) Recommendation engine with profile analysis
WO2015192667A1 (zh) 推荐广告的方法及广告推荐服务器
US20110082824A1 (en) Method for selecting an optimal classification protocol for classifying one or more targets
CN111143655B (zh) 一种新闻热度的计算方法
US10162868B1 (en) Data mining system for assessing pairwise item similarity
CN109165975B (zh) 标签推荐方法、装置、计算机设备及存储介质
CN104254851A (zh) 用于向用户推荐内容的方法和系统
CN104620267A (zh) 用于推断用户人口统计的方法和装置
Hu et al. A user similarity-based Top-N recommendation approach for mobile in-application advertising
Boratto et al. Investigating the role of the rating prediction task in granularity-based group recommender systems and big data scenarios
EP2478448A1 (en) Method and apparatus for data traffic analysis and clustering
US20190273789A1 (en) Establishing and utilizing behavioral data thresholds for deep learning and other models to identify users across digital space
CN108304432B (zh) 信息推送处理方法、信息推送处理装置及存储介质
CN103229203A (zh) 激励用户向用户的联系人推荐项目的推荐系统
US20210012363A1 (en) Device, method and computer-readable medium for analyzing customer attribute information
Taneja et al. Recommendation research trends: review, approaches and open issues

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination