CN109671416B - 基于增强学习的音乐旋律生成方法、装置及用户终端 - Google Patents
基于增强学习的音乐旋律生成方法、装置及用户终端 Download PDFInfo
- Publication number
- CN109671416B CN109671416B CN201811578602.XA CN201811578602A CN109671416B CN 109671416 B CN109671416 B CN 109671416B CN 201811578602 A CN201811578602 A CN 201811578602A CN 109671416 B CN109671416 B CN 109671416B
- Authority
- CN
- China
- Prior art keywords
- module
- midi files
- reinforcement learning
- melody
- target midi
- 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.)
- Active
Links
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
- 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
- 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
- G10H2210/105—Composing aid, e.g. for supporting creation, edition or modification of a piece of music
-
- 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
- G10H2210/111—Automatic composing, i.e. using predefined musical rules
-
- 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/341—Rhythm pattern selection, synthesis or composition
-
- 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/375—Tempo or beat alterations; Music timing control
- G10H2210/391—Automatic tempo adjustment, correction or control
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Auxiliary Devices For Music (AREA)
Abstract
本发明公开了一种基于增强学习的音乐旋律生成方法、装置及用户终端,涉及计算机技术领域。该方法包括:获得多个目标MIDI文件;对多个目标MIDI文件进行结构化处理;将每个目标MIDI文件的音轨处理成包含音高和时值的数据序列;根据调式调性对数据序列进行进行分类;根据音轨的属性对分类后的每个数据序列设置相应的标签;基于增强学习算法按照数据序列的类别进行训练,得到多个Q_table模型;根据多个Q_table模型和被选取的调式调性生成音乐旋律。本发明公开的方法、装置及用户终端可自动生成音乐旋律,可以使旋律更加具有人性化,也可单独生成简谱和节奏,更加灵活,并且只要增加样本,即可自身迭代和优化。
Description
技术领域
本发明涉及计算机技术领域,尤其是涉及一种基于增强学习的音乐旋律生成方法、装置及用户终端。
背景技术
音乐创作是一种高难度,依赖人类突发灵感的高级思维活动,其需要遵循严格的规律,如节拍性、强弱性等,这意味着创造音乐是一项既要循规蹈矩,又要寻求新意的艰苦劳动,仅有对音高、节拍等具有敏锐感觉,且思维活跃度极高的极少数人能够胜任音乐创着的。
随着科技的发展进步,利用计算机创作音乐也逐渐开始应用,利用计算机创作音乐,可极大减少人类进行音乐创作的工作量,且有望产生挣脱传统思路束缚新颖音乐,即使用计算机生成的音乐还不能与人类的音乐家相比,但机器作品可以为人类提供候选或初级作品,使作曲家创作更加容易,因此利用计算机创作音乐具有非常广阔的应用场景。
目前,计算机创作音乐常采用的方式是采用LSTM和GNN算法,其生成的旋律机械化,而且不能随时更新优化。
发明内容
有鉴于此,本发明的目的在于提出了一种基于增强学习的音乐旋律生成方法、装置及用户终端,以改善上述问题。
为了实现上述目的,本发明采用如下技术方案:
第一方面,本发明实施例提供了一种基于增强学习的音乐旋律生成方法,所述方法包括:
获得多个目标MIDI文件;
对所述多个目标MIDI文件进行结构化处理;
将每个所述目标MIDI文件的音轨处理成包含音高和时值的数据序列;
根据调式调性对所有的数据序列进行分类;
根据音轨的属性对分类后的每个数据序列设置相应的标签,所述属性包括音轨的速度、节拍和乐器类型中的至少一种;
基于增强学习算法按照数据序列的类别和对应的所述标签分别进行训练,得到多个Q_table模型,每个所述Q_table模型中存储各个执行动作对应的回报;
根据所述多个Q_table模型和被选取的调式调性生成音乐旋律,其中,所述音乐旋律中各个动作所对应的回报总和或平均值高于预设的回报阈值。
如上所述的基于增强学习的音乐旋律生成方法,可选的,所述获得多个目标MIDI文件,包括:
从所述服务器获得多个初始MIDI文件;
对所述多个初始MIDI文件进行筛选,得到所述多个目标MIDI文件。
如上所述的基于增强学习的音乐旋律生成方法,可选的,所述方法还包括:
将所述多个目标MIDI文件按照风格、情感、主题、场景四个维度进行分类;
所述对所述多个目标MIDI文件进行结构化处理,包括:
将分类后的所述多个目标MIDI文件中的每个音轨中的音符对齐。
如上所述的基于增强学习的音乐旋律生成方法,可选的,在根据音轨的属性对分类后的每个数据序列设置相应的标签之前,所述方法还包括:
提取出每个所述目标MIDI文件的旋律中的音轨;
将音符之间的空白间隔的音高标记为0;
过滤每个音轨中的重叠音符。
第二方面,本发明实施例提供了一种基于增强学习的音乐旋律生成装置,所述基于增强学习的音乐旋律生成装置包括:
获取模块,用于获得多个目标MIDI文件;
结构化处理模块,用于对所述多个目标MIDI文件进行结构化处理;
数据处理模块,用于将每个所述目标MIDI文件的音轨处理成包含音高和时值的数据序列;
分类模块,用于根据调式调性对所有的数据序列进行分类;
标签模块,用于根据音轨的属性对分类后的每个数据序列设置相应的标签,所述属性包括音轨的速度、节拍和乐器类型中的至少一种;
训练模块,用于基于增强学习算法按照数据序列的类别和对应的所述标签分别进行训练,得到多个Q_table模型,每个所述Q_table模型中存储各个执行动作对应的回报;
生成模块,用于根据所述多个Q_table模型和被选取的调式调性生成音乐旋律,其中,所述音乐旋律中各个动作所对应的回报总和或平均值高于预设的回报阈值。
如上所述的基于增强学习的音乐旋律生成装置,可选的,所述获取模块包括:
获取子模块,用于从所述服务器获得多个初始MIDI文件;
筛选子模块,用于对所述多个初始MIDI文件进行筛选,得到所述多个目标MIDI文件。
如上所述的基于增强学习的音乐旋律生成装置,可选的,所述分类模块还用于将所述多个目标MIDI文件按照风格、情感、主题、场景四个维度进行分类;
所述结构化处理模块用于将分类后的所述多个目标MIDI文件中的每个音轨中的音符对齐。
如上所述的基于增强学习的音乐旋律生成装置,可选的,基于增强学习的音乐旋律生成装置还包括:
提取模块,用于提取出每个所述目标MIDI文件的旋律中的音轨;
空白间隔处理模块,用于将音符之间的空白间隔的音高标记为0;
过滤模块,用于过滤每个音轨中的重叠音符。
第三方面,本发明实施例提供了一种用户终端,所述用户终端包括:
存储器;
处理器;以及
基于增强学习的音乐旋律生成装置,所述基于增强学习的音乐旋律生成装置安装于所述存储器中并包括一个或多个由所述处理器执行的软件功能模组,所述基于增强学习的音乐旋律生成装置包括:
获取模块,用于获得多个目标MIDI文件;
结构化处理模块,用于对所述多个目标MIDI文件进行结构化处理;
数据处理模块,用于将每个所述目标MIDI文件的音轨处理成包含音高和时值的数据序列;
分类模块,用于根据调式调性对所有的数据序列进行分类;
标签模块,用于根据音轨的属性对分类后的每个数据序列设置相应的标签,所述属性包括音轨的速度、节拍和乐器类型中的至少一种;
训练模块,用于基于增强学习算法按照数据序列的类别和对应的所述标签分别进行训练,得到多个Q_table模型,每个所述Q_table模型中存储各个执行动作对应的回报;
生成模块,用于根据所述多个Q_table模型和被选取的调式调性生成音乐旋律,其中,所述音乐旋律中各个动作所对应的回报总和或平均值高于预设的回报阈值。
与现有技术相比,本发明的有益效果在于:
本发明提供的基于增强学习的音乐旋律生成方法、装置及用户终端可自动生成音乐旋律,采用增强学习,可以使旋律更加具有人性化,也可以单独生成简谱和节奏,更加灵活,并且只要增加样本,即可自身迭代和优化。
附图说明
图1为本发明较佳实施例提供的应用环境示意图。
图2为本发明较佳实施例提供的用户终端的方框示意图。
图3为本发明较佳实施例提供的基于增强学习的音乐旋律生成方法的流程图。
图4为本发明较佳实施例提供的训练Q_table模型的示意图。
图5为本发明较佳实施例提供的增强学习算法的示意图。
图6为本发明较佳实施例提供的生成音乐旋律的示意图。
图7为本发明较佳实施例提供的基于增强学习的音乐旋律生成装置的功能模块示意图。
图8为图7中获取模块的功能模块示意图。
附图标记说明:100-用户终端;110-基于增强学习的音乐旋律生成装置;111-获取模块;1111-获取子模块;1112-筛选子模块;112-结构化处理模块;113-数据处理模块;114-分类模块;115-标签模块;116-训练模块;117-生成模块;118-提取模块;119-过滤模块;1191-空白间隔处理模块;120-存储器;130-存储控制器;140-处理器;150-外设接口;160-输入输出单元;170-显示单元;200-服务器;300-网络。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
如图1所示,是本发明较佳实施例提供的服务器200与用户终端100进行交互的示意图,所述服务器200通过网络300与一个或多个所述用户终端100通信连接以进行数据交互。所述服务器200可以是网络服务器、数据库服务器等,所述网络300可以是有线或无线网络,所述用户终端100可以是个人电脑(personal computer,PC)、平板电脑、智能手机、个人数字助理(personal d igital assistant,PDA)等。
如图2所示,是一种所述用户终端100的方框示意图,所述用户终端100包括有包括基于增强学习的音乐旋律生成装置110、存储器120、存储控制器130、处理器140、外设接口150、输入输出单元160、显示单元170。
所述存储器120、存储控制器130、处理器140、外设接口150、输入输出单元160、显示单元170各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。所述基于增强学习的音乐旋律生成装置110包括至少一个可以软件或固件(firmware)的形式存储于所述存储器120中或固化在所述电子设备100的操作***(operating system,OS)中的软件功能模块。所述处理器140用于执行存储器120中存储的可执行模块,例如所述基于增强学习的音乐旋律生成装置110包括的软件功能模块或计算机程序。
其中,存储器120可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。其中,存储器120用于存储程序,所述处理器140在接收到执行指令后,执行所述程序,前述本发明实施例任一实施例揭示的流过程定义的用户终端100所执行的方法可以应用于处理器140中,或者由处理器140实现。
处理器140可能是一种集成电路芯片,具有信号的处理能力。上述的处理器140可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等,还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述外设接口150将各种输入/输入装置耦合至处理器140以及存储器120。在一些实施例中,外设接口150,处理器140以及存储控制器130可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。
输入输出单元160用于提供给用户输入数据实现用户与所述用户终端100的交互。所述输入输出单元160可以是,但不限于,鼠标和键盘等。
显示单元170在所述用户终端100与用户之间提供一个交互界面(例如用户操作界面)或用于显示图像数据给用户参考。在本实施例中,所述显示单元170可以是液晶显示器或触控显示器。若为触控显示器,其可为支持单点和多点触控操作的电容式触控屏或电阻式触控屏等。支持单点和多点触控操作是指触控显示器能感应到来自该触控显示器上一个或多个位置处同时产生的触控操作,并将该感应到的触控操作交由处理器140进行计算和处理。
请参阅图3,是本发明较佳实施例提供的应用于图2所示的基于增强学习的音乐旋律生成装置110的基于增强学习的音乐旋律生成方法的流程图。下面将对图3所示的具体流程进行详细阐述。
步骤S101,得多个目标MIDI文件。
本发明提供的方法应用于用户终端100,在生成音乐旋律之前,首先用户终端100从服务器200获取多个初始MIDI文件作为音乐文件样本。然后用户终端100对获取到的多个初始MIDI文件进行筛选,在进行筛选时,选取音符线条流畅,音符线条重合度低于预设值的初始MIDI文件,得到多个目标MIDI文件。
步骤S102,将多个目标MIDI文件按照风格、情感、主题、场景四个维度进行分类。
不同音乐对应有不同风格、情感、主题、场景等,因此在获得目标MIDI文件后,用户终端100的用户可将目标MIDI文件按照风格、情感、主题、场景等向用户终端100录入用于对目标MIDI文件进行分类的分类操作指令,用户终端100根据用户录入的分类操作指令将将多个目标MIDI文件按照风格、情感、主题、场景四个维度进行分类。
例如,风格可分为摇滚、流行、民谣等,情感可分为喜、怒、哀、乐等,主题可分为爱情、友情等,场景可分为生日、结婚等场景。
步骤S103,对多个目标MIDI文件进行结构化处理。
具体的,用户终端100将分类后的多个目标MIDI文件中将每个音轨中的音符(旋律、伴奏)进行对齐。例如,旋律比伴奏略长,则可以删除旋律中比伴奏略长的那一部分。而对于十分不规整的音轨则直接删除掉。通过对多个目标MIDI文件进行量,确保目标MIDI文件规范、可用。
步骤S104,将每个目标MIDI文件的音轨处理成包含音高和时值的数据序列。
对多个目标MIDI文件进行结构化处理后,用户终端100提取出每个目标MIDI文件的旋律中的音轨。并在提取出每个目标MIDI文件的旋律中的音轨后将每个所述目标MIDI文件的音轨处理成包含音高和时值的数据序列,以便后续进行运算处理。
所述时值是也称为音符值或音值,在乐谱中用来表达各音符之间的相对持续时间。一个完全音符等于两个二分音符,等于四个四分音符,八个八分音符,十六个十六分音符,三十二个三十二分音符。
进一步的,在提取出每个目标MIDI文件的旋律中的音轨后,所述用户终端100还可将音符之间的空白间隔的音高标记为0,并对每个音轨中的重叠音符进行过滤。
本发明实施例中,音高(pitch)和时值(time_value)结构序列类似如下:
[(pitch1,time_value1),(pitch2,time_value2)…]。音高和时值结构序列元素之间符合原旋律音符排列顺序,此处音高时值结构表示音符,音高时值序列表示音轨,但音符和音轨的表示不限于此。
步骤S105,根据调式调性对所有的数据序列进行分类。
在传统音乐理论中,由若干个音合理的组织在一起,并以某个音为中心构成一个体系叫调式,调式的性质、特点叫调性。在将每个目标MIDI文件的音轨处理成包含音高和时值的数据序列后,用户终端100根据调式调性对所有的数据序列进行进行分类。
例如,将所有的数据序列按照A-G调,将所有的数据序列进行进行分类与A-G调对应的7大类。进一步的,还可以根据每个调的大调、小调(如C调包括C大调和C小调)更进一步精细划分。
步骤S106,根据音轨的属性对分类后的每个数据序列设置相应的标签。
音轨的属性包括速度、节拍和乐器类型中的至少其中一种,本发明实施例中,音轨的属性速度、节拍和乐器类型。可以理解的,在其他的一些实施例中,音轨的属性也可以设置为速度、节拍和乐器类型中的其中一种或两种。
步骤S107,基于增强学习算法按照数据序列的类别和对应的标签分别进行训练,得到多个Q_table模型。
将数据序列按照调式调性进行分类后,用户终端100根据增强学习算法按照数据序列的类别以及对应的标签,分别对不同类别的数据序列分别进行训练,得到与数据序列类别相对应的多个Q_table模型。
其中,每个所述Q_table模型中存储各个执行动作对应的回报。本发明实施例中,当前音符到下一个音符就是一个动作,用户终端100根据不同动作定义不同的回报,在定义动作的回报时,用户终端100根据数据序列所对应的音轨中同一动作出现的次数定义不同的回报,动作出现的次数越高说明使用的次数越多,该动作(当前音符到下一个音符)的旋律相对更为动听,因此定义的回报也更高。
本发明实施例中,增强学习基本原理公式为:Q(s,a)=r(s,a)+γ*maxQ(s',a'),其中s表示状态,a表示动作,Q(s,a)表示对状态s下动作a得到的总体回报的一个估计,本专利中使用Q_value表示Q(s,a),r为此动作的立即回报,γ为折扣因子,其中0≤γ<1。
如图4所示,是训练Q_table模型的示意图,Q_table模型记录Q_value的表项,即公式中的Q(s,a),图中的Ssatus为公式中的s,Action为公式中的a。
根据增强学习原理,本发明实施例中,包括使用增强学习算法Q_learning和深度强化学习算法DQN,增强学习算法如图5所示。其中,Agent为训练过程生成旋律的智能体,执行生成旋律操作,旋律用音高和时值结构的序列表示,根据Environment(旋律评分模型)中返回的状态响应一个动作,当序列中无音符时,根据约束生成第一个音符,如果序列中含有音符,则根据约束条件添加一个音符,设value为根据增强学习基本原理公式设置的阀值,输出该音符到Environment,形式如下:
(pithch,time_value)。
其中约束条件为:0<pitche<127;1<time_value<127;Q(s,a)>value。
Environment:Agent所处的环境,相当于一个旋律评判的模型,模型综合了乐理知识和大量音乐原始数据得到,接收Agent传过来动作,并在模型中执行该动作,此处为在原有音高时值结构序列中添加该音高时值结构,得到的当前状态Status如下,根据评分模型得到对当前状态做评分(回报)Reward,并将二者输出到Agent:
[…(pithch,time_value)]。
Action:Agent输出到Environment的动作,为单个音高时值结构。
Reward:Environment反馈给Agent的评分。
Status:Environment执行Action之后的状态。
步骤S108,根据多个Q_table模型和被选取的调式调性生成音乐旋律。
得到与数据序列类别相对应的多个Q_table模型,用户终端100的用户即可根据该多个Q_table模型来生成音乐。具体的,用户可选择一种调式调性,并选择音符的数量,然后用户终端100根据被选择的调式调性和多个Q_table模型中与该调式调性对应的模型生成一段音符数量与被选择音符数量相等的音乐旋律。在生成音乐旋律时,该生成的音乐旋律需满足音乐旋律中各个动作所对应的回报总和或平均值高于预设的回报阈值,如此确保生成的音乐旋律符合调式调性和节奏变化,且具备观赏性。
进一步的,本发明实施例中,用户终端100的用户还可选择待生成音乐旋律所对应的风格、情感、主题、场景,或者速度、节拍、乐器等参数。在生成音乐旋律时用户终端100还可以结合用户选择的参数生成相应的音乐旋律。
图6示出了本发明较佳实施例提供的生成音乐旋律的过程的示意图,如图6所示,
生成音乐旋律的过程如图6所示,将状态Status和Action输入到Q_table模型中,得到Q_value,根据设置的阀值选择状态下Q_value较高的Action,可加入随机性,让生成模块具有探索性。
请参阅图7,是本发明较佳实施例提供的基于增强学习的音乐旋律生成装置110的功能模块示意图,所述基于增强学习的音乐旋律生成装置110包括获取模块111、结构化处理模块112、数据处理模块113、分类模块114、标签模块115、训练模块116、生成模块117、提取模块118、过滤模块119和空白间隔处理模块1191。
获取模块111用于从所述服务器200获得多个目标MIDI文件。
请参阅图8,所述获取模块111包括获取子模块1111和筛选子模块1112。
获取子模块1111用于从服务器200获得多个初始MIDI文件。
筛选子模块1112用于对多个初始MIDI文件进行筛选,得到多个目标MIDI文件。
可以理解的,所述获取模块111可以用于执行上述的步骤S101。
所述分类模块114用于将多个目标MIDI文件按照风格、情感、主题、场景四个维度进行分类。
可以理解的,所述分类模块114可以用于执行上述的步骤S102。
所述结构化处理模块112用于对所述多个目标MIDI文件进行结构化处理。
可以理解的,所述结构化处理模块112可以用于执行上述的步骤S103。
所述数据处理模块113用于将每个所述目标MIDI文件的音轨处理成包含音高和时值的数据序列。
可以理解的,所述数据处理模块113可以用于执行上述的步骤S104。
所述提取模块118用于提取出每个所述目标MIDI文件的旋律中的音轨。
所述过滤模块119用于过滤每个音轨中的重叠音符。
所述空白间隔处理模块1191用于将音符之间的空白间隔的音高标记为0。
所述分类模块114根据调式调性对所有的数据序列进行进行分类。
可以理解的,所述分类模块114还可以用于执行上述的步骤S105。
所述标签模块115用于根据音轨的属性对分类后的每个数据序列设置相应的标签。
可以理解的,所述标签模块115还可以用于执行上述的步骤S106。
所述训练模块116用于基于增强学习算法按照数据序列的类别分别进行训练,得到多个Q_table模型,每个所述Q_table模型中存储各个执行动作对应的回报。
可以理解的,所述训练模块116可以用于执行上述的步骤S107。
所述生成模块117用于根据多个Q_table模型和被选取的调式调性生成音乐旋律。
可以理解的,所述生成模块117可以用于执行上述的步骤S108。
综上所述,本发明提供的基于增强学习的音乐旋律生成方法、装置及用户终端能够根据从服务器获取到的多个初始MIDI文件进行筛选得到多个目标MIDI文件,并对多个目标MIDI文件结构化处理以将每个音轨中的音符(旋律、伴奏)对齐以及删除掉十分不规整的音轨,以确保目标MIDI文件规范、可用,将每个目标MIDI文件的音轨处理成包含音高和时值的数据序列后根据调式调性进行分类,然后基于增强学习算法按照数据序列的类别分别进行训练,得到多个Q_table模型,在生成音乐时能够根据多个Q_table模型和被选取的调式调性自动生成音乐旋律符合调式调性和节奏变化,且具备观赏性音乐旋律。本发明提供的基于增强学习的音乐旋律生成方法、装置及用户终端可自动生成音乐旋律,采用增强学习,可以使旋律更加具有人性化,也可以单独生成简谱和节奏,更加灵活,并且只要增加音乐文件样本,即可实现自身迭代和优化。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (7)
1.一种基于增强学习的音乐旋律生成方法,其特征在于,所述方法包括:
获得多个目标MIDI文件;
对所述多个目标MIDI文件进行结构化处理;
将每个所述目标MIDI文件的音轨处理成包含音高和时值的数据序列;
根据调式调性对所有的数据序列进行分类;
提取出每个所述目标MIDI文件的旋律中的音轨;
将音符之间的空白间隔的音高标记为0;
过滤每个音轨中的重叠音符;
根据音轨的属性对分类后的每个数据序列设置相应的标签,所述属性包括音轨的速度、节拍和乐器类型中的至少一种;
基于增强学习算法按照数据序列的类别和对应的所述标签分别进行训练,得到多个Q_table模型,每个所述Q_table模型中存储各个执行动作对应的回报;所述回报根据数据序列所对应的音轨中同一动作出现的次数进行定义,动作的回报与其出现次数呈正相关,所述动作为当前音符到下一个音符;
根据所述多个Q_table模型和被选取的调式调性生成音乐旋律,其中,所述音乐旋律中各个动作所对应的回报总和或平均值高于预设的回报阈值。
2.根据权利要求1所述的基于增强学习的音乐旋律生成方法,其特征在于,所述获得多个目标MIDI文件,包括:
从服务器获得多个初始MIDI文件;
对所述多个初始MIDI文件进行筛选,得到所述多个目标MIDI文件。
3.根据权利要求1所述的基于增强学习的音乐旋律生成方法,其特征在于,所述方法还包括:
将所述多个目标MIDI文件按照风格、情感、主题、场景四个维度进行分类;
所述对所述多个目标MIDI文件进行结构化处理,包括:
将分类后的所述多个目标MIDI文件中的每个音轨中的音符对齐。
4.一种基于增强学习的音乐旋律生成装置,所述基于增强学习的音乐旋律生成装置包括:
获取模块,获得多个目标MIDI文件;
结构化处理模块,用于对所述多个目标MIDI文件进行结构化处理;
数据处理模块,用于将每个所述目标MIDI文件的音轨处理成包含音高和时值的数据序列;
分类模块,用于根据调式调性对所有的数据序列进行分类;
提取模块,用于提取出每个所述目标MIDI文件的旋律中的音轨;
空白间隔处理模块,用于将音符之间的空白间隔的音高标记为0;
过滤模块,用于过滤每个音轨中的重叠音符;
标签模块,用于根据音轨的属性对分类后的每个数据序列设置相应的标签,所述属性包括音轨的速度、节拍和乐器类型中的至少一种;
训练模块,用于基于增强学习算法按照数据序列的类别和对应的所述标签分别进行训练,得到多个Q_table模型,每个所述Q_table模型中存储各个执行动作对应的回报;所述回报根据数据序列所对应的音轨中同一动作出现的次数进行定义,动作的回报与其出现次数呈正相关,所述动作为当前音符到下一个音符;
生成模块,用于根据所述多个Q_table模型和被选取的调式调性生成音乐旋律,其中,所述音乐旋律中各个动作所对应的回报总和或平均值高于预设的回报阈值。
5.根据权利要求4所述的基于增强学习的音乐旋律生成装置,其特征在于,所述获取模块包括:
获取子模块,用于从服务器获得多个初始MIDI文件;
筛选子模块,用于对所述多个初始MIDI文件进行筛选,得到所述多个目标MIDI文件。
6.根据权利要求4所述的基于增强学习的音乐旋律生成装置,其特征在于,所述分类模块还用于将所述多个目标MIDI文件按照风格、情感、主题、场景四个维度进行分类;
所述结构化处理模块用于将分类后的所述多个目标MIDI文件中的每个音轨中的音符对齐。
7.一种用户终端,其特征在于,所述用户终端包括:
存储器;
处理器;以及
基于增强学习的音乐旋律生成装置,所述基于增强学习的音乐旋律生成装置安装于所述存储器中并包括一个或多个由所述处理器执行的软件功能模组,所述基于增强学习的音乐旋律生成装置包括:
获取模块,用于获得多个目标MIDI文件;
结构化处理模块,用于对所述多个目标MIDI文件进行结构化处理;
数据处理模块,用于将每个所述目标MIDI文件的音轨处理成包含音高和时值的数据序列;
分类模块,用于根据调式调性对所有的数据序列进行分类;
标签模块,用于根据音轨的属性对分类后的每个数据序列设置相应的标签,所述属性包括音轨的速度、节拍和乐器类型中的至少一种;
训练模块,用于基于增强学习算法按照数据序列的类别分别进行训练,得到多个Q_table模型,每个所述Q_table模型中存储各个执行动作对应的回报;
生成模块,用于根据所述多个Q_table模型和被选取的调式调性生成音乐旋律,其中,所述音乐旋律中各个动作所对应的回报总和或平均值高于预设的回报阈值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811578602.XA CN109671416B (zh) | 2018-12-24 | 2018-12-24 | 基于增强学习的音乐旋律生成方法、装置及用户终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811578602.XA CN109671416B (zh) | 2018-12-24 | 2018-12-24 | 基于增强学习的音乐旋律生成方法、装置及用户终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109671416A CN109671416A (zh) | 2019-04-23 |
CN109671416B true CN109671416B (zh) | 2023-07-21 |
Family
ID=66145969
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811578602.XA Active CN109671416B (zh) | 2018-12-24 | 2018-12-24 | 基于增强学习的音乐旋律生成方法、装置及用户终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109671416B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110085263B (zh) * | 2019-04-28 | 2021-08-06 | 东华大学 | 一种音乐情感分类和机器作曲方法 |
CN110517655B (zh) * | 2019-08-28 | 2023-03-14 | 广州艾颂智能科技有限公司 | 一种旋律生成方法及*** |
CN111274891B (zh) * | 2020-01-14 | 2023-05-02 | 成都潜在人工智能科技有限公司 | 一种面向简谱图像的音高及对应歌词提取方法及*** |
CN111782576B (zh) * | 2020-07-07 | 2021-10-15 | 北京字节跳动网络技术有限公司 | 背景音乐的生成方法、装置、可读介质、电子设备 |
CN113066458B (zh) * | 2021-03-17 | 2024-07-09 | 平安科技(深圳)有限公司 | 基于类lisp链数据的旋律生成方法、装置、设备及存储介质 |
CN113035162B (zh) * | 2021-03-22 | 2024-07-09 | 平安科技(深圳)有限公司 | 民族音乐生成方法、装置、设备及存储介质 |
CN113077770B (zh) * | 2021-03-22 | 2024-03-05 | 平安科技(深圳)有限公司 | 佛乐生成方法、装置、设备及存储介质 |
CN113192472A (zh) * | 2021-04-29 | 2021-07-30 | 北京灵动音科技有限公司 | 信息处理方法、装置、电子设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101667170A (zh) * | 2008-09-05 | 2010-03-10 | 索尼株式会社 | 计算、量化、音频编码的装置和方法及程序 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101800046B (zh) * | 2010-01-11 | 2014-08-20 | 北京中星微电子有限公司 | 一种根据音符生成midi音乐的方法和装置 |
WO2014028891A1 (en) * | 2012-08-17 | 2014-02-20 | Be Labs, Llc | Music generator |
IES86526B2 (en) * | 2013-04-09 | 2015-04-08 | Score Music Interactive Ltd | A system and method for generating an audio file |
GB2538994B (en) * | 2015-06-02 | 2021-09-15 | Sublime Binary Ltd | Music generation tool |
US9275347B1 (en) * | 2015-10-09 | 2016-03-01 | AlpacaDB, Inc. | Online content classifier which updates a classification score based on a count of labeled data classified by machine deep learning |
CN106652655B (zh) * | 2015-10-29 | 2019-11-26 | 施政 | 一种音轨替换的乐器 |
CN106875929B (zh) * | 2015-12-14 | 2021-01-19 | 中国科学院深圳先进技术研究院 | 一种音乐旋律转化方法及*** |
US9799312B1 (en) * | 2016-06-10 | 2017-10-24 | International Business Machines Corporation | Composing music using foresight and planning |
CN108597535B (zh) * | 2018-03-29 | 2021-10-26 | 华南理工大学 | 一种融合伴奏的midi钢琴曲风格分类方法 |
CN108806657A (zh) * | 2018-06-05 | 2018-11-13 | 平安科技(深圳)有限公司 | 音乐模型训练、音乐创作方法、装置、终端及存储介质 |
-
2018
- 2018-12-24 CN CN201811578602.XA patent/CN109671416B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101667170A (zh) * | 2008-09-05 | 2010-03-10 | 索尼株式会社 | 计算、量化、音频编码的装置和方法及程序 |
Also Published As
Publication number | Publication date |
---|---|
CN109671416A (zh) | 2019-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109671416B (zh) | 基于增强学习的音乐旋律生成方法、装置及用户终端 | |
US11461388B2 (en) | Generating a playlist | |
JP6799574B2 (ja) | 音声対話の満足度の確定方法及び装置 | |
CN112182252B (zh) | 基于药品知识图谱的智能用药问答方法及其设备 | |
Magnusson | Musical organics: a heterarchical approach to digital organology | |
KR20190125153A (ko) | 텍스트 기반 사용자심리상태예측 및 콘텐츠추천 장치 및 그 방법 | |
US8412650B2 (en) | Device and method and program of text analysis based on change points of time-series signals | |
Frauenberger et al. | Auditory display design—an investigation of a design pattern approach | |
CN110491365A (zh) | 为纯文本文档生成音频 | |
CN102033880A (zh) | 基于结构化数据集合的标注方法和装置 | |
KR20120101233A (ko) | 감성 정보 생성 방법, 그를 이용한 감성 정보 기반의 콘텐츠 추천 방법 및 시스템 | |
Lu et al. | Boosting for multi-modal music emotion | |
CN112732910B (zh) | 跨任务文本情绪状态评估方法、***、装置及介质 | |
Koh et al. | MERP: A music dataset with emotion ratings and raters’ profile information | |
Dahlstedt | Musicking with algorithms: Thoughts on artificial intelligence, creativity, and agency | |
Font et al. | Class-based tag recommendation and user-based evaluation in online audio clip sharing | |
CN101578600A (zh) | 用于将一个用户的分类标签与由另一个用户定义的分类标签相关联的***和方法 | |
CN109410656A (zh) | 一种基于旋律合成的背诵引导方法及学习设备 | |
CN111581429A (zh) | 音乐推送方法、装置、设备及计算机可读存储介质 | |
CN111159463A (zh) | 一种音乐情感识别方法及*** | |
Cummins et al. | Latest advances in computational speech analysis for mobile sensing | |
CN114461885A (zh) | 歌曲质量评价方法、装置和存储介质 | |
Goold | Artificial authors: case studies of copyright in works of machine learning | |
Woitek et al. | A novel tool for capturing conceptualized audio annotations | |
Wilkes et al. | Statistical and Visual Analysis of Audio, Text, and Image Features for Multi-Modal Music Genre Recognition |
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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20230627 Address after: Room 1210, 12 / F, unit 1, building 1, No. 722, middle section of Yizhou Avenue, high tech Zone, Chengdu, Sichuan 610000 Applicant after: Chengdu potential Artificial Intelligence Technology Co.,Ltd. Address before: 610000 Huayang Avenue Section 117 and 119, Huayang Street, Tianfu New District, Chengdu City, Sichuan Province Applicant before: CHENGDU HIFIVE TECHNOLOGY Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |