Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

网易互娱AI Lab专栏

全球首个落地的舞蹈动画合成系统,网易互娱AI Lab新技术入选SIGGRAPH 2021

AI 合成舞蹈的方法百家争鸣,但能够真正落地、用于实际生产的成熟系统却是初次面世。

近日,网易互娱 AI Lab 在 SIGGRAPH 2021 官方精选预告片上展现了其首个符合实际生产环境应用要求的舞蹈动画合成系统 ChoreoMaster。该系统可依据音乐风格生成爵士、二次元、街舞等不同类型的舞蹈动画,目前已为网易旗下的多款游戏项目产出了数个小时的高质量舞蹈动作资源,先来看段精彩的 demo 吧。

网易互娱 AI LAB 与清华大学合作对该方案进行了系统性技术梳理,并撰写论文《ChoreoMaster: Choreography-Oriented Music-Driven Dance Synthesis》。该文章已被 SIGGRAPH 2021 接收,入选 SIGGRAPH 2021 Technical Papers Preview Trailer(精选预告片),同时也将在计算机动漫节( Computer Animation Festival ,CAF)上播放。

  • 论文地址:https://netease-gameai.github.io/ChoreoMaster/Paper.pdf

  • 项目地址:https://netease-gameai.github.io/ChoreoMaster/

舞蹈动画在游戏和影视行业已非常普遍,目前业内制作舞蹈动画大多采用的是手 K 或动捕,生产一段高质量的舞蹈动画依然需要耗费大量的时间和精力。因此 AI 合成舞蹈成为时下热门的研究课题。但舞蹈作为一种独立的艺术形式,其动作与配乐在风格、节奏和结构等方面无一不透露出编舞学的专业知识,想要稳定输出高质量的结果并非易事。尽管业界也曾出现过多项红极一时的研究成果,如 AI Choreographer 和 DanceNet3D,然而这些方案并未落地于实际商业生产应用。

从左到右分别为 AI Choreographer、DanceNet3D 和 ChoreoMaster 输入 hip hop 乐曲后的生成效果

历经两年多的潜心研发,网易互娱 AI LAB 的研发团队提出了符合实际生产环境应用要求的 AI 舞蹈动画合成方案 ChoreoMaster。该方案的亮点在于:除了能够快速稳定地输出一段符合编舞美学、符合多种舞种风格、连贯自然的舞蹈动画以外,还灵活支持丰富的约束方式来指导算法按照用户期望的方向合成舞蹈动画,如可替换或删除指定片段、预设舞蹈轨迹和限制舞蹈范围等。
网易互娱 AI LAB 的研究者们从打造实际生产力工具的角度对 AI 舞蹈合成问题进行了新的思考。作为一款美术资源生产工具,美术同事对舞蹈动画合成系统有两方面的期待。首先,必须能够持续、稳定地输出符合落地质量标准的舞蹈动作资源;其次,合成的过程必须具备足够的可解释性和可控性,能以最直观的方式让用户快速获得期望的结果。

已有方案

虽然目前学术界已经有大量关于「基于音乐的舞蹈合成问题」的研究工作,但并没有一个已有算法框架能符合上述两方面的期待。从技术原理上划分,目前的方案可以被分成两个流派:基于传统图优化的方案和基于深度生成模型的方案。

基于传统图优化的方案构建于「基于图的动作合成(graph-based motion synthesis)」框架。其思路为对已有舞蹈动作数据进行切割分,形成大量舞蹈动作片段,并构建一个关于舞蹈动作片段的动作图(motion graph),图的每个节点对应一个舞蹈动作片段,图的每条有向边标记了两个邻接节点之间的过渡代价。这个过渡代价度量了一个动作片段是否能平滑地衔接在另一个动作片段后面。通过定义一个关于音乐片段和舞蹈动作片段匹配度的经验函数,基于音乐的舞蹈动画合成问题就转化成了在动作图中寻找一条与输入音乐匹配度尽量高、同时内部过渡代价尽量小的路径(walk)。该优化问题可以用标准的隐马尔可夫模型(HMM)进行建模,并使用 Viterbi 或 Beam-Search 算法高效求解。这套图优化框架具备优雅、完备的理论保障,能够以鲁棒、可解释、可控的方式合成平滑的动作,也因此成为了图形学领域处理动作合成问题的标准解决方案。

然而,目前基于图优化的方法生成的舞蹈动作远远达不到专业美术的审美标准。一方面,基于浅层人工特征定义的音乐 - 舞蹈匹配度并不能真实地刻画音乐和舞蹈的内在关联;另一方面,一段完整的舞蹈也远远不止将一批舞蹈动作片段平滑地拼接在一起那么简单,即使每个片段都非常美观。专业美术在看了这些方法合成的结果后,都会给出「动作拼凑感强」、「音乐动作契合度差」、「缺乏编舞合理性」等反馈。

深度学习技术兴起后,深度生成模型在图像、语音、文本等诸多领域的任务中取得了令人瞩目的成绩,也很自然地被应用到了基于音乐的舞蹈合成任务中。从生成模型的角度来看,基于音乐的舞蹈合成任务属于经典的针对时序数据的跨模态翻译问题,前文展示的 DanceNet3D 和 AI Choreographer 方案都遵循这一思路。得益于深度人工神经网络在特征提取和表征方面的强大能力,只要数据充足并且训练充分,这类方法都可以在一定程度上学习到音乐和舞蹈之间的一些深层次关联。

然而,与其他领域面临的问题一样,基于深度生成模型的方法想要在实际生产环境落地还有很长的路要走。首先,人工神经网络属于众所周知的黑盒模型,其合成的结果几乎没有任何的可解释性和可控性。其次,从机器学习的角度来说,人工神经网络理解数据本质属性的方式是将其投影到低维隐空间。在这个投影过程中,属于高频分量的动作细节往往会被当成不重要的噪音而被故意丢弃。由于丢失了这些高频信息,深度生成模型合成的舞蹈动作很容易表现得很「呆滞」,甚至有些时候连流畅性都难以保证,更不要说达到专业美术的预期。最后,高质量三维舞蹈动作数据的生产成本要远远高于图像、语音、文字等形式的数据,可供训练的高质量音乐 - 舞蹈数据非常有限。舞蹈本身又是一门比较复杂的艺术形式,这导致了目前所有的深度生成模型的泛化性都很受限,模型在处理训练数据集之外的音乐时,效果难以保证,很容易输出奇怪的结果。

ChoreoMaster 方案

在尝试了多种方案,但合成的结果屡屡不尽如人意之后,网易互娱 AI LAB 的研究团队开始从舞蹈艺术角度对结果进行审视,并系统性地学习了编舞学(Choreography)这门独立学科。研究者们从编舞学庞杂的主观经验性规律中,总结出了一些普适规则。在与专业美术持续不断的迭代中,大家发现只要合成的舞蹈能够遵循这些规律,就能达到美术的质量要求,甚至能够获得专业编舞老师的认可。

这些普适的编舞规则可以总结为:
  • 风格相契合,即音乐和舞蹈动作所传达出来的情绪和氛围应该是相似的;

  • 节奏相匹配,即音乐的节奏点和舞蹈的节奏点应该是同步的,并且这些节奏点出现的模式一般呈现明显的规律性和周期性; 

  • 结构相呼应,即音乐和动作的组织结构应该是一致的,如重复的音乐段落(主歌、副歌等)对应的舞蹈动作段落一般也是重复的,重复的音乐小节对应的舞蹈动作小节一般是镜像对称的。

基于这些编舞学规则、并结合已有方案的优缺点,网易互娱 AI LAB 的研究者提出了一种全新的基于音乐的舞蹈合成系统——ChoreoMaster。该系统能够以稳定、可解释、可控的方式持续输出符合落地标准的高质量舞蹈动作,是业界首个 production-ready 的舞蹈合成工具。

ChoreoMaster 的技术方案如上图所示,包含两个模块:面向编舞的音乐 - 舞蹈 Embedding(左)和面向编舞的舞蹈动作合成(右)。其中,音乐 - 舞蹈 Embedding 模块利用深度学习技术,从高质量音乐 / 舞蹈数据库中构建音乐 - 舞蹈在风格、节奏契合度方面的度量,用于定量描述音乐片段和舞蹈片段之间的风格匹配度和节奏匹配度;而舞蹈动作合成模块则对传统的图优化框架进行扩展,在动作图构建和优化目标函数中融入风格、节奏和结构方面的编舞学规律。下面分别对这两个模块进行简单介绍。

面向编舞的音乐 - 舞蹈 Embedding

该模块的目标是将音乐和舞蹈的风格相契合和节奏匹配度这两条主观性规律转化成可计算的客观定量表达。因此,该模块整体是一个跨模态 Embedding 架构,包含 Style(风格)和 Rhythm(节奏)两个分支,分别用于将音乐 / 动作片段从各自的模态空间映射为同一低维空间(32 维)的 Style Embedding 和同一低维空间(8 维)的 Rhythm Embedding。网络结构如下图所示。

在 Style 方面,ChoreoMaster 首先利用有风格标签的音乐数据和动作数据独立训练两个分类网络,音乐分类网络采用了在 music tagging 领域 SOTA 的卷积循环 backbone,包含四个卷积层和两个 GRU 层。动作分类网络则采用了对称的设计,只是将其中的卷积层替换成了经常应用于骨骼动画数据的图卷积层。由于这两个网络独立训练,所以这个阶段并不需要配对的音乐舞蹈数据。

在两个分支各自训练到收敛的基础上,ChoreoMaster 利用配对的音乐和舞蹈数据对这两个分支进行联合训练,训练目标是让两个网络在尽量保持自身分类准确率的前提下,将配对的音乐和舞蹈数据映射为距离尽量小的特征向量。经过独立 + 联合两阶段的训练,音乐和动作两个分支最后一层输出的 32 维向量就构成了音乐和动作的 Style Embedding,两个 Style Embedding 之间的欧氏距离就可以定量度量音乐 - 音乐、音乐 - 动作、动作 - 动作之间的风格契合度。

与 Style 不同的是,音乐的 Rhythm 是可以从乐理角度给出明确定义的。在编曲时,音乐都会按均等的时间单位进行组织,其中最小的单位就是一拍。所谓 Rhythm 指的就是音乐中强拍和弱拍的组合规律。一首音乐中的强、弱拍的组合并不是杂乱无章的,而是会呈现出一定的规律,表达这种规律的最小单位是小节(meter),同一首音乐中每小节的长度也是固定的。例如 3/4 拍音乐,指的是 4 分音符为一拍,每小节 3 拍。2/4、3/4、4/4 这种拍号标记称为音乐的 Time Signature。

由于顿音符、连音符、修饰符等标记的存在,在实际演奏的音乐中,小节内的重拍并不一定严格出现在 Time Signature 所定义的位置,还会存在空拍、半拍等情况。因此 ChoreoMaster 将 Rhythm Embedding 表示为一个称为 Rhythm Signature 的 0-1 向量,其中的偶数位和奇数位分别对应音乐 Time Signature 中的主拍和半拍位置,每个位置的值则表示该位置是否存在实际的乐器节奏点(1:存在,0 不存在)。Rhythm Signature 中连续的 0 对应了乐谱中的连奏(legato)。由于收集的数据集和业务实际需求基本都是 4 拍音乐,因此在 ChoreoMaster 目前的实现中,Rhythm Signature 被定义为 8 位,如下图所示。

两个 Rhythm Signature 之间的距离可以定义为带权曼哈顿距离(偶数位权重 1,奇数位权重 0.5)。这样,8 位的 Rhythm Signature 天然构成了一种低维 Embedding。理论上所有可能的 Rhythm Signature 多达 256 种,但是在让专业人员对数据库中所有成对的音乐和舞蹈数据进行标注后,研究人员统计发现,常见的 Rhythm Signature 其实只有 13 种。因此 Rhythm 分支的目标可以通过一个简单的分类网络进行实现,该网络同样包含音乐和动作两个分支,各自以 2 个卷积层 + 1 个全连接层进行特征提取,之后送入权重共享的 3 个全连接层进行分类。

与 Style 分支不同的是,节奏信息更直观地反应在音乐的强弱变化和动作的速度、加速度等信息中,因此 Rhythm 分支以音乐信号的 energy、onset 和动作数据骨骼点的速度、加速度、触地等高层信息作为输入。此外,由于 Rhythm Signature 的分布与音乐 / 舞蹈的风格存在明显的相关性(如国风舞蹈的 Rhythm Signature 中会包含更多的 0,街舞的 Rhythm Signature 中则会包含更多的半拍),因此音乐 / 舞蹈的 Style Embedding 信息也被送入了 Rhythm 分支,跟 Rhythm 特征拼接在一起,送入权重共享的三个全连接分类层。

从前面的介绍中可以发现,ChoreoMaster 没有像很多其他基于深度学习的音乐舞蹈合成框架一样,用一个统一的网络来构建音乐 - 舞蹈之间的跨模态关联,而是采用了一种解耦的方式来处理 Style 和 Rhythm。站在实用的角度来看,ChoreoMaster 的这种设计有两方面考虑:一方面,将 Style 和 Rhythm 解耦,可以提升后续合成算法的可解释性和可控性;另一方面,独立的 Rhythm 分支也可以更好地融入乐理先验,提升网络的可用性和泛化性。

面向编舞的舞蹈动作合成

为了保证系统的鲁棒性、可解释性和可控性,ChoreoMaster 选择了图优化框架来实现舞蹈动作的合成。与之前的图优化方案不同的是,ChoreoMaster 在音乐舞蹈合成场景下,对「基于图的动作合成(graph-based motion synthesis)」框架做了充分的扩展,将风格、节奏和结构方面的编舞学规律融入到了动作图构建和图优化目标函数中。前文已经简单介绍过基于图优化的舞蹈合成思路,这里重点列举一下 ChoreoMaster 的不同点。

在动作图构建方面:

(1)对舞蹈动作以小节(meter)为单位进行切分,而不是以节拍(beat)为单位进行切分,也就是说动作图的每个节点对应了一个完整的舞蹈动作小节,这样可以保证合成的舞蹈动作中每个小节内部组织方式的合理性;
(2)在计算动作图节点之间的过渡代价时,除了传统的连续性代价,还引入了以 32 维 Style Embedding 进行度量的风格兼容性代价,这样可以有效避免合成的舞蹈动作中出现突兀的风格跳变。如下图中展示的一样,如果只有动作连续性的代价,可爱风动作很容易过渡到性感风或炫酷风动作;

(3)采用了一些数据增广手段,对动作图的节点数进行扩充,扩充方式包括左右镜像(下图左),上下半身融合(下图右)和小节重组。其中,小节重组指的是从「1234」和「abcd」两个小节,生成两个新的小节「12cd」和「ab34」,前提是「1234」和「abcd」的 Rhythm Signature 一致、Style Embedding 非常接近,并且「12」和「cd」、「ab」和「34」可以平滑地拼接在一起。上下半身融合和小节重组生成的新数据,全部都进行了人工校验。

在优化目标方面:
  • 以 Style Embedding 和 Rhythm Signature 之间的距离来度量音乐和舞蹈小节之间的匹配度,即 HMM(隐马尔可夫模型)中的 data term;

  • 以动作图边上保存的过渡代价来定义 HMM 的 transition term;

  • 音乐和舞蹈的结构一致性规律则被转化成了重复(repeat)和镜像(mirror)两种约束,并松弛为惩罚项融入了 HMM 的目标函数中。两种约束都只会发生在内容非常相似的音乐小节之间。当检测到两个音乐小节内容一致时,如果这两个小节属于不同的音乐章节(也叫乐句,phrase),则这两个小节对应的舞蹈动作应该是重复的,如重复的主歌、副歌对应的动作也是重复的;如果这两个小节属于相同的音乐章节,则这两个小节对应的舞蹈动作应该是互相镜像的,如左手一个慢动作、右手一个慢动作。 

理论舞蹈动画合成SIGGRAPH 2021网易互娱 AI Lab
1
相关数据
清华大学机构

清华大学(Tsinghua University),简称“清华”,由中华人民共和国教育部直属,中央直管副部级建制,位列“211工程”、“985工程”、“世界一流大学和一流学科”,入选“基础学科拔尖学生培养试验计划”、“高等学校创新能力提升计划”、“高等学校学科创新引智计划”,为九校联盟、中国大学校长联谊会、东亚研究型大学协会、亚洲大学联盟、环太平洋大学联盟、清华—剑桥—MIT低碳大学联盟成员,被誉为“红色工程师的摇篮”。 清华大学的前身清华学堂始建于1911年,因水木清华而得名,是清政府设立的留美预备学校,其建校的资金源于1908年美国退还的部分庚子赔款。1912年更名为清华学校。1928年更名为国立清华大学。1937年抗日战争全面爆发后南迁长沙,与北京大学、南开大学组建国立长沙临时大学,1938年迁至昆明改名为国立西南联合大学。1946年迁回清华园。1949年中华人民共和国成立,清华大学进入了新的发展阶段。1952年全国高等学校院系调整后成为多科性工业大学。1978年以来逐步恢复和发展为综合性的研究型大学。

http://www.tsinghua.edu.cn/
相关技术
网易机构

网易成立于1997年6月24日,是中国领先的互联网技术公司,为用户提供免费邮箱、游戏、搜索引擎服务,开设新闻、娱乐、体育等30多个内容频道,及博客、视频、论坛等互动交流,网聚人的力量。

https://www.163.com/
深度学习技术

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

权重技术

线性模型中特征的系数,或深度网络中的边。训练线性模型的目标是确定每个特征的理想权重。如果权重为 0,则相应的特征对模型来说没有任何贡献。

机器学习技术

机器学习是人工智能的一个分支,是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、计算复杂性理论等多门学科。机器学习理论主要是设计和分析一些让计算机可以自动“学习”的算法。因为学习算法中涉及了大量的统计学理论,机器学习与推断统计学联系尤为密切,也被称为统计学习理论。算法设计方面,机器学习理论关注可以实现的,行之有效的学习算法。

收敛技术

在数学,计算机科学和逻辑学中,收敛指的是不同的变换序列在有限的时间内达到一个结论(变换终止),并且得出的结论是独立于达到它的路径(他们是融合的)。 通俗来说,收敛通常是指在训练期间达到的一种状态,即经过一定次数的迭代之后,训练损失和验证损失在每次迭代中的变化都非常小或根本没有变化。也就是说,如果采用当前数据进行额外的训练将无法改进模型,模型即达到收敛状态。在深度学习中,损失值有时会在最终下降之前的多次迭代中保持不变或几乎保持不变,暂时形成收敛的假象。

数据库技术

数据库,简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据运行新增、截取、更新、删除等操作。 所谓“数据库”系以一定方式储存在一起、能予多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。

深度生成模型技术

深度生成模型基本都是以某种方式寻找并表达(多变量)数据的概率分布。有基于无向图模型(马尔可夫模型)的联合概率分布模型,另外就是基于有向图模型(贝叶斯模型)的条件概率分布。前者的模型是构建隐含层(latent)和显示层(visible)的联合概率,然后去采样。基于有向图的则是寻找latent和visible之间的条件概率分布,也就是给定一个随机采样的隐含层,模型可以生成数据。 生成模型的训练是一个非监督过程,输入只需要无标签的数据。除了可以生成数据,还可以用于半监督的学习。比如,先利用大量无标签数据训练好模型,然后利用模型去提取数据特征(即从数据层到隐含层的编码过程),之后用数据特征结合标签去训练最终的网络模型。另一种方法是利用生成模型网络中的参数去初始化监督训练中的网络模型,当然,两个模型需要结构一致。

准确率技术

分类模型的正确预测所占的比例。在多类别分类中,准确率的定义为:正确的预测数/样本总数。 在二元分类中,准确率的定义为:(真正例数+真负例数)/样本总数

映射技术

映射指的是具有某种特殊结构的函数,或泛指类函数思想的范畴论中的态射。 逻辑和图论中也有一些不太常规的用法。其数学定义为:两个非空集合A与B间存在着对应关系f,而且对于A中的每一个元素x,B中总有有唯一的一个元素y与它对应,就这种对应为从A到B的映射,记作f:A→B。其中,y称为元素x在映射f下的象,记作:y=f(x)。x称为y关于映射f的原象*。*集合A中所有元素的象的集合称为映射f的值域,记作f(A)。同样的,在机器学习中,映射就是输入与输出之间的对应关系。

噪音技术

噪音是一个随机误差或观测变量的方差。在拟合数据的过程中,我们常见的公式$y=f(x)+\epsilon$中$\epsilon$即为噪音。 数据通常包含噪音,错误,例外或不确定性,或者不完整。 错误和噪音可能会混淆数据挖掘过程,从而导致错误模式的衍生。去除噪音是数据挖掘(data mining)或知识发现(Knowledge Discovery in Database,KDD)的一个重要步骤。

目标函数技术

目标函数f(x)就是用设计变量来表示的所追求的目标形式,所以目标函数就是设计变量的函数,是一个标量。从工程意义讲,目标函数是系统的性能标准,比如,一个结构的最轻重量、最低造价、最合理形式;一件产品的最短生产时间、最小能量消耗;一个实验的最佳配方等等,建立目标函数的过程就是寻找设计变量与目标的关系的过程,目标函数和设计变量的关系可用曲线、曲面或超曲面表示。

隐马尔可夫模型技术

隐马尔可夫模型(Hidden Markov Model,HMM)是统计模型,它用来描述一个含有隐含未知参数的马尔可夫过程。其难点是从可观察的参数中确定该过程的隐含参数。然后利用这些参数来作进一步的分析,例如模式识别。

生成模型技术

在概率统计理论中, 生成模型是指能够随机生成观测数据的模型,尤其是在给定某些隐含参数的条件下。 它给观测值和标注数据序列指定一个联合概率分布。 在机器学习中,生成模型可以用来直接对数据建模(例如根据某个变量的概率密度函数进行数据采样),也可以用来建立变量间的条件概率分布。

音乐分类技术

音乐分类是指将音乐样本依据其特点划分为某个类别或类型。

动作分类技术

动作分类任务涉及从视频剪辑(一串二维帧序列)中识别不同的动作,并对动作进行归类。

暂无评论
暂无评论~