KR20210063822A - 음악 컨텐츠 운용 방법 및 이를 지원하는 장치 - Google Patents
음악 컨텐츠 운용 방법 및 이를 지원하는 장치 Download PDFInfo
- Publication number
- KR20210063822A KR20210063822A KR1020190152390A KR20190152390A KR20210063822A KR 20210063822 A KR20210063822 A KR 20210063822A KR 1020190152390 A KR1020190152390 A KR 1020190152390A KR 20190152390 A KR20190152390 A KR 20190152390A KR 20210063822 A KR20210063822 A KR 20210063822A
- Authority
- KR
- South Korea
- Prior art keywords
- song
- segment
- artist
- unit
- weight
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 60
- 239000003550 marker Substances 0.000 claims abstract description 56
- 230000001755 vocal effect Effects 0.000 claims description 15
- 239000000284 extract Substances 0.000 abstract description 16
- 238000011017 operating method Methods 0.000 abstract 1
- 238000013528 artificial neural network Methods 0.000 description 20
- 238000004891 communication Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 14
- 238000000605 extraction Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 11
- 238000012545 processing Methods 0.000 description 11
- 238000011176 pooling Methods 0.000 description 7
- 238000013527 convolutional neural network Methods 0.000 description 6
- 238000000926 separation method Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000001914 filtration Methods 0.000 description 4
- 238000003860 storage Methods 0.000 description 4
- 239000013598 vector Substances 0.000 description 4
- 238000009826 distribution Methods 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 3
- 230000006872 improvement Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 235000019640 taste Nutrition 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 241001342895 Chorus Species 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- HAORKNGNJCEJBX-UHFFFAOYSA-N cyprodinil Chemical compound N=1C(C)=CC(C2CC2)=NC=1NC1=CC=CC=C1 HAORKNGNJCEJBX-UHFFFAOYSA-N 0.000 description 1
- 230000002354 daily effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 238000011551 log transformation method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/60—Information retrieval; Database structures therefor; File system structures therefor of audio data
- G06F16/68—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/683—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC 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/00—Aspects 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/031—Musical analysis, i.e. isolation, extraction or identification of musical elements or musical parameters from a raw acoustic signal or from an encoded audio signal
- G10H2210/056—Musical analysis, i.e. isolation, extraction or identification of musical elements or musical parameters from a raw acoustic signal or from an encoded audio signal for extraction or identification of individual instrumental parts, e.g. melody, chords, bass; Identification or separation of instrumental parts by their characteristic voices or timbres
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC 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
- G10H2250/00—Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
- G10H2250/311—Neural networks for electrophonic musical instruments or musical processing, e.g. for musical recognition or control, automatic composition or improvisation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Health & Medical Sciences (AREA)
- Library & Information Science (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Tourism & Hospitality (AREA)
- Human Resources & Organizations (AREA)
- Artificial Intelligence (AREA)
- Databases & Information Systems (AREA)
- Multimedia (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Life Sciences & Earth Sciences (AREA)
- Economics (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
본 발명은 음원을 저장하는 메모리, 상기 메모리와 기능적으로 연결된 프로세서를 포함하고, 상기 프로세서는 저장된 음원에서 가창 구간을 추출하여 세그먼트 단위의 입력 데이터를 생성하고, 계층적 어텐션 모델을 기반으로 상기 세그먼트 단위 및 상기 음원에 해당하는 곡 단위 가중치를 획득하고, 상기 세그먼트 단위 가중치 및 상기 곡 단위 가중치를 기반으로 아티스트를 구분할 수 있는 보이스 마커를 추출하여 저장하고, 상기 보이스 마커를 기준으로 상기 음원 이외의 다른 음원을 추천하도록 설정된 음악 추천 제공 장치 및 이의 운용 방법을 개시한다.
Description
본 발명은 음악 추천에 관한 것으로서, 더욱 상세하게는 가수의 오디오 특성을 기반으로 관련 음악을 추천할 수 있도록 하는 음악 컨텐츠 운용 방법 및 이를 지원하는 장치에 관한 것이다.
최근 들어, 기술의 발전으로 인하여 다양한 형태의 미디어 컨텐츠를 일상적으로 이용되고 있다. 예컨대, 음악 컨텐츠의 경우 많은 사용자들이 일상적으로 사용하는 컨텐츠로서 자리잡아가고 있는 추세이다. 이와 관련하여, 음악 컨텐츠 재생과 관련한 자동 플레이리스트 생성 기술로서, 사용자의 청취 이력을 기반으로 플레이리스트를 자동 생성해주는 기술들이 제시되고 있다. 상술한 기술들은, 예컨대, 사용자 이력 또는 이의 유사성을 분석한 모델을 활용하여 플레이리스트를 생성하거나, 메타 정보를 필터로 활용하여 플레이리스트를 생성하거나, 분리되지 않은 음원 신호에 대해 특성 발굴 또는 특성 학습을 활용해 플레이리스트를 생성한다.
이러한 사용자 이력 또는 이의 유사성을 분석한 모델을 활용한 기존 플레이리스트 생성 방법은 음원 자체 신호를 활용하지 않기에, 사용자 이력이 없는 곡은 플레이 리스트로서 생성하지 못하고, 단순히 인기 곡에 편중되는 플레이리스트를 생성하는 한계점을 가진다. 분리되지 않은 음원 신호와 메타 정보를 활용한 유사성 기반의 플레이리스트 생성 방법은, 플레이리스트 생성 이후 사후적으로 해석하지 않는 이상, 플레이리스트에 포함된 곡들 간의 유사성의 이유를 파악하기 어려운 문제가 있다. 또한, 곡들 간의 유사성의 이유는 매우 다양한 요소가 될 수 있기 때문에, 플레이리스트 생성 작업 중 노래와 관련된 텍스트 정보를 활용 해야 하는 문제가 있다.
상술한 문제점을 해결하기 위하여, 본 발명은 음원 분리(source separation)된 신호를 이용하여 음색과 같은 아티스트 고유의 특징을 반영하는 인자를 추출하고, 이를 통해 유사함의 이유를 곡의 스타일 및 반주의 변화에 강건한 아티스트 고유의 특징으로 한정함으로써 아티스트 단위 추천 목록 및 유사한 음색 기반 플레이리스트를 자동 생성할 수 있도록 하는 음악 컨텐츠 운용 방법 및 이를 지원하는 장치를 제공함에 있다.
본 발명은, 분리된 음원 신호와 신경망 처리를 기반으로, 추천 서비스를 제공함에 있어 아티스트의 음색이 비슷한 곡 및 관련 아티스트를 추천할 수 있도록 하는 음악 컨텐츠 운용 방법 및 이를 지원하는 장치를 제공함에 있다.
본 발명은, 음원의 고유 특징인자를 기반으로 음악 및 가수 추천 서비스를 사용자에 제공할 수 있는 음악 컨텐츠 운용 방법 및 이를 지원하는 장치를 제공함에 있다.
본 발명은, 노래방과 같은 사용자 선곡에 기반한 추천 서비스가 제공되는 환경에서 사용자의 취향에 보다 적합한 곡을 보다 쉽게 선정할 수 있도록 하는 음악 컨텐츠 운용 방법 및 이를 지원하는 장치를 제공함에 있다.
그러나, 이러한 본 발명은 상기의 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 명확하게 이해될 수 있을 것이다.
상술한 바와 같은 목적을 달성하기 위한 본 발명은 복수의 음원을 저장하는 메모리, 상기 메모리와 기능적으로 연결된 프로세서를 포함할 수 있다. 상기 프로세서는 저장된 복수의 음원들 중 특정 음원에서 가창 구간을 추출하여 세그먼트 단위의 입력 데이터를 생성하고, 계층적 어텐션 모델을 기반으로 상기 세그먼트 단위 및 상기 음원에 해당하는 곡 단위 가중치를 획득하고, 상기 세그먼트 단위 가중치 및 상기 곡 단위 가중치를 기반으로 아티스트를 구분할 수 있는 보이스 마커를 추출하여 저장하고, 상기 보이스 마커를 기준으로 음악을 추천하도록 설정될 수 있다.
여기서, 상기 프로세서는 상기 특정 음원에서 반주가 분리된 보컬 신호를 추출하고, 상기 추출된 보컬 신호에 기 정의된 제1 임계 값 이상의 시간-주파수 특성을 가지는 구간을 상기 가창 구간으로 추출하도록 설정될 수 있다.
또한, 상기 프로세서는 상기 시간-주파수 특성을 인코더의 입력으로 제공하고, 상기 인코더의 출력 값을 상기 가창 구간의 세그먼트 단위의 특성 값으로 변환하도록 설정될 수 있다.
특히, 상기 프로세서는 상기 세그먼트 단위의 특성 값을 상기 계층적 어텐션 모델에 적용하여 세그먼트 단위의 어텐션 가중치 및 곡 단위 어텐션 가중치를 산출하도록 설정될 수 있다.
또한, 상기 프로세서는 기 설정된 제2 임계 값 이상의 곡 단위 가중치를 가지는 복 수개의 곡들을 아티스트의 대표 후보곡으로 추출하고, 상기 대표 후보곡 중, 기 설정된 제3 임계 값 이상의 세그먼트 단위 가중치를 가지는 복수 개의 곡 별 세그먼트 인덱스를 추출하고, 상기 곡 별 세그먼트 인덱스를 기준으로 상기 보이스 마커를 생성하도록 설정될 수 있다.
추가로, 상기 프로세서는 사용자의 음원 청취 이력을 기준으로 특정 아티스트를 선정하고, 상기 선정된 아티스트의 곡 단위 가중치들을 기 정의된 제4 임계 값과 비교하고, 상기 기 정의된 임계 값 이상의 곡의 아티스트 보이스 마커를 추출하고, 상기 추출된 보이스 마커의 지정된 크기 이상 유사도를 가지는 다른 아티스트를 검색하여 추천하도록 설정될 수 있다.
본 발명의 음악 컨텐츠 운용 방법은 음악 추천 제공 장치가, 기 저장된 복수의 음원들 중 특정 음원에서 가창 구간을 추출하여 세그먼트 단위의 입력 데이터를 생성하는 단계, 계층적 어텐션 모델을 기반으로 상기 세그먼트 단위 및 상기 음원에 해당하는 곡 단위 가중치를 획득하는 단계, 상기 세그먼트 단위 가중치 및 상기 곡 단위 가중치를 기반으로 아티스트를 구분할 수 있는 보이스 마커를 추출하여 저장하는 단계를 포함할 수 있다.
여기서, 상기 입력 데이터를 생성하는 단계는 상기 특정 음원에서 반주가 분리된 보컬 신호를 추출하는 단계, 상기 추출된 보컬 신호에 기 정의된 제1 임계 값 이상의 시간-주파수 특성을 가지는 구간을 상기 가창 구간으로 추출하는 단계를 포함할 수 있다.
그리고, 상기 가중치를 획득하는 단계는 상기 시간-주파수 특성을 인코더의 입력으로 제공하여 상기 인코더의 출력 값을 상기 가창 구간의 세그먼트 단위의 특성 값으로 변환하는 단계, 상기 세그먼트 단위의 특성 값을 상기 계층적 어텐션 모델에 적용하여 세그먼트 단위의 어텐션 가중치 및 곡 단위 어텐션 가중치를 산출하는 단계를 포함할 수 있다.
상기 저장하는 단계는 기 설정된 제2 임계 값 이상의 곡 단위 가중치를 가지는 복 수개의 곡들을 아티스트의 대표 후보곡으로 추출하는 단계, 상기 대표 후보곡 중, 기 설정된 제3 임계 값 이상의 세그먼트 단위 가중치를 가지는 복수 개의 곡 별 세그먼트 인덱스를 추출하는 단계, 상기 곡 별 세그먼트 인덱스를 기준으로 상기 보이스 마커를 생성하는 단계를 포함할 수 있다.
한편, 상기 방법은 사용자의 음원 청취 이력을 기준으로 특정 아티스트를 선정하는 단계, 상기 선정된 아티스트의 곡 단위 가중치들을 기 정의된 제4 임계 값과 비교하는 단계, 상기 기 정의된 임계 값 이상의 곡의 아티스트 보이스 마커를 추출하는 단계, 상기 추출된 보이스 마커의 지정된 크기 이상 유사도를 가지는 다른 아티스트를 검색하여 추천하는 단계를 더 포함할 수 있다.
본 발명에 따르면, 본 발명은 분리된 음원 신호와 신경망 처리를 기반으로, 아티스트의 음색이 비슷한 곡 및 관련 아티스트를 추천할 수 있도록 함으로써, 컨텐츠 제작 및 소비 환경을 개선하고, 보다 많은 음악 컨텐츠 공급을 원활하게 함으로써, 소비자들의 취향에 맞는 보다 양한 아티스트들을 손쉽게 검색하고 청취할 수 있는 기회를 제공할 수 있다.
또한, 본 발명은, 음악 추천에 관한 명확한 추천의 이유를 제공할 수 있음과 동시에 사용자 경험 증대 및 서비스의 신뢰도 향상에 기여할 수 있다.
또한, 본 발명은 노래방 선곡 환경에서, 곡 단위 분석 및 추천으로는 반영할 수 없는 가수 고유의 스타일 등을 반영한 높은 사용자 만족도의 선곡 추천을 제공할 수 있다.
도 1a는 본 발명의 실시 예에 따른 음악 추천 제공 시스템의 한 예를 나타낸 도면이다.
도 1b는 본 발명의 실시 예에 따른 음악 추천 제공 장치의 한 예를 나타낸 도면이다.
도 2는 본 발명의 실시 예에 따른 음악 추천 제공 장치의 프로세서 구성의 한 예를 나타낸 도면이다.
도 3은 본 발명의 실시 예에 따른 음악 추천 리스트 생성과 관련한 입력 데이터 생성부의 운용 방법의 한 예를 나타낸 도면이다.
도 4는 본 발명의 실시 예에 따른 음악 추천 리스트 생성 방법 중 아티스트 보이스 마커 추출 방법의 한 예를 나타낸 도면이다.
도 5는 본 발명의 실시 예에 따른 계층적 어텐션을 활용한 가수 인식 모델 구조도를 나타낸 도면이다.
도 6a는 본 발명의 실시 예에 따른 아티스트 보이스 마커 추출 방법을 도식화한 도면이다.
도 6b는 본 발명의 일 실시예에 따른 특성 및 가중치 추출과 활용 흐름을 도식화한 아티스트 보이스 마커 추출 방법의 흐름도이다.
도 7은 본 발명의 일 실시예에 따른 아티스트 보이스 마커를 활용한 개인화 아티스트 추천 방법의 흐름도이다.
도 1b는 본 발명의 실시 예에 따른 음악 추천 제공 장치의 한 예를 나타낸 도면이다.
도 2는 본 발명의 실시 예에 따른 음악 추천 제공 장치의 프로세서 구성의 한 예를 나타낸 도면이다.
도 3은 본 발명의 실시 예에 따른 음악 추천 리스트 생성과 관련한 입력 데이터 생성부의 운용 방법의 한 예를 나타낸 도면이다.
도 4는 본 발명의 실시 예에 따른 음악 추천 리스트 생성 방법 중 아티스트 보이스 마커 추출 방법의 한 예를 나타낸 도면이다.
도 5는 본 발명의 실시 예에 따른 계층적 어텐션을 활용한 가수 인식 모델 구조도를 나타낸 도면이다.
도 6a는 본 발명의 실시 예에 따른 아티스트 보이스 마커 추출 방법을 도식화한 도면이다.
도 6b는 본 발명의 일 실시예에 따른 특성 및 가중치 추출과 활용 흐름을 도식화한 아티스트 보이스 마커 추출 방법의 흐름도이다.
도 7은 본 발명의 일 실시예에 따른 아티스트 보이스 마커를 활용한 개인화 아티스트 추천 방법의 흐름도이다.
본 발명의 과제 해결 수단의 특징 및 이점을 보다 명확히 하기 위하여, 첨부된 도면에 도시된 본 발명의 특정 실시 예를 참조하여 본 발명을 더 상세하게 설명한다.
다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다.
이하의 설명 및 도면에서 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위한 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시 예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시 예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.
또한, 제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하기 위해 사용하는 것으로, 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용될 뿐, 상기 구성요소들을 한정하기 위해 사용되지 않는다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제2 구성요소는 제1 구성요소로 명명될 수 있고, 유사하게 제1 구성요소도 제2 구성요소로 명명될 수 있다.
또한, 본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 또한, 본 명세서에서 기술되는 "포함 한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
또한, 명세서에 기재된 "부", "기", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다. 또한, "일(a 또는 an)", "하나(one)", "그(the)" 및 유사 관련어는 본 발명을 기술하는 문맥에 있어서(특히, 이하의 청구항의 문맥에서) 본 명세서에 달리 지시되거나 문맥에 의해 분명하게 반박되지 않는 한, 단수 및 복수 모두를 포함하는 의미로 사용될 수 있다.
상술한 용어들 이외에, 이하의 설명에서 사용되는 특정 용어들은 본 발명의 이해를 돕기 위해서 제공된 것이며, 이러한 특정 용어의 사용은 본 발명의 기술적 사상을 벗어나지 않는 범위에서 다른 형태로 변경될 수 있다.
아울러, 본 발명의 범위 내의 실시 예들은 컴퓨터 실행가능 명령어 또는 컴퓨터 판독가능 매체에 저장된 데이터 구조를 가지거나 전달하는 컴퓨터 판독가능 매체를 포함한다. 이러한 컴퓨터 판독가능 매체는, 범용 또는 특수 목적의 컴퓨터 시스템에 의해 액세스 가능한 임의의 이용 가능한 매체일 수 있다. 예로서, 이러한 컴퓨터 판독가능 매체는 RAM, ROM, EPROM, CD-ROM 또는 기타 광 디스크 저장장치, 자기 디스크 저장장치 또는 기타 자기 저장장치, 또는 컴퓨터 실행가능 명령어, 컴퓨터 판독가능 명령어 또는 데이터 구조의 형태로 된 소정의 프로그램 코드 수단을 저장하거나 전달하는 데에 이용될 수 있고, 범용 또는 특수 목적 컴퓨터 시스템에 의해 액세스 될 수 있는 임의의 기타 매체와 같은 물리적 저장 매체를 포함할 수 있지만, 이에 한정되지 않는다.
이하에서 설명하는 본원 발명은 음악 부분에 있어서, 유사 컨텐츠 추천에 대한 유사함의 이유를 제공할 수 있다. 즉, 종래에는 곡의 다양한 특성들을 동시에 반영하기 때문에, 유사함의 이유를 파악하기 어려우며, 가수 고유의 음색 또는 가창 스타일을 특정하여 반영하지 못하기에 가수 단위의 추천이 불가능한 부분이 있었고, 후 처리로 곡을 설명하는 텍스트로 이뤄진 곡을 설명하는 메타 정보가 사용될 수 있으나, 음색 및 가창 스타일을 나타내는 메타 정보를 수집하는 작업이 선행되어야 하는 문제점이 있었다. 이와 관련하여, 본 발명에서는 반주가 제거된 음원 신호와 신경망 처리를 기반으로, 추천 서비스를 제공함에 있어 사용자가 고려하는 요소 중 하나인 음색이 비슷한 곡 및 아티스트 추천 방법을 제공할 수 있다.
도 1a는 본 발명의 실시 예에 따른 음악 추천 제공 시스템의 한 예를 나타낸 도면이다.
도 1a를 참조하면, 본 발명의 실시 예에 따른 음악 추천 제공 시스템(10)은 정보 입력 장치(300), 사용자 단말(200), 통신망(500) 및 음악 추천 제공 장치(100)를 포함할 수 있다. 이러한 음악 추천 제공 시스템(10)은 가수의 목소리 특성(예: 아티스트 보이스 마커) 추출 및 이를 기반으로 한 음악 추천 기능을 제공할 수 있다.
상기 정보 입력 장치(300)는 음악 추천 제공 장치(100)에 음악 컨텐츠를 제공하는 장치일 수 있다. 예를 들어, 상기 정보 입력 장치(300)는 새 음악을 생성하고, 생성된 새 음악 컨텐츠를 음악 추천 제공 장치(100)에 제공할 수 있다. 이와 관련하여, 정보 입력 장치(300)는 다양한 아티스트들에 계정을 부여하고, 해당 아티스트들이 작업한 음악 컨텐츠를 수신하여 저장하고, 지정된 주기로 음악 컨텐츠를 음악 추천 제공 장치(100)에 제공할 수 있다. 한편, 상기 음악 추천 제공 시스템(10)에서 정보 입력 장치(300)는 음악 추천 제공 장치(100)와 일체화되어 하나의 구성으로 운용될 수 있다.
상기 사용자 단말(200)은 상기 통신망(500)을 통하여 음악 추천 제공 장치(100)에 접속하고, 음악 추천 제공 장치(100)가 제공하는 적어도 하나의 음악 컨텐츠를 검색할 수 있다. 상기 사용자 단말(200)은 상기 음악 추천 제공 장치(100)가 제공하는 다양한 음악 컨텐츠 중 적어도 하나의 음악 컨텐츠를 수신하여 재생할 수 있다. 이 과정에서, 상기 사용자 단말(200)이 검색한 음악 컨텐츠 검색 이력 또는 다운로드 한 음악 컨텐츠 다운로드 이력이 음악 추천 제공 장치(100)에 저장 관리될 수 있다.
상기 음악 추천 제공 장치(100)는 상기 통신망(500)을 통하여 정보 입력 장치(300)로부터 음악 컨텐츠를 수신하여 저장할 수 있다. 상기 음악 추천 제공 장치(100)는 저장된 음악 컨텐츠를 지정된 조건 예컨대, 아티스트의 오디오 특성을 기반으로 분류하여 저장 관리할 수 있다. 상기 음악 추천 제공 장치(100)는 요구에 따라, 사용자 단말(200)과 통신 채널을 형성하고, 사용자 단말(200)과 관련한 음악 플레이 리스트를 제공할 수 있다. 이와 관련하여, 음악 추천 제공 장치(100)는 아티스트의 오디오 특성 별로 분류된 음악 컨텐츠 데이터베이스를 포함할 수 있다. 상기 음악 추천 제공 장치(100)는 사용자 단말(200)이 검색한 특정 아티스트 또는 사용자 단말(200)이 다운로드 한 특정 곡의 아티스트의 오디오 특성과 유사한 다른 아티스트의 곡을 추천 곡으로 제공할 수 있다.
상기 통신망(500)은 상기 정보 입력 장치(300), 사용자 단말(200), 음악 추천 제공 장치(100) 간의 통신 채널을 형성할 수 있다. 이러한 통신망(500)의 적어도 하나의 통신 방식을 지원할 수 있다. 예를 들어, 상기 통신망(500) 중 정보 입력 장치(300) 및 음악 추천 제공 장치(100)와의 통신 채널과, 상기 음악 추천 제공 장치(100)와 상기 사용자 단말(200) 간의 통신 채널을 동일 종류 또는 다른 종류로 구현될 수 있다. 이러한 통신망(500)은 예컨대, 무선 통신망 또는 유선 통신망 중 적어도 하나로 구현될 수 있다.
한편, 상술한 설명에서는, 본원 발명의 음악 추천 기능이 음악 추천 제공 장치(100)를 통해 사용자 단말(200)에 제공되는 것으로 예시하였으나, 본 발명이 이에 한정되는 것은 아니다. 예컨대, 본 발명의 음악 추천 기능은 사용자 단말(200)이 음악 추천 제공 장치(100)에 접속한 상태에서, 음악 추천 제공 장치(100)로부터 음악 추천을 받을 수도 있으나, 사용자 단말(200) 내부에서, 프로세서에 의해 음악 추천을 받도록 구성될 수도 있다. 이에 따라, 이하에서 설명한 음악 추천 제공 장치(100)의 구성은 사용자 단말(200)의 구성이 될 수도 있다.
도 1b는 본 발명의 실시 예에 따른 음악 추천 제공 장치의 한 예를 나타낸 도면이다. 음원 신호 기반 음악 추천 특성으로 활용되는 특성 중 세그먼트 단위 특성이 포함될 수 있다. 일예로, 동일한 가수라도 음악의 스타일은 곡 마다 상이할 수 있다. 예컨대, 랩 음악과 발라드 음악을 동시에 하는 가수의 노래들을 차이점으로 표현할 수 있는 공간에 나타냈을 때, 같은 가수지만 랩 노래와 발라드 노래는 상대적으로 큰 차이점에 대응하는 먼 거리를 가진다. 심지어 동일한 곡 안에서도 인트로 구간의 특성과 후렴 구간의 특성은 상대적으로 큰 차이점을 나타내는 먼 거리를 가질 수 있다. 이렇게 상이한 세그먼트 단위의 특성들을 곡과 같은 상위 계층 단위로 나타낼 때, 평균과 같은 단순한 방법들이 활용될 수 있다. 이 경우, 곡 단위 특성을 추출하는 경우, 동일한 곡 안에선 곡의 스타일 또는 분위기가 비슷하기 때문에 평균과 값은 방법은 정보의 손실이 상대적으로 적지만, 가수 단위 특성을 추출하기에는 적합하지 않다. 이에, 본 발명의 음악 추천 제공 장치(100)는 가창 음색 기반 아티스트 보이스 마커 추출 및 이를 기반으로 한 음악 추천 기능을 제공할 수 있다.
도 1b를 참조하면, 음악 추천 제공 장치(100)는 복수의 항목 중 사용자가 청취했던 음악과 가창 음색이 유사한 가수를 추천한다. 이때, 음악 추천 제공 장치(100)는 메모리(110), 데이터베이스(120), 프로세서(130)를 포함할 수 있다.
메모리(110)는 음악 추천 제공 장치(100)에 의해 이용되는 정보를 저장할 수 있다. 메모리(110)는 프로세서(130)와 하나의 장치로 구성되거나 또는 유무선으로 연결되어 프로세서(130)가 처리하는 명령어 및 데이터를 일시적 또는 영구적으로 저장할 수 있다. 예를 들어, 본 발명에서는 음악 추천 리스트 생성을 위한 명령어들과 분리된 음원, 가수 정보 등을 비롯한 처리하고자 하는 데이터들을 저장할 수 있다. 상기 음악 추천 리스트는 특정 곡의 세그먼트 단위 가창 또는 음색 특성을 기반으로 분류된 곡을 항목으로 포함할 수 있다.
데이터베이스(120)는 음원을 저장할 수 있다. 또는, 데이터베이스(120)는 반주가 제거된 음원, 보컬 등장 위치 데이터, 솔로 가수 여부, 가수 성별 및 국가, 곡의 스타일 및 분위기, 앨범 정보, 사용자 청취이력 등을 저장할 수 있다.
프로세서(130)는 임의의 시퀀스를 처리할 수 있는 임의의 장치를 포함할 수 있으며 메모리(110) 및 데이터베이스(120)에 접속될 수 있다. 프로세서(130)는 데이터베이스(120)에 있는 데이터들을 처리하여 음악 추천 리스트 생성을 위한 고유벡터를 생성할 수 있다. 이와 관련하여, 프로세서(130)는 도 3에 도시된 바와 같은 구성을 포함할 수 있다.
추가적으로 또는 대체적으로, 음악 추천 기능이 수행되는 주체가 통신망(500)을 통해 서버로 존재하고, 사용자 단말(200)이 통신망(500)을 통해 해당 서버로부터 음악을 수신 받아 재생하는 시스템인 경우, 상기 음악 추천 제공 장치(100)는 통신 회로를 더 포함할 수 있다. 상기 음악 추천 제공 장치(100)의 프로세서(130)는 통신 회로를 통하여 사용자 단말(200)과 통신 채널을 형성하고, 사용자 단말(200)로부터 음악 검색 요청, 음악 다운로드 요청 등을 수신하고, 이를 기반으로 사용자 청취 이력을 저장 관리할 수 있다. 프로세서(130)는 사용자 검색 요청 또는 다운로드 요청에 대응하여, 관련 데이터 또는 음악을 사용자 단말(200)에 제공하면서, 추천 리스트를 생성하고, 이를 사용자 단말(200)에 제공할 수 있다. 상기 추천 리스트 생성과 관련하여, 프로세서(130)는 보컬과 배경 오디오의 분리, 계층적 어텐션 방법을 이용한 아티스트 보이스 마커 검출, 검출된 아티스트 보이스 마커 간의 비교, 지정된 문턱 값 이상의 유사도를 가지는 아티스트 및 곡 검색, 검색 결과에 따른 추천 리스트 생성을 처리할 수 있다.
도 2는 본 발명의 실시 예에 따른 음악 추천 제공 장치의 프로세서 구성의 한 예를 나타낸 도면이다.
도 2를 참조하면, 본 발명의 음악 추천 제공 장치(100)의 프로세서(130)는 입력 데이터 생성부(210), 아티스트 보이스 마커 추출부(220) 및 아티스트 추천부(230)의 구성을 포함할 수 있다.
상기 입력 데이터 생성부(210)는 아티스트 보이스 마커의 생성을 위한 입력 데이터 생성을 처리할 수 있다. 이와 관련하여, 입력 데이터 생성부(210)는 음원 획득, 음원 분리, 가창 필터링을 수행할 수 있다. 상기 음원 획득과 관련하여, 입력 데이터 생성부(210)는 데이터베이스(120)로부터 메타 정보 및 학습 및 실사용 음원을 획득할 수 있다. 음원 분리와 관련하여, 입력 데이터 생성부(210)는 반주가 분리된 보컬 신호를 추출할 수 있다. 가창 필터링과 관련하여, 입력 데이터 생성부(210)는 곡에서 가창 구간을 검출할 수 있다.
상기 아티스트 보이스 마커 추출부(220)는 입력 데이터 생성부(210)에 의해 획득된 음원 및 가창 필터링된 데이터를 기반으로 아티스트 보이스 마커를 생성할 수 있다. 아티스트 보이스 마커 생성과 관련하여, 아티스트 보이스 마커 추출부(220)는 계층적 어텐션 모델 기반의 아티스트 인식 및 아티스트 보이스 마커 추출을 수행할 수 있다.
상기 아티스트 추천부(230)는 아티스트 보이스 마커를 활용하여 추천 아티스트를 생성할 수 있다. 예컨대, 아티스트 추천부(230)는 사용자가 청취한 이력이 있는 음악을 선별하고, 적어도 하나의 음악의 아티스트를 선택한 후, 해당 아티스트와 기준 값 이상 유사한 가상 음색 특징을 가지는 다른 아티스트들을 상기 아티스트 보이스 마커를 이용하여 검출할 수 있다. 이 과정에서, 아티스트 추천부(230)는 곡에 대한 보이스 마커의 유사성의 크기별(예: 90%, 80%, 70%...)로 구분하고, 구분된 아티스트들의 곡에 대한 보이스 마커에 대한 유사 신뢰도를 할당하고, 높은 유사성을 가지는 아티스트 보이스 마커를 나타내는 곡들을 리스트의 앞부분에 배치하거나 또는 일정 기준 값 이상의 유사성을 가지는 아티스트 보이스 마커의 곡들만을 리스트로 구성할 수 있다.
도 3은 본 발명의 실시 예에 따른 음악 추천 리스트 생성과 관련한 입력 데이터 생성부의 운용 방법의 한 예를 나타낸 도면이다.
도 3을 참조하면, 음악 추천 리스트 생성과 관련한 입력 데이터 처리 방법에 있어서, 이하에서 설명하는 입력 데이터 처리 방법의 각 단계는 순서에 입각하여 수행될 수 있다. 예컨대, 이하에서 설명하는 각 단계들 중 이전 단계가 존재하는 단계들은, 이전 단계의 출력을 입력으로 받아서 모델 학습을 수행할 수 있다. 즉, 음원 획득 단계에서 획득한 음원은, 음원 분리 학습의 입력으로 사용되며, 음원 분리 단계에서 획득한 보컬 신호는 가창 필터링 학습의 입력으로 사용될 수 있다.
단계 S310에서, 프로세서(130)(예: 입력 데이터 생성부(210))는 메타 정보와 학습 및 실사용 음원을 데이터베이스(120)로부터 획득한다. 여기서, 음원 및 학습에 필요한 메타 정보의 입력 주체는 한정되지 않는다. 모델 학습에 필요한 메타 정보는, 음원에 대응되는 텍스트 정보를 포함할 수 있다. 예를 들어 모델 학습에 필요한 메타 정보는 음원에 대한 가수 정보, 성별 정보, 국가 정보, 앨범 정보, 가창 위치 정보, 솔로 가수 여부 정보 중 하나 이상을 포함할 수 있다.
단계 S320에서, 프로세서(130)는 음원에 포함된 복수의 신호들을 분리할 수 있다. 예컨대, 프로세서(130)는 반주가 분리된 보컬 신호를 추출할 수 있다. 이 과정에서, 프로세서(130)는 신호처리 기술을 활용하여 시간 도메인의 신호를 시간-주파수 단위의 특성으로 변환한다. 예를 들어, 음원은 단시간 푸리에 변환(STFT)을 통해 시간-주파수 도메인으로 표현될 수 있으며, 이때, 크기와 위상을 모두 활용할 수 있다. 다음으로, 프로세서(130)는 학습 음원의 크기 및 위상과 이에 대응되는 녹음된 보컬의 크기 및 위상간의 신경망 학습을 수행하고, 이에 포함된 가중치를 활용하여 실사용 음원으로부터 분리된 신호를 획득할 수 있다. 이때, 인공신경망 학습은 하나 이상의 신경망 알고리즘을 기반으로 수행될 수 있다. 상기 신경망 알고리즘은, 예를 들어, skip-connection을 동반한 CNN(Convolutional Neural Network) 기반의 모델을 이용할 수 있다. 이때, 인공신경망의 입력 시간 단위는 한정하지 않으며, 통상적으로 1초에서 10초에 해당하는 신호 단위로 사용한다.
단계 S330에서, 프로세서(130)는 가창 구간을 추출할 수 있다. 예컨대, 프로세서(130)는 반주가 분리된 보컬 신호로부터 가창 구간을 추출할 수 있다. 이와 관련하여, 프로세서(130)는 신호처리 기술을 활용하여 시간 도메인의 신호를 시간-주파수 단위의 특성으로 변환한다. 예를 들어, 음원은 단시간 푸리에 변환(STFT)을 통해 시간-주파수 도메인으로 표현될 수 있으며, 변환된 시간-주파수 도메인의 음원은 멜-주파수 필터뱅크 변환을 통해 멜-스케일의 시간-주파수 도메인 특성으로 변환될 수 있다. 또한, 음원에 대한 크기(magnitude) 단위의 변환된 특성은 log 변환을 통하여 데시벨(db) 단위로 표현할 수 있다. 다음으로, 프로세서(130)는 반주가 제거된 음원의 시간-주파수 표현 및 가창 위치 정보간의 신경망 학습을 수행한다. 프로세서(130)는 학습된 모델을 이용하여 임의의 시간 단위를 기준으로 0과 1사이의 확률 값을 생성할 수 있다. 이 확률 값은 임계 값에 의해 필터링되어 가창 구간을 추출하는 기준으로 이용될 수 있다. 임계 값은 분포를 고려해 임의로 선택 가능하며, 통상 0.6~0.8 안에서 설정될 수 있다. 예를 들어, 프로세서(130)는 전체 30초 길이의 음원에서 임의의 시간 단위를 3초로 설정하고, 임계 값을 0.7로 설정할 수 있다. 인공신경망으로부터 예측된 확률 값이 [0.1, 0.1, 0.2, 0.75, 0.8, 0.9, 0.9, 0.9, 0.9, 0.9]와 같다면, 프로세서(130)는 0.7이 안되는 앞의 9초를 필터링하여 총 21초 길이의 특성을 가창 구간 특성으로 추출할 수 있다. 이때, 인공신경망의 입력 시간 단위는 한정하지 않으며, 통상적으로 1초에서 10초에 해당하는 시간 단위로 사용한다. 인공신경망 학습은 하나 이상의 신경망 알고리즘이 사용될 수 있다. 예를 들어, 인공신경망 알고리즘은 CNN(Convolutional Neural Network) 기반의 인공신경망 모델들을 이용할 수 있다. 가창 구간 예측을 위한 학습 모델은 적어도 하나 이상의 합성곱 층, 풀링 층, 완전 연결 층을 포함하며, 프로세서(130)는 반주가 제거된 시간-주파수 표현을 입력 받아 합성곱 연산 및 풀링 연산은 반복적으로 실행하여 가창 여부를 출력할 수 있다. 각 층의 함수로는 다양한 함수를 사용하는 것이 가능하며, 일례로 ReLU 함수, Leaky ReLU 함수, sigmoid 함수, tanh 함수 등이 사용될 수 있다. 풀링 기법으로는 최대값 풀링, 평균 풀링, L2 풀링 등 다양한 풀링 기법을 사용할 수 있다.
단계 S340에서, 프로세서(130)는 아티스트 보이스 마커 추출을 위해 세그먼트 단위의 입력 데이터 생성을 수행할 수 있다. 예를 들어, 프로세서(130)는 추출한 가창 여부 정보를 기반으로 가창 구간 시간-주파수 특성을 추출할 수 있다. 이 단계에서, 프로세서(130)는 추출한 시간-주파수 특성을 활용하며, 특정 음원 구간이 가창 구간에 해당하면, 직전 단계에서 설정한 입력 시간 단위에 해당하는 시간-주파수 특성이 선택되는 방식으로 가창 구간 특성을 추출할 수 있다. 이때, 곡 당 추출하는 세그먼트 단위의 시간-주파수 특성의 수는 한정하지 않으며, 통상적으로 곡 당 90초 이하에 해당하는 시간 단위로 사용할 수 있다.
도 4는 본 발명의 실시 예에 따른 음악 추천 리스트 생성 방법 중 아티스트 보이스 마커 추출 방법의 한 예를 나타낸 도면이다.
도 4를 참조하면, 본 발명의 아티스트 보이스 마커 추출 방법과 관련하여, 프로세서(130)(예: 아티스트 보이스 마커 추출부(220))는 앞선 도 3에서 설명한 단계에서 추출한 입력 데이터를 활용하여 아티스트 보이스 마커를 추출할 수 있다. 이 단계에서, 프로세서(130)는 간 단계의 순서에 따라 이전 단계의 결과가 학습된 모델 또는 가중치 등으로 다음 단계에 활용될 수 있도록 처리할 수 있다.
단계 S410에서, 프로세서(130)는 계층적 어텐션 모델을 기반으로 가수 인식 작업을 통해 곡 단위 및 세그먼트 단위의 가중치를 학습할 수 있다. 가수 인식 작업과 관련하여, 프로세서(130)는 여러 명의 가수 중 특정 세그먼트의 시간-주파수 특성이 어떤 가수에 해당하는 지 맞추는 작업을 통해 가수 인식 작업을 수행할 수 있다. 본 발명에서 가수 인식 모델은 입력 x를 가수-곡-세그먼트로 계층적으로 구성하여 출력 y를 예측함과 동시에 곡-세그먼트에 해당하는 계층적 가중치를 학습한다. 이때, 인코더를 구성하기 위해 하나 이상의 신경망 알고리즘이 사용될 수 있다. 예를 들어, 필터가 주파수 축을 모두 포함하는 timbral CNN 블록, 순방향과 역방향 모두를 고려하는 RNN 등이 사용될 수 있다. 예를 들어, 프로세서(130)는 이전 단계에서 추출된 입력 데이터 및 가수 정보를 이용하여 입력 데이터의 곡 및 세그먼트 단위 가중치 합을 계층적으로 계산하는 계층적 어텐션 모델을 기반으로, 가창 특성과 솔로 가수로만 구성된 가수 정보 간의 신경망을 학습 및 저장할 수 있다. 계층적 어텐션 모델과 관련하여, 프로세서(130)는 세그먼트 단위의 가중치 학습을 통해, 특정 곡 안에서 가수 인식에 중요한 영향을 미치는 세그먼트에 높은 가중치를 부여함과 동시에, 곡 단위의 가중치 학습을 통해 특정 가수 안에서 가수 인식에 중요한 영향을 미치는 곡에 높은 가중치를 부여하도록 모델을 학습하고, 학습된 모델의 가중치들을 저장한다. 이와 관련하여, 사용하는 인공신경망 모델은 시간-주파수 특성을 낮은 차원으로 표현해주는 인코더와 세그먼트 및 곡 단위 가중치를 계산하는 계층적 어텐션 블록을 포함할 수 있다.
단계 S420에서, 프로세서(130)는 저장된 모델의 가중치들 중 세그먼트 단위의 임베딩 특성 벡터와 곡 단위 및 세그먼트 단위의 어텐션 가중치를 획득할 수 있다.
단계 S430에서, 프로세서(130)는 획득한 가중치(예: 계층적 어텐션 가중치)를 기반으로, 획득한 임베딩 특성 벡터를 가공하여 아티스트 보이스 마커 추출을 추출할 수 있다.
도 5는 본 발명의 실시 예에 따른 계층적 어텐션을 활용한 가수 인식 모델 구조도를 나타낸 도면이다.
도 5를 참조하면, 앞서 도 3에서 설명한 바와 같이 프로세서(130)는 음원(예: input data of song2)을 획득하면, 획득된 음원을 지정된 세그먼트 단위(segment N of song 2)로 나누고, 나눠진 세그먼트들을 인코더(51)의 입력을 제공할 수 있다. 이 과정에서, 프로세서(130)는 음원에 대한 시간-주파수 특성을 세그먼트 단위로 추출하여 인코더(51)의 입력으로 제공할 수 있다.
이전 단계에서 추출한 시간-주파수 특성은 인코더(51)을 통과하여 시간 순서를 유지하는 세그먼트 단위의 특성 값(52)으로 변환될 수 있다. 이때, 인코더(51)의 특성 값(52) 계산을 위하여 CNN과 RNN을 적용할 수 있다. 그러나, 본 발명이 이에 한정되는 것은 아니며, 예를 들어, 인코더(51)는 완전 연결 신경망을 활용하여 특성 값(52)을 추출할 수 있다.
상기 프로세서(130)는 인코더(51)의 출력 특성 값(52)을 세그먼트 단위의 가중치를 계산하는 계층적 어텐션 블록(53)의 입력으로 처리할 수 있다. 이때, 특성 값(52)의 차원(dimension)은 고정되지 않으며, 통상적으로 특성 값(52)의 차원은 64에서 256으로 사용한다. 또한, 상기 프로세서(130)는 복수의 노래들에 대한 세그먼트 단위의 가중치 계산을 위해 계층적 어텐션 블록(53)에 기반한 데이터 처리를 수행하며, 각 곡 단위 가중치를 계산하는 계층적 어텐션 블록(54)을 이용하여 복수의 곡들에 대한 아티스트 보이스 마커 추출을 수행할 수 있다.
이와 관련하여, 상기 프로세서(130)는 수학식 1을 기반으로 세그먼트 단위 어텐션 가중치(532)와 곡 단위 어텐션 가중치(542)를 계산할 수 있다.
[수학식 1]
상기 수학식 1에서 i는 동일한 가수(또는 아티스트)의 곡에 대한 인덱스이며 t는 동일한 곡의 세그먼트에 대한 인덱스이다.i는 시대에 따라 음악이 변하는 영향을 반영하기 위하여 발매 년도 및 앨범에서의 순서를 기준으로 정렬하며, t는 곡의 흐름에 따라 정렬한다. W11, W12는 세그먼트 단위의 가중치를 계산하기 위한 가중치 벡터이며, Hit는 특정 곡(i)의 특정 시점(t)에서의 특성 값을 나타낸다. Ait는 세그먼트 단위 어텐션 가중치(532)이다. W21, W22는 곡 단위의 가중치를 계산하기 위한 가중치 벡터이며, songi는 특정곡(i)에서의 특성 값이고, Ai는 특정곡의 곡 단위 어텐션 가중치(542)를 나타낸다. 인코더(51)에 양방향 RNN이 사용된 경우, 수학식 1에서 특성 값(52)은 단방향과 역방향의 특정시점(t)의 특성 값을 결합한 값을 사용할 수 있다
세그먼트 단위 어텐션 가중치 값(532)은 0과 1사이의 확률 값으로 표현될 수 있으며, 각 세그먼트에 대하여 얼마나 반영할 지를 나타낸다. 세그먼트 단위 어텐션 가중치(532)는 특성 값(52)과 연산되어 가수 단위의 가중치(542)를 계산하기 위한 입력(541)으로 사용된다. 가수 단위 어텐션 가중치 값(542)은 0과 1사이의 확률 값으로 표현될 수 있으며, 각 곡에 대하여 얼마나 반영할 지를 나타낸다.
아티스트 보이스 마커 추출부(220)는 가수 인식 작업을 통해 수학식 1의 artist에 해당하는 값과 가수 목소리 정보간의 신경망 구조에서의 완전 연결 층(55)을 활용하여 가수 별 노래 묶음에 대한 가수 인식 정보를 추측할 수 있다.
도 6a는 본 발명의 실시 예에 따른 아티스트 보이스 마커 추출 방법을 도식화한 도면이다. 특히, 도 6a는 앞서 도 4에서 설명한 S430 단계를 설명하는 도면이다.
도 5 및 도 6a를 참조하면, 프로세서(130)는 아티스트 보이스 마커 추출과 관련하여, 인코더(51)의 출력 특성 값(52)과 세그먼트 별 어텐션 가중치(532) 및 곡 별 어텐션 가중치(542)를 입력으로 획득할 수 있다. 그러나, 본 발명의 가중치를 반영하는 방법은 한 가지로 한정하지 않는다. 가중치를 반영하는 방법은 임계 값을 활용하여 필터링하는 방법(621), 가중치들을 계층적으로 특성 값(52)에 곱하는 방법(622), 메타 정보 기반으로 계산하되 스타일 별 가중치를 활용하여 두 가지를 조합하는 방법(623) 중 적어도 하나의 방법(예: 세 가지 방법 중 한 가지를 선택할 수도, 만들 수 있는 조합을 만들어 결과들을 결합)을 활용할 수도 있다. 예를 들어, 아티스트 보이스 마커 추출부(220)는 임계 값을 기준으로 곡 단위 가중치가 높은 복수 개의 곡을 아티스트를 대표하는 후보곡으로 추출(611)하여, 임계 값을 기준으로 세그먼트 단위 어텐션 가중치 값이 높은 복수 개의 곡 별 세그먼트 인덱스를 추출(621)할 수 있다. 또는, 아티스트 보이스 마커 추출부(220)는 모든 곡의 세그먼트 단위 어텐션 가중치 값을 세그먼트 임베딩 값에 곱한 뒤 곡 단위로 더해주고(612), 더한 값을 기준으로 곡 단위 어텐션 가중치 값을 곱하여 가수 단위로 더해서(622)가 아티스트 보이스 마커(63)를 산출할 수 있다. 또는, 아티스트 보이스 마커 추출부(220)는 모든 곡에 대해 임계 값을 기준으로 세그먼트 단위 어텐션 가중치 값이 높은 복수 개의 곡을 대표로 하는 후보 세그먼트들을 추출하고(613), 추출 값에 대해 스타일 별 가중치를 산출 및 해당 스타일을 지닌 곡에 곱하여 가수 단위로 더해줌(623)으로부터 아티스트 보이스 마커(63)를 산출할 수도 있다. 모든 곡의 세그먼트 및 곡 단위 어텐션 가중치 값에 대해 임계 값은 하나의 값으로 한정하지 않으며, 가중치의 분포에 따라 상위 20%~50%에 해당하는 가중치 값으로 설정될 수 있다.
도 6b는 본 발명의 일 실시예에 따른 특성 및 가중치 추출과 활용 흐름을 도식화한 아티스트 보이스 마커 추출 방법의 흐름도이다.
도 6b를 참조하면, 프로세서(130)는 특정 가수의 음원들을 복수의 세그먼트로 구분하며, 이때, 시간-주파수 특성의 수는 음원의 전체 재생 시간보다 작은 시간 단위로 결정될 수 있다. 상기 프로세서(130)는 복수의 세그먼트들에 대하여 인코더(51)의 인코딩을 수행하여 특성 값(52)들을 추출하고, 추출된 특성 값(52)에 대해, 세그먼트 단위 어텐션 가중치 값(532)과 곡 단위 어텐션 가중치 값(542)들을 앞서 설명한 수학식 1을 이용하여 획득할 수 있다.
상기 프로세서(130)는 상기 세그먼트 단위 어텐션 가중치 값(532)과 상기 곡 단위 어텐션 가중치 값(542)을 기반으로, 앞서 도 6a에서 설명한 임계 값 기준의 대표 후보곡 추출(611) 및 임계 값 기준의 곡별 세그먼트 인덱스 추출(621)을 수행하는 제1 방식, 모든 곡의 세그먼트 단위 가중치 값을 곡에 적용(612)한 후 곡 단위 가중치 값을 가수 단위로 적용(22)하는 제2 방식, 모든 곡에 임계 값을 적용하여 후보 세그먼트를 추출(613) 및 스타일 별 가중치를 스타일 별 곡에 적용(623)하는 제3 방식 중 적어도 하나를 운용하여, 아티스트 보이스 마커(63)를 추출할 수 있다.
도 7은 본 발명의 일 실시예에 따른 아티스트 보이스 마커를 활용한 개인화 아티스트 추천 방법의 흐름도이다.
도 7을 참조하면, 단계 S701에서 프로세서(130) 예컨대, 아티스트 추천부(230)는 사용자의 음원에 대한 청취 이력을 확인하고, 청취 빈도 순으로 사용자 이력의 아티스트를 정렬한 후, 곡 단위 가중치를 해당 아티스트의 임계 값과 비교하여, 이력 빈도에 기반한 시드 아티스트를 선정할 수 있다. 일례로, 아티스트 추천부(230)는 청취 빈도 순으로 사용자 이력의 아티스트를 내림차순으로 정렬한 후, 해당 아티스트의 곡 단위 가중치들을 기 설정된 임계 값과 비교할 수 있다. 이때, 임계 값은 아티스트의 모든 곡들의 임계 값 분포를 고려하여 결정하며, 통상 상위 20%~50%에 해당하는 가중치 값으로 설정될 수 있다. 상기 프로세서(130)는 임계 값 설정을 이용하여 아티스트의 목소리를 인식함에 있어 주요하지 않았던 곡들(예: 청취 이력이 일정 횟수 또는 일정 시간 미만인 곡들)을 제외할 수 있다.
단계 S702에서 아티스트 추천부(230)는 임계 값 이상인 곡이 존재하는지 확인하고, 임계 값 이상인 곡이 존재하는 경우, S703 단계에서, 아티스트 보이스 마커를 활용하여 유사도를 계산하고, 유사도 비교를 통해 일정 비율 이상 유사한 아티스트 후보 목록을 추천할 수 있다. 이 과정에서 상기 아티스트 추천부(230)는 임계 값 이상인 곡의 아티스트를 시드 아티스트로 선정할 수 있으며, 시드 아티스트와 다른 아티스트 간의 유사도를 계산할 수 있다. 이때, 시드 아티스트의 보이스 마커는 아티스트 간의 유사도를 계산하기 위해 사용될 수 있다. 유사도 계산에 활용하는 거리는 한 가지로 한정하지 않으며 다양한 거리들이 사용될 수 있다. 예를 들어, 코사인 거리, 맨해튼 거리, 유클리드 거리 등이 사용될 수 있다.
단계 S702에서 임계 값 이상으로 높은 곡이 존재하지 않는 경우, 아티스트 추천부(230)는 단계 S704에서 사용자 이력에서 해당 아티스트를 제외하고 다음으로 이력 빈도가 높은 아티스트를 시드 아티스트로 선정하여 위 작업을 반복할 수 있다. 상기 기재된 방법 이외에도, 아티스트 보이스 마커를 활용하여 유사 아티스트를 추출할 수 있으며, 예를 들어, 모든 아티스트를 시드 아티스트로 설정하여 모든 아티스트에 대한 유사 아티스트를 추출하는 것 역시 가능하다.
상술한 본 발명의 아티스트 보이스 마커를 활용한 유사 음색을 지니는 아티스트 추천 시스템은, 노래방 선곡 추천, 노래방 점수 계산, 가창 합성 평가, 가수 인식 정확도 향상 등을 달성할 수 있다.
이상에서 설명한 바와 같이, 본 명세서는 다수의 특정한 구현물의 세부사항들을 포함하지만, 이들은 어떠한 발명이나 청구 가능한 것의 범위에 대해서도 제한적인 것으로서 이해되어서는 안되며, 오히려 특정한 발명의 특정한 실시형태에 특유할 수 있는 특징들에 대한 설명으로서 이해되어야 한다.
또한, 특정한 순서로 도면에서 동작들을 묘사하고 있지만, 이는 바람직한 결과를 얻기 위하여 도시된 그 특정한 순서나 순차적인 순서대로 그러한 동작들을 수행하여야 한다거나 모든 도시된 동작들이 수행되어야 하는 것으로 이해되어서는 안 된다. 특정한 경우, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다. 또한, 상술한 실시형태의 다양한 시스템 컴포넌트의 분리는 그러한 분리를 모든 실시형태에서 요구하는 것으로 이해되어서는 안되며, 설명한 프로그램 컴포넌트와 시스템들은 일반적으로 단일의 소프트웨어 제품으로 함께 통합되거나 다중 소프트웨어 제품에 패키징될 수 있다는 점을 이해하여야 한다.
본 기술한 설명은 본 발명의 최상의 모드를 제시하고 있으며, 본 발명을 설명하기 위하여, 그리고 통상의 기술자가 본 발명을 제작 및 이용할 수 있도록 하기 위한 예를 제공하고 있다. 이렇게 작성된 명세서는 그 제시된 구체적인 용어에 본 발명을 제한하는 것이 아니다. 따라서, 상술한 예를 참조하여 본 발명을 상세하게 설명하였지만, 통상의 기술자라면 본 발명의 범위를 벗어나지 않으면서도 본 예들에 대한 개조, 변경 및 변형을 가할 수 있다.
따라서 본 발명의 범위는 설명된 실시 예에 의하여 정할 것이 아니고 특허청구범위에 의해 정하여져야 한다.
본 발명에 따르면, 본 발명은 사용자 기호에 맞는 아티스트 또는 곡 검색을 보다 용이하게 하도록 함으로써, 음원 소비를 촉진시킬 수 있다.
10: 음악 추천 제공 시스템
100: 음악 추천 제공 장치
200: 사용자 단말
300: 정보 입력 장치
500: 통신망
100: 음악 추천 제공 장치
200: 사용자 단말
300: 정보 입력 장치
500: 통신망
Claims (11)
- 음원을 저장하는 메모리;
상기 메모리와 기능적으로 연결된 프로세서;를 포함하고,
상기 프로세서는
상기 음원에서 가창 구간을 추출하여 세그먼트 단위의 입력 데이터를 생성하고,
계층적 어텐션 모델을 기반으로 상기 세그먼트 단위 및 상기 음원에 해당하는 곡 단위 가중치를 획득하고,
상기 세그먼트 단위 가중치 및 상기 곡 단위 가중치를 기반으로 아티스트를 구분할 수 있는 보이스 마커를 추출하여 저장하고,
상기 보이스 마커를 기준으로 상기 음원 이외의 다른 음원을 추천하도록 설정된 것을 특징으로 하는 음악 추천 제공 장치. - 제1항에 있어서,
상기 프로세서는
상기 음원에서 반주가 분리된 보컬 신호를 추출하고,
상기 추출된 보컬 신호에 기 정의된 제1 임계 값 이상의 시간-주파수 특성을 가지는 구간을 상기 가창 구간으로 추출하도록 설정된 것을 특징으로 하는 음악 추천 제공 장치. - 제2항에 있어서,
상기 프로세서는
상기 시간-주파수 특성을 인코더의 입력으로 제공하고,
상기 인코더의 출력 값을 상기 가창 구간의 세그먼트 단위의 특성 값으로 변환하도록 설정된 것을 특징으로 하는 음악 추천 제공 장치. - 제3항에 있어서,
상기 프로세서는
상기 세그먼트 단위의 특성 값을 상기 계층적 어텐션 모델에 적용하여 세그먼트 단위의 어텐션 가중치 및 곡 단위 어텐션 가중치를 산출하도록 설정된 것을 특징으로 하는 음악 추천 제공 장치. - 제4항에 있어서,
상기 프로세서는
기 설정된 제2 임계 값 이상의 곡 단위 가중치를 가지는 복 수개의 곡들을 아티스트의 대표 후보곡으로 추출하고,
상기 대표 후보곡 중, 기 설정된 제3 임계 값 이상의 세그먼트 단위 가중치를 가지는 복수 개의 곡 별 세그먼트 인덱스를 추출하고,
상기 곡 별 세그먼트 인덱스를 기준으로 상기 보이스 마커를 생성하도록 설정된 것을 특징으로 하는 음악 추천 제공 장치. - 제5항에 있어서,
상기 프로세서는
사용자의 음원 청취 이력을 기준으로 특정 아티스트를 선정하고,
상기 선정된 아티스트의 곡 단위 가중치들을 기 정의된 제4 임계 값과 비교하고,
상기 기 정의된 임계 값 이상의 곡의 아티스트 보이스 마커를 추출하고,
상기 추출된 보이스 마커의 지정된 크기 이상 유사도를 가지는 다른 아티스트를 검색하여 추천하도록 설정된 것을 특징으로 하는 음악 추천 제공 장치. - 음악 추천 제공 장치가, 기 저장된 음원에서 가창 구간을 추출하여 세그먼트 단위의 입력 데이터를 생성하는 단계;
계층적 어텐션 모델을 기반으로 상기 세그먼트 단위 및 상기 음원에 해당하는 곡 단위 가중치를 획득하는 단계;
상기 세그먼트 단위 가중치 및 상기 곡 단위 가중치를 기반으로 아티스트를 구분할 수 있는 보이스 마커를 추출하여 저장하는 단계;를 포함하는 것을 특징으로 하는 음악 컨텐츠 운용 방법. - 제7항에 있어서,
상기 입력 데이터를 생성하는 단계는
상기 음원에서 반주가 분리된 보컬 신호를 추출하는 단계;
상기 추출된 보컬 신호에 기 정의된 제1 임계 값 이상의 시간-주파수 특성을 가지는 구간을 상기 가창 구간으로 추출하는 단계;를 포함하는 것을 특징으로 하는 음악 컨텐츠 운용 방법. - 제8항에 있어서,
상기 가중치를 획득하는 단계는
상기 시간-주파수 특성을 인코더의 입력으로 제공하여 상기 인코더의 출력 값을 상기 가창 구간의 세그먼트 단위의 특성 값으로 변환하는 단계;
상기 세그먼트 단위의 특성 값을 상기 계층적 어텐션 모델에 적용하여 세그먼트 단위의 어텐션 가중치 및 곡 단위 어텐션 가중치를 산출하는 단계;를 포함하는 것을 특징으로 하는 음악 컨텐츠 운용 방법. - 제9항에 있어서,
상기 저장하는 단계는
기 설정된 제2 임계 값 이상의 곡 단위 가중치를 가지는 복 수개의 곡들을 아티스트의 대표 후보곡으로 추출하는 단계;
상기 대표 후보곡 중, 기 설정된 제3 임계 값 이상의 세그먼트 단위 가중치를 가지는 복수 개의 곡 별 세그먼트 인덱스를 추출하는 단계;
상기 곡 별 세그먼트 인덱스를 기준으로 상기 보이스 마커를 생성하는 단계;를 포함하는 것을 특징으로 하는 음악 컨텐츠 운용 방법. - 제10항에 있어서,
사용자의 음원 청취 이력을 기준으로 특정 아티스트를 선정하는 단계;
상기 선정된 아티스트의 곡 단위 가중치들을 기 정의된 제4 임계 값과 비교하는 단계;
상기 기 정의된 임계 값 이상의 곡의 아티스트 보이스 마커를 추출하는 단계;
상기 추출된 보이스 마커의 지정된 크기 이상 유사도를 가지는 다른 아티스트를 검색하여 추천하는 단계;를 더 포함하는 것을 특징으로 하는 음악 컨텐츠 운용 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190152390A KR20210063822A (ko) | 2019-11-25 | 2019-11-25 | 음악 컨텐츠 운용 방법 및 이를 지원하는 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190152390A KR20210063822A (ko) | 2019-11-25 | 2019-11-25 | 음악 컨텐츠 운용 방법 및 이를 지원하는 장치 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20210063822A true KR20210063822A (ko) | 2021-06-02 |
Family
ID=76373021
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190152390A KR20210063822A (ko) | 2019-11-25 | 2019-11-25 | 음악 컨텐츠 운용 방법 및 이를 지원하는 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20210063822A (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102538680B1 (ko) * | 2022-07-12 | 2023-06-01 | 뉴튠(주) | 인공신경망을 이용하여 음악의 속성에 기반한 유사 음악 검색 방법 및 장치 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20170136200A (ko) | 2016-06-01 | 2017-12-11 | 네이버 주식회사 | 음원 컨텐츠 및 메타 정보를 이용한 플레이리스트 자동 생성 방법 및 시스템 |
-
2019
- 2019-11-25 KR KR1020190152390A patent/KR20210063822A/ko active Search and Examination
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20170136200A (ko) | 2016-06-01 | 2017-12-11 | 네이버 주식회사 | 음원 컨텐츠 및 메타 정보를 이용한 플레이리스트 자동 생성 방법 및 시스템 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102538680B1 (ko) * | 2022-07-12 | 2023-06-01 | 뉴튠(주) | 인공신경망을 이용하여 음악의 속성에 기반한 유사 음악 검색 방법 및 장치 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1985302B (zh) | 用于对音乐进行分类的方法 | |
US7921067B2 (en) | Method and device for mood detection | |
Kaminskas et al. | Contextual music information retrieval and recommendation: State of the art and challenges | |
Casey et al. | Content-based music information retrieval: Current directions and future challenges | |
Kaminskas et al. | Location-aware music recommendation using auto-tagging and hybrid matching | |
Zhang | Music style classification algorithm based on music feature extraction and deep neural network | |
CN101398825B (zh) | 用于快速音乐分类和检索的方法和设备 | |
CN105975496A (zh) | 一种基于上下文感知的音乐推荐方法及装置 | |
CN108766451B (zh) | 一种音频文件处理方法、装置和存储介质 | |
US11271993B2 (en) | Streaming music categorization using rhythm, texture and pitch | |
CN108549675B (zh) | 一种基于大数据及神经网络的钢琴教学方法 | |
KR20100095166A (ko) | 사용자들의 재생 목록 분석을 통한 맞춤형 음악 추천 방법 | |
CN113813609A (zh) | 游戏音乐风格分类方法、装置、可读介质及电子设备 | |
Dhall et al. | Music genre classification with convolutional neural networks and comparison with f, q, and mel spectrogram-based images | |
Schindler | Multi-modal music information retrieval: Augmenting audio-analysis with visual computing for improved music video analysis | |
KR20210063822A (ko) | 음악 컨텐츠 운용 방법 및 이를 지원하는 장치 | |
CN111460215B (zh) | 音频数据处理方法、装置、计算机设备以及存储介质 | |
Lee et al. | Music recommendation system based on usage history and automatic genre classification | |
KR100869643B1 (ko) | 음악구조를 이용한 엠피쓰리 형식의 가요 음향에 대한 요약장치, 방법 및 이를 구현하기 위한 프로그램이 저장된기록매체 | |
CN115359785A (zh) | 音频识别方法、装置、计算机设备及计算机可读存储介质 | |
Jitendra et al. | An ensemble model of CNN with Bi-LSTM for automatic singer identification | |
Rıad et al. | Developing music recommendation system by integrating an MGC with deep learning techniques | |
EP3996085A1 (en) | Relations between music items | |
KR102031282B1 (ko) | 음원 컨텐츠 및 메타 정보를 이용한 플레이리스트 자동 생성 방법 및 시스템 | |
Sharma et al. | Audio songs classification based on music patterns |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination |