首页> 中国专利> 模型的生成方法、音乐合成的方法、系统、设备及介质

模型的生成方法、音乐合成的方法、系统、设备及介质

摘要

本发明公开了一种模型的生成方法、音乐合成的方法、系统、设备及介质,其中,模型的生成方法,包括:将音乐片段拆分成为时序上连续的多个音符;对音乐片段进行处理,以获取每个音符对应的基频矩阵以及音符密度矩阵;将基频矩阵和音符密度矩阵拼接生成第一拼接矩阵;将第一拼接矩阵输入包含多个循环神经网络层和多个线性层的模型中进行训练,以生成音符预测模型。本发明提供的模型的生成方法基于基频矩阵以及音符密度矩阵作为特征数据,输入包括循环神经网络层和线性层构建的模型中进行训练,该模型结构简单、训练难度小,提高了模型的训练速度,减少了训练时间。

著录项

  • 公开/公告号CN112885315A

    专利类型发明专利

  • 公开/公告日2021-06-01

    原文格式PDF

  • 申请/专利权人 携程旅游信息技术(上海)有限公司;

    申请/专利号CN202011552361.9

  • 发明设计人 周明康;罗超;邹宇;胡泓;

    申请日2020-12-24

  • 分类号G10H1/00(20060101);G10H1/32(20060101);G06N3/04(20060101);G06N3/08(20060101);

  • 代理机构31283 上海弼兴律师事务所;

  • 代理人杨东明;张冉

  • 地址 201203 上海市浦东新区张江高科技园区碧波路518号302室

  • 入库时间 2023-06-19 11:11:32

说明书

技术领域

本发明涉及计算机音乐合成领域,具体涉及一种模型的生成方法、音乐合成的方法、系统、设备及介质。

背景技术

随着深度学习的不断发展,其在图像、文本、语言各个方面具有广泛的应用。近几年,直播行业的快速兴起,各行各业都在进行直播“带货”,互联网公司也在大力发展直播行业。互联网公司进行酒店介绍时需要配合背景音乐,但是现有的背景音乐都是通过音乐艺术家进行音乐创造而生成的。艺术家数量有限,每年创作的作品较少,无法满足市场需求,并且需要购买版权,成本较高。

因此,利用人工智能生成音乐受到广泛的关注。在人工智能领域,通常采用生成模型合成音乐,现有的模型结构复杂、训练难度大,且合成的音符不流畅、音乐片段效果差。

发明内容

本发明要解决的技术问题是为了克服现有技术中利用生成模型合成音乐时,模型结构复杂、训练难度大,且合成的音符不流畅、音乐片段效果差的缺陷,提供一种模型的生成方法、音乐合成的方法、系统、设备及介质。

本发明是通过下述技术方案来解决上述技术问题:

第一方面,本发明提供一种模型的生成方法,所述方法包括:

将音乐片段拆分成为时序上连续的多个音符;

对所述音乐片段进行处理,以获取每个音符对应的基频矩阵以及音符密度矩阵;其中,所述音符密度矩阵用于表征所对应的所述音符的触发和截至的时间;

将所述基频矩阵和所述音符密度矩阵拼接生成第一拼接矩阵;

将所述第一拼接矩阵输入包含多个循环神经网络层和多个线性层的模型中进行训练,以生成音符预测模型;其中,所述线性层用于提取所述音符对应的音乐特征,所述循环神经网络层用于确定相邻音符之间的关联性,所述音符预测模型用于音符识别。

较佳地,所述包含多个循环神经网络层和多个线性层的模型包括依次连接的第一线性层、第二线性层、第一循环神经网络层、第二循环神经网络层、第三线性层以及分类层;

所述第一线性层的输入包括所述第一拼接矩阵;

所述第二线性层的输入包括所述第一线性层的输出,所述第二线性层将所述第一线性层的输出利用激活函数,生成所述第一拼接矩阵对应的所述音乐特征;

所述第一循环神经网络层的输入包括所述音乐特征;

所述第二循环神经网络层的输入包括所述第一循环神经网络层的输出,所述第二循环神经网络层的输出包括相邻音符之间的关联信息;

所述第三线性层的输入包括所述关联信息;

所述分类层的输入包括所述第二循环神经网络层的输出,所述分类层的输出包括所述第一拼接矩阵对应的音符识别结果。

较佳地,所述包含多个循环神经网络层和多个线性层的模型使用的损失函数为交叉熵损失函数,所述处理包括Embedding处理。

较佳地,所述循环神经网络层为双向长短记忆LSTM(Long Short-Term Memory,长短期记忆人工神经网络)网络层。

第二方面,本发明提供一种音乐合成的方法,所述方法包括:

利用如第一方面所述的模型的生成方法训练生成音符预测模型;

获取待合成音乐包含的预设音符数以及每个预设音符所对应的目标基频矩阵和目标音符密度矩阵;其中,每个所述预设音符具有音符位置标签;

将所述目标基频矩阵和所述目标音符密度矩阵拼接生成目标拼接矩阵;

将所有所述预设音符对应的所述目标拼接矩阵按照预设的时序上的音符排列顺序依次输入至所述音符预测模型,以获取每个所述预设音符对应的目标音符;

按照所述音符位置标签将所有的所述目标音符进行拼接,以生成目标音乐片段。

第三方面,本发明提供一种模型的生成系统,所述生成系统包括:

拆分模块,用于将音乐片段拆分成为时序上连续的多个音符;

处理模块,用于对所述音乐片段进行处理,以获取每个音符对应的基频矩阵以及音符密度矩阵;其中,所述音符密度矩阵用于表征所对应的所述音符的触发和截至的时间;

第一拼接模块,用于将所述基频矩阵和所述音符密度矩阵拼接生成第一拼接矩阵;

训练模块,用于将所述第一拼接矩阵输入包含多个循环神经网络层和多个线性层的模型中进行训练,以生成音符预测模型;其中,所述线性层用于提取所述音符对应的音乐特征,所述循环神经网络层用于确定相邻音符之间的关联性,所述音符预测模型用于音符识别。

较佳地,所述包含多个循环神经网络层和多个线性层的模型包括依次连接的第一线性层、第二线性层、第一循环神经网络层、第二循环神经网络层、第三线性层以及分类层;

所述第一线性层的输入包括所述第一拼接矩阵;

所述第二线性层的输入包括所述第一线性层的输出,所述第二线性层将所述第一线性层的输出利用激活函数,生成所述第一拼接矩阵对应的所述音乐特征;

所述第一循环神经网络层的输入包括所述音乐特征;

所述第二循环神经网络层的输入包括所述第一循环神经网络层的输出,所述第二循环神经网络层的输出包括相邻音符之间的关联信息;

所述第三线性层的输入包括所述关联信息;

所述分类层的输入包括所述第二循环神经网络层的输出,所述分类层的输出包括所述第一拼接矩阵对应的音符识别结果。

较佳地,所述包含多个循环神经网络层和多个线性层的模型使用的损失函数为交叉熵损失函数,所述处理包括Embedding处理。

较佳地,所述循环神经网络层为双向长短记忆LSTM网络层。

第四方面,本发明提供一种音乐合成的系统,所述系统包括:

模型训练模块,用于利用如第三方面所述的模型的生成系统,训练生成音符预测模型;

获取模块,用于获取待合成音乐包含的预设音符数以及每个预设音符所对应的目标基频矩阵和目标音符密度矩阵;其中,每个所述预设音符具有音符位置标签;

第二拼接模块,用于将所述目标基频矩阵和所述目标音符密度矩阵拼接生成目标拼接矩阵;

输入模块,用于将所有所述预设音符对应的所述目标拼接矩阵按照预设的时序上的音符排列顺序依次输入至所述音符预测模型,以获取每个所述预设音符对应的目标音符;

音乐生成模块,用于按照所述音符位置标签将所有的所述目标音符进行拼接,以生成目标音乐片段。

第五方面,本发明还提供一种电子设备,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如第一方面所述的一种模型的生成方法,或者实现如第二方面所述的音乐合成的方法。

第六方面,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的一种模型的生成方法的步骤,或者实现如第二方面所述的音乐合成的方法的步骤。

本发明的积极进步效果在于:提供一种模型的生成方法、音乐合成的方法、系统、设备及介质,本发明提供的模型的生成方法基于基频矩阵以及音符密度矩阵作为特征数据,输入包括循环神经网络层和线性层构建的模型中进行训练,该模型结构简单、训练难度小,提高了模型的训练速度,减少了训练时间;本发明提供的音乐合成的方法利用训练好的模型生成多个预测音符,在时序上将所有预测音符进行拼接,合成最终的音乐片段,增强了音乐合成的流畅性、改善了音乐片段的效果。

附图说明

图1为本发明实施例1的模型的生成方法的流程图。

图2为本发明实施例1的模型的生成方法中使用的网络结构的示意图。

图3为本发明实施例2的模型的生成系统的模块示意图。

图4为本发明实施例3的音乐合成的方法的流程图。

图5为本发明实施例4的音乐合成的系统的模块示意图。

图6为本发明实施例5的电子设备的硬件结构示意图。

具体实施方式

下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。

实施例1

本实施例提供一种模型的生成方法,如图1所示,该生成方法包括:

步骤S11、将音乐片段拆分成为时序上连续的多个音符。

步骤S12、对音乐片段进行处理,以获取每个音符对应的基频矩阵以及音符密度矩阵。其中,音符密度矩阵用于表征所对应的音符的触发和截至的时间。具体的,处理包括Embedding处理。

步骤S13、将基频矩阵和音符密度矩阵拼接生成第一拼接矩阵。

步骤S14、将第一拼接矩阵输入包含多个循环神经网络层和多个线性层的模型中进行训练,以生成音符预测模型。其中,线性层用于提取音符对应的音乐特征,循环神经网络层用于确定相邻音符之间的关联性,音符预测模型用于音符识别。

其中,循环神经网络层为双向长短记忆LSTM网络层。

在一些可行的实施方式中,用户可以从终端设备中打开播放音乐的应用程序,可以从MIDI(Musical Instrument Digital Interface)电子乐器数字接口获取MIDI音乐文件,该MIDI音乐文件中包含了若干个音乐片段。获取某一段音乐片段,将其拆分成为时序上连续的多个音符,对音乐片段经过数字信号处理,获取音乐的基本信息,该基本信息可以包括基频、音符密度和音符数。

需要说明的是,不同的音符,音符密度差别比较大,比如舒缓的低音,持续时间会长一些,则音符被触发和截止间隔比较大,同理,比较欢快的高音,音符变换快,则音符被触发和截止间隔比较小。本实施例中,对音符的选取的类型不作具体限制,也即,可以存在多个不同的舒缓的音,也可以存在多个不同的欢快的高音,在此不做具体限制。

从基本信息中获取固定维度的基频矩阵,利用Embedding处理将音符密度对应的矩阵转化为与基频矩阵相同维度的矩阵。将预设维度的基频矩阵和降维处理后生成的音符密度矩阵拼接生成第一拼接矩阵,将第一拼接矩阵输入包含多个循环神经网络层和多个线性层的模型中进行训练。本发明中选择 Adam(优化算法),batch size(批处理量)设为64,学习率设为0.001,总共训练40万步模型在训练的过程中迭代收敛,loss(损失函数)不再下降时,模型训练完成。

如图2所示,包含多个循环神经网络层和多个线性层的模型包括依次连接的第一线性层、第二线性层、第一循环神经网络层、第二循环神经网络层、第三线性层以及分类层。

第一线性层的输入包括第一拼接矩阵。

第二线性层的输入包括第一线性层的输出,第二线性层将第一线性层的输出利用激活函数,生成第一拼接矩阵对应的音乐特征。

第一循环神经网络层的输入包括音乐特征。

第二循环神经网络层的输入包括第一循环神经网络层的输出,第二循环神经网络层的输出包括相邻音符之间的关联信息。

第三线性层的输入包括关联信息。

分类层的输入包括第二循环神经网络层的输出,分类层的输出包括第一拼接矩阵对应的音符识别结果。

如图2所示,将拼接的结果输入到两个相邻的Linear层(线性层),使用LeakyReLU激活函数,输出的特征再输入两层双向的LSTM层,最后经过线性层,接入Softmax(分类层),得到分类的结果,取概率最大的为预测的音符。

需要说明的是,本实施例中,对于线性层的个数可以不作限制,该模型可以加入第三个线性层,第四个线性层,或者,该模型可以加入第三个第一循环神经网络层,第二个循环神经网络层,在此对于线性层和循环神经网络层的个数不作具体限制。

其中,包含多个循环神经网络层和多个线性层的模型使用的损失函数为交叉熵损失函数。

具体的,计算每个预测的音符和预先设定的音符标签的结果之间的交叉熵,交叉熵损失函数中,N表示音符类别数量,p

本发明实施例提供了一种模型的生成方法,基于基频矩阵以及音符密度矩阵作为特征数据,输入包括循环神经网络层和线性层构建的模型中进行训练,该模型结构简单、训练难度小,提高了模型的训练速度,减少了训练时间。

实施例2

本实施例,提供一种模型的生成系统,如图3所示,具体包括:拆分模块110、处理模块120、第一拼接模块130以及训练模块140。

其中,拆分模块110,用于将音乐片段拆分成为时序上连续的多个音符。

处理模块120,用于对音乐片段进行处理,以获取每个音符对应的基频矩阵以及音符密度矩阵。其中,音符密度矩阵用于表征所对应的音符的触发和截至的时间。具体的,处理包括Embedding处理。

第一拼接模块130,用于将基频矩阵和音符密度矩阵拼接生成第一拼接矩阵。

训练模块140,用于将第一拼接矩阵输入包含多个循环神经网络层和多个线性层的模型中进行训练,以生成音符预测模型。其中,线性层用于提取音符对应的音乐特征,循环神经网络层用于确定相邻音符之间的关联性,音符预测模型用于音符识别。

其中,循环神经网络层为双向长短记忆LSTM网络层。

在一些可行的实施方式中,用户可以从终端设备中打开播放音乐的应用程序,可以从MIDI电子乐器数字接口获取MIDI音乐文件,该MIDI音乐文件中包含了若干个音乐片段。获取某一段音乐片段,将其拆分成为时序上连续的多个音符,对音乐片段经过数字信号处理,获取音乐的基本信息,该基本信息可以包括基频、音符密度和音符数。

需要说明的是,不同的音符,音符密度差别比较大,比如舒缓的低音,持续时间会长一些,则音符被触发和截止间隔比较大,同理,比较欢快的高音,音符变换快,则音符被触发和截止间隔比较小。本实施例中,对音符的选取的类型不作具体限制,也即,可以存在多个不同的舒缓的音,也可以存在多个不同的欢快的高音,在此不做具体限制。

从基本信息中获取固定维度的基频矩阵,利用Embedding处理将音符密度对应的矩阵转化为与基频矩阵相同维度的矩阵。将预设维度的基频矩阵和降维处理后生成的音符密度矩阵拼接生成第一拼接矩阵,将第一拼接矩阵输入包含多个循环神经网络层和多个线性层的模型中进行训练。本发明中选择 Adam优化算法,batch size设为64,学习率设为0.001,总共训练40万步模型在训练的过程中迭代收敛,loss不再下降时,模型训练完成。

其中,包含多个循环神经网络层和多个线性层的模型包括依次连接的第一线性层、第二线性层、第一循环神经网络层、第二循环神经网络层、第三线性层以及分类层。

第一线性层的输入包括第一拼接矩阵。

第二线性层的输入包括第一线性层的输出,第二线性层将第一线性层的输出利用激活函数,生成第一拼接矩阵对应的音乐特征。

第一循环神经网络层的输入包括音乐特征。

第二循环神经网络层的输入包括第一循环神经网络层的输出,第二循环神经网络层的输出包括相邻音符之间的关联信息。

第三线性层的输入包括所述关联信息。

分类层的输入包括第二循环神经网络层的输出,分类层的输出包括第一拼接矩阵对应的音符识别结果。

需要说明的是,本实施例中,对于线性层的个数可以不作限制,该模型可以加入第三个线性层,第四个线性层,或者,该模型可以加入第三个第一循环神经网络层,第二个循环神经网络层,在此对于线性层和循环神经网络层的个数不作具体限制。

其中,包含多个循环神经网络层和多个线性层的模型使用的损失函数为交叉熵损失函数。

具体的,计算每个预测的音符和预先设定的音符标签的结果之间的交叉熵,上述的公式表示本实施例的交叉熵损失函数,在该公式中,N表示音符类别数量,p

本发明实施例提供了一种模型的生成系统,基于基频矩阵以及音符密度矩阵作为特征数据,输入包括循环神经网络层和线性层构建的模型中进行训练,该模型结构简单、训练难度小,提高了模型的训练速度,减少了训练时间。

实施例3

本实施例,提供一种音乐合成的方法,如图4所示,该方法包括:

步骤S21、利用如实施例1的模型的生成方法训练生成音符预测模型。

步骤S22、获取待合成音乐包含的预设音符数以及每个预设音符所对应的目标基频矩阵和目标音符密度矩阵;其中,每个预设音符具有音符位置标签。

步骤S23、将目标基频矩阵和目标音符密度矩阵拼接生成目标拼接矩阵。

步骤S24、将所有预设音符对应的目标拼接矩阵按照预设的时序上的音符排列顺序依次输入至音符预测模型,以获取每个预设音符对应的目标音符。

步骤S25、按照音符位置标签将所有的目标音符进行拼接,以生成目标音乐片段。

本实施例中,可以指定待合成的音乐片段中的预设音符的个数和类型,每个预设音符具有表征待合成音乐片段中音符位置标签,利用该模块可以每次识别一个音符,若预设音符的个数为10个,则该模型循环10次;若预设音符的个数为11个,则该模型循环11次。

模型最终输出的是单个音符的结果,将多次预测的结果拼接,生成最终的音乐片段,由于前后的预测的音符并没有关联性,拼接后的音乐会比较突兀,引入了两层是双向LSTM层,将上一次预测时得到隐藏状态作为当前第一循环神经网络层或者第二循环神经网络层的隐藏状态,建立起前后两次预测音符的连贯性,使得最终拼接得到的音乐更加流畅动听。

本发明实施例中,提供的音乐合成的方法利用训练好的模型生成多个预测音符,在时序上将所有预测音符进行拼接,合成最终的音乐片段,增强了音乐合成的流畅性、改善了音乐片段的效果。

实施例4

本实施例提供一种音乐合成的系统,如图5所示,具体包括:模型训练模块210、获取模块220、第二拼接模块230、输入模块240以及音乐生成模块250。

其中,模型训练模块210,用于利用如实施例3的模型的生成系统训练生成音符预测模型。

获取模块220,用于获取待合成音乐包含的预设音符数以及每个预设音符所对应的目标基频矩阵和目标音符密度矩阵;其中,每个预设音符具有音符位置标签。

第二拼接模块230,用于将目标基频矩阵和目标音符密度矩阵拼接生成目标拼接矩阵。

输入模块240,用于将所有预设音符对应的目标拼接矩阵按照预设的时序上的音符排列顺序依次输入至音符预测模型,以获取每个预设音符对应的目标音符。

音乐生成模块250,用于按照音符位置标签将所有的目标音符进行拼接,以生成目标音乐片段。

本实施例中,可以指定待合成的音乐片段中的预设音符的个数和类型,每个预设音符具有表征待合成音乐片段中音符位置标签,利用该模块可以每次识别一个音符,若预设音符的个数为10个,则该模型会循环10次;若预设音符的个数为11个,则该模型会循环11次。

模型最终输出的是单个音符的结果,将多次预测的结果拼接,生成最终的音乐片段,由于前后的预测的音符并没有关联性,拼接后的音乐会比较突兀,引入了两层是双向LSTM层,将上一次预测时得到隐藏状态作为当前第一循环神经网络层或者第二循环神经网络层的隐藏状态,建立起前后两次预测音符的连贯性,使得最终拼接得到的音乐更加流畅动听。

本发明实施例中,提供的音乐合成的系统利用训练好的模型生成多个预测音符,在时序上将所有预测音符进行拼接,合成最终的音乐片段,增强了音乐合成的流畅性、改善了音乐片段的效果。

实施例5

图6为本实施例提供的一种电子设备的结构示意图。所述电子设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现实施例1的模型的生成方法或实施例3的音乐合成的方法,图6显示的电子设备60仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

电子设备60可以以通用计算设备的形式表现,例如其可以为服务器设备。电子设备60的组件可以包括但不限于:上述至少一个处理器61、上述至少一个存储器62、连接不同系统组件(包括存储器62和处理器61)的总线 63。

总线63包括数据总线、地址总线和控制总线。

存储器62可以包括易失性存储器,例如随机存取存储器(RAM)621和/ 或高速缓存存储器622,还可以进一步包括只读存储器(ROM)623。

存储器62还可以包括具有一组(至少一个)程序模块624的程序/实用工具625,这样的程序模块624包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。

处理器61通过运行存储在存储器62中的计算机程序,从而执行各种功能应用以及数据处理,例如本发明实施例1的模型的生成方法或实施例3的音乐合成的方法。

电子设备60也可以与一个或多个外部设备64(例如键盘、指向设备等) 通信。这种通信可以通过输入/输出(I/O)接口65进行。并且,模型生成的设备60还可以通过网络适配器66与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器66通过总线63与模型生成的设备60的其它模块通信。应当明白,尽管图中未示出,可以结合模型生成的设备60使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID(磁盘阵列)系统、磁带驱动器以及数据备份存储系统等。

应当注意,尽管在上文详细描述中提及了电子设备的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。

实施例6

本实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现实施例1的模型的生成方法的步骤或实施例3的音乐合成的方法的步骤。

其中,可读存储介质可以采用的更具体可以包括但不限于:便携式盘、硬盘、随机存取存储器、只读存储器、可擦拭可编程只读存储器、光存储器件、磁存储器件或上述的任意合适的组合。

在可能的实施方式中,本发明还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行实现实施例1的模型的生成方法的步骤或实施例3的音乐合成的方法的步骤。

其中,可以以一种或多种程序设计语言的任意组合来编写用于执行本发明的程序代码,所述程序代码可以完全地在用户设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户设备上部分在远程设备上执行或完全在远程设备上执行。

虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号