音乐和弦识别方法及装置、电子设备、存储介质与流程

文档序号:24643625发布日期:2021-04-13 14:17阅读:149来源:国知局
音乐和弦识别方法及装置、电子设备、存储介质与流程

1.本申请涉及人工智能技术领域,具体涉及一种音乐和弦识别方法及装置、电子设备、计算机可读存储介质。


背景技术:

2.随着计算机信息技术的不断发展,计算机技术在艺术上的应用越来越广泛。例如,西方古典音乐作品数量庞大,通过建立一个古典音乐自动分析系统,能够使得古典音乐的学习更加方便,且能够使得古典音乐的传播具有更大潜力。
3.在对古典音乐进行音乐分析时,通常需要分析古典音乐的和弦性能,但是目前对于古典音乐的和弦性能的分析是基于对和弦符号的分析实现的,可以得到和弦的弦根音等和弦性质,但是这种分析方式无法得到关于古典音乐在和弦功能上的信息。


技术实现要素:

4.为解决上述技术问题,本申请的实施例提出一种音乐和弦识别方法及装置、电子设备、计算机可读存储介质,本申请的实施例可以识别得到古典音乐在和弦功能上的信息。
5.本申请的实施例所提出的技术方案包括:
6.一种音乐和弦识别方法,包括:针对待识别音乐和弦的音乐数据,依次提取所述音乐数据中含有的各个音符对应的音符信息,并基于所述各个音符对应的音符信息构建所述各个音符的二维矩阵表示;根据所述各个音符的二维矩阵表示提取所述各个音符对应的音符特征;基于所述各个音符对应的音符特征,分别从不同的和弦功能识别维度识别所述各个音符对应的和弦特征;将识别得到的同一音符在所述不同的和弦功能识别维度上的和弦特征进行组合,得到所述各个音符对应的和弦组合特征,并将所述各个音符对应的和弦组合特征所构成的特征序列作为所述音乐数据对应的音乐和弦识别结果。
7.在一个示例性实施例中,所述音乐数据的数据格式为乐器数据接口格式;依次提取所述音乐数据中含有的各个音符对应的音符信息,并基于所述各个音符对应的音符信息构建所述各个音符的二维矩阵表示,包括:依次提取所述音乐数据中含有的各个音符的音符音高和音符持续时长,将所述音符音高和音符持续时长作为所述各个音符对应的音符信息;将所述音符音高作为二维矩阵中的纵向元素,以及将所述音符持续时长作为所述二维矩阵中的横向元素,构建所述各个音符的二维矩阵表示。
8.在一个示例性实施例中,根据所述各个音符的二维矩阵表示提取所述各个音符对应的音符特征,包括:获取由所述各个音符的二维矩阵表示所构成的二维矩阵表示序列;将所述二维矩阵表示序列输入至特征提取模型中,获取所述特征提取模型针对所述二维矩阵表示序列输出的音符特征序列,所述音符特征序列中含有所述各个音符对应的音符特征。
9.在一个示例性实施例中,基于所述各个音符对应的音符特征,分别从不同的和弦功能识别维度识别所述各个音符对应的和弦特征,包括:获取由所述各个音符对应的音符特征所构成的音符特征序列;将所述音符特征序列分别输入至预置的多个和弦功能识别模
型中,以获取各个和弦功能识别模型从不同的和弦功能识别维度对所述音符特征序列中的各个音符特征进行识别处理所得到的和弦特征。
10.在一个示例性实施例中,所述和弦功能识别维度至少包括和弦调式维度、和弦调性维度以及和弦转位维度,所述和弦调式维度、所述和弦调性维度以及所述和弦转位维度共同作用于所述音乐数据的和弦功能表示。
11.在一个示例性实施例中,所述方法还包括:获取用于训练特征提取模型以及多个和弦功能识别模型的数据集,所述数据集中含有多个待训练的音乐数据;将各个待训练的音乐数据划分为第一音乐数据段、第二音乐数据段和第三音乐数据段,以基于所述各个待训练的音乐数据对应的第一音乐数据段构成训练数据集,基于所述各个待训练的音乐数据对应的第二音乐数据段构成测试数据集,以及所述各个待训练的音乐数据对应的第三音乐数据段构成验证数据集;根据所述训练数据集、所述测试数据集和所述验证数据集对所述特征提取模型以及多个和弦功能识别模型进行训练,以基于训练好的特征提取模型提取所述待识别音乐和弦的音乐数据中的各个音符对应的音符特征,以及基于训练好的多个和弦功能识别模型分别从不同的和弦功能识别维度识别所述各个音符对应的和弦特征。
12.在一个示例性实施例中,所述多个和弦功能识别模型的输入信号均为所述特征提取模型的输出信号;根据所述训练数据集、所述测试数据集和所述验证数据集对所述特征提取模型以及多个和弦功能识别模型进行训练,包括:根据所述训练数据集、所述测试数据集和所述验证数据集对所述特征提取模型进行训练;在得到训练好的特征提取模型后,根据所述训练数据集、所述测试数据集和所述验证数据集,以及所述训练好的特征提取模型的输出信号,对所述多个和弦功能识别模型进行训练;分别针对各个和弦功能识别模型进行训练所对应的训练损失值,当所述各个和弦功能识别模型对应的训练损失值之和小于损失阈值时,结束针对所述多个和弦功能识别模型的训练。
13.一种音乐和弦识别装置,包括:音符信息处理模块,配置为针对待识别音乐和弦的音乐数据,依次提取所述音乐数据中含有的各个音符对应的音符信息,并基于所述各个音符对应的音符信息构建所述各个音符的二维矩阵表示;音符特征提取模块,配置为根据所述各个音符的二维矩阵表示提取所述各个音符对应的音符特征;和弦特征识别模块,配置为基于所述各个音符对应的音符特征,分别从不同的和弦功能识别维度识别所述各个音符对应的和弦特征;识别结果获取模块,配置为将识别得到的同一音符在所述不同的和弦功能识别维度上的和弦特征进行组合,得到所述各个音符对应的和弦组合特征,并将所述各个音符对应的和弦组合特征所构成的特征序列作为所述音乐数据对应的音乐和弦识别结果。
14.一种电子设备,包括处理器和存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,实现如前任一项所述的音乐和弦识别方法。
15.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如前任一项所述的音乐和弦识别方法。
16.本申请的实施例提供的技术方案可以包括以下有益效果:
17.在本申请实施例提出的技术方案中,基于人工智能的方式自动从待识别音乐和弦的音乐数据中提取各个音符在不同的和弦功能识别维度上的和弦特征,然后将同一音符在不同的和弦功能识别维度上的和弦特征进行组合,使得最终所得到音乐和弦识别结果中含
有各个音符在不同的和弦功能识别维度上的和弦信息,也即本申请的实施例能够基于数字音符识别音乐数据在和弦功能上的信息,解决了现有技术中无法得到关于古典音乐在和弦功能上的信息的问题。
18.应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本申请。
附图说明
19.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并于说明书一起用于解释本申请的原理。
20.图1是根据一示例性实施例示出的一种音乐和弦识别方法的流程图;
21.图2是根据一示例性实施例示出的一种音乐和弦识别模型的结构示意图;
22.图3是根据另一示例性实施例示出的一种音乐和弦识别方法的流程图;
23.图4是根据一示例性实施例示出的一种音乐和弦识别装置的框图;
24.图5是根据一示例性实施例所示出的一种电子设备的硬件结构示意图。
25.通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述,这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
26.这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
27.附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
28.附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/ 步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
29.如前所述的,目前对于古典音乐的和弦性能的分析是基于对和弦符号的分析实现的,可以得到和弦的弦根音等和弦性质,但是这种分析方式无法得到关于古典音乐在和弦功能上的信息。
30.为解决此问题,本申请提出一种基于人工智能的音乐和弦识别方案,具体提出一种音乐和弦识别方法、装置、电子设备和计算机可读存储介质。基于本申请提出的音乐和弦识别方案,可以从待识别音乐和弦的音乐数据中识别得到各个音符在和弦调式、和弦调性、和弦转位等和弦功能信息。
31.下面将以具体的实施例对本申请所提出的音乐和弦识别方法、装置、电子设备和计算机可读存储介质进行详细描述。
32.请参阅图1,图1是根据一示例性实施例示出的一种音乐和弦识别方法的流程图。
该音乐和弦识别方法至少包括步骤s110至步骤s140,详细介绍如下:
33.步骤s110,针对待识别音乐和弦的音乐数据,依次提取音乐数据中含有的各个音符对应的音符信息,并基于各个音符对应的音符信息构建各个音符的二维矩阵表示。
34.首先需要说明的是,本申请实施例中涉及的和弦是一种乐理概念,可以理解为是具有一定音程关系的音乐旋律,本处不对其定义进行详细阐述。
35.待识别音乐和弦的音乐数据是指利用数字音乐标准格式编码得到的数字音乐,此音乐数据通过音符及数字控制信息来记录音乐旋律。例如,此音乐数据的数据格式可以是乐器数据接口(musical instrument digital interface,midi) 格式,其中midi是广泛使用的一种音乐标准格式,这种音乐数据格式可以被计算机理解,具体由音符、控制参与等指令构成,几乎所有的现在音乐都是基于midi格式制作得到的。
36.由此,本实施例基于音乐数据中含有的音符以及控制参数等指令,能够针对待识别音乐和弦的音乐数据依次提取各个音符对应的音符信息。示例性的,各个音符对应的音符信息可以包括各个音符的音符音高和音符持续时长,或者可以基于实际的场景提取所需要的音符信息,本处不对此进行限制。
37.基于本实施例针对各个音符所提取的音符信息,则能够构建各个音符的二维特征表示。如前所述的,若针对各个音符提取得到各个音符的音符音高和音符持续时长,则可以将音符音高作为二维矩阵中的纵向元素,以及将音符持续时长作为二维矩阵中的横向元素,或者将音符音高作为二维矩阵中的横向元素,以及将音符持续时长作为二维矩阵中的纵向元素,以构建各个音符的二维矩阵表示。
38.便于理解的,针对将音符音高作为二维矩阵中的纵向元素,以及将音符持续时长作为二维矩阵中的横向元素所构建得到的二维矩阵表示,其可以理解为是以音符音高为纵向坐标,且以时间为横向坐标构建的坐标系,因此各个音符的二维矩阵表示能够携带音符对应的音符信息,进而基于对各个音符的二维矩阵表示的识别处理得到音乐数据在和弦功能上的相关信息。
39.另外还需要说明的是,本实施例涉及的待识别音乐和弦的音乐数据可以是古典音乐、流行音乐等任意形式的音乐对应的数字化表达,本实施不对此音乐数据所属的音乐类型进行限制。
40.步骤s120,根据各个音符的二维矩阵表示提取各个音符对应的音符特征。
41.在本实施例中,为获得音乐数据在和弦功能上的相关信息,需进一步针对二维矩阵表示进行特征信息的提取,例如提取各个音符在弦调式(通常表示为 key)、和弦调性(通常表示为quality)以及和弦转位(通常表示为inversion) 等和弦功能上的特征信息,由此得到各个音符对应的音符特征。
42.示例性的,为便捷地得到各个音符对应的音符特征,可以获取由各个音符的二维矩阵表示所构成的二维矩阵表示序列,然后将此二维矩阵表示序列输入至特征提取模型中,并获取特征提取模型针对二维矩阵表示序列输出的音符特征序列,所获取到的音符特征序列中即含有各个音符对应的音符特征。示例性的,特征提取模型可以是机器学习模型,例如可以采用lstm(long short

termmemory,长短期记忆网络)模型、bi

lstm(双向长短期记忆网络)模型等,本处不进行限制。但通常而言,bi

lstm模型相比于lstm模型具有更好的特征信息提取效果,因此在实际的应用场景中,可以选取bi

lstm模型进行各个音符对应
的音符特征的提取。
43.在其它的一些实施例中,也可以基于一些音符特征提取算法对各个音符的二维矩阵表示进行在弦调式、和弦调性以及和弦转位等和弦功能上的特征信息的提取,以得到各个音符对应的音符特征,本处也不对此进行限制。
44.步骤s130,基于各个音符对应的音符特征,分别从不同的和弦功能识别维度识别各个音符对应的和弦特征。
45.如前所述的,本实施例通过在步骤s120中进一步针对二维矩阵表示进行各个音符在弦调式、和弦调性以及和弦转位等和弦功能上的特征信息的提取,得到各个音符对应的音符特征,由此则可以从弦调式维度、和弦调性维度以及和弦转位维度等不同的和弦功能识别维度识别各个音符对应的和弦特征。
46.需要说明的是,上述所示例的弦调式维度、和弦调性维度以及和弦转位维度共同作用于音乐数据的和弦功能表示,在对音乐数据(例如古典音乐)进行分析的场景中,这些和弦功能识别维度是相互影响的,因此需要分别从不同的和弦功能识别维度识别各个音符对应的和弦特征。
47.当然,基于不同的音乐数据分析需求,也可以从其它的和弦功能识别维度识别各个音符对应的和弦特征,例如和弦主度(通常表示为pre.deg)维度以及和弦次度(通常表示为sec.deg)维度等,本实施例不对此进行限制。
48.在一些实施例中,可以获取由各个音符对应的音符特征所构成的音符特征序列,然后将此音符特征序列分别输入至预置的多个和弦功能识别模型中,以获取各个和弦功能识别模型从不同的和弦功能识别维度对此音符特征序列中的各个音符进行识别处理所得到的音符特征。需要说明的是,不同的和弦功能识别模型对应于不同的和弦功能识别维度,因此本实施例基于各个音符对应的音符特征,分别从不同的和弦功能识别维度识别各个音符对应的和弦特征的过程可以作为提取和弦特征的多个子任务分别进行或者同时进行,本处也不对此进行限制。
49.示例性的,本实施例所预置的多个和弦功能识别模型均为机器学习模型,例如可以采用crf(conditional random field,条件随机场)模型,不同的crf 模型用于从不同的和弦功能识别维度来约束模型自身对于音符特征序列中的各个音符特征进行的识别处理。
50.在一些实施例中,若根据音乐数据中的各个音符的二维矩阵表示提取各个音符对应的音符特征是基于前述的特征提取模型实现的,输入至和弦功能识别模型中的音符特征序列则可以是前述的特征提取模型的输出信号。也即是说,在这些实施例中,采用lstm模型与crf模型相结合的模型形式来自动提取音乐数据所含有的各个音符在不同的和弦功能识别维度上的和弦特征,二者模型在和弦特征的提取过程中相互依赖且约束,能够使得所得到的和弦特征更为准确。
51.此外,本实施例基于各个音符对应的音符特征,分别从不同的和弦功能识别维度识别各个音符对应的和弦特征的过程,也可以是根据不同和弦功能识别维度上的和弦特征识别算法实现的,本实施例也不对此进行限制。
52.步骤s140,将识别得到的同一音符在不同的和弦功能识别维度上的和弦特征进行组合,得到各个音符对应的和弦组合特征,并将各个音符对应的和弦组合特征所构成的特征序列作为音乐数据对应的音乐和弦识别结果。
53.如前所述的,步骤s130中得到待识别音乐和弦的音乐数据中的各个音符在不同的和弦功能识别维度上的和弦特征,且不同的和弦功能识别维度之间是相互影响的,为便于对音乐数据进行准确且全面的分析,本实施例将识别得到的同一音符在不同的和弦功能识别维度上的和弦特征进行组合,以基于所得到的和弦组合特征来对各个音符在和弦功能上的特征信息进行全方面的表示。
54.示例性的,对同一音符在不同的和弦功能识别维度上的和弦特征进行组合,可以是不同的和弦功能识别维度上的和弦特征按照指定的拼接顺序进行拼接,以得到和弦组合特征。
55.或者在一些实施例中,对同一音符在不同的和弦功能识别维度上的和弦特征进行组合的过程,具体可以是针对同一音符在不同的和弦功能识别维度上的和弦特征与相应的音符进行关联存储的过程。具体来说,可以分别为音乐数据中含有各个音符分配唯一的音符标识,例如按照各个音符在音符数据中的排列顺序进行相应音符标识的分配,然后构建各个音符与该音符在不同的和弦功能识别维度上的和弦特征之间的关联关系,并基于所构建的关联关系将各个音符在不同的和弦功能识别维度上的和弦特征存储至数据库中。当需要进行音乐数据对应的音乐和弦识别结果的展示时,例如当用户需要查看音乐数据对应的音乐和弦识别结果时,即可根据各个音符所具有的关联关系从数据库中调取各个音符在不同的和弦功能识别维度上的和弦特征进行展示,因此基于本实施例的方法可以十分便于进行音乐和弦识别结果的展示。
56.由此,在本实施例所获得的音乐和弦识别结果中,含有待识别音乐和弦的音乐数据中的各个音符在不同的和弦功能识别维度上的和弦信息,也即本实施例能够基于数字音符识别音乐数据在和弦功能上的相关特征信息,解决了现有技术中无法得到关于古典音乐在和弦功能上的信息的问题。
57.图2是根据一示例性实施例示出的一种音乐和弦识别模型的结构示意图。该音乐和弦识别模型用于针对待识别音乐和弦的音乐数据中含有的各个音符,提取各个音符在不同的和弦功能识别维度上的和弦特征,以自动地提取音乐数据在和弦功能上的特征信息。
58.如图2所示,该示例性的音乐和弦识别模型由特征提取模型10和多个和弦功能识别模型构成,其中多个和弦功能识别模型可以包括图2所示的和弦功能识别模型21

23,其中和弦功能识别模型21

23分别从不同的和弦功能识别维度提取音乐数据的相关特征信息。
59.示例性的,特征提取模型10包括bi

lstm网络和全连接网络。bi

lstm网络用于对输入其中的二维矩阵表示序列进行音符特征提取,其中,二维矩阵表示序列是由待识别音乐和弦的音乐数据中含有的各个音符的二维矩阵表示所构成的序列,各个音符的二维矩阵表示是基于各个音符对应的音符信息构建得到的。如图2所示,bi

lstm网络针对输入其中的二维矩阵表示序列“s1,s2,s3
……
sn”中含有各个音符对应的二维矩阵表示分别提取相应的音符特征,所得到的各个音符对应的音符特征经由全连接网络进行全连接处理,得到由各个音符对应的音符特征所构成的音符特征序列,并将所得到的音符特征序列输出至各个和弦功能识别模型中。其中,各个和弦功能识别模型可以是基于crf模型进行训练所得到的机器学习模型。
60.和弦功能识别模型21基于特征提取模型10输出的音符特征序列,从和弦调式维度
上对音符特征序列中含有的各个音符的音符特征进行识别处理,输出由各个音符在和弦调式维度上的和弦特征构成的第一和弦特征序列。
61.和弦功能识别模型22基于特征提取模型10输出的音符特征序列,从和弦调性维度上对音符特征序列中含有的各个音符的音符特征进行识别处理,输出由各个音符在和弦调性维度上的和弦特征构成的第二和弦特征序列。
62.和弦功能识别模型23则基于特征提取模型10输出的音符特征序列,从和弦转位维度上对音符特征序列中含有的各个音符的音符特征进行识别处理,输出由各个音符在和弦转位维度上的和弦特征构成的第三和弦特征序列。
63.可以看出,在各个和弦功能模型所输出的第一和弦特征序列、第二和弦特征序列和第三和弦特征序列中,均含有待识别音乐和弦的音乐数据中的各个音符在不同的和弦功能识别维度上的和弦特征。在一示例性的应用场景中,可以将各个和弦功能模型所识别得到的同一音符在不同和弦功能识别维度上的和弦特征进行组合,得到各个音符对应的和弦组合特征,并将各个音符对应的和弦组合特征所构成的特征序列作为音乐数据对应的音乐和弦识别结果,基于所得到的和弦识别结果,则能够便于对音乐数据进行准确且全面的分析。
64.需要说明的是,图2所示的音乐和弦识别模型针对待识别音乐和弦的音乐数据中含有的各个音符,提取各个音符在不同的和弦功能识别维度上的和弦特征的详细过程请参见图1所示实施例的具体描述,本处不在此进行赘述。
65.在一些示例性的实施例中,为保证图2所示的音乐和弦识别模型具有较好的识别效果,可以采用图3所示的训练过程对图2所示的音乐和弦识别模型进行训练。
66.如图3所示,在一示例性的实施例中,对音乐和弦识别模型进行训练包括步骤s210至步骤s230,详细介绍如下:
67.步骤s210,获取用于训练特征提取模型以及多个和弦功能识别模型的数据集,该数据集中含有多个待训练的音乐数据。
68.需要说明的是,为获取较好的音乐和弦识别模型训练效果,在用于训练特征提取模型以及多个和弦功能识别模型的数据集中,各个待训练的音乐数据通常是一段完整音乐对应的数字化音乐表示,例如就可以是一首完整的歌曲所对应的音乐数据。
69.步骤s220,将各个待训练的音乐数据划分为第一音乐数据段、第二音乐数据段和第三音乐数据段,以基于各个待训练的音乐数据对应的第一音乐数据段构成训练数据集,基于各个待训练的音乐数据对应的第二音乐数据段构成测试数据集,以及各个待训练的音乐数据对应的第三音乐数据段构成验证数据集。
70.其中,针对每一个待训练的音乐数据进行不同音乐数据段的划分方式可以包括多种,例如可以根据时长将待训练的音乐数据平均划分为时长相等的不同音乐数据段;或者可以在待训练的音乐数据中定位关键数据位置,基于所定位的关键数据位置进行音乐数据段的划分可以相应得到前奏、主歌、副歌等相应的音乐数据段;或者,所划分得到的不同音乐数据段中也可以含有的重复旋律对应的数据信息,本实施例不对此进行限制。
71.需要说明的是,针对各个待训练的音乐数据进行不同音乐数据段的划分方式可以相同,以使得本实施例所得到的训练数据集中含有的各个第一音乐数据段之间的具有特征一致性,以便于对音乐和弦识别模型进行有针对性的训练。此外,采用测试数据集和验证数
据集对音乐和弦识别模型进行训练同理,以使得音乐和弦识别模型能够具有更好的训练效果。
72.步骤s230,根据训练数据集、测试数据集和验证数据集对特征提取模型以及多个和弦功能识别模型进行训练。
73.在本实施例中,可以先使用训练数据集对特征提取模型以及多个和弦功能识别模型进行首轮训练,在得到训练好的特征提取模型以及多个和弦功能识别模型进行训练后,使用测试数据集对特征提取模型以及多个和弦功能识别模型进行第二轮训练,第二轮训练的目的在于对第一轮训练到的特征提取模型以及多个和弦功能识别模型的模型效果进行测试,并基于测试结果进一步优化特征提取模型以及多个和弦功能识别模型的模型效果。在第二轮训练后,则使用验证数据集对模型效果进行验证,如果验证得到的模型效果不佳,则需进一步优化特征提取模型以及多个和弦功能识别模型的模型效果。
74.由于训练数据集、测试数据集和验证数据集是针对同一数据集进行音乐数据段的划分及汇总所得到的,因此本实施例基于训练数据集、测试数据集和验证数据集对音乐和弦识别模型进行训练,相当于是基于同一训练数据对音乐和弦识别模型进行多次训练,不仅能够提升音乐和弦识别模型的训练效果,还能够在较大程度上增加音乐和弦识别模型的训练数据量,以进一步提升音乐和弦识别模型的训练效果。
75.此外,在图2所示的音乐和弦识别模型中,和弦功能识别模型21

23共享特征提取模型10的输出信号,也即和弦功能识别模型21

23之间共享特征提取模型10的模型参数。因此在一些实施例中,可以根据训练数据集、测试数据集和验证数据集对特征提取模型进行训练;在得到训练好的特征提取模型后,再根据训练数据集、测试数据集和验证数据集,以及训练好的特征提取模型的输出信号,对各个和弦功能识别模型进行训练;然后分别针对各个和弦功能识别模型进行训练所对应的训练损失值,当各个和弦功能识别模型对应的训练损失值之和小于损失阈值时,结束针对多个和弦功能识别模型的训练。此实施例基于训练好的特征提取模型对各个和弦功能识别模型进行训练,可以提升各个和弦功能识别模型的训练速率。
76.在其它的一些实施例中,也可以根据训练数据集、测试数据集和验证数据集分别对特征提取模型和任意一个和弦功能识别模型的组合进行训练,在每一次训练过程中,基于训练损失值都将相应更新特征提取模型以及和弦功能识别模型中的模型参数,因此采用本实施例提出的训练方式将针对特征提取模型进行成倍次数的训练,使得音乐和弦识别模型具有而更佳的训练效果。
77.图4是根据一示例性实施例示出的一种音乐和弦识别装置的框图,如图4 所示,该音乐和弦识别装置包括:
78.音符信息处理模块410,配置为针对待识别音乐和弦的音乐数据,依次提取音乐数据中含有的各个音符对应的音符信息,并基于各个音符对应的音符信息构建各个音符的二维矩阵表示;音符特征提取模块420,配置为根据各个音符的二维矩阵表示提取各个音符对应的音符特征;和弦特征识别模块430,配置为基于各个音符对应的音符特征,分别从不同的和弦功能识别维度识别各个音符对应的和弦特征;识别结果获取模块440,配置为将识别得到的同一音符在不同的和弦功能识别维度上的和弦特征进行组合,得到各个音符对应的和弦组合特征,并将各个音符对应的和弦组合特征所构成的特征序列作为音乐数据对应的
音乐和弦识别结果。
79.本实施例所示出的音乐和弦识别装置能够基于数字音符识别音乐数据在和弦功能上的信息,能够解决现有技术中无法得到关于古典音乐在和弦功能上的信息的问题。
80.在另一示例性的实施例中,音乐数据的数据格式为乐器数据接口格式,音符信息处理模块410包括:
81.音符信息获取单元,配置为依次提取音乐数据中含有的各个音符的音符音高和音符持续时长,将音符音高和音符持续时长作为各个音符对应的音符信息;二维矩阵表示构建单元,配置为将音符音高作为二维矩阵中的纵向元素,以及将音符持续时长作为二维矩阵中的横向元素,构建各个音符的二维矩阵表示。
82.在另一示例性的实施例中,音符特征提取模块420包括:
83.第一序列获取单元,配置为获取由各个音符的二维矩阵表示所构成的二维矩阵表示序列;第一模型处理单元,配置为将二维矩阵表示序列输入至特征提取模型中,获取特征提取模型针对二维矩阵表示序列输出的音符特征序列,音符特征序列中含有各个音符对应的音符特征。
84.在另一示例性的实施例中,和弦特征识别模块430包括:
85.第二序列获取单元,配置为获取由各个音符对应的音符特征所构成的音符特征序列;第二模型处理单元,配置为将音符特征序列分别输入至预置的多个和弦功能识别模型中,以获取各个和弦功能识别模型从不同的和弦功能识别维度对音符特征序列中的各个音符特征进行识别处理所得到的和弦特征。
86.在另一示例性的实施例中,和弦功能识别维度至少包括和弦调式维度、和弦调性维度以及和弦转位维度,和弦调式维度、和弦调性维度以及和弦转位维度共同作用于音乐数据的和弦功能表示。
87.在另一示例性的实施例中,该装置还包括:
88.数据集获取模块,配置为获取用于训练特征提取模型以及多个和弦功能识别模型的数据集,数据集中含有多个待训练的音乐数据;数据集处理模块,配置为将各个待训练的音乐数据划分为第一音乐数据段、第二音乐数据段和第三音乐数据段,并基于各个待训练的音乐数据对应的第一音乐数据段构成训练数据集,基于各个待训练的音乐数据对应的第二音乐数据段构成测试数据集,以及各个待训练的音乐数据对应的第三音乐数据段构成验证数据集;模型训练模块,配置为根据训练数据集、测试数据集和验证数据集对特征提取模型以及多个和弦功能识别模型进行训练,以基于训练好的特征提取模型提取待识别音乐和弦的音乐数据中的各个音符对应的音符特征,以及基于训练好的多个和弦功能识别模型分别从不同的和弦功能识别维度识别各个音符对应的和弦特征。
89.在另一示例性实施例中,多个和弦功能识别模型的输入信号均为特征提取模型的输出信号,模型训练模块包括:
90.特征提取模型训练单元,配置为根据训练数据集、测试数据集和验证数据集对特征提取模型进行训练;和弦功能识别模型训练单元,配置为在得到训练好的特征提取模型后,根据训练数据集、测试数据集和验证数据集,以及训练好的特征提取模型的输出信号,对多个和弦功能识别模型进行训练;训练监控单元,配置为分别针对各个和弦功能识别模型进行训练所对应的训练损失值,当各个和弦功能识别模型对应的训练损失值之和小于损
失阈值时,结束针对多个和弦功能识别模型的训练。
91.需要说明的是,上述实施例所提供的装置与上述实施例所提供的方法属于同一构思,其中各个模块执行操作的具体方式已经在方法实施例中进行了详细描述,此处不再赘述。
92.在一示例性的实施例中,本申请还提供一种电子设备,该设备包括处理器和存储器,该存储器上存储有计算机可读指令,该计算机可读指令被处理器执行时,实现如前所述的音乐和弦识别方法。
93.图5是根据一示例性实施例所示出的一种电子设备的硬件结构示意图。
94.需要说明的是,该电子设备只是一个适配于本申请的示例,不能认为是提供了对本申请的使用范围的任何限制。该电子设备也不能解释为需要依赖于或者必须具有图5中示出的示例性的电子设备中的一个或者多个组件。
95.该电子设备的硬件结构可因配置或者性能的不同而产生较大的差异,如图5 所示,电子设备包括:电源510、接口530、至少一存储器550、以及至少一中央处理器(cpu,central processing units)570。
96.其中,电源510用于为电子设备上的各硬件设备提供工作电压。
97.接口530包括至少一有线或无线网络接口531、至少一串并转换接口533、至少一输入输出接口535以及至少一usb接口537等,用于与外部设备通信。
98.存储器550作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源包括操作系统551、应用程序553或者数据555等,存储方式可以是短暂存储或者永久存储。
99.其中,操作系统551用于管理与控制电子设备上的各硬件设备以及应用程序553,以实现中央处理器570对海量数据555的计算与处理,其可以是windowsservertm、mac os xtm、unixtm、linuxtm等。应用程序553是基于操作系统 551之上完成至少一项特定工作的计算机程序,其可以包括至少一模块(图5中未示出),每个模块都可以分别包含有对电子设备的一系列计算机可读指令。数据555可以是存储于磁盘中的http协议数据等。
100.中央处理器570可以包括一个或多个以上的处理器,并设置为通过总线与存储器550通信,用于运算与处理存储器550中的海量数据555。
101.如上面所详细描述的,适用本申请的电子设备将通过中央处理器570读取存储器550中存储的一系列计算机可读指令的形式来完成前述实施例所述的音乐和弦识别方法。
102.此外,通过硬件电路或者硬件电路结合软件指令也能同样实现本申请,因此实现本申请并不限于任何特定硬件电路、软件以及两者的组合。
103.在一示例性的实施例中,本申请还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现如前所述的音乐和弦识别方法。
104.应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围执行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1