技术新讯 > 乐器声学设备的制造及制作,分析技术 > 音乐生成方法、音乐生成模型的训练方法及装置与流程  >  正文

音乐生成方法、音乐生成模型的训练方法及装置与流程

  • 国知局
  • 2024-06-21 11:26:01

本技术涉及音频,特别涉及一种音乐生成方法、音乐生成模型的训练方法、装置、计算机设备、存储介质及计算机程序产品。

背景技术:

1、随着音频技术的发展和进步,普遍存在利用机器来生成音乐的业务需求,目前,在生成音乐时,通常是利用transformer模型来生成一段remi(revamped midi-derivedevents,改进型midi衍生事件)格式的乐谱,再将乐谱转换成midi(musical instrumentdigital interface,乐器数据接口)格式的音乐。

2、由于transformer模型是在约数千首流行音乐的数据集上训练得到的,模型能够生成多样化的流行音乐,但无法满足定制化地生成某种指定风格的音乐的业务需求。

技术实现思路

1、本技术实施例提供了一种音乐生成方法、音乐生成模型的训练方法、装置、计算机设备、存储介质及计算机程序产品,能够满足对任意音乐风格来定制化生成音乐的业务需求。该技术方案如下:

2、一方面,提供了一种音乐生成方法,所述方法包括:

3、获取待生成的音乐风格信息和初始乐谱,所述音乐风格信息用于指示待生成音乐的音乐风格;

4、基于所述音乐风格信息,从多个音乐生成模型中,确定与所述音乐风格信息相匹配的目标音乐生成模型,所述目标音乐生成模型用于合成具有所述音乐风格信息所指示音乐风格的乐谱;

5、将所述初始乐谱输入所述目标音乐生成模型,通过所述目标音乐生成模型生成所述初始乐谱之后的预测乐谱;

6、基于所述预测乐谱,生成具有所述音乐风格信息所指示音乐风格的目标音乐。

7、一方面,提供了一种音乐生成模型的训练方法,所述方法包括:

8、获取公共训练集和多个音乐风格各自关联的多个目标训练集;

9、基于所述公共训练集,训练得到初始音乐模型,所述初始音乐模型用于基于输入乐谱来合成所述输入乐谱之后的预测乐谱;

10、基于多个所述目标训练集,分别对所述初始音乐模型进行训练,得到所述多个音乐风格各自关联的多个音乐生成模型,所述音乐生成模型用于基于输入乐谱来合成所述输入乐谱之后且具有所关联的音乐风格的预测乐谱。

11、一方面,提供了一种音乐生成装置,所述装置包括:

12、获取模块,用于获取待生成的音乐风格信息和初始乐谱,所述音乐风格信息用于指示待生成音乐的音乐风格;

13、确定模块,用于基于所述音乐风格信息,从多个音乐生成模型中,确定与所述音乐风格信息相匹配的目标音乐生成模型,所述目标音乐生成模型用于合成具有所述音乐风格信息所指示音乐风格的乐谱;

14、乐谱生成模块,用于将所述初始乐谱输入所述目标音乐生成模型,通过所述目标音乐生成模型生成所述初始乐谱之后的预测乐谱;

15、音乐生成模块,用于基于所述预测乐谱,生成具有所述音乐风格信息所指示音乐风格的目标音乐。

16、在一些实施例中,所述目标音乐生成模型包括多个级联的解码子网络,所述解码子网络用于提取输入乐谱的语义信息;

17、所述乐谱生成模块包括:

18、解码子模块,用于将所述初始乐谱和所述预测乐谱中的已有乐音输入所述多个级联的解码子网络,通过多个所述解码子网络对所述初始乐谱和所述已有乐音进行解码,得到乐谱语义特征;

19、获取子模块,用于基于所述乐谱语义特征,获取所述预测乐谱中的下一个乐音;

20、其中,所述预测乐谱中的第一个乐音基于所述初始乐谱预测得到,所述预测乐谱中除了所述第一个乐音以外的乐音均基于所述初始乐谱和所述乐音之前的已有乐音预测得到。

21、在一些实施例中,所述解码子模块包括:

22、提取单元,用于对任一解码子网络,基于上一解码子网络输出的语义特征,提取所述下一个乐音的相关性特征和注意力特征,所述相关性特征表征所述下一个乐音与邻域乐音之间的关联程度,所述注意力特征表征所述下一个乐音与乐谱序列在音乐风格上的匹配程度,所述乐谱序列包括所述初始乐谱和所述已有乐音;

23、生成单元,用于基于所述相关性特征和所述注意力特征,生成所述解码子网络的语义特征,将所述解码子网络的语义特征输入到下一解码子网络中;

24、确定单元,用于重复执行上述解码操作,将最后一个解码子网络输出的语义特征确定为所述乐谱语义特征。

25、在一些实施例中,所述提取单元包括:

26、第一提取子单元,用于将所述上一解码子网络输出的语义特征输入到所述解码子网络的局部注意力层,通过所述局部注意力层的预设滑动窗口,提取所述下一个乐音与所述预设滑动窗口内所包含的邻域乐音之间的所述相关性特征。

27、在一些实施例中,所述提取单元包括:

28、第二提取子单元,用于将所述上一解码子网络输出的语义特征输入到所述解码子网络的全局注意力层,通过所述全局注意力层,提取所述下一个乐音与所述乐谱序列中所包含的乐音之间的初始注意力特征;

29、压缩子单元,用于对所述初始注意力特征进行压缩,得到所述注意力特征,其中,所述注意力特征的维度小于所述初始注意力特征的维度。

30、在一些实施例中,所述生成单元用于:

31、对所述相关性特征和所述注意力特征进行融合,得到所述下一个乐音的结构性特征;

32、将所述结构性特征确定为所述解码子网络的语义特征;或,基于所述结构性特征,生成所述解码子网络的语义特征。

33、在一些实施例中,所述获取子模块用于:

34、基于所述乐谱语义特征,生成所述下一个乐音属于多个音高的预测概率;

35、将预测概率最大的音高所指示的乐音确定为所述下一个乐音。

36、在一些实施例中,所述获取模块用于:

37、获取初始音乐的音乐文件;

38、对所述音乐文件进行编码,得到所述初始乐谱;

39、其中,所述初始乐谱包括所述初始音乐中包含的多个乐音各自的特征向量,所述乐音的特征向量用于表征所述乐音在所述初始乐谱中的至少两个特征属性值。

40、在一些实施例中,在所述音乐文件为乐器数据接口midi文件的情况下,所述乐音的特征向量用于表征所述乐音在所述midi文件中的至少两个关联事件。

41、在一些实施例中,所述初始音乐为基于所述音乐风格信息配置的预设音乐;或,所述初始音乐为外部输入的前奏音乐;或,所述初始音乐为随机初始化得到的随机音乐。

42、在一些实施例中,所述获取模块还用于:获取音调指示信息,所述音调指示信息用于指示待生成音乐的调式;

43、所述装置还包括:

44、删除模块,用于在所述目标音乐中,删除与所述音调指示信息不匹配的离调音,所述离调音是指偏离所述音调指示信息所指示调式的乐音。

45、在一些实施例中,所述装置还包括:

46、检索模块,用于在所述目标音乐的预测乐谱中,若存在多个乐音位于所述预测乐谱的同一小节的同一位置上,在所述多个乐音中检索目标乐音,所述目标乐音是指与所述多个乐音中任一乐音的音程之差小于音程阈值的乐音;

47、删除模块,用于在所述目标乐音和与所述目标乐音的音程之差小于所述音程阈值的乐音中,删除音高最低的乐音。

48、一方面,提供了一种音乐生成模型的训练装置,所述装置包括:

49、获取模块,用于获取公共训练集和多个音乐风格各自关联的多个目标训练集;

50、第一训练模块,用于基于所述公共训练集,训练得到初始音乐模型,所述初始音乐模型用于基于输入乐谱来合成所述输入乐谱之后的预测乐谱;

51、第二训练模块,用于基于多个所述目标训练集,分别对所述初始音乐模型进行训练,得到所述多个音乐风格各自关联的多个音乐生成模型,所述音乐生成模型用于基于输入乐谱来合成所述输入乐谱之后且具有所关联的音乐风格的预测乐谱。

52、在一些实施例中,所述第二训练模块包括:

53、乐谱预测子模块,用于对任一目标训练集中的样本乐谱,将所述样本乐谱输入所述初始音乐模型,输出所述样本乐谱之后的预测乐谱;

54、参数调整子模块,用于基于所述样本乐谱和所述预测乐谱之间的差异,调整所述初始音乐模型的参数,得到与所述目标训练集的音乐风格相关联的所述音乐生成模型。

55、在一些实施例中,在所述样本乐谱为具有所述目标训练集的音乐风格的前奏乐谱的情况下,所述预测乐谱的调式与所述前奏乐谱的调式相同。

56、在一些实施例中,所述乐谱预测子模块包括:

57、获取单元,用于获取音调指示信息,所述音调指示信息用于指示待生成音乐的调式;

58、提取单元,用于将所述样本乐谱和所述预测乐谱中的已有乐音输入所述初始音乐模型,通过所述初始音乐模型提取到乐谱语义特征;

59、生成单元,用于基于所述乐谱语义特征,生成所述已有乐音的下一个乐音属于多个音高的预测概率;

60、确定单元,用于从与所述音调指示信息相匹配的多个目标音高中,将预测概率最大的目标音高所指示的乐音确定为所述下一个乐音。

61、在一些实施例中,所述乐谱预测子模块还包括:

62、配置单元,用于将与所述音调指示信息不匹配的离调音的预测概率配置为目标概率,所述目标概率小于或等于所述多个目标音高各自的多个预测概率中的最小预测概率,所述离调音是指偏离所述音调指示信息所指示调式的乐音。

63、一方面,提供了一种计算机设备,该计算机设备包括一个或多个处理器和一个或多个存储器,该一个或多个存储器中存储有至少一条计算机程序,该至少一条计算机程序由该一个或多个处理器加载并执行以实现如上述任一种可能实现方式的音乐生成方法或音乐生成模型的训练方法。

64、一方面,提供了一种存储介质,该存储介质中存储有至少一条计算机程序,该至少一条计算机程序由处理器加载并执行以实现如上述任一种可能实现方式的音乐生成方法或音乐生成模型的训练方法。

65、一方面,提供一种计算机程序产品或计算机程序,所述计算机程序产品或所述计算机程序包括一条或多条程序代码,所述一条或多条程序代码存储在计算机可读存储介质中。计算机设备的一个或多个处理器能够从计算机可读存储介质中读取所述一条或多条程序代码,所述一个或多个处理器执行所述一条或多条程序代码,使得计算机设备能够执行上述任一种可能实施方式的音乐生成方法或音乐生成模型的训练方法。

66、本技术实施例提供的技术方案带来的有益效果至少包括:

67、通过对不同音乐风格配置定制化的音乐生成模型,根据给定的音乐风格信息,能够找到支持生成对应音乐风格的目标音乐生成模型,再通过该目标音乐生成模型来生成给定的初始乐谱之后的预测乐谱,使得预测乐谱既与初始乐谱具有一定关联性,也能够与该音乐风格信息所指示的音乐风格相适配,进而基于预测乐谱来生成具有该音乐风格的目标音乐,能够满足对任意音乐风格来定制化生成音乐的业务需求。

本文地址:https://www.jishuxx.com/zhuanli/20240618/21496.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。