KR20100022542A - P2p 기반 음악 추천 시스템 및 그 방법 - Google Patents

P2p 기반 음악 추천 시스템 및 그 방법 Download PDF

Info

Publication number
KR20100022542A
KR20100022542A KR1020080081102A KR20080081102A KR20100022542A KR 20100022542 A KR20100022542 A KR 20100022542A KR 1020080081102 A KR1020080081102 A KR 1020080081102A KR 20080081102 A KR20080081102 A KR 20080081102A KR 20100022542 A KR20100022542 A KR 20100022542A
Authority
KR
South Korea
Prior art keywords
peer
music
host
neighbor
profile
Prior art date
Application number
KR1020080081102A
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 KR1020080081102A priority Critical patent/KR20100022542A/ko
Publication of KR20100022542A publication Critical patent/KR20100022542A/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Databases & Information Systems (AREA)
  • Tourism & Hospitality (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Graphics (AREA)
  • Signal Processing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Reverberation, Karaoke And Other Acoustics (AREA)

Abstract

본 발명에 따른 P2P 네트워크에서의 음악 추천 시스템 및 그 방법은 내용 기반 필터링과 협업 필터링을 상호 보완한 복합적 필터링 추천 알고리즘을 이용하여 P2P 네트워크 내에서 실시간으로 각 피어들의 선호 음악 정보를 공유함으로써 정확한 음악 추천을 수행할 수 있으며, 각 피어들의 프로파일에 미리 정해진 장르 분류 체계를 이용하므로 부정확한 특징 벡터 추출로 인한 시스템 성능 저하를 방지하고 연산 부하를 감소시킬 수 있다.
P2P(Peer-to-Peer), 음악 추천, 장르, 내용 기반 필터링, 협업 필터링

Description

P2P 기반 음악 추천 시스템 및 그 방법{MUSIC RECOMMENDATION SYSTEM BASED ON PEER TO PEER NETWORK AND METHOD THEREOF}
본 발명은 음악 추천 시스템 및 방법에 관한 것으로, 보다 상세하게는 P2P 네트워크에서 실시간으로 음악을 추천할 수 있는 음악 추천 시스템 및 그 방법에 관한 것이다.
추천 시스템(Recommendation System)은 네트워크 상에서 사용자의 취향에맞는 상품을 추천하는 시스템으로 영화, 도서, 음악, 뉴스, TV 프로그램 등 여러 분야에 이용되고 있다. 이러한 일반적인 추천 시스템은 사용자의 1차적인 검색에 의하여 추천이 이루어진다. 최근 사용자의 검색이 없더라도 적극적으로 상품을 사용자에게 노출시킴으로써 사용자의 구매를 유도하는 자동 추천 시스템에 대한 연구가 활발하게 이루어지고 있다.
일반적인 자동 추천 시스템은 자동화된 정보 필터링(information filtering) 기술을 이용하여 사용자 취향에 맞는 상품을 추천하는데, 그 필터링 방법에는 크게 내용 기반 필터링(Content-Based Filtering), 협업 필터링(Collaborative Filtering), 복합 필터링(Hybrid Filtering), 및 인구통계학적 필터링(Demographic Filtering) 등이 있다.
내용 기반 필터링은 사용자는 과거에 선호하였던 상품을 미래에도 선호할 가능성이 높다는 사실을 이용한 추천 방식이며, 협업 필터링은 사용자와 취향이 유사한 다른 사용자의 취향을 참고하여 상품을 추천하는 방식이며, 복합 필터링은 내용 기반 필터링과 협업 필터링을 상호 보완적으로 이용하는 방식이며, 인구통계학적 필터링은 사용자들의 인류학적 통계를 기초로 하여 상품을 추천하는 방식을 의미한다.
일반적인 자동 추천 시스템들은 일반적으로 클라이언트-서버 환경에서 동작하는 시스템으로써 서버에서 각 클라이언트들의 정보를 수집하여 분석한 결과에 기초하여 상품을 추천한다. 그러므로 사용자 수가 증가할수록 서버의 연산 부하가 증가하며, 이로 인하여 사용자는 실시간으로 상품을 선택할 수 없으며 사용자의 상품 선택 범위도 제한될 수밖에 없다.
따라서 본 발명이 이루고자 하는 기술적인 과제는 클라이언트-서버 환경을 대신하여 P2P(Peer-to-Peer) 네트워크 상에서 실시간으로 피어(peer)들의 음악 선호 정보를 공유함으로써 모든 피어들이 서비스 제공자(예컨대, 서버)인 동시에 서비스 수요자(예컨대, 클라이언트)가 되어 정확한 음악 추천을 할 수 있으며 시스템 성능이 높은 P2P 기반 음악 추천 시스템 및 그 방법을 제공하는 것이다.
상기 기술적 과제를 달성하기 위한 P2P 기반의 음악 추천 시스템은 관리 모듈, 알고리즘 수행 모듈, 및 추천 음악 결정 모듈을 포함할 수 있다. 상기 관리 모듈은 호스트 피어의 음악 청취 이력 및/또는 음악 다운로드 이력을 포함하는 호스트 피어 프로파일 및 서버로부터 수신되는 이웃 피어 프로파일에 기초하여 상기 호스트 피어의 장르별 음악 선호도를 계산하고 상기 호스트 피어 프로파일과 유사한 프로파일을 갖는 이웃 피어 그룹을 선정할 수 있다.
상기 알고리즘 수행 모듈은 상기 호스트 피어의 장르별 음악 선호도 및 상기 서버로부터 수신되는 장르별 순위에 기초하여 제1추천 음악 목록을 발생하며, 상기 선택된 이웃 피어 그룹의 프로파일들에 기초하여 제2추천 음악 목록을 발생할 수 있다. 상기 추천 음악 결정 모듈은 상기 제1추천 음악 목록 및 상기 제2추천 음악 목록에 기초하여 결정되는 추천 음악들을 상기 호스트 피어에게 추천할 수 있다.
상기 관리 모듈은 호스트 피어 관리 모듈, 음악 선호도 계산 모듈, 및 이웃 피어 관리 모듈을 포함할 수 있다. 상기 호스트 피어 관리 모듈은 미리 정해진 장르 분류 체계를 이용하여 상기 호스트 피어 프로파일의 트랜잭션(transaction)들을 저장하고 갱신할 수 있다. 상기 음악 선호도 계산 모듈은 상기 호스트 피어 프로파일에 기초하여 상기 호스트 피어의 장르별 음악 선호도를 계산할 수 있다. 상기 이웃 피어 관리 모듈은 상기 호스트 피어 프로파일, 상기 호스트 피어의 장르별 음악 선호도, 및 상기 이웃 피어 프로파일에 기초하여 상기 이웃 피어 그룹을 선정할 수 있다.
상기 알고리즘 수행 모듈은 제1알고리즘 수행 모듈 및 제2알고리즘 수행 모듈을 포함할 수 있다. 상기 제1알고리즘 수행 모듈은 상기 호스트 피어의 장르별 음악 선호도 및 상기 서버로부터 수신되는 장르별 순위에 기초하여 장르별로 분류되는 상기 제1추천 음악 목록을 발생할 수 있다. 상기 제2알고리즘 수행 모듈은 상기 선택된 이웃 피어 그룹의 프로파일들에 포함된 상기 선택된 이웃 피어 그룹들로부터 추천된 음악들 및 상기 호스트 피어에 대한 상기 선택된 이웃 피어 그룹 각각의 유사도에 기초하여 상기 제2추천 음악 목록을 발생할 수 있다.
상기 추천 음악 결정 모듈은 상기 제1추천 음악 목록 및 상기 제2추천 음악 목록에 중복되는 음악들을 먼저 추천하며, 상기 제1추천 음악 목록 및 상기 제2추천 음악 목록에 기초하여 추천되는 음악들의 비를 조절할 수 있다.
상기 기술적 과제를 해결하기 위한 P2P 기반의 음악 추천 시스템은 호스트 피어 관리 모듈, 제1추천 모듈, 제2추천 모듈, 및 추천 음악 결정 모듈을 포함할 수 있다. 상기 호스트 피어 관리 모듈은 미리 정해진 장르 분류 체계를 이용하여 상기 호스트 피어 프로파일의 트랜잭션들을 저장하고 갱신할 수 있다. 상기 제1추천 모듈은 상기 호스트 피어 프로파일에 기초하여 발생되는 호스트 피어의 장르별 음악 선호도를 계산하고, 상기 호스트 피어의 장르별 음악 선호도 및 서버로부터 수신되는 장르별 순위에 기초하여 제1추천 음악 목록을 발생할 수 있다.
상기 제2추천 모듈은 상기 호스트 피어 프로파일 및 상기 서버로부터 수신되는 이웃 피어 프로파일에 기초하여 상기 호스트 피어 프로파일과 유사한 프로파일을 갖는 이웃 피어 그룹으로부터 추천되는 음악들에 기초하여 제2추천 음악 목록을 발생할 수 있다. 상기 추천 음악 결정 모듈은 상기 제1추천 음악 목록 및 상기 제2추천 음악 목록에 기초하여 결정되는 추천 음악들을 상기 호스트 피어에게 추천할 수 있다.
상기 제1추천 모듈은 상기 호스트 피어 프로파일에 기초하여 상기 호스트 피어의 상기 장르별 음악 선호도를 계산하는 음악 선호도 계산 모듈 및 상기 호스트 피어의 장르별 음악 선호도 및 상기 장르별 순위에 기초하여 장르별로 분류되는 상기 제1추천 음악 목록을 발생하는 제1알고리즘 수행 모듈을 포함할 수 있다.
상기 제2추천 모듈은 이웃 피어 관리 모듈 및 제2알고리즘 수행 모듈을 포함할 수 있다. 상기 이웃 피어 관리 모듈은 상기 호스트 피어 프로파일과 상기 이웃 피어 프로파일의 비교 결과에 기초하여 미리 정해진 수의 이웃 피어들을 포함하는 상기 이웃 피어 그룹을 선정하고, 상기 호스트 피어의 장르별 음악 선호도 및 상기 이웃 피어 프로파일에 포함된 이웃 피어의 장르별 음악 선호도에 기초하여 상기 호스트 피어에 대한 이웃 피어의 유사도를 계산할 수 있다.
상기 제2알고리즘 수행 모듈은 상기 선택된 이웃 피어 그룹의 프로파일들에 포함된 상기 선택된 이웃 피어 그룹들로부터 추천된 음악들 및 상기 호스트 피어에 대한 상기 선택된 이웃 피어 그룹 각각의 유사도에 기초하여 상기 제2추천 음악 목록을 발생할 수 있다.
상기 기술적 과제를 해결하기 위한 P2P 기반 음악 추천 방법은 호스트 피어(peer)의 음악 청취 이력 및/또는 음악 다운로드 이력을 포함하는 호스트 피어 프로파일 및 서버로부터 수신되는 이웃 피어 프로파일에 기초하여 상기 호스트 피어의 장르별 음악 선호도를 계산하고 상기 호스트 피어 프로파일과 유사한 프로파일을 갖는 이웃 피어 그룹을 선정하는 단계; 상기 호스트 피어의 장르별 음악 선호도 및 상기 서버로부터 수신되는 장르별 순위에 기초하여 제1추천 음악 목록을 발생하며, 상기 선택된 이웃 피어 그룹의 프로파일들에 기초하여 제2추천 음악 목록을 발생하는 단계; 및 상기 제1추천 음악 목록 및 상기 제2추천 음악 목록에 기초하여 결정되는 추천 음악들을 상기 호스트 피어에게 추천하는 단계를 포함할 수 있다.
상기 제1추천 음악 목록을 발생하는 단계는 상기 호스트 피어의 장르별 음악 선호도 및 상기 서버로부터 수신되는 장르별 순위에 기초하여 장르별로 분류되는 상기 제1추천 음악 목록을 발생하는 단계를 포함할 수 있다. 상기 제2추천 음악 목록을 발생하는 단계는 상기 선택된 이웃 피어 그룹의 프로파일들에 포함된 상기 선택된 이웃 피어 그룹들로부터 추천된 음악 목록 및 상기 호스트 피어에 대한 상기 선택된 이웃 피어 그룹 각각의 유사도에 기초하여 상기 제2추천 음악 목록을 발생 하는 단계를 포함할 수 있다.
상술한 바와 같이 본 발명에 따른 P2P 기반 음악 추천 시스템 및 그 방법은 P2P 네트워크 환경에서 복합 필터링 추천 알고리즘을 이용하여 실시간으로 정확한 음악 추천을 할 수 있고, 미리 정해진 음악 분류 체계를 이용하여 각 피어들의 프로파일을 구축하기 때문에 연산량을 감소시킬 수 있는 효과가 있다.
본 발명과 본 발명의 동작상의 이점 및 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시 예를 예시하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조하여야만 한다.
본 명세서에 있어서는 어느 하나의 구성요소가 다른 구성요소로 데이터 또는 신호를 '전송'하는 경우에는 상기 구성요소는 상기 다른 구성요소로 직접 상기 데이터 또는 신호를 전송할 수 있고, 적어도 하나의 또 다른 구성요소를 통하여 상기 데이터 또는 신호를 상기 다른 구성요소로 전송할 수 있음을 의미한다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 설명함으로써 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 1은 본 발명의 실시예에 따른 P2P 기반 음악 추천 네트워크를 나타내는 블락도이다. 도 1을 참조하면, P2P 기반 음악 추천 네트워크는 서버(10), 호스트 피어(100), 이웃 피어 그룹(30), 타겟 피어 그룹(50)으로 형성될 수 있다. 상기 음 악 추천 네트워크는 P2P 기반이므로 상기 호스트 피어(100), 이웃 피어 그룹(30)에 포함된 피어들, 타겟 피어 그룹(50)에 포함된 피어들 각각은 서로 호스트 피어, 이웃 피어, 및 타겟 피어가 될 수 있다.
상기 서버(10)는 상기 호스트 피어(100)로 상기 이웃 피어 그룹(30)에 포함된 피어들 각각에 대한 이웃 피어 프로파일(profile)을 전송할 수 있다. 또한, 상기 서버(10)는 상기 호스트 피어(100)의 음악 청취 또는 음악 다운로드 동작에 기초하여 가변되는 피어 프로파일을 갱신할 수 있다.
상기 이웃 피어 그룹(30)은 상기 호스트 피어(100)와 유사한 프로파일을 갖는 피어들을 포함하는 그룹으로 상기 호스트 피어(100)로 음악을 추천할 수 있다. 상기 타겟 피어 그룹(50)은 상기 호스트 피어(100)를 이웃 피어로 갖는 피어로 상기 호스트 피어(100)로부터 음악을 추천받을 수 있다.
도 2는 본 발명의 실시예에 따른 P2P 기반 음악 추천 시스템(100)을 나타내는 블락도이다. 상기 음악 추천 시스템(100)은 P2P 네트워크로 서로 연결되는 피어들의 단말기 각각에 내장되는 시스템이나 이하에서는 설명의 편의를 위하여 단말기가 도 1에 도시된 호스트 피어(100) 역할을 하는 경우의 동작을 중점적으로 설명한다.
도 2를 참조하면, 상기 음악 추천 시스템(100)은 관리 모듈(105), 알고리즘 수행 모듈(135), 및 추천 음악 결정 모듈(160), 및 디스플레이/조작부(170)를 포함할 수 있다. 상기 관리 모듈(105)는 상기 호스트 피어(100)의 음악 청취 이력 및/또는 음악 다운로드 이력을 포함하는 호스트 피어 프로파일 및 상기 이웃 피어 프 로파일에 기초하여 상기 호스트 피어(100)의 장르별 음악 선호도를 계산하고 상기 호스트 피어 프로파일과 유사한 프로파일을 갖는 이웃 피어 그룹을 선정할 수 있다.
상기 관리 모듈(105)는 호스트 피어 관리 모듈(110), 음악 선호도 계산 모듈(120), 이웃 피어 관리 모듈(130), 이웃 피어 데이터 베이스(180), 및 타겟 피어 데이터 베이스(190)를 포함할 수 있다.
상기 호스트 피어 관리 모듈(110)은 미리 정해진 장르 분류 체계를 이용하여 상기 호스트 피어 프로파일의 트랜잭션(transaction)들을 저장하고 갱신할 수 있다. 본 명세서에서 트랜잭션이란 각 피어들에 대한 음악 청취 및/또는 음악 다운로드 기록을 의미한다.
상기 미리 정해진 장르 분류 체계는 현재 산업상 통용되는 다수의 음악 장르들을 서버 운영자가 임의로 분류한 체계일 수 있다. 표 1은 서버 운영자가 음악 장르를 29개의 음악 장르로 나눈 장르 분류 체계를 나타낸다.
Figure 112008059115733-PAT00001
표 1을 참조하면, 서버 운영자는 음악 장르를 국내 음악에 포함되는 다수의 장르들, 국외 음악에 포함되는 다수의 장르들, 및 국내외 음악에 공통적으로 적용될 수 있는 다수의 장르들로 나누었다. 이하에서는 표 1에 나누어진 장르 분류 체계를 이용하여 상기 음악 추천 시스템(100)의 동작을 설명하나 본 발명의 범위가 이에 한정되는 것은 아니다.
피어 프로파일은 피어가 미리 정해진 단위 시간 이내에 미리 정해진 시간 이상 청취 및/또는 다운로드한 음악에 대한 다수의 트랜잭션들을 포함할 수 있다. 예를 들면, 상기 호스트 프로 파일은 상기 호스트 피어(100)가 60분의 단위 시간 이내에 선택하여 1분 이상 청취한 음악에 대한 음악 ID(IDentification), 음악 장르, 트랜잭션으로 구성될 수 있다. 상기 단위 시간 및 상기 미리 정해진 시간은 음악 추천 프로그램 개발자에 의하여 정해질 수 있다.
이러한 피어 프로파일 구성은 피어의 최근의 음악적 선호도를 우선 반영하므로 본 발명에 따른 음악 추천 시스템(100)은 다른 음악 추천 시스템보다 정확한 음악 추천을 할 수 있다.
표 2는 표 1의 장르 분류 체계를 이용한 음악 청취 기록에 대한 호스트 피어 프로파일을 나타낸다. 여기서, 트랜잭션들 각각은 피어가 60분 이내에 호스트 피어가 청취한 음악에 대한 기록을 나타낸다.
Figure 112008059115733-PAT00002
표 2를 참조하면, 호스트 피어 프로파일은 접속 시간, 음악 ID, 음악 장르, 및 트랜잭션으로 구성됨을 알 수 있다. 음악 장르는 상기 미리 정해진 장르 분류 체계에 따르면 KID1에서 KID29까지 29개일 수 있다. 좀더 구체적으로 살펴보면, 제1트랜잭션(T1)은 호스트 피어가 가장 최근에 네트워크 접속 후 청취한 2개의 음악으로 구성되며, 제1트랜잭션(T2)은 2008년 2월 1일에는 청취된 14개의 음악들 중에서 60분 이내에 청취된 M0014부터 M0003까지의 음악으로 구성되며, 제3트랜잭션(T3)은 2008년 2월 1일에는 청취된 M0002 및 M00001 음악으로 구성된다.
상기 음악 선호도 계산 모듈(120)은 상기 호스트 피어 프로파일에 기초하여 상기 호스트 피어의 장르별 음악 선호도를 계산할 수 있다. 호스트 피어의 장르별 음악 선호도는 호스트 피어가 어느 장르의 음악을 선호하는지를 나타내는 기준이 될 수 있다. 상기 호스트 피어의 장르별 음악 선호도는 상기 미리 정해진 장르 분류 체계에서의 전체 장르 수와 각각의 장르에 대하여 상기 호스트 피어가 청취 및/또는 다운로드한 수의 비를 나타낼 수 있다. 호스트 피어의 장르별 음악 선호도는 차후 설명할 내용 기반 필터링과 협업 필터링의 기초가 된다.
수학식 1은 호스트 피어의 청취 음악에 따른 호스트 피어의 장르별 음악 선호도(MGLR: Music Genre Listening Ratio)를 나타낸다.
Figure 112008059115733-PAT00003
여기서, CLCi는 각 음악 장르 i에 대한 호스트 피어의 청취 음악 개수, G는 전체 음악 장르 개수를 나타낸다.
상기 음악 선호도 계산 모듈(120)은 상기 호스트 피어의 청취 및/또는 다운로드한 순서에 기초하여 상기 다수의 트랜잭션들에 대하여 가중치를 부여할 수 있 다. 예를 들면, 첫 번째 제1트랜잭션에 대해서는 1의 가중치, 두 번째 제2트랜잭션에 대해서는 (0.9)2의 가중치를 부여할 수 있다.
수학식 2는 호스트 피어의 음악 청취 순서에 기초하여 가중치를 부여한 호스트 피어의 장르별 음악 선호도(TWGRi)이다.
Figure 112008059115733-PAT00004
여기서, TWt는 각 트랜잭션별 가중치, MGLRt,i는 t번째 트랜잭션에서 각 음악 장르 i에 대한 음악 청취 비율을 나타낸다.
예를 들면, 제2트랜잭션에서 호스트 피어가 총 30개의 음악을 청취하였고, 그중 락(rock) 장르가 25곡이고 클래식(classic) 장르가 5곡이라고 하면, MGLR2,rock은 25/30이고 MGLR2,classic은 5/30이 되며 나머지 장르에 대한 MGLR 값은 0이 된다. 다음으로 두 번째 트랜잭션에 대한 가중치를 고려하면 TWGRrock은 25/30*(0.9)2이 되며 TWGRclassic은 5/30*(0.9)2이 된다.
상기 이웃 피어 관리 모듈(130)은 상기 호스트 피어 프로파일, 상기 호스트 피어의 장르별 음악 선호도, 및 상기 이웃 피어 프로파일에 기초하여 상기 이웃 피어 그룹을 선정할 수 있다. 좀더 구체적으로 살펴보면, 상기 이웃 피어 관리 모듈(130)은 상기 호스트 피어 프로파일과 상기 이웃 피어 프로파일의 비교 결과에 기초하여 미리 정해진 수의 이웃 피어들을 포함하는 상기 이웃 피어 그룹을 선정하고, 상기 호스트 피어의 장르별 음악 선호도 및 상기 이웃 피어 프로파일에 포함된 이웃 피어의 장르별 음악 선호도에 기초하여 상기 호스트 피어에 대한 이웃 피어의 유사도를 계산할 수 있다.
예를 들면, 상기 이웃 피어 관리 모듈(130)은 다음과 같은 두 단계의 과정을 거쳐 이웃 피어 그룹을 선정할 수 있다.
먼저, 상기 이웃 피어 관리 모듈(130)은 이웃 피어 프로파일에 포함된 6비트의 나이와 성별 정보의 비교 결과에 기초하여 호스트 피어와 가장 유사한 L개의 피어들을 선정할 수 있다(1단계). 표 3은 피어의 나이와 성별 정보를 나타내는 하나의 방법을 나타내며, 표 4는 피어의 나이와 성별 정보의 예를 나타낸다. 그러나 본 발명의 범위가 이에 한정되는 것은 아니다.
Figure 112008059115733-PAT00005
표 3의 나타난 방법에 의하여 표 4의 정보를 해석하면, 피어는 나이 18세에서 29세의 남자임을 알 수 있다.
다음으로, 상기 이웃 피어 관리 모듈(130)은 L개의 피어들 중 수학식 3을 이용하여 이웃 피어들의 이웃 유사도(NS: Neighbor Similarity)를 계산하고, 이웃 유사도(NS)가 높은 순으로 C개의 이웃 피어들을 호스트 피어의 이웃 피어 그룹으로 선정할 수 있다(2단계).
Figure 112008059115733-PAT00007
여기서, NS(hp, np)는 호스트 피어에 대한 이웃 피어의 유사도, hp는 호스트 피어, ns는 이웃 피어, TWGRg는 각 음악 장르 g에서의 호스트 피어 또는 이웃 피어의 장르별 음악 선호도, G는 전체 음악 장르 수를 나타낸다. 수학식 3을 참조하면, 호스트 피어와 이웃 피어 간의 음악 취향이 유사할수록 유사도가 1에 가까워짐을 알 수 있다.
본 발명에 따른 음악 추천 시스템(100)은 상기 이웃 피어 관리 모듈(130)에 의한 호스트 피어와 유사한 프로파일을 갖는 이웃 피어들을 그루핑(grouping)을 수행한 다음 같은 그룹에 속하는 이웃 피어들의 프로파일을 비교하여 가장 높은 선호도를 보인 음악을 추천하는 협업 필터링을 수행한다.
협업 필터링은 이웃 피어 그룹의 프로파일로부터 가장 높은 선호도를 보인 음악을 추천하는 과정으로 호스트 피어의 음악 청취 및/또는 음악 다운로드 동작에 의하여 호스프 피어 프로파일 및 이웃 피어 프로파일은 새롭게 갱신될 수 있다. 이러한 이유로 본 발명에 따른 음악 추천 시스템(100)은 실시간으로 피어들의 음악적 취향을 음악 추천에 반영할 수 있다.
상기 이웃 피어 관리 모듈(130)은 상기 선정된 이웃 피어 그룹의 이웃 피어들 각각의 프로파일을 저장하는 이웃 피어 프로파일 데이터 베이스(180) 및 상기 호스트 피어 프로파일 및 상기 이웃 피어 프로파일에 기초하여 상기 호스트 피어를 이웃 피어로 선정한 피어들 각각에 대한 프로파일을 저장하는 타겟 피어 프로파일 데이터 베이스(190)를 더 포함할 수 있다.
알고리즘 수행 모듈(135)은 상기 호스트 피어의 장르별 음악 선호도 및 상기 서버로부터 수신되는 장르별 순위에 기초하여 제1추천 음악 목록을 발생하며, 상기 선택된 이웃 피어 그룹의 프로파일들에 기초하여 제2추천 음악 목록을 발생할 수 있다. 상기 알고리즘 수행 모듈(135)은 내용 기반 필터링을 수행하기 위한 제1알고리즘 수행 모듈(140) 및 협업 필터링을 수행하기 위한 제2알고리즘 수행 모듈(150)을 포함할 수 있다.
상기 제1알고리즘 수행 모듈(140)은 상기 호스트 피어의 장르별 음악 선호도 및 상기 서버로부터 수신되는 장르별 순위에 기초하여 장르별로 분류되는 상기 제1추천 음악 목록을 발생할 수 있다. 상기 장르별 순위는 장르별 주간 인기곡 또는 월간 인기곡에 따라 결정될 수 있다.
예컨대, 상기 제1알고리즘 수행 모듈(140)은 트랜잭션별로 가중치를 부여한 호스트 피어의 장르별 음악 선호도에 기초하여 각 장르별 추천 음악 개수를 결정한 다음, 각 장르 내에서 추천될 음악 순위를 결정하여 제1추천 음악 목록을 발생할 수 있다. 각 장르별 추천 음악 개수는 제1추천 음악 목록에 포함되는 음악 개수에 호스트 피어의 각 장르별 음악 선호도에 의하여 결정될 수 있다. 표 5는 제1음악 목록에 포함되는 음악 개수가 20개인 경우 각 장르별 추천 음악 개수의 예를 나타낸다.
Figure 112008059115733-PAT00008
예컨대, 제1장르의 추천 음악 개수는 제1음악 목록에 포함되는 음악 개수(20)에 제1장르에 대한 호스트 피어의 선호도(0.7)를 곱한 값(14)이 된다.
상기 제2알고리즘 수행 모듈(150)은 상기 선택된 이웃 피어 그룹의 프로파일들에 포함된 상기 선택된 이웃 피어 그룹들로부터 추천된 음악들 및 상기 호스트 피어에 대한 상기 선택된 이웃 피어 그룹 각각의 유사도에 기초하여 상기 제2추천 음악 목록을 발생할 수 있다. 다시 말하면, 상기 제2알고리즘 수행 모듈(150)은 이웃 피어 그룹에서 가장 높은 선호도를 갖는 추천 음악 목록을 발생한다.
제2추천 음악 목록은 수학식 4에 의하여 정해질 수 있다.
Figure 112008059115733-PAT00009
여기서, PPS(Peer Preference Score)는 호스트 피어(hp)에게 추천될 음악 i 에 대한 피어 선호 점수, Pnpi는 이웃 피어(np)가 추천될 음악 i를 추천했는지 여부에 대한 가중치일 수 있다. 예를 들면, Pnpi는 이웃 피어가 추천한 경우에는 1, 그렇지 않은 경우에는 0일 수 있다.
상기 추천 음악 결정 모듈(160)은 상기 제1추천 음악 목록 및 상기 제2추천 음악 목록에 중복되는 음악들을 먼저 추천할 수 있으며, 상기 제1추천 음악 목록 및 상기 제2추천 음악 목록에 기초하여 추천되는 음악들의 비를 조절할 수도 있다.
상기 디스플레이부(170)는 상기 추천 음악 결정 모듈(160)에 의하여 추천된 추천 음악 목록을 디스플레이하며, 호스트 피어는 상기 조작부(170)를 이용하여 추천된 음악에 대한 청취 또는 다운로드 여부를 결정할 수 있다.
도 3은 본 발명의 다른 실시예에 따른 P2P 기반 음악 추천 시스템(100')을 나타내는 블락도이다. 도 3을 참조하면, 상기 음악 추천 시스템(100')은 호스트 피어 관리 모듈(110), 제1추천 모듈(115), 제2추천 모듈(125), 추천 음악 결정 모듈(160), 디스플레이부/조작부(170)를 포함한다.
도 3에 도시된 음악 추천 시스템(100')은 도 2에 도시된 음악 추천 시스템(100)의 관리 모듈(105) 및 알고리즘 수행 모듈(135)을 호스트 피어 관리 모듈(110), 제1추천 모듈(115), 및 제2추천 모듈(125)로 재구성한 것이다. 양자에서 동일한 부재번호를 갖는 구성요소들은 그 구조와 기능이 동일하므로 이하에서는 양자의 차이점에 대해서만 간략하게 설명한다.
상기 제1추천 모듈(115)은 상기 호스트 피어 프로파일에 기초하여 발생되는 호스트 피어의 장르별 음악 선호도를 계산하고, 상기 호스트 피어의 장르별 음악 선호도 및 서버로부터 수신되는 장르별 순위에 기초하여 제1추천 음악 목록을 발생할 수 있다. 상기 제2추천 모듈(125)은 상기 호스트 피어 프로파일 및 상기 서버로부터 수신되는 이웃 피어 프로파일에 기초하여 상기 호스트 피어 프로파일과 유사한 프로파일을 갖는 이웃 피어 그룹으로부터 추천되는 음악들에 기초하여 제2추천 음악 목록을 발생할 수 있다.
상기 제1추천 모듈(115)에 포함된 음악 선호도 계산 모듈(120) 및 제1알고리즘 수행 모듈(140), 상기 제2추천 모듈(125)에 포함된 이웃 피어 관리 모듈(130) 및 제2알고리즘 수행 모듈(150) 각각에 대해서는 도 2를 참조하여 설명한 바 있으므로 이에 대한 상세한 설명을 생략한다.
도 4는 도 2 및 도 3에 도시된 P2P 기반 음악 추천 시스템(100 및 100')의 음악 추천 방법을 설명하기 위한 흐름도이다. 이하 도 2 내지 도 4를 참조하여 그 과정을 상세히 설명한다.
호스트 피어가 P2P 네트워크에 접속하면 호스트 피어 관리 모듈(110)은 초기 저장된 호스트 피어 프로파일에 기초하여 호스트 피어의 초기 장르별 음악 선호도를 계산하고, 이웃 피어 관리 모듈(130)은 서버로부터 수신되는 이웃 피어 프로파일에 기초하여 초기 이웃 피어 그룹을 선정한다(S10).
제1알고리즘 수행 모듈(140)은 상기 호스트 피어의 초기 장르별 음악 선호도 및 서버로부터 수신되는 장르별 순위에 기초하여 내용 기반 필터링을 수행함으로써 제1추천 음악 목록을 발생하며, 제2알고리즘 수행 모듈(150)은 초기 이웃 피어 그룹에서 가장 높은 선호도를 보인 음악들에 대한 협업 필터링을 수행함으로써 제2추 천 음악 목록을 발생한다(S20).
추천 음악 결정 모듈(160)은 제1추천 음악 목록 및 제2추천 음악 목록에 기초하여 결정된 최종적인 추천 음악 목록을 디스플레이부(170)로 출력한다(S30). 이후에 호스트 피어의 음악 청취 및/또는 음악 다운로드가 있으면(S40), 상기 호스트 피어 관리 모듈(110)은 호스트 피어 프로파일을 갱신하고 상기 음악 선호도 계산 모듈(120)은 호스트 피어의 음악 선호도를 갱신하며(S50), 이웃 피어 관리 모듈(130)은 이웃 피어 그룹 및 타겟 피어 그룹을 갱신하여 서버로 출력한다(S60).
본 발명에 따른 P2P 기반 음악 추천 방법은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다.
예컨대, 컴퓨터가 읽을 수 있는 기록매체에는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장장치 등이 있으며, 또한 본 발명에 따른 P2P 기반 음악 추천 방법을 수행하기 위한 프로그램 코드는 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 전송될 수도 있다.
또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명에 따른 P2P 기반 음악 추천 방법을 구현하기 위한 기능적인 (functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
이하에서는 본 발명에 따른 음악 추천 시스템(100 및 100')의 미리 정해진 시스템 환경에 따른 시스템 성능을 적중률(hit ratio)를 기준으로 살펴본다. 적중률이라 함은 추천 음악들에 대한 호스트 피어가 실제로 청취하거나 다운로드한 음악들의 비를 의미한다.
도 5는 도 2 및 도 3에 도시된 P2P 기반 음악 추천 시스템(100 및 100')의 추천 음악 결정 방법에 따른 시스템 성능을 나타내는 그래프이다. 여기서, 추천 음악 결정 방법이라 함은 내용 기반 필터링과 협업 필터링 각각에 의하여 추천되는 음악의 비율을 조절하는 것을 의미한다.
도 5는 내용 기반 필터링과 협업 필터링에 의하여 동시에 추천된 음악을 우선 추천한 다음 양자에 의하여 추천된 음악의 비율을 조절하면서 측정된 시스템 성능을 나타낸다. 예컨대, 추천 음악 수가 40개이고 내용 기반 필터링에 의한 추천 비율이 0.2이면 40개 중에서 8개는 내용 기반 필터링에 의하여 추천되며, 나머지 32개는 협업 필터링에 의하여 추천되는 것을 의미한다.
도 5를 참조하면, 상기 미리 정해진 시스템 환경 하에서의 P2P 기반 음악 추천 시스템(100 및 100')의 시스템 성능은 내용 기반 필터링에 의한 추천 비율이 낮을수록 뛰어나며, 추천 음악 수가 40개일 때보다 20개일 때가 더 뛰어남을 알 수 있다.
도 6은 도 2 및 도 3에 도시된 P2P 기반 음악 추천 시스템(100 및 100')의 트랜잭션 수에 따른 시스템 성능을 나타내는 그래프이다. 도 6을 참조하면, 상기 미리 정해진 시스템 환경 하에서 트랜잭션 수가 증가함에 따라 적중률이 증가하는 추세를 보임을 알 수 있다.
도 7은 도 2 및 도 3에 도시된 P2P 기반 음악 추천 시스템(100 및 100')의 이웃 피어 그룹의 크기에 따른 시스템 성능을 나타내는 그래프이다. 이웃 피어 그룹이 커질수록 추천 소요 시간은 증가하나 적중률은 크게 향상되지 않음을 알 수 있다.
발명은 도면에 도시된 일 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
도 1은 본 발명의 실시예에 따른 P2P 기반 음악 추천 네트워크를 나타내는 블락도이다.
도 2는 본 발명의 실시예에 따른 P2P 기반 음악 추천 시스템을 나타내는 블락도이다.
도 3은 본 발명의 다른 실시예에 따른 P2P 기반 음악 추천 시스템을 나타내는 블락도이다.
도 4는 도 2 및 도 3에 도시된 P2P 기반 음악 추천 시스템의 음악 추천 방법을 설명하기 위한 흐름도이다.
도 5는 도 2 및 도 3에 도시된 P2P 기반 음악 추천 시스템의 추천 음악 결정 방법에 따른 시스템 성능을 나타내는 그래프이다.
도 6은 도 2 및 도 3에 도시된 P2P 기반 음악 추천 시스템의 트랜잭션 수에 따른 시스템 성능을 나타내는 그래프이다.
도 7은 도 2 및 도 3에 도시된 P2P 기반 음악 추천 시스템의 이웃 피어 그룹의 크기에 따른 시스템 성능을 나타내는 그래프이다.

Claims (26)

  1. 호스트 피어(peer)의 음악 청취 이력 및/또는 음악 다운로드 이력을 포함하는 호스트 피어 프로파일 및 서버로부터 수신되는 이웃 피어 프로파일에 기초하여 상기 호스트 피어의 장르별 음악 선호도를 계산하고 상기 호스트 피어 프로파일과 유사한 프로파일을 갖는 이웃 피어 그룹을 선정하는 관리 모듈;
    상기 호스트 피어의 장르별 음악 선호도 및 상기 서버로부터 수신되는 장르별 순위에 기초하여 제1추천 음악 목록을 발생하며, 상기 선택된 이웃 피어 그룹의 프로파일들에 기초하여 제2추천 음악 목록을 발생하는 알고리즘 수행 모듈; 및
    상기 제1추천 음악 목록 및 상기 제2추천 음악 목록에 기초하여 결정되는 추천 음악들을 상기 호스트 피어에게 추천하는 추천 음악 결정 모듈을 포함하는 P2P(Peer-to-Peer) 네트워크에서의 음악 추천 시스템.
  2. 제1항에 있어서, 상기 관리 모듈은
    미리 정해진 장르 분류 체계를 이용하여 상기 호스트 피어 프로파일의 트랜잭션(transaction)들을 저장하고 갱신하는 호스트 피어 관리 모듈;
    상기 호스트 피어 프로파일에 기초하여 상기 호스트 피어의 장르별 음악 선호도를 계산하는 음악 선호도 계산 모듈; 및
    상기 호스트 피어 프로파일, 상기 호스트 피어의 장르별 음악 선호도, 및 상기 이웃 피어 프로파일에 기초하여 상기 이웃 피어 그룹을 선정하는 이웃 피어 관 리 모듈을 포함하는 P2P 기반 음악 추천 시스템.
  3. 제2항에 있어서, 상기 호스트 프로파일은
    상기 호스트 피어가 미리 정해진 단위 시간 이내에 미리 정해진 시간 이상 청취 및/또는 다운로드한 음악에 대한 다수의 트랜잭션들을 포함하는 P2P 기반 음악 추천 시스템.
  4. 제2항에 있어서, 상기 호스트 피어의 장르별 음악 선호도는
    상기 미리 정해진 장르 분류 체계에서의 전체 장르 수와 각각의 장르에 대하여 상기 호스트 피어가 청취 및/또는 다운로드한 수의 비를 나타내는 P2P 기반 음악 추천 시스템.
  5. 제4항에 있어서, 상기 음악 선호도 계산 모듈은
    상기 호스트 피어의 청취 및/또는 다운로드한 순서에 기초하여 상기 다수의 트랜잭션들에 대하여 가중치를 부여하는 P2P 기반 음악 추천 시스템.
  6. 제2항에 있어서, 상기 이웃 피어 관리 모듈은
    상기 호스트 피어 프로파일과 상기 이웃 피어 프로파일의 비교 결과에 기초하여 미리 정해진 수의 이웃 피어들을 포함하는 상기 이웃 피어 그룹을 선정하고, 상기 호스트 피어의 장르별 음악 선호도 및 상기 이웃 피어 프로파일에 포함된 이 웃 피어의 장르별 음악 선호도에 기초하여 상기 호스트 피어에 대한 이웃 피어의 유사도를 계산하는 P2P 기반 음악 추천 시스템.
  7. 제6항에 있어서, 상기 이웃 피어 관리 모듈은
    상기 선정된 이웃 피어 그룹의 이웃 피어들 각각의 프로파일을 저장하는 이웃 피어 프로파일 데이터 베이스를 더 포함하는 P2P 기반 음악 추천 시스템.
  8. 제6항에 있어서, 상기 이웃 피어 관리 모듈은
    상기 호스트 피어 프로파일 및 상기 이웃 피어 프로파일에 기초하여 상기 호스트 피어를 이웃 피어로 선정한 피어들 각각에 대한 프로파일을 저장하는 타겟 피어 프로파일 데이터 베이스를 더 포함하는 P2P 기반 음악 추천 시스템.
  9. 제1항에 있어서, 상기 알고리즘 수행 모듈은
    상기 호스트 피어의 장르별 음악 선호도 및 상기 서버로부터 수신되는 장르별 순위에 기초하여 장르별로 분류되는 상기 제1추천 음악 목록을 발생하는 제1알고리즘 수행 모듈; 및
    상기 선택된 이웃 피어 그룹의 프로파일들에 포함된 상기 선택된 이웃 피어 그룹들로부터 추천된 음악들 및 상기 호스트 피어에 대한 상기 선택된 이웃 피어 그룹 각각의 유사도에 기초하여 상기 제2추천 음악 목록을 발생하는 제2알고리즘 수행 모듈을 포함하는 P2P 기반 음악 추천 시스템.
  10. 제1항에 있어서, 상기 추천 음악 결정 모듈은
    상기 제1추천 음악 목록 및 상기 제2추천 음악 목록에 중복되는 음악들을 먼저 추천하며, 상기 제1추천 음악 목록 및 상기 제2추천 음악 목록에 기초하여 추천되는 음악들의 비를 조절할 수 있는 P2P 기반 음악 추천 시스템.
  11. 미리 정해진 장르 분류 체계를 이용하여 상기 호스트 피어 프로파일의 트랜잭션들을 저장하고 갱신하는 호스트 피어 관리 모듈;
    상기 호스트 피어 프로파일에 기초하여 발생되는 호스트 피어의 장르별 음악 선호도를 계산하고, 상기 호스트 피어의 장르별 음악 선호도 및 서버로부터 수신되는 장르별 순위에 기초하여 제1추천 음악 목록을 발생하는 제1추천 모듈;
    상기 호스트 피어 프로파일 및 상기 서버로부터 수신되는 이웃 피어 프로파일에 기초하여 상기 호스트 피어 프로파일과 유사한 프로파일을 갖는 이웃 피어 그룹으로부터 추천되는 음악들에 기초하여 제2추천 음악 목록을 발생하는 제2추천 모듈; 및
    상기 제1추천 음악 목록 및 상기 제2추천 음악 목록에 기초하여 결정되는 추천 음악들을 상기 호스트 피어에게 추천하는 추천 음악 결정 모듈을 포함하는 P2P 기반 음악 추천 시스템.
  12. 제11항에 있어서, 상기 호스트 프로파일은
    상기 호스트 피어가 미리 정해진 단위 시간 이내에 미리 정해진 시간 이상 청취 및/또는 다운로드한 음악에 대한 다수의 트랜잭션들을 포함하며,
    상기 호스트 피어의 장르별 음악 선호도는
    상기 미리 정해진 장르 분류 체계에서의 전체 장르 수와 각각의 장르에 대하여 상기 호스트 피어가 청취 및/또는 다운로드한 수의 비를 나타내는 P2P 기반 음악 추천 시스템.
  13. 제11항에 있어서, 상기 제1추천 모듈은
    상기 호스트 피어 프로파일에 기초하여 상기 호스트 피어의 상기 장르별 음악 선호도를 계산하는 음악 선호도 계산 모듈; 및
    상기 호스트 피어의 장르별 음악 선호도 및 상기 장르별 순위에 기초하여 장르별로 분류되는 상기 제1추천 음악 목록을 발생하는 제1알고리즘 수행 모듈을 포함하는 P2P 기반 음악 추천 시스템.
  14. 제11항에 있어서, 상기 제2추천 모듈은
    상기 호스트 피어 프로파일과 상기 이웃 피어 프로파일의 비교 결과에 기초하여 미리 정해진 수의 이웃 피어들을 포함하는 상기 이웃 피어 그룹을 선정하고, 상기 호스트 피어의 장르별 음악 선호도 및 상기 이웃 피어 프로파일에 포함된 이웃 피어의 장르별 음악 선호도에 기초하여 상기 호스트 피어에 대한 이웃 피어의 유사도를 계산하는 이웃 피어 관리 모듈; 및
    상기 선택된 이웃 피어 그룹의 프로파일들에 포함된 상기 선택된 이웃 피어 그룹들로부터 추천된 음악들 및 상기 호스트 피어에 대한 상기 선택된 이웃 피어 그룹 각각의 유사도에 기초하여 상기 제2추천 음악 목록을 발생하는 제2알고리즘 수행 모듈을 포함하는 P2P 기반 음악 추천 시스템.
  15. 제11항에 있어서, 상기 음악 추천 시스템은
    상기 이웃 피어 그룹의 이웃 피어들 각각의 프로파일을 저장하는 이웃 피어 프로파일 데이터 베이스; 및
    상기 호스트 피어 프로파일 및 상기 이웃 피어 그룹의 프로파일에 기초하여 상기 호스트 피어를 이웃 피어로 선정한 이웃 피어들 각각에 대한 프로파일을 저장하는 타겟 피어 프로파일 데이터 베이스를 더 포함하는 P2P 기반 음악 추천 시스템.
  16. 제11항에 있어서, 상기 추천 음악 결정 모듈은
    상기 제1추천 음악 목록 및 상기 제2추천 음악 목록에 중복되는 음악들을 먼저 추천하며, 상기 제1추천 음악 목록 및 상기 제2추천 음악 목록에 기초하여 추천되는 음악들의 비를 조절할 수 있는 P2P 기반 음악 추천 시스템.
  17. 호스트 피어(peer)의 음악 청취 이력 및/또는 음악 다운로드 이력을 포함하는 호스트 피어 프로파일 및 서버로부터 수신되는 이웃 피어 프로파일에 기초하여 상기 호스트 피어의 장르별 음악 선호도를 계산하고 상기 호스트 피어 프로파일과 유사한 프로파일을 갖는 이웃 피어 그룹을 선정하는 단계;
    상기 호스트 피어의 장르별 음악 선호도 및 상기 서버로부터 수신되는 장르별 순위에 기초하여 제1추천 음악 목록을 발생하며, 상기 선택된 이웃 피어 그룹의 프로파일들에 기초하여 제2추천 음악 목록을 발생하는 단계; 및
    상기 제1추천 음악 목록 및 상기 제2추천 음악 목록에 기초하여 결정되는 추천 음악들을 상기 호스트 피어에게 추천하는 단계를 포함하는 P2P 기반 음악 추천 방법.
  18. 제17항에 있어서, 상기 호스트 프로파일은
    상기 호스트 피어가 미리 정해진 단위 시간 이내에 미리 정해진 시간 이상 청취 및/또는 다운로드한 음악에 대한 다수의 트랜잭션들을 포함하며
    상기 호스트 피어의 장르별 음악 선호도를 계산하는 단계는
    상기 미리 정해진 장르 분류 체계에서의 전체 장르 수와 각각의 장르에 대하여 상기 호스트 피어가 청취 및/또는 다운로드한 수의 비를 나타내는 P2P 기반 음악 추천 방법.
  19. 제17항에 있어서, 상기 호스트 피어의 장르별 음악 선호도를 계산하는 단계는
    상기 호스트 피어의 청취 및/또는 다운로드한 순서에 기초하여 상기 다수의 트랜잭션들에 대하여 가중치를 부여하는 단계를 더 포함하는 P2P 기반 음악 추천 방법.
  20. 제17항에 있어서, 상기 이웃 피어 그룹을 선정하는 단계는
    상기 호스트 피어 프로파일과 상기 이웃 피어 프로파일의 비교 결과에 기초하여 미리 정해진 수의 이웃 피어들을 포함하는 상기 이웃 피어 그룹을 선정하고, 상기 호스트 피어의 장르별 음악 선호도 및 상기 이웃 피어 프로파일에 포함된 이웃 피어의 장르별 음악 선호도에 기초하여 상기 호스트 피어에 대한 이웃 피어의 유사도를 계산하는 단계를 포함하는 P2P 기반 음악 추천 방법.
  21. 제17항에 있어서, 상기 제1추천 음악 목록을 발생하는 단계는
    상기 호스트 피어의 장르별 음악 선호도 및 상기 서버로부터 수신되는 장르별 순위에 기초하여 장르별로 분류되는 상기 제1추천 음악 목록을 발생하는 단계를 포함하는 P2P 기반 음악 추천 방법.
  22. 제17항에 있어서, 상기 제2추천 음악 목록을 발생하는 단계는
    상기 선택된 이웃 피어 그룹의 프로파일들에 포함된 상기 선택된 이웃 피어 그룹들로부터 추천된 음악 목록 및 상기 호스트 피어에 대한 상기 선택된 이웃 피어 그룹 각각의 유사도에 기초하여 상기 제2추천 음악 목록을 발생하는 단계를 포함하는 P2P 기반 음악 추천 방법.
  23. 제17항에 있어서, 상기 추천 음악들을 상기 호스트 피어에게 추천하는 단계는
    상기 제1추천 음악 목록 및 상기 제2추천 음악 목록에 중복되는 음악들을 먼저 추천하며, 상기 제1추천 음악 목록 및 상기 제2추천 음악 목록에 기초하여 추천되는 음악들의 비를 조절하는 단계를 포함하는 P2P 기반 음악 추천 방법.
  24. 제17항에 있어서, 상기 음악 추천 방법은
    상기 이웃 피어 그룹의 이웃 피어들 각각의 프로파일을 저장하는 단계를 더 포함하는 P2P 네트워크에서의 음악 추천 방법.
  25. 제17항에 있어서, 상기 음악 추천 방법은
    상기 호스트 피어 프로파일 및 상기 이웃 피어 그룹의 프로파일에 기초하여 상기 호스트 피어를 이웃 피어로 선정한 이웃 피어들 각각에 대한 프로파일을 저장하는 단계를 더 포함하는 P2P 기반 음악 추천 방법.
  26. 제17항 내지 제25항 중 어느 한 항에 기재된 P2P 기반 음악 추천 방법을 실행하기 위한 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체.
KR1020080081102A 2008-08-20 2008-08-20 P2p 기반 음악 추천 시스템 및 그 방법 KR20100022542A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080081102A KR20100022542A (ko) 2008-08-20 2008-08-20 P2p 기반 음악 추천 시스템 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080081102A KR20100022542A (ko) 2008-08-20 2008-08-20 P2p 기반 음악 추천 시스템 및 그 방법

Publications (1)

Publication Number Publication Date
KR20100022542A true KR20100022542A (ko) 2010-03-03

Family

ID=42175007

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080081102A KR20100022542A (ko) 2008-08-20 2008-08-20 P2p 기반 음악 추천 시스템 및 그 방법

Country Status (1)

Country Link
KR (1) KR20100022542A (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150004947A (ko) 2013-07-03 2015-01-14 에스케이플래닛 주식회사 음악 발견을 위한 음악 추천 서비스 장치 및 이를 이용한 시스템과 그 추천 방법
CN107885745A (zh) * 2016-09-29 2018-04-06 亿览在线网络技术(北京)有限公司 一种歌曲推荐方法及装置
KR20200126834A (ko) * 2019-04-30 2020-11-09 네이버 주식회사 동시간대 추천 음악 제공 방법, 시스템 및 컴퓨터 프로그램
WO2022131777A1 (ko) * 2020-12-17 2022-06-23 주식회사 카카오엔터테인먼트 컨텐츠 추천 목록 제공 방법 및 서버

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150004947A (ko) 2013-07-03 2015-01-14 에스케이플래닛 주식회사 음악 발견을 위한 음악 추천 서비스 장치 및 이를 이용한 시스템과 그 추천 방법
CN107885745A (zh) * 2016-09-29 2018-04-06 亿览在线网络技术(北京)有限公司 一种歌曲推荐方法及装置
CN107885745B (zh) * 2016-09-29 2020-09-08 亿览在线网络技术(北京)有限公司 一种歌曲推荐方法及装置
KR20200126834A (ko) * 2019-04-30 2020-11-09 네이버 주식회사 동시간대 추천 음악 제공 방법, 시스템 및 컴퓨터 프로그램
WO2022131777A1 (ko) * 2020-12-17 2022-06-23 주식회사 카카오엔터테인먼트 컨텐츠 추천 목록 제공 방법 및 서버
KR20220087324A (ko) * 2020-12-17 2022-06-24 주식회사 카카오엔터테인먼트 컨텐츠 추천 목록 제공 방법 및 서버

Similar Documents

Publication Publication Date Title
US10095771B1 (en) Clustering and recommending items based upon keyword analysis
US8583791B2 (en) Maintaining a minimum level of real time media recommendations in the absence of online friends
US8224856B2 (en) Intelligent default weighting process for criteria utilized to score media content items
TWI636416B (zh) 內容個人化之多相排序方法和系統
US9082123B2 (en) Methods and systems for activity-based recommendations
US9110955B1 (en) Systems and methods of selecting content items using latent vectors
KR101060487B1 (ko) 태그 클라우드를 이용한 콘텐츠 추천 장치 및 방법
US20120185481A1 (en) Method and Apparatus for Executing a Recommendation
US20170161818A1 (en) Explanations for personalized recommendations
US9864951B1 (en) Randomized latent feature learning
US20100083318A1 (en) Determining user-to-user simlarities in an online media environment
US11216518B2 (en) Systems and methods of providing recommendations of content items
US20120179717A1 (en) System and method for effectively providing entertainment recommendations to device users
US20130073618A1 (en) Information Providing System, Information Providing method, Information Providing Device, Program, And Information Storage Medium
Barragáns-Martínez et al. Developing a recommender system in a consumer electronic device
JP2007058398A (ja) コンテンツ推薦装置、コンテンツ推薦方法及びコンピュータプログラム
JP2018084928A (ja) 選択装置、選択方法および選択プログラム
US9430572B2 (en) Method and system for user profiling via mapping third party interests to a universal interest space
KR20170079429A (ko) 사용자 속성을 고려한 클러스터링 기반의 협업 필터링 방법 및 영화 추천 시스템
KR20100022542A (ko) P2p 기반 음악 추천 시스템 및 그 방법
WO2014031002A1 (en) Group composition based recommender system and method
CN117391824A (zh) 基于大语言模型和搜索引擎推荐物品的方法及装置
Guan et al. Enhanced SVD for collaborative filtering
US20230267062A1 (en) Using machine learning model to make action recommendation to improve performance of client application
CN112733034A (zh) 内容推荐方法、装置、设备及存储介质

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application