KR102532629B1 - 악보를 추천하기 위한 방법 및 장치 - Google Patents

악보를 추천하기 위한 방법 및 장치 Download PDF

Info

Publication number
KR102532629B1
KR102532629B1 KR1020220169411A KR20220169411A KR102532629B1 KR 102532629 B1 KR102532629 B1 KR 102532629B1 KR 1020220169411 A KR1020220169411 A KR 1020220169411A KR 20220169411 A KR20220169411 A KR 20220169411A KR 102532629 B1 KR102532629 B1 KR 102532629B1
Authority
KR
South Korea
Prior art keywords
sheet music
user
score
vector
preference
Prior art date
Application number
KR1020220169411A
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 KR1020220169411A priority Critical patent/KR102532629B1/ko
Application granted granted Critical
Publication of KR102532629B1 publication Critical patent/KR102532629B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3325Reformulation based on results of preceding query
    • G06F16/3326Reformulation based on results of preceding query using relevance feedback from the user, e.g. relevance feedback on documents, documents sets, document terms or passages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2210/00Aspects or methods of musical processing having intrinsic musical character, i.e. involving musical theory or musical parameters or relying on musical knowledge, as applied in electrophonic musical tools or instruments
    • G10H2210/005Musical accompaniment, i.e. complete instrumental rhythm synthesis added to a performed melody, e.g. as output by drum machines

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Business, Economics & Management (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Tourism & Hospitality (AREA)
  • Primary Health Care (AREA)
  • General Business, Economics & Management (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Strategic Management (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Marketing (AREA)
  • Molecular Biology (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

악보 추천 방법이 개시된다. 악보 추천 방법은 복수의 악보들의 장르, 연주악기 및 난이도에 대한 정보를 이용하여, 복수의 악보들 각각의 속성을 나타내는 복수의 악보 속성벡터를 생성하는 단계, 복수의 악보 속성벡터를 그룹핑하여 군집들으로 분류하는 단계, 군집들 중에서 사용자의 선호도에 대응하는 선호 군집을 결정하는 단계, 선호 군집의 중심 벡터에 기초하여, 사용자의 속성을 나타내는 사용자 속성벡터를 생성하는 단계 및 생성된 악보 속성벡터와 사용자 속성벡터 사이의 유사도를 이용하여, 복수의 악보들 중에서 사용자에 대한 추천 악보를 결정하는 단계를 포함한다.

Description

악보를 추천하기 위한 방법 및 장치{METHOD AND DEVICE FOR RECOMMENDING MUSIC AND CONCERTO GATHERING}
본 발명은 악보를 추천하기 위한 방법 및 장치에 관한 것으로, 특히, 사용자의 특성과 악보 특성을 비교함으로써, 사용자에게 적합한 악보를 추천할 수 있는 방법 및 장치에 관한 것이다.
최근 사용자를 둘러싼 다양한 변수들을 분석함으로써, 사용자에게 적합한 사용자 맞춤 정보를 추천하는 사용자 맞춤형 서비스들이 다양한 분야에 널리 보급되고 있다. 이와 관련하여, 사용자의 성향을 분석하여 이에 맞는 음악을 추천하는 서비스 또한 존재한다.
한편, 음악과 유사한 분야로서, 악기 연주를 취미로 하는 사용자가 증가함에 따라 악보 추천 서비스에 대한 수요도 증가하고 있다. 특히, 처음 악기를 연주하기 시작하는 사람들은 자신의 수준 및 성향에 맞는 적절한 악보를 선택하는 것이 필요하다. 그러나, 관련 서비스의 부족으로 인해, 많은 사람들이 인터넷 상의 한정적인 정보에 기초하여 악보를 선택하는 문제가 있다.
본 발명이 해결하고자 하는 과제는 사용자의 특성과 악보 특성을 비교함으로써, 사용자에게 적합한 악보를 추천할 수 있는 방법 및 장치를 제공하는 것에 있다.
본 발명의 실시 예들에 따른 악보 추천 방법은 복수의 악보들의 장르, 연주악기 및 난이도에 대한 정보를 이용하여, 복수의 악보들 각각의 속성을 나타내는 복수의 악보 속성벡터를 생성하는 단계, 복수의 악보 속성벡터를 그룹핑하여 군집들으로 분류하는 단계, 군집들 중에서 사용자의 선호도에 대응하는 선호 군집을 결정하는 단계, 선호 군집의 중심 벡터에 기초하여, 사용자의 속성을 나타내는 사용자 속성벡터를 생성하는 단계 및 생성된 악보 속성벡터와 사용자 속성벡터 사이의 유사도를 이용하여, 복수의 악보들 중에서 사용자에 대한 추천 악보를 결정하는 단계를 포함한다.
본 발명의 실시 예들에 따르면, 전술한 악보 추천 방법을 실행시키기 위하여 비일시적 기록매체에 기록된 컴퓨터 프로그램을 제공한다.
본 발명의 실시 예들에 따르면, 사용자의 특성과 악보 특성을 비교함으로써, 사용자에게 적합한 악보를 추천할 수 있는 효과가 있다.
특히, 본 발명의 실시 예들에 따르면, 사용자의 주관적인 악보 특성(속도, 난이도 등) 뿐만 아니라 사용자가 선호하는 실제 악보를 함께 고려함으로써 악보를 추천할 수 있어, 보다 정확히 악보를 추천할 수 있는 효과가 있다.
도 1은 본 발명의 실시 예들에 따른 악보 추천 시스템을 나타낸다.
도 2는 본 발명의 실시 예들에 따른 악보 추천 장치를 나타낸다.
도 3은 본 발명의 실시 예들에 따른 악보에 대한 정보를 나타낸다.
도 4 및 도 5는 본 발명의 실시 예들에 따른 악보 추천 장치의 동작을 설명하기 위한 도면이다.
도 6은 본 발명의 실시 예들에 따른 악보 추천 장치의 작동 방법을 설명하기 위한 도면이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 실시 예들에 따른 악보 추천 시스템을 나타낸다. 도 1을 참조하면, 악보 추천 시스템(10)은 복수의 악보들 각각을 나타내는 악보 속성벡터와 사용자를 나타내는 사용자 속성벡터를 계산하고, 악보 속성벡터 및 사용자 속성벡터 사이의 관계를 이용하여, 사용자에게 적합한 악보를 추천할 수 있는 효과가 있다.
악보 추천 시스템(10)은 악보 추천 장치(100), 사용자 단말기(200) 및 악보 데이터베이스(300)를 포함할 수 있다.
악보 추천 장치(100)는 사용자 단말기(200) 및 악보 데이터베이스(300)와 통신을 수행할 수 있다. 실시 예들에 따라, 악보 추천 장치(100)는 사용자 단말기(200)로 사용자에 적합한 악보에 대한 정보를 전송할 수 있다. 또한, 악보 추천 장치(100)는 악보 데이터베이스(300)로부터 악보에 대한 데이터를 액세스할 수 있다. 예를 들어, 악보 추천 장치(100)는 유선 통신 방식 또는 무선 통신 방식에 따라, 사용자 단말기(200) 및 악보 데이터베이스와 통신을 수행할 수 있다.
실시 예들에 따라, 본 발명의 악보 추천 장치(100)는 악보 데이터베이스에 저장된 데이터와 사용자 단말기(200)로부터 전송된 데이터를 이용하여, 악보를 나타내는 악보 속성벡터 및 사용자를 나타내는 사용자 속성벡터를 생성하고, 이들을 이용하여 사용자에게 적합한 악보를 추천할 수 있다. 악보 추천 장치(100)는 추천 악보에 대한 정보를 사용자 단말기(200)로 제공할 수 있다.
사용자 단말기(200)는 악보 추천 장치(100)로부터 추천 악보 정보를 수신할 수 있다. 또한, 사용자 단말기(200)는 사용자로부터의 입력을 추천 악보 장치(100)로 전송할 수 있다.
사용자 단말기(200)는 스마트폰과 같이 연산 처리 기능 및 통신 기능을 갖는 모바일 디바이스로 구현될 수 있으나, 이에 한정되는 것은 아니다.
악보 데이터베이스(300)는 복수의 악보에 대한 정보를 저장할 수 있다. 실시 예들에 따라, 악보 데이터베이스(300)는 복수의 악보들 각각의 연주악기, 장르, 속도, 조성, 조표, 음역대 및 난이도에 대한 정보를 저장할 수 있다.
도 2는 본 발명의 실시 예들에 따른 악보 추천 장치를 나타낸다. 도 2를 참조하면, 악보 추천 장치(100)는 통신부(110), 제어부(120) 및 저장부(130)를 포함할 수 있다.
통신부(110)는 외부 장치와 데이터를 주고받을 수 있다. 예컨대, 통신부(110)는 유선 통신 방식 또는 무선 통신 방식에 따라 외부 장치와 데이터를 주고받을 수 있다.
실시 예들에 따라, 통신부(110)는 사용자 단말기(200) 또는 악보 데이터베이스(300)와 데이터를 주고받을 수 있다. 예를 들어, 통신부(110)는 악보 데이터베이스(300)로부터 악보에 대한 정보를 수신하고, 추천 악보에 대한 정보를 사용자 단말기(200)로 전송할 수 있다.
제어부(120)는 악보 추천 장치(100)의 전반적인 동작을 제어할 수 있다. 예를 들어, 제어부(120)는 적어도 하나의 프로세서를 포함할 수 있고, 상기 적어도 하나의 프로세서는 CPU(central processing unit), MCU(micro controller unit), GPU(graphical processing unit), ASIC(application specified integrated circuit) 또는 FPGA(field programmable gate array)일 수 있으나 본 발명의 실시 예들이 이에 한정되는 것은 아니다.
제어부(120)는 악보와 관련된 정보 및 사용자와 관련된 정보를 이용하여, 사용자에게 적합한 추천 악보를 결정할 수 있다. 실시 예들에 따라, 제어부(120)는 악보를 나타내는 악보 속성벡터를 생성하고, 사용자를 나타내는 사용자 속성벡터를 생성하고, 악보 속성벡터와 사용자 속성벡터를 이용하여 사용자에게 적합한 추천 악보를 결정할 수 있다.
별도의 설명이 없더라도, 본 명세서에서 설명되는 악보 추천 장치(100)의 동작은 제어부(120)의 제어에 따라 수행되는 것으로 이해될 수 있다.
저장부(130)는 악보 추천 장치(100)의 동작에 필요한 데이터를 저장할 수 있다. 예를 들어, 저장부(130)는 비휘발성 메모리 또는 휘발성 메모리를 포함할 수 있다.
실시 예들에 따라, 저장부(130)는 악보 추천 장치(100)의 동작을 제어하기 위한 복수의 명령어들을 저장할 수 있다. 제어부(120)는 저장부(130)에 저장된 상기 명령어들을 로드(load)함으로써, 악보 추천 장치(100)에 대한 제어를 수행할 수 있다.
도 3은 본 발명의 실시 예들에 따른 악보에 대한 정보를 나타낸다. 도 3을 참조하면, 악보들에 대한 정보가 예시적으로 나타나 있다. 악보들에 대한 정보는 악보 데이터베이스(300)로부터 획득되어 저장된 것일 수 있으나, 이에 한정되는 것은 아니다. 악보들에 대한 정보는 악보의 연주악기, 장르, 음역, 속도, 조표, 조성 및 난이도를 포함할 수 있다.
연주악기는 해당 악보를 통해 연주할 수 있는 악기를 의미하며, 동일한 곡이라고 하더라도 연주악기가 달라지는 경우 악보가 달라지게 된다.
장르는 악보의 장르로, 예를 들어, 클래식, 재즈, 댄스 등을 의미할 수 있다.
음역은 악보에서 분포하는 음의 범위로, 악보에서의 가장 낮은 음 및 가장 높은 음을 의미할 수 있다. 예를 들어, 음역이 C2~B3인 경우, 악보에서의 가장 낮은 음은 0옥타브 도이고, 가장 높은 음은 1옥타브 시를 의미할 수 있다.
속도는 악보의 속도로서, 예를 들어, BPM(beats per minute) 단위로 표기될 수 있다.
조성 및 조표는 악보의 화음을 나타내는 지표로서, 조성은 악보의 으뜸음과, 악보이 장조인지 또는 단조인지에 대한 정보를 포함한다. 조표는 악보에 표기된 조표의 종류와 수를 나타낸다. 예를 들어, 조표가 5인 경우에는 샵(sharp)이 5개 있다는 것을 의미하고, -3인 경우는 플랫(flat)이 3개 있다는 것을 의미한다.
난이도는 악보의 연주 어려움을 나타내는 지표로서, 상술한 연주악기, 장르, 음역, 속도, 조성 및 조표가 고려된 지표일 수 있다. 실시 예들에 따라, 악보 추천 장치(100)는 기 평가된 난이도에 대한 정보를 저장하거나, 또는, 악보의 난이도를 평가하고 평가 결과에 따라 난이도 값을 생성할 수도 있다.
도 4 및 도 5는 본 발명의 실시 예들에 따른 악보 추천 장치의 동작을 설명하기 위한 도면이다. 도 4를 참조하면, 제어부(120)는 악보 속성벡터 생성부(121), 군집화부(123), 선호 군집 결정부(125), 사용자 속성벡터 생성부(127) 및 추천 악보 결정부(129)를 포함할 수 있다.
도 4에 도시된 제어부(120)의 구성들(121, 123, 125, 127 및 129)은 하드웨어적으로 분리되거나 또는 소프트웨어적으로 분리된 구성들일 수 있다. 여기서, 소프트웨어적으로 분리된 구성이라 함은 기능적으로 분리되었을 뿐, 하나의 하드웨어로 구현되는 구성을 의미할 수 있다. 즉, 예를 들어, 도 4의 구성들(121, 123, 125, 127 및 129)는 하나의 연산 처리 장치로 구현될 수 있고, 하나의 연산 처리 장치는 구성들(121, 123, 125, 127 및 129) 각각의 기능을 수행할 수 있는 것으로 이해될 수 있다.
악보 속성벡터 생성부(121)는 악보와 관련된 정보를 이용하여, 악보를 나타내는 악보 속성벡터를 생성할 수 있다. 실시 예들에 따라, 악보 속성벡터 생성부(121)는 복수의 악보들 각각의 장르, 연주악기 및 난이도에 대한 정보를 이용하여 악보 속성벡터를 생성할 수 있다. 추가적으로, 악보 속성벡터 생성부(121)는 복수의 악보들 각각의 음역, 속도, 조표 및 조성에 대한 정보를 더 이용하여 악보 속성벡터를 생성할 수 있다.
실시 예들에 따라, 악보 속성벡터 생성부(121)는 악보들 각각의 장르, 연주악기, 난이도, 음역, 속도, 조표 및 조성을 수치화하고, 수치화된 값을 기초로 악보 속성벡터를 생성할 수 있다. 예를 들어, 악보 속성벡터 생성부(121)는 차원 각각이 악보의 정보 각각에 대응하도록, 악보 속성벡터를 생성할 수 있다. 즉, 연주악기, 난이도, 음역, 속도, 조표 및 조성을 수치화한 값이 순서대로 1, 3, 2, 4, 2, 1 라면, 악보 속성벡터 생성부(121)는 (1, 3, 2, 4, 2, 1)로 정의되는 악보 속성벡터를 생성할 수 있다. 다만, 본 발명의 실시 예들이 이에 한정되는 것은 아니다.
대안적으로, 계량화가 어려운 '연주악기' 또는 '장르'의 경우, 악보 속성벡터 생성부(121)는 '연주악기' 또는 '장르' 각각에 대한 가중치를 설정하고, 해당 가중치를 나머지 정보들(난이도, 음역, 속도, 조표 및 조성)에 반영함으로써, 악보 속성벡터를 생성할 수 있다.
군집화부(123)는 생성된 복수의 악보 속성벡터를 그룹핑하여 군집으로 분류할 수 있다. 실시 예들에 따라, 군집화부(123)는 생성된 악보 속성벡터들 간 유사성을 측정하여 서로 유사도(또는 관련도)가 높은 악보 속성벡터들은 하나의 군집에 속하게 하고, 서로 다른 군집에 속한 악보 속성벡터들은 서로 유사도(또는 관련도)가 낮도록 분류할 수 있다.
실시 예들에 따라, 군집화부(123)는 악보 속성벡터들 각각의 거리에 기초하여, 악보 속성벡터들을 군집 간 응집도를 최대로 하는 복수의 군집으로 분류할 수 있다. 예를 들어, 군집화부(123)는 아래 수학식 1을 만족하는 군집들(C1, C2, ?, Ck)을 생성할 수 있다.
Figure 112022131376728-pat00001
여기서, v는 악보 속성벡터이고, mi는 각 군집 Ci을 대표하는 중심 악보 속성벡터이고, d는 유클리디안 거리를 의미한다.
예를 들어, 군집화부(123)는 복수의 악보 속성벡터들 사이의 거리를 계산함으로써, 각 군집을 대표하는 중심 악보 속성벡터를 선정하고, 이를 기초로 군집을 결정할 수 있다.
실시 예들에 따라, 군집화부(123)는 수학식 1의 식에, 아래 수학식 2에 따라 정의되는 유클리디안 거리를 사용하여 군집들(C1, C2, ..., Ck)을 생성할 수 있다.
Figure 112022131376728-pat00002
여기서, N은 악보 속성벡터의 차원이고, v=(v1, v2, ..., vN)이고, mi=(mi 1, mi 2, ..., mi N)이고, wv k(k=1, ... , N)은 악보 속성벡터 v에 대응하는 가중치로 0 내지 1사이의 값을 갖는다.
이 때, 군집화부(123)는 아래 수학식 3에 따라 가중치 wk를 계산할 수 있다.
Figure 112022131376728-pat00003
여기서, c는 양의 상수이고, D는 난이도이고, B는 속도(BPM 단위)이다.
즉, 본 발명의 실시 예들에 따르면, 악보 속성벡터를 군집으로 분류할 때 난이도 및 속도에 대한 가중치를 거리에 활용함으로써, 보다 정확한 군집이 가능한 효과가 있다.
군집화부(123)는 군집화 결과에 따라, 군집 각각의 중심 악보 속성벡터, 그리고 악보 속성벡터들 각각이 속하는 군집에 대한 정보를 생성할 수 있다.
선호 군집 결정부(125)는 군집들 중에서 사용자의 선호에 대응하는 선호 군집을 결정할 수 있다. 실시 예들에 따라, 선호 군집 결정부(125)는 사용자로부터의 응답을 분석함으로써 선호 군집을 결정할 수 있다.
도 5를 참조하면, 사용자에게 제공되는 설문(혹은 질의)의 예시적인 양식이 나타나 있다. 실시 예들에 따라, 사용자는 선호 악보에 대한 질의(Q1) 및 선호 속성에 대한 질의(Q2)를 제공받고 이에 대한 응답을 악보 추천 장치(100)로 전송할 수 있다.
선호 군집 결정부(125)는 선호 악보에 대한 질의(Q1)의 응답 및 선호 악보에 대한 질의(Q2)의 응답을 해석하고, 해석 결과에 따라 선호 군집을 결정할 수 있다.
실시 예들에 따라, 선호 군집 결정부(125)는 선호 악보에 대한 질의(Q1)의 응답, 즉, 사용자의 선호 악보 정보를 이용하여 제1선호 군집을 결정할 수 있다. 예를 들어, 선호 군집 결정부(125)는 기 결정된 군집들 중에서 사용자의 선호 악보가 속한 군집을 제1선호 군집으로서 결정할 수 있다.
실시 예들에 따라, 선호 군집 결정부(125)는 선호 속성에 대한 질의(Q2)의 응답, 즉, 사용자의 선호 속성 정보를 이용하여 제2선호 군집을 결정할 수 있다. 예를 들어, 선호 군집 결정부(125)는 선호 속성와 가장 유사한 속성을 갖는 군집을 제2선호 군집으로서 결정할 수 있다.
실시 예들에 따라, 선호 군집 결정부(125)는 선호 속성 정보를 수치화하여 선호 속성를 나타내는 선호 속성벡터를 생성할 수 있다. 이후, 선호 군집 결정부(125)는 생성된 선호 속성벡터와 결정된 군집들 각각의 중심 악보 속성벡터들 사이의 거리를 계산함으로써, 선호 속성벡터와 가장 가까운 거리를 갖는 중심 속성벡터가 속한 군집을 제2선호 군집으로서 결정할 수 있다.
한편, 선호 군집 결정부(125)는 악보 속성벡터 생성부(121)와 동일한 방식으로 선호 속성벡터를 생성할 수 있다. 부족한 정보의 경우에는 고정된 상수(예컨대, 0)으로 수치화하여 선호 속성벡터를 생성할 수 있다.
사용자 속성벡터 생성부(127)는 결정된 선호 군집을 이용하여 사용자의 속성을 나타내는 사용자 속성벡터를 생성할 수 있다. 실시 예들에 따라, 사용자 속성벡터 생성부(127)는 결정된 선호 군집의 중심 벡터를 이용하여 사용자 속성벡터를 생성할 수 있다.
실시 예들에 따라, 사용자 속성벡터 생성부(127)는 제1선호 군집의 중심 벡터 및 제2선호 군집의 중심 벡터를 이용하여, 사용자 속성벡터를 생성할 수 있다. 예컨대, 사용자 속성벡터 생성부(127)는 제1선호 군집의 중심 벡터 및 제2선호 군집의 중심 벡터 사이의 가중 중심 벡터를 계산함으로써, 사용자 속성벡터를 생성할 수 있다.
본 발명의 실시 예들에 따르면, 객관적 측면이 강한 사용자의 선호 악보 정보 및 주관적 측면이 강한 사용자의 선호 속성 정보를 이용하여 사용자를 나타내는 사용자 속성벡터를 생성할 수 있어, 사용자의 특성을 보다 정확히 파악할 수 있는 효과가 있다.
예컨대, 사용자 속성벡터 생성부(127)는 아래 수학식 4에 따라, 사용자 속성벡터를 생성할 수 있다.
Figure 112022131376728-pat00004
여기서, u는 사용자 속성벡터이고, mf1,i는 i번째 제1선호 군집의 중심 벡터이고, N1은 제1선호 군집의 수이고, mf2,i는 i번째 제2선호 군집의 중심 벡터이고, N2는 제2선호 군집의 수이고, x는 제1선호 군집에 대한 가중치로서, 0 내지 1 사이의 값을 갖는다. 별다른 정함이 없는 경우, x는 0.5일 수 있으나, 이에 한정되는 것은 아니다.
실시 예들에 따라, 사용자 속성벡터 생성부(127)는 아래 수학식 5에 따라, 제1선호 군집에 대한 가중치 x를 결정할 수 있다.
Figure 112022131376728-pat00005
여기서, y는 양의 상수이고, D는 사용자의 응답에 기재된 난이도(즉, 수치화된 난이도)이다.
즉, 난이도가 높을수록, 그리고 선호 악보의 수가 적을수록 선호 악보에 대응하는 제1선호 군집(의 중심벡터)에 대한 가중치가 커지게 된다. 이에 따라, 사용자의 선호도가 명확할수록(난이도가 높고, 그 수가 적을 수록) 해당 곡의 특성을 더 반영하여 사용자 속성벡터를 생성할 수 있어 정확도가 증가할 수 있다.
추천 악보 결정부(129)는 생성된 사용자 속성벡터와 악보 속성벡터에 기초하여, 사용자에게 적합한 추천 악보를 결정할 수 있다. 실시 예들에 따라, 추천 악보 결정부(129)는 사용자 속성벡터와 악보 속성벡터의 유사도에 기초하여, 추천 악보를 결정할 수 있다. 즉, 추천 악보 결정부(129)는 사용자 속성벡터와 가장 유사한 악보 속성벡터에 대응하는 악보를 추천 악보로서 결정할 수 있다.
실시 예들에 따라, 추천 악보 결정부(129)는 사용자 속성벡터 및 악보 속성벡터 사이의 코사인 유사도(cosine similarity)에 따라, 추천 악보를 결정할 수 있으나 이에 한정되는 것은 아니다.
또한, 추천 악보 결정부(129)는 결정된 추천 악보에 대해, 협주 대상자를 결정할 수 있다. 실시 예들에 따라, 추천 악보 결정부(129)는 사용자 속성벡터와 다른 사용자의 속성 벡터를 비교하고, 비교 결과에 따라 협주 대상자를 결정할 수 있다.
추천 악보 결정부(129)는 사용자 속성벡터와 다른 사용자의 사용자 속성벡터 사이의 유사도에 기초하여, 협주 대상자를 결정할 수 있다. 예컨대, 해당 사용자의 사용자 속성벡터와 유사도가 높은 사용자 속성벡터를 갖는 다른 사용자를 협주 대상자로서 결정할 수 있다. 이 때, 다른 사용자의 거주지역, 연주악기 등을 함께 고려하여 협주 대상자를 결정할 수 있다.
도 6은 본 발명의 실시 예들에 따른 악보 추천 장치의 작동 방법, 즉 악보 추천 방법을 설명하기 위한 도면이다. 도 6을 참조하면, 악보 추천 장치(100)는 악보 속성벡터를 생성할 수 있다(S110). 실시 예들에 따라, 악보 추천 장치(100)는 악보들에 대한 정보를 수치화하여 악보 속성벡터를 생성할 수 있다.
악보 추천 장치(100)는 악보 속성벡터를 그룹핑하여 군집 분류를 수행할 수 있다(S120). 실시 예들에 따라, 악보 추천 장치(100)는 악보 속성벡터들 사이의 거리를 이용하여 복수의 군집으로 분류할 수 있다.
악보 추천 장치(100)는 사용자 선호도에 대응하는 선호 군집을 결정할 수 있다(S130). 실시 예들에 따라, 악보 추천 장치(100)는 사용자로부터의 응답에 기초하여, 분류된 복수의 군집들 중 사용자의 선호에 대응하는 선호 군집을 결정할 수 있다.
악보 추천 장치(100)는 사용자 속성벡터를 생성할 수 있다(S140). 실시 예들에 따라, 악보 추천 장치(100)는 선호 군집의 중심 벡터를 이용하여, 사용자 속성벡터를 생성할 수 있다.
악보 추천 장치(100)는 사용자 속성벡터와 악보 속성벡터를 이용하여 추천 악보를 결정할 수 있다(S150). 실시 예들에 따라, 악보 추천 장치(100)는 사용자 속성벡터와 가장 유사한 악보 속성벡터에 대응하는 악보를 추천 악보로서 결정할 수 있다.
본 발명에 따른 방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터 판독 가능 매체의 예에는 롬(ROM), 램(RAM), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함될 수 있다. 프로그램 명령의 예에는 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
또한, 상술한 방법 또는 장치는 그 구성이나 기능의 전부 또는 일부가 결합되어 구현되거나, 분리되어 구현될 수 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (5)

  1. 복수의 악보들의 장르, 연주악기 및 난이도에 대한 정보를 이용하여, 상기 복수의 악보들 각각의 속성을 나타내는 복수의 악보 속성벡터를 생성하는 단계;
    상기 복수의 악보 속성벡터를 그룹핑하여 군집들으로 분류하는 단계;
    상기 군집들 중에서 사용자의 선호도에 대응하는 선호 군집을 결정하는 단계;
    상기 선호 군집의 중심 벡터에 기초하여, 상기 사용자의 속성을 나타내는 사용자 속성벡터를 생성하는 단계; 및
    생성된 악보 속성벡터와 사용자 속성벡터 사이의 유사도를 이용하여, 상기 복수의 악보들 중에서 상기 사용자에 대한 추천 악보를 결정하는 단계를 포함하고,
    상기 군집들로 분류하는 단계는,
    상기 군집들을 대표하는 중심 악보 속성벡터를 결정하는 단계;
    상기 복수의 악보 속성벡터들 각각과 상기 중심 악보 속성벡터 사이의 거리를 계산하는 단계; 및
    계산된 거리에 기초하여, 상기 복수의 악보 속성벡터들을 상기 군집들로 그룹핑하는 단계를 포함하고,
    상기 복수의 악보 속성벡터들 각각과 상기 중심 악보 속성벡터 사이의 거리를 계산하는 단계는,
    아래 수학식에 따라 상기 거리(d)를 계산하며,
    Figure 112023013746381-pat00013

    (여기서, N은 악보 속성벡터의 차원이고, v는 악보 속성벡터로 v=(v1, v2, ... ,vN)이고, mi는 각 군집의 중심 악보 속성벡터로 mi=(mi 1, mi 2, ... ,mi N)이고, wv k(k=1, ... , N)은 악보 속성벡터 v에 대응하는 가중치이고, 0 내지 1 사이의 값을 갖음)
    상기 가중치 wv k는 악보들 각각의 난이도 및 속도에 기초하여 결정되는,
    악보 추천 방법.
  2. 삭제
  3. 삭제
  4. ◈청구항 4은(는) 설정등록료 납부시 포기되었습니다.◈
    제1항에 있어서, 상기 선호 군집을 결정하는 단계는,
    상기 사용자의 선호를 문의하기 위한 질의를 사용자에게 제공하는 단계;
    상기 사용자로부터의 응답을 수신하는 단계; 및
    상기 사용자로부터의 응답에 기초하여 상기 사용자의 선호를 분석하고, 분석 결과에 따라 상기 선호 군집을 결정하는 단계를 포함하는,
    악보 추천 방법.
  5. ◈청구항 5은(는) 설정등록료 납부시 포기되었습니다.◈
    제4항에 있어서,
    상기 질의는 선호 악보에 대한 제1질의 및 선호 속성에 대한 제2질의를 포함하고,
    상기 선호 군집은,
    상기 사용자의 선호 악보와 관련된 제1선호 군집 및 상기 사용자의 선호 속성에 대한 제2선호 군집을 포함하는,
    악보 추천 방법.
KR1020220169411A 2022-12-07 2022-12-07 악보를 추천하기 위한 방법 및 장치 KR102532629B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220169411A KR102532629B1 (ko) 2022-12-07 2022-12-07 악보를 추천하기 위한 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220169411A KR102532629B1 (ko) 2022-12-07 2022-12-07 악보를 추천하기 위한 방법 및 장치

Publications (1)

Publication Number Publication Date
KR102532629B1 true KR102532629B1 (ko) 2023-05-16

Family

ID=86545790

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220169411A KR102532629B1 (ko) 2022-12-07 2022-12-07 악보를 추천하기 위한 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102532629B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170077461A (ko) * 2015-12-28 2017-07-06 동국대학교 산학협력단 전자 악보의 레벨을 분류하는 장치 및 방법
JP2019152860A (ja) * 2018-02-28 2019-09-12 株式会社デザインMプラス 楽譜提供システム、方法およびプログラム
KR20200043687A (ko) * 2018-10-18 2020-04-28 에스케이텔레콤 주식회사 개인화된 음악 추천 방법 및 이를 지원하는 서비스 장치

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170077461A (ko) * 2015-12-28 2017-07-06 동국대학교 산학협력단 전자 악보의 레벨을 분류하는 장치 및 방법
JP2019152860A (ja) * 2018-02-28 2019-09-12 株式会社デザインMプラス 楽譜提供システム、方法およびプログラム
KR20200043687A (ko) * 2018-10-18 2020-04-28 에스케이텔레콤 주식회사 개인화된 음악 추천 방법 및 이를 지원하는 서비스 장치

Similar Documents

Publication Publication Date Title
US8489606B2 (en) Music search apparatus and method using emotion model
US7860862B2 (en) Recommendation diversity
JP4538757B2 (ja) 情報処理装置、情報処理方法、およびプログラム
US7805389B2 (en) Information processing apparatus and method, program and recording medium
JP4979000B2 (ja) 情報検索方法、装置およびプログラム
US20110173195A1 (en) Information processing apparatus, information processing method, and program
KR101637282B1 (ko) 음악 플레이리스트 생성방법, 및 음악 플레이리스트 생성장치
WO2015042083A1 (en) Recommending audio sample combinations
EP3047479A1 (en) Automatically expanding sets of audio samples
CN113903346A (zh) 一种基于深度学习的音域平衡方法、装置及系统
US8686272B2 (en) Method and system for music recommendation based on immunology
Flexer On Inter-rater Agreement in Audio Music Similarity.
JP2011060182A (ja) コンテンツ選択システム
JP4479210B2 (ja) サマリ作成用プログラム
Sar Shalom et al. Data quality matters in recommender systems
CN108280165B (zh) 基于状态转移的奖励值音乐推荐方法
KR102532629B1 (ko) 악보를 추천하기 위한 방법 및 장치
KR102313549B1 (ko) 음원 생성 방법 및 음원 생성 시스템
Nam et al. Intelligent query by humming system based on score level fusion of multiple classifiers
CN112860850A (zh) 人机交互方法、装置、设备及存储介质
KR20120021174A (ko) 감정 모델을 이용한 음악 검색 장치 및 방법
KR100969870B1 (ko) 오디오 입력데이터 특성에 따른 가변 가중치 기반 음원 검색 시스템
JP6004014B2 (ja) 学習方法、情報変換装置および学習プログラム
Tjahyanto et al. Fft-based features selection for javanese music note and instrument identification using support vector machines
KR101520572B1 (ko) 음악에 대한 복합 의미 인식 방법 및 그 장치

Legal Events

Date Code Title Description
A107 Divisional application of patent
GRNT Written decision to grant