CN115004294A - 编曲生成方法、编曲生成装置以及生成程序 - Google Patents
编曲生成方法、编曲生成装置以及生成程序 Download PDFInfo
- Publication number
- CN115004294A CN115004294A CN202180009202.0A CN202180009202A CN115004294A CN 115004294 A CN115004294 A CN 115004294A CN 202180009202 A CN202180009202 A CN 202180009202A CN 115004294 A CN115004294 A CN 115004294A
- Authority
- CN
- China
- Prior art keywords
- data
- composition
- information
- music
- composition data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
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
- G10H1/0025—Automatic or semi-automatic music composition, e.g. producing random music, applying rules from music theory or modifying a musical piece
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10G—REPRESENTATION OF MUSIC; RECORDING MUSIC IN NOTATION FORM; ACCESSORIES FOR MUSIC OR MUSICAL INSTRUMENTS NOT OTHERWISE PROVIDED FOR, e.g. SUPPORTS
- G10G1/00—Means for the representation of music
- G10G1/04—Transposing; Transcribing
-
- 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/36—Accompaniment arrangements
- G10H1/38—Chord
-
- 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/36—Accompaniment arrangements
- G10H1/40—Rhythm
-
- 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/571—Chords; Chord sequences
- G10H2210/576—Chord progression
-
- 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
- G10H2220/00—Input/output interfacing specifically adapted for electrophonic musical tools or instruments
- G10H2220/135—Musical aspects of games or videogames; Musical instrument-shaped game input interfaces
- G10H2220/151—Musical difficulty level setting or selection
-
- 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)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Auxiliary Devices For Music (AREA)
Abstract
本发明的一个方面所涉及的编曲生成方法由计算机执行如下步骤:取得对象乐曲数据,该对象乐曲数据包含表示乐曲的至少一部分的旋律及和声的演奏信息、以及表示与所述乐曲的至少一部分有关的特性的元信息;使用通过机器学习而训练完毕的生成模型,根据被取得的对象乐曲数据生成编曲数据,其中编曲数据通过与元信息相应地对演奏信息进行编曲而得到;以及输出被生成的编曲数据。
Description
技术领域
本发明涉及使用通过机器学习而生成的训练完毕的生成模型生成乐曲的编曲的编曲生成方法、编曲生成装置以及生成程序。
背景技术
生成乐谱需要各种各样的工序。一般地,经过制成乐曲的基本结构(旋律(melody)、节奏、和声(harmony))的工序、基于基本结构制成编曲的工序、对与制成的乐曲(编曲)对应的音符以及演奏记号等元素进行布局从而制成乐谱数据的工序、将乐谱数据向纸介质等输出的工序等工序,制成乐谱。在以往,以上的工序主要通过人的作业(例如人工对计算机软件的操作)执行。
但是,在生成乐谱的工序全部由人工进行的情况下,生成乐谱的成本变高。因此,近年来,正在推进使生成乐谱的工序的至少一部分自动化的技术的开发。例如,在专利文献1中,提出了自动地生成基于编曲的伴奏(backing)数据的技术。根据该技术,能够使生成编曲的工序的一部分自动化,因此能够实现生成编曲的成本的减少。
现有技术文献
专利文献
专利文献1:日本特开2017-58594号公报
发明内容
发明要解决的课题
本发明的发明人们发现,在专利文献1等所提出的以往的编曲的生成方法中存在如下的问题点。即,在以往的技术中,依据规定的算法根据演奏信息生成伴奏数据。但是,作为自动编曲的基础的乐曲是多种多样的,因此规定的算法未必始终适于演奏信息(乐曲)。在原演奏信息不适于规定的算法的情况下,有可能进行从原曲背离的编曲,无法生成恰当的编曲数据。此外,在以往的方法中,仅能够生成依据规定的算法的一致的编曲数据,难以自动生成多种多样的编曲数据。从而,在以往的方法中,难以恰当地生成多种多样的编曲数据。
本发明在一个方面中鉴于以上的情况而作出,其目的在于,提供用于实现生成编曲数据的成本的减少并且恰当地生成多种多样的编曲数据的技术。
用于解决课题的手段
本发明为了解决上述的课题,采用如下结构。即,本发明的一个方面所涉及的编曲生成方法由计算机执行如下步骤:取得对象乐曲数据,该对象乐曲数据包含表示乐曲的至少一部分的旋律及和声的演奏信息、以及表示与所述乐曲的至少一部分有关的特性的元信息;使用通过机器学习而训练完毕的生成模型,根据被取得的所述对象乐曲数据生成编曲数据,其中所述编曲数据通过与所述元信息相应地对所述演奏信息进行编曲而得到;以及输出被生成的所述编曲数据。
在上述结构中,使用通过机器学习而生成的训练完毕的生成模型,根据包含原演奏信息的对象乐曲数据生成编曲数据。通过使用充分的学习数据恰当地实施机器学习,训练完毕的生成模型能够获得根据多种多样的原演奏信息恰当地生成编曲数据的能力。因此,通过使用获得了那样的能力的训练完毕的生成模型,能够恰当地生成编曲数据。而且,在该结构中,在生成模型的输入中包含元信息。根据元信息,能够对编曲数据的生成条件进行控制。由此,根据该结构,能够生成多种多样的编曲数据。进而,根据该结构,能够使生成编曲数据的工序自动化,因此能够实现生成编曲数据的成本的减少。从而,根据上述结构,能够实现生成编曲数据的成本的减少,并且恰当地生成多种多样的编曲数据。
发明效果
根据本发明,能够提供用于实现生成编曲数据的成本的减少并且恰当地生成多种多样的编曲数据的技术。
附图说明
图1示意性地例示本发明被应用于的场景的一例。
图2示意性地例示实施方式所涉及的编曲生成装置的硬件结构的一例。
图3示意性地例示实施方式所涉及的编曲生成装置的软件结构的一例。
图4是表示实施方式所涉及的演奏信息的旋律及和声的一例的曲谱。
图5是表示基于图4所示的旋律及和声生成的编曲的一例的曲谱。
图6示意性地例示实施方式所涉及的生成模型的结构的一例。
图7是用于说明实施方式所涉及的向生成模型输入的令牌的一例的图。
图8是用于说明实施方式所涉及的从生成模型输出的令牌的一例的图。
图9是表示实施方式所涉及的编曲生成装置所进行的生成模型的机器学习的处理过程的一例的流程图。
图10是表示实施方式所涉及的编曲生成装置所进行的编曲数据的生成处理(生成模型所进行的推理处理)的过程的一例的流程图。
图11是用于说明变形例所涉及的向生成模型输入的令牌的一例的图。
图12是用于说明变形例所涉及的从生成模型输出的令牌的一例的图。
图13示意性地例示本发明被应用于的场景的其他一例。
具体实施方式
以下,基于附图说明本发明的一个方面所涉及的实施方式(以下也记作“本实施方式”)。其中,以下说明的本实施方式在各处都不过是本发明的例示。在不脱离本发明的范围的条件下显然能够进行各种各样的改进或变形,在本发明的实施中,也可以适宜地采用与实施方式相应的具体的结构。另外,通过自然语言来说明本实施方式中出现的数据,但更具体而言,由计算机能够辨识的伪语言、命令、参数、机器语言等指定。
<1.应用例>
图1示意性地表示应用了本发明的场景的一例。本实施方式所涉及的编曲生成装置1是构成为使用训练完毕的生成模型5来生成乐曲的编曲数据25的计算机。
首先,本实施方式所涉及的编曲生成装置1取得对象乐曲数据20,该对象乐曲数据20包含表示乐曲的至少一部分的旋律(melody)以及和声(chord)的演奏信息21、以及表示与乐曲的至少一部分有关的特性的元信息23。接着,编曲生成装置1使用通过机器学习而训练完毕的生成模型5,根据被取得的对象乐曲数据20生成编曲数据25。编曲数据25通过与元信息23相应地对演奏信息21进行编曲而得到。即,元信息23对应于编曲的生成条件。编曲生成装置1输出被生成的编曲数据25。
如上所述,在本实施方式中,使用通过机器学习而生成的训练完毕的生成模型5,根据包含原演奏信息21的对象乐曲数据20生成编曲数据25。通过使用充分的学习数据恰当地实施机器学习,训练完毕的生成模型5获得根据多种多样的原演奏信息恰当地生成编曲数据的能力。因此,通过使用获得了那样的能力的训练完毕的生成模型5,能够恰当地生成编曲数据25。而且,通过元信息23,能够对编曲数据25的生成条件进行控制。进而,通过使用训练完毕的生成模型5,能够使生成编曲数据25的工序的至少一部分自动化。从而,根据本实施方式,能够实现生成编曲数据25的成本的减少,并且恰当地生成多种多样的编曲数据25。
<2.结构例>
<2.1硬件结构>
图2示意性地例示本实施方式所涉及的编曲生成装置1的硬件结构的一例。如图2所示,本实施方式所涉及的编曲生成装置1是将控制部11、存储部12、通信接口13、输入装置14、输出装置15以及驱动器16电连接而成的计算机。另外,在图2中,将通信接口记作“通信I/F”。
控制部11包含作为硬件处理器(处理器资源)的一例的CPU(中央处理单元(Central Processing Unit))、RAM(随机存取存储器(Random Access Memory))、ROM(只读存储器(Read Only Memory))等,构成为基于程序以及各种数据执行信息处理。存储部12是存储器的一例,例如由硬盘驱动器、固态驱动器等构成。在本实施方式中,存储部12存储生成程序81、学习数据3、学习结果数据125等各种信息。
生成程序81是用于使编曲生成装置1执行与生成模型5的机器学习以及使用训练完毕的生成模型5生成编曲数据25有关的后述的信息处理(图9以及图10)的程序。生成程序81包含该信息处理的一系列指令。学习数据3被用于生成模型5的机器学习。学习结果数据125表示与训练完毕的生成模型5有关的信息。在本实施方式中,学习结果数据125作为执行生成模型5的机器学习的处理而得到的结果被生成。详细情况在后面叙述。
通信接口13例如是有线LAN(局域网(Local Area Network))模块、无线LAN模块等,是用于经由网络进行有线或者无线通信的接口。编曲生成装置1能够利用通信接口13在与其他信息处理装置之间经由网络执行数据通信。
输入装置14例如是鼠标、键盘等用于输入的装置。此外,输出装置15例如是显示器、扬声器等用于输出的装置。在一例中,输入装置14以及输出装置15可以分开构成。在其他一例中,输入装置14以及输出装置15例如通过触摸面板显示器等一体地构成。用户等操作员通过利用输入装置14以及输出装置15,能够对编曲生成装置1进行操作。
驱动器16例如是CD驱动器、DVD驱动器等,是用于将存储介质91中存储的程序等各种信息读入的驱动器装置。存储介质91是以计算机等装置、机器等能够读取被存储的程序等各种信息的方式、将该程序等信息利用电、磁、光学、机械或者化学的作用积蓄的介质。上述生成程序81以及学习数据3的至少其中一个也可以存储于存储介质91。编曲生成装置1也可以从该存储介质91取得上述生成程序81以及学习数据3的至少其中一个。另外,在图2中,作为存储介质91的一例,例示CD、DVD等盘型的存储介质。但是,存储介质91的种类不限于盘型,也可以是盘型以外。作为盘型以外的存储介质,例如能够举出闪速存储器等半导体存储器。驱动器16的种类可以根据存储介质91的种类任意选择。
另外,关于编曲生成装置1的具体的硬件结构,能够根据实施方式适宜地进行结构元素的省略、置换以及追加。例如,控制部11也可以包含多个硬件处理器。硬件处理器的种类可以不限于CPU。硬件处理器例如可以由微处理器、FPGA(现场可编程门阵列(field-programmable gate array))、GPU(图形处理单元(Graphics Processing Unit))等构成。存储部12也可以由控制部11中包含的RAM以及ROM构成。通信接口13、输入装置14、输出装置15以及驱动器16的至少其中一个也可以省略。编曲生成装置1可以具备用于与外部装置连接的外部接口。外部接口例如可以由USB(通用串行总线(Universal Serial Bus))端口、专用端口等构成。编曲生成装置1也可以由多台计算机构成。在该情况下,各计算机的硬件结构既可以一致,也可以不一致。此外,编曲生成装置1除了为了提供的服务而专门设计的信息处理装置之外,也可以是通用的服务器装置、通用的PC(个人计算机(PersonalComputer))、便携终端(例如智能手机、平板PC)等。
<2.2软件结构>
图3示意性地例示本实施方式所涉及的编曲生成装置1的软件结构的一例。编曲生成装置1的控制部11由CPU对存储部12中存储的生成程序81中包含的指令进行解释以及执行,来对各结构元素进行控制。由此,本实施方式所涉及的编曲生成装置1构成为具备学习数据取得部111、学习处理部112、保存处理部113、对象数据取得部114、编曲生成部115、乐谱生成部116以及输出部117作为软件模块。即,在本实施方式中,编曲生成装置1的各软件模块由控制部11(CPU)实现。
学习数据取得部111构成为取得学习数据3。学习数据3由多个学习数据集300构成。各学习数据集300由训练乐曲数据30以及已知的编曲数据35的组合构成。训练乐曲数据30是在生成模型5的机器学习中作为训练数据使用的乐曲数据。训练乐曲数据30包含表示乐曲的至少一部分的旋律及和声的演奏信息31、以及表示与乐曲的至少一部分有关的特性的元信息33。元信息33表示根据演奏信息31生成所对应的已知的编曲数据35的条件。
学习处理部112构成为使用被取得的多个学习数据集300,实施生成模型5的机器学习。保存处理部113构成为生成与通过机器学习而生成的训练完毕的生成模型5有关的信息作为学习结果数据125,并将生成的学习结果数据125保存至规定的存储区域。学习结果数据125可以适宜地构成为包含用于再现训练完毕的生成模型5的信息。
对象数据取得部114构成为取得对象乐曲数据20,该对象乐曲数据20包含表示乐曲的至少一部分的旋律及和声的演奏信息21、以及表示与乐曲的至少一部分有关的特性的元信息23。对象乐曲数据20是通过向训练完毕的生成模型5输入而成为编曲的对象(即编曲的基础)的乐曲数据。编曲生成部115通过保持学习结果数据125从而具备训练完毕的生成模型5。编曲生成部115使用通过机器学习而训练完毕的生成模型5,根据被取得的对象乐曲数据20生成编曲数据25。编曲数据25通过与元信息23相应地对演奏信息21进行编曲而得到。乐谱生成部116构成为使用被生成的编曲数据25生成乐谱数据27。输出部117构成为输出被生成的编曲数据25。在本实施方式中,输出编曲数据25,可以构成为输出被生成的乐谱数据27。
(各种数据)
演奏信息(21、31)可以适宜地构成为表示乐曲的至少一部分的旋律以及和弦。乐曲的至少一部分例如可以由4小节量等规定的长度规定。作为一例,演奏信息(21、31)可以被直接给予。在其他一例中,演奏信息(21、31)例如可以根据乐谱等其他形式的数据得到。作为具体例,演奏信息(21、31)可以从表示包含旋律以及和弦的乐曲的演奏的各种各样的类型的原始数据取得。原始数据例如可以是MIDI数据、音频波形数据等。在一例中,原始数据例如也可以从存储部12、存储介质91等本装置的存储器资源读入。在其他一例中,原始数据例如也可以从其他智能手机、乐曲提供服务器、NAS(网络附接存储(Network AttachedStorage))等外部装置得到。原始数据也可以包含旋律及和声以外的数据。演奏信息(21、31)中的和声可以通过对于原始数据执行和声估计处理来确定。在和声估计处理中可以采用公知的方法。
元信息(23、33)适宜地构成为表示编曲的生成条件。在本实施方式中,元信息(23、33)可以构成为包含难度信息、样式信息、构成信息以及速度信息的至少其中一个。难度信息构成为表示演奏上的难度作为编曲的条件。在一例中,难度信息可以由表示难度的类别(例如“初级”、“初中级”、“中级”、“中高级”以及“高级”的其中一个)的值构成。样式信息构成为表示编曲的音乐的样式作为编曲的条件。在一例中,样式信息可以构成为包含用于确定编曲者(arranger)的编曲者信息(例如编曲者ID)、以及用于确定艺术家的艺术家信息(例如艺术家ID)的至少其中一个。
构成信息构成为表示乐曲中的乐器构成作为编曲的条件。在一例中,构成信息由表示在编曲中使用的乐器的类别的值构成。乐器的类别例如可以遵循GM(通用MIDI(General MIDI))标准给予。速度信息构成为表示乐曲的速度。在一例中,速度信息可以由表示多个速度范围(例如BPM=小于60、60以上且小于84、84以上且小于108、108以上且小于144、144以上且小于192、192以上)之中的乐曲所属的速度范围的值构成。
在机器学习的场景中,元信息33可以与所对应的已知的编曲数据35预先相关联,在该情况下,元信息33可以从已知的编曲数据35取得。元信息33可以通过对所对应的已知的编曲数据35进行分析而得到。元信息33也可以通过指定了演奏信息31(例如输入了原始数据)的操作员经由输入装置14进行输入而得到。另一方面,在推理处理(编曲生成)的场景中,元信息23可以适宜地决定以便指定要生成的编曲的条件。在一例中,元信息23例如通过随机、依照规定的规则决定等方法,由编曲生成装置1或者其他计算机自动地选择。在其他一例中,元信息23也可以通过期望生成编曲数据的用户经由输入装置14进行输入而得到。
编曲数据(25、35)构成为包含与乐曲的至少一部分的旋律及和声对应的伴奏音(编曲音)。编曲数据(25、35)例如可以基于标准MIDI文件(SMF)等形式得到。在机器学习的场景中,已知的编曲数据35可以根据演奏信息31以及元信息33适宜地得到以便能够作为正确答案数据使用。已知的编曲数据35既可以依照规定的算法根据演奏信息31自动地生成,或者也可以至少部分地通过手工作业生成。已知的编曲数据35例如可以基于现有的乐谱数据生成。
图4例示本实施方式所涉及的表示演奏信息(21、31)的旋律及和声的一例的曲谱。如图4所例示的那样,演奏信息(21、31)可以构成为包含由单音(包含休止符)的序列构成的旋律(单旋律)、以及随着时间行进的和声(Am、F等和声信息)。
图5例示表示基于图4所示的旋律及和声生成的编曲的一例的曲谱。如图5所例示的那样,编曲数据(25、35)可以包含多个演奏部分(在一例中为钢琴的右手部分以及左手部分)。编曲数据(25、35)可以构成为不仅包含构成演奏信息(21、31)中包含的旋律的旋律音,而且还包含与旋律及和声对应的伴奏音(编曲音)。
在图4以及图5的例中,在第1小节的开头处,演奏信息(21、31)中包含的旋律为A音(附点4分音符),和声是a小调(作为本例的调的C大调的VI的和弦)。与此对应,编曲数据(25、35)不仅包含右手部分中包含的旋律音,而且作为依据和声法的伴奏音,还包含作为a小调的构成音的A音(正拍的8分音符)以及E音(正拍的附点4分音符以及反拍的8分音符)。
另外,如图所示,编曲数据(25、35)中包含的伴奏音可以不限于将构成和声的音简单延长而得到的音。编曲数据(25、35)可以包含不仅与和声而且与旋律的音高及节奏对应的音(例如以对位法构成的音)。
(生成模型的结构例)
图6示意性地例示本实施方式所涉及的生成模型5的结构的一例。生成模型5由具有通过机器学习被调整的参数的机器学习模型构成。机器学习模型的种类可以不特别限定,可以根据实施方式适宜地选择。在一例中,如图6所示,生成模型5可以具有基于在参考文献“Ashish Vaswani,Noam Shazeer,Niki Parmar,Jakob Uszkoreit,Llion Jones,Aidan N Gomez,Lukasz Kaiser,and Illia Polosukhin.Attention is all you need.InAdvances in Neural Information Processing Systems,2017.”中提出的转换器(Transformer)的结构。转换器(Transformer)是对序列数据(自然语言等)进行处理的机器学习模型,具有基于注意力(Attention,注意)的结构。
在图6的例中,生成模型5具备编码器50以及解码器55。编码器50具有以多个块作为栈而构成的构造,该多个块各自具有寻求自注意力的多头注意力层(Multi-HeadAttention Layer)以及前馈层(Feed Forward Layer)。另一方面,解码器55具有以多个块作为栈而构成的构造,该多个块各自具有寻求自注意力的屏蔽化多头注意力层(MaskedMulti-Head Attention Layer)、寻求源/目标注意力的多头注意力层、以及前馈层。如图6所示,在编码器50以及解码器55的各层中,可以设置加法/标准化层(Addition andNormalization Layer)。在各层中,可以包含一个以上的节点,各节点可以被设定阈值。阈值可以通过激活函数表现。此外,相邻的层的节点间的连接可以被设定权重(连接荷重)。节点间的连接的权重以及阈值是生成模型5的参数的一例。
进而,使用图7以及图8说明生成模型5的输入形式以及输出形式的一例。图7是用于说明本实施方式所涉及的向生成模型5输入的乐曲数据的输入形式(令牌(token))的一例的图。图8是用于说明本实施方式所涉及的从生成模型5输出的编曲数据的输出形式(令牌)的一例的图。在本实施方式中,如图7所示,在机器学习以及推理处理的场景中,乐曲数据(20、30)被变换为包含多个令牌T的输入令牌列。输入令牌列可以按照与乐曲数据(20、30)对应的方式适宜地生成。
在机器学习的阶段中,学习处理部112构成为将与训练乐曲数据30对应的输入令牌列中包含的令牌向生成模型5输入,并执行生成模型5的运算,从而生成与编曲数据(推理结果)对应的输出令牌列。另一方面,在推理阶段中,编曲生成部115构成为将与编曲的对象乐曲数据20对应的输入令牌列中包含的令牌向训练完毕的生成模型5输入,并执行训练完毕的生成模型5的运算处理,从而生成与编曲数据25对应的输出令牌列。
如图7所例示的那样,输入令牌列中包含的各令牌T是表示演奏信息(21、31)或者元信息(23、33)的信息元素。难度令牌(例如level_400)表示元信息(23、33)中包含的难度信息(例如钢琴中级)。样式令牌(例如arr_1)表示元信息(23、33)中包含的样式信息(例如编曲者A)。速度令牌(例如tempo_72)表示元信息(23、33)中包含的速度信息(例如4分音符=72附近的速度范围)。
和声令牌(例如chord_0root_0)表示演奏信息(21、31)中包含的和声(例如根音为C的C大调)。音符发音(ノートオン)令牌(例如on_67)、保持令牌(例如wait_4)以及音符停止令牌(例如off_67)表示构成演奏信息(21、31)中包含的旋律的音(例如音高G4的4分音符)。另外,音符发音令牌表示要新发音的音的音高,音符停止(ノートオフ)令牌表示要停止的音的音高,保持令牌表示要维持发音(或者无音)状态的时间长度。从而,通过音符发音令牌发出规定的音,通过保持令牌维持上述的音鸣响的状态,通过音符停止令牌停止上述的音。
在本实施方式中,输入令牌列构成为:在配置了与元信息(23、33)对应的令牌T之后,将与演奏信息(21、31)对应的令牌T对应于时间序列配置。另外,在图7的例中,在输入令牌列中,以难度令牌、样式令牌以及速度令牌的顺序,配置元信息(23、33)中包含的各种信息的令牌T。但是,在元信息(23、33)包含多个种类的信息的情况下,输入令牌列中的与元信息(23、33)的各种信息对应的令牌T的配置顺序可以不限定于这样的例子,可以根据实施方式适宜地决定。
如图6所示,本实施方式所涉及的生成模型5构成为将输入令牌列中包含的令牌T的输入从开头依次受理。被输入至生成模型5的令牌T,在通过输入嵌入处理被分别变换为具有规定的维数的矢量,并通过位置编码处理被赋予了用于确定其在乐曲内(乐句内)的位置的值之后,被输入至编码器50。编码器50对于该输入,以与块数对应的量反复执行多头注意力层以及前馈层的处理来取得特征表现,并将取得的特征表现向下一级的解码器55(多头注意力层)供应。
向解码器55(屏蔽化多头注意力层)不仅供应来自编码器50的输入,而且供应来自解码器55的已知(过去)的输出。即,本实施方式所涉及的生成模型5构成为具有回归构造。解码器55对于上述输入,以与块数对应的量反复执行屏蔽化多头注意力层、多头注意力层以及前馈层的处理来取得特征表现并输出。来自解码器55的输出在线性层以及SOFTMAX层中被变换,并作为被赋予了相当于编曲的信息后的令牌T输出。
如图8所例示的那样,从生成模型5输出的各令牌T是表示演奏信息或者元信息的信息元素,构成编曲数据。通过从生成模型5分别依次得到的多个令牌T,构成与编曲数据对应的输出令牌列。与元信息对应的令牌T由于与输入令牌列(图7)同样,因此省略说明。
编曲数据中包含的表示演奏信息的令牌T(音符发音令牌、音符停止令牌)可以对应于多个演奏部分(钢琴的右手部分、左手部分)的音。即,如上述图5所示,从生成模型5输出的多个令牌T(输出令牌列)可以构成为不仅表示构成与被输入的演奏信息(21、31)对应的令牌T所示的旋律的旋律音,而且表示与旋律及和声对应的伴奏音(编曲音)。
输出令牌列与输入令牌列同样,构成为在配置了与元信息对应的令牌T之后,将与演奏信息对应的令牌T对应于时间序列配置。输出令牌列中的与元信息的各种信息对应的令牌T的配置顺序可以不特别限定,可以根据实施方式适宜地决定。
在机器学习的阶段中,学习处理部112针对各学习数据集300,使用表示训练乐曲数据30的多个令牌T(输入令牌列)作为训练数据(输入数据),并使用表示所对应的编曲数据35的多个令牌T(输出令牌列)作为正确答案数据(教师信号),实施生成模型5的机器学习。具体而言,学习处理部112构成为:针对各学习数据集300,将与训练乐曲数据30对应的输入令牌列向生成模型5输入,对生成模型5进行训练,以使通过执行生成模型5的运算而得到的输出令牌列(编曲数据的推理结果)适于所对应的正确答案数据(已知的编曲数据35)。换言之,学习处理部112构成为:针对各学习数据集300,对生成模型5的参数的值进行调整,以使由生成模型5根据与训练乐曲数据30对应的输入令牌列生成的输出令牌列所示的编曲数据、与所对应的已知的编曲数据35之间的误差变小。在生成模型5的机器学习的处理中,可以应用多种标准化(normalizing)方法(例如标签平滑化、残差丢弃、注意力丢弃)。
在推理(编曲生成)的阶段中,编曲生成部115将表示编曲的对象乐曲数据20的多个令牌T(输入令牌列)向训练完毕的生成模型5的编码器50(在图6的例中,在经过输入嵌入层之后,向最初配置的多头注意力层)从开头依次输入,执行编码器50的运算处理。作为该运算处理的结果,编曲生成部115依次取得从训练完毕的生成模型5(在图6的例中,最后配置的SOFTMAX层)输出的令牌T,从而生成编曲数据25(输出令牌列)。在该处理时,编曲数据25例如可以使用集束搜索等搜索法而生成。更具体而言,编曲生成部115可以基于从生成模型5输出的值的概率分布,以得分从高到低的顺序保持n个候选令牌,并选择候选令牌以使连续的m个中的总得分最高,从而生成编曲数据25(n、m是2以上的整数)。该处理可以也应用于机器学习中的得到推理结果的处理。
(其他)
关于编曲生成装置1的各软件模块,在后述的动作例中详细说明。另外,在本实施方式中,说明了编曲生成装置1的各软件模块均由通用的CPU实现的例子。但是,上述软件模块的一部分或者全部也可以由1个或者多个专用的处理器(例如专用集成电路(ASIC))实现。上述各模块也可以作为硬件模块实现。此外,关于编曲生成装置1的软件结构,也可以根据实施方式适宜地进行软件模块的省略、置换以及追加。
<3.动作例>
<3.1机器学习的处理过程>
图9是表示本实施方式所涉及的编曲生成装置1所进行的与生成模型5的机器学习有关的处理过程的一例的流程图。以下说明的与机器学习有关的处理过程是模型生成方法的一例。其中,以下说明的模型生成方法的处理过程不过是一例,各步骤可以在可能的范围内变更。此外,针对以下的处理过程,可以根据实施方式适宜地进行步骤的省略、置换以及追加。
在步骤S801中,控制部11作为学习数据取得部111动作,取得构成各学习数据集300的演奏信息31。在一例中,演奏信息31可以被直接给予。在其他一例中,演奏信息31例如可以根据乐谱等其他形式的数据得到。作为具体例,演奏信息31可以通过对已知的原始数据的旋律及和声进行分析而生成。
在步骤S802中,控制部11作为学习数据取得部111动作,取得与各件的演奏信息31对应的元信息33。元信息33可以适宜地构成为表示与编曲的乐曲有关的特性。在本实施方式中,元信息33可以构成为包含难度信息、样式(スタイル)信息、构成信息以及速度(テンポ)信息的至少其中一个。元信息33也可以通过指定了演奏信息31(例如输入了原始数据)的操作员经由输入装置14进行输入而得到。通过步骤S801以及步骤S802的处理,能够取得各学习数据集300的训练乐曲数据30。
在步骤S803中,控制部11作为学习数据取得部111动作,取得与各件的训练乐曲数据30对应的已知的编曲数据35。已知的编曲数据35可以被适宜地生成以便能够作为正确答案数据使用。即,已知的编曲数据35可以基于对应的元信息33所示的条件被适宜地生成,以便表示对所对应的演奏信息31所示的乐曲进行编曲而得到的乐曲。在一例中,已知的编曲数据35可以与用于取得演奏信息31的已知的原始数据对应地生成。上述元信息33也可以从对应的已知的编曲数据35取得。得到的已知的编曲数据35可以与对应的训练乐曲数据30适宜地相关联。通过步骤S801~步骤S803的处理,能够取得多个学习数据集300。
在步骤S804中,控制部11作为学习处理部112动作,将各学习数据集300的训练乐曲数据30(演奏信息31以及元信息33)变换为多个令牌T。由此,控制部11生成与各学习数据集300的训练乐曲数据30对应的输入令牌列。如上述那样,在本实施方式中,输入令牌列构成为:在配置了与元信息33对应的令牌T之后,将与演奏信息31对应的令牌T对应于时间序列配置。
另外,只要步骤S801以及步骤S802的处理比步骤S804靠前执行,则步骤S801~步骤S804的处理的顺序可以不限定于上述的例子,可以根据实施方式适宜地决定。在其他一例中,步骤S802的处理可以比步骤S801靠前执行。或者,步骤S801以及步骤S802的处理可以并行地执行。在其他一例中,步骤S804的处理可以与步骤S801以及步骤S802分别对应地执行。即,控制部11也可以与取得演奏信息31相应地生成演奏信息31的部分的令牌T,与取得元信息33相应地取得元信息33的部分的令牌T。在其他一例中,步骤S804的处理可以比步骤S801~步骤S803的至少其中一个靠前执行。在其他一例中,步骤S803以及步骤S804的处理也可以并行地执行。
此外,步骤S801~步骤S804的处理的至少一部分可以由其他计算机执行。在该情况下,控制部11也可以经由网络、存储介质91、其他外部存储装置(例如NAS、外置存储介质等)等,从其他计算机取得运算结果,从而达成步骤S801~步骤S804的处理的至少一部分。在一例中,各学习数据集300可以由其他计算机生成。在该情况下,控制部11作为步骤S801~步骤S803的处理,也可以从其他计算机取得各学习数据集300。也可以是,多个学习数据集300之中的至少一部分由其他计算机生成,剩余的由编曲生成装置1生成。
在步骤S805中,控制部11作为学习处理部112动作,使用多个学习数据集300(学习数据3),实施生成模型5的机器学习。在本实施方式中,控制部11针对各学习数据集300,作为正向传播的运算处理,将通过步骤S804的处理而得到的输入令牌列中包含的令牌T从开头依次向生成模型5输入,并反复执行生成模型5的运算,从而依次生成构成输出令牌列的令牌T。通过该运算,控制部11能够取得与各件的训练乐曲数据30对应的编曲数据(输出令牌列)作为推理结果。接下来,控制部11算出所得到的编曲数据与对应的已知的编曲数据35(正确答案数据)之间的误差,进一步算出被算出的误差的梯度。控制部11通过误差反向传播法,使被算出的误差的梯度反向传播,从而算出生成模型5的参数的值的误差。控制部11基于被算出的误差,对生成模型5的参数的值进行调整。控制部11可以反复通过上述一系列处理对生成模型5的参数的值进行调整,直到满足规定的条件(例如,执行规定次数、被算出的误差的和成为阈值以下)。
通过该机器学习,生成模型5针对各学习数据集300被训练,以使根据训练乐曲数据30生成的编曲数据适于所对应的已知的编曲数据35。从而,作为机器学习的结果,能够生成学习了通过各学习数据集300给予的输入令牌列(训练乐曲数据30)与输出令牌列(已知的编曲数据35)之间的对应关系后的训练完毕的生成模型5。换言之,能够生成训练完毕的生成模型5,该训练完毕的生成模型5获得了依照元信息33所示的条件对演奏信息31(原始)的旋律及和声进行编曲以使其适于已知的编曲数据35(正确答案数据)的能力。
在步骤S806中,控制部11作为保存处理部113动作,生成与通过机器学习而生成的训练完毕的生成模型5有关的信息作为学习结果数据125。在学习结果数据125中,保持用于再现训练完毕的生成模型5的信息。作为一例,学习结果数据125可以包含表示通过上述机器学习的调整而得到的生成模型5的各参数的值的信息。根据情况,学习结果数据125可以包含表示生成模型5的构造的信息。构造例如可以根据层数、各层的种类、各层中包含的节点数、相邻的层的节点彼此的连接关系等确定。控制部11将被生成的学习结果数据125保存至规定的存储区域。
规定的存储区域例如可以是控制部11内的RAM、存储部12、外部存储装置、存储媒体或者它们的组合。存储媒体例如可以是CD、DVD等,控制部11也可以经由驱动器16向存储媒体储存学习结果数据125。外部存储装置例如可以是NAS等数据服务器。在该情况下,控制部11也可以利用通信接口13,经由网络向数据服务器储存学习结果数据125。此外,外部存储装置例如也可以是与编曲生成装置1连接的外置的存储装置。
如果学习结果数据125的保存完成,则控制部11结束本动作例所涉及的生成模型5的机器学习的处理过程。另外,控制部11也可以定期地或者不定期地反复进行上述步骤S801~步骤S806的处理,从而更新或者新生成学习结果数据125。在该反复进行时,可以对用于机器学习的学习数据3的至少一部分适宜地执行变更、修正、追加、删除等。由此,控制部11也可以更新或者新生成训练完毕的生成模型5。此外,在无需保存机器学习的结果的情况下,可以省略步骤S806的处理。
<3.2编曲生成的处理过程>
图10是表示本实施方式所涉及的编曲生成装置1所进行的与编曲生成有关的处理过程的一例的流程图。以下说明的与编曲生成有关的处理过程是编曲生成方法的一例。其中,针对以下说明的编曲生成方法的处理过程,可以根据实施方式适宜地进行步骤的省略、置换以及追加。
在步骤S901中,控制部11作为对象数据取得部114动作,取得表示乐曲的至少一部分的旋律及和声的演奏信息21。在一例中,演奏信息21可以被直接给予。在其他一例中,演奏信息21例如可以根据乐谱等其他形式的数据得到。作为具体例,演奏信息21可以通过对作为编曲对象的原始数据进行分析而得到。
在步骤S902中,控制部11作为对象数据取得部114动作,取得表示与乐曲的至少一部分有关的特性的元信息23。在本实施方式中,元信息23可以构成为包含难度信息、样式信息、构成信息以及速度信息的至少其中一个。在一例中,元信息23例如可以通过随机、依照规定的规则决定等方法,由编曲生成装置1或者其他计算机自动地选择。在其他一例中,元信息23也可以由用户经由输入装置14进行输入而得到。在该情况下,用户能够指定期望的编曲条件。通过步骤S901以及步骤S902的处理,控制部11能够取得包含演奏信息21以及元信息23的对象乐曲数据20。
在步骤S903中,控制部11作为编曲生成部115动作,将对象乐曲数据20中包含的演奏信息21以及元信息23变换为多个令牌T。由此,控制部11生成与编曲的对象乐曲数据20对应的输入令牌列。如上述那样,在本实施方式中,输入令牌列构成为:在配置了与元信息23对应的令牌T之后,将与演奏信息21对应的令牌T对应于时间序列配置。
另外,只要步骤S901以及步骤S902的处理比步骤S903靠前执行,则步骤S901~步骤S903的处理的顺序可以不限定于上述的例子,可以根据实施方式适宜地决定。在其他一例中,步骤S902的处理可以比步骤S901靠前执行。或者,步骤S901以及步骤S902的处理可以并行地执行。在其他一例中,步骤S903的处理可以与步骤S901以及步骤S902分别对应地执行。即,控制部11也可以与取得演奏信息21相应地生成演奏信息21的部分的令牌T,与取得元信息23相应地生成元信息23的部分的令牌T。
在步骤S904中,控制部11作为编曲生成部115动作,参考学习结果数据125,进行通过机器学习而训练完毕的生成模型5的设定。在训练完毕的生成模型5的设定已经完成的情况下,可以省略该处理。控制部11使用通过机器学习而训练完毕的生成模型5,根据被取得的对象乐曲数据20生成编曲数据25。在本实施方式中,控制部11将被生成的输入令牌列中包含的令牌T向训练完毕的生成模型5输入,并执行训练完毕的生成模型5的运算,从而生成与编曲数据25对应的输出令牌列。进而,在本实施方式中,训练完毕的生成模型5构成为具有回归构造。在上述生成输出令牌列的步骤中,控制部11将输入令牌列中包含的令牌T从开头依次向训练完毕的生成模型5输入,并反复执行训练完毕的生成模型5的运算(上述正向传播的运算),从而依次生成构成输出令牌列的令牌。
作为该运算的结果,能够生成与元信息23相应地对演奏信息21进行编曲而得到的编曲数据25。即,即使演奏信息21相同,通过变更元信息23,也能够生成不同的编曲数据25。在元信息23包含难度信息的情况下,在本步骤S904中,控制部11能够使用训练完毕的生成模型5,根据对象乐曲数据20生成与难度信息所示的难度对应的编曲数据25。在元信息23包含样式信息的情况下,在本步骤S904中,控制部11能够使用训练完毕的生成模型5,根据对象乐曲数据20生成与样式信息所示的样式(编曲者、艺术家)对应的编曲数据25。在元信息23包含构成信息的情况下,在本步骤S904中,控制部11能够使用训练完毕的生成模型5,根据对象乐曲数据20生成与构成信息所示的乐器构成对应的编曲数据25。在元信息23包含速度信息的情况下,在本步骤S904中,控制部11能够使用训练完毕的生成模型5,根据对象乐曲数据20生成与速度信息所示的速度对应的编曲数据25。
在步骤S905中,控制部11作为乐谱生成部116动作,使用被生成的编曲数据25生成乐谱数据27。在一例中,控制部11使用编曲数据25,例如对音符、演奏记号等元素进行布局,从而生成乐谱数据27。
在步骤S906中,控制部11作为输出部117动作,输出被生成的编曲数据25。输出目的地以及输出形式可以不特别限定,可以根据实施方式适宜地决定。在一例中,控制部11例如向RAM、存储部12、存储介质、外部存储装置、其他信息处理装置等输出目的地原样输出编曲数据25。在其他一例中,输出编曲数据25也可以构成为输出乐谱数据27。在该情况下,控制部11例如也可以向RAM、存储部12、存储介质、外部存储装置、其他信息处理装置等输出目的地输出乐谱数据27。此外/在此基础上,控制部11例如也可以向印刷装置(未图示)输出用于向纸等介质印刷乐谱数据27的指令。由此,也可以输出被印刷的乐谱。
如果编曲数据25的输出完成,则控制部11结束本动作例所涉及的编曲生成的处理过程。另外,控制部11例如也可以与来自用户的请求相应地,定期地或者不定期地反复执行上述步骤S901~步骤S906的处理。在该反复执行时,可以针对向训练完毕的生成模型5输入的演奏信息21以及元信息23的至少一部分适宜地进行变更、修正、追加、删除等。由此,控制部11能够使用训练完毕的生成模型5生成不同的编曲数据25。
<特征>
如上所述,在本实施方式中,在步骤S904的处理中,使用通过机器学习而生成的训练完毕的生成模型5,根据包含原演奏信息21的对象乐曲数据20生成编曲数据25。在步骤S805中,通过使用充分的学习数据3恰当地实施机器学习,训练完毕的生成模型5能够获得根据多种多样的原演奏信息恰当地生成编曲数据的能力。因此,在步骤S904中,通过使用获得了那样的能力的训练完毕的生成模型5,能够恰当地生成编曲数据25。而且,通过元信息23,能够对编曲数据25的生成条件进行控制,因此能够根据相同的演奏信息21生成多种多样的编曲数据25。进而,通过使用训练完毕的生成模型5,能够使生成编曲数据25的工序的至少一部分自动化。由此,能够削减人工的作业工时。从而,根据本实施方式,能够实现生成编曲数据25的成本的减少,并且恰当地生成多种多样的编曲数据25。
此外,在本实施方式中,通过上述步骤S905,能够根据被生成的编曲数据25自动地生成乐谱数据27。而且,通过上述步骤S906,能够将乐谱数据27向各种各样的介质(例如存储介质、纸介质等)自动地输出。从而,根据本实施方式,能够使乐谱的生成以及输出自动化,因此能够进一步削减人工的作业工时。
此外,在本实施方式中,元信息(23、33)可以构成为包含难度信息、样式信息、构成信息以及速度信息的至少其中一个。由此,在步骤S904中,能够生成适于元信息23所示的难度、样式、乐器构成以及速度的至少其中一个的多种多样的编曲数据25。从而,根据本实施方式,能够实现根据相同的演奏信息21生成编曲数据25的多个变化(variation)(编曲模式(pattern))所耗费的成本的减少。同样,演奏信息(21、23)不仅包含旋律的信息,而且也包含和声(chord)的信息。因此,根据本实施方式,也能够对生成的编曲数据25中的和声进行控制。
此外,在本实施方式中,乐曲数据(20、30)被变换为输入令牌列,输入令牌列构成为:在配置了与元信息(23、33)对应的令牌T之后,将与演奏信息(21、31)对应的令牌T对应于时间序列配置。而且,生成模型5构成为具有回归构造,输入令牌列中包含的各令牌T从开头依次向生成模型5输入。由此,在生成模型5中,能够将与比元信息(23、33)及演奏信息(21、31)的对象靠前的部分对应的运算结果,反映至与演奏信息(21、31)的对象的部分对应的运算中。从而,根据本实施方式,能够将元信息以及演奏信息的上下文恰当地反映至推理处理中,因此生成模型5能够生成恰当的编曲数据。在机器学习的阶段中,能够生成获得了生成那样的恰当的编曲数据的能力的训练完毕的生成模型5。在编曲生成的阶段中,在步骤S905中,通过使用获得了那样的能力的训练完毕的生成模型5,能够生成恰当的编曲数据25。
<4.变形例>
以上,详细地说明了本发明的实施方式,至此的说明在各处都不过是本发明的例示。显然在不脱离本发明的范围的条件下能够进行各种各样的改进或者变形。例如,能够进行如下变更。另外,在以下,关于与上述实施方式同样的结构元素使用同样的标号,针对与上述实施方式同样的方面适宜地省略说明。以下的变形例能够适宜地组合。
<4.1>
在上述一例中,生成模型5构成为根据演奏信息中包含的单旋律及和声,生成钢琴的右手部分以及左手部分作为编曲数据。但是,编曲可以不限定于这样的例子。在上述实施方式中,也可以按照包含构成信息的方式构成元信息(23、33),并对构成信息所示的乐器构成适宜地进行控制(例如由用户指定),从而在生成模型5中生成包含任意的部分的编曲数据。作为乐器构成的一例,能够例示包含主唱/吉他/低音吉他(Bass)/鼓/键盘等的乐队构成、包含女高音/女低音/男高音/男低音等的合唱构成、以及包含多个木管乐器/多个铜管乐器/低音提琴/打击乐器等的管乐合奏构成。根据该结构,在上述步骤S904中,能够基于相同的演奏信息21,生成具有不同的多个乐器构成的部分的编曲数据25。在上述机器学习的阶段中,能够生成获得了那样的能力的训练完毕的生成模型5。
使用图11以及图12,说明本变形例所涉及的生成模型5的输入形式以及输出形式的一例。图11是用于说明本变形例所涉及的向生成模型5输入的乐曲数据的输入形式(令牌)的一例的图。图12是用于说明本变形例所涉及的从生成模型5输出的编曲数据的输出形式(令牌)的一例的图。
如图11所例示的那样,本变形例所涉及的输入令牌列包含上述图7中例示的令牌T、以及表示构成信息的乐器构成令牌(例如<inst>elg bas apf</inst>)。乐器构成令牌包含:各自表现一个乐器的多个乐器特定令牌(例如,表示吉他的elg、表示低音吉他的bas、表示钢琴的apf)、表示乐器特定令牌出现(乐器构成令牌开始)的开始标签令牌(<inst>)、以及表示乐器构成令牌结束的结束标签令牌(</inst>)。
由此,如图12所例示的那样,生成模型5能够根据乐器构成令牌确定乐器构成,并生成与确定的乐器构成对应的编曲数据(输出令牌列)。在图12的例中,从生成模型5输出的输出令牌列包含表示与根据乐器构成令牌确定的多个乐器(例如吉他、低音吉他、钢琴)分别对应的音(演奏信息)的令牌T。
<4.2>
此外,在上述实施方式中,演奏信息(21、31)中包含的信息可以不限于表示乐曲中包含的旋律(melody)以及和声(harmony)的信息。演奏信息(21、31)也可以包含除了旋律及和声以外的信息。
作为一例,如图11所例示的那样,演奏信息(21、31)可以不仅包含旋律及和声的信息,而且还包含表示乐曲的至少一部分中的节奏的节拍信息。在图11的例中,输入令牌列包含表示节拍信息的节拍令牌(例如,表示男低音鼓的图11的bd令牌)。根据该结构,在上述步骤S904中,能够生成更恰当地反映了乐曲的构造(节奏)的编曲数据25。在上述机器学习的阶段中,能够生成获得了那样的能力的训练完毕的生成模型5。
<4.3>
在上述实施方式所涉及的步骤S901以及步骤S902中,编曲生成装置1(控制部11)也可以取得与将一个乐曲分割(例如,以每4小节等规定的长度分割)而得到的多个部分分别对应的多个对象乐曲数据20。与此相应,控制部11也可以执行针对取得的多个对象乐曲数据20分别生成编曲数据25的步骤(步骤S903以及步骤S904),从而生成多个编曲数据25。并且,控制部11也可以作为编曲生成部115动作,将生成的多个编曲数据25整合,从而生成与一个乐曲对应的编曲数据。根据该结构,能够抑制1次执行的生成模型5的计算量,还能够抑制注意力层的参考对象的数据尺寸。其结果是,能够减轻生成处理中的运算负荷,并且对乐曲整体生成编曲数据。
<4.4>
此外,在上述实施方式中,编曲生成装置1构成为执行机器学习的处理以及编曲生成(推理)的处理这双方的运算。但是,编曲生成装置1的结构可以不限定于这样的例子。在编曲生成装置1由多台计算机构成的情况下,通过将各步骤在多台计算机的至少其中一个中执行,可以将各步骤的运算分散地处理。各计算机间可以经由网络、存储介质、外部存储装置等进行数据的交互。在一例中,机器学习的处理以及编曲生成的处理也可以由分开的计算机执行。
图13示意性地表示发明被应用于的场景的其他一例。模型生成装置101是构成为通过实施机器学习来生成训练完毕的生成模型5的1台或者多台计算机。编曲生成装置102是构成为使用训练完毕的生成模型5根据对象乐曲数据20生成编曲数据25的1台或者多台计算机。
模型生成装置101以及编曲生成装置102的硬件结构可以与上述编曲生成装置1同样。作为具体例,模型生成装置101可以是通用的服务器装置,编曲生成装置1例如可以是通用的PC、平板PC、智能手机等用户终端。模型生成装置101以及编曲生成装置102既可以直接连接,或者也可以经由网络连接。在模型生成装置101以及编曲生成装置102经由网络连接的情况下,网络的种类可以不特别限定,例如可以从互联网、无线通信网、移动通信网、电话网、专用网等适宜地选择。其中,在模型生成装置101与编曲生成装置102之间交互数据的方法也可以不限定于这样的例子,可以根据实施方式适宜地选择。例如,在模型生成装置101与编曲生成装置102之间,可以利用存储介质交互数据。
在本变形例中,上述生成程序81可以被分割为:包含与生成模型5的机器学习有关的信息处理的指令的第一程序、以及包含与使用训练完毕的生成模型5生成编曲数据25有关的信息处理的指令的第二程序。在该情况下,第一程序可以称为模型生成程序,第二程序可以称为编曲生成程序。编曲生成程序是本发明的生成程序的一例。
模型生成装置101通过执行与生成程序81的机器学习的处理有关的部分(第一程序),作为具备学习数据取得部111、学习处理部112以及保存处理部113作为软件模块的计算机动作。另一方面,编曲生成装置102通过执行与生成程序81的编曲生成的处理有关的部分(第二程序),作为具备对象数据取得部114、编曲生成部115、乐谱生成部116以及输出部117作为软件模块的计算机动作。
在本变形例中,模型生成装置101通过执行上述步骤S801~步骤S806的处理,生成训练完毕的生成模型5。生成被生成的训练完毕的生成模型5。被生成的训练完毕的生成模型5可以在任意的定时向编曲生成装置102提供。被生成的训练完毕的生成模型5(学习结果数据125)例如可以经由网络、存储介质、外部存储装置等向编曲生成装置102提供。或者,被生成的训练完毕的生成模型5(学习结果数据125)可以被预先组入编曲生成装置102。另一方面,编曲生成装置102通过执行上述步骤S901~步骤S906的处理,使用训练完毕的生成模型5,根据对象乐曲数据20生成编曲数据25。
<4.5>
在上述实施方式中,生成模型5具有图6所示的基于转换器(Transformer)的结构的回归构造。但是,回归构造可以不限定于图6所示的例子。回归构造表示构成为能够参考比对象靠过去的输入来执行与对象(当前)的输入对应的处理的构造。只要能够进行这样的运算,则回归构造可以不特别限定,可以根据实施方式适宜地决定。在其他一例中,回归构造例如可以通过RNN(循环神经网络(Recurrent Neural Network))、LSTM(长短期记忆(Long short-term memory))等公知的构造构成。
此外,在上述实施方式中,生成模型5构成为具有回归构造。但是,生成模型5的结构可以不限定于这样的例子。回归构造可以省略。生成模型5例如可以通过具有全连接神经网络、卷积神经网络等公知的构造的神经网络构成。进而,将输入令牌列向生成模型5输入的方式,可以不限定于上述实施方式的例子。在其他一例中,生成模型5也可以构成为一次受理输入令牌列中包含的多个令牌T。
此外,在上述实施方式中,生成模型5构成为受理与乐曲数据对应的输入令牌列的输入,并输出与编曲数据对应的输出令牌列。但是,生成模型5的输入形式以及输出形式可以不限定于这样的例子。在其他一例中,生成模型5可以构成为直接获取乐曲数据。此外,生成模型5也可以构成为直接输出编曲数据。
此外,在上述实施方式中,只要能够根据乐曲数据生成编曲数据,则构成生成模型5的机器学习模型的种类可以不特别限定,可以根据实施方式适宜地选择。进而,在上述实施方式中,在由多层构成生成模型5的情况下,各层的种类可以根据实施方式适宜地选择。在各层中,例如可以采用卷积层、池化层、丢弃层、标准化层、全连接层等。关于生成模型5的构造,能够适宜地进行结构元素的省略、置换以及追加。
<4.6>
在上述实施方式中,乐谱数据27的生成也可以省略。与此相应,在编曲生成装置1的软件结构中,乐谱生成部116可以省略。在与上述编曲生成有关的处理过程中,步骤S905的处理可以省略。
标号说明
1……编曲生成装置,11……控制部,12……存储部,111……学习数据取得部,112……学习处理部,113……保存处理部,114……对象数据取得部,115……编曲生成部,116……乐谱生成部,117……输出部,5……生成模型
Claims (13)
1.一种编曲生成方法,由计算机执行如下步骤:
取得对象乐曲数据,该对象乐曲数据包含表示乐曲的至少一部分的旋律及和声的演奏信息、以及表示与所述乐曲的至少一部分有关的特性的元信息;
使用通过机器学习而训练完毕的生成模型,根据所取得的所述对象乐曲数据而生成编曲数据,其中所述编曲数据通过根据所述元信息对所述演奏信息进行编曲而得到;以及
输出所生成的所述编曲数据。
2.如权利要求1所述的编曲生成方法,
所述元信息包含表示所述乐曲在演奏上的难度的难度信息作为编曲的条件,
在生成所述编曲数据的步骤中,所述计算机使用所述训练完毕的生成模型,根据所取得的所述对象乐曲数据,生成与由所述难度信息表示的所述难度对应的所述编曲数据。
3.如权利要求1或者权利要求2所述的编曲生成方法,
所述元信息包含表示所述乐曲的音乐的样式的样式信息作为编曲的条件,
在生成所述编曲数据的步骤中,所述计算机使用所述训练完毕的生成模型,根据所取得的所述对象乐曲数据,生成与由所述样式信息表示的所述样式对应的所述编曲数据。
4.如权利要求3所述的编曲生成方法,
所述样式信息包含用于确定编曲者的编曲者信息。
5.如权利要求1至权利要求4中任1项所述的编曲生成方法,
所述元信息包含表示所述乐曲中的乐器构成的构成信息作为编曲的条件,
在生成所述编曲数据的步骤中,所述计算机使用所述训练完毕的生成模型,根据所取得的所述对象乐曲数据,生成与由所述构成信息表示的所述乐器构成对应的所述编曲数据。
6.如权利要求1至权利要求5中任1项所述的编曲生成方法,
所述演奏信息包含表示所述乐曲的至少一部分中的节奏的节拍信息。
7.如权利要求1至权利要求6中任1项所述的编曲生成方法,
生成所述编曲数据的步骤具备如下步骤:
所述计算机生成与所述对象乐曲数据对应的输入令牌列;以及
所述计算机将所生成的所述输入令牌列中包含的令牌向所述训练完毕的生成模型输入,并执行所述训练完毕的生成模型的运算,从而生成与所述编曲数据对应的输出令牌列。
8.如权利要求7所述的编曲生成方法,
所述输入令牌列构成为:在配置了与所述元信息对应的令牌之后,将与所述演奏信息对应的令牌对应于时间序列而配置,
所述训练完毕的生成模型构成为具有回归构造,
在生成所述输出令牌列的步骤中,所述计算机将所述输入令牌列中包含的令牌从开头依次向所述训练完毕的生成模型输入,并反复执行所述训练完毕的生成模型的运算,从而依次生成构成所述输出令牌列的令牌。
9.如权利要求1至权利要求8中任1项所述的编曲生成方法,
在所述取得的步骤中,所述计算机取得与将一个乐曲分割而得到的多个部分中的各个部分分别对应的多个所述对象乐曲数据,
所述计算机对于所取得的所述多个对象乐曲数据中的各个对象乐曲数据执行生成所述编曲数据的步骤,从而生成多个所述编曲数据,
所述计算机将所生成的所述多个编曲数据整合,从而生成与所述一个乐曲对应的编曲数据。
10.如权利要求1至权利要求9中任1项所述的编曲生成方法,
计算机还执行使用所生成的所述编曲数据而生成乐谱数据的步骤。
11.一种编曲生成装置,具备:
对象数据取得部,构成为取得对象乐曲数据,该对象乐曲数据包含表示乐曲的至少一部分的旋律及和声的演奏信息、以及表示与所述乐曲的至少一部分有关的特性的元信息;
编曲生成部,构成为使用通过机器学习而训练完毕的生成模型,根据所取得的所述对象乐曲数据而生成编曲数据,其中所述编曲数据通过根据所述元信息对所述演奏信息进行编曲而得到;以及
输出部,构成为输出所生成的所述编曲数据。
12.如权利要求11所述的编曲生成装置,
所述编曲生成装置还具备:乐谱生成部,构成为使用所生成的所述编曲数据而生成乐谱数据,
输出所述编曲数据,构成为输出所生成的乐谱数据。
13.一种生成程序,用于使计算机执行如下步骤:
取得对象乐曲数据,该对象乐曲数据包含表示乐曲的至少一部分的旋律及和声的演奏信息、以及表示与所述乐曲的至少一部分有关的特性的元信息;
使用通过机器学习而训练完毕的生成模型,根据所取得的所述对象乐曲数据而生成编曲数据,其中所述编曲数据通过根据所述元信息对所述演奏信息进行编曲而得到;以及
输出所生成的所述编曲数据。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020-024482 | 2020-02-17 | ||
JP2020024482 | 2020-02-17 | ||
PCT/JP2021/004815 WO2021166745A1 (ja) | 2020-02-17 | 2021-02-09 | アレンジ生成方法、アレンジ生成装置、及び生成プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115004294A true CN115004294A (zh) | 2022-09-02 |
Family
ID=77391129
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180009202.0A Pending CN115004294A (zh) | 2020-02-17 | 2021-02-09 | 编曲生成方法、编曲生成装置以及生成程序 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20220383843A1 (zh) |
JP (1) | JP7251684B2 (zh) |
CN (1) | CN115004294A (zh) |
WO (1) | WO2021166745A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023056004A1 (en) * | 2021-09-30 | 2023-04-06 | Novel, LLC | Method and system for automatic music transcription and simplification |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2643582B2 (ja) * | 1990-10-20 | 1997-08-20 | ヤマハ株式会社 | 自動リズム生成装置 |
JP3316547B2 (ja) * | 1992-10-12 | 2002-08-19 | カシオ計算機株式会社 | 和音付装置 |
JPH06124275A (ja) * | 1992-10-13 | 1994-05-06 | Ricoh Co Ltd | 信号処理装置 |
JP3013648B2 (ja) * | 1993-03-23 | 2000-02-28 | ヤマハ株式会社 | 自動編曲装置 |
-
2021
- 2021-02-09 CN CN202180009202.0A patent/CN115004294A/zh active Pending
- 2021-02-09 WO PCT/JP2021/004815 patent/WO2021166745A1/ja active Application Filing
- 2021-02-09 JP JP2022501825A patent/JP7251684B2/ja active Active
-
2022
- 2022-08-11 US US17/886,452 patent/US20220383843A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20220383843A1 (en) | 2022-12-01 |
JP7251684B2 (ja) | 2023-04-04 |
WO2021166745A1 (ja) | 2021-08-26 |
JPWO2021166745A1 (zh) | 2021-08-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Hadjeres et al. | Deepbach: a steerable model for bach chorales generation | |
Benetos et al. | Automatic music transcription: challenges and future directions | |
US5736666A (en) | Music composition | |
CN109036355B (zh) | 自动作曲方法、装置、计算机设备和存储介质 | |
CN112382257B (zh) | 一种音频处理方法、装置、设备及介质 | |
US11568244B2 (en) | Information processing method and apparatus | |
JPWO2008062816A1 (ja) | 自動作曲システム | |
JP6565528B2 (ja) | 自動アレンジ装置及びプログラム | |
Adiloglu et al. | A machine learning approach to two-voice counterpoint composition | |
JP7251684B2 (ja) | アレンジ生成方法、アレンジ生成装置、及び生成プログラム | |
Garani et al. | An algorithmic approach to South Indian classical music | |
CN113096624A (zh) | 交响乐曲自动创作方法、装置、设备及存储介质 | |
Wu et al. | Generating detailed music datasets with neural audio synthesis | |
Winter | Interactive music: Compositional techniques for communicating different emotional qualities | |
JP3531507B2 (ja) | 楽曲生成装置および楽曲生成プログラムを記録したコンピュータで読み取り可能な記録媒体 | |
Subramanian | Modelling gamakas of carnatic music as a synthesizer for sparse prescriptive notation | |
US11756515B1 (en) | Method and system for generating musical notations for musical score | |
US20230326436A1 (en) | Automated Music Composition and Generation System and Method | |
WO2004025306A1 (en) | Computer-generated expression in music production | |
JP4735221B2 (ja) | 演奏データ編集装置及びプログラム | |
WO2022202199A1 (ja) | コード推定装置、訓練装置、コード推定方法および訓練方法 | |
US20230377540A1 (en) | System and method for generating and/or adapting musical notations | |
WO2022244403A1 (ja) | 楽譜作成装置、訓練装置、楽譜作成方法および訓練方法 | |
Sorensen et al. | A computational model for the generation of orchestral music in the Germanic symphonic tradition: A progress report | |
Mazzola et al. | Software Tools and Hardware Options |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |