[发明专利]基于循环神经网络的音乐生成方法及装置有效
申请号: | 201811578987.X | 申请日: | 2018-12-24 |
公开(公告)号: | CN109727590B | 公开(公告)日: | 2020-09-22 |
发明(设计)人: | 尹学渊;江天宇;陈超 | 申请(专利权)人: | 成都嗨翻屋科技有限公司 |
主分类号: | G10H1/00 | 分类号: | G10H1/00;G10H7/00;G06N3/04 |
代理公司: | 成都睿道专利代理事务所(普通合伙) 51217 | 代理人: | 贺理兴 |
地址: | 610000 四川省成都市天*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 循环 神经网络 音乐 生成 方法 装置 | ||
本发明公开了基于循环神经网络的音乐生成方法及装置,涉及深度学习技术领域,方法包括以下步骤:建立循环神经网络;将MIDI格式的第一音符序列进行预处理,得到训练数据集;通过训练数据集对循环神经网络进行训练,得到神经网络模型;通过神经网络模型及采样策略对输入的第二音符序列的各个音符事件进行计算、排序,输出第三音符序列;将第三音符序列解码转换为MIDI格式的音符序列文件;将音符序列文件转换为音频格式的输出文件;本发明通过神经网络模型生成音乐,借助深度神经网络强大的学习、表示能力,通过采样策略,快速有效的得到优质的旋律,便于用户生成原始的旋律,有效提高了音乐创作的效率。
技术领域
本发明涉及深度学习技术领域,尤其是涉及基于循环神经网络的音乐生成方法及装置。
背景技术
音乐是一种重要的艺术形式,通常,音乐包涵旋律和和弦两种成分。其中,旋律是沿着时间顺序分布的集合,被广泛认为是音乐的最重要组成部分,具体而言,旋律是一系列音符沿时间分布的集合。其中,每个音符均包涵音高和时长两个要素,音高决定了这个音符的频率高低,时长则决定了这个音符将被弹奏多久。
现有的旋律生成、音乐生成方案都需要人工参与、人工预制参数,不能产生艺术性的音乐,本专利从海量的历史音乐数据中自动学习,无须人工预制参数,效果较好。
发明内容
为了解决上述问题,本发明提出了基于循环神经网络的音乐生成方法及装置,通过神经网络模型和采样技术,智能生成音乐文件。
为了实现上述目的,本发明采用如下技术方案:
第一方面,本发明实施例提供了一种基于循环神经网络的音乐生成方法,包括以下步骤:
建立循环神经网络;
将MIDI格式的第一音符序列进行预处理,得到训练数据集;所述预处理包括以下步骤:以音高为纵坐标,以时间为横坐标建立坐标系;设定时间步,将所述第一音符序列在横坐标时间轴上分割为多个时间步;根据所述第一音符序列在每个时间步上的音高设定每个时间步的事件编号;通过独热编码依次对所述第一音符序列的每个事件编号进行编码;
通过训练数据集对循环神经网络进行训练,得到神经网络模型;
通过神经网络模型及采样策略对输入的第二音符序列的各个音符事件进行计算、排序,输出第三音符序列;所述采样策略包括:设定音符事件为y(i),i为大于0的自然数,所述第二音符序列的总时间步长为N;将第二音符序列输入神经网络模型,将第二音符序列的各个音符事件按可能出现的概率输出;通过概率计算公式计算神经网络模型输出的音符序列各个音符事件在第n个时间步出现的最终概率,去掉神经网络模型输出的音符序列第一个音符事件,将在第n个时间步出现的最终概率最大的音符事件添加到神经网络模型输出的音符序列的末尾,得到新的音符序列,将得到的新的音符序列输入到神经网络模型,重复迭代过程,直至迭代次数达到N,结束迭代,得到所述第三音符序列,其中,i=1,2,...,N,n=1,2,...,N;
将所述第三音符序列解码转换为MIDI格式的音符序列文件;
将所述音符序列文件转换为音频格式的输出文件。
进一步的,以最小音符时值作为所述时间步。
进一步的,纵坐标的范围为0~128,其中,1~127分别对应不同的音高,0表示继续输入前一个音符,128表示无音符输入。
优选的,所述循环神经网络包括依次连接的输入层、多个LSTM层、多个全连接层及输出层。
进一步的,所述概率计算公式为:
其中,e为自然对数,T为调节音符事件y(i)概率分布的参数,为各音符事件在第i时间步的最终出现概率。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都嗨翻屋科技有限公司,未经成都嗨翻屋科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811578987.X/2.html,转载请声明来源钻瓜专利网。