基于生成式对抗网络的音乐旋律编曲方法、装置及系统



1.本发明属于人工智能机器学习领域,特别涉及一种基于生成式对抗网络的音乐旋律编曲方法、装置及系统。


背景技术:



2.目前,此领域大多是使用了只有一个根据歌词生成旋律数据的算法而不是最终的音频。这类软件的缺点是只面向于数据从业人员而不是真实有编曲业务需求的人员,并且此类算法在音乐生成效果上也不尽如人意。因此,需要提供一种既可以根据歌词生成更加合适的音乐旋律数据,也能将其转化为音乐文件,同时还能提供音乐播放,信息管理,用户权限管理等功能的软件系统。


技术实现要素:



3.为了解决上述现有技术的不足,本发明提供了一种基于生成式对抗网络的音乐旋律编曲方法、装置、系统、服务器及存储介质,根据用户输入的歌词和选择的乐器,采用机器学习模型合成音乐文件,机器学习模型使用生成式对抗网络模型并将一个判别器改为两个判别器,同时将生成器中的长短期记忆结构替换为关系记忆单元,从而极大程度增加了音乐旋律生成的多样性与真实性,同时生成的音乐旋律更加优美与动听。此外,通过合成音乐文件,从而使适用人从数据从业人员扩展到一般人。
4.本发明的第一个目的在于提供一种基于生成式对抗网络的音乐旋律编曲方法。
5.本发明的第二个目的在于提供一种基于生成式对抗网络的音乐旋律编曲装置。
6.本发明的第三个目的在于提供一种基于生成式对抗网络的音乐旋律编曲系统。
7.本发明的第四个目的在于提供一种服务器。
8.本发明的第五个目的在于提供一种存储介质。
9.本发明的第一个目的可以通过采取如下技术方案达到:
10.一种基于生成式对抗网络的音乐旋律编曲方法,所述方法包括:
11.接收客户端发送的表单,根据表单中的信息,利用机器学习模型合成音乐文件;其中所述机器学习模型采用改进的生成式对抗网络模型;所述改进的生成式对抗网络模型将一个判别器改进为两个判别器,同时将生成器中的长短期记忆结构改进为关系记忆单元;
12.将所述音乐文件的路径返回给客户端,以使客户端使用ref属性动态绑定页面中音频控件中所述音乐文件的路径,并且自动进行所述音乐文件的播放。
13.进一步的,所述表单中的信息包括歌词和乐器信息;
14.所述根据表单中的信息,利用机器学习模型合成音乐文件,包括:
15.利用词典模块,将所述歌词转化成向量;
16.根据所述向量,利用机器学习模型生成音乐旋律;
17.根据所述音乐旋律和乐器信息,生成音乐文件。
18.进一步的,所述根据所述向量,利用机器学习模型生成音乐旋律,包括:
19.在网络上获取大量现有的歌曲作为数据集,利用数据集中的歌曲对所述机器学习模型进行训练;在训练阶段过程中,根据两个判别器的输出结果对生成器中的参数进行调整;
20.将所述向量输入训练好的机器学习模型中,通过生成器输出音乐旋律。
21.进一步的,两个判别器分别为歌词判别器和旋律判别器,其中,所述歌词判别器包括线性层、双向lstm层以及sigmoid函数,所述旋律判别器包括线性层、两个串联的lstm层、线性层及dropout模块以及sigmoid函数;
22.所述利用数据集中的歌曲对所述机器学习模型进行训练,包括:
23.利用词典模块将歌曲中的歌词转化成向量,将所述向量与噪声拼接后输入生成器中,生成器输出音乐旋律;其中,所述噪声为与所述向量同样维度大小的随机数向量;
24.将所述音乐旋律、向量以及歌曲中的旋律输入所述歌词判别器中,依次通过线性层、双向lstm层以及sigmoid函数,得到歌词判别器的输出;
25.将所述音乐旋律以及歌曲中的旋律输入所述旋律判别器中,依次通过线性层、两个串联的lstm层、线性层及dropout模块以及sigmoid函数,得到旋律判别器的输出;
26.通过两个判别器的输出对生成器产生正向反馈作用,使生成器能够生成更加逼真的旋律数据。
27.进一步的,所述根据所述音乐旋律和乐器信息,生成音乐文件,包括:
28.将tensor格式的音乐旋律保存为npy文件;
29.读取所述npy文件为ndarray文件;
30.将所述ndarray文件和乐器信息转化为mid文件;
31.将所述mid文件转化成mp3文件或wav文件,即得到音乐文件。
32.本发明的第二个目的可以通过采取如下技术方案达到:
33.一种基于生成式对抗网络的音乐旋律编曲装置,所述装置包括:
34.音乐文件合成单元,用于接收客户端发送的表单,根据表单中的信息,利用机器学习模型合成音乐文件;其中所述机器学习模型采用改进的生成式对抗网络模型;所述改进的生成式对抗网络模型将一个判别器改进为两个判别器,同时将生成器中的长短期记忆结构改进为关系记忆单元;
35.音乐文件播放单元,用于将所述音乐文件的路径返回给客户端,以使客户端使用ref属性动态绑定页面中音频控件中所述音乐文件的路径,并且自动进行所述音乐文件的播放。
36.本发明的第三个目的可以通过采取如下技术方案达到:
37.一种基于生成式对抗网络的音乐旋律编曲系统,包括客户端和服务器,其中:
38.所述客户端由vue3框架构建,用于页面展示以及用户与系统的交互,包括生成音乐文件模块;所述生成音乐文件模块,用于根据用户在表单页面输入的歌词以及选择的乐器,通过ajax的方式将表单信息发送至服务器进行处理,在接收到服务器返回的音乐文件的路径后,使用ref属性动态绑定页面中音频控件中音乐文件的路径,并且自动进行音乐文件的播放;
39.所述服务器的主体部分由django框架构建,包括合成音乐模块;所述合成音乐模块,用于根据接收到的客户端发送的表单,利用机器学习模型合成音乐文件并将音乐文件
的路径返回至客户端。
40.进一步的,所述客户端还包括登录模块、查看模块和评论模块;其中,所述登录模块,用于对用户的身份信息进行验证以及提供登录系统的入口;所述查看模块,用于登录用户根据个人身份的权限查看相应的信息;所述评论模块,用于提供用户与管理员之间进行交流的渠道,主要通过用户直接在界面下方的输入框中输入评论,点击提交评论之后发送axios请求到服务器,服务器通过django对其进行解析并将解析后的信息发送至数据库中储存。
41.进一步的,所述系统还提供了超级用户,用于管理和查看全部音乐生成的历史记录,所述历史记录存储在数据库中。
42.本发明的第四个目的可以通过采取如下技术方案达到:
43.一种服务器,包括处理器以及用于存储处理器可执行程序的存储器,所述处理器执行存储器存储的程序时,实现上述的音乐旋律编曲方法。
44.本发明的第五个目的可以通过采取如下技术方案达到:
45.本发明的第四个目的可以通过采取如下技术方案达到:
46.一种存储介质,存储有程序,所述程序被处理器执行时,实现上述的音乐旋律编曲方法。
47.本发明相对于现有技术具有如下的有益效果:
48.本发明提供的方法,根据用户输入的歌词和选择的乐器,采用机器学习模型合成音乐文件,机器学习模型使用生成式对抗网络模型并将一个判别器改为两个判别器,同时将生成器中的长短期记忆结构替换为关系记忆单元,从而极大程度增加了音乐旋律生成的多样性与真实性,同时生成的音乐旋律更加优美与动听。此外,通过合成音乐文件,从而使适用人从数据从业人员扩展到一般人。
附图说明
49.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
50.图1为本发明实施例1的基于生成式对抗网络的音乐旋律编曲方法的流程图。
51.图2为本发明实施例1的训练机器学习模型的流程示意图。
52.图3为本发明实施例1的歌词判别器的结构示意图。
53.图4为本发明实施例1的旋律判别器的结构示意图。
54.图5为本发明实施例2的将音乐旋律转化为音乐文件。
55.图6为本发明实施例1的基于生成式对抗网络的音乐旋律编曲系统的架构图。
56.图7为本发明实施例1的系统后台管理全部音乐生成的记录的页面。
57.图8为本发明实施例1的系统中评论模块的页面。
58.图9为本发明实施例1的基于生成式对抗网络的音乐旋律编曲系统的部署图。
59.图10为本发明实施例2的基于生成式对抗网络的音乐旋律编曲装置的结构框图。
60.图11为本发明实施例3的服务器的结构框图。
具体实施方式
61.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。应当理解,描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
62.实施例1:
63.如图1所示,本实施例提供的基于生成式对抗网络的音乐旋律编曲方法,包括以下步骤:
64.(1)客户端对登录用户的有效身份进行验证。
65.如果用户id和输入的密码匹配正确就进入到主页面,否则就提示密码错误,要求重新输入密码,若输入密码的次数达到3次,第三次输入的密码仍然错误,则提示输入的次数并退出登录页面;
66.(2)用户登录后,在页面输入歌词并选择乐器,点击“合成按钮”后,客户端通过表单收集输入的歌词以及在若干个备选的乐器中选择之后音乐旋律使用的乐器,并通过ajax的方式将表单信息发送至服务器端。
67.用户登录后,在打开的页面中输入歌词并选择乐器,点击“合成按钮”后,通过element-plus提供ui控件获取用户输入的字段作为歌词输入,将音乐的其他配置信息使用request中的get请求传输到后端的服务器。
68.(3)服务器接收到表单后,根据表单中的信息,利用机器学习模型合成音乐文件。
69.服务器接收到表单后,根据接收到的表单中的信息,其中主要是包括歌词信息和乐曲信息,即该乐器在系统中的编号。解析得到其中的歌词信息转化成向量之后利用机器学习模型合成音乐文件,具体包括:
70.(3-1)利用词典模块,将表单中的歌词转化成向量。
71.词典模块指的是将常用的歌词单词分成音节的形式之后,使用机器学习word2vec方式,即单词转化成向量的方式将这些常用的单词转化成向量,因为只有向量表示形式的单词才能进行机器学习训练。
72.具体的,将用户输入的句子分成音节的形式,再依次输入到词典模型中转化成向量表示形式。
73.(3-2)通过将向量输入机器学习模型,生成音乐旋律。
74.(3-2-1)机器学习模型。
75.本实施例使用的机器学习模型相比于传统的生成旋律的机器学习模型进行了改进,改进之处在于:其一,机器学习模型使用了生成式对抗网络模型;其二,将生成式对抗网络模型中的一个判别器改为两个判别器;其三,在生成器的结构上改进为关系记忆单元的模型。
76.如图2所示,生成式对抗网络模型包括一个生成器和两个判别器,两个判别器分别为歌词判别器和旋律判别器。使用生成式对抗网络模型的好处在于极大程度增加了音乐旋律生成的多样性与真实性。
77.一般生成式对抗网络模型中的生成器使用长短期记忆(lstm)结构生成数据,其中
lstm为一个包含了“遗忘门”,“记忆门”以及“输出门”的机器学习网络结构,它用于处理序列。本实施例将生成器中的lstm结构换成关系记忆单元(rmc),rmc单元也是处理序列的,与lstm相比,它可以更好地保留一个序列中单词对单词的关系。机器学习模型通过生成器可以更好地捕获用户输入的歌词中每个单词之间的关系,提高了生成音乐旋律的质量,使其更加动听,更加贴近真实的音乐。
78.如图3所示,歌词判别器主要包括一个线性层、一个双向的lstm层以及一个sigmoid激活函数层。
79.如图4所示,旋律判别器包括一个线性层、两个串联的lstm层、一个线性层及dropout模块以及一个sigmoid函数。旋律判别器的输入只有音乐三元组,它可能是来自于真实数据,也有可能是从生成器中生成的虚假的数据。通过利用旋律判别器,生成的音乐旋律效果得到显著地提高。
80.(3-2-2)对机器学习模型进行训练。
81.在网络上获取大量现有的歌曲作为数据集,如图2所示,利用数据集中的歌曲对机器学习模型进行训练。
82.利用词典模块将歌曲中的歌词转化成向量,将所述向量与噪声拼接后,将拼接后的向量输入生成器中的线性层以及关系记忆单元层,生成器输出音乐三元组,其中,噪声为一个与上述向量同样维度大小的随机数向量。
83.将音乐三元组、向量以及歌曲中的旋律输入歌词判别器中,依次通过线性层、双向lstm层以及sigmoid层,得到歌词判别器的输出。歌词判别器的输出主要包括两个部分,一个部分是歌词经过词典模块生成的向量。另一个部分是旋律,即音乐三元组形式的向量,这里提到的音乐三元组可能是来自于真实的数据,也可能是从生成器中生成的虚假的数据。若输出为真,则表示歌词判别器在这条音乐旋律生成过程中已经成功被生成器“欺骗”,生成器达到模拟人工合成音乐旋律的预想效果;若输出为假,则表示歌词判别器识别这条音乐旋律是由生成器生成得到,而不是真实的数据。
84.将音乐三元组以及歌曲中的旋律输入旋律判别器中,依次通过线性层、两个串联的lstm层、一个线性层及dropout模块以及一个sigmoid函数,得到旋律判别器的输出。
85.机器学习模型训练阶段,根据两个判别器的输出结果对生成器中的参数进行调整。两个判别器的判断结果无论是真还是假,都会对生成器有正向反馈作用,使生成器能够生成更加逼真的旋律数据。
86.在训练过程中,若两个判别器的输出结果在连续几次训练后的输出结果都保持不变,则训练结束,即机器学习模型训练结束,得到了训练好的机器学习模型。
87.(3-2-3)将向量输入训练好的机器学习模型,生成音乐旋律。
88.将向量与噪声进行拼接后输入训练好的机器学习模型中的生成器中,生成器输出音乐三元组即音乐旋律,音乐旋律为tensor形式的旋律数据。
89.具体的,生成器根据用户输入的歌词转化成的向量生成音乐旋律。
90.(3-3)根据音乐旋律和表单中的乐器信息,利用工具函数生成音乐文件。
91.如图5所示,生成器生成的音乐旋律是tensor形式的旋律数据,将其保存成npy格式的文件才可以持久化保存下来。如果要生成音乐文件,则需要使用python的numpy库读取npy文件成numpy的ndarray格式数据,然后使用前端发来的请求解析得到的乐器编号以及
刚才的ndarray格式数据经过pretty_midi将其转化成mid文件,其中pretty_midi为一个外部的python库,用于将ndarray格式数据转化成midi格式的音乐文件。由于浏览器不支持原生播放midi格式的音乐文件,在浏览器中播放音乐文件,需要通过midi2audio将midi格式转化成mp3文件即可播放。其中midi2audio为一个python外部库,用于将midi格式文件转化成mp3格式的音乐文件所用。将音乐旋律转化为常见的mp3格式的文件可以直接在浏览器中播放。
92.(4)若合成音乐文件成功,则显示合成成功的信息,否则,显示合成失败的消息并返回步骤(2)重新输入歌词,并执行后续步骤。
93.合成音乐文件成功后,服务器将音乐文件的路径返回给客户端,客户端使用ref属性动态绑定页面中音频控件中音乐文件的路径,并且自动进行音乐文件的播放,此时用户就可以听到浏览器播放系统所合成的音乐旋律,编曲过程结束。
94.如图6所示,本实施例还提供了一种基于生成式对抗网络的音乐旋律编曲系统,其架构包括客户端、网关、服务器、储存以及持续集成,其中,客户端包含了一系列由前端框架vue3构建的、用于展示的页面;网关包括一个nginx负载平衡的服务器;服务器的主体部分由django框架构建,django框架包括生成器、通信接口以及数据永久化层,其中生成器可以生成音乐旋律,是由pytorch框架构建的机器学习模块;使用mysql数据库进行数据储存,持续集成中采用docker进行部署。
95.本实施例提供的基于生成式对抗网络的音乐旋律编曲系统主要包括两个部分:系统的前端(用户端)和系统的后端(服务器端)。前端主要承载页面展示以及用户与系统的交互,包括四个模块:登录模块、生成音乐文件模块、查看模块和评论模块,其中,登录模块,用于对用户的身份信息进行验证以及提供登录系统的入口;生成音乐文件,用于根据用户输入的歌词以及选择的乐器,点击“合成按钮”后,得到生成的音乐文件,同时,在页面上展示旋律波形图;查看模块,用于登录的用户查看自己的个人信息;评论模块,用于登录的用户对本系统进行评论,用户可以给本系统留下评论,并且也可以查看别的用户给系统留下的评论。后端主要包括两个模块:合成音乐模块,用于接收到前端的请求,利用机器学习模型合成音乐文件;储存模块,用于数据存储,将用户信息以及用户评论等数据存储在数据库中。
96.具体的,系统中的评论模块和查看模块均使用mvc架构,前端的表单页面获取用户的输入数据,也采用ajax的形式通过axios传递给后端的django框架进行数据处理,之后将数据通过vue框架的响应式更新渲染到页面上。前端页面的国际化适配是采用vue-i18n通过配置不同的json格式数据,替换不同语言的字符串并且渲染在页面上。
97.具体的,系统中音乐合成模块通过表单收集用户输入的音乐歌词信息以及用户选择的乐器信息,通过ajax的方式将表单信息发送到后端的接口,具体流程为通过element-plus提供ui控件获取用户输入的字段作为歌词输入,将音乐的其他配置信息使用request中的get请求传输到后端。后端先解析前端的歌词信息,通过已经加载的词典模块将歌词转化成向量,再将这些向量进行机器学习推导之后合成一个npy格式的数据,再通过工具函数将其转化为浏览器可以支持的mp3格式或者wav格式的音乐文件储存,并且返回这个音乐文件在服务器上的路径作为response的内容,前端获取了包装了上述response而成promise数据后,异步解析得到音乐文件的路径,动态绑定页面中音频控件中音乐文件的路径,最后
进行音乐文件的播放。后端部署使用了一个基于生成式对抗网络的深度学习算法,这个机器学习算法在完成训练之后单独拿出生成器进行机器学习推导。
98.如图7所示,本实施例提供的系统还提供了超级用户的后台来管理全部音乐生成的记录的功能,主要是使用mysql存储全部的音乐生成历史。管理员登录之后可以在mysql中查询数据并发送到前台展示。新增这个功能的作用在于提供一种更加直观的方式管理音乐合成的数据。使用超级用户登录之后,可以看到系统中全部音乐旋律合成的历史。
99.如图8所示,本实施例提供的系统中的评论模块,主要是让用户直接在界面下方的输入框中输入评论,并且点击提交评论之后由前端发送axios请求到后端,后端的django解析并且将信息发送到mysql中储存起来,同时,也能在mysql中查询全部信息进行展示。新增评价功能,提供了一种网站用户与网站管理员之间交流的渠道。
100.如图9所示,本实施例提供的系统使用了nginx的网页分发以及代理功能,通过使用socket连接后端信息达到数据交换,数据持久服务器使用mysql。
101.由于上述系统具有多语言适配的界面可以供不同语言使用者使用。上述系统提供了信息管理和用户权限设置等功能,可以使得用户查看并操作相关的信息。同时,作为系统管理员登录的超级用户可以在系统后台查看到全部的音乐合成记录。与其他的音乐合成系统相比,上述系统提供了用户评论,并且用户可以查看自己的音乐合成历史以及选择不同的乐器,极大程度上丰富了用户使用的功能性。
102.本领域技术人员可以理解,实现上述实施例的方法中的全部或部分步骤可以通过程序来指令相关的硬件来完成,相应的程序可以存储于计算机可读存储介质中。
103.应当注意,尽管在附图中以特定顺序描述了上述实施例的方法操作,但是这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
104.实施例2:
105.如图10所示,本实施例提供了一种基于生成式对抗网络的音乐旋律编曲装置,该装置包括音乐文件合成单元1001和音乐文件播放单元1002,其中:
106.音乐文件合成单元1001,用于接收客户端发送的表单,根据表单中的信息,利用机器学习模型合成音乐文件;其中所述机器学习模型采用改进的生成式对抗网络模型;所述改进的生成式对抗网络模型将一个判别器改进为两个判别器,同时将生成器中的长短期记忆结构改进为关系记忆单元;
107.音乐文件播放单元1002,用于将所述音乐文件的路径返回给客户端,以使客户端使用ref属性动态绑定页面中音频控件中所述音乐文件的路径,并且自动进行所述音乐文件的播放。
108.本实施例中各个单元的具体实现可以参见上述实施例1,在此不再一一赘述;需要说明的是,本实施例提供的装置仅以上述各功能单元的划分进行举例说明,在实际应用中,可以根据需要而将上述功能分配由不同的功能单元完成,即将内部结构划分成不同的功能单元,以完成以上描述的全部或者部分功能。
109.实施例3:
110.本实施例提供了一种服务器,该服务器可以为计算机,如图11所示,其通过系统总
线1101连接的处理器1102、存储器、输入装置1103、显示器1104和网络接口1105,该处理器用于提供计算和控制能力,该存储器包括非易失性存储介质1106和内存储器1107,该非易失性存储介质1106存储有操作系统、计算机程序和数据库,该内存储器1107为非易失性存储介质中的操作系统和计算机程序的运行提供环境,处理器1102执行存储器存储的计算机程序时,实现上述实施例1的音乐旋律编曲方法,如下:
111.接收客户端发送的表单,根据表单中的信息,利用机器学习模型合成音乐文件;其中所述机器学习模型采用改进的生成式对抗网络模型;所述改进的生成式对抗网络模型将一个判别器改进为两个判别器,同时将生成器中的长短期记忆结构改进为关系记忆单元;
112.将所述音乐文件的路径返回给客户端,以使客户端使用ref属性动态绑定页面中音频控件中所述音乐文件的路径,并且自动进行所述音乐文件的播放。
113.实施例4:
114.本实施例提供了一种存储介质,该存储介质为计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时,实现上述实施例1的音乐旋律编曲方法,如下:
115.接收客户端发送的表单,根据表单中的信息,利用机器学习模型合成音乐文件;其中所述机器学习模型采用改进的生成式对抗网络模型;所述改进的生成式对抗网络模型将一个判别器改进为两个判别器,同时将生成器中的长短期记忆结构改进为关系记忆单元;
116.将所述音乐文件的路径返回给客户端,以使客户端使用ref属性动态绑定页面中音频控件中所述音乐文件的路径,并且自动进行所述音乐文件的播放。
117.需要说明的是,本实施例的计算机可读存储介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
118.以上所述,仅为本发明专利较佳的实施例,但本发明专利的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明专利所公开的范围内,根据本发明专利的技术方案及其发明构思加以等同替换或改变,都属于本发明专利的保护范围。

技术特征:


1.一种基于生成式对抗网络的音乐旋律编曲方法,其特征在于,所述方法包括:接收客户端发送的表单,根据表单中的信息,利用机器学习模型合成音乐文件;其中所述机器学习模型采用改进的生成式对抗网络模型;所述改进的生成式对抗网络模型将一个判别器改进为两个判别器,同时将生成器中的长短期记忆结构改进为关系记忆单元;将所述音乐文件的路径返回给客户端,以使客户端使用ref属性动态绑定页面中音频控件中所述音乐文件的路径,并且自动进行所述音乐文件的播放。2.根据权利要求1所述的音乐旋律编曲方法,其特征在于,所述表单中的信息包括歌词和乐器信息;所述根据表单中的信息,利用机器学习模型合成音乐文件,包括:利用词典模块,将所述歌词转化成向量;根据所述向量,利用机器学习模型生成音乐旋律;根据所述音乐旋律和乐器信息,生成音乐文件。3.根据权利要求2所述的音乐旋律编曲方法,其特征在于,所述根据所述向量,利用机器学习模型生成音乐旋律,包括:在网络上获取大量现有的歌曲作为数据集,利用数据集中的歌曲对所述机器学习模型进行训练;在训练阶段过程中,根据两个判别器的输出结果对生成器中的参数进行调整;将所述向量输入训练好的机器学习模型中,通过生成器输出音乐旋律。4.根据权利要求3所述的音乐旋律编曲方法,其特征在于,两个判别器分别为歌词判别器和旋律判别器,其中,所述歌词判别器包括线性层、双向lstm层以及sigmoid函数,所述旋律判别器包括线性层、两个串联的lstm层、线性层及dropout模块以及sigmoid函数;所述利用数据集中的歌曲对所述机器学习模型进行训练,包括:利用词典模块将歌曲中的歌词转化成向量,将所述向量与噪声拼接后输入生成器中,生成器输出音乐旋律;其中,所述噪声为与所述向量同样维度大小的随机数向量;将所述音乐旋律、向量以及歌曲中的旋律输入所述歌词判别器中,依次通过线性层、双向lstm层以及sigmoid函数,得到歌词判别器的输出;将所述音乐旋律以及歌曲中的旋律输入所述旋律判别器中,依次通过线性层、两个串联的lstm层、线性层及dropout模块以及sigmoid函数,得到旋律判别器的输出;通过两个判别器的输出对生成器产生正向反馈作用,使生成器能够生成更加逼真的旋律数据。5.根据权利要求2所述的音乐旋律编曲方法,其特征在于,所述根据所述音乐旋律和乐器信息,生成音乐文件,包括:将tensor格式的音乐旋律保存为npy文件;读取所述npy文件为ndarray文件;将所述ndarray文件和乐器信息转化为mid文件;将所述mid文件转化成mp3文件或wav文件,即得到音乐文件。6.一种基于生成式对抗网络的音乐旋律编曲装置,其特征在于,所述装置包括:音乐文件合成单元,用于接收客户端发送的表单,根据表单中的信息,利用机器学习模型合成音乐文件;其中所述机器学习模型采用改进的生成式对抗网络模型;所述改进的生成式对抗网络模型将一个判别器改进为两个判别器,同时将生成器中的长短期记忆结构改
进为关系记忆单元;音乐文件播放单元,用于将所述音乐文件的路径返回给客户端,以使客户端使用ref属性动态绑定页面中音频控件中所述音乐文件的路径,并且自动进行所述音乐文件的播放。7.一种基于生成式对抗网络的音乐旋律编曲系统,其特征在于,包括客户端和服务器,其中:所述客户端由vue3框架构建,用于页面展示以及用户与系统的交互,包括生成音乐文件模块;所述生成音乐文件模块,用于根据用户在表单页面输入的歌词以及选择的乐器,通过ajax的方式将表单信息发送至服务器进行处理,在接收到服务器返回的音乐文件的路径后,使用ref属性动态绑定页面中音频控件中音乐文件的路径,并且自动进行音乐文件的播放;所述服务器的主体部分由django框架构建,包括合成音乐模块;所述合成音乐模块,用于根据接收到的客户端发送的表单,利用机器学习模型合成音乐文件并将音乐文件的路径返回至客户端。8.根据权利要求7所述的音乐旋律编曲系统,其特征在于,所述客户端还包括登录模块、查看模块和评论模块;其中,所述登录模块,用于对用户的身份信息进行验证以及提供登录系统的入口;所述查看模块,用于登录用户根据个人身份的权限查看相应的信息;所述评论模块,用于提供用户与管理员之间进行交流的渠道,主要通过用户直接在界面下方的输入框中输入评论,点击提交评论之后发送axios请求到服务器,服务器通过django对其进行解析并将解析后的信息发送至数据库中储存。9.根据权利要求7所述的音乐旋律编曲系统,其特征在于,所述系统还提供了超级用户,用于管理和查看全部音乐生成的历史记录,所述历史记录存储在数据库中。10.一种服务器,包括处理器以及用于存储处理器可执行程序的存储器,其特征在于,所述处理器执行存储器存储的程序时,实现权利要求1-5任一项所述的音乐旋律编曲方法。

技术总结


本发明公开了一种基于生成式对抗网络的音乐旋律编曲方法、装置及系统,所述方法包括:接收客户端发送的表单,根据表单中的信息,利用机器学习模型合成音乐文件;其中所述机器学习模型采用改进的生成式对抗网络模型;所述改进的生成式对抗网络模型将一个判别器改进为两个判别器,同时将生成器中的长短期记忆结构改进为关系记忆单元;将所述音乐文件的路径返回给客户端,以使客户端使用ref属性动态绑定页面中音频控件中所述音乐文件的路径,并且自动进行所述音乐文件的播放。本发明通过采用生成式对抗网络模型,极大程度增加了音乐旋律生成的多样性与真实性,生成的音乐旋律更加优美动听;通过合成音乐文件,使适用人扩展到一般人。般人。般人。


技术研发人员:

胡剑桥 陶乾

受保护的技术使用者:

华南理工大学

技术研发日:

2022.11.10

技术公布日:

2023/3/7

本文发布于:2024-09-22 16:44:56,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/1/70629.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:所述   旋律   音乐文件   模型
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议