一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种旋律生成方法及装置与流程

2022-06-05 19:36:49 来源:中国专利 TAG:


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.按照预设编码方式和预设的音符分辩率,对所述每个音符的音名和音长进行处理,得到所述旋律片段训练样本的旋律标注向量。
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.所述第二训练单元,用于执行如下步骤:
68.获取不同歌词分句的分句矩阵训练样本、旋律片段训练样本和情感向量训练样本;
69.针对每个歌词分句,按照预设的音符分辩率,对所述旋律片段训练样本中的每个音符进行处理,获取所述旋律片段训练样本的旋律标注向量;
70.基于所述不同歌词分句的分句矩阵训练样本和相应情感向量训练样本组成的输入训练数据,以及相应旋律标注向量,对初始基于自注意力机制的模型进行迭代训练,得到基于自注意力机制的模型。
71.在一个可选的实现中,所述第二训练单元,还用于基于所述旋律片段训练样本,获取所述旋律片段训练样本中每个音符的音名和音长;
72.以及,按照预设编码方式和预设的音符分辩率,对所述每个音符的音名和音长进行处理,得到所述旋律片段训练样本的旋律标注向量。
73.根据本公开实施例的第三方面,提供了一种电子设备,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中:
74.所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行时,所述至少一个处理器能够执行第一方面中任一所述的方法步骤。
75.根据本公开实施例的第四方面,提供了一种存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行第一方面所述方法步骤。
76.本公开的实施例提供的技术方案至少带来以下有益效果:
77.该旋律生成方法中获取歌词文本中的至少一个分句;对各分句进行情感分析,得到相应分句的情感信息;将各分句与相应分句的情感信息进行拼接后,输入已训练的基于自注意力机制的模型,得到各分句对应的旋律向量;其中,基于自注意力机制的模型用于依照上一输入数据获得的旋律向量,对当前输入数据进行处理,得到当前输入数据对应的旋律向量;基于各分句的旋律向量,生成歌词文本的旋律。该方法在存在歌词文本的条件下,通过对歌词文本进行文字情感分析,得到该歌词文本对应的情感信息使生成的旋律在情感上与歌词保持一致,提高了生成旋律的自然程度,以及生成旋律的质量。
78.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
79.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
80.图1是根据一示例性实施例示出的一种旋律生成方法的流程示意图;
81.图2是根据一示例性实施例示出的一种旋律生成装置的结构示意图;
82.图3是根据一示例性实施例示出的一种电子设备的结构示意图。
具体实施方式
83.为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
84.需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
85.为了方便理解,下面对本发明实施例涉及的音符进行解释:
86.音符为记录音乐的符号。
87.不同的音符标在不同的五线谱的线和间,能反应出音高和时值。
88.不同的音高对应不同的音名,音符包括7个基本音的音名,每个基本音的音名分别由一个英文字母来表示:c、d、e、f、g、a和b,且c、d、e、f、g、a和b分别对应唱名为do(斗)、ruai(瑞)、mi(咪)、fa(发)、sol(嗖)、la(啦)和xi(唏)。
89.音符的种类包括:全音符、二分音符、四分音符、八分音符、十六分音符、三十二分音符和六十四分音符。不同的音符代表不同的音长,即音符种类代表了该音符所占的时长(或称“时值”)。
90.其中,二分音符、四分音符、八分音符、十六分音符、三十二分音符和六十四分音符所表示的时值分别是全音符的1/2、1/4、1/8、1/16、1/32和1/64。
91.本发明实施例提供的旋律生成方法可以应用在服务器上,也可以应用在终端上。
92.其中,服务器可以是应用服务器或云服务器;终端可以是移动电话、智能电话、笔记本电脑、数字广播接收器、个人数字助理(pda)、平板电脑(pad)等用户设备(user equipment,ue)、手持设备、车载设备、可穿戴设备、计算设备或连接到无线调制解调器的其它处理设备、移动台(mobile station,ms)、移动终端(mobile terminal)等。
93.与现有技术相比,本发明实施例提供的旋律生成方法,在存在歌词文本的条件下,通过对歌词文本进行文字情感分析,得到该歌词文本体现的情感信息,或者该歌词文本想要听者体验的情感信息,从而使生成的旋律在情感上与歌词保持一致,提高了生成旋律的自然程度。
94.需要说明的是,文字情感分析的目的是为了找出说话者/作者在某些话题上,或者针对文本的两极态度。这个两极态度包括说话者/作者当时的情感状态,即说话者/作者在做出这个文本言论时的情绪,以及说话者/作者有意向的情感交流,即说话者/作者想要读者/听者所体验的情绪。
95.以下结合说明书附图对本技术的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明,并且在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。
96.图1是根据一示例性实施例示出的一种旋律生成方法的流程示意图。如图1所示,该方法可以包括:
97.在步骤s110中、获取歌词文本中的至少一个分句。
98.获取的歌词文本可以是用户在交互界面中输入的文本,其中,歌词文本的长度不限,可以是一句文本,也可以是一段文本。或者,交互界面可以展示推荐的歌词文本,用户可以在交互界面上对所推荐的歌词文本执行选择操作,以获取用户选择的歌词文本。
99.歌词文本的分句为该歌词文本中的至少一个文本片段。例如,“一闪一闪亮晶晶满天都是小星星”的歌词文本中可以包括“一闪一闪亮晶晶”和“满天都是小星星”两个分句,或者包括“一闪一闪”、“亮晶晶”、“满天都是”、“小星星”四个分句,或者,整个歌词文本为一个分句。分句的具体划分方式可以根据实际情况确定,本发明实施例在此不做限定。
100.在步骤s120中、对各分句进行情感分析,得到相应分句的情感信息。
101.由于情感信息可以包括正向情感类型和负向情感类型,其中,负向情感类型为愤怒、悲伤等消极情绪,正向情感类型为欢快、愉悦等积极情绪,故为了区分情感类型,可以用预设范围内的正分值和负分值来分别表示正向情感类型和负向情感类型,如预设范围可以为-5到5区间,如[-5,5],正符号表示正向情感类型,负符号表示负向情感类型;除正符号和负符号外的分值大小表示相应情感类型的情感程度,如-2表示比较悲伤,-5表示非常悲伤。
[0102]
在本公开实施例中,将各分句输入预设的词嵌入模型,如word embedding模型,得到相应分句中每个词的词向量。
[0103]
为了获取歌词文本表达出准确的情感信息,本公开针对歌词文本的每个分句,将分句矩阵中的词向量输入已训练的情感分析模型,如bret模型,得到分句的情感信息,该情感信息可以为衡量情感类型及情感程度的情感分值;情感分析模型是根据不同歌词分句与相应情感分值进行训练得到的。
[0104]
需要说明的是,词是歌词文本中的最小语义单位,例如“还没好好的感受,雪花绽放的气候”的歌词文本中每个字即为该歌词文本的词。歌词文本的语言不限,对于中文文本,字即为该歌词文本的词;对于英文文本,单词即为该歌词文本的词。
[0105]
在步骤s130中,将各分句与相应分句的情感信息进行拼接,获取当前输入数据。
[0106]
为了提高旋律生成的准确度,可以将歌词文本与相应情感信息进行融合,在本公开实施例中,可以根据各分句中词的数量和相应分句的情感信息,生成相应分句的情感向量;
[0107]
具体实施中,将词的数量,确定为情感向量的行数,并将情感分值确定为情感向量中的参数值。其中,情感向量可以为一维列向量。
[0108]
例如,词的数量为5,情感分值为3,则情感向量可以表示为[3,3,3,3,3]的列向量。
[0109]
之后,基于各分句中每个词的词向量,获取相应分句的分句矩阵。其中,分句矩阵的每行为一个词向量,且按照分句中词的顺序进行行排序。如分句矩阵t*h,t为行数,h为词向量的维数,即词嵌入模型中隐藏层数。
[0110]
进一步的,将情感向量和分句矩阵进行拼接,得到拼接矩阵后,将拼接矩阵确定为当前输入数据。
[0111]
在本公开实施例中,将情感向量拼接在分句矩阵最后一列后侧,得到拼接矩阵,并将拼接矩阵确定为当前输入数据。
[0112]
其中,若分句矩阵为t*h的矩阵,情感向量为t*1的一维向量,则将情感向量拼接在分句矩阵最后一列的后侧,得到的拼接矩阵为t*(h 1)的矩阵。
[0113]
例如,若分句矩阵表示为:情感向量表示为:则拼接矩
阵可表示为:
[0114]
在步骤s140中,将当前输入数据输入已训练的基于自注意力机制的模型,得到各分句对应的旋律向量。
[0115]
将拼接矩阵作为当前输入数据后,输入已训练的基于自注意力机制的transformer模型。基于自注意力机制的模型用于依照上一输入数据获得的旋律向量,对当前输入数据进行处理,得到当前输入数据对应的旋律向量。
[0116]
其中,基于自注意力机制的transformer模型中包括编码器和解码器,编码器用于对当前输入数据进行编码处理,并将处理后的编码数据输入所述解码器;解码器用于依照对上一输入数据解码时获得的旋律向量,对当前输入数据的编码数据进行解码,得到与当前输入数据对应的旋律向量。
[0117]
该方式不仅可以提高旋律生成的效率,由于结合了上一输入数据对应的旋律向量来获取当前输入数据对应的旋律向量,使得生成的当前旋律向量与上一输入数据对应的旋律向量间过度较自然、平滑。
[0118]
其中,编码器可以包括:编码数据输入单元、编码位置单元以及nx个循环编码子单元,其中,每个循环编码子单元由4部分构成,分别为多头注意力机制multi-head attention、残差连接和归一化add&norm、前馈feed forward以及add&norm,每个循环编码子单元的结构相同,但每个循环编码子单元的内部参数是不同的,循环编码子单元的输入数据是上一个循环编码子单元的输出数据。解码器可以包括:解码数据输入单元、解码位置单元以及nx个循环解码子单元,其中,每个循环解码单元设置nx个循环解码子单元,每个循环解码子单元由6部分构成,分别为伪多头注意力机制masked multi-head attention、add&norm、multi-head attention、add&norm、feed forward以及add&norm,此外,还要说明的是multi-head attention输入的数据还包括编码部分的编码数据结果,在每个循环解码单元的结构相同,但每个循环解码子单元的内部参数是不同的,循环译码子单元的输入数据是上一个循环译码子单元的输出数据。
[0119]
针对编码单元,将当前输入数据输入至编码数据输入单元,编码位置单元输入该当前输入数据对应的位置编码,将当前输入数据以及该当前输入数据对应的位置编码进行叠加并输入至循环编码子单元,得到当前输入数据的编码数据。
[0120]
针对解码单元,将上一输入数据对应的旋律向量作为解码数据输入单元的输入数据,以及将当前输入数据对应的位置编码作为解码位置单元的输入数据,并将该位置编码叠加上与上一输入数据对应的旋律向量对应的旋律向量的位置数据,以及当前输入数据的编码数据,输入到循环解码单元中进行解码处理,在通过线性linear以及逻辑回归softmax的处理得到输入数据对应的旋律向量。
[0121]
在步骤s150中,基于各分句的旋律向量,生成歌词文本的旋律。
[0122]
采用预设解码方式,如one-hot独热码的解码方式,对各分句的旋律向量进行解码,得到各分句对应的旋律片段;基于歌词文本的顺序和各分句的旋律片段,生成歌词文本的旋律,由此可以根据歌词文本进行旋律的自动生成。
[0123]
在一个可能的实施例中,可以按照歌词文本的顺序,依次将各分句的旋律片段进行拼接,生成歌词文本的旋律。
[0124]
可见,上述旋律的生成方法为自动生成,不需要用户掌握专业的音乐知识来实现根据歌词文本进行音乐创作,使普通大众可以利用本发明上述实施例根据歌词文本进行旋律的自动生成,进一步促进了数字音乐的发展。
[0125]
基于步骤130的一个可能的实施例中,为了加快旋律生成的速度,生成相应分句的情感向量后,可以按照歌词文本顺序,将各分句的情感向量进行拼接,得到歌词文本对应的拼接情感向量,以及将各分句的分句矩阵进行拼接,得到拼接分句矩阵。
[0126]
其中,歌词文本中相邻分句间可以用分隔符,如“;”“_”等分开,分隔符对应的数值为“0”。
[0127]
例如,若第一分句“风吹过”对应的情感向量为[3,3,3]的列向量;第二分句“浮出你的笑容”对应的情感向量为[4,4,4,4,4,4]的列向量,则拼接后的两个分句“风吹过_浮出你的笑容”对应的拼接情感向量为:[3,3,3,0,4,4,4,4,4,4]的列向量。
[0128]
之后,再将拼接情感向量拼接在拼接分句矩阵最后一列后侧,得到拼接矩阵,将拼接矩阵作为当前输入数据。
[0129]
这样基于步骤140,将上述得到的当前输入数据输入已训练的基于自注意力机制的模型,从而可直接得到歌词文本对应的旋律向量序列,其包括各分句的旋律向量。
[0130]
之后,根据步骤150对旋律向量序列进行解码,得到歌词文本的旋律。
[0131]
可见,上述具体实施方式无需按照歌词文本的顺序,将各分句的旋律向量进行拼接,可直接得到歌词文本对应的旋律向量序列,由此加快了旋律的生成。
[0132]
基于上述任一实施例,在一种可能的实施方式中,为了得到歌词文本中各分句的情感信息,可以训练情感分析模型,其训练方法可以如下:
[0133]
获取歌词分句训练样本和相应歌词分句训练样本的情感标注分值;
[0134]
基于歌词分句训练样本和相应歌词分句训练样本的情感标注分值,对神经网络模型,如bert预训练模型进行迭代训练,得到情感分析模型。
[0135]
基于上述任一实施例,在一种可能的实施方式中,基于自注意力机制的模型的训练方法可以如下:
[0136]
获取不同歌词分句的分句矩阵训练样本、旋律片段训练样本和情感向量训练样本;
[0137]
针对每个歌词分句,按照预设的音符分辩率,对该歌词分句的旋律片段训练样本中的每个音符进行处理,获取该旋律片段训练样本的旋律标注向量;
[0138]
基于不同歌词分句的分句矩阵训练样本和相应情感向量训练样本组成的输入训练数据,以及相应旋律标注向量,对初始基于自注意力机制的模型进行迭代训练,得到基于自注意力机制的模型。
[0139]
基于上述实施例,为了提升了上述模型生成的旋律效果和准确性,可以基于旋律片段训练样本,获取乐谱,从而获取每个音符的音名和音长。
[0140]
例如,获取的乐谱中音符的音名和音长依次为:e4八分音符;e4八分音符;e4八分音符;e4八分音符;a4四分音符;b4八分音符;c5八分音符。
[0141]
其中,e4、a4、b4和c5中的字母表示音高,数字表示相应音高的区域。
[0142]
进一步的,按照预设编码方式和预设的音符分辩率,对该歌词分句的旋律片段训练样本中的每个音符进行处理,得到该旋律片段训练样本的旋律标注向量。
[0143]
预设的音符分辩率可以为1/2、1/4、1/8、1/16、1/32和1/64中的一种。
[0144]
具体实施中,按照预设的音符分辩率,将每个音符用包含音名的至少一个字段表示,得到扩展音符,其字段个数表示音长。该字段个数为该音符与音符分辩率的比值。
[0145]
由于二分音符、四分音符、八分音符、十六分音符所表示的时值分别是全音符的1/2、1/4、1/8和1/16,故以音符分辩率为1/16,旋律片段为:e4八分音符;e4八分音符;a4四分音符;c5八分音符为例:
[0146]
e4八分音符的扩展音符为e4_,即包含音名e4的两个字段;
[0147]
a4四分音符的扩展音符为a4___,即包含音名a4的四个字段;
[0148]
c5八分音符的扩展音符为c5_,即包含音名c5的两个字段。
[0149]
之后,按照预设编码方式,如one-hot独热码的编码方式,对每个音符的扩展音符进行编码,得到该旋律片段训练样本的旋律标注向量。其中,该预设编码方式为步骤140中的预设解码方式的互逆方式。
[0150]
本发明实施例提供的旋律生成方法中获取歌词文本中的至少一个分句;对各分句进行情感分析,得到相应分句的情感信息;将各分句与相应分句的情感信息进行拼接后,输入已训练的基于自注意力机制的模型,得到各分句对应的旋律向量;其中,基于自注意力机制的模型用于依照上一输入数据获得的旋律向量,对当前输入数据进行处理,得到当前输入数据对应的旋律向量;基于各分句的旋律向量,生成歌词文本的旋律。该方法在存在歌词文本的条件下,通过对歌词文本进行文字情感分析,得到该歌词文本对应的情感信息使生成的旋律在情感上与歌词保持一致,提高了生成旋律的自然程度,以及生成旋律的质量。
[0151]
图2是根据一示例性实施例示出的一种旋律生成装置的结构示意图。参照图2,该装置可以包括:获取单元210、分析单元220、输入单元230和生成单元240;
[0152]
获取单元210,用于获取歌词文本中的至少一个分句;
[0153]
分析单元220,用于对所述各分句进行情感分析,得到相应分句的情感信息;
[0154]
输入单元230,用于将所述各分句与相应分句的情感信息进行拼接后,输入已训练的基于自注意力机制的模型,得到所述各分句对应的旋律向量;其中,所述基于自注意力机制的模型用于依照上一输入数据获得的旋律向量,对所述当前输入数据进行处理,得到所述当前输入数据对应的旋律向量;
[0155]
生成单元240,用于基于所述各分句的旋律向量,生成所述歌词文本的旋律。
[0156]
在一个可选的实现中,所述情感信息为衡量所述情感类型及情感程度的情感分值;
[0157]
分析单元220,具体用于将所述各分句输入预设的词嵌入模型,得到相应分句中每个词的词向量;
[0158]
针对每个分句,将所述分句的词向量依次输入已训练的情感分析模型,得到所述分句的情感分值;所述情感分析模型是根据不同歌词分句与相应情感分值进行训练得到的。
[0159]
在一个可选的实现中,所述装置还包括拼接单元250;
[0160]
生成单元240,还用于根据所述各分句中词的数量和相应分句的情感信息,生成所
述相应分句的情感向量;
[0161]
获取单元210,还用于基于所述各分句中每个词的词向量,获取相应分句的分句矩阵;
[0162]
拼接单元250,用于将所述情感向量和所述分句矩阵进行拼接,得到拼接矩阵;
[0163]
输入单元230,具体用于将所述拼接矩阵输入已训练的基于自注意力机制的模型。
[0164]
在一个可选的实现中,所述情感向量为一维列向量;
[0165]
获取单元210,具体用于将所述词的数量确定为所述情感向量的行数;
[0166]
以及,将所述情感分值确定为所述情感向量中的参数值。
[0167]
在一个可选的实现中,拼接单元250,还用于按照歌词文本顺序,将所述各分句的情感向量进行拼接,得到拼接情感向量;
[0168]
以及,按照歌词文本顺序,将所述各分句的分句矩阵进行拼接,得到拼接分句矩阵;
[0169]
将所述拼接情感向量拼接在所述拼接分句矩阵最后一列后侧,得到拼接矩阵。
[0170]
在一个可选的实现中,生成单元240,具体用于采用预设解码方式,对所述各分句的旋律向量进行解码,得到所述各分句对应的旋律片段;
[0171]
以及,基于所述歌词文本的顺序和所述各分句的旋律片段,生成所述歌词文本的旋律。
[0172]
在一个可选的实现中,所述装置还包括第一训练单元260;
[0173]
第一训练单元260,用于执行如下步骤:
[0174]
获取歌词分句训练样本和相应歌词分句训练样本的情感标注分值;
[0175]
基于所述歌词分句训练样本和相应歌词分句训练样本的情感标注分值,对神经网络模型进行迭代训练,得到情感分析模型。
[0176]
在一个可选的实现中,所述装置还包括第二训练单元270;
[0177]
第二训练单元270,用于执行如下步骤:
[0178]
获取不同歌词分句的分句矩阵训练样本、旋律片段训练样本和情感向量训练样本;
[0179]
针对每个歌词分句,按照预设的音符分辩率,对所述旋律片段训练样本中的每个音符进行处理,获取所述旋律片段训练样本的旋律标注向量;
[0180]
基于所述不同歌词分句的分句矩阵训练样本和相应情感向量训练样本组成的输入训练数据,以及相应旋律标注向量,对初始基于自注意力机制的模型进行迭代训练,得到基于自注意力机制的模型。
[0181]
在一个可选的实现中,第二训练单元270,还用于基于所述旋律片段训练样本,获取所述旋律片段训练样本中每个音符的音名和音长;
[0182]
以及,按照预设编码方式和预设的音符分辩率,对所述每个音符的音名和音长进行处理,得到所述旋律片段训练样本的旋律标注向量。
[0183]
本发明上述实施例提供的旋律生成装置的各功能单元的功能,可以通过上述各方法步骤来实现,因此,本发明实施例提供的旋律生成装置中的各个单元的具体工作过程和有益效果,在此不复赘述。
[0184]
图3是根据一示例性实施例示出的一种电子设备的框图。例如,电子设备300可以
是服务器,移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
[0185]
参照图3,电子设备300可以包括以下一个或多个组件:处理组件302,存储器304,电源组件306,多媒体组件308,音频组件310,输入/输出(i/o)的接口312,传感器组件314,以及通信组件316。
[0186]
处理组件302通常控制电子设备300的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件302可以包括一个或多个处理器320来执行指令,以完成图1所示方法的全部或部分步骤。此外,处理组件302可以包括一个或多个模块,便于处理组件302和其他组件之间的交互。例如,处理组件302可以包括多媒体模块,以方便多媒体组件308和处理组件302之间的交互。
[0187]
存储器304被配置为存储各种类型的数据以支持在电子设备300的操作。这些数据的示例包括用于在电子设备300上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器304可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。
[0188]
电源组件306为电子设备300的各种组件提供电力。电源组件306可以包括电源管理系统,一个或多个电源,及其他与为电子设备300生成、管理和分配电力相关联的组件。
[0189]
多媒体组件308包括在电子设备300和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(lcd)(tp)和触摸面板。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件308包括一个前置摄像头和/或后置摄像头。当电子设备300处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
[0190]
音频组件310被配置为输出和/或输入音频信号。例如,音频组件310包括一个麦克风(mic),当电子设备300处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器304或经由通信组件316发送。在一些实施例中,音频组件310还包括一个扬声器,用于输出音频信号。
[0191]
i/o接口312为处理组件302和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
[0192]
传感器组件314包括一个或多个传感器,用于为电子设备300提供各个方面的状态评估。例如,传感器组件314可以检测到电子设备300的打开/关闭状态,组件的相对定位,例如所述组件为电子设备300的显示器和小键盘,传感器组件314还可以检测电子设备300或电子设备300一个组件的位置改变,用户与电子设备300接触的存在或不存在,电子设备300方位或加速/减速和电子设备300的温度变化。传感器组件314可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件314还可以包括光传感器,
如cmos或ccd图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件314还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
[0193]
通信组件316被配置为便于电子设备300和其他设备之间有线或无线方式的通信。电子设备300可以接入基于通信标准的无线网络,如wifi,运营商网络(如2g、3g、4g或5g),或它们的组合。在一个示例性实施例中,通信组件316经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件316还包括近场通信(nfc)模块,以促进短程通信。例如,在nfc模块可基于射频识别(rfid)技术,红外数据协会(irda)技术,超宽带(uwb)技术,蓝牙(bt)技术和其他技术来实现。
[0194]
在本公开一实施例中,电子设备300可以被一个或多个应用专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理设备(dspd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
[0195]
在本公开一实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器304,上述指令可由电子设备300的处理器320执行以完成上述方法的步骤。例如,所述非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。
[0196]
在本公开一实施例中,还提供了一种应用程序,当该应用程序由电子设备的处理器执行时,使得所述电子设备能够执行上述方法的步骤,以获取相同的技术效果。
[0197]
在本公开一实施例中,还提供了一种计算机程序产品,当该计算机程序产品由电子设备的处理器执行时,使得所述电子设备能够执行上述方法的步骤,以获取相同的技术效果。
[0198]
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0199]
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置/电子设备/存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0200]
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本技术旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
[0201]
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献