AI 搞说唱:双押算什么,我还会 4 押 | ACL 2021
下面这段歌词是 AI 生成的,你敢信?
甚至表达出了强烈的情绪,从对长大的地方的回忆讲起,用简朴的菜表现简朴的爱,最后讲到对外婆的思念。
我看哭了,你呢?
这首歌词的作者是一个叫DeepRapper ( 深度说唱 ) 的 AI,由香港科技大学、南京理工、清华、复旦和微软亚洲研究院的研究人员合力打造。
为什么叫 Rapper?因为歌词里甚至还考虑到了速度和节奏。
像下图中,括号里是时间戳,标星号的地方就代表重音。
毕竟语言生成还好说,基于 Transformer 的语言模型现在已经很成熟了。
但是如何让 Transformer 掌握节奏感?
歌词的文本是一个序列,节奏在时间轴上其实也可以编码成一个序列。
歌词倒着写,双押也不难
押韵的原理其实很简单,用拼音来表示汉字,约束韵母部分就可以了。
但说唱的特点是每句歌词在句尾押韵,每句的长短不定。
按照传统的方法,在训练中还得额外标记哪一步到句尾了,需要添加约束。
DeepRapper 的办法是把每一句歌词倒过来,从右向左生成。
把说唱歌曲按这个指标做统计,然后把比值为 3 的定义为中速,小于 3 的是快速,大于 3 的就是慢速。
最终,整个网络架构的设计是这样的:
这篇论文除了训练出 DeepRapper 之外,还有一个成果——
第一个兼顾了歌词与节奏编码的中文饶舌数据集 D-RAP。
先收集大量说唱歌曲,把歌词信息和节拍信息分别在时间轴上编码,再汇合在一起。
尽管说唱近几年很火,但中文说唱歌曲总数量还是太少了,根本喂不饱需要大量训练数据的 Transformer。
针对这个问题,研究团队又想出一个好主意:其他流派的歌曲其实也会押韵,甚至还没人唱过的填词都可以加进来。
最后收集到了 1.6 万首说唱,5 万多首其他歌曲,和 27 万篇没有节拍信息的纯歌词。
论文中提到,相关代码未来会发在 Github 上。
下一步改进的方向有扩大数据集,进一步挖掘预训练语言模型的潜力。以及如何避免数据集中的 Bias 被带到模型中。
还要扩展多语言能力,毕竟 Rap 起源于国外,要是歌词中时不时加点英语,就更对味了。
最后,再欣赏一篇 DeepRapper 创作的歌词吧。
https://deeprapper.github.io
论文地址:
https://arxiv.org/abs/2107.01875
欢迎光临 澳洲同城网 (https://www.tongchengau.com/) | Powered by Discuz! X3.2 |