KR101057919B1 - How to recommend customized music through analyzing playlists of users - Google Patents

How to recommend customized music through analyzing playlists of users Download PDF

Info

Publication number
KR101057919B1
KR101057919B1 KR1020090014307A KR20090014307A KR101057919B1 KR 101057919 B1 KR101057919 B1 KR 101057919B1 KR 1020090014307 A KR1020090014307 A KR 1020090014307A KR 20090014307 A KR20090014307 A KR 20090014307A KR 101057919 B1 KR101057919 B1 KR 101057919B1
Authority
KR
South Korea
Prior art keywords
music
similarity
users
user
playlist
Prior art date
Application number
KR1020090014307A
Other languages
Korean (ko)
Other versions
KR20100095166A (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 KR1020090014307A priority Critical patent/KR101057919B1/en
Publication of KR20100095166A publication Critical patent/KR20100095166A/en
Application granted granted Critical
Publication of KR101057919B1 publication Critical patent/KR101057919B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/63Querying
    • G06F16/638Presentation of query results
    • G06F16/639Presentation of query results using playlists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/63Querying
    • G06F16/635Filtering based on additional data, e.g. user or group profiles
    • 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/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Abstract

본 발명에 따른 사용자들의 재생 목록 분석을 통한 맞춤형 음악 추천 방법은, 음악 데이터로부터 MFCC를 추출하고, 은닉 마코프 모델링(HMM) 방법을 사용하여 음악 모델을 구축하며, 구축한 음악 모델 간의 유사도를 계산하여 측정하는 음악 모델링 및 유사도 비교 단계(Step 1)와; 상기 음악 모델링 및 유사도 비교 단계에서 구한 음악 유사도를 이용해서 사용자들이 들은 음악들에 대한 음악 유사도 그래프를 만들고, MCL 그래프 클러스터링법에 의해 과거 재생 목록에 존재하는 음악들을 클러스터링하여, 사용자들이 과거에 들었던 음악 재생 목록을 기반으로 음악들을 유사한 음악끼리 그룹화하는 사용자들의 재생 목록 분석 단계(Step 2) 및; 다른 사용자들의 재생 목록 분석을 통해 도출된 음악 그룹 중 사용자의 음악 그룹과 얼마나 잘 부합되는지를 평가하고, 평가된 결과를 바탕으로 사용자에게 추천 목록을 제공하는 음악 추천 단계(Step 3)를 갖추어 이루어진다.According to the present invention, a customized music recommendation method through analysis of playlists of users is performed by extracting MFCC from music data, constructing a music model using hidden Markov modeling (HMM) method, and calculating similarity between the constructed music models. Measuring music modeling and similarity comparing step (Step 1); Using the music similarity obtained in the music modeling and similarity comparison step, a music similarity graph for the music heard by the users is made, and music existing in the past playlist is clustered by the MCL graph clustering method, so that the user has listened to the past. A playlist analysis step (Step 2) of users for grouping similar music to music based on the playlist; It is equipped with a music recommendation step (Step 3) that evaluates how well the music group derived from the playlist analysis of other users matches the user's music group and provides a recommendation list to the user based on the evaluated result.

Description

사용자들의 재생 목록 분석을 통한 맞춤형 음악 추천 방법{A PERSONAL ADAPTIVE MUSIC RECOMMENDATION METHOD USING ANALYSIS OF PLAYLISTS OF USERS}A PERSONAL ADAPTIVE MUSIC RECOMMENDATION METHOD USING ANALYSIS OF PLAYLISTS OF USERS}

본 발명은, 컨텐츠 기반의 음악 분석을 통해 한 사용자의 음악적 성향을 파악하고, 그 사용자의 성향에 맞는 음악을 추천해주는 사용자들의 재생 목록 분석을 통한 맞춤형 음악 추천 방법에 관한 것이다. The present invention relates to a customized music recommendation method through analyzing a playlist of users who grasps a music propensity of a user through content-based music analysis and recommends music suitable for the user's propensity.

최근, 인터넷의 빠른 발달에 따라 웹 상에서 이용할 수 있는 다양한 서비스들이 생겨났다. 온라인 음악 제공 서비스도 이러한 새로운 서비스 중 하나로, 이는 사람들이 음악을 듣는 방식에 변화를 가져왔다. 기존의 사람들은 TV나 라디오를 통해 음악을 듣거나 CD와 같은 음악 매체를 구매하여 음악을 들었던 반면, 웹이 발달한 지금은 웹을 통해 MP3와 같은 음악 파일을 구매하여 음악을 듣거나 웹 상에서 스트리밍 서비스로 제공되는 음악을 직접 듣는 방법을 이용하는 사람들이 늘어나고 있다. 이에 따라 온라인 음악 제공 서비스 업체들은 사용자들의 서비스 이용 만족도를 올리기 위한 노력을 하고 있다.Recently, with the rapid development of the Internet, various services available on the web have been created. Online music delivery is one of these new services, which has changed the way people listen to music. Conventional people listened to music through TV or radio, or purchased music media such as CDs to listen to music, whereas now the web has developed, purchase music files such as MP3 through the web to listen to music or stream on the web. More and more people are using direct listening to music provided as a service. Accordingly, online music service providers are making efforts to increase user satisfaction.

그러나, 웹이라는 공간의 무한한 자원에도 불구하고 대부분의 서비스 업체들은 단순한 방법으로만 사용자들에게 음악을 제공하고 있다. 예를 들어 대부분의 서비스 업체들은 음악가의 이름이나 장르와 같은 키워드를 기반으로 음악을 분류하거나 단순히 많이 들은 음악 순서대로 순위를 정하여 사용자들에게 음악을 나열하여 보여주고 있다. 이러한 음악 분류 방법들은 현재의 음악적 동향이나 사용자들의 개인적인 음악 선호도를 고려하지 못한 채 음악을 단순하게 사용자들에게 보여주고 있을 뿐이다. 따라서, 사용자들이 자신이 선호하는 음악을 찾기 위해서는 웹 사이트에서 스스로 검색을 통해 원하는 음악을 찾아 들어야만 한다. 사용자가 자신이 원하는 음악의 제목이나 가수의 이름을 정확하게 알고 있을 경우에는 이러한 키워드 검색이 문제가 없지만, 특정 정보가 없이 자신의 성향에 맞는 새로운 음악을 찾기 위해서는 반복적으로 음악들을 검색하고 확인하는 방법으로 원하는 음악을 찾아 나가야만 한다는 단점이 있다.However, despite the infinite resources of the web, most service providers offer music to users in a simple way. For example, most service companies categorize music based on keywords such as the name and genre of a musician, or simply rank the songs in the order of the music they listened to. These music classification methods simply show music to users without considering current musical trends or users' personal music preferences. Therefore, in order for users to find their favorite music, they have to find and listen to the music they want by searching on their own website. This keyword search is not a problem if the user knows exactly the title of the song or the name of the artist. However, in order to find new music that suits his or her inclination without specific information, the user can repeatedly search and check the music. The disadvantage is that you have to find the music you want.

이와 같은 검색의 단점을 극복하기 위해서 몇몇 서비스 제공 업체들은 추천 기법을 사용하여 사용자들에게 새로운 음악을 제공한다. 사용자들에게 음악 추천 목록을 줌으로써 사용자들은 좀 더 손쉽게 새로운 음악들을 찾을 수 있다.To overcome this drawback, some service providers use recommendation techniques to provide new music to their users. By giving users a list of music recommendations, users can find new music more easily.

추천 목록을 만드는 방법 중 하나로 여러 사용자들이 들었던 음악들을 기반으로 사용자에게 추천 목록을 만드는 방법으로 대표적인 방법이 아마존(Amazon)에서 사용하고 있는 협업 필터링(collaborative filtering)이 있다(참고문헌 [1] 참조). 아마존의 협업 필터링은 한 사용자가 특정 음악이 들어 있는 앨범을 구매하였을 경우, 그 앨범을 구매한 다른 사용자들이 구매했던 다른 앨범들을 추천해주는 방법으로 사용자에게 제공할 추천 목록을 만든다. 추천 목록에 오르는 앨범들은 다른 사용자들이 구매했던 앨범들 중 가장 많이 구매한 앨범들이다. 협업 필터링은 다수의 사용자들이 선호하는 음악을 한 사용자가 선호한다는 가정 하에 추천 목록을 만든다. 이 추천 기법은 다수의 사용자들의 선택을 기반으로 목록을 작성하기 때문에 현재의 음악적 동향을 반영할 수 있는 추천 기법이긴 하지만, 사용자가 다양한 유형의 음악을 들었을 경우 각 유형에 맞는 음악들을 선별하여 추천하기에는 적합한 기법이 아니다. 이러한 사용자들까지도 고려하기 위해서는 다른 접근 방법이 필요로 된다.One way to create a recommendation list is to create a recommendation list for a user based on music that has been heard by several users. One common method is collaborative filtering, which Amazon uses (see Ref. [1]). . Amazon's collaborative filtering creates a list of recommendations that a user can offer to a user by recommending other albums purchased by other users who have purchased the album. The albums on the recommendation list are the most purchased albums among other users. Collaborative filtering creates a recommendation list on the assumption that one user prefers music that many users prefer. This recommendation technique is a recommendation technique that reflects the current musical trends because it creates a list based on the selection of a large number of users. However, if the user has listened to various types of music, it is not recommended to select and recommend the music for each type. Not a suitable technique. Even these users need a different approach.

따라서, 음악 추천에 관하여 다양한 연구들이 이루어지고 있고, 그 중 음악의 성질 차체를 고려하여 음악을 추천해주는 방법을 컨텐츠 기반의 음악 추천 방법이라 한다. 이는 음악 자체를 분석함으로써, 음악 외적인 정보가 없어도 추천을 할 수 있기 때문에, 컨텐츠 기반의 음악 추천에 관한 다양한 연구가 이루어지고 있다.Therefore, various studies have been made on music recommendation, and a method of recommending music in consideration of the nature of music is called content-based music recommendation method. It is possible to make a recommendation even if there is no information outside of music by analyzing the music itself, and thus, various studies on content-based music recommendation have been made.

K. Kaji(참고문헌 [2] 참조)는 음악과 사용자의 성향과의 유사성을 이용하여 음악을 추천해주는 시스템에 관한 연구를 진행하였다. 상기 참고문헌 [2]에서는 음악의 가사와 주석(annotation) 및 사용자가 현재 음악을 듣고 있는 상황을 모두 고려하여 사용자에게 음악을 추천해 주는 시스템에 관한 연구이다. 이는 현재 사용자의 상황에 맞는 음악을 추천해준다는 장점이 있지만, 이를 위해 사용자들이 음악의 주석과 현재 상황을 직접 입력해줘야만 한다.K. Kaji (see Ref. [2]) conducted a study on a system for recommending music using similarity between music and user's disposition. Reference [2] is a study on a system for recommending music to a user in consideration of both lyrics and annotation of music and a situation in which the user is currently listening to music. This has the advantage of recommending music suitable for the current user's situation, but for this purpose, the user must manually enter the music comment and the current situation.

B. Logan(참고문헌 [3] 참조)은 사용자가 들은 음악과 나머지 음악들의 음파 의 유사도를 판단하여 음악을 추천하는 연구를 진행하였다. 상기 참고문헌[3]에서는 하나의 새로운 음악과 사용자의 음악 재생 목록에 있는 음악들과의 평균 유사도를 계산하여 가장 높은 평균 유사도를 가지는 음악을 추천해주는 시스템에 관한 연구이다. 이 시스템은 사용자가 항상 비슷한 유형의 음악을 듣는 경우에는 추천의 정확도가 높지만, 평균 유사도를 구하기 때문에 다양한 유형의 음악을 듣는 경우에는 추천의 정확도가 높지 않다.B. Logan (see Ref. [3]) conducted a study to recommend music by judging the similarity of sound waves of music heard by the user and the rest of the music. Reference [3] is a study on a system which recommends a music having the highest average similarity by calculating an average similarity between a new music and music in a user's music playlist. This system has a high accuracy of recommendation if the user always listens to similar types of music, but does not have high accuracy of recommendation when listening to various types of music because the average similarity is obtained.

P. Cano(참고문헌 [4] 참조)는 음악의 음파를 분석하여 음악을 추천하는 연구를 진행하였다. 상기 참고문헌[4]에서는 모든 음악을 분석하여 음악의 음색, 리듬을 수치로 표현하고 검색할 수 있는 방법을 적용한 시스템에 관한 연구이다. 사용자는 자신이 선호하는 음악의 수치를 보고, 시스템을 통해 그 음악과 유사한 수치를 가진 음악들을 검색할 수 있다. 이 시스템은 한 음악과 유사한 음악을 추천 받을 수 있는 용이한 환경을 제공하지만, 다양한 음악을 고려한 음악을 추천해줄 수는 없다.P. Cano (see Ref. [4]) conducted a study to recommend music by analyzing the sound waves of music. Reference [4] is a study on a system that applies a method that analyzes all music to express and retrieve the tone and rhythm of music numerically. The user can look at the level of music he prefers and search the system for music with similar numbers. This system provides an easy environment for recommending music similar to one music, but cannot recommend music considering various music.

본 발명은 상기한 점을 감안하여 발명된 것으로, 음악 모델 구축을 위한 정보로서 소리의 파형의 성질을 나타내는 MFCC를 음악으로부터 추출하고, 이를 은닉 마코프 모델링 기법을 사용하여 모델을 만들며, 이 모델들이 얼마나 유사한지를 비교한 다음 MCL 그래프 클러스터링 과정을 통해 사용자가 들은 음악을 유사한 음악끼리 그룹화 하여 어떤 유형의 음악을 사용자가 많이 들었는지를 분석하고, 이 분석 결과를 토대로 음악 그룹간의 유사도 비교를 통해 가장 근접한 음악을 찾아서, 이 음악들을 추천 목록으로 작성하여 사용자에게 제공하도록 된 사용자들의 재생 목록 분석을 통한 맞춤형 음악 추천 방법을 제공함에 그 목적이 있다.The present invention has been invented in view of the above, and extracts an MFCC representing the nature of sound waveforms from music as information for constructing a music model, and makes a model using a hidden Markov modeling technique. The similarity is compared, and then the MCL graph clustering process is used to group the music listened to by similar music to analyze what type of music the user listened to. Based on the analysis result, the closest music is compared by comparing the similarity between music groups. The purpose of the present invention is to provide a customized music recommendation method through analyzing playlists of users who have made the music list as a recommendation list and provide it to the user.

상기 목적을 달성하기 위한 본 발명에 따른 사용자들의 재생 목록 분석을 통한 맞춤형 음악 추천 방법은,Custom music recommendation method through analyzing the playlist of the user according to the present invention for achieving the above object,

음악 데이터로부터 MFCC를 추출하고, 은닉 마코프 모델링(HMM) 방법을 사용하여 음악 모델을 구축하며, 구축한 음악 모델 간의 유사도를 계산하여 측정하는 음악 모델링 및 유사도 비교 단계(Step 1)와,Music modeling and similarity comparing step (Step 1), which extracts MFCC from music data, constructs a music model using Hidden Markov Modeling (HMM) method, calculates and measures similarity between the constructed music models,

상기 음악 모델링 및 유사도 비교 단계에서 구한 음악 유사도를 이용해서 사용자들이 들은 음악들에 대한 음악 유사도 그래프를 만들고, MCL 그래프 클러스터링법에 의해 과거 재생 목록에 존재하는 음악들을 클러스터링하여, 사용자들이 과 거에 들었던 음악 재생 목록을 기반으로 음악들을 유사한 음악끼리 그룹화하는 사용자들의 재생 목록 분석 단계(Step 2) 및,Using the music similarity obtained in the music modeling and similarity comparison step, a music similarity graph for the music heard by the users is made, and music existing in the past playlist is clustered by the MCL graph clustering method. Playlist analysis step (Step 2) of the users of grouping the music similar music based on the playlist, and

다른 사용자들의 재생 목록 분석을 통해 도출된 음악 그룹 중 사용자의 음악 그룹과 얼마나 잘 부합되는지를 평가하고, 평가된 결과를 바탕으로 사용자에게 추천 목록을 제공하는 음악 추천 단계(Step 3)를 갖추어 이루어진다.It is equipped with a music recommendation step (Step 3) that evaluates how well the music group derived from the playlist analysis of other users matches the user's music group and provides a recommendation list to the user based on the evaluated result.

본 발명에 의하면, 음악 장르가 유사한 경우, 사용자가 들은 음악의 장르 비율과 유사한 비율로 추천 목록을 작성하여 사용자에게 제공할 수 있게 된다.According to the present invention, when the music genres are similar, the recommendation list may be prepared and provided to the user at a ratio similar to the genre ratio of the music heard by the user.

본 발명에 따른 방법을 설명하기에 앞서, 본 발명에서 구현하고자 하는 음악 추천 방법의 개요를 설명한다.Prior to describing the method according to the present invention, an outline of a music recommendation method to be implemented in the present invention will be described.

컨텐츠 기반의 음악 분석을 통한 음악 추천 방법은 음악의 성질을 분석하여 추천에 이용하는 방법이다. 이 방법은 사용자의 만족도를 향상시키기 위해 한 사용자가 들었던 음악들에서 음악의 성질을 나타내는 특성 정보를 추출하고, 이를 분석하여 개인의 성향에 맞는 음악을 추천한다. 컨텐츠 기반의 음악 분석과 협업 필터링 추천 기법을 사용하여 사용자가 들었던 음악과 유사한 음악들을 추천해 줄 수 있다.The music recommendation method through content-based music analysis is a method of analyzing the nature of music and using it for recommendation. This method extracts characteristic information representing the characteristics of music from music that a user listens to improve user's satisfaction, and analyzes it to recommend music that suits the individual's inclination. Content-based music analysis and collaborative filtering recommendation techniques can be used to recommend music that is similar to what the user has heard.

본 발명에서는 컨텐츠 기반의 음악 분석을 통해 사용자가 들은 음악을 그룹 화하고, 각 그룹과 유사한 다른 사용자들의 음악 그룹의 정보를 이용하여 사용자의 음악 성향에 맞는 음악을 추천해주는 방법을 제공하게 된다.The present invention provides a method of grouping music listened to by a user through content-based music analysis, and recommending music suitable for a user's music inclination using information of music groups of other users similar to each group.

음악의 특성을 나타내는 요소로는 음의 높낮이, 음색, 리듬, 흐름, 음의 조화 등이 있다(참고문헌 [5] 참조). 사용자가 들은 음악들에 대하여 음악의 특징을 분석함으로써 한 사용자의 음악 선호도를 파악할 수 있다.Elements that represent the characteristics of music include pitch of notes, timbre, rhythm, flow, and harmony of sounds (see Ref. [5]). By analyzing the characteristics of the music with respect to the music heard by the user can determine the music preference of a user.

본 발명에서는 음악 분석에 사용하기 위하여 음악의 특징 정보를 이용하여 음악 모델을 구축한다. 음악 모델 구축을 위한 정보로서 소리의 파형의 성질을 나타내는 MFCC(Mel Frequency Cepstral Coefficients)를 음악으로부터 추출하고, 이를 은닉 마코프 모델링 기법을 사용하여 모델을 만든다. 그리고, 이 모델들이 얼마나 유사한지를 비교하여 클러스터링 단계를 통해 사용자가 들은 음악을 유사한 음악끼리 그룹화한다. 이어, 상기 그룹들과 유사한 다른 사용자의 음악 그룹을 선별하고, 선별 결과를 토대로 사용자가 들은 음악 유형들과 근접한 새로운 음악들을 추천 목록으로 작성하여 사용자에게 제공하게 된다.In the present invention, a music model is constructed using feature information of music for use in music analysis. As the information for constructing the music model, MFCC (Mel Frequency Cepstral Coefficients) representing the characteristics of the waveform of sound is extracted from the music, and the model is created using the hidden Markov modeling technique. Then, how similar these models are, and grouping the similar music to the music heard by the user through the clustering step. Subsequently, music groups of other users similar to the groups are selected, and based on the selection result, new music close to the types of music heard by the user is created as a recommendation list and provided to the user.

상기 MFCC는 음성인식 분야에서 사용되는 대표적인 음파의 성질 중 하나이다(참고문헌[6] 참조). 상기 MFCC가 소리의 파형에 대한 정보를 담고 있어 음악 분석 분야에서도 유용하기 때문에 많은 연구자들이 MFCC를 사용하여 음악을 분석하는 연구를 진행하였다.The MFCC is one of the typical sound waves used in the speech recognition field (see Ref. [6]). Since the MFCC contains information on the waveform of sound and is useful in the field of music analysis, many researchers have conducted a study of analyzing music using the MFCC.

Tzanetakis(참고문헌[7] 참조)은 MFCC를 포함한 여러 음악의 특질 정보들을 이용하여 오디오 신호의 음악적 장르를 분류하는 연구를 하였고, J. J. Aucouturier(참고문헌[8] 참조)도 MFCC를 기반으로 음악의 유사도를 측정하는 연구 를 진행하였다. Tzanetakis (see Ref. [7]) conducted a study to classify the musical genre of an audio signal using characteristics of various music including MFCC, and JJ Aucouturier (see Ref. [8]) was based on MFCC. A study was conducted to measure similarity.

본 발명에서는 음악의 성질을 분석하기 위하여 음악으로부터 추출된 MFCC를 사용한다. 이 추출된 MFCC를 기반으로 음악 간의 유사도를 측정하여 음악 분석 및 추천 과정에 유사도 정보를 이용한다. MFCC 간의 유사도를 직접 구할 수 없기 때문에 추출된 정보를 바탕으로 음악 모델을 구축하기 위해서는 음악의 성질을 추상화하여 이를 모델로 구축할 수 있는 모델링 방법이 필요로 된다. 은닉 마코프 모델링 방법은 시간에 따라 변화하는 시퀀스 정보를 모델링할 수 있는 방법으로, 음악 모델 구축에 적합한 모델링 방법이다(참고문헌 [9] 참조). 여러 연구자들이 MFCC를 사용한 음악 모델링에 은닉 마코프 모델링 기법을 사용하였다. X. Shao(참고문헌 [10] 참조)는 은닉 마코프 모델과 MFCC를 사용하여 음악 장르를 분류하는 연구를 진행하였고, Y. Qi(참고문헌 [11] 참조)은 음악 분석을 위하여 은닉 마코프 모델을 사용하였다.In the present invention, the MFCC extracted from the music is used to analyze the properties of the music. The similarity between the music is measured based on the extracted MFCC, and the similarity information is used for the music analysis and recommendation process. Since the similarity between MFCCs cannot be directly obtained, in order to construct a music model based on the extracted information, a modeling method is needed to abstract the nature of music and build it as a model. The hidden Markov modeling method is a method for modeling sequence information that changes with time, and is a modeling method suitable for building a music model (see Ref. [9]). Several researchers have used hidden Markov modeling techniques to model music using MFCC. X. Shao (see Ref. [10]) conducted a study to classify music genres using hidden Markov models and MFCC, while Y. Qi (see Ref. [11]) used hidden Markov models for music analysis. Used.

이와 같이, 본 발명에서는 사용자가 들은 음악 재생 목록 분석 기반의 음악 추천 방법을 제공한다. 본 발명에 따른 음악 추천 방법은 음악 추천 과정에 사용하기 위하여 소리의 파형의 성질을 나타내는 MFCC(Mel Frequency Cepstral Coefficients)를 음악으로부터 추출하고, 이 추출된 정보를 은닉 마코프 모델링 기법을 사용하여 음악 모델을 구축한다. 하나의 음악은 하나의 은닉 마코프 모델을 통해 모델화되고, 이 음악 모델간의 유사도 비교를 통해 음악 간의 유사도를 파악한다. 이 유사도를 기반으로 사용자가 과거에 들었던 음악들을 유사한 성질의 음악끼리 그룹화를 진행하고, 다른 사용자들의 음악 그룹과 비교하여 유사한 음악 그 룹을 선별한다. 최종적으로 시스템은 다른 사용자의 음악 그룹으로부터 새로운 음악을 선택하여 사용자에게 추천한다.As described above, the present invention provides a music recommendation method based on music playlist analysis heard by a user. The music recommendation method according to the present invention extracts MFCC (Mel Frequency Cepstral Coefficients) representing the waveform of sound from the music for use in the music recommendation process, and extracts the extracted information from the music model using a hidden Markov modeling technique. Build. One music is modeled through one hidden Markov model, and the similarity between the music models is identified by comparing the similarities between the music models. Based on the similarity, music that the user listened to in the past is grouped with music of similar nature, and similar music groups are selected by comparing with music groups of other users. Finally, the system selects new music from another user's music group and recommends it to the user.

본 발명에 따른 방법을 평가하기 위하여 실제 사용자들이 음원 사이트에서 이용한 정보를 이용하여 실험을 진행하였다. 본 발명에 따른 방법은 사용자들의 음악 재생 목록을 분석하여 최종적으로 사용자들에게 추천할 음악 목록을 만들기 때문에, 추천 음악 목록과 사용자의 재생 목록과의 유사성을 분석함으로써 시스템을 평가하였다.   In order to evaluate the method according to the present invention, experiments were conducted using information used by real users on the sound source site. Since the method according to the present invention analyzes the music playlists of the users and finally creates a music list to be recommended to the users, the system is evaluated by analyzing the similarity between the recommended music list and the user's playlist.

이하, 예시도면을 참조하면서 본 발명에 따른 실시예를 상세히 설명한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명에 따른 음악 추천 방법을 구현하는 시스템의 개략 구성도를 나타낸 것이다. 도 1에 도시된 바와 같이, 본 발명에 따른 음악 추천 방법은 음악 모델링 및 유사도 비교 단계(Step 1)와, 사용자들의 재생 목록 분석 단계(Step 2) 및, 음악 추천 단계(Step 3)로 이루어진다.1 is a schematic structural diagram of a system for implementing a music recommendation method according to the present invention. As shown in FIG. 1, the music recommendation method according to the present invention includes a music modeling and similarity comparison step (Step 1), a user playlist analysis step (Step 2), and a music recommendation step (Step 3).

음악 모델링 과정에서 모든 음악을 은닉 마코프 모델링 기법(HMM; Hidden Markov Models)을 사용하여 음악 모델로 구축한다. 이와 같이 구축된 음악 모델은 재생 목록 분석과 추천 과정에서 사용된다. 사용자들의 재생 목록 분석은 모든 사용자들의 과거에 들었던 음악을 유사한 음악끼리 그룹화하는 과정이다. 추천 과정에서는 분석된 사용자의 음악 그룹간의 비교 분석을 기반으로 음악들을 선정하고, 최종 추천 목록을 작성한다.In the music modeling process, all music is constructed as a music model using Hidden Markov Models (HMM). The music model thus constructed is used in playlist analysis and recommendation. The playlist analysis of users is a process of grouping all the musics that have been heard in the past among similar users. In the recommendation process, music is selected based on a comparative analysis between analyzed music groups and a final recommendation list is prepared.

이어, 상기 음악 모델링 및 유사도 비교 단계(Step 1)와, 사용자들의 재생 목록 분석 단계(Step 2) 및, 음악 추천 단계(Step 3)에 대해 각각 상세히 설명한다.Next, the music modeling and similarity comparison step (Step 1), the playlist analysis step (Step 2), and the music recommendation step (Step 3) of the user will be described in detail.

1. 음악 모델링 및 유사도 비교 단계1. Music Modeling and Similarity Comparison

본 발명에서는 음악을 분석하기 위해서 음악 데이터를 사용한다. 그러나, 음악 데이터는 소리의 파형 정보만을 담고 있기 때문에, 이 데이터를 추상화된 모델로서 모델링을 하는 과정이 필요하다. In the present invention, music data is used to analyze music. However, since music data only contains sound waveform information, a process of modeling this data as an abstracted model is required.

도 2는 음악 모델링 및 유사도 비교 단계를 설명하기 위한 도면으로, 음악 모델을 구축하기 위해서 음악으로부터 MFCC를 추출하고, 은닉 마코프 모델링(HMM) 방법을 사용하여 음악 모델을 구축한다. 음악 간의 유사도는 각 음악을 대표하는 모델 사이의 유사도를 비교함으로써 구한다.FIG. 2 is a diagram for explaining music modeling and similarity comparison steps. In order to construct a music model, MFCC is extracted from music, and a music model is constructed using a hidden Markov modeling (HMM) method. The similarity between the music is obtained by comparing the similarity between the models representing each music.

1) 음악 모델 구축1) Build a music model

음악 모델을 구축하기 위하여 음악의 특성 정보를 나타내는 MFCC를 추출한다. MFCC는 많은 지수들로 이루어져 있다. 고차수의 지수가 소리의 스펙트럼 변화에 민감한 반면에 저차수의 지수들은 민감하지 않다.In order to construct a music model, an MFCC representing the characteristic information of music is extracted. The MFCC is made up of many indices. Higher order indices are sensitive to sound spectral changes, while lower order indices are not.

8개의 저차수의 지수만을 사용하여도 효율적으로 음악의 소리 파형 정보를 나타낼 수 있다는 것은 이미 검증(참고문헌 [8] 참조)되었기 때문에, 본 발명에서는 MFCC 중 변화에 둔감한 1차수부터 8차수까지 8개의 지수만을 사용한다.Since it is already verified (see Ref. [8]) that the sound waveform information of music can be efficiently represented by using only eight low-order indices, the present invention is insensitive to changes in the MFCC from the first to the eighth order. Only eight indices are used.

8개의 지수는 음악의 또 다른 특성 중 하나인 음악의 흐름을 고려하기 위하 여 음악을 50ms 길이의 작은 음악 조각들로 나누고, 각 음악 조각들로부터 추출한다. 따라서, 하나의 음악에 대한 MFCC는 8차원의 벡터의 연속인 시퀀스로 표현되고, 본 발명에서는 시퀀스 데이터를 이용하여 모델을 구축하기 위하여 시간에 따라 변화하는 시퀀스 정보를 모델링할 수 있는 은닉 마코프 모델링 방법을 사용하여 음악 모델을 구축한다.The eight exponents divide the music into small pieces of 50ms in length and extract them from each piece of music to take into account one of the other characteristics of music, the flow of music. Therefore, the MFCC for a music is represented by a sequence of 8-dimensional vectors, and in the present invention, a hidden Markov modeling method capable of modeling sequence information that changes over time to construct a model using sequence data. Use to build a music model.

음악 모델을 구축하는 이유는 음악의 유사도를 구하기 위해서이다. 은닉 마코프 모델링 기법은 입력인 시퀀스 정보의 순차적인 변화를 학습하여 모델을 생성한다(참고문헌 [12] 참조). 음악의 음파로부터 추출한 시퀀스 정보들에 대한 유사도를 직접 계산하기 어렵기 때문에 하나의 음악에서 추출한 음악 시퀀스에 대해서 마코프 모델을 만들고, 이 모델들 간의 유사 정도를 계산하여 음악의 유사도를 구한다. 모든 음악 사이의 유사도를 구하기 위하여 각 음악 별로 하나의 음악 모델을 구축한다.The reason for building the music model is to find the similarity of the music. Hidden Markov modeling techniques generate models by learning sequential changes in sequence information as input (see Ref. [12]). Since it is difficult to directly calculate the similarity of the sequence information extracted from the sound waves of music, a Markov model is created for the music sequence extracted from one music, and the similarity between the models is calculated to calculate the similarity of the music. In order to find the similarity among all the music, one music model is constructed for each music.

2) 유사도 측정2) similarity measurement

유사도 측정은 음악 간의 유사도를 측정하는 과정이다. 음악 사이의 유사도는 전 단계에서 구축한 음악 모델 간의 유사 정도를 계산하여 측정한다. 은닉 마코프 모델의 특징 중 하나인 모델과 가장 유사한 관찰 시퀀스를 만들 수 있다는 점을 이용하여 은닉 마코프 모델 사이의 유사도를 구할 수 있다. 이 모델 사이의 유사도를 구하는 수식을 변형하여 음악 유사도를 구하는 수식 (1)을 정의한다. Similarity measurement is a process of measuring similarity between music. The similarity between music is measured by calculating the similarity between the music models constructed in the previous stage. The similarity between the hidden Markov models can be obtained by taking advantage of the fact that one of the features of the hidden Markov model is the observation sequence that is most similar to the model. The equation for calculating the similarity between the models is modified to define the equation (1) for obtaining the musical similarity.

Figure 112009010654919-pat00001
---- (1)
Figure 112009010654919-pat00001
---- (One)

수식 (1)에서 S ij i 번째 음악과 j 번째 음악 간의 유사도를 의미하고, 이는 두 모델 사이의 유사도를 측정하여 구한다. H i H j 는 각각 i 번째와 j 번째 음악 모델을 의미하고, O i O j 는 각각의 모델에 의해서 생성된 관찰 시퀀스이다. 모델 자신이 생성한 관찰 시퀀스가 모델과 일치할 확률과 다른 모델에서 생성한 관찰 시퀀스가 일치할 확률의 차를 시퀀스의 길이에 따른 확률 값의 차이를 없애기 위해 시퀀스의 길이인 N 으로 나누는 과정을 통해 두 모델 사이의 유사 정도를 구한다. 두 모델이 유사하다면 서로의 모델이 생성한 관찰 시퀀스가 다른 모델과 일치할 확률이 높아지기 때문에 H i H j 가 유사할수록 S ij 의 값은 더 작은 값을 갖는다.In Equation (1), S ij means the similarity between the i- th music and the j- th music, which is obtained by measuring the similarity between the two models. H i and H j denotes the i-th and j-th music model, respectively, and O i and O j is an observation sequence generated by each model. By dividing the difference between the probability that the observation sequence generated by the model itself matches the model and the probability that the observation sequence generated in the other model matches the model, divided by N , the length of the sequence, to eliminate the difference in the probability value according to the length of the sequence. Find the degree of similarity between the two models. If both models are similar because of the observed sequence of a model is created of each other becomes higher probability of matching with other models As the H i and H j similar to the value of the S ij has a smaller value.

음악의 유사도가 시스템에서 다른 과정에 사용되기 때문에 각각의 음악에 대하여 다른 모든 음악과의 유사도를 구한다. 본 발명에서는 i 번째 음악과 나머지 음악 간의 유사도를 수식 (2)과 같은 유사도 벡터로 표현한다.Since the similarity of music is used in different processes in the system, the similarity with all other music is obtained for each music. In the present invention, the similarity between the i- th music and the rest of the music is expressed by a similarity vector as shown in Equation (2).

Figure 112009010654919-pat00002
---- (2)
Figure 112009010654919-pat00002
---- (2)

수식 (2)에서 V i i 번째 음악의 유사도 벡터를 나타내고, |M| 은 전체 데이터베이스에 있는 모든 음악의 수를 나타낸다. 유사도 벡터는 데이터베이스에 저장되고, 이 벡터는 사용자의 음악 선호도를 분석하고 음악을 추천하는 과정에서 사용된다.In formula (2), V i represents a similarity vector of the i th music, and | M | Represents the number of all music in the entire database. The similarity vector is stored in a database, which is used in analyzing a user's music preferences and recommending music.

2. 사용자들의 재생 목록 분석 단계2. User Playlist Analysis Stage

본 단계는 사용자들이 과거에 들었던 음악 재생 목록을 기반으로 음악들을 유사한 음악끼리 그룹화하는 단계이다. 본 발명에서는 그룹화를 위해 전 단계에서 구한 음악 유사도를 이용하여 사용자들이 들은 음악들에 대한 음악 유사도 그래프를 만들고, MCL 그래프 클러스터링(참고문헌 [13] 참조) 방법을 이용하여 과거 재생 목록에 존재하는 음악들을 클러스터링한다.This step is to group the music together with similar music based on the music playlist that users have listened to in the past. In the present invention, using the music similarity obtained in the previous step for grouping, a music similarity graph for the music heard by users is made, and music existing in the past playlist using the MCL graph clustering method (see Ref. [13]) is used. Cluster them.

1) 음악 유사도 그래프1) Music Similarity Graph

음악 유사도 그래프는 사용자의 재생 목록에 있는 음악 간의 유사도 관계를 나타낸다. 사용자가 들은 음악을 클러스터링 하기 위해 각 음악 간의 관계에 대한 정보를 필요로 하게 되므로 전 단계에서 구한 음악 유사도를 사용하여 도 3과 같은 음악 유사도 그래프를 만든다. 도 3은 a라는 사용자가 들은 6곡의 음악에 대한 음악 유사도 그래프의 예이다. 그래프의 노드인 Iai는 각 음악을 의미하고, 노드의 연결선의 강도는 두 음악 간의 유사도를 의미한다.The music similarity graph shows the similarity relationship between the music in the user's playlist. In order to cluster the music heard by the user, information about the relationship between each music is needed. Thus, a music similarity graph as shown in FIG. 3 is created using the music similarity obtained in the previous step. 3 is an example of a music similarity graph for six pieces of music heard by a user. The node of the graph, Iai, represents each music, and the strength of the node's connecting line represents the similarity between the two musics.

2) 음악 클러스터링2) Music Clustering

사용자가 들은 음악들을 유사한 음악끼리 그룹 짓기 위하여 음악 유사도 그래프를 사용하여 사용자가 들었던 음악들을 클러스터링한다. 클러스터링 과정에서 사용자가 여러 가지 유형의 음악들을 들을 수도 있기 때문에 분석의 정확성을 향상시키기 위한 클러스터링 기법이 필요하다.The music similarity graph is used to cluster the music that the user has listened to in order to group the music that the user has listened to. In the clustering process, the user may listen to various types of music, so a clustering technique is needed to improve the accuracy of the analysis.

그러나, 본 발명에 클러스터링 기법을 적용할 때, 정확성 향상 외에도 고려해야 할 또 다른 문제가 있다. 효율적으로 음악들을 클러스터링 하기 위해서는 음악들을 얼마나 많은 수의 클러스터로 나누어야 할지를 정하여야 한다. 대부분의 클러스터링 기법은 미리 클러스터의 수를 정해야만 한다. 예를 들어 보편적인 기법 중 하나인 K-mean 알고리즘의 경우 클러스터의 수를 나타내는 K를 고정된 값으로 미리 정해야만 한다. 이는 동적으로 클러스터의 수를 변경해야 하는 시스템에서 사용하기에 적합한 알고리즘이 아니다.However, when applying the clustering technique to the present invention, there is another problem to consider in addition to improving the accuracy. In order to cluster music efficiently, it is necessary to determine how many clusters music should be divided. Most clustering techniques require the number of clusters to be determined in advance. For example, the K-mean algorithm, one of the common techniques, requires that K, which represents the number of clusters, be set to a fixed value in advance. This is not an appropriate algorithm for use in systems that need to dynamically change the number of clusters.

따라서, 동적으로 클러스터의 수를 조절해 나가며 효율적으로 음악을 클러스터링 할 수 있는 알고리즘이 필요하다. 기존에 제안한 음악 추천 시스템(참고문헌 [14] 참조)에서는 동적으로 클러스터의 수를 변경시킬 수 있는 있는 향상된 K-means 알고리즘을 시스템에 적용하였다. 이 클러스터링 기법은 클러스터의 수를 동적으로 변경시킬 수는 있으나 사용자가 들은 음악의 수가 증가하면 클러스터링에 이용되는 벡터 값이 차원이 증가하는 단점으로 많은 음악을 사용자가 들었을 경우 효율적으로 클러스터링을 하지 못하는 문제점이 존재하였다.Therefore, there is a need for an algorithm capable of efficiently clustering music by dynamically adjusting the number of clusters. The proposed music recommendation system (see Ref. [14]) applies an advanced K-means algorithm to the system that can dynamically change the number of clusters. This clustering technique can change the number of clusters dynamically, but the vector value used for clustering increases in dimension as the number of music heard by the user increases, which makes it impossible to efficiently cluster when many users listen to the music. Was present.

본 발명에서는 동적으로 클러스터의 수의 동적인 조절과 음악의 수와 관계없이 효율적인 클러스터링을 위하여 MCL 그래프 클러스터링 기법을 적용하였다.In the present invention, the MCL graph clustering technique is applied to dynamically adjust the number of clusters and to efficiently cluster regardless of the number of music.

상기 MCL 그래프 클러스터링 기법은 그래프의 노드간의 연결선의 강도를 기반으로 하여 높은 강도를 가진 연결선을 제외한 연결선을 제거하는 방법으로 유사성이 높은 노드끼리 그룹을 만들어 주는 클러스터링 방법이다. 유전자 정보 분석 분야에 적용되는 기법을 음악 유사도 정보를 이용하여 그룹화가 가능하게 적용하였다.The MCL graph clustering technique is a clustering method for creating groups of similar nodes by removing a connection line except for a connection line having a high strength based on the strength of the connection line between nodes of the graph. Techniques applied in the field of genetic information analysis were applied to enable grouping using music similarity information.

3. 음악 추천 단계3. Music Recommendation Steps

본 발명에 따른 음악 추천 방법의 최종 목적은 사용자의 재생 목록을 기반으로 사용자에게 적합한 음악을 추천하는 것이다. 본 단계에서는 다른 사용자들의 재생 목록 분석을 통해 도출된 음악 그룹 중 사용자의 음악 그룹과 얼마나 잘 부합되는지를 평가하고, 평가된 결과를 바탕으로 사용자에게 추천 목록을 제공한다. 두 음악 그룹 간의 유사도를 수식 (3)과 같이 정의한다.The final purpose of the music recommendation method according to the present invention is to recommend music suitable for the user based on the user's playlist. In this step, it is evaluated how well the music group derived from the analysis of the playlists of other users matches with the music group of the user, and provides a recommendation list to the user based on the evaluated results. The similarity between two music groups is defined as shown in Equation (3).

Figure 112009010654919-pat00003
---- (3)
Figure 112009010654919-pat00003
---- (3)

수식 (3)에서 C 는 하나의 음악 그룹을 의미하고, C sim (C n , C m ) 은 음악 그룹 C n C m 의 유사도를 나타내는 값이다. Max sim (I i , C m ) 은 한 그룹 안에 속해 있는 한 곡의 음악이 다른 그룹 안에 있는 음악들 중 가장 유사한 음악의 유사도를 의미하고, N 은 두 그룹에 속하는 음악의 수 중 더 작은 값을 나타내는 값이다. 사용자가 많이 들은 음악 순서로 N 개의 음악에 대한 유사도의 값에 대한 평균이 C sim (C n , C m ) 의 값이 되기 때문에 그룹 간의 유사도는 두 그룹 안에 유사한 음악이 많을수록 값이 높은 값을 갖는다. 본 발명은 사용자의 각 음악 그룹 별로 C sim 값이 가장 높은 그룹들을 선별하고, 그 그룹들 안에 있는 음악 중 사용자가 듣지 않은 새로운 음악들을 추천 목록으로 작성하여 제공한다. In Equation (3), C means one music group, and C sim (C n , C m ) is a value representing the similarity between music groups C n and C m . Max sim (I i , C m ) is the similarity of the music in one group with the most similar music among the other group, and N is the smaller of the number of music in the two groups. The value to indicate. Since the average of the similarity values for N pieces of music is the value of C sim (C n , C m ) , the similarity between groups is higher when there are more similar pieces of music in the two groups. . The present invention selects the groups having the highest C sim value for each music group of the user, and provides a list of new music that the user does not listen among in the groups in the recommendation list.

실험 및 평가Experiment and evaluation

실험을 위해 본 발명에서는 시스템에 대해서 실제 사용자들이 이용한 음악 재생 목록들을 이용하여 실험을 진행하였다. 음악 재생 목록 데이터는 음원 제공 사이트인 Last.fm(참고문헌 [15] 참조)의 사용자들의 재생 목록이다. 실험에 사용된 데이터는 786명의 재생 목록과 3727곡의 음악이고, 786명의 재생 목록에 속해 있는 음악의 수는 최소 10곡에서 최대 50곡이다. 본 발명에서는 음악의 장르를 구분하는 메타데이터를 추천 과정에서 이용하지 않지만, 사용자가 들은 음악에 따라 얼마나 정확한 음악을 추천하는지 평가하기 위하여 실험에서는 음악의 장르 정보를 사용하였다. 장르 정보는 각 음악들에 대해서 Last.fm의 사용자들이 기술한 태그 정보에 기반하기 때문에, 전문가 의견이 반영된 메타데이터가 아닌 실제 사용 자들이 구분해 놓은 정보이다. 실험에 사용하고 있는 장르는 Wikipedea(참고문헌 [16] 참조)에 정의된 음악의 장르 구분을 기준으로 사용하였고, 사용자가 들은 많이 들은 장르인 일렉트로닉(electronic), 메탈(metal), 재즈(jazz), 팝(pop), 록(rock)으로 크게 5개의 장르와, 그 외 나머지 장르를 하나로 묶어서 구분하였다. 3727곡의 음악은 16kHz의 모노(mono) 샘플 데이터이고, 이 음악들로부터 MFCC를 추출하여 음악 모델을 구축한다.For the experiment, the experiment was conducted using music playlists used by real users for the system. The music playlist data is a playlist of users of Last.fm (see Ref. [15]) which is a sound source providing site. The data used in the experiment was 786 playlists and 3727 songs, and the number of songs in the 786 playlists was at least 10 and at most 50. In the present invention, the metadata that distinguishes the genre of music is not used in the recommendation process, but in order to evaluate how accurate the music is recommended according to the music heard by the user, the genre information of the music is used in the experiment. Since genre information is based on tag information described by users of Last.fm for each music, the information is classified by actual users, not metadata reflecting expert opinions. The genre used in the experiment was based on the genre classification of music defined in Wikipedea (see Ref. [16]), and electronic, metal, and jazz, which were heard a lot by users, were used. The five genres, and the rest of the genres, were grouped into one, pop and rock. The 3727 pieces of music are mono sample data of 16 kHz, and the MFCC is extracted from these pieces of music to build a music model.

실험은 사용자가 들은 음악의 장르 비율에 따라 시스템이 추천하는 음악의 장르비율을 확인하는 실험을 진행하였다. 가장 많이 들은 장르 별로 사용자들을 집합으로 구분하여 사용자들에게 시스템이 추천하는 음악의 장르 비율을 확인하였다. 예를 들어 재즈(Jazz)를 많이 들은 사용자들을 하나의 실험 집합으로 선정하여 집합 안에 있는 모든 사용자들이 들은 장르 비율의 평균과 시스템이 추천하는 장르 비율의 평균을 비교하는 방법으로 비율을 확인하였다.The experiment was conducted to check the genre ratio of music recommended by the system according to the genre ratio of music heard by the user. By classifying the users by the genre they listened to the most, we checked the genre ratio of music recommended by the system to users. For example, we selected the users who listened to Jazz as a test set and checked the ratio by comparing the average of the genre ratios heard by all users in the set with the average genre ratio recommended by the system.

표 1은 재생 목록 안에 일렉트로닉(electronic) 음악의 비율이 높은 사용자 집합에 대한 실험 결과를 정리한 표이다.Table 1 summarizes the experimental results for a set of users with a high percentage of electronic music in the playlist.

표 1 일렉트로닉 사용자 집합에 대한 추천 결과Table 1 Suggested Results for Electronic User Set

ElectronicElectronic MetalMetal JazzJazz PopPop RockRock 그 외etc LGLG 95.3%95.3% 0%0% 0%0% 1%One% 3.4%3.4% 0.5%0.5% RGRG 67.1%67.1% 1.1%1.1% 8.9%8.9% 4.1%4.1% 12.3%12.3% 6.5%6.5%

표 1에서 LG는 사용자가 들은 음악의 장르를 의미하고, RG는 시스템이 추천 한 음악의 장르를 의미한다. 상기 사용자 집합에 속한 사용자들의 재생 목록에는 평균적으로 95.3%의 비율로 일렉트로닉(electronic) 음악이 포함되어 있었고, 이 집합에 속한 사용자들에게 시스템이 추천한 음악 목록에는 평균적으로 67.1%의 일렉트로닉(electronic) 음악이 포함되어 있었다. 사용자들이 들은 비율과 완전하게 동일하지는 않지만, 추천 목록 안에는 높은 비율로 일렉트로닉(electronic) 음악이 포함되었다.In Table 1, LG refers to the genre of music heard by the user, and RG refers to the genre of music recommended by the system. On average, the playlists of users in the user set included electronic music at an average rate of 95.3%, and the music list recommended by the system to users in this set averaged 67.1% electronic. Music was included. Although not exactly the same as the rate they heard, the recommendation list contained a high percentage of electronic music.

다른 사용자 집합에 대한 시스템의 추천에 대한 결과는 표 2, 표 3, 표 4, 표 5와 같다.The results of the system's recommendation for different user sets are shown in Tables 2, 3, 4, and 5.

표 2 메탈 사용자 집합에 대한 추천 결과Table 2 Suggested Results for Metal User Set

ElectronicElectronic MetalMetal JazzJazz PopPop RockRock 그 외etc LGLG 0%0% 77.7%77.7% 0%0% 0%0% 21.9%21.9% 0.4%0.4% RGRG 0%0% 43.6%43.6% 0%0% 6%6% 50.4%50.4% 0%0%

표 3 재즈 사용자 집합에 대한 추천 결과Table 3 Suggested Results for the Jazz User Set

ElectronicElectronic MetalMetal JazzJazz PopPop RockRock 그 외etc LGLG 0.8%0.8% 0%0% 82.8%82.8% 2.3%2.3% 0.9%0.9% 13.2%13.2% RGRG 7%7% 2%2% 80.1%80.1% 1.8%1.8% 8.3%8.3% 0.8%0.8%

표 4 팝 사용자 집합에 대한 추천 결과Table 4 Recommended Results for Pop User Set

ElectronicElectronic MetalMetal JazzJazz PopPop RockRock 그 외etc LGLG 0%0% 0%0% 0%0% 98.8%98.8% 0.2%0.2% 1%One% RGRG 1%One% 2.8%2.8% 1.2%1.2% 65.1%65.1% 10.9%10.9% 19%19%

표 5 록 사용자 집합에 대한 추천 결과Table 5 Suggested Results for Lock Set

ElectronicElectronic MetalMetal JazzJazz PopPop RockRock 그 외etc LGLG 0%0% 0.1%0.1% 0%0% 1.3%1.3% 98.3%98.3% 0.3%0.3% RGRG 1%One% 6.7%6.7% 1.7%1.7% 6.6%6.6% 77.6%77.6% 6.4%6.4%

나머지 결과에 대한 음악 장르 비율도 메탈(metal) 사용자 집합의 경우를 제외하고는 사용자 집합 별 사용자들이 들은 음악의 평균적인 장르 비율과 유사함을 알 수 있다.The music genre ratio for the rest of the results is similar to the average genre ratio of music heard by users by user set except for the metal user set.

표 2의 결과에서 알 수 있는 바와 같이, 본 발명에 따른 시스템은 메탈(metal) 음악과 록(rock) 음악에 대해서 음악의 들은 비율과 다르게 음악을 추천해 주고 있다. 이 사용자 집합의 평균 메탈(metal) 음악을 들은 비율은 77.7%이고, 록(rock) 음악은 21.9%이지만, 추천된 평균 음악 장르 비율은 각각 43.6%와 56.4%이다. 이는 본 발명에서는 메탈(metal) 음악과 록(rock)을 유사하게 구하기 때문인데, 실제 사용자들도 하나의 음악에 대해서 록(rock)과 메탈(metal)이라는 태그를 동시에 다는 경우가 빈번했다.As can be seen from the results of Table 2, the system according to the present invention recommends music differently from the ratio of music to metal music and rock music. The average metal music rate for this user set was 77.7% and rock music was 21.9%, but the recommended average music genres were 43.6% and 56.4%, respectively. This is because in the present invention, metal music and rock are similarly obtained, and real users frequently attach rock and metal tags to a single music at the same time.

도 4는 각 사용자 집합에 대한 음악 비율과 추천 결과에 대한 음악 비율 분포를 나타낸 도면이다. 도 4에서 나타낸 바와 같이 본 발명에 따른 음악 추천 방법은 사용자들이 들은 음악의 유형을 파악하여 그 유형에 맞는 음악을 추천 목록으로 작성하여 제공한다.4 is a diagram illustrating a music ratio distribution for a music ratio and a recommendation result for each user set. As shown in FIG. 4, the music recommendation method according to the present invention grasps the type of music heard by the users, and creates and provides a music suitable for the type as a recommendation list.

이상과 같이 본 발명에서는 사용자의 음악 선호도를 고려한 음악 추천 시스템을 제공하고, 이를 위해 MFCC와 은닉 마코프 모델링 기법을 이용하여 음악 모델을 구축하며, 이 모델을 통해 음악 간의 유사도를 측정한다. 이 유사도를 사용하 여 사용자가 과거에 들었던 음악을 유사한 음악끼리 그룹화 하고, 다른 사용자들의 음악 그룹과의 비교를 통해 최종적으로 사용자의 재생 목록의 음악 성향과 유사한 새로운 음악을 추천 목록을 생성하여 제공하게 된다.As described above, the present invention provides a music recommendation system in consideration of music preferences of users, and for this purpose, a music model is constructed using MFCC and hidden Markov modeling techniques, and the similarity between music is measured through this model. This similarity is used to group music that users have listened to in the past to similar music groups, and to compare and compare music groups with other users to finally create and provide a recommendation list of new music similar to the music propensity of the user's playlist. do.

한편, 본 발명은 상기한 실시예로 한정되는 것은 아니고, 본 발명의 요지를 벗어나지 않는 범위 내에서 다양하게 변형하여 실시할 수 있음은 물론이다.In addition, this invention is not limited to the above-mentioned Example, Of course, it can change and implement variously within the range which does not deviate from the summary of this invention.

참 고 문 헌references

[1] G. Linden, B. Smith, and J. York, "Amazon.com Recommendations: Item-to-item Collaborative Filtering", IEEE Internet Computing, Vol. 7, pp. 76-80, 2003.[1] G. Linden, B. Smith, and J. York, "Amazon.com Recommendations: Item-to-item Collaborative Filtering", IEEE Internet Computing, Vol. 7, pp. 76-80, 2003.

[2] K. Kaji, K. Hirata, and K. Nagao, "A Music Recommendation System Based on Annotation about Listeners' Preferences and Situations", the 1st International Conference on Automated Production of Cross Media Content for Multi-Channel Distribution, pp. 231-234, 2005.[2] K. Kaji, K. Hirata, and K. Nagao, "A Music Recommendation System Based on Annotation about Listeners' Preferences and Situations", the 1st International Conference on Automated Production of Cross Media Content for Multi-Channel Distribution, pp . 231-234, 2005.

[3] B. Logan, "Music Recommendation from Song Sets", the 5th International Conference on Music Information Retrieval, 2004.[3] B. Logan, "Music Recommendation from Song Sets", the 5th International Conference on Music Information Retrieval, 2004.

[4] P. Cano, M. Koppenberger, and N. Wack, "Content-based Music Audio Recommendation", the 13th annual ACM International Conference on Multimedia, 2005.[4] P. Cano, M. Koppenberger, and N. Wack, "Content-based Music Audio Recommendation", the 13th annual ACM International Conference on Multimedia, 2005.

[5] N. Scaringella, G. Zoia, and D. Mlynek, "Automatic Genre Classification of Music Content", IEEE Signal Process Magazine, Vol.23, No. 2, pp. 133-141, 2007.[5] N. Scaringella, G. Zoia, and D. Mlynek, "Automatic Genre Classification of Music Content", IEEE Signal Process Magazine, Vol. 23, No. 2, pp. 133-141, 2007.

[6] B. Logan, "Mel Frequency Cepstral Coefficients for music modeling", The First International Symposium on Music Information Retrieval, 2000.[6] B. Logan, "Mel Frequency Cepstral Coefficients for music modeling", The First International Symposium on Music Information Retrieval, 2000.

[7] G. Tzanetakis, "Musical Genre Classification of Audio Signals", IEEE Transactions on Speech and Audio Processing, Vol. 10, No. 5, pp. 293-302, 2002. [7] G. Tzanetakis, "Musical Genre Classification of Audio Signals", IEEE Transactions on Speech and Audio Processing, Vol. 10, No. 5, pp. 293-302, 2002.

[8] J.J. Aucouturier and Francois Pachet, "Music Similarity Measures: What's the Use?", International Symposium on Music Information Retrieval, pp. 157-163, 2002.[8] J.J. Aucouturier and Francois Pachet, "Music Similarity Measures: What's the Use?", International Symposium on Music Information Retrieval, pp. 157-163, 2002.

[9] L.R. Rabiner, "Fundamentals of speech recognition", Prentice-Hall, 1993.[9] L.R. Rabiner, "Fundamentals of speech recognition", Prentice-Hall, 1993.

[10] X. Shao, C. Xu, and M.S. Kankanhalli, "Unsupervised Classification of Music Genre Using Hidden Markov Model", IEEE International Conference on multimedia and expo, Vol. 3, pp. 2023-2026, 2004.[10] X. Shao, C. Xu, and M.S. Kankanhalli, "Unsupervised Classification of Music Genre Using Hidden Markov Model", IEEE International Conference on multimedia and expo, Vol. 3, pp. 2023-2026, 2004.

[11] Y. Qi, John W. Paisley, and L. Carin, "Music Analysis Using Hidden Markov Mixture Models", IEEE Transactions on Signal Processing, Vol. 55, No. 11, pp.5209-5224, 2007.[11] Y. Qi, John W. Paisley, and L. Carin, "Music Analysis Using Hidden Markov Mixture Models", IEEE Transactions on Signal Processing, Vol. 55, No. 11, pp. 5209-5224, 2007.

[12] L. Rabiner and B. Juang, "An Introduction to Hidden Markov Models", ASSP Magazine, Vol. 3, pp. 4-16, 1986.[12] L. Rabiner and B. Juang, "An Introduction to Hidden Markov Models", ASSP Magazine, Vol. 3, pp. 4-16, 1986.

[13] S. V. Dongen, "Graph Clustering by Flow Simulation", PhD thesis, University of Utrecht, 2000. [13] S. V. Dongen, "Graph Clustering by Flow Simulation", PhD thesis, University of Utrecht, 2000.

[14] K.S. Kim, D.H Lee, T.B Yoon, J.H Lee, "A Music Recommendation System Based on Personal preference Analysis", The First International Conference on Applications of Digital Inforemation and Web Technologies 2008, pp. 102-106, 2008[14] K.S. Kim, D.H Lee, T.B Yoon, J.H Lee, "A Music Recommendation System Based on Personal preference Analysis", The First International Conference on Applications of Digital Inforemation and Web Technologies 2008, pp. 102-106, 2008

[15] http://www.last.fm[15] http://www.last.fm

[16] http://www.wikipedia.org[16] http://www.wikipedia.org

도 1은 본 발명에 따른 음악 추천 방법을 구현하는 시스템의 개략 구성도,1 is a schematic structural diagram of a system implementing a music recommendation method according to the present invention;

도 2는 음악 모델링 및 유사도 비교 단계를 설명하기 위한 도면,2 is a view for explaining music modeling and similarity comparison step;

도 3은 a라는 사용자가 들은 6곡의 음악에 대한 음악 유사도 그래프,3 is a music similarity graph for six pieces of music heard by a user;

도 4는 각 사용자 집합에 대한 음악 비율과 추천 결과에 대한 음악 비율 분포를 나타낸 도면이다.4 is a diagram illustrating a music ratio distribution for a music ratio and a recommendation result for each user set.

Claims (8)

음악 데이터로부터 MFCC를 추출하고, 은닉 마코프 모델링(HMM) 방법을 사용하여 음악 모델을 구축하며, 구축한 음악 모델 간의 유사도를 계산하여 측정하는 음악 모델링 및 유사도 비교 단계(Step 1)와;A music modeling and similarity comparing step (Step 1) of extracting MFCC from music data, constructing a music model using a hidden Markov modeling (HMM) method, and calculating and measuring similarity between the constructed music models; 상기 음악 모델링 및 유사도 비교 단계에서 구한 음악 유사도를 이용해서 사용자들이 들은 음악들에 대한 음악 유사도 그래프를 만들고, MCL 그래프 클러스터링법에 의해 과거 재생 목록에 존재하는 음악들을 클러스터링하여, 사용자들이 과거에 들었던 음악 재생 목록을 기반으로 음악들을 유사한 음악끼리 그룹화하는 사용자들의 재생 목록 분석 단계(Step 2) 및;Using the music similarity obtained in the music modeling and similarity comparison step, a music similarity graph for the music heard by the users is made, and music existing in the past playlist is clustered by the MCL graph clustering method, so that the user has listened to the past. A playlist analysis step (Step 2) of users for grouping similar music to music based on the playlist; 상기 음악 모델링 및 유사도 비교 단계에서 구한 음악 유사도를 이용해서 다른 사용자들이 들은 음악들에 대한 음악 유사도 그래프를 만들고, MCL 그래프 클러스터링법에 의해 과거 재생 목록에 존재하는 음악들을 클러스터링하여, 다른 사용자들이 과거에 들었던 음악 재생 목록을 기반으로 음악들을 유사한 음악끼리 그룹화하는 다른 사용자들의 재생 목록 분석을 통해 그룹화된 음악 그룹과, 사용자의 음악 그룹과의 유사도를 평가하고, 평가된 유사도 결과를 바탕으로 사용자에게 추천 목록을 제공하는 음악 추천 단계(Step 3)를 갖추어 이루어지되,By using the music similarity obtained in the music modeling and similarity comparison step, a music similarity graph for the music heard by other users is created, and the music existing in the past playlist is clustered by the MCL graph clustering method, so that the other users in the past Based on the music playlists that you have listened to, the user analyzes the playlists of other users that group similar songs together, and evaluates the similarity between the grouped music group and the user's music group, and recommends the list to the user based on the evaluated similarity results. Music recommendation step (Step 3) to provide 재생 목록 분석을 통해 그룹화된 다른 사용자들의 음악 그룹과, 사용자의 음악 그룹 간의 유사도가,The similarity between the music group of other users grouped through playlist analysis and the user's music group,
Figure 112011011134051-pat00011
Figure 112011011134051-pat00011
(여기서, C 는 하나의 음악 그룹, Csim(Cn, Cm) 은 음악 그룹 Cn Cm 의 유사도, Maxsim(Ii, Cm) 은 한 그룹 안에 속해 있는 한 곡의 음악이 다른 그룹 안에 있는 음악들 중 가장 유사한 음악의 유사도, N 은 두 그룹에 속하는 음악의 수 중 더 작은 값을 나타내는 값임)(Where C is a music group, C sim (C n , C m ) is the similarity between music groups C n and C m , and Max sim (I i , C m ) is a piece of music in a group The similarity of the most similar music among the music in the other group, where N is the smaller value of the number of music belonging to the two groups) 에 의해 정의되는 것을 특징으로 하는 사용자들의 재생 목록 분석을 통한 맞춤형 음악 추천 방법.Customized music recommendation method through the analysis of the playlist of the user, characterized in that defined by.
삭제delete 삭제delete 삭제delete 제1항에 있어서, 상기 음악 유사도 그래프는 그 각 노드가 각 음악을 의미하고, 노드의 연결선의 강도가 두 음악 간의 유사도를 의미하는 것을 특징으로 하는 사용자들의 재생 목록 분석을 통한 맞춤형 음악 추천 방법.The method of claim 1, wherein the music similarity graph indicates that each node represents each music, and the strength of the connection line of the node means the similarity between the two musics. 제1항에 있어서, 상기 MCL 그래프 클러스터링법이, 상기 음악 유사도 그래프의 노드 간의 연결선의 강도를 토대로 유사성이 있는 노드끼리 그룹을 만들도록 된 것을 특징으로 하는 사용자들의 재생 목록 분석을 통한 맞춤형 음악 추천 방법.The method of claim 1, wherein the MCL graph clustering method is configured to create groups of similar nodes based on the strength of the connection line between the nodes of the music similarity graph. . 삭제delete 삭제delete
KR1020090014307A 2009-02-20 2009-02-20 How to recommend customized music through analyzing playlists of users KR101057919B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090014307A KR101057919B1 (en) 2009-02-20 2009-02-20 How to recommend customized music through analyzing playlists of users

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090014307A KR101057919B1 (en) 2009-02-20 2009-02-20 How to recommend customized music through analyzing playlists of users

Publications (2)

Publication Number Publication Date
KR20100095166A KR20100095166A (en) 2010-08-30
KR101057919B1 true KR101057919B1 (en) 2011-08-19

Family

ID=42758947

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090014307A KR101057919B1 (en) 2009-02-20 2009-02-20 How to recommend customized music through analyzing playlists of users

Country Status (1)

Country Link
KR (1) KR101057919B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190027684A (en) * 2017-09-07 2019-03-15 서울대학교산학협력단 Method for automatically generating music playlist by analyzing user prior information
KR102014639B1 (en) 2018-02-22 2019-10-21 최혜경 System and Method for customizing music creator matching service based on keyword
KR20230127530A (en) 2022-02-25 2023-09-01 (주)더바통 A Recommendation Method For Music Score And Concerto Gathering And Device Thereof

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130124584A1 (en) * 2011-11-16 2013-05-16 Google Inc. Start page for a user's personal music collection
KR102073136B1 (en) * 2013-07-30 2020-03-02 주식회사 케이티 Apparatus for recommending music contents and method thereof
KR20150121889A (en) 2014-04-22 2015-10-30 에스케이플래닛 주식회사 Apparatus for providing related image of playback music and method using the same
KR20200124215A (en) * 2018-02-26 2020-11-02 라인플러스 주식회사 Playlist recommendation method and system based on growth graph
KR102222935B1 (en) * 2019-04-02 2021-03-04 성균관대학교산학협력단 Playlist Recommendation Method Using Collaborative Autoencoders
CN110489659A (en) * 2019-07-18 2019-11-22 平安科技(深圳)有限公司 Data matching method and device
KR102301614B1 (en) * 2019-08-09 2021-09-14 주식회사 샵캐스트 Method for providing music service in store
KR20230016100A (en) 2021-07-22 2023-02-01 성균관대학교산학협력단 Method for making recommendation list

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190027684A (en) * 2017-09-07 2019-03-15 서울대학교산학협력단 Method for automatically generating music playlist by analyzing user prior information
KR101968206B1 (en) * 2017-09-07 2019-04-11 서울대학교산학협력단 Method for automatically generating music playlist by analyzing user prior information
KR102014639B1 (en) 2018-02-22 2019-10-21 최혜경 System and Method for customizing music creator matching service based on keyword
KR20230127530A (en) 2022-02-25 2023-09-01 (주)더바통 A Recommendation Method For Music Score And Concerto Gathering And Device Thereof

Also Published As

Publication number Publication date
KR20100095166A (en) 2010-08-30

Similar Documents

Publication Publication Date Title
KR101057919B1 (en) How to recommend customized music through analyzing playlists of users
Logan et al. A Music Similarity Function Based on Signal Analysis.
Fu et al. A survey of audio-based music classification and annotation
Burred et al. Hierarchical automatic audio signal classification
Typke et al. A survey of music information retrieval systems
Typke Music retrieval based on melodic similarity
Sheikh Fathollahi et al. Music similarity measurement and recommendation system using convolutional neural networks
US20120125178A1 (en) Scalable music recommendation by search
US20080275904A1 (en) Method of Generating and Methods of Filtering a User Profile
US20120054238A1 (en) Music search apparatus and method using emotion model
JP2009508156A (en) Music analysis
US20170054779A1 (en) Media Feature Determination for Internet-based Media Streaming
West et al. A model-based approach to constructing music similarity functions
Pulis et al. Siamese Neural Networks for Content-based Cold-Start Music Recommendation.
Shen et al. A novel framework for efficient automated singer identification in large music databases
Murthy et al. Singer identification from smaller snippets of audio clips using acoustic features and DNNs
Yao et al. An efficient cascaded filtering retrieval method for big audio data
Harb et al. A query by example music retrieval algorithm
Kim et al. A music recommendation system based on personal preference analysis
Liu Effective results ranking for mobile query by singing/humming using a hybrid recommendation mechanism
Sharma et al. Audio songs classification based on music patterns
Kim et al. An approach for music recommendation using content-based analysis and collaborative filtering
KR20200118587A (en) Music recommendation system using intrinsic information of music
Kumari et al. Music Genre Classification for Indian Music Genres
Yoon et al. A personalized music recommendation system with a time-weighted clustering

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20140617

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150703

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee