KR102497878B1 - Vocal transcription learning method and apparatus for performing learning based on note-level audio data - Google Patents
Vocal transcription learning method and apparatus for performing learning based on note-level audio data Download PDFInfo
- Publication number
- KR102497878B1 KR102497878B1 KR1020220079533A KR20220079533A KR102497878B1 KR 102497878 B1 KR102497878 B1 KR 102497878B1 KR 1020220079533 A KR1020220079533 A KR 1020220079533A KR 20220079533 A KR20220079533 A KR 20220079533A KR 102497878 B1 KR102497878 B1 KR 102497878B1
- Authority
- KR
- South Korea
- Prior art keywords
- information
- neural network
- artificial neural
- vocal
- audio data
- Prior art date
Links
- 230000001755 vocal effect Effects 0.000 title claims abstract description 135
- 238000013518 transcription Methods 0.000 title claims abstract description 101
- 230000035897 transcription Effects 0.000 title claims abstract description 101
- 238000000034 method Methods 0.000 title claims description 70
- 238000013528 artificial neural network Methods 0.000 claims abstract description 289
- 230000015654 memory Effects 0.000 claims abstract description 27
- 238000007781 pre-processing Methods 0.000 claims abstract description 26
- 238000012805 post-processing Methods 0.000 claims abstract description 20
- 238000012549 training Methods 0.000 claims description 17
- 238000013139 quantization Methods 0.000 claims description 15
- 230000033764 rhythmic process Effects 0.000 claims description 7
- 230000001131 transforming effect Effects 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 abstract description 4
- 238000013135 deep learning Methods 0.000 abstract description 2
- 239000011295 pitch Substances 0.000 description 108
- 238000010586 diagram Methods 0.000 description 24
- 230000006870 function Effects 0.000 description 17
- 238000004891 communication Methods 0.000 description 12
- 239000000203 mixture Substances 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- 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
- G10H1/00—Details of electrophonic musical instruments
- G10H1/0008—Associated control or indicating means
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- 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
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/032—Quantisation or dequantisation of spectral components
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/27—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
- G10L25/30—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/90—Pitch determination of speech signals
-
- 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
-
- 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/101—Music Composition or musical creation; Tools or processes therefor
-
- 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)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- General Physics & Mathematics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Evolutionary Biology (AREA)
- Auxiliary Devices For Music (AREA)
Abstract
Description
본 발명은 노트 레벨의 오디오 데이터를 기초로 학습을 수행하는 보컬 채보 학습 방법 및 장치에 관한 발명으로서, 보다 상세하게는 인공신경망을 이용하여 입력된 오디오에 대해 보컬에 대한 피치 정보를 정확히 출력하는 기술 및 이를 이용하여 인공신경망을 효율적으로 학습하는 기술에 관한 발명이다. The present invention relates to a vocal transcription learning method and apparatus for learning based on note-level audio data, and more particularly, a technique for accurately outputting pitch information for vocals for input audio using an artificial neural network. And an invention related to a technology for efficiently learning an artificial neural network using the same.
채보란 본래 기보되어 있지 않은 음악을 악보에 옮기는 것을 의미하는 것으로서, 채보의 목적은 편곡해서 레퍼터리에 넣어 이용하는 경우 또는 학문적 분석을 위한 경우로 나누어지며, 채보의 방법으로는 본래의 형태를 간략하게 적는 규범적(prescriptive)인 서법(書法)과, 연주된 그대로 면밀히 적는 기술적(descriptive)인 서법이 존재한다. Chasebo means to transfer music that is not originally notated into sheet music, and the purpose of transcription is divided into cases where it is used after being arranged and used in a repertoire or for academic analysis. There is a prescriptive writing style and a descriptive writing style that meticulously writes down as it is performed.
한편, 입력된 음원의 음악을 컴퓨터 프로세서 등에 의해 자동으로 악보에 옮기는 것을 자동 채보라고 하는데, 구체적으로 음성 처리에 있어서 곡조 인식의 한 분야인 자동 채보 시스템은 사람의 음성 및 악기로 연주된 노래로부터 음의 높이(음정(音程), interval), 길이(음장(音長), duration), 가사를 인식하여 그 결과를 악보의 형태로 나타내어주는 것을 의미한다. 자동 채보의 경우 기존의 음악에 익숙한 전문가가 직접 노래를 듣고 채보하는 방식에 비하여 시창자(始唱者)의 노래가 가진 음악적 특징을 시스템이 자동으로 인식하고 분석하여 이를 악보화할 수 있으므로 일반인도 쉽게 사용할 수 있는 장점이 존재한다.On the other hand, automatically transcribing the music of the input sound source into sheet music by a computer processor or the like is called automatic transcription. It means recognizing the height (pitch, interval), length (field, duration), and lyrics of the song and displaying the result in the form of a score. In the case of automatic transcription, the system automatically recognizes and analyzes the musical characteristics of the singer's song, compared to the existing method in which an expert familiar with music listens to and transcribes the song himself, so that the general public can easily record it. There are advantages to using it.
지금까지 알려진 자동 채보 방법으로는, 연속적인 음성신호에서 추출된 특징 정보를 각각의 음표로 인식할 수 있게 음소 단위로 분절된 구간을 합쳐 음절의 경계 정보로 사용하는 방법과, 음성신호에서 피치 간격마다 발생하는 음성의 최대값을 연결하여 구한 에너지 정보를 이용하여 음절 구간(segment)을 형성하는 방법 등이 있다.As for the automatic transcription method known so far, a method of combining segmented intervals in phoneme units so that feature information extracted from a continuous voice signal can be recognized as each note and using it as syllable boundary information, and a method of using pitch intervals in a voice signal There is a method of forming a syllable segment using energy information obtained by connecting the maximum value of the voice generated each time.
그러나, 상술한 바와 같은 종래의 자동 채보 시스템은, 음성신호의 연속적인 특성 때문에 음절을 분할하는 경우 그 경계가 모호한 부분에서는 효율성이 현저히 떨어지는 문제점이 존재하고, 예측된 음절 경계의 한 구간마다 음정 인식을 위하여 피치 정보의 대표값을 찾아 주어야 하는 과정을 추가하여야 하는 불편함이 존재한다. 또한, 마디 검출이 불가능하여 노래의 인식 결과를 완전한 악보의 형태로 나타내어 줄 수 없으므로 만족할 만한 결과를 제공해 줄 수 없는 문제점을 가지고 있으며, 입력되는 데이터가 반주가 없는 단선율(monophonic) 보컬인 경우에만 채보가 가능하다는 단점이 존재하였다.However, in the conventional automatic transcription system as described above, when dividing syllables due to the continuous characteristics of the voice signal, there is a problem in that the efficiency is significantly lowered in the part where the boundary is ambiguous, and the pitch is recognized for each section of the predicted syllable boundary. For this, there is an inconvenience of adding a process of finding a representative value of pitch information. In addition, it has a problem that it cannot provide satisfactory results because it is impossible to detect bars and thus cannot show the recognition result of a song in the form of a complete sheet music. There was a downside that it was possible.
또한, 통상적으로 사람은 자신의 스타일에 따라 노래를 부르기 때문에 노래 빠르기는 각각 다른 속도와 시간을 지니고 있으므로 개인차가 매우 크지만, 음장 인식에 있어서 종래의 방법은 일반화된 표준 데이터에 의거하여 표준 음표에 매핑(mapping)하는 방법을 사용하기 때문에 사람마다 다른 노래 입력의 빠르기에 적응하지 못하는 단점이 있다.In addition, since people usually sing according to their own style, individual differences are very large because each song has a different speed and time, but conventional methods for sound field recognition are based on standardized standard data. Since a mapping method is used, there is a disadvantage in that each person cannot adapt to the different song input speed.
따라서, 일 실시예에 따른 노트 레벨의 오디오 데이터를 기초로 학습을 수행하는 보컬 채보 학습 방법 및 장치는 설명한 문제점을 해결하기 위해 고안된 발명으로서, 종래기술보다 효과적으로 피치 정보와 보컬 정보를 포함하고 있는 채보 정보를 출력함으로써, 다성(polyphonic) 음악에서 보컬 멜로디에 해당하는 음표(note)를 보다 정확히 예측하는 딥러닝 기반의 기술을 제공하는데 그 목적이 있다. Therefore, a vocal transcription learning method and apparatus for learning based on note-level audio data according to an embodiment is an invention designed to solve the described problem, and transcription transcription containing pitch information and vocal information more effectively than the prior art. Its purpose is to provide a deep learning-based technology that more accurately predicts notes corresponding to vocal melodies in polyphonic music by outputting information.
보다 구체적으로 일 실시예에 따른 노트 레벨의 오디오 데이터를 기초로 학습을 수행하는 보컬 채보 학습 방법 및 장치는 프레임(frame) 레벨의 채보 정보를 노트 레벨의 채보 정보로 변환시키는 모델을 이용하여, 보다 적은 프레임 레벨의 데이터만으로도 효과적으로 노트 레벨의 채보 정보를 출력하는 방법 및 장치를 제공하는데 그 목적이 있다.More specifically, a vocal transcription learning method and apparatus for learning based on note-level audio data according to an embodiment uses a model that converts frame-level transcription information into note-level transcription information, An object of the present invention is to provide a method and apparatus for effectively outputting note-level transcription information with only a small amount of frame-level data.
일 실시예에 따른 노트 레벨의 오디오 데이터를 기초로 학습을 수행하는 보컬 채보 장치는 하나 이상의 프로세서 및 상기 하나 이상의 프로세서에서 실행 가능한 명령들을 저장하는 메모리 모듈을 포함하고, 상기 프로세서는, 주파수 영역의 제1오디오 데이터를 제1입력 정보로 하고, 상기 제1오디오 데이터에 대해 프레임(frame) 단위로 보컬의 음높이 정보를 포함하는 피치(Pitch) 정보를 제1출력 정보로 출력하는 제1인공신경망, 상기 제1출력 정보를 노트(note) 단위의 보컬 정보를 포함하는 제1학습 데이터로 변환하는 전처리 모듈, 주파수 영역의 제2오디오 데이터를 제3입력 정보로 하고, 상기 제2오디오 데이터에 대해 노트(note) 단위로 보컬의 음높이 정보를 포함하는 피치(Pitch) 정보를 제3출력 정보로 출력하는 제3인공신경망 및 상기 제3출력 정보를 노트 단위의 보컬 정보로 변형하는 후처리 모듈을 포함하고, 상기 제3인공신경망은, 상기 제1학습 데이터를 기초로 상기 제3인공신경망에 대해 학습을 수행할 수 있다.A vocal transcription apparatus for performing learning based on note-level audio data according to an embodiment includes one or more processors and a memory module storing instructions executable by the one or more processors, wherein the processor comprises: A first artificial neural network that takes audio data as first input information and outputs pitch information including vocal pitch information in frames for the first audio data as first output information; A pre-processing module for converting first output information into first training data including vocal information in units of notes, second audio data in the frequency domain as third input information, and notes (notes) for the second audio data A third artificial neural network that outputs pitch information including vocal pitch information in units of notes as third output information and a post-processing module that transforms the third output information into vocal information in units of notes, The third artificial neural network may perform learning on the third artificial neural network based on the first learning data.
상기 전처리 모듈 및 상기 후처리 모듈은, 피치 양자화(pitch quantization) 방법 리듬 양자화(rhythm quantization) 방법을 사용하여 프레임 단위의 피치 정보를 노트 레벨의 피치 정보로 변환할 수 있다.The pre-processing module and the post-processing module may convert frame-unit pitch information into note-level pitch information using a pitch quantization method and a rhythm quantization method.
상기 노트 레벨의 오디오 데이터를 기초로 학습을 수행하는 보컬 채보 장치는, 상기 제1학습 데이터를 저장하는 제1메모리 모듈 및 노트 레벨로 라벨링이 되어 있는 피치 정보를 포함하는 제2학습 데이터를 포함하는 제2메모리 모듈을 포함할 수 있다.The vocal transcription device for performing learning based on the note-level audio data includes a first memory module for storing the first learning data and second learning data including pitch information labeled at the note level. A second memory module may be included.
제3인공신경망은, 상기 제2학습 데이터를 기초로 상기 제3인공신경망에 대해 학습을 수행할 수 있다. The third artificial neural network may perform learning on the third artificial neural network based on the second learning data.
일 실시예에 따른 노트 레벨의 오디오 데이터를 기초로 학습을 수행하는 보컬 채보 장치는 하나 이상의 프로세서 및 상기 하나 이상의 프로세서에서 실행 가능한 명령들을 저장하는 메모리 모듈을 포함하고, 상기 프로세서는, 주파수 영역의 제1오디오 데이터를 제1입력 정보로 하고, 상기 제1오디오 데이터에 대해 프레임(frame) 단위로 보컬의 음높이 정보를 포함하는 피치(Pitch) 정보를 제1출력 정보로 출력하는 제1인공신경망, 상기 제1출력 정보를 노트(note) 단위의 보컬 정보를 포함하는 제1학습 데이터로 변환하는 전처리 모듈, 주파수 영역의 제2오디오 데이터를 제3입력 정보로 하고, 상기 제2오디오 데이터에 대해 노트(note) 단위로 보컬의 음높이 정보를 포함하는 피치(Pitch) 정보를 제3출력 정보로 출력하는 제3인공신경망, 주파수 영역의 제3오디오 데이터를 제5입력 정보로 하고, 상기 제3오디오 데이터에 대해 노트(note) 단위로 보컬의 음높이 정보를 포함하는 피치(Pitch) 정보를 제5출력 정보로 출력하는 제5인공신경망 및 상기 제3출력 정보를 노트 단위의 보컬 정보를 포함하는 제2학습 데이터로 변환하는 제2후처리 모듈을 포함하고, 상기 제3인공신경망은, 상기 제2학습 데이터 및 제3학습 데이터 중 적어도 하나의 데이터를 기초로 학습을 수행할 수 있다.A vocal transcription apparatus for performing learning based on note-level audio data according to an embodiment includes one or more processors and a memory module storing instructions executable by the one or more processors, wherein the processor comprises: A first artificial neural network that takes audio data as first input information and outputs pitch information including vocal pitch information in frames for the first audio data as first output information; A pre-processing module for converting first output information into first training data including vocal information in units of notes, second audio data in the frequency domain as third input information, and notes (notes) for the second audio data A third artificial neural network that outputs pitch information including pitch information of vocals in units of note) as third output information, and uses third audio data in the frequency domain as fifth input information, and the third audio data A fifth artificial neural network outputting pitch information including vocal pitch information in units of notes as fifth output information and second learning data including vocal information in units of notes as the third output information and a second post-processing module for converting to , wherein the third artificial neural network may perform learning based on at least one of the second learning data and the third learning data.
상기 노트 레벨의 오디오 데이터를 기초로 학습을 수행하는 보컬 채보 장치는 상기 제5출력 정보를 노트 단위의 보컬 정보로 변형하는 제2후처리 모듈을 더 포함할 수 있다.The vocal transcription apparatus for learning based on the note-level audio data may further include a second post-processing module for transforming the fifth output information into note-level vocal information.
일 실시예에 따른 인공신경망을 포함하고 있는 프로세서를 이용한 노트 레벨의 자동 보컬 채보 장치의 학습 방법은, 상기 프로세서가 주파수 영역의 제1오디오 데이터를 제1입력 정보로 하고, 상기 제1오디오 데이터에 대해 프레임(frame) 단위로 보컬의 음높이 정보를 포함하는 피치(Pitch) 정보를 제1출력 정보로 출력하는 제1인공신경망을 이용하여 상기 제1출력 정보를 출력하는 제1출력 정보 출력 단계, 상기 프로세서가 상기 제1출력 정보를 노트(note) 단위의 보컬 정보를 포함하는 제1학습 데이터로 변환하는 전처리 단계, 상기 프로세서가 주파수 영역의 제2오디오 데이터를 제3입력 정보로 하고, 상기 제2오디오 데이터에 대해 노트(note) 단위로 보컬의 음높이 정보를 포함하는 피치(Pitch) 정보를 제3출력 정보로 출력하는 제3인공신경망을 이용하여 상기 제3출력 정보를 출력하는 제3출력 정보 출력 단계, 상기 프로세서가 상기 제3출력 정보를 노트 단위의 보컬 정보로 변환하는 후처리 단계 및 상기 프로세서가, 상기 제1학습 데이터를 기초로 상기 제3인공신경망에 대해 학습을 수행하는 학습 수행 단계를 포함할 수 있다. In the method of learning a note-level automatic vocal transcription device using a processor including an artificial neural network according to an embodiment, the processor sets first audio data in the frequency domain as first input information, and the first audio data a first output information outputting step of outputting the first output information using a first artificial neural network that outputs pitch information including pitch information of vocals as first output information in units of frames for the first output information; A pre-processing step of converting, by a processor, the first output information into first training data including vocal information in units of notes; the processor taking second audio data in the frequency domain as third input information; Third output information output that outputs the third output information using a third artificial neural network that outputs pitch information including vocal pitch information in units of notes for audio data as third output information a post-processing step in which the processor converts the third output information into vocal information in units of notes, and a learning step in which the processor performs learning for the third artificial neural network based on the first training data. can include
일 실시예에 따른 인공신경망을 이용한 노트 레벨의 자동 보컬 채보 방법 및 장치는 보컬 정보를 포함하는 피치 정보를 추론함에 있어서 추정된 보컬 정보를 이용하고, 보컬 정보를 추론함에 있어서 추정된 피치 정보를 활용하므로, 종래 기술보다 효과적으로 오디오 데이터에 포함되어 있는 피치 정보와 보컬 정보를 추론할 수 있는 장점이 존재한다. 이에 따라 채보를 진행함에 있어서 보컬을 분리하는 전처리 단계가 존재하지 않아 연산량이 많이 줄어들고 또한, 보컬을 분리하지 않아도 정확도 높은 보컬 채보를 수행할 수 있는 장점이 존재한다. A note-level automatic vocal transcription method and apparatus using an artificial neural network according to an embodiment uses the estimated vocal information in inferring pitch information including vocal information, and utilizes the estimated pitch information in inferring the vocal information. Therefore, there is an advantage of being able to infer pitch information and vocal information included in audio data more effectively than the prior art. Accordingly, there is no pre-processing step for separating vocals in transcription, so the amount of calculation is greatly reduced, and there is an advantage that vocal transcription can be performed with high accuracy even without separating vocals.
또한, 일 실시예에 따른 인공신경망을 이용한 노트 레벨의 자동 보컬 채보 방법 및 장치는 프레임 레벨의 피치 정보를 유사-노트 레벨의 피치 정보를 변환시킨 후, 변환된 데이터를 노트 레벨의 채보를 수행하는 인공신경망의 학습 데이터로 사용하기 때문에, 보다 적은 노트 레벨의 학습 데이터만으로도 효율적으로 노트 레벨의 피치 정보를 출력하는 인공신경망을 학습시킬 수 있는 장점이 존재한다. In addition, a method and apparatus for automatic vocal transcription of a note level using an artificial neural network according to an embodiment converts frame-level pitch information into pseudo-note level pitch information, and then performs note-level transcription of the converted data. Since it is used as training data of an artificial neural network, there is an advantage in that an artificial neural network capable of efficiently outputting note-level pitch information can be trained with less note-level training data.
또한, 인공신경망을 학습함에 있어서 준지도 학습(semi-supervised learning)에 기초한 학습을 수행하기 때문에 라벨링이 되어 있지 않은 적은 데이터만으로도 노트 레벨의 피치 정보를 출력하는 인공신경망을 효율적으로 학습시킬 수 있다.In addition, since learning based on semi-supervised learning is performed in learning the artificial neural network, it is possible to efficiently learn the artificial neural network that outputs note-level pitch information with only a small amount of unlabeled data.
이에 따라, 일 실시예에 따른 인공신경망을 이용한 노트 레벨의 자동 보컬 채보 방법 및 장치는 다양한 장르의 음원에 대해서 유연하면서 동시에 정확한 채보를 진행할 수 있으며, 소스 분리 전처리 과정 없이 바로 다성 음악에서 보컬 멜로디를 채보할 수 있어, 종래 기술에 비해 채보 속도를 매우 향상시킬 수 있는 장점이 존재한다. Accordingly, the note-level automatic vocal transcription method and apparatus using an artificial neural network according to an embodiment can perform flexible and accurate transcription for sound sources of various genres, and can directly generate vocal melodies from polyphonic music without a source separation preprocessing process. Since it is possible to transcribe, there is an advantage that the transcribing speed can be greatly improved compared to the prior art.
도 1은 본 발명의 일 실시예에 따른 음악 채보 장치가 포함된 음악 채보 시스템의 블럭도이다.
도 2는 일 실시예에 따른 음악 채보 장치의 일부 구성 요소를 도시한 블록도이다.
도 3은 일 실시예에 따른 제1인공신경망의 입력 정보 및 출력 정보를 도시한 도면이다.
도 4는 일 실시예에 따른 제1인공신경망을 구성하는 일부 구성 요소를 도시한 블록도이다.
도 5는 일 실시예에 따른 레즈넷 블록의 일부 구성 요소를 도시한 블록도이다.
도 6은 본 발명의 일 실시예에 따른 제2인공신경망의 입력 정보와 출력 정보를 도시한 도면이다.
도 7은 본 발명의 일 실시예에 따른 제1인공신경망과 제2인공신경망을 포함하고 있는 제1인공신경망 모듈의 구성을 도시한 도면이다.
도 8은 본 발명의 다른 실시예에 따른 제1인공신경망과 제2인공신경망 을 포함하고 있는 제1인공신경망 모듈을 도시한 도면이다
도 9는 본 발명에 따른 음악 채보 인공신경망 모듈의 통합 손실함수를 계산하는 방법을 도시한 도면이다.
도 10은 일 실시예에 따른 인공신경망을 이용한 자동 음악 채보 장치의 구성 요소를 도시한 도면이다.
도 11은 일 실시예에 따른 자동 음악 채보 장치의 전처리 모듈을 설명하기 위한 도면이다.
도 12는 다른 실시예에 따른 인공신경망을 이용한 자동 음악 채보 장치의 구성 요소를 도시한 도면이다.1 is a block diagram of a music transcription system including a music transcription device according to an embodiment of the present invention.
2 is a block diagram showing some components of a music transcription device according to an embodiment.
3 is a diagram illustrating input information and output information of a first artificial neural network according to an embodiment.
4 is a block diagram illustrating some components constituting a first artificial neural network according to an embodiment.
5 is a block diagram illustrating some components of a RAZNET block according to an exemplary embodiment.
6 is a diagram showing input information and output information of a second artificial neural network according to an embodiment of the present invention.
7 is a diagram showing the configuration of a first artificial neural network module including a first artificial neural network and a second artificial neural network according to an embodiment of the present invention.
8 is a diagram showing a first artificial neural network module including a first artificial neural network and a second artificial neural network according to another embodiment of the present invention.
9 is a diagram showing a method of calculating an integrated loss function of a music transcription artificial neural network module according to the present invention.
10 is a diagram illustrating components of an automatic music transcription apparatus using an artificial neural network according to an embodiment.
11 is a diagram for explaining a pre-processing module of an automatic music transcription apparatus according to an embodiment.
12 is a diagram illustrating components of an automatic music transcription device using an artificial neural network according to another embodiment.
이하, 본 발명에 따른 실시 예들은 첨부된 도면들을 참조하여 설명한다. 각 도면의 구성요소들에 참조 부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명의 실시 예를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 실시예에 대한 이해를 방해한다고 판단되는 경우에는 그 상세한 설명은 생략한다. 또한, 이하에서 본 발명의 실시 예들을 설명할 것이나, 본 발명의 기술적 사상은 이에 한정되거나 제한되지 않고 당업자에 의해 변형되어 다양하게 실시될 수 있다.Hereinafter, embodiments according to the present invention will be described with reference to the accompanying drawings. In adding reference numerals to the components of each drawing, it should be noted that the same components have the same numerals as much as possible even if they are displayed on different drawings. In addition, in describing an embodiment of the present invention, if it is determined that a detailed description of a related known configuration or function hinders understanding of the embodiment of the present invention, the detailed description thereof will be omitted. In addition, embodiments of the present invention will be described below, but the technical idea of the present invention is not limited or limited thereto and can be modified and implemented in various ways by those skilled in the art.
또한, 본 명세서에서 사용한 용어는 실시 예를 설명하기 위해 사용된 것으로, 개시된 발명을 제한 및/또는 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. In addition, terms used in this specification are used to describe embodiments, and are not intended to limit and/or limit the disclosed invention. Singular expressions include plural expressions unless the context clearly dictates otherwise.
본 명세서에서, "포함하다", "구비하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는다.In this specification, terms such as "include", "include" or "have" are intended to designate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, but one or the existence or addition of more other features, numbers, steps, operations, components, parts, or combinations thereof is not excluded in advance.
또한, 명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "간접적으로 연결"되어 있는 경우도 포함하며, 본 명세서에서 사용한 "제 1", "제 2" 등과 같이 서수를 포함하는 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되지는 않는다. In addition, throughout the specification, when a part is said to be “connected” to another part, this is not only the case where it is “directly connected”, but also the case where it is “indirectly connected” with another element in the middle. Terms including ordinal numbers, such as "first" and "second" used herein, may be used to describe various components, but the components are not limited by the terms.
아래에서는 첨부한 도면을 참고하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략한다. Hereinafter, with reference to the accompanying drawings, embodiments of the present invention will be described in detail so that those skilled in the art can easily carry out the present invention. And in order to clearly explain the present invention in the drawings, parts irrelevant to the description are omitted.
한편 본 발명의 명칭은 '인공신경망을 이용한 노트 레벨의 자동 보컬 채보 방법 및 장치'로 기재하였으나, 이하 설명의 편의를 위해 '인공신경망을 이용한 노트 레벨의 자동 보컬 채보 방법 및 장치'는 '음악 채보 장치'로 축약하여 설명하도록 한다.Meanwhile, the title of the present invention is described as 'a note-level automatic vocal transcription method and apparatus using an artificial neural network', but for convenience of description below, 'a note-level automatic vocal transcription method and apparatus using an artificial neural network' is 'music transcription'. It will be abbreviated as 'device'.
도1은 본 발명의 일 실시예에 따른 음악 채보 장치가 포함된 음악 채보 시스템의 블럭도이다.1 is a block diagram of a music transcription system including a music transcription device according to an embodiment of the present invention.
도1을 참조하면, 음악 채보 시스템(1)은 자동 채보 서비스를 제공하는 사용자 단말기(100)와 자동 채보 작업을 수행하는 음악 채보 장치(200)를 포함할 수 있으며, 사용자 단말기(100)는 이동 단말기로 구현되고, 음악 채보 장치(200)는 원격 서버로서 구현될 수 있다. Referring to FIG. 1, a music transcription system 1 may include a user terminal 100 that provides an automatic transcription service and a
따라서, 사용자 단말기(100)는 PCS(Personal Communication System), GSM(Global System for Mobile communication), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말, 스마트폰(Smartphone), 스마트패드(SmartPad), 태블릿 PC, 스마트와치(smart watch), 스마트 글라스(smart glass), 웨어러블 기기(wearable device) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치를 포함할 수 있다Accordingly, the user terminal 100 is a personal communication system (PCS), a global system for mobile communication (GSM), a personal digital assistant (PDA), an international mobile telecommunication (IMT)-2000, a code division multiple access (CDMA)-2000, W-CDMA (W-Code Division Multiple Access), Wibro (Wireless Broadband Internet) terminal, smartphone, smartpad, tablet PC, smart watch, smart glass, wearable It may include all kinds of handheld-based wireless communication devices such as wearable devices.
음악 채보 장치(200)가 구현되는 서버는 통상적인 서버(server)를 의미하는 바, 서버는 프로그램이 실행되고 있는 컴퓨터 하드웨어로서, 프린터 제어나 파일 관리 등 네트워크 전체를 감시하거나, 제어하거나, 메인프레임이나 공중망을 통한 다른 네트워크와의 연결, 데이터, 프로그램, 파일 같은 소프트웨어 자원이나 모뎀, 팩스, 프린터 공유. 기타 장비 등 하드웨어 자원을 공유할 수 있도록 지원할 수 있다.The server on which the
사용자 단말기(100)는 녹취부(110), 통신부(120), MIDI 생성부(130) 및 디스플레이부(140)를 포함할 수 있다. The user terminal 100 may include a recording unit 110, a communication unit 120, a
녹취부(110)는 음원을 녹취할 수 있다. 구체적으로 녹취부(100)는 사용자 단말(100) 외부에서 들려오는 음원을 녹취하거나, 사용자 단말(100) 자체에서 재생되고 있는 음원을 녹취할 수 있다. 녹취부(100)에 의해 녹취된 음원은 통신부(120)를 통해 음악 채보 장치(200)로 송신될 수 있다. The recording unit 110 may record a sound source. In detail, the recording unit 100 may record a sound source heard from outside the user terminal 100 or a sound source being reproduced in the user terminal 100 itself. The sound source recorded by the recording unit 100 may be transmitted to the
통신부(120)는 음악 채보 장치(200)로 녹음된 음원을 포함한 데이터를 전송하거나 음악 채보 장치(200)로부터 데이터를 수신할 수도 있다. 예를 들어, 통신부(120)는 음악 채보 장치(200)로부터 채보된 악보를 수신할 수도 있고 채보된 악보에 관련된 부가 서비스 정보를 수신할 수도 있다.The communication unit 120 may transmit data including a sound source recorded by the
MIDI 생성부(130)는 채보된 악보에 따른 MIDI(Musical Instrument Digital Interface) 파일을 생성하고 재생할 수 있다. The
디스플레이부(140)는 채보된 악보 또는 기타 부가 서비스 정보를 사용자가 인지할 수 있도록 외부로 출력할 수 있다. 따라서, 디스플레이부(140)는 액정 디스플레이(Liquid Crystal Display: LCD) 패널, 발광 다이오드(Light Emitting Diode: LED) 패널 또는 유기 발광 다이오드(Organic Light Emitting Diode: OLED) 패널 등 다양한 디스플레이 패널을 포함할 수 있다. 한편, 디스플레이부가 터치 패드(touch pad) 등과 같은 GUI(Graphical User interface), 즉 소프트웨어인 장치를 포함하는 경우, 사용자의 입력을 수신하는 입력부(미도시)의 역할을 수행할 수도 있다. The
음악 채보 장치(200)는 프로세서(300, 메모리 모듈(400), 부가 서비스 모듈(500), 사용자 관리 모듈(600)을 포함할 수 있다.The
프로세서(300)는 메모리 모듈(400)에 저장되어 있는 음원 또는 사용자 단말기(100)로부터 수신한 음원에 대해 인공신경망 모듈을 이용하여 자동으로 채보를 생성할 수 있다. 이에 대한 자세한 설명은 후술하도록 한다. The processor 300 may automatically generate transcription for a sound source stored in the
메모리 모듈(400)은 사용자 단말기(100)로부터 수신한 음원을 저장하거나, 프로세서(300)가 인공신경망 모듈을 학습하고 추론함에 있어서 필요한 각종 데이터가 저장될 수 있다. 사용자 단말기(100) 등을 통해 수신된 레퍼런스 데이터 또는 프로세서가 학습 또는 추론을 하면서 생성한 각종 데이터 등이 저장될 수 있다. The
부가 서비스 모듈(500)은 프로세서(300)가 채보한 악보에 관련된 부가 서비스 정보를 생성할 수 있다. The additional service module 500 may generate additional service information related to the score transcribed by the processor 300 .
일 예로 부가 서비스 모듈(500)은 부가 서비스로서 작곡 도우미 서비스를 제공할 수 있다. 본 발명에 따라 제공되는 작곡 도우미 서비스는 사용자 단말기(100)를 이용하는 음악 응용 서비스들 중의 하나로서 사용자 단말기(100)부터 채집된 음원을 원격 서버로서 구현된 음악 채보 장치(200)를 활용하여 자동으로 악보화하며 이를 사용자 단말기(100)에 전달하여 보관할 수 있게 하는 보다 향상된 성능의 작곡 도우미 서비스를 의미할 수 있다.For example, the additional service module 500 may provide a composition assistant service as an additional service. The composer helper service provided according to the present invention is one of music application services using the user terminal 100, and the sound source collected from the user terminal 100 is automatically recorded using the
여기서 향상된 성능의 작곡 도우미 서비스란 종래기술들보다 정확한 채보를 제공하는 음악 채보 장치(200)를 활용함을 의미한다. Here, the composition helper service with improved performance means that the
통상 음악의 문외한인 사람도 흥얼거림을 통해 떠오르는 멜로디를 가질 수 있으며, 이러한 멜로디를 연결하여 작곡을 완성하고자 하는 욕구를 가질 수 있다. 예를 들어, 엄마가 아기를 위해 자장가를 흥얼거린다고 하자. 이 흥얼거리는 자작 자장가를 녹음한 후에 이를 음원의 형태로 보관하였다가 재생할 수도 있지만, 악보로 만들어 두면 데이터를 저장하는데 소요되는 용량도 작아지며 다음에 다시 이어서 노래를 만들 수도 있고 이렇게 만들어져서 악보로 저장된 노래는 다음에 어느 누구라도 재현이 가능할 것이다.Even a person who is not familiar with music can have a melody that comes to mind through humming, and may have a desire to complete a composition by connecting this melody. For example, suppose a mother sings a lullaby for her baby. After recording this humming lullaby, it can be stored in the form of a sound source and then played back. The song will be able to be reproduced by anyone next time.
이러한 작곡 도우미 서비스를 제공받기 위하여, 사용자는 이동 단말기(100)를 통해 음원을 녹취하고 이를 원격 서버로서 구현된 음악 채보 장치(200)로 전송한다. 이동 단말기(100)에서 음원의 녹취는 녹취부(110)를 통해 수행되고 음원의 전송은 통신부(120)를 통해 수행될 수 있다.In order to receive such a composition assistant service, a user records a sound source through the mobile terminal 100 and transmits it to the
또한, 부가 서비스 모듈(500)은 프로세서(300)가 생성한 데이터에 기반하여 멜로디 기반의 음악 검색 시스템, 멜로디 기반의 유사 음원 검색 서비스 등도 함께 제공해 줄 수 있다. In addition, the additional service module 500 may also provide a melody-based music search system and a melody-based similar sound source search service based on data generated by the processor 300 .
음악 채보 장치(200)는 등록된 사용자의 경우 음원 파일을 수신하여 음원을 분석, 채보하며 채보된 결과를 사용자 단말기(100)로 전송할 수 있다. 음악 채보 장치(200)에서 음원의 분석, 채보는 프로세서(300)를 통해 수행되고 채보된 결과는 통신부를 통해 사용자 단말기(100)로 송신될 수 있다. In the case of a registered user, the
사용자 단말기(100)는 MIDI 생성부(130) 및 디스플레이부(140)를 통해 채보된 악보를 디스플레이하고 그 악보에 따른 음악을 재생할 수 있으며, 사용자는 채보된 악보를 보고 그 악보에 따른 음악을 들으면서 추가, 삭제, 수정 등을 통해 작곡을 완성해갈 수 있다.The user terminal 100 can display the transcribed score through the
사용자 관리 모듈(600)는 음악 채보 장치(200)를 사용하는 사용자 단말기(100)의 사용자를 관리하기 위한 데이터를 저장할 수 있다. 한편, 도면에는 도시하지 않았지만 음악 채보 장치(200)는 통신부를 포함할 수 있으며, 통신부는 사용자 단말기(100)로 데이터를 전송할 수 있다. 예를 들어, 통신부는 사용자 단말기(100)로 프로세서(300) 채보한 악보 정보를 전송할 수도 있고 부가 서비스 모듈(500)이 생성한 각종 부가 서비스 정보를 전송할 수도 있다.The user management module 600 may store data for managing users of the user terminal 100 using the
도 2는 일 실시예에 따른 음악 채보 장치의 일부 구성 요소를 도시한 블록도이며, 도 3은 일 실시예에 따른 제1인공신경망의 입력 정보 및 출력 정보를 도시한 도면이다. 도 4는 일 실시예에 따른 제1인공신경망을 구성하는 일부 구성 요소를 도시한 블록도이며, 도 5는 일 실시예에 따른 레즈넷 블록의 일부 구성 요소를 도시한 블록도이다. 2 is a block diagram showing some components of a music transcription device according to an embodiment, and FIG. 3 is a diagram showing input information and output information of a first artificial neural network according to an embodiment. 4 is a block diagram showing some components constituting a first artificial neural network according to an embodiment, and FIG. 5 is a block diagram showing some components of a RAZNET block according to an embodiment.
도 2를 참조하면, 일 실시예에 따른 음악 채보 장치(200)는 프로세서(300), 메모리 모듈(400), 부가 서비스 모듈(500) 및 사용자 관리 모듈(600)을 포함할 수 있으며, 프로세서(300)는 제1인공신경망(311)과 제2인공신경망(312)을 포함하고 있는 제1인공신경망 (311)을 포함할 수 있다. 도 1에서 설명한 내용과 중복되는 설명은 생략하고, 도 2 내지 도 7에서 음악 채보 인공신경망 모듈에 대해서 구체적으로 알아본다. Referring to FIG. 2, the
한편 도 1에서는 프로세서(300)가 제1인공신경망 (311)만을 포함하는 것으로 도시하였으나, 프로세서(300)는 제3인공신경망(313)과 제4인공신경망(314)을 포함하고 있는 제2인공신경망(320) 및 제5인공신경망(115)과 제6인공신경망(316)을 포함하고 있는 제3인공신경망(330)을 포함할 수 있으며, 각각의 인공신경망 모듈은 그 성격에 비추어 음악 채보 인공신경망 모듈이라 명칭될 수 도 있다.Meanwhile, in FIG. 1, the processor 300 is illustrated as including only the first artificial
제1인공신경망(311)은 오디오 데이터를 포함하고 있는 제1입력 정보(10)를 입력 정보로 하여, 입력된 오디오 데이터에 포함되어 있는 보컬에 대한 프레임 단위의 피치(pitch) 정보를 출력하는 인공신경망 모듈을 의미하고, 제2인공신경망(312)은 제1인공신경망(311)의 중간 정보들을 합산한 제2입력 정보(20)를 입력 정보로 하여, 입력된 오디오 데이터에 포함되어 있는 보컬의 존재 유무에 대한 정보인 보컬 정보를 출력하는 인공신경망 모듈을 의미한다. The first artificial
제1인공신경망(311)이 출력하는 피치 정보는 입력된 오디오 데이터에 대해 프레임 별로 각각의 프레임에 보컬의 존재 유무에 대한 정보 및 보컬이 존재한다면 그 보컬의 음높이 정보를 포함하고 있다. The pitch information output by the first artificial
도 3과 도 4를 참조하여 제1인공신경망(311)에 대해 구체적으로 설명하면, 일 실시예에 따른 제1인공신경망(311)은 오디오 데이터를 포함하는 제1입력 정보(10)를 입력 정보로 하고, 상기 오디오 데이터에 대해 포함되어 있는 보컬 정보에 대한 피치 정보를 포함하는 제1출력 정보(20)를 출력 정보로 하는, 기 학습된 인공신경망 모듈을 의미하며, 제1인공신경망(311)은 제1입력 정보(10)를 기초로 제1출력 정보(20)를 추론하는 추론 세션(미도시)과, 제1입력 정보(10) 와 제1출력 정보(20) 및 제1레퍼런스 데이터를 기초로 제1출력 정보(20)의 정확도를 높이는 방법으로 제1인공신경망(311)의 파라미터를 조정하고 업데이트 하는 학습 세션(미도시)을 포함할 수 있다. Referring to FIGS. 3 and 4, the first artificial
제1입력 정보(10)는 사용자가 채보 정보를 생성하고 싶은 음원 데이터를 의미하며, 제1입력 정보(10)는 프레임(frame)을 기준으로 생성된 데이터를 의미할 수 있다. 도 4에서는 일 예로 제1인공신경망(311)에 입력되는 제1입력 정보(10)는 한번에 31개의 프레임 데이터가 입력되는 데이터로 도시하였으나, 본 발명의 실시예가 이러한 예로 한정되는 것은 아니고, 제1인공신경망(311)에 입력되는 제1입력 정보(10)에 포함되어 있는 오디오 데이터에 대한 프레임의 개수는 다양한 개수로 설정될 수 있다. The
제 1출력 정보(20)는 제1인공신경망 (311)에 입력된 오디오 데이터에 대해 프레임별 피치 정보를 포함할 수 있다. 따라서, 제1출력 정보(20)는 각각의 프레임별로 보컬의 존재 유무 및 보컬의 크기에 대한 정보를 포함할 수 있으며, 보컬이 존재하지 않는 경우 해당 프레임에 대한 출력 정보는 0으로 출력될 수 있다. The first output information 20 may include pitch information for each frame of audio data input to the first artificial
따라서, 제1인공신경망(311)이 출력하는 프레임별 정보는 도 3의 오른쪽 아래 표시된 바와 같이 보컬이 아예 존재하지 않는 프레임에서는 NV(Non Vocal) 정보로 정보가 출력되고, 보컬이 존재하는 프레임에서는 각각의 프레임에서의 음높이 정보(예를 들어, D2, B5 등) 정보로 정보가 출력된다.Therefore, information for each frame output by the first artificial
한편, 지칭 명칭에 따라 제1인공신경망(311)은 피치 정보 출력 인공신경망 모듈로 지칭될 수 있으며, 도 4에서는 일 예로 제1인공신경망(311)에 입력되는 제1입력 정보(10)는 31개의 프레임 데이터가 입력되는 것으로 도시하였는바, 제1인공신경망(311에서 출력되는 정보는 상기 31개의 프레임에 대한 각각의 피치 정보를 포함할 수 있다. 따라서, 도 4에 도시한 바와 같이 출력 정보는 각각의 프레임(제1프레임, 제2프레임, 제3프레임 ~ 제31프레임)에 대해 음의 크기가 존재하는지 여부 및 음의 크기가 존재한다면 어느 정도의 크기를 가지고 있는지에 대한 정보를 포함할 수 있다. Meanwhile, according to the designation name, the first artificial
제1인공신경망(311)은 기 공지되어 있는 인공신경망을 구성하는 여러 컨볼루션 블록(convolution block) 및 레즈넷 블록(resnet block)들을 조합하여 구현될 수 있다. 일 예로 도 4에 도시된 바와 같이 제1인공신경망(311)은 컨볼루션 블록(121), 제1레즈넷 블록(122), 제2레즈넷 블록(123), 제3레즈넷 블록(124), 폴링 블록(125) 및 제1LSTM 블록(126) 등을 포함할 수 있다. The first artificial
도 4에 도시된 제1인공신경망(311)의 각각의 구성요소는 일 예에 불과할 뿐, 본 발명의 실시예가 도 4에 도시된 구성 요소로 제한되는 것은 아니다. 따라서, 예를 들어, 컨볼루션 블록은 한 개가 아닌 복수 개 구비될 수 있으며, 레즈넷 블록은 3개가 아닌 1개, 2개 혹은 4개 이상의 블록으로 구비될 수 있다. Each component of the first artificial
본 발명에 따른 제1인공신겸망(311)을 구성하는 블록들에 대해 구체적으로 알아보면, 제1인공신경망(311)에 입력되는 컨볼루션 블록(121)은 입력되는 제1입력 정보(10)에 대해 컨볼루션 연산을 수행하는 블록을 의미하며, 대표적으로 CNN 네트워크에서 사용되는 컨볼루션 연산이 수행될 수 있다.Looking in detail at the blocks constituting the first artificial
레즈넷 블록은 Residual Network(ResNet)를 수행하는 블록을 의미한다. 도 4에 도시되어 있는 레즈넷 블록은 공지되어 있는ResNet을 본 발명의 목적에 맞춰 변형되어 구현된 레즈넷을 의미하는데, 일 실시예로 복수 개의 레즈넷 블록이 직렬적으로 연결되어 있을 수 있다. 따라서, 이전 레즈넷 블록의 출력 정보는 직렬적으로 연결되어 있는 레즈넷 블록의 입력 정보로 입력될 수 있다. A ResNet block means a block that performs Residual Network (ResNet). The Resnet block shown in FIG. 4 means a ResNet implemented by modifying the known ResNet according to the purpose of the present invention. In one embodiment, a plurality of Resnet blocks may be connected in series. Therefore, the output information of the previous Resnet block can be input as the input information of the serially connected Resnet block.
본 발명에 다른 제1인공신경망(311)은 도4에 도시된 바와 같이 제1레즈넷 블록(111), 제2레즈넷 블록(112) 및 제3레즈넷 블록(113) 즉, 총 3개의 레즈넷 블록을 포함하는 것이 출력 정보의 정확성 및 프로세스의 효율성을 고려하였을 때, 가장 좋은 출력 정보를 출력하는 것으로 실험 결과가 나와, 제1인공신경망(311)이 3개의 레즈넷 블록을 포함하는 것으로 도시하였으나, 본 발명의 실시예가 이로 한정되는 것은 아니고 레즈넷 블록의 개수와 배치 형태는 발명의 목적에 맞춰 다양하게 변형될 수 있다. The first artificial
제1인공신경망(311)의 각각의 레즈넷 블록은 도 5에 도시된 바와 같이 수정된 Residual Network로 구현될 수 있다. 따라서, 제1레즈넷 블록(112)은 컨볼루션 블록(121)의 출력 정보를 입력 정보를 입력 받고, 여러 네트워크 연산을 통해 출력 정보로 제1-1중간 정보(11)를 출력 할 수 있다.Each Resnet block of the first artificial
구체적으로, 제2레즈넷 블록(113)은 재1레즈넷 블록(112)의 출력 정보인 제1-1중간 정보(11)를 입력 정보를 입력 받고, 제1-1중간 정보(11)에 대해 여러 네트워크 연산을 수행한 후 출력 정보로 제2-1중간 정보(12)를 출력할 수 있다. 제3레즈넷 블록(114) 또한 같은 프로세서에 의해 제2-1중간 정보(12)를 입력 정보로 입력 받아 제3-1중간 정보(13)를 출력 정보로 출력 할 수 있다.Specifically, the
도 5를 참조하여, 제1레즈넷 블록(112)에 대해 설명하면(제2레즈넷 블록 및 제3레즈넷 블록 또한 제1레즈넷 블록과 동일한 구조를 가진다) 제1레즈넷 블록(112)은 도 5에 도시된 바와 같이 순차적으로 BN/LReLU 블록(121), MaxPool(1X4) 블록(122), Conv 2D 블록(123), BN/LReLU 블록(124) 및 Conv 2D 블록(125)을 포함할 수 있으며, 각각의 블록은 블록의 명칭에 대응되는 연산을 수행할 수 있다. BN/LReLU, MaxPool, Conv 2D 등의 연산은 이미 공지되어 있는 연산 기술에 해당하는바, 이에 대한 구체적인 설명은 생략하도록 한다. Referring to FIG. 5, the
본 발명에 따른 제1레즈넷 블록(112)이 공지되어 있는 레즈넷 네트워크와의 차이점에 대해 설명하면, 제1레즈넷 블록(112)에서 출력되는 정보는 Conv 2D 블록(125)에서 출력되는 정보와 MaxPool(1X4) 블록(122)에서 출력되는 정보가 합산되어 제1-1중간 정보(11)로 출력될 수 있다. 즉, MaxPool(1X4) 블록에서 출력되는 정보가 X정보라 한다면, X정보는 Conv 2D 블록에서 콘불루션 2D 연산을 거쳐 Y정보가 되므로, 최종적으로 제1중간 정보(11)는 Y정보와 Conv 2D 블록(325)에서 출력되는 Z 정보의 합산 정보로 구현될 수 있다. The difference between the first Resnet block 112 according to the present invention and the known Resnet network is explained, the information output from the
제3레즈넷 블록(114)에서 출력된 제3중간 정보(13)는 풀링 블록(115)을 거쳐 제1LSTM 블록(316)으로 입력될 수 있다. 제1LSTM 블록은 RNN 네트워크의 일종인 LSTM(Long short-term memory) 네트워크로 구현된 블록을 의미한다. 오디오 데이터의 경우 입력되는 오디오가 연속적인 특징을 가지고 있다는 점에서, 이전 데이터의 결과를 활용하는LSTM 네트워크를 이용하는 것이 입력된 오디오 데이터에 대한 피치 정보나 음정 정보 효과적으로 출력할 수 있는 장점이 존재한다. 도 4에 도시된 제1인공신경망(310)의 경우 제1입력 정보(10)로 31개의 프레임에 해당하는 오디오 데이터를 활용하였으므로, 제1LSTM 블록(316) 또한 31개의 레이어로 구성된 네트워크를 활용하여 구현될 수 있다. The third intermediate information 13 output from the
제1LSTM 블록(316)에 따라 출력되는 정보인 제1출력 정보(20)는 입력된 오디오 데이터에 대한 피치 정보를 포함할 수 있다.The first output information 20, which is information output according to the 1LSTM block 316, may include pitch information of the input audio data.
구체적으로, 제1출력 정보(20)는 입력된 각각의 프레임에 대응되는 보이스의 피치 정보를 출력할 수 있으며, 제1출력 정보(20)에는 오디오 데이터에 사람의 보컬 자체가 존재하는지, 존재하지 않는지에 대한 데이터 정보인 제1-1출력 정보(Omv)와, 보컬의 존재 여부에 대한 정보 및 보컬이 존재한다면, 그 음의 높낮이 정보를 포함하고 있는 제1-2출력 정보(Om)를 포함할 수 있다.Specifically, the first output information 20 may output pitch information of a voice corresponding to each input frame, and the first output information 20 may determine whether a human vocal exists in the audio data or not 1-1st output information (Omv), which is data information about whether or not there is a voice, and 1-2nd output information (Om) including information on whether vocals exist and, if vocals exist, 1-2nd output information (Om) including pitch information of the sound can do.
예를 들어, 도 4에 도시된 바와 같이 제1프레임과 제2프레임에서는 보컬이 존재하고 제3프레임에서는 보컬이 존재하지는 경우, 제1-1출력 정보(Omv)는 제1프레임과 제2프레임에서는 ON 정보를 가지며, 제3프레임에서는 OFF 정보를 가지게 된다. 따라서, 이 경우 제3프레임에서는 NV(Non Vocal) 정보로, 제1프레임과 제2프레임에서는 V(Vocal) 정보로 1-1출력 정보가 출력된다.For example, as shown in FIG. 4 , when vocals exist in the first frame and the second frame and vocals do not exist in the third frame, the 1-1 output information Omv is the first frame and the second frame. has ON information, and has OFF information in the third frame. Therefore, in this case, 1-1 output information is output as NV (Non Vocal) information in the third frame and V (Vocal) information in the first and second frames.
한편, 음의 높낮이에 대한 정보인 제1-2출력 정보(Om)는 앞서 설명한 바와 같이 보컬의ON/OFF 정보 및 보컬이 존재한다면 각각의 프레임에서의 음의 높이에 대한 정보를 수치적으로 계산한 정보를 포함할 수 있다. 따라서, 이 경우 제1프레임과 제2프레임에서는 보컬의 음의 높이에 대응되는 정보가, 제3프레임에서는 보컬이 존재하지 않으므로 0으로 정보가 출력될 수 있다. On the other hand, as described above, the first-second output information (Om), which is information about the pitch of the sound, numerically calculates the ON/OFF information of the vocal and the information about the pitch of the sound in each frame if the vocal is present. information may be included. Accordingly, in this case, since information corresponding to the pitch of the vocal in the first frame and the second frame and no vocal in the third frame, information may be output as 0.
지금까지 제1인공신경망 모듈(310)이 포함하고 있는 제1인공신경망(311)에 대해 자세히 알아보았다. 이하 제1인공신경망 모듈(310)이 포함하고 있으면서, 제1인공신경망(311)과 병렬적으로 연결되어 있는 제2인공신경망(312)에 대해 구체적으로 알아본다. So far, the first artificial
도 6은 본 발명의 일 실시예에 따른 제2인공신경망의 입력 정보와 출력 정보를 도시한 도면이고, 도 7은 본 발명의 일 실시예에 따른 제1인공신경망과 제2인공신경망을 포함하고 있는 제1인공신경망 모듈의 구성을 도시한 도면이다. 6 is a diagram showing input information and output information of a second artificial neural network according to an embodiment of the present invention, and FIG. 7 includes a first artificial neural network and a second artificial neural network according to an embodiment of the present invention. It is a diagram showing the configuration of the first artificial neural network module.
도 6과 도 7를 참조하여 제2인공신경망(312)에 대해 구체적으로 설명하면, 일 실시예에 따른 제2인공신경망(312)은 제1인공신경망 (311)에서 출력된 여러 중간 정보를 합산한 제2입력 정보(30)를 입력 정보로 하고, 제1입력 정보(10)에 포함되어 있는 오디오 데이터에 프레임별로 보컬이 존재하는지 존재하지 않는지에 대한 보컬 정보를 포함하고 있는 제2출력 정보(40)를 출력 정보로 하는, 기 학습된 인공신경망 모듈을 의미한다. Referring to FIGS. 6 and 7, the second artificial
따라서, 도면에는 도시하지 않았지만 제2인공신경망(312)은 제2입력 정보(30)를 기초로 제2출력 정보(40)를 추론하는 추론 세션(미도시)과, 제2입력 정보(30) 와 제2출력 정보(40) 및 제2레퍼런스 데이트를 기초로 제2출력 정보(40)의 정확도를 높이는 방법으로 제2인공신경망(312)의 파라미터를 조정하고 업데이트 하는 학습 세션(미도시)을 포함할 수 있다. Therefore, although not shown in the figure, the second artificial
제2인공신경망(312)의 구조에 대해 구체적으로 알아보면, 도 7에 도시된 바와 같이 제2인공신경망(312)은 제2입력 정보(30)를 입력 받는 컨볼루션 블록(121)과 제2출력 정보(40)를 출력하는 제2LSTM 블록(122)을 포함할 수 있다.Looking at the structure of the second artificial
구체적으로, 제2입력 정보(30)는 제1인공신경망 (311)을 구성하는 여러 블록들에서 출력되는 중간 정보들을 합한 정보를 입력 정보로 할 수 있는데, 구체적으로 제1레즈넷 블록(112)에서 출력된 제1중간 정보(11)와 제2레즈넷 블록(113)에서 출력된 제2중간 정보(12)와 제3레즈넷 블록(114)에서 출력된 제3중간 정보(13)와 폴링 블록(115)에서 출력되는 제4중간 정보(14)들의 합산 정보로 구현될 수 있다.Specifically, the second input information 30 may be information obtained by combining intermediate information output from various blocks constituting the first artificial
다른 실시예로, 제2입력 정보(30)는 복수개의 맥스폴링 블록을 거친 정보로 구현될 수 있는데, 구체적으로 제2입력 정보(30)는 제1-1중간 정보(11)가 제1맥스폴링 블록인 제1MP 블록(131)을 거쳐서 생성된 제1-2정보(21)와, 제2-1중간 정보(12)가 제2맥스폴링 블록인 제2MP 블록(132)을 거처 생성된 제2-2정보(22)와, 제3-1중간 정보(13)가 제3맥스폴링 블록인 제3MP 블록(133)을 거친 제3-2중간 정보(23) 및 폴링 블록(115)을 거친 제4중간 정보(14)의 합으로 구성될 수 있다. 이렇게 구성된 제2입력 정보(30)는 컨볼루션 블록(121)을 거쳐 제2LSTM 블록(122)으로 입력되고, 최종적으로 제2출력 정보(40)로 출력될 수 있다. In another embodiment, the second input information 30 may be implemented as information that has passed through a plurality of max polling blocks. Specifically, the second input information 30 is the 1-1 intermediate information 11 The 1-2 information 21 generated through the 1 MP block 131 as a polling block and the 2-1
도 6에서는 설명의 편의를 위해 제2인공신경망(312)는 컨볼루션 블록(121)과 제2LSTM 블록(122)만을 포함하는 것으로 도시하였으나, 발명의 실시예에 따라 제2인공신경망(312)은 도 6에 도시되어 있는 복수 개의 MP 블록들을 포함할 수 있으며, MP 블록의 수는 제1인공신경망(311)에 포함되어 있는 레즈넷 블록의 개수에 대응한 개수로 구현될 수 있다. 6 shows that the second artificial
제2LSTM 블록(122)에 따라 출력되는 정보인 제2출력 정보(40)는 입력된 오디오 데이터에 대한 보컬(Vocal) 정보를 포함할 수 있다.The second output information 40, which is information output according to the
구체적으로, 제2출력 정보(40)는 제1입력 정보(10)에 포함되어 있는 오디오 데이터를 기준으로, 각각의 프레임에 보컬 정보가 존재하는지에 대한 정보(V) 또는 존재하지 않는지에 대한 논보컬 정보(NV)를 포함할 수 있다. Specifically, the second output information 40 is information (V) on whether or not vocal information exists in each frame based on the audio data included in the
제2인공신경망(312)이 출력하는 제2출력 정보(40)는 제1인공신경망(311)이 출력하는 제1출력 정보에 사실상 포함되는 정보에 해당한다. 다만, 제1인공신경망(311)의 경우 오디오 데이터 안에 보컬의 높이 정보인 피치 정보를 출력하는 것에 초점에 맞추어져 있다면, 제2인공신경망(312)의 경우 오디오 데이터 안에 보컬이 존재하는 구간 및 존재하지 않는 구간에 대한 정보의 유무를 출력하는데 초점이 맞춰져 있는 인공신경망으로 이해할 수 있다. 따라서, 제2인공신경망(312)은 보컬 정보를 출력하는 정보의 특성에 따라 보컬 정보 출력 인공신경망으로도 지칭될 수 있다. The second output information 40 output by the second artificial
도 8은 본 발명의 다른 실시예에 따른 제1인공신경망과 제2인공신경망 을 포함하고 있는 제1인공신경망 모듈을 도시한 도면이다. 8 is a diagram showing a first artificial neural network module including a first artificial neural network and a second artificial neural network according to another embodiment of the present invention.
도 8에 따른 제1인공신경망 모듈의 경우 기본적인 구성은 도 7에서 설명하였던 구성과 동일하나, 제1인공신경망(311)의 구성에 있어서 차이점이 존재한다. In the case of the first artificial neural network module according to FIG. 8, the basic configuration is the same as the configuration described in FIG. 7, but there is a difference in the configuration of the first artificial
구체적으로, 도 8에 따른 제1인공신경망 (311)은 도면에 도시된 바와 같이 도 7에 따른 제1인공신경망 (311)의 출력단에 제1LSTM 블록(116)에서 출력된 정보와 제2LSTM 블록(122)에서 출력되는 정보를 합산한 정보를 입력 정보로 하여, 제1인공신경망 (311)의 최종 정보를 출력하는 합산 블록(317)을 포함할 수 있다. 합산 블록(317)은 밀집층(Dense layer) 및 FC Layer로 구성되어 있어, 제1LSTM 블록(316)에서 출력하는 정보와 제2LSTM 블록(122)에서 출력하는 정보를 각각 합산한 후, 합산된 정보를 기초로 네트워크 연산을 수행하여, 제1출력 정보(20)를 출력 정보로 출력할 수 있다. Specifically, the first artificial
또한, 도면에는 도시하지 않았지만 합산 블록(317)에서 출력되는 정보는 다시 제2인공신경망의 정보로 입력되어 제2인공신경망(312)이 보컬 정보를 출력하는데 활용될 수 있다. 구체적으로, 제2인공신경망(312)은 제2LSTM 블록(122)과 직렬 연결되어 있는 합산 블록을 더 포함하고 있어, 제2LSTM 블록(122)에서 출력된 정보와, 합산 블록(317)에서 출력된 정보를 합산한 후, 합산된 정보를 기초로 네트워크 연산을 수행하여, 제2출력 정보(40)를 최종 출력 정보로 출력할 수 있다. In addition, although not shown in the drawing, the information output from the summation block 317 may be input again as information of the second artificial neural network, and the second artificial
도 8에 도시된 바와 같은 구성을 가지는 경우 제2인공신경망(312)에서 출력된 보컬 정보를, 피치 정보를 출력하는 제1인공신경망 (311)에서 다시 한번 중간 입력 정보로 활용할 수 있기 때문에, 입력되는 오디오 데이터에서 보컬 정보를 명확히 구분할 수 있다. 따라서, 이러한 정보를 활용하면 보컬에 대한 피치 정보를 더 명확하게 출력할 수 있는 장점이 존재한다. In the case of having the configuration shown in FIG. 8, since the vocal information output from the second artificial
또한, 제1인공신경망(311)에서 출력한 피치 정보를, 보컬 정보를 출력하는 제2인공신경망(312)에서 다시 한번 중간 입력 정보로 활용할 수 있기 때문에, 입력되는 오디오 데이터에서 더 정확히 보컬 정보를 명확히 구분할 수 있는 장점이 존재한다. In addition, since the pitch information output from the first artificial
지금까지 본 발명에 따른 음악 채보 인공신경망 모듈에 해당하는 제1인공신경망 모듈의 구체적인 구성 및 프로세스에 대해 알아보았다. 이하 제1인공신경망 모듈의 학습 방법에 대해 알아본다.So far, the specific configuration and process of the first artificial neural network module corresponding to the artificial neural network module for music transcription according to the present invention have been studied. Hereinafter, the learning method of the first artificial neural network module will be described.
본 발명에 따른 제1인공신경망(311)과 제2인공신경망(312)은 각각 피치 정보와 보컬 정보를 추론함에 있어서, 각각의 인공신경망 모듈을 기초로 학습을 수행할 수 있다. 즉, 제1인공신경망(311)은 피치 정보만을 기초로 손실함수를 계산한 후, 제1레퍼런스 데이터를 이용하여 피치 정보의 정확성을 높이는 방향으로 학습을 수행할 수 있으며, 제2인공신경망(312)은 보컬 정보만을 기초로 손실함수를 계산한 후, 제2레퍼런스 데이터를 이용하여 피치 정보의 정확성을 높이는 방향으로 학습을 수행할 수 있다The first artificial
또한, 본 발명에 따른 제1인공신경망 모듈(310)은 제1인공신경망 (311)과 제2인공신경망(312)을 독립적으로 학습을 하는 것이 아니라, 제1인공신경망 (311)과 제2인공신경망(312)의 출력 정보들을 합산 한 후, 손실함수 또한 이를 기초로 계산하여 학습을 수행할 수 있다. 이를 도 9를 통하여 구체적으로 알아본다. In addition, the first artificial neural network module 310 according to the present invention does not independently learn the first artificial
도 9는 본 발명에 따른 음악 채보 인공신경망 모듈의 통합 손실함수를 계산하는 방법을 도시한 도면이다.9 is a diagram showing a method of calculating an integrated loss function of a music transcription artificial neural network module according to the present invention.
도 9를 참조하면, 본 발명에 따른 제1인공신경망 (311)의 제1손실함수(Lpitch)는 제1인공신경망 (311)에서 출력된 정보만을 기초로 구성될 수 있다. 즉, 도 9의 왼쪽에 도시된 바와 각각의 프레임에 대해 피치 정보가 있는지에 대한 정보(a1) 또는 피치 정보가 없는지에 대한 정보(a2)를 생성한 후, 생성된 정보와 제1레퍼런스 정보의 차이를 기초로 제1손실함수(Lpitch)를 생성한다.Referring to FIG. 9 , the first loss function (Lpitch) of the first artificial
제2인공신경망(312)의 제2손실함수(LVocal)는 보컬 정보와 멜로디 정보를 기초로 생성될 수 있다. 즉, 도 9의 오른쪽에 도시된 바와 같이 제1손실함수를 구성하는 성분 중 피치 정보가 있는 구간(a1)에 대한 정보인 제1보컬 정보(V1)와 피치 정보가 없는 구간(사실상 보컬이 없는 구간,a2)에 대한 정보인 제1넌-보컬 정보(NV1)를 합친 후, 제2인공신경망 (311)에서 출력되는 정보 중 보컬 정보가 존재하는 구간에 대한 정보인 제2보컬 정보(V2)와 보컬 정보가 존재하지 않는 구간에 대한 정보인 제2넌-보컬 정보(NV2)를 모두 합산하여 제2손실함수(LVocal)를 생성할 수 있다.The second loss function LVocal of the second artificial
그 후, 전체 인공신경망 모듈의 손실함수는 토탈 손실함수인 Ltotal은 제1손실함수(Lpitch)와 제2손실함수(LVocal)의 합으로 표현될 수 있는데 구체적으로 아래 식(1)과 같이 표현될 수 있다.Then, the loss function of the entire artificial neural network module can be expressed as the sum of the first loss function (Lpitch) and the second loss function (LVocal), which is the total loss function Ltotal. can
식 (1) - Ltotal = Lpitch * (a*LVocal)Equation (1) - Ltotal = Lpitch * (a*LVocal)
식 (1)에서 a는 계수를 의미하며, 본 발명의 경우 0.1, 0.5 또는 1이 적용될 수 있다. In Equation (1), a means a coefficient, and in the case of the present invention, 0.1, 0.5 or 1 may be applied.
이렇게 생성된 손실함수는 보컬 정보와 피치 정보를 모두 고려하여 전체 인공신경망의 파라미터를 조정하므로, 보다 정확하게 보컬 정보와 피치 정보를 출력할 수 있는 장점이 존재한다. Since the loss function thus generated adjusts parameters of the entire artificial neural network in consideration of both vocal and pitch information, there is an advantage in that vocal and pitch information can be output more accurately.
지금까지 보컬 정보와 피치 정보를 출력하는 제1인공신경망 모듈에 대해 자세히 알아보았다. 이하, 본 발명의 다른 실시예로서, 제1인공신경망 모듈을 출력 정보를 활용하여 노트 레벨의 채보 정보를 출력하는 제2인공신경망 모듈에 대해 자세히 알아본다.So far, we have looked into the first artificial neural network module that outputs vocal information and pitch information in detail. Hereinafter, as another embodiment of the present invention, a second artificial neural network module that outputs note-level transcript information by utilizing output information of the first artificial neural network module will be described in detail.
도 10은 일 실시예에 따른 인공신경망을 이용한 자동 음악 채보 장치의 구성 요소를 도시한 도면이고, 도 11은 일 실시예에 따른 자동 음악 채보 장치의 전처리 모듈을 설명하기 위한 도면이다.10 is a diagram showing components of an automatic music transcription device using an artificial neural network according to an embodiment, and FIG. 11 is a diagram for explaining a preprocessing module of the automatic music transcription device according to an embodiment.
도 10을 참조하면, 일 실시예에 따른 자동 음악 채보 장치는 프레임 레벨 단위의 오디오 데이터에 대한 피치 정보를 출력하는 제1인공신경망 모듈(310), 제1인공신경망 모듈(310)이 출력한 피치 정보를 기초로 상기 오디오 데이터에 대한 노트 레벨의 피치 정보로 데이터를 변환하여 제1학습 데이터를 생성하는 전처리 모듈(340), 상기 제1학습 데이터를 저장하는 제1메모리 모듈(210), 노트 레벨 단위의 피치 정보가 라벨링 되어 있는 제2학습 데이터를 저장하는 제2메모리 모듈(220), 제1학습 데이터 및 제2학습 데이터 중 적어도 하나의 데이터를 기초로 학습을 수행하며, 입력되는 프레임 레벨 단위의 오디오 데이터에 대해 프레임 레벨 단위의 피치 정보를 출력하는 제2인공신경망 모듈(320) 및 제2인공신경망 모듈에서 출력된 프레임 레벨 단위의 정보를 노트 레벨 단위의 정보를 변형하는 후처리 모듈(350)을 포함할 수 있다. Referring to FIG. 10, the automatic music transcription apparatus according to an embodiment includes a first artificial neural network module 310 outputting pitch information of audio data in frame-level units, and a pitch output by the first artificial neural network module 310. A pre-processing module 340 for generating first learning data by converting data into note-level pitch information for the audio data based on the information, a first memory module 210 for storing the first training data, and note level The
도 10에 따른 자동 음악 채보 장치에서 제1인공신경망 모듈(310)과 제2인공신경망 모듈(320) 앞선 도면을 통해 설명하였던 인공신경망 모듈과 그 구성이 대부분 동일하나, 하나의 실시예로서 제1인공신경망 모듈(310)은 도 7에 따른 인공신경망 모듈이 차용되고, 제2인공신경망 모듈(320)은 도 8에 따른 인공신경망 모듈이 차용될 수 있으며, 이러한 경우 제1인공신경망 모듈(310)은 제2인공신경망 모듈(320)이 학습을 하는데 필요한 학습 데이터를 생성하는 인공신경망의 역할을 하며, 제2인공신경망 모듈(320)이 실질적으로 자동 보컬 채보를 하는 역할을 수행할 수 있다. In the automatic music transcription device according to FIG. 10, the first artificial neural network module 310 and the second artificial neural network module 320 have almost the same configuration as the artificial neural network module described in the previous figure, but as one embodiment, the first artificial neural network module 310 The artificial neural network module 310 may borrow the artificial neural network module according to FIG. 7, and the second artificial neural network module 320 may borrow the artificial neural network module according to FIG. 8. In this case, the first artificial neural network module 310 plays a role of an artificial neural network generating learning data necessary for the second artificial neural network module 320 to learn, and the second artificial neural network module 320 may actually play a role of automatic vocal transcription.
제1인공신경망 모듈(310)과 제2인공신경망 모듈(320)에 대한 중복되는 설명은 생략하고, 다른 구성요소 및 전반적인 프로세스에 대해 설명하면, 전처리 모듈(340)은 제1인공신경망 모듈(310)이 출력하는 프레임 단위의 피치 정보를 가공하여 유사-노트(pseudo-note) 레벨의 피치 정보를 변환하는 역할을 수행할 수 있다.If overlapping descriptions of the first artificial neural network module 310 and the second artificial neural network module 320 are omitted, and other components and overall processes will be described, the preprocessing module 340 is the first artificial neural network module 310 ) may process pitch information in units of frames output by converting pseudo-note level pitch information.
구체적으로 전처리 모듈(340)은 도 10에 도시된 바와 같이 크게 2가지 피치 양자화(pitch quantization) 프로세스와 리듬 양자화(rhythm quantization)을 프로세스를 거쳐 프레임 단위의 피치 정보를 유사-노트 레벨의 피치 정보로 변환한다. 노트 레벨이 아닌 유사-노트 레벨로 호칭하는 이유는 데이터를 처음부터 정확하게 노트 레벨로 취합한 것이 아니고 프레임 단위의 피치 정보를 가공하여 노트 레벨로 변형한 것이기 때문에 정확한 노트 레벨의 데이터와는 차이가 존재하여 유사-노트 레벨이라고 호칭한다. Specifically, as shown in FIG. 10, the preprocessing module 340 converts pitch information in units of frames into pseudo-note level pitch information through largely two pitch quantization processes and rhythm quantization processes. convert The reason why it is called pseudo-note level rather than note level is that the data is not accurately collected at the note level from the beginning, but the pitch information in units of frames is processed and transformed into the note level, so there is a difference from the exact note level data. Therefore, it is called pseudo-note level.
전처리 모듈(340)이 수행하는 피치 양자화 프로세서는 연속 피치를 반음 단계로 반올림하는 피치 양자화 프로세스를 의미한다. 구체적으로, 인공신경망을 기반으로 하는 많은 음정 추정 모델에서 출력은 양자화된 음높이 값에 대한 소프트맥스 함수로 표현되며, 여기서 인접한 음높이는 반음보다 훨씬 작은 경향을 가지고 있다. 따라서, 가장 신뢰도 높은 피치를 가져와 가장 가까운 MIDI 음표 번호로 퀀타이즈 하는 것이 피치 양자화 과정이다.The pitch quantization process performed by the preprocessing module 340 refers to a pitch quantization process that rounds continuous pitches to semitone steps. Specifically, in many pitch estimation models based on artificial neural networks, the output is expressed as a softmax function for quantized pitch values, where adjacent pitches tend to be much smaller than semitones. Therefore, the pitch quantization process is to take the most reliable pitch and quantize it to the nearest MIDI note number.
피치 양자화 과정이 완료되면 전처리 모듈(340)은 그 다음 단계로 리듬 양자화 과정을 수행한다. 리듬 양자화 과정은 양자화된 피치 라인의 조각을 비트 기반 단위로 스냅(snap) 하는 과정을 의미한다. When the pitch quantization process is completed, the preprocessing module 340 performs a rhythm quantization process as a next step. The rhythm quantization process refers to a process of snapping pieces of the quantized pitch line in beat-based units.
일 예로 3개의 중간 필터로 양자화된 피치를 평탄화하는 과정을 수행 하며, 필터링된 출력을 비트 기반 단위로 만들기 위해 주어진 템포에서 중앙값 필터의 크기를 각각 1/32, 1/16 및 1/12 비트로 설정할 수 있다. 필터의 개수는 사용 환경에 따라 다르게 사용될 수 있으나, 3개의 계단식 필터가 라벨의 품질을 가장 향상시킨 것을 실험적으로 알 수 있었다. For example, the process of flattening the quantized pitch with three intermediate filters is performed, and the size of the median filter is set to 1/32, 1/16, and 1/12 beats respectively at a given tempo to make the filtered output in a beat-based unit. can The number of filters may be used differently depending on the usage environment, but it was found experimentally that the three cascaded filters improved the quality of the label the most.
리듬 양자화 과정이 완료되면, 전처리 모듈(340)은 가창으로 보기에는 짧은 작은 조각을 제거하였으며, 마지막으로 옥타브 오류를 최소화하는 간단한 규칙을 설정함으로써, 전처리 과정을 마무리하며, 이렇게 생성된 데이터는 제1메모리 모듈(210)에 저장되어 제2인공신경망 모듈이 학습할 때 학습 데이터로 사용될 수 있다. When the rhythm quantization process is completed, the pre-processing module 340 removes small pieces that are short to view as a song, and finally sets a simple rule to minimize octave errors to finish the pre-processing process. It is stored in the memory module 210 and can be used as learning data when the second artificial neural network module learns.
제2메모리 모듈(220)에 저장되는 데이터는 노트-레벨로 라벨링이 되어 있는 피치 정보를 포함하고 있는 데이터를 의미한다. Data stored in the
제 2인공신경망 모듈(320)은 주파수 영역의 제2오디오 데이터를 제3입력 정보로 하고, 상기 제2오디오 데이터에 대해 프레임 단위로 보컬의 음높이 정보를 포함하는 피치(Pitch) 정보를 제3출력 정보(60)로 출력하는 제3인공신경망과, 제3인공신경망을 구성하는 블록에서 출력되는 중간 출력 정보를 제4입력 정보로 하고, 상기 제2오디오 데이터에 대해 프레임 단위로, 보컬(Vocal)의 존재 유무에 대한 보컬 정보를 제4출력 정보로 출력하는 제4인공신경망을 포함할 수 있다.The second artificial neural network module 320 takes second audio data in the frequency domain as third input information, and third outputs pitch information including vocal pitch information in frame units for the second audio data. The third artificial neural network output as
제2인공신경망 모듈(320)의 제3인공신경망과 제4인공신경망은 제1인공신경망 모듈(310)의 제1인공신경망(311)과 제2인공신경망(312)에 각각 대응되는 인공신경망 모듈에 해당하여 대부분의 구성요소는 동일하다. 그러나, 앞서 언급한 바와 같이 하나의 실시예로서 제1인공신경망 모듈(310)은 도 7에 따른 인공신경망 모듈이 차용되고, 제2인공신경망 모듈(320)은 도 8에 따른 인공신경망 모듈이 차용될 수 있다.The third artificial neural network and the fourth artificial neural network of the second artificial neural network module 320 correspond to the first artificial
제2인공신경망 모듈(320)의 학습 방법에 대해 설명하면, 제2인공신경망 모듈(320)은 학습 데이터로서 제1메모리 모듈(210)에 저장되어 있는 제1학습 데이터 및 제2메모리 모듈(320)에 저장되어 있는 제2학습 데이터 중 적어도 하나를 기초를 학습을 수행할 수 있다.Describing the learning method of the second artificial neural network module 320, the second artificial neural network module 320 uses the first learning data stored in the first memory module 210 as learning data and the second memory module 320. ) Learning may be performed based on at least one of the second learning data stored in ).
일반적으로, 보컬 채보를 진행함에 있어서 주파수 영역의 프레임 레벨의 채보보다는 온셋(Onset), 오프셋(Offset), 노트(note) 정보로 채보 정보를 출력하는 노트(note,음표) 레벨의 채보가 보다 정확한 채보 정보를 전달해 줄 수 있다. In general, in vocal transcription, note-level transcription, which outputs transcription information with onset, offset, and note information, is more accurate than frame-level transcription in the frequency domain. I can pass on the information of the chaebol.
그러나 노트 레벨의 채보는 노래 특성상 사람마다 같은 음을 다르게 부르는 경우도 존재하고, 다양한 변수가 존재하기 때문에 휴리스틱한 방법으로는 노트를 정확하게 예측하는 것은 매우 어렵다. 그리고 결정적으로 인공신경망을 이용하여 학습을 진행하기 위해서는 노트 레벨로 라벨링 되어 있는 데이터가 존재해야 하는데, 오디오와 정확하게 매칭되어 있는 악보 수준으로 라벨링 되어 있는 데이터가 매우 적어 인공신경망을 이용하여 학습을 수행하기는 매우 어려운 문제점이 존재한다. However, due to the nature of the song, each person sings the same note differently in the note-level transcription, and since there are various variables, it is very difficult to accurately predict the note using a heuristic method. Crucially, in order to proceed with learning using an artificial neural network, there must be data labeled at the note level, but there is very little data labeled at the level of a score that accurately matches the audio, making it difficult to perform learning using an artificial neural network. has a very difficult problem.
그러나, 본 발명에 따른 자동 보컬 채보 장치는 제1인공신경망 모듈(310) 및 전처리 모듈(340)을 활용하면 기존의 프레임 단위의 피치 정보를 실제 노트 레벨 단위와 유사한 성격을 가지고 있는 유사-노트 레벨의 피치 정보로 쉽게 변환할 수 있고, 제2인공신경망 모듈(320)은 이렇게 생성된 데이터를 기초로 학습을 수행할 수 있기 때문에, 출력되는 데이터는 노트 레벨의 데이터와 많이 유사한 성격을 가지고 있는 데이터를 생성할 수 있어, 노트 레벨의 자동 채보 장치의 효율성을 높일 수 있는 장점이 존재한다. However, the automatic vocal transcription apparatus according to the present invention utilizes the first artificial neural network module 310 and the pre-processing module 340 to convert existing frame-based pitch information to a pseudo-note level having a similar character to an actual note level unit. Since it can be easily converted into pitch information of , and the second artificial neural network module 320 can perform learning based on the data generated in this way, the output data is data that has characteristics very similar to note-level data. can be generated, so there is an advantage of increasing the efficiency of the note-level automatic transcribing device.
즉, 제2인공신경망 모듈(320)의 모델 자체는 구성 요소가 제1인공신경망 모듈(320)의 구성과 많이 유사하여 프레임 레벨로 결과를 예측하지만, 학습을 수행함에 있어서 유사-노트 레벨의 제1학습 데이터 및 노트 레벨의 제2학습 데이터로 학습을 수행하였고, 출력 정보를 출력하는 LSTM 단에서 시계열 학습이 함께 이루어지기 때문에 최종 출력 정보는 노트 레벨의 정보와 매우 유사한 정보의 성격을 가지고 있어, 사실상 노트 레벨의 채보 정보를 출력하는 효과를 얻을 수 있다. That is, the model of the second artificial neural network module 320 itself predicts the result at the frame level because its components are very similar to the configuration of the first artificial neural network module 320, but in performing learning, the similar-note level Learning was performed with the first learning data and the second learning data of the note level, and since time series learning is performed together at the LSTM stage that outputs the output information, the final output information has a very similar nature to the note level information, In fact, the effect of outputting transcription information at the note level can be obtained.
후처리 모듈(350)은 제2인공신경망 모듈(320)에서 출력되는 프레임 레벨의 출력 정보에 대해 노트 레벨의 채보 정보로 변환하는 역할을 할 수 있다. 사실상 후처리 모듈(350)은 앞선 설명한 전처리 모듈(340)이 수행한 피치 양자화(pitch quantization) 프로세스와 리듬 양자화(rhythm quantization)을 프로세스를 거쳐 프레임 단위의 피치 정보를 노트 레벨의 피치 정보로 변환하여 출력할 수 있다. 이에 대한 프로세서에 대해서는 앞서 자세히 기재하였는바 이하 생략하도록 한다. The post-processing module 350 may play a role of converting frame-level output information output from the second artificial neural network module 320 into note-level transcription information. In fact, the post-processing module 350 converts frame-based pitch information into note-level pitch information through the pitch quantization process and rhythm quantization process performed by the pre-processing module 340 described above, can be printed out. Since the processor for this has been described in detail above, it will be omitted below.
도 12는 다른 실시예에 따른 인공신경망을 이용한 자동 음악 채보 장치의 구성 요소를 도시한 도면이다.12 is a diagram illustrating components of an automatic music transcription device using an artificial neural network according to another embodiment.
도 12를 참조하면, 일 실시예에 따른 자동 음악 채보 장치는 프레임 레벨 단위의 오디오 데이터에 대한 피치 정보를 출력하는 제1인공신경망 모듈(310), 제1인공신경망 모듈(310)이 출력한 피치 정보를 기초로 상기 오디오 데이터에 대한 노트 레벨의 피치 정보로 데이터를 변환하여 제1학습 데이터를 생성하는 전처리 모듈(340), 상기 제1학습 데이터를 저장하는 제1메모리 모듈(210), 노트 레벨 단위의 피치 정보가 라벨링 되어 있는 제2학습 데이터를 저장하는 제2메모리 모듈(220), 제1학습 데이터 및 제2학습 데이터 중 적어도 하나의 데이터를 기초로 학습을 수행하며, 입력되는 프레임 레벨 단위의 오디오 데이터에 대한 노트 레벨 단위의 피치 정보를 출력하는 제2인공신경망 모듈(320) 및 제2인공신경망 모듈에서 출력된 프레임 레벨 단위의 정보를 노트 레벨 단위의 정보를 변형하는 제1후처리 모듈(351), 랜덤 노이즈 학습 데이터인 제3학습 데이터가 저장되어 있는 제3메모리 모듈(230), 제1후처리 모듈(351)에서 출력한 정보 및 제3학습 데이터 중 적어도 하나의 데이터를 기초로 학습을 수행하며, 입력되는 프레임 레벨 단위의 오디오 데이터에 대한 노트 레벨 단위의 피치 정보를 출력하는 제3인공신경망 모듈(330) 및 제3인공신경망 모듈(330)에서 출력된 프레임 레벨 단위의 정보를 노트 레벨 단위의 정보를 변형하는 제2후처리 모듈(352)을 포함할 수 있다.Referring to FIG. 12, the automatic music transcription apparatus according to an embodiment includes a first artificial neural network module 310 outputting pitch information of audio data in frame level units, and a pitch output by the first artificial neural network module 310. A pre-processing module 340 for generating first learning data by converting data into note-level pitch information for the audio data based on the information, a first memory module 210 for storing the first training data, and note level The
도 12에 따른 자동 음악 채보 장치에서 제1인공신경망 모듈(310), 제2인공신경망 모듈(320) 및 제3인공신경망 모듈(330)은 앞선 도면을 통해 설명하였던 인공신경망 모듈과 그 구성이 대부분 동일하나, 하나의 실시예로서 제1인공신경망 모듈(310)은 도 7에 따른 인공신경망 모듈이 차용되고, 제2인공신경망 모듈(320)과 제3인공신경망 모듈(330)은 도 8에 따른 인공신경망 모듈이 차용될 수 있다. 이러한 경우 제1인공신경망 모듈(310)은 제2인공신경망 모듈(320)이 학습을 하는데 필요한 학습 데이터를 생성하는 인공신경망의 역할을 하며, 제2인공신경망 모듈(320)이 실질적으로 자동 보컬 채보를 하는 역할을 수행함과 동시에 제3인공신경망 모듈(330)이 학습하는 데이터를 출력하는 역할을 수행할 수 있다. 즉, 이러한 경우 제3인공신경망 모듈(330)이 학습을 수행함에 있어서, 제2인공신경망 모듈(320)은 보다 정확한 정보를 출력하는 선생님 역할을 하는 모델이 되며, 제3인공신경망 모듈(330)은 제2인공신경망 모듈(320)이 출력하는 정보에 기초하여 학습을 수행한다는 점에서 학생 역할을 모델을 할 수 있다. 즉, 도 12에 따른 자동 음악 채보 장치의 경우 준지도학습(Semi-supervised) 방법에 기초하여 제3인공신경망 모듈(330)이 학습을 수행하는 것을 특징으로 한다. The first artificial neural network module 310, the second artificial neural network module 320, and the third artificial neural network module 330 in the automatic music transcription device according to FIG. However, as an embodiment, the artificial neural network module according to FIG. 7 is borrowed as the first artificial neural network module 310, and the second artificial neural network module 320 and the third artificial neural network module 330 according to FIG. An artificial neural network module may be employed. In this case, the first artificial neural network module 310 serves as an artificial neural network that generates learning data necessary for the second artificial neural network module 320 to learn, and the second artificial neural network module 320 substantially automatically transcribes vocals. At the same time as performing a role of performing a role of outputting the data to be learned by the third artificial neural network module 330 may be performed. That is, in this case, when the third artificial neural network module 330 performs learning, the second artificial neural network module 320 becomes a model serving as a teacher outputting more accurate information, and the third artificial neural network module 330 may model the role of a student in that learning is performed based on information output by the second artificial neural network module 320 . That is, in the case of the automatic music transcription device according to FIG. 12, the third artificial neural network module 330 performs learning based on a semi-supervised learning method.
제1인공신경망 모듈(310), 제2인공신경망 모듈(320) 및 전처리 모듈(340)에 대한 중복되는 설명은 생략하며, 제1후처리 모듈(351)과 제2후처리 모듈(352) 또한 앞서 설명한 후처리 모듈(350)과 역할이 동일한바 이에 대한 자세한 설명은 생략하도록 한다. Redundant descriptions of the first artificial neural network module 310, the second artificial neural network module 320, and the pre-processing module 340 are omitted, and the first post-processing module 351 and the second post-processing module 352 are also Since it has the same role as the post-processing module 350 described above, a detailed description thereof will be omitted.
제 3인공신경망 모듈(330)은 주파수 영역의 제3오디오 데이터를 제5입력 정보로 하고, 상기 제3오디오 데이터에 대해 노트(note) 단위로 보컬의 음높이 정보를 포함하는 피치(Pitch) 정보를 제5출력 정보로 출력하는 제5인공신경망과, 제5인공신경망을 구성하는 블록에서 출력되는 중간 출력 정보를 제5입력 정보로 하고, 상기 제3오디오 데이터에 대해 프레임 단위로, 보컬(Vocal)의 존재 유무에 대한 보컬 정보를 제6출력 정보로 출력하는 제6인공신경망을 포함할 수 있다.The third artificial neural network module 330 takes third audio data in the frequency domain as fifth input information, and receives pitch information including pitch information of vocals in units of notes for the third audio data. A fifth artificial neural network output as fifth output information and intermediate output information output from a block constituting the fifth artificial neural network are set as fifth input information, and for the third audio data, in frame units, vocal It may include a sixth artificial neural network that outputs vocal information about the presence or absence of as sixth output information.
제2인공신경망 모듈(320)의 제3인공신경망과 제4인공신경망은 제1인공신경망 모듈(310)의 제1인공신경망(311)과 제2인공신경망(312)에 각각 대응되는 인공신경망 모듈에 해당하여 대부분의 구성요소는 동일하다. 그러나, 앞서 언급한 바와 같이 하나의 실시예로서 제1인공신경망 모듈(310)은 도 7에 따른 인공신경망 모듈이 차용되고, 제2인공신경망 모듈(320)은 도 8에 따른 인공신경망 모듈이 차용될 수 있다.The third artificial neural network and the fourth artificial neural network of the second artificial neural network module 320 correspond to the first artificial
제2인공신경망 모듈(320)의 학습 방법에 대해 설명하면, 제2인공신경망 모듈(320)은 학습 데이터로서 제1메모리 모듈(210)에 저장되어 있는 제1학습 데이터 및 제2메모리 모듈(320)에 저장되어 있는 제2학습 데이터 중 적어도 하나를 기초를 학습을 수행할 수 있다.Describing the learning method of the second artificial neural network module 320, the second artificial neural network module 320 uses the first learning data stored in the first memory module 210 as learning data and the second memory module 320. ) Learning may be performed based on at least one of the second learning data stored in ).
제3인공신경망 모듈(330)의 제5인공신경망과 제6인공신경망은 제2인공신경망 모듈(320)의 제3인공신경망과 제4인공신경망에 각각 대응되는 인공신경망에 해당하여 대부분의 구성요소는 동일하다. 그러나, 앞서 언급한 바와 같이 하나의 실시예로서 제1인공신경망 모듈(310)은 도 7에 따른 인공신경망 모듈이 차용되고, 제2인공신경망 모듈(320) 및 제3인공신경망 모듈(330)은 도 8에 따른 인공신경망 모듈이 차용될 수 있다.The fifth artificial neural network and the sixth artificial neural network of the third artificial neural network module 330 correspond to the artificial neural networks corresponding to the third artificial neural network and the fourth artificial neural network of the second artificial neural network module 320, respectively, and most of the components is the same However, as mentioned above, as one embodiment, the first artificial neural network module 310 borrows the artificial neural network module according to FIG. 7, and the second artificial neural network module 320 and the third artificial neural network module 330 An artificial neural network module according to FIG. 8 may be employed.
제3인공신경망 모듈(330)의 학습 방법에 대해 설명하면, 제2인공신경망 모듈(320)은 학습 데이터로서 제3메모리 모듈(210)에 저장되어 있는 제3학습 데이터 및 제2인공신경망 모듈(320)이 출력하는 데이터를 기초로, 제2인공신경망 모듈(320)을 선생님으로 하는 준지도학습을 수행하는 것에 특징이 존재한다.Describing the learning method of the third artificial neural network module 330, the second artificial neural network module 320 includes the third learning data stored in the third memory module 210 as learning data and the second artificial neural network module ( 320) is characterized in performing semi-supervised learning with the second artificial neural network module 320 as a teacher based on the output data.
본 발명에 따른 준지도학습은 여러 방법에 의해 진행될 수 있는데, 첫 번째로는 라벨링이 되어 있지 않은 데이터를 학습이 되어있는 제2인공신경망 모듈(320)과 제3인공신경망 모듈(330)에 각각 입력하여 출력되는 결과를 서로 비교하여 그 차이를 줄이는 방법으로 학습을 수행하는 방법이 있다. Semi-supervised learning according to the present invention can be performed in several ways. First, the second artificial neural network module 320 and the third artificial neural network module 330 are trained on unlabeled data, respectively. There is a method of performing learning by comparing input and output results with each other and reducing the difference.
두 번째 방법으로는, 라벨링이 되어 있지 않은 데이터에, 랜덤 노이지 데이터를 추가하여 혼합한 데이터를 학습이 되어있는 제2인공신경망 모듈(320)과 제3인공신경망 모듈(330)에 각각 입력하여 출력되는 결과를 서로 비교하여 그 차이를 줄이는 방법으로 학습을 수행하는 방법이 있다. In the second method, the mixed data by adding random noisy data to unlabeled data is input to the second artificial neural network module 320 and the third artificial neural network module 330, which have been trained, respectively, and outputs the data. There is a method of performing learning by comparing the results to each other and reducing the difference.
세 번째 방법으로는 제2인공신경망 모듈(320)에는 라벨링이 되어 있지 않은 데이터만 입력하고, 제3인공신경망 모듈(330)에는 라벨링이 되어 있지 않은 데이터에 랜덤 노이지 데이터를 추가하여 혼합한 데이터를 각각 입력하여 출력되는 결과를 서로 비교하여 그 차이를 줄이는 방법으로 학습을 수행하는 방법이 있다.In the third method, only unlabeled data is input to the second artificial neural network module 320, and random noisy data is added to the unlabeled data in the third artificial neural network module 330 to generate mixed data. There is a method of performing learning by comparing the output results of each input and reducing the difference.
상기 설명한 3가지 방법 모두 종래 기술에 비해 상대적으로 정확도가 높은 출력 결과를 얻었으며, 3가지 방법 중 학생 역할에 해당하는 제3인공신경망 모듈(330)에만 랜덤 노이즈 데이터를 추가한 3번째 방법이 가장 정확도가 높은 결과를 얻을 수 있었다. All three methods described above obtained output results with relatively high accuracy compared to the prior art, and among the three methods, the third method in which random noise data was added only to the third artificial neural network module 330 corresponding to the student role was the most High accuracy results were obtained.
지금까지 도면을 통해 일 실시예에 따른 인공신경망을 이용한 노트 레벨의 자동 보컬 채보 방법 및 장치에 대해 자세히 알아보았다.So far, the method and apparatus for automatic vocal transcription at the note level using an artificial neural network according to an embodiment have been studied in detail through the drawings.
일 실시예에 따른 인공신경망을 이용한 노트 레벨의 자동 보컬 채보 방법 및 장치는 보컬 정보를 포함하는 피치 정보를 추론함에 있어서 추정된 보컬 정보를 이용하고, 보컬 정보를 추론함에 있어서 추정된 피치 정보를 활용하므로, 종래 기술보다 효과적으로 오디오 데이터에 포함되어 있는 피치 정보와 보컬 정보를 추론할 수 있는 장점이 존재한다. 이에 따라 채보를 진행함에 있어서 보컬을 분리하는 전처리 단계가 존재하지 않아 연산량이 많이 줄어들고 또한, 보컬을 분리하지 않아도 정확도 높은 보컬 채보를 수행할 수 있는 장점이 존재한다. A note-level automatic vocal transcription method and apparatus using an artificial neural network according to an embodiment uses the estimated vocal information in inferring pitch information including vocal information, and utilizes the estimated pitch information in inferring the vocal information. Therefore, there is an advantage of being able to infer pitch information and vocal information included in audio data more effectively than the prior art. Accordingly, there is no pre-processing step for separating vocals in transcription, so the amount of calculation is greatly reduced, and there is an advantage that vocal transcription can be performed with high accuracy even without separating vocals.
또한, 일 실시예에 따른 인공신경망을 이용한 노트 레벨의 자동 보컬 채보 방법 및 장치는 프레임 레벨의 피치 정보를 유사-노트 레벨의 피치 정보를 변환시킨 후, 변환된 데이터를 노트 레벨의 채보를 수행하는 인공신경망의 학습 데이터로 사용하기 때문에, 보다 적은 노트 레벨의 학습 데이터만으로도 효율적으로 노트 레벨의 피치 정보를 출력하는 인공신경망을 학습시킬 수 있는 장점이 존재한다. In addition, a method and apparatus for automatic vocal transcription of a note level using an artificial neural network according to an embodiment converts frame-level pitch information into pseudo-note level pitch information, and then performs note-level transcription of the converted data. Since it is used as training data of an artificial neural network, there is an advantage in that an artificial neural network capable of efficiently outputting note-level pitch information can be trained with less note-level training data.
또한, 인공신경망을 학습함에 있어서 준지도 학습(semi-supervised learning)에 기초한 학습을 수행하기 때문에 라벨링이 되어 있지 않은 적은 데이터만으로도 노트 레벨의 피치 정보를 출력하는 인공신경망을 효율적으로 학습시킬 수 있다.In addition, since learning based on semi-supervised learning is performed in learning the artificial neural network, it is possible to efficiently learn the artificial neural network that outputs note-level pitch information with only a small amount of unlabeled data.
이에 따라, 일 실시예에 따른 인공신경망을 이용한 노트 레벨의 자동 보컬 채보 방법 및 장치는 다양한 장르의 음원에 대해서 유연하면서 동시에 정확한 채보를 진행할 수 있으며, 소스 분리 전처리 과정 없이 바로 다성 음악에서 보컬 멜로디를 채보할 수 있어, 종래 기술에 비해 채보 속도를 매우 향상시킬 수 있는 장점이 존재한다. Accordingly, the note-level automatic vocal transcription method and apparatus using an artificial neural network according to an embodiment can perform flexible and accurate transcription for sound sources of various genres, and can directly generate vocal melodies from polyphonic music without a source separation preprocessing process. Since it is possible to transcribe, there is an advantage that the transcribing speed can be greatly improved compared to the prior art.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 컨트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. The devices described above may be implemented as hardware components, software components, and/or a combination of hardware components and software components. For example, devices and components described in the embodiments may include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable array (FPA), It may be implemented using one or more general purpose or special purpose computers, such as a programmable logic unit (PLU), microprocessor, or any other device capable of executing and responding to instructions. The processing device may run an operating system (OS) and one or more software applications running on the operating system.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer readable medium. The computer readable medium may include program instructions, data files, data structures, etc. alone or in combination. Program commands recorded on the medium may be specially designed and configured for the embodiment or may be known and usable to those skilled in computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks. - includes hardware devices specially configured to store and execute program instructions, such as magneto-optical media, and ROM, RAM, flash memory, and the like. Examples of program instructions include high-level language codes that can be executed by a computer using an interpreter, as well as machine language codes such as those produced by a compiler.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다. 그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다. As described above, although the embodiments have been described with limited examples and drawings, those skilled in the art can make various modifications and variations from the above description. For example, the described techniques may be performed in an order different from the method described, and/or components of the described system, structure, device, circuit, etc. may be combined or combined in a different form than the method described, or other components may be used. Or even if it is replaced or substituted by equivalents, appropriate results can be achieved. Therefore, other implementations, other embodiments, and equivalents of the claims are within the scope of the following claims.
100: 사용자 단말 110: 녹취부
120: 통신부 130: MIDI 생성부
140: 디스플레이부 200: 음악 채보 장치
300: 프로세서 310: 제1인공신경망 모듈
320: 제2인공신경망 모듈 400: 메모리 모듈
500: 부가 서비스 모듈 600: 사용자 관리 모듈100: user terminal 110: recording unit
120: communication unit 130: MIDI generation unit
140: display unit 200: music transcription device
300: processor 310: first artificial neural network module
320: second artificial neural network module 400: memory module
500: Additional service module 600: User management module
Claims (7)
상기 하나 이상의 프로세서에서 실행 가능한 명령들을 저장하는 메모리 모듈;을 포함하고,
상기 프로세서는,
주파수 영역의 제1오디오 데이터를 제1입력 정보로 하고, 상기 제1오디오 데이터에 대해 프레임(frame) 단위로 보컬의 음높이 정보를 포함하는 피치(Pitch) 정보를 제1출력 정보로 출력하는 제1인공신경망;
상기 제1출력 정보를 노트(note) 단위의 보컬 정보를 포함하는 제1학습 데이터로 변환하는 전처리 모듈;,
주파수 영역의 제2오디오 데이터를 제3입력 정보로 하고, 상기 제2오디오 데이터에 대해 프레임 단위로 보컬의 음높이 정보를 포함하는 피치 정보를 제3출력 정보로 출력하는 제3인공신경망; 및
상기 제3출력 정보를 노트 단위의 보컬 정보로 변형하는 후처리 모듈;을 포함하고,
상기 제3인공신경망은,
상기 제1학습 데이터를 기초로 상기 제3인공신경망에 대해 학습을 수행하는 것을 특징으로 하는,
노트 레벨의 오디오 데이터를 기초로 학습을 수행하는 보컬 채보 장치.one or more processors; and
A memory module for storing instructions executable by the one or more processors; includes,
the processor,
A first step that uses first audio data in the frequency domain as first input information and outputs pitch information including pitch information of vocals in units of frames for the first audio data as first output information. artificial neural network;
A pre-processing module for converting the first output information into first learning data including vocal information in units of notes;
a third artificial neural network that receives second audio data in the frequency domain as third input information and outputs pitch information including vocal pitch information in frame units for the second audio data as third output information; and
A post-processing module for transforming the third output information into note-based vocal information;
The third artificial neural network,
Characterized in that learning is performed for the third artificial neural network based on the first learning data,
A vocal transcription device that performs learning based on note-level audio data.
상기 전처리 모듈 및 상기 후처리 모듈은,
피치 양자화(pitch quantization) 방법 및 리듬 양자화(rhythm quantization) 방법을 사용하여 프레임 단위의 피치 정보를 노트 레벨의 피치 정보로 변환하는 것을 특징으로 하는,
노트 레벨의 오디오 데이터를 기초로 학습을 수행하는 보컬 채보 장치.According to claim 1,
The pre-processing module and the post-processing module,
Characterized in that pitch information in units of frames is converted into note-level pitch information using a pitch quantization method and a rhythm quantization method,
A vocal transcription device that performs learning based on note-level audio data.
상기 제1학습 데이터를 저장하는 제1메모리 모듈; 및
노트 레벨로 라벨링이 되어 있는 피치 정보를 포함하는 제2학습 데이터를 포함하는 제2메모리 모듈;을 더 포함하는,
노트 레벨의 오디오 데이터를 기초로 학습을 수행하는 보컬 채보 장치.According to claim 1,
a first memory module that stores the first learning data; and
A second memory module including second learning data including pitch information labeled at the note level; further comprising,
A vocal transcription device that performs learning based on note-level audio data.
제3인공신경망은,
상기 제2학습 데이터를 기초로 상기 제3인공신경망에 대해 학습을 수행하는 것을 특징으로 하는,
노트 레벨의 오디오 데이터를 기초로 학습을 수행하는 보컬 채보 장치.According to claim 3,
The third artificial neural network,
Characterized in that learning is performed for the third artificial neural network based on the second learning data,
A vocal transcription device that performs learning based on note-level audio data.
상기 하나 이상의 프로세서에서 실행 가능한 명령들을 저장하는 메모리 모듈;을 포함하고,
상기 프로세서는,
주파수 영역의 제1오디오 데이터를 제1입력 정보로 하고, 상기 제1오디오 데이터에 대해 프레임(frame) 단위로 보컬의 음높이 정보를 포함하는 피치(Pitch) 정보를 제1출력 정보로 출력하는 제1인공신경망;
상기 제1출력 정보를 노트(note) 단위의 보컬 정보를 포함하는 제1학습 데이터로 변환하는 전처리 모듈;,
주파수 영역의 제2오디오 데이터를 제3입력 정보로 하고, 상기 제2오디오 데이터에 대해 프레임 단위로 보컬의 음높이 정보를 포함하는 피치 정보를 제3출력 정보로 출력하는 제3인공신경망;
주파수 영역의 제3오디오 데이터를 제5입력 정보로 하고, 상기 제3오디오 데이터에 대해 프레임 단위로 보컬의 음높이 정보를 포함하는 피치 정보를 제5출력 정보로 출력하는 제5인공신경망; 및
상기 제3출력 정보를 노트 단위의 보컬 정보를 포함하는 제2학습 데이터로 변환하는 제1후처리 모듈;을 포함하고,
상기 제3인공신경망은,
상기 제2학습 데이터 및 제3학습 데이터 중 적어도 하나의 데이터를 기초로 학습을 수행하는 것을 특징으로 하는,
노트 레벨의 오디오 데이터를 기초로 학습을 수행하는 보컬 채보 장치.one or more processors; and
A memory module for storing instructions executable by the one or more processors; includes,
the processor,
A first step that uses first audio data in the frequency domain as first input information and outputs pitch information including pitch information of vocals in units of frames for the first audio data as first output information. artificial neural network;
A pre-processing module for converting the first output information into first learning data including vocal information in units of notes;
a third artificial neural network that receives second audio data in the frequency domain as third input information and outputs pitch information including vocal pitch information in frame units for the second audio data as third output information;
a fifth artificial neural network that takes third audio data in the frequency domain as fifth input information and outputs pitch information including vocal pitch information in frame units with respect to the third audio data as fifth output information; and
A first post-processing module for converting the third output information into second learning data including vocal information in units of notes;
The third artificial neural network,
Characterized in that learning is performed based on at least one of the second learning data and the third learning data,
A vocal transcription device that performs learning based on note-level audio data.
상기 제5출력 정보를 노트 단위의 보컬 정보로 변형하는 제2후처리 모듈;을 더 포함하는,
노트 레벨의 오디오 데이터를 기초로 학습을 수행하는 보컬 채보 장치.According to claim 5,
A second post-processing module for transforming the fifth output information into note-based vocal information; further comprising,
A vocal transcription device that performs learning based on note-level audio data.
상기 프로세서가 주파수 영역의 제1오디오 데이터를 제1입력 정보로 하고, 상기 제1오디오 데이터에 대해 프레임(frame) 단위로 보컬의 음높이 정보를 포함하는 피치(Pitch) 정보를 제1출력 정보로 출력하는 제1인공신경망을 이용하여 상기 제1출력 정보를 출력하는 제1출력 정보 출력 단계:
상기 프로세서가 상기 제1출력 정보를 노트(note) 단위의 보컬 정보를 포함하는 제1학습 데이터로 변환하는 전처리 단계;
상기 프로세서가 상기 제1학습 데이터를 기초로 제3인공신경망에 대해 학습을 수행하는 학습 수행 단계;
상기 프로세서가 주파수 영역의 제2오디오 데이터를 제3입력 정보로 하고, 상기 제2오디오 데이터에 대해 프레임 단위로 보컬의 음높이 정보를 포함하는 피치 정보를 제3출력 정보로 출력하는 상기 제3인공신경망을 이용하여 상기 제3출력 정보를 출력하는 제3출력 정보 출력 단계; 및
상기 프로세서가 상기 제3출력 정보를 노트 단위의 보컬 정보로 변환하는 후처리 단계;를 포함하는 것을 특징으로 하는,
노트 레벨의 오디오 데이터를 기초로 학습을 수행하는 보컬 채보 장치의 학습 방법.In the learning method of a vocal transcription device using a processor containing an artificial neural network,
The processor takes first audio data in the frequency domain as first input information, and outputs pitch information including vocal pitch information in units of frames for the first audio data as first output information. A first output information outputting step of outputting the first output information using a first artificial neural network that:
a pre-processing step of converting, by the processor, the first output information into first training data including vocal information in units of notes;
a learning step in which the processor performs learning on a third artificial neural network based on the first learning data;
The third artificial neural network in which the processor receives second audio data in the frequency domain as third input information and outputs pitch information including vocal pitch information in frame units for the second audio data as third output information. a third output information output step of outputting the third output information by using; and
Characterized in that it comprises a; post-processing step of the processor converting the third output information into vocal information in units of notes,
A learning method of a vocal transcription device that performs learning based on note-level audio data.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220079533A KR102497878B1 (en) | 2021-11-26 | 2022-06-29 | Vocal transcription learning method and apparatus for performing learning based on note-level audio data |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210165277A KR102417670B1 (en) | 2021-11-26 | 2021-11-26 | Method and apparatus for automatic note-level singing transcription using artificial neural network |
KR1020220079533A KR102497878B1 (en) | 2021-11-26 | 2022-06-29 | Vocal transcription learning method and apparatus for performing learning based on note-level audio data |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210165277A Division KR102417670B1 (en) | 2021-11-26 | 2021-11-26 | Method and apparatus for automatic note-level singing transcription using artificial neural network |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102497878B1 true KR102497878B1 (en) | 2023-02-09 |
Family
ID=82398412
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210165277A KR102417670B1 (en) | 2021-11-26 | 2021-11-26 | Method and apparatus for automatic note-level singing transcription using artificial neural network |
KR1020220079533A KR102497878B1 (en) | 2021-11-26 | 2022-06-29 | Vocal transcription learning method and apparatus for performing learning based on note-level audio data |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210165277A KR102417670B1 (en) | 2021-11-26 | 2021-11-26 | Method and apparatus for automatic note-level singing transcription using artificial neural network |
Country Status (1)
Country | Link |
---|---|
KR (2) | KR102417670B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102623446B1 (en) * | 2023-08-30 | 2024-01-10 | 케이팝팩토리 주식회사 | A method for selecting user-customized audition songs based on user vocal evaluation |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101378454B1 (en) * | 2012-09-27 | 2014-03-27 | (주)휴먼미디어테크 | Method and apparatus for transcription of music, and computer-readable recording medium |
KR20150084133A (en) | 2014-01-13 | 2015-07-22 | 엘지전자 주식회사 | Mobile terminal and method for controlling the same |
KR101696555B1 (en) | 2015-10-06 | 2017-02-02 | 서울시립대학교 산학협력단 | Text location search system in image information or geographic information using voice recognition function and method thereof |
KR101939001B1 (en) * | 2017-12-06 | 2019-01-15 | 한국과학기술원 | Method and System for Audio and Score Alignment of Music Using Neural Network-Based Automatic Music Transcription |
KR20210046416A (en) * | 2019-10-18 | 2021-04-28 | 한국과학기술원 | Audio classification method based on neural network for waveform input and analyzing apparatus |
KR20210108690A (en) * | 2020-02-26 | 2021-09-03 | 고려대학교 산학협력단 | Method to transform voice |
-
2021
- 2021-11-26 KR KR1020210165277A patent/KR102417670B1/en active IP Right Grant
-
2022
- 2022-06-29 KR KR1020220079533A patent/KR102497878B1/en active IP Right Grant
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101378454B1 (en) * | 2012-09-27 | 2014-03-27 | (주)휴먼미디어테크 | Method and apparatus for transcription of music, and computer-readable recording medium |
KR20150084133A (en) | 2014-01-13 | 2015-07-22 | 엘지전자 주식회사 | Mobile terminal and method for controlling the same |
KR101696555B1 (en) | 2015-10-06 | 2017-02-02 | 서울시립대학교 산학협력단 | Text location search system in image information or geographic information using voice recognition function and method thereof |
KR101939001B1 (en) * | 2017-12-06 | 2019-01-15 | 한국과학기술원 | Method and System for Audio and Score Alignment of Music Using Neural Network-Based Automatic Music Transcription |
KR20210046416A (en) * | 2019-10-18 | 2021-04-28 | 한국과학기술원 | Audio classification method based on neural network for waveform input and analyzing apparatus |
KR20210108690A (en) * | 2020-02-26 | 2021-09-03 | 고려대학교 산학협력단 | Method to transform voice |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102623446B1 (en) * | 2023-08-30 | 2024-01-10 | 케이팝팩토리 주식회사 | A method for selecting user-customized audition songs based on user vocal evaluation |
Also Published As
Publication number | Publication date |
---|---|
KR102417670B1 (en) | 2022-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Benetos et al. | Automatic music transcription: An overview | |
Martin | A blackboard system for automatic transcription of simple polyphonic music | |
US11568244B2 (en) | Information processing method and apparatus | |
US20180137425A1 (en) | Real-time analysis of a musical performance using analytics | |
CN108986843B (en) | Audio data processing method and device, medium and computing equipment | |
JP2023081946A (en) | Learning device, automatic music transcription device, learning method, automatic music transcription method and program | |
Nakamura et al. | Real-time audio-to-score alignment of music performances containing errors and arbitrary repeats and skips | |
KR102497878B1 (en) | Vocal transcription learning method and apparatus for performing learning based on note-level audio data | |
Wang et al. | Audio-based piano performance evaluation for beginners with convolutional neural network and attention mechanism | |
Wada et al. | Sequential generation of singing f0 contours from musical note sequences based on wavenet | |
Trochidis et al. | CAMeL: Carnatic percussion music generation using n-gram models | |
Lian | An artificial intelligence-based classifier for musical emotion expression in media education | |
Jadhav et al. | Transfer Learning for Audio Waveform to Guitar Chord Spectrograms Using the Convolution Neural Network | |
Zhang et al. | Application and algorithm optimization of music emotion recognition in piano performance evaluation | |
Schwabe et al. | Dual task monophonic singing transcription | |
Ranjan et al. | Using a Bi-Directional Long Short-Term Memory Model with Attention Mechanism Trained on MIDI Data for Generating Unique Music | |
US20230377540A1 (en) | System and method for generating and/or adapting musical notations | |
d’Eon et al. | Musical speech: a transformer-based composition tool | |
Bohak et al. | Transcription of polyphonic vocal music with a repetitive melodic structure | |
WO2024085175A1 (en) | Data processing method and program | |
Kim | Automatic Music Transcription in the Deep Learning Era: Perspectives on Generative Neural Networks | |
Zhao et al. | Computational music: Analysis of music forms | |
Agrawal | Towards Context-Aware Neural Performance-Score Synchronisation | |
Tong | Speech to text with emoji | |
de Treville Wager | Data-Driven Pitch Correction for Singing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |