CN113707112B - 基于层标准化的递归跳跃连接深度学习音乐自动生成方法 - Google Patents
基于层标准化的递归跳跃连接深度学习音乐自动生成方法 Download PDFInfo
- Publication number
- CN113707112B CN113707112B CN202110931804.3A CN202110931804A CN113707112B CN 113707112 B CN113707112 B CN 113707112B CN 202110931804 A CN202110931804 A CN 202110931804A CN 113707112 B CN113707112 B CN 113707112B
- Authority
- CN
- China
- Prior art keywords
- layer
- music
- chord
- input
- automatic generation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 30
- 238000013135 deep learning Methods 0.000 title claims abstract description 21
- 238000012549 training Methods 0.000 claims abstract description 49
- 238000013528 artificial neural network Methods 0.000 claims abstract description 24
- 238000007781 pre-processing Methods 0.000 claims abstract description 6
- 239000013598 vector Substances 0.000 claims description 65
- 230000033764 rhythmic process Effects 0.000 claims description 29
- 239000011159 matrix material Substances 0.000 claims description 20
- 238000012417 linear regression Methods 0.000 claims description 18
- 238000010606 normalization Methods 0.000 claims description 17
- 238000007477 logistic regression Methods 0.000 claims description 16
- 239000012634 fragment Substances 0.000 claims description 15
- 230000009466 transformation Effects 0.000 claims description 10
- 238000002372 labelling Methods 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000006243 chemical reaction Methods 0.000 claims description 5
- 230000006870 function Effects 0.000 claims description 5
- 238000003825 pressing Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 claims description 5
- 230000008859 change Effects 0.000 claims description 3
- 125000004122 cyclic group Chemical group 0.000 claims description 3
- 238000004880 explosion Methods 0.000 abstract description 3
- 230000008034 disappearance Effects 0.000 abstract description 2
- 230000000306 recurrent effect Effects 0.000 abstract 2
- 238000010586 diagram Methods 0.000 description 3
- 230000003796 beauty Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000005422 blasting Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003340 mental effect Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H1/00—Details of electrophonic musical instruments
- G10H1/02—Means for controlling the tone frequencies, e.g. attack or decay; Means for producing special musical effects, e.g. vibratos or glissandos
- G10H1/04—Means for controlling the tone frequencies, e.g. attack or decay; Means for producing special musical effects, e.g. vibratos or glissandos by additional modulation
- G10H1/053—Means for controlling the tone frequencies, e.g. attack or decay; Means for producing special musical effects, e.g. vibratos or glissandos by additional modulation during execution only
- G10H1/055—Means for controlling the tone frequencies, e.g. attack or decay; Means for producing special musical effects, e.g. vibratos or glissandos by additional modulation during execution only by switches with variable impedance elements
- G10H1/0553—Means for controlling the tone frequencies, e.g. attack or decay; Means for producing special musical effects, e.g. vibratos or glissandos by additional modulation during execution only by switches with variable impedance elements using optical or light-responsive means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Auxiliary Devices For Music (AREA)
Abstract
一种基于层标准化的递归跳跃连接深度学习音乐自动生成方法,由收集乐器数字接口数据、对训练集进行预处理、构建音乐自动生成网络、训练音乐自动生成网络、自动生成音乐文件步骤组成。本发明以Transformer‑XL神经网络的结构作为基础,引入层标准化递归神经网络和多专家层,优化了整体神经网络性能,缓解了递归消失或爆炸的情况,增强神经网络的学习能力,使生成的音乐的质量更高,更贴近训练集的类型。本发明可应用于音乐自动生成技术领域。
Description
技术领域
本发明属于计算机技术领域,具体涉及到基于层标准化的递归跳跃连接深度学习音乐自动生成方法。
技术背景
音乐创作就是指音乐专业人员或作曲家创造具有音乐美的乐曲的复杂的精神与技能生产过程。主要的方式是按照不同音节对应时间序列关系进行组合,如旋律和和声,并配以相宜的节奏进行组织产生的具有特殊音色和纹理动态声波。音乐创作通常是由受过专业音乐培训和教育的作曲家创造具有音乐美的乐曲,是一项极其复杂的技术方案。
随着人工智能深度学习算法在图像识别、视频检测、自然语言处理和语音处理等方面的广泛应用,深度学习模型技术的发展完善及应用的场景正在越来越多地被挖掘。深度学习算法是一种新兴的多层神经网络降维算法,通过组建含有多个隐层的神经网络深层模型,对输入的高维数据逐层提取特征,以发现数据的低维嵌套结构,形成更加抽象有效的高层表示。
深度学习对于音乐创作与生成的场景,模型通过学习音乐数据集中得音乐,从而生成与数据集音乐类型类似的新音乐,使得音乐创作对于更多的人能够完成,也能够为人类带来更多不同类型和不同风格的优美音乐。
现阶段,运用在音乐自动生方面的神经网络大致有下面这几种,RecurrentNeuralNetwork,它是一种前馈是神经网络通过新增表示时间维度信息的参数以及相关机制,使神经网络不仅可以基于当前数据而且可以基于先前数据来学习,在RNN系统中,前一个输入和后一个输入关联,RNN是一个在时间上传递的神经网络,时间作为其深度的度量。循环网络通常具有相同的输入层和输出层,因为循环网络预测下一个项目是以迭代的方式用作下一个输入,以便产生序列,因此RNN是音乐创作中一项重要的实现方式。但是在RNN中,会存在梯度消失或者爆炸,使得RNN比较难优化,LSTM(LongShort-TermMemory)引入门控和梯度裁剪技术增大网络存储,缓解了RNN中出现的梯度消失的技术问题,但并没能很好地解决这一问题。
近年来出现了一种新的神经网络,叫做Transformer,实验表明Transformer比其LSTM神经网络可以更好地缓解这一问题。但是由于音乐是具有前后关联性特征的艺术作品,而Transformer并不具有递归的特性。
在音乐自动生成领域,当前需迫切解决的一个技术问题是提供一种符合音乐前后关联性特征、缓解梯度下降或爆破技术问题的音乐自动生成方法。
发明内容
本发明所要解决的技术问题在于克服上述现有技术的不足,提供了一种基于层标准化的递归跳跃连接深度学习音乐自动生成方法。
解决上述技术问题所采用的技术方案是由下述步骤组成:
(1)收集乐器数字接口数据
收集键盘乐器、固定音乐风格的乐器数字接口类型的音乐文件作为音乐自动生成网络的训练集。
(2)对训练集进行预处理
将乐器数字接口文件中的电子乐谱用事件表示,事件分为:音高、音强、音长、位置、小节、节奏、和弦事件,音高事件表示乐器数字接口类型音乐文件的音高的开始,音强事件表示音符事件的动态级别——对应于感知响度,音长事件表示音符的持续时间,位置事件表示小节中的一个确切的位置,小节事件表示乐谱中一个小节的开始和结束,节奏事件表示节奏的局部变化,由节奏类事件和节奏值事件组合表示,每一拍都添加了节奏事件,和弦事件表示小节中的和弦,由根音符和弦特性组成。根音符分为:和弦C、和弦C#、和弦D、和弦D#、和弦E、和弦F、和弦F#、和弦G、和弦G#、和弦A、和弦A#、和弦B;弦特性分为:大调和弦、小调和弦、减调和弦、增调和弦、属和弦,二者结合有60个和弦事件,每一个节奏事件和和弦事件都会存在一个位置事件在它们前面。
运用可追踪节拍和强拍的循环神经网络估计音乐文件中的强拍的位置,标注乐谱中的小节,通过相同的模型,追踪节拍的位置,标注位置信息,通过基于启发式规则的和弦识别的方法,识别所述的60个和弦事件。
将乐器数字接口文件的电子乐谱中每一个小节的乐谱按下述的方式转换成事件的形式,一个小节放在开头表示一个乐谱中一个小节的开始,一个小节放在结尾表示一个乐谱中一个小节的结束,在两个小节事件中间的事件和顺序为位置、和弦、位置、节奏类、节奏值、位置、音强、音高、音长,来表示一个乐谱的小节中每一个位置上音符的特征,将乐器数字接口中的电子乐谱,用上述事件形式表示,作为训练网络的输入。
(3)构建音乐自动生成网络
音乐自动生成网络模型由输入嵌套层、位置编码层、多头注意力层、第一标准化求和层、多专家层、第二标准化求和层、线性回归模型、逻辑回归模型连接构成。输入嵌套层的输出与位置编码层的输入相连,位置编码层的输出与多头注意力层的输入相连,多头注意力层的输出与第一标准化求和层的输入相连,第一标准化求和层的输出与多专家层的输入相连,多专家层的输出与第二标准化求和层的输入相连,第二标准化求和层的输出与线性回归模型的输入相连,线性回归模型的输出与逻辑回归模型的输入相连,构建成音乐自动生成网络。
(4)训练音乐自动生成网络
将(1)步骤中的音乐事件作为音乐自动生成网络的输入,在训练的过程中,将每一个输入的序列分成固定长度为L的段。
将给定的段输入到音乐自动生成网络中,进入到网络各层。
按下式确定两个隐向量序列沿长度方向的拼接
式中τ为片段,n为层数,表示第τ个片段在第n-1层的隐向量,表示第τ-1个片段在第n-1层的隐向量,τ和n为有限的正整数,隐向量长度为L,维度为d,表示两个向量的拼接运算,stop_gradient(·)表示停止梯度函数;将第τ-1个片段的隐向量和第τ个片段的隐向量一同作为训练数据,模拟递归的形式。
按下式确定第τ个片段在第n层的查询向量第τ个片段在第n层的键值向量第τ个片段在第n层的值向量
式中表示每一层的查询向量q的转化矩阵,表示每一层的键向量k的转化矩阵,表示每一层的值向量v的转化矩阵,用相对位置编码方式定位事件在第τ个片段中的位置。
按下式确定多头注意力中第i个头的注意力特征:
式中masked_softmax(·)表示先对于无效的输入,用一个负无穷的值代替这个输入,进行逻辑回归计算,R表示输入片段的相对位置编码,i为有限的正整数。
按下式确定多头注意力特征值
式中表示与第n层的第τ个片段中事件相关的权重矩阵。
按照下式确定层标准化递归跳跃连接的输出
式中layernormal(·)表示将上一层的输出进行归一化处理,表示第τ个片段在第n层第一次层标准化的结果。
按下式确定多专家层的输出值
式中g(·)m代表可训练路由选择器的输出结果的第m个元素,e(·)m表示第m个专家的非线性转换,E表示专家模块的个数,E和m为有限的正整数。
重复上述步骤,至损失率小于0.1时,结束训练,得到训练好的音乐自动生成神经网络。
(5)自动生成音乐文件
运行训练好的音乐自动生成网络,自动生成和训练集音乐类型相符的音乐文件。
在本发明的(3)构建音乐自动生成网络步骤中,所述的第一标准化求和层由求和模块、标准化模块构成,1个求和模块与1个标准化模块串联构成1个标准化求和模块,2个或3个标准化求和模块串联构成第一标准化求和层。
在本发明的(3)构建音乐自动生成网络步骤中,所述的多专家层由路由模块、专家模块、合并模块连接构成,路由模块的输出与并联的专家模块的输入相连,并联的专家模块的输出与合并模块的输入相连,合并模块的输出与第二标准化求和层的输入相连;所述的专家模块有E个,E取值为有限的正整数。
本发明的专家模块有E个,E取值最佳为[8,16]。
本发明的第二标准化求和层与第一标准化求和层的结构相同。
在本发明的(4)训练音乐自动生成网络步骤的式(1)中,所述的n表示层数,n取值最佳为[12,24];在式(2)中,所述的i取值最佳为[8,16]。
本发明将乐器数字接口数据类型的音乐文件,作为训练音乐自动生成网络的训练集。在音乐自动生成网络输入训练集中的数据之前,对数据进行预处理,将乐器数字接口数据类型的音乐文件用音高、音强、音长、位置、小节、节奏、和弦事件进行表示,音乐训练生成网络是由Transformer-XL神经网络作为基本的网络结构,在其内部添加了基于层标准化的递归网络连接层和多专家层,与Transformer神经网络相比,增加了递归的模式,进一步缓解了梯度消失或爆破的情况,优化了整体性能,可以生成更优质的音乐。
附图说明
图1本发明实施1的流程图。
图2音乐生成网络模型图的结构示意图。
图3是多专家层5的结构示意图。
具体实施方式
下面结合附图和实施例对本发明进一步详细说明,但本发明不限于下述的实施方式。
实施例1
以选取的日本流行音乐钢琴曲200个为例,作为训练集,本实施例的基于层标准化的递归跳跃连接深度学习音乐自动生成方法由下述步骤组成(参见图1)。
(1)收集乐器数字接口数据
收集键盘乐器、固定音乐风格的乐器数字接口类型的音乐文件作为音乐自动生成网络的训练。
(2)对训练集进行预处理
将乐器数字接口文件中的电子乐谱用事件表示,事件分为:音高、音强、音长、位置、小节、节奏、和弦事件,音高事件表示乐器数字接口类型音乐文件的音高的开始,音强事件表示音符事件的动态级别——对应于感知响度,音长事件表示音符的持续时间,位置事件表示小节中的一个确切的位置,小节事件表示乐谱中一个小节的开始和结束,节奏事件表示节奏的局部变化,由节奏类事件和节奏值事件组合表示,每一拍都添加了节奏事件,和弦事件表示小节中的和弦,由根音符和弦特性组成;根音符分为:和弦C、和弦C#、和弦D、和弦D#、和弦E、和弦F、和弦F#、和弦G、和弦G#、和弦A、和弦A#、和弦B;弦特性分为:大调和弦、小调和弦、减调和弦、增调和弦、属和弦,二者结合有60个和弦事件,每一个节奏事件和和弦事件都会存在一个位置事件在它们前面。
运用可追踪节拍和强拍的循环神经网络估计音乐文件中的强拍的位置,标注乐谱中的小节,通过相同的模型,追踪节拍的位置,标注位置信息,通过基于启发式规则的和弦识别的方法,识别所述的60个和弦事件。
将乐器数字接口文件的电子乐谱中每一个小节的乐谱按下述的方式转换成事件的形式,一个小节放在开头表示一个乐谱中一个小节的开始,一个小节放在结尾表示一个乐谱中一个小节的结束,在两个小节事件中间的事件和顺序为位置、和弦、位置、节奏类、节奏值、位置、音强、音高、音长,来表示一个乐谱的小节中每一个位置上音符的特征,将乐器数字接口中的电子乐谱,用上述事件形式表示,作为训练网络的输入。
(3)构建音乐自动生成网络
在图2中,本实施例的音乐自动生成网络模型由输入嵌套层1、位置编码层2、多头注意力层3、第一标准化求和层4、多专家层5、第二标准化求和层6、线性回归模型7、逻辑回归模型8连接构成。输入嵌套层1的输出与位置编码层2的输入相连,位置编码层2的输出与多头注意力层3的输入相连,多头注意力层3的输出与第一标准化求和层4的输入相连,第一标准化求和层4的输出与多专家层5的输入相连,多专家层5的输出与第二标准化求和层6的输入相连,第二标准化求和层6的输出与线性回归模型7的输入相连,线性回归模型7的输出与逻辑回归模型8的输入相连,构建成音乐自动生成网络。
本实施例的第一标准化求和层4由求和模块、标准化模块构成,1个求和模块与1个标准化模块串联构成1个标准化求和模块,2个标准化求和模块串联构成第一标准化求和层4。
在图3中,本实施例的多专家层5由路由模块5-1、专家模块5-2、合并模块5-3连接构成,路由模块5-1的输出与并联的专家模块5-2的输入相连,并联的专家模块5-2的输出与合并模块5-3的输入相连,合并模块5-3的输出与第二标准化求和层6的输入相连;所述的专家模块5-2有E个,E取值为有限的正整数,本实施例的E取值为12,第二标准化求和层6与第一标准化求和层4的结构相同。
(4)训练音乐自动生成网络
将(1)步骤中的音乐事件作为音乐自动生成网络的输入,在训练的过程中,将每一个输入的序列分成固定长度为L的段。
将给定的段输入到音乐自动生成网络中,进入到网络各层;
按下式确定两个隐向量序列沿长度方向的拼接
式中τ为片段,n为层数,表示第τ个片段在第n-1层的隐向量,表示第τ-1个片段在第n-1层的隐向量,τ和n为有限的正整数,本实施例的n取值为16,隐向量长度为L,维度为d,表示两个向量的拼接运算,stop_gradient(·)表示停止梯度函数;将第τ-1个片段的隐向量和第τ个片段的隐向量一同作为训练数据,模拟递归的形式;
按下式确定第τ个片段在第n层的查询向量第τ个片段在第n层的键值向量第τ个片段在第n层的值向量
式中示每一层的查询向量q的转化矩阵,表示每一层的键向量k的转化矩阵,表示每一层的值向量v的转化矩阵,用相对位置编码方式定位事件在第τ个片段中的位置;
按下式确定多头注意力中第i个头的注意力特征:
式中masked_softmax(·)表示先对于无效的输入,用一个负无穷的值代替这个输入,进行逻辑回归计算,R表示输入片段的相对位置编码,i为有限的正整数,本实施例的i取值为12。
按下式确定多头注意力特征值
式中表示与第n层的第τ个片段中事件相关的权重矩阵。
按照下式确定层标准化递归跳跃连接的输出
式中layernormal(·)表示将上一层的输出进行归一化处理,表示第τ个片段在第n层第一次层标准化的结果。
按下式确定多专家层的输出值
式中g(·)m代表可训练路由选择器的输出结果的第m个元素,e(·)m表示第m个专家的非线性转换,E表示专家模块的个数,E和m为有限的正整数,本实施例的E取值为12。
重复上述步骤,至损失率小于0.1时,结束训练,得到训练好的音乐自动生成神经网络。
(5)自动生成音乐文件
运行训练好的音乐自动生成网络,自动生成和训练集音乐类型相符的音乐文件。
完成基于层标准化的递归跳跃连接深度学习音乐自动生成方法。
实施例2
以选取的日本流行音乐钢琴曲200个为例,作为训练集,本实施例的基于层标准化的递归跳跃连接深度学习音乐自动生成方法由下述步骤组成。
(1)收集乐器数字接口数据
该步骤与实施例1相同。
(2)对训练集进行预处理
该步骤与实施例1相同。
(3)构建音乐自动生成网络
音乐自动生成网络模型由输入嵌套层1、位置编码层2、多头注意力层3、第一标准化求和层4、多专家层5、第二标准化求和层6、线性回归模型7、逻辑回归模型8连接构成。输入嵌套层1的输出与位置编码层2的输入相连,位置编码层2的输出与多头注意力层3的输入相连,多头注意力层3的输出与第一标准化求和层4的输入相连,第一标准化求和层4的输出与多专家层5的输入相连,多专家层5的输出与第二标准化求和层6的输入相连,第二标准化求和层6的输出与线性回归模型7的输入相连,线性回归模型7的输出与逻辑回归模型8的输入相连,构建成音乐自动生成网络。
本实施例的第一标准化求和层4由求和模块、标准化模块构成,1个求和模块与1个标准化模块串联构成1个标准化求和模块,2个标准化求和模块串联构成第一标准化求和层4。
本实施例的多专家层5由路由模块5-1、专家模块5-2、合并模块5-3连接构成,路由模块5-1的输出与并联的专家模块5-2的输入相连,并联的专家模块5-2的输出与合并模块5-3的输入相连,合并模块5-3的输出与第二标准化求和层6的输入相连;所述的专家模块5-2有E个,E取值为有限的正整数,本实施例的E取值为8,第二标准化求和层6与第一标准化求和层4的结构相同。
重复上述步骤,至损失率小于0.1时,结束训练,得到训练好的音乐自动生成神经网络。
(4)训练音乐自动生成网络
将(1)步骤中的音乐事件作为音乐自动生成网络的输入,在训练的过程中,将每一个输入的序列分成固定长度为L的段。
将给定的段输入到音乐自动生成网络中,进入到网络各层;
按下式确定两个隐向量序列沿长度方向的拼接
式中τ为片段,n为层数,表示第τ个片段在第n-1层的隐向量,表示第τ-1个片段在第n-1层的隐向量,τ和n为有限的正整数,本实施例的n取值为12,隐向量长度为L,维度为d,表示两个向量的拼接运算,stop_gradient(·)表示停止梯度函数;将第τ-1个片段的隐向量和第τ个片段的隐向量一同作为训练数据,模拟递归的形式;
按下式确定第τ个片段在第n层的查询向量第τ个片段在第n层的键值向量第τ个片段在第n层的值向量
式中表示每一层的查询向量q的转化矩阵,表示每一层的键向量k的转化矩阵,表示每一层的值向量v的转化矩阵,用相对位置编码方式定位事件在第τ个片段中的位置;
按下式确定多头注意力中第i个头的注意力特征:
式中masked_softmax(·)表示先对于无效的输入,用一个负无穷的值代替这个输入,进行逻辑回归计算,R表示输入片段的相对位置编码,i为有限的正整数,本实施例的i取值为8。
按下式确定多头注意力特征值
式中表示与第n层的第τ个片段中事件相关的权重矩阵。
按照下式确定层标准化递归跳跃连接的输出
式中layernormal(·)表示将上一层的输出进行归一化处理,表示第τ个片段在第n层第一次层标准化的结果。
按下式确定多专家层的输出值
式中g(·)m代表可训练路由选择器的输出结果的第m个元素,e(·)m表示第m个专家的非线性转换,E表示专家模块的个数,E和m为有限的正整数,本实施例的E取值为8。
重复上述步骤,至损失率小于0.1时,结束训练,得到训练好的音乐自动生成神经网络。
其它步骤与实施例1相同。完成基于层标准化的递归跳跃连接深度学习音乐自动生成方法。
实施例3
以选取的日本流行音乐钢琴曲200个为例,作为训练集,本实施例的基于层标准化的递归跳跃连接深度学习音乐自动生成方法由下述步骤组成。
(1)收集乐器数字接口数据
该步骤与实施例1相同。
(2)对训练集进行预处理
该步骤与实施例1相同。
(3)构建音乐自动生成网络
音乐自动生成网络模型由输入嵌套层1、位置编码层2、多头注意力层3、第一标准化求和层4、多专家层5、第二标准化求和层6、线性回归模型7、逻辑回归模型8连接构成。输入嵌套层1的输出与位置编码层2的输入相连,位置编码层2的输出与多头注意力层3的输入相连,多头注意力层3的输出与第一标准化求和层4的输入相连,第一标准化求和层4的输出与多专家层5的输入相连,多专家层5的输出与第二标准化求和层6的输入相连,第二标准化求和层6的输出与线性回归模型7的输入相连,线性回归模型7的输出与逻辑回归模型8的输入相连,构建成音乐自动生成网络。
本实施例的第一标准化求和层4由求和模块、标准化模块构成,1个求和模块与1个标准化模块串联构成1个标准化求和模块,2个标准化求和模块串联构成第一标准化求和层4。
本实施例的多专家层5由路由模块5-1、专家模块5-2、合并模块5-3连接构成,路由模块5-1的输出与并联的专家模块5-2的输入相连,并联的专家模块5-2的输出与合并模块5-3的输入相连,合并模块5-3的输出与第二标准化求和层6的输入相连;所述的专家模块5-2有E个,E取值为有限的正整数,本实施例的E取值为16,第二标准化求和层6与第一标准化求和层4的结构相同。
重复上述步骤,至损失率小于0.1时,结束训练,得到训练好的音乐自动生成神经网络。
(4)训练音乐自动生成网络
将(1)步骤中的音乐事件作为音乐自动生成网络的输入,在训练的过程中,将每一个输入的序列分成固定长度为L的段。
将给定的段输入到音乐自动生成网络中,进入到网络各层;
按下式确定两个隐向量序列沿长度方向的拼接
式中τ为片段,n为层数,表示第τ个片段在第n-1层的隐向量,表示第τ-1个片段在第n-1层的隐向量,τ和n为有限的正整数,本实施例的n取值为24隐向量长度为L,维度为d,表示两个向量的拼接运算,stop_gradient(·)表示停止梯度函数;将第τ-1个片段的隐向量和第τ个片段的隐向量一同作为训练数据,模拟递归的形式;
按下式确定第τ个片段在第n层的查询向量第τ个片段在第n层的键值向量第τ个片段在第n层的值向量
式中表示每一层的查询向量q的转化矩阵,表示每一层的键向量k的转化矩阵,表示每一层的值向量v的转化矩阵,用相对位置编码方式定位事件在第τ个片段中的位置;
按下式确定多头注意力中第i个头的注意力特征:
式中masked_softmax(·)表示先对于无效的输入,用一个负无穷的值代替这个输入,进行逻辑回归计算,R表示输入片段的相对位置编码,i为有限的正整数,本实施例的i为i取值为16。
按下式确定多头注意力特征值
式中表示与第n层的第τ个片段中事件相关的权重矩阵;
按照下式确定层标准化递归跳跃连接的输出
式中layernormal(·)表示将上一层的输出进行归一化处理,表示第τ个片段在第n层第一次层标准化的结果。
按下式确定多专家层的输出值
式中g(·)m代表可训练路由选择器的输出结果的第m个元素,e(·)m表示第m个专家的非线性转换,E表示专家模块的个数,E和m为有限的正整数,本实施例的E取值为16。
重复上述步骤,至损失率小于0.1时,结束训练,得到训练好的音乐自动生成神经网络。
其它步骤与实施例1相同。完成基于层标准化的递归跳跃连接深度学习音乐自动生成方法。
实施例4
在以上的实施例1~3的(3)构建音乐自动生成网络步骤为:音乐自动生成网络模型由输入嵌套层1、位置编码层2、多头注意力层3、第一标准化求和层4、多专家层5、第二标准化求和层6、线性回归模型7、逻辑回归模型8连接构成。输入嵌套层1的输出与位置编码层2的输入相连,位置编码层2的输出与多头注意力层3的输入相连,多头注意力层3的输出与第一标准化求和层4的输入相连,第一标准化求和层4的输出与多专家层5的输入相连,多专家层5的输出与第二标准化求和层6的输入相连,第二标准化求和层6的输出与线性回归模型7的输入相连,线性回归模型7的输出与逻辑回归模型8的输入相连,构建成音乐自动生成网络。
本实施例的第一标准化求和层4由求和模块、标准化模块构成,1个求和模块与1个标准化模块串联构成1个标准化求和模块,3个标准化求和模块串联构成第一标准化求和层4。该步骤的其它步骤与相应的实施例相同。
其它步骤与相应的实施例相同。完成基于层标准化的递归跳跃连接深度学习音乐自动生成方法。
Claims (6)
1.一种基于层标准化的递归跳跃连接深度学习音乐自动生成方法,其特征在于由下述步骤组成:
(1)收集乐器数字接口数据
收集键盘乐器、固定音乐风格的乐器数字接口类型的音乐文件作为音乐自动生成网络的训练集;
(2)对训练集进行预处理
将乐器数字接口文件中的电子乐谱用事件表示,事件分为:音高、音强、音长、位置、小节、节奏、和弦事件,音高事件表示乐器数字接口类型音乐文件的音高的开始,音强事件表示音符事件的动态级别——对应于感知响度,音长事件表示音符的持续时间,位置事件表示小节中的一个确切的位置,小节事件表示乐谱中一个小节的开始和结束,节奏事件表示节奏的局部变化,由节奏类事件和节奏值事件组合表示,每一拍都添加了节奏事件,和弦事件表示小节中的和弦,由根音符和弦特性组成;根音符分为:和弦C、和弦C#、和弦D、和弦D#、和弦E、和弦F、和弦F#、和弦G、和弦G#、和弦A、和弦A#、和弦B;弦特性分为:大调和弦、小调和弦、减调和弦、增调和弦、属和弦,二者结合有60个和弦事件,每一个节奏事件和和弦事件都会存在一个位置事件在它们前面;
运用可追踪节拍和强拍的循环神经网络估计音乐文件中的强拍的位置,标注乐谱中的小节,通过相同的模型,追踪节拍的位置,标注位置信息,通过基于启发式规则的和弦识别的方法,识别所述的60个和弦事件;
将乐器数字接口文件的电子乐谱中每一个小节的乐谱按下述的方式转换成事件的形式,一个小节放在开头表示一个乐谱中一个小节的开始,一个小节放在结尾表示一个乐谱中一个小节的结束,在两个小节事件中间的事件和顺序为位置、和弦、位置、节奏类、节奏值、位置、音强、音高、音长,来表示一个乐谱的小节中每一个位置上音符的特征,将乐器数字接口中的电子乐谱,用上述事件形式表示,作为训练网络的输入;
(3)构建音乐自动生成网络
音乐自动生成网络模型由输入嵌套层(1)、位置编码层(2)、多头注意力层(3)、第一标准化求和层(4)、多专家层(5)、第二标准化求和层(6)、线性回归模型(7)、逻辑回归模型(8)连接构成;输入嵌套层(1)的输出与位置编码层(2)的输入相连,位置编码层(2)的输出与多头注意力层(3)的输入相连,多头注意力层(3)的输出与第一标准化求和层(4)的输入相连,第一标准化求和层(4)的输出与多专家层(5)的输入相连,多专家层(5)的输出与第二标准化求和层(6)的输入相连,第二标准化求和层(6)的输出与线性回归模型(7)的输入相连,线性回归模型(7)的输出与逻辑回归模型(8)的输入相连,构建成音乐自动生成网络;
(4)训练音乐自动生成网络
将步骤(1)中的音乐事件作为音乐自动生成网络的输入,在训练的过程中,将每一个输入的序列分成固定长度为L的段;
将给定的段输入到音乐自动生成网络中,进入到网络各层;
按下式确定两个隐向量序列沿长度方向的拼接
式中τ为片段,n为层数,表示第τ个片段在第n-1层的隐向量,表示第τ-1个片段在第n-1层的隐向量,τ和n为有限的正整数,隐向量长度为L,维度为d,表示两个向量的拼接运算,stop_gradient(·)表示停止梯度函数;将第τ-1个片段的隐向量和第τ个片段的隐向量一同作为训练数据,模拟递归的形式;
按下式确定第τ个片段在第n层的查询向量第τ个片段在第n层的键值向量第τ个片段在第n层的值向量
式中表示每一层的查询向量q的转化矩阵,表示每一层的键向量k的转化矩阵,表示每一层的值向量v的转化矩阵,用相对位置编码方式定位事件在第τ个片段中的位置;
按下式确定多头注意力中第i个头的注意力特征:
式中masked_softmax(·)表示先对于无效的输入,用一个负无穷的值代替这个输入,进行逻辑回归计算,R表示输入片段的相对位置编码,i为有限的正整数;
按下式确定多头注意力特征值
式中表示与第n层的第τ个片段中事件相关的权重矩阵;
按照下式确定层标准化递归跳跃连接的输出
式中layernormal(·)表示将上一层的输出进行归一化处理,表示第τ个片段在第n层第一次层标准化的结果;
按下式确定多专家层的输出值
式中g(·)m代表可训练路由选择器的输出结果的第m个元素,e(·)m表示第m个专家的非线性转换,E表示专家模块的个数,E和m为有限的正整数;
重复上述步骤,至损失率小于0.1时,结束训练,得到训练好的音乐自动生成神经网络;
(5)自动生成音乐文件
运行训练好的音乐自动生成网络,自动生成和训练集音乐类型相符的音乐文件。
2.根据权利要求1所述的基于层标准化的递归跳跃连接深度学习音乐自动生成方法,其特征在于:在构建音乐自动生成网络步骤中,所述的第一标准化求和层(4)由求和模块、标准化模块构成,1个求和模块与1个标准化模块串联构成1个标准化求和模块,2个或3个标准化求和模块串联构成第一标准化求和层(4)。
3.根据权利要求1所述的基于层标准化的递归跳跃连接深度学习音乐自动生成方法,其特征在于:在构建音乐自动生成网络步骤中,所述的多专家层(5)由路由模块(5-1)、专家模块(5-2)、合并模块(5-3)连接构成,路由模块(5-1)的输出与并联的专家模块(5-2)的输入相连,并联的专家模块(5-2)的输出与合并模块(5-3)的输入相连,合并模块(5-3)的输出与第二标准化求和层(6)的输入相连;所述的专家模块(5-2)有E个,E取值为有限的正整数。
4.根据权利要求3所述的基于层标准化的递归跳跃连接深度学习音乐自动生成方法,其特征在于:所述的专家模块(5-2)有E个,E取值为[8,16]。
5.根据权利要求3所述的基于层标准化的递归跳跃连接深度学习音乐自动生成方法,其特征在于:所述的第二标准化求和层(6)与第一标准化求和层(4)的结构相同。
6.根据权利要求1所述的基于层标准化的递归跳跃连接深度学习音乐自动生成方法,其特征在于:在训练音乐自动生成网络步骤的式(1)中,所述的n表示层数,n取值为[12,24];在式(2)中,所述的i取值为[8,16]。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110931804.3A CN113707112B (zh) | 2021-08-13 | 2021-08-13 | 基于层标准化的递归跳跃连接深度学习音乐自动生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110931804.3A CN113707112B (zh) | 2021-08-13 | 2021-08-13 | 基于层标准化的递归跳跃连接深度学习音乐自动生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113707112A CN113707112A (zh) | 2021-11-26 |
CN113707112B true CN113707112B (zh) | 2024-05-28 |
Family
ID=78652635
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110931804.3A Active CN113707112B (zh) | 2021-08-13 | 2021-08-13 | 基于层标准化的递归跳跃连接深度学习音乐自动生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113707112B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114842819B (zh) * | 2022-05-11 | 2023-06-23 | 电子科技大学 | 基于深度强化学习的单音轨midi音乐生成方法 |
CN116160459B (zh) * | 2022-12-30 | 2023-09-29 | 广州市第二中学 | 一种基于机器学习算法的音乐机器人控制方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107993636A (zh) * | 2017-11-01 | 2018-05-04 | 天津大学 | 基于递归神经网络的乐谱建模与生成方法 |
CN108875807A (zh) * | 2018-05-31 | 2018-11-23 | 陕西师范大学 | 一种基于多注意力多尺度的图像描述方法 |
CN111653256A (zh) * | 2020-08-10 | 2020-09-11 | 浙江大学 | 一种基于编码-解码网络的音乐伴奏自动生成方法及其系统 |
CN112634841A (zh) * | 2020-12-02 | 2021-04-09 | 爱荔枝科技(北京)有限公司 | 一种基于声音识别的吉他谱自动生成方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AUPP547898A0 (en) * | 1998-08-26 | 1998-09-17 | Canon Kabushiki Kaisha | System and method for automatic music generation |
-
2021
- 2021-08-13 CN CN202110931804.3A patent/CN113707112B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107993636A (zh) * | 2017-11-01 | 2018-05-04 | 天津大学 | 基于递归神经网络的乐谱建模与生成方法 |
CN108875807A (zh) * | 2018-05-31 | 2018-11-23 | 陕西师范大学 | 一种基于多注意力多尺度的图像描述方法 |
CN111653256A (zh) * | 2020-08-10 | 2020-09-11 | 浙江大学 | 一种基于编码-解码网络的音乐伴奏自动生成方法及其系统 |
CN112634841A (zh) * | 2020-12-02 | 2021-04-09 | 爱荔枝科技(北京)有限公司 | 一种基于声音识别的吉他谱自动生成方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113707112A (zh) | 2021-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113707112B (zh) | 基于层标准化的递归跳跃连接深度学习音乐自动生成方法 | |
US11887566B2 (en) | Method of generating music data | |
CN111754962B (zh) | 基于升降采样的民歌智能辅助作曲系统及方法 | |
Wang et al. | Jazz music generation based on grammar and lstm | |
Micchi et al. | A deep learning method for enforcing coherence in Automatic Chord Recognition. | |
CN116863893A (zh) | 一种基于旋律生成和弦的方法和系统 | |
CN114610871B (zh) | 基于人工智能算法的情报系统建模分析方法 | |
CN117037779A (zh) | 一种基于gcn-amcn的midi标签分类方法 | |
CN116229922A (zh) | 基于Bi-LSTM深度强化学习网络的鼓乐生成方法 | |
CN115602139A (zh) | 一种基于两阶段生成模型的自动音乐生成方法及装置 | |
Tseng et al. | Extending music based on emotion and tonality via generative adversarial network | |
Prashant Krishnan et al. | Music generation using deep learning techniques | |
Wu et al. | Mirex 2017 submission: Automatic audio chord recognition with miditrained deep feature and blstm-crf sequence decoding model | |
Mohanty et al. | Music Regeneration with RNN Architecture Using LSTM | |
Jiang et al. | Music signal recognition based on the mathematical and physical equation inversion method | |
Chen et al. | Chord Jazzification: Learning Jazz Interpretations of Chord Symbols. | |
Rajadhyaksha et al. | Music generation with bi-directional long short term memory neural networks | |
CN112863465A (zh) | 基于上下文信息的音乐生成方法、装置及存储介质 | |
Ma et al. | Coarse-to-fine framework for music generation via generative adversarial networks | |
Wang et al. | Generate Xi’an drum music based on compressed coding | |
Shi et al. | Generating Emotional Music Based on Improved C-RNN-GAN | |
WO2022202297A1 (ja) | 文章提供方法、プログラムおよび文章提供装置 | |
Wang | Research on AI composition based on deep learning techniques | |
CN117668285B (zh) | 一种基于声学特征的音乐情绪匹配方法 | |
Kamonsantiroj et al. | Improving pitch class profile for musical chords recognition combining major chord filters and convolution neural networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |