【论文阅读】MDM : HUMAN MOTION DIFFUSION MODEL
1 引言
人体动作生成是计算机动画中的一项基本任务,其应用范围从游戏到机器人。由于多种原因,这是一个具有挑战性的领域,包括可能动作的巨大范围,以及获取高质量数据的难度和成本。对于最近出现的文本到动作(text-to-motion)设置,其中动作是从自然语言生成的,另一个固有的问题是数据标注。例如,标签“踢”(kick)可能指足球踢,也可能指空手道踢。同时,对于一个特定的踢动,有许多种描述方式,从如何执行到它所传达的情绪,这构成了一个多对多(many-to-many)问题。当前的方法在该领域已取得成功,展示了从文本到动作的合理映射(Petrovich et al., 2022; Tevet et al., 2022; Ahuja & Morency, 2019)。然而,所有这些方法仍然限制了学习到的分布,因为它们主要采用自编码器或VAE(Kingma & Welling, 2013)(分别暗示一对一映射或正态潜在分布)。在这方面,扩散模型是人体动作生成的更好选择,因为它们不受目标分布假设的限制,并且以其能够很好地表达我们所描述的多对多分布匹配问题而闻名。
扩散模型(Sohl-Dickstein et al., 2015; Song & Ermon, 2020; Ho et al., 2020)是一种生成方法,在计算机视觉和图形社区中引起了广泛关注。当训练用于条件生成时,最近的扩散模型(Ramesh et al., 2022; Saharia et al., 2022b)在图像质量和语义方面取得了突破。这些模型的能力也已在其他领域得到证实,包括视频(Ho et al., 2022)和3D点云(Luo & Hu, 2021)。然而,这些模型的问题在于它们对资源需求巨大且难以控制。
本文介绍了运动扩散模型(MDM)——一种为人体动作领域精心调整的基于扩散的生成模型。MDM基于扩散,得益于上述领域多对多表达的固有特性,这体现在最终的动作质量和多样性上(图1)。此外,MDM结合了动作生成领域中已有的见解,使其显著更轻量化和更可控。
首先,MDM采用Transformer作为骨干网络,而非普遍使用的U-net(Ronneberger et al., 2015)。正如我们所展示的,我们的架构(图2)轻量级,更适合动作数据(表示为关节集合)的时间和非空间特性。大量的动作生成研究致力于使用几何损失进行学习(Kocabas et al., 2020; Harvey et al., 2020; Aberman et al., 2020)。例如,一些研究通过调节动作速度(Petrovich et al., 2021)来防止抖动,或专门使用专用项(Shi et al., 2020)来处理足部滑动。与这些工作一致,我们展示了在扩散设置中应用几何损失可以改善生成效果。
MDM框架具有通用设计,支持不同形式的条件生成。我们展示了三项任务:文本到动作、动作到动作和无条件生成。我们以无分类器方式(Ho & Salimans, 2022)训练模型,这使得在多样性与保真度之间进行权衡,并能够从同一模型进行条件和无条件采样。在文本到动作任务中,我们的模型生成了连贯的动作(图1),在HumanML3D(Guo et al., 2022a)和KIT(Plappert et al., 2016)基准测试中取得了最先进的结果。此外,我们的用户研究表明,人类评估者在42%的时间里更喜欢我们生成的动作而非真实动作(图4(a))。在动作到动作任务中,MDM超越了最先进的方法(Guo et al., 2020; Petrovich et al., 2021),尽管它们是专门为这项任务设计的,并在常用的HumanAct12(Guo et al., 2020)和UESTC(Ji et al., 2018)基准测试中表现出色。
最后,我们还展示了动作补全和编辑。通过调整扩散图像修复(Song et al., 2020b; Saharia et al., 2022a),我们设置了动作前缀和后缀,并使用我们的模型来填补空白。在文本条件下这样做,可以引导MDM用特定动作填补空白,同时保持原始输入的语义。通过在关节空间而非时间上进行修复,我们还展示了特定身体部位的语义编辑,而不改变其他部位(图3)。
总的来说,我们引入了运动扩散模型(MDM)——一个运动框架,它在多项动作生成任务中实现了最先进的质量,并且仅需大约三天的训练时间,使用单个中端GPU。它支持几何损失,这对于扩散设置而言并非无关紧要,但对于运动领域至关重要,并提供了结合最先进生成能力与深思熟虑的领域知识的组合。
2 相关工作
2.1 人体动作生成
神经动作生成,从动作捕捉数据中学习,可以由任何描述动作的信号进行条件化。许多工作使用动作本身的一部分作为指导。一些工作从前缀姿态预测动作(Fragkiadaki et al., 2015; Martinez et al., 2017; Hernandez et al., 2019; Guo et al., 2022b)。其他工作(Harvey & Pal, 2018; Kaufmann et al., 2020; Harvey et al., 2020; Duan et al., 2021)使用双向GRU(Cho et al., 2014)和Transformer(Vaswani et al., 2017)架构解决了插值和超分辨率任务。Holden et al. (2016) 使用自编码器学习动作潜在表示,然后利用它通过空间约束(如根轨迹和骨骼长度)编辑和控制动作。动作可以通过动作类别(Guo et al., 2020; Petrovich et al., 2021; Cervantes et al., 2022)、音频(Li et al., 2021; Aristidou et al., 2022)和自然语言(Ahuja & Morency, 2019; Petrovich et al., 2022)提供的高级指导进行控制。在大多数情况下,作者建议采用专门的方法将每个条件域映射到动作。
近年来,文本到动作(Text-to-Motion)任务的主要方法是学习语言和动作的共享潜在空间。JL2P(Ahuja & Morency, 2019)使用自编码器学习KIT运动-语言数据集(Plappert et al., 2016),限制了文本到动作的一对一映射。TEMOS(Petrovich et al., 2022)和T2M(Guo et al., 2022a)建议使用VAE(Kingma & Welling, 2013)将文本提示映射到潜在空间中的正态分布。最近,MotionCLIP(Tevet et al., 2022)利用CLIP(Radford et al., 2021)学习到的共享文本-图像潜在空间,将文本到动作扩展到数据限制之外,并实现了潜在空间编辑。
人体动作流形也可以在没有标签的情况下学习,如Holden et al. (2016)、V-Poser (Pavlakos et al., 2019) 以及最近的专用MoDi架构 (Raab et al., 2022) 所示。我们表明,我们的模型也能够用于这种无监督设置。
2.2 扩散生成模型
扩散模型(Sohl-Dickstein et al., 2015; Song & Ermon, 2020)是一类基于随机扩散过程(如热力学中建模的)的神经生成模型。在这种设置中,从数据分布中采样的样本通过扩散过程逐渐被噪声化。然后,神经模型学习逐渐去噪样本的逆过程。通过去噪纯初始噪声来采样学习到的数据分布。Ho et al. (2020) 和 Song et al. (2020a) 进一步发展了图像生成应用的实践。对于条件生成,Dhariwal & Nichol (2021) 引入了分类器引导扩散,后来被GLIDE (Nichol et al., 2021) 采用,以实现在CLIP文本表示上的条件生成。无分类器引导方法 (Ho & Salimans, 2022) 实现了条件生成,同时在保真度和多样性之间进行权衡,并取得了更好的结果 (Nichol et al., 2021)。本文中,我们通过以无分类器方式在CLIP上进行条件化来实现文本到动作,类似于文本到图像 (Ramesh et al., 2022; Saharia et al., 2022b)。图像的局部编辑通常被定义为修复问题,其中图像的一部分是恒定的,被修复的部分由模型去噪,可能在某些条件下进行 (Song et al., 2020b; Saharia et al., 2022a)。我们调整了这项技术,根据可选条件编辑动作的特定身体部位或时间间隔(插值)。
最近,与这项工作同时进行的,Zhang et al. (2022) 和 Kim et al. (2022) 也提出了用于动作生成的扩散模型。我们的工作需要显著更少的GPU资源,并做出了能够实现几何损失的设计选择,从而改善了结果。
1、有没有提到说text2motion这种任务,text这个模态好理解,就是text;motion这个模态具体是怎么组成的?
是的,论文明确提到了运动(motion)模态的具体组成方式。
在引言(Introduction) 部分,第二段提到MDM的架构“更适合动作数据(表示为关节集合)的时间和非空间特性”。
在3 MOTION DIFFUSION MODEL(尽管这是第三节,但它对运动数据的定义是贯穿全文的)中,论文更详细地说明了:
“生成的动作 x1:N={xi}i=1Nx_{1:N} = \{x^i\}_{i=1}^Nx1:N={xi}i=1N 是一系列人体姿态,这些姿态由关节旋转或关节位置表示,xi∈RJ×Dx^i \in \mathbb{R}^{J \times D}xi∈RJ×D,其中 JJJ 是关节数量,DDD 是关节表示的维度。MDM 可以接受以位置、旋转或两者兼有的方式表示的动作。”
总结来说:
- Text模态: 就是文本描述(text prompt),例如“一个人用左腿踢球”。
- Motion模态: 是一个动作序列,由一系列人体姿态组成。每个姿态 xix^ixi 又由关节旋转或关节位置来表示。其中 JJJ 代表人体模型的关节数量,DDD 代表每个关节的表示维度(例如,如果是3D位置,则 D=3D=3D=3)。所以,它是一个时间序列的关节数据。
2、相关工作分为了两块,一块是人体动作生成,一块是扩散生成模型,其实这两块介绍的内容所生成的东西都是人体动作吗?
不是完全都是人体动作。
-
2.1 人体动作生成 (HUMAN MOTION GENERATION):
- 这一部分全部介绍的都是关于人体动作的生成。例如,它提到“神经动作生成,从动作捕捉数据中学习”、“从前缀姿态预测动作”、“解决插值和超分辨率任务”、“编辑和控制动作”、“根据动作类别、音频和自然语言进行控制”等,这些都明确指向生成人体动作。
-
2.2 扩散生成模型 (DIFFUSION GENERATIVE MODELS):
- 这一部分首先介绍了扩散模型作为一种通用生成模型。它提到扩散模型在“图像生成应用”中取得了突破,例如“文本到图像(text-to-image)”和“图像修复(inpainting)”。
- 但是,在这一部分的最后,论文指出: “最近,与这项工作同时进行的,Zhang et al. (2022) 和 Kim et al. (2022) 也提出了用于动作生成的扩散模型。” 这表明扩散模型虽然最初在图像领域大放异彩,但也开始被应用于动作生成领域,而这正是本文MDM所关注的。
总结:
- 2.1节 介绍的方法只生成人体动作。
- 2.2节 介绍的扩散模型最初主要用于图像生成(如文本到图像、图像修复),但最近也开始应用于动作生成,而本文的MDM正是将扩散模型应用于人体动作生成。
3、提到的text2motion的方法中有编码器、基于clip、VAE、diffusion等等,能不能分别简要解释一下架构和输入输出?
好的,根据论文内容,简要解释这些text2motion方法的架构和输入输出:
-
基于自编码器 (Auto-encoder) 的方法 (JL2P Ahuja & Morency, 2019)
- 架构: 自编码器(Encoder-Decoder结构)。编码器将输入(文本和动作)压缩成一个低维的潜在表示,解码器则从这个潜在表示中重构出输出。
- 核心思想: 学习一个文本和动作共享的潜在空间,使得文本和对应的动作在这个空间中彼此靠近。
- 输入: 文本(语言)和动作序列。
- 输出: 从文本提示生成的动作序列。
- 特点: 论文提到它“限制了一对一映射”,意味着它可能难以捕捉动作的多样性。
-
基于变分自编码器 (VAE) 的方法 (TEMOS Petrovich et al., 2022; T2M Guo et al., 2022a)
- 架构: 变分自编码器(VAE)。与普通自编码器类似,但其编码器输出的是潜在空间的均值和方差,而不是一个单一的潜在向量。这使得潜在空间服从一个预设的(通常是正态)分布。
- 核心思想: 将文本提示映射到一个服从正态分布的潜在空间。通过从这个潜在空间采样,可以生成多样化的动作。
- 输入: 文本提示。
- 输出: 从文本提示生成的动作序列。
- 特点: 论文提到它“将文本提示映射到潜在空间中的正态分布”,这有助于生成多样化的结果,但仍然是基于特定分布假设。
-
基于 CLIP 的方法 (MotionCLIP Tevet et al., 2022)
- 架构: 论文没有详细描述MotionCLIP本身的完整生成架构,但明确指出它“利用CLIP(Radford et al., 2021)学习到的共享文本-图像潜在空间”。这意味着它可能将文本编码为CLIP的文本嵌入,然后利用这个嵌入在某种生成模型(如GAN、VAE或其他)中指导动作生成。
- 核心思想: 借用CLIP在文本和图像之间建立的强大语义对应关系,将文本提示编码为高语义的嵌入,用于指导动作生成,从而超越了仅在动作-文本数据集上学习的限制。
- 输入: 文本提示。
- 输出: 动作序列。
- 特点: 能够“将文本到动作扩展到数据限制之外”,并支持“潜在空间编辑”,表明其具有较强的泛化能力和可控性。
-
基于扩散模型 (Diffusion Model) 的方法 (本文的 MDM)
- 架构:
- 骨干网络: Transformer-based encoder-only 架构。
- 扩散过程: 模拟一个逐步加噪的过程(从原始动作到纯噪声)。
- 逆扩散过程(生成): 模型学习一个逆过程,逐步从纯噪声中去噪,最终生成清晰的动作。
- 核心思想: 在每个去噪步骤中,模型预测的是“干净的样本”(而不是噪声),这使得可以更容易地应用几何损失(如足部接触损失)来提高生成质量。它以“无分类器引导”方式训练,能在多样性和保真度之间权衡。
- 输入 (训练时): 带有噪声的动作序列 (xtx_txt)、当前时间步 (ttt)、条件编码 (ccc,例如通过CLIP文本编码器得到的文本嵌入)。
- 输入 (生成时): 随机噪声(作为起始点)、条件编码 (ccc,例如文本提示的CLIP嵌入或动作类别的嵌入)。
- 输出 (每一步): 预测的干净动作样本 (x0x_0x0)。
- 输出 (最终生成): 高质量的动作序列。
- 特点: 论文强调其“多对多”的生成能力,不受目标分布假设限制,且通过Transformer和几何损失实现了轻量化、可控性强且效果先进。
- 架构:
3 运动扩散模型 (MDM)
原文:
An overview of our method is described in Figure 2. Our goal is to synthesize a human motion x1:Nx_{1:N}x1:N of length NNN given an arbitrary condition ccc. This condition can be any real-world signal that will dictate the synthesis, such as audio (Li et al., 2021; Aristidou et al., 2022), natural language (text-to-motion) (Tevet et al., 2022; Guo et al., 2022a) or a discrete class (action-to-motion) (Guo et al., 2020; Petrovich et al., 2021). In addition, unconditioned motion generation is also possible, which we denote as the null condition c=∅c = \emptysetc=∅. The generated motion x1:N={xi}i=1Nx_{1:N} = \{x^i\}_{i=1}^Nx1:N={xi}i=1N is a sequences of human poses represented by either joint rotations or positions xi∈RJ×Dx^i \in \mathbb{R}^{J \times D}xi∈RJ×D, where JJJ is the number of joints and DDD is the dimension of the joint representation. MDM can accept motion represented by either locations, rotations, or both (see Section 4).
翻译:
我们的方法概述在图2中描述。我们的目标是给定任意条件 ccc,合成长度为 NNN 的人体动作 x1:Nx_{1:N}x1:N。这个条件可以是任何将指导合成的真实世界信号,例如音频(Li et al., 2021; Aristidou et al., 2022)、自然语言(文本到动作)(Tevet et al., 2022; Guo et al., 2022a)或离散类别(动作到动作)(Guo et al., 2020; Petrovich et al., 2021)。此外,也可以进行无条件动作生成,我们将其表示为零条件 c=∅c = \emptysetc=∅。生成的动作 x1:N={xi}i=1Nx_{1:N} = \{x^i\}_{i=1}^Nx1:N={xi}i=1N 是一系列人体姿态,这些姿态由关节旋转或位置 xi∈RJ×Dx^i \in \mathbb{R}^{J \times D}xi∈RJ×D 表示,其中 JJJ 是关节数量,DDD 是关节表示的维度。MDM 可以接受以位置、旋转或两者兼有的方式表示的动作(参见第4节)。
解释:
这一段首先明确了MDM的核心目标:根据给定的条件 ccc 生成一段长度为 NNN 的人体动作序列 x1:Nx_{1:N}x1:N。
- 条件 ccc 的灵活性: 论文强调 ccc 可以是多种形式,包括:
- 音频: 根据音乐或声音生成动作。
- 自然语言/文本: 例如,输入“一个人在跳舞”,模型生成跳舞的动作。
- 离散动作类别: 例如,输入“跑步”,模型生成跑步的动作。
- 无条件生成: 即使没有给出任何特定条件(表示为 c=∅c=\emptysetc=∅),模型也能生成动作,这通常是生成数据分布中的随机样本。
- 动作序列的组成: x1:Nx_{1:N}x1:N 是一个序列,由 NNN 个姿态 xix^ixi 组成。每个姿态 xix^ixi 又由关节旋转或关节位置来表示。
- JJJ:表示人体模型的关节数量(例如,一个人可能有20多个关键关节)。
- DDD:表示每个关节的维度。如果用3D位置表示,则 D=3D=3D=3(x, y, z坐标);如果用旋转表示,则可能使用四元数(D=4D=4D=4)或轴角表示。MDM可以处理这些不同的表示方式。
原文:
Framework. Diffusion is modeled as a Markov noising process, {x1:Nt}t=0T\{x_{1:N}^t\}_{t=0}^T{x1:Nt}t=0T, where x1:N0x_{1:N}^0x1:N0 is drawn from the data distribution and q(x1:Nt∣x1:Nt−1)=N(αtx1:Nt−1,(1−αt)I)q(x_{1:N}^t|x_{1:N}^{t-1}) = \mathcal{N}(\sqrt{\alpha_t}x_{1:N}^{t-1}, (1-\alpha_t)\mathbf{I})q(x1:Nt∣x1:Nt−1)=N(αtx1:Nt−1,(1−αt)I), where αt∈(0,1)\alpha_t \in (0,1)αt∈(0,1) are constant hyper-parameters. When αt\alpha_tαt is small enough, we can approximate x1:NT∼N(0,I)x_{1:N}^T \sim \mathcal{N}(0, \mathbf{I})x1:NT∼N(0,I). From here on we use xtx_txt to denote the full sequence at noising step ttt. In our context, conditioned motion synthesis models the distribution p(x0∣c)p(x_0|c)p(x0∣c) as the reversed diffusion process of gradually cleaning xTx_TxT. Instead of predicting ϵt\epsilon_tϵt as formulated by Ho et al. (2020), we follow Ramesh et al. (2022) and predict the signal itself, i.e., x0=G(xt,t,c)x_0 = G(x_t, t, c)x0=G(xt,t,c) with the simple objective (Ho et al., 2020), Lsimple=Ex0∼q(x0∣c),t∼[1,T][∣∣x0−G(xt,t,c)∣∣2]L_{simple} = \mathbb{E}_{x_0 \sim q(x_0|c), t \sim [1,T]} [||x_0 - G(x_t, t, c) ||^2]Lsimple=Ex0∼q(x0∣c),t∼[1,T][∣∣x0−G(xt,t,c)∣∣2].
翻译:
框架。 扩散被建模为一个马尔可夫加噪过程,{x1:Nt}t=0T\{x_{1:N}^t\}_{t=0}^T{x1:Nt}t=0T,其中 x1:N0x_{1:N}^0x1:N0 从数据分布中抽取,并且 q(x1:Nt∣x1:Nt−1)=N(αtx1:Nt−1,(1−αt)I)q(x_{1:N}^t|x_{1:N}^{t-1}) = \mathcal{N}(\sqrt{\alpha_t}x_{1:N}^{t-1}, (1-\alpha_t)\mathbf{I})q(x1:Nt∣x1:Nt−1)=N(αtx1:Nt−1,(1−αt)I),其中 αt∈(0,1)\alpha_t \in (0,1)αt∈(0,1) 是常数超参数。当 αt\alpha_tαt 足够小时,我们可以近似 x1:NT∼N(0,I)x_{1:N}^T \sim \mathcal{N}(0, \mathbf{I})x1:NT∼N(0,I)。从现在开始,我们用 xtx_txt 表示加噪步骤 ttt 时的完整序列。在我们的语境中,条件动作合成将分布 p(x0∣c)p(x_0|c)p(x0∣c) 建模为逐步去噪 xTx_TxT 的逆扩散过程。我们遵循 Ramesh et al. (2022) 的做法,而不是像 Ho et al. (2020) 那样预测 ϵt\epsilon_tϵt,而是预测信号本身,即 x0=G(xt,t,c)x_0 = G(x_t, t, c)x0=G(xt,t,c),并使用简单的目标函数(Ho et al., 2020): Lsimple=Ex0∼q(x0∣c),t∼[1,T][∣∣x0−G(xt,t,c)∣∣2]L_{simple} = \mathbb{E}_{x_0 \sim q(x_0|c), t \sim [1,T]} [||x_0 - G(x_t, t, c) ||^2]Lsimple=Ex0∼q(x0∣c),t∼[1,T][∣∣x0−G(xt,t,c)∣∣2]。
解释:
这一段深入讲解了MDM所基于的扩散模型原理。
- 扩散过程(Forward Process):
- 它是一个马尔可夫加噪过程。这意味着,从原始的干净动作 x0x_0x0 开始,在每个时间步 ttt,都会向当前动作 xt−1x_{t-1}xt−1 中添加少量高斯噪声,生成 xtx_txt。这个过程持续 TTT 步,最终 xTx_TxT 会变成一个纯粹的随机高斯噪声(接近 N(0,I)\mathcal{N}(0, \mathbf{I})N(0,I))。
- 公式 q(x1:Nt∣x1:Nt−1)=N(αtx1:Nt−1,(1−αt)I)q(x_{1:N}^t|x_{1:N}^{t-1}) = \mathcal{N}(\sqrt{\alpha_t}x_{1:N}^{t-1}, (1-\alpha_t)\mathbf{I})q(x1:Nt∣x1:Nt−1)=N(αtx1:Nt−1,(1−αt)I) 描述了从 xt−1x_{t-1}xt−1 到 xtx_txt 的转换,其中 αt\alpha_tαt 控制了噪声添加的强度。
- 逆扩散过程(Reverse Process)/ 生成:
- 模型的任务是学习这个加噪过程的逆过程,即去噪过程。目标是从纯噪声 xTx_TxT 开始,逐步去除噪声,最终恢复出原始的干净动作 x0x_0x0。
- 关键设计选择:预测 x0x_0x0 而非 ϵt\epsilon_tϵt。 这是MDM与许多其他扩散模型(如Ho et al. (2020)提出的DDPM)的一个重要区别。
- 传统的DDPM通常训练模型去预测在 xtx_txt 中添加的噪声 ϵt\epsilon_tϵt。
- MDM则选择直接预测原始的干净信号 x0x_0x0。
- 原因: 论文在引言中提到,预测 x0x_0x0 “有助于在动作的位置和速度上使用已建立的几何损失,例如足部接触损失。” 如果模型直接预测噪声,那么在噪声空间中应用物理约束(如脚不能滑)会非常困难。但如果模型预测的是一个“干净”的动作 x0x_0x0,就可以直接对这个预测的 x0x_0x0 应用物理约束。
- 损失函数 LsimpleL_{simple}Lsimple:
- 这是一个简单的均方误差(Mean Squared Error, MSE) 损失。
- 它衡量的是模型 GGG 在给定加噪动作 xtx_txt、时间步 ttt 和条件 ccc 的情况下,预测的干净动作 G(xt,t,c)G(x_t, t, c)G(xt,t,c) 与真实的干净动作 x0x_0x0 之间的差异。模型的目标是使这个差异最小化,从而尽可能准确地预测出原始动作。
原文:
Geometric losses. In the motion domain, generative networks are standardly regularized using geometric losses Petrovich et al. (2021); Shi et al. (2020). These losses enforce physical properties and prevent artifacts, encouraging natural and coherent motion. In this work we experiment with three common geometric losses that regulate (1) positions (in case we predict rotations), (2) foot contact, and (3) velocities.
Lpos=1N∑i=1N∣∣FK(x0i)−FK(x^0i)∣∣2L_{pos} = \frac{1}{N} \sum_{i=1}^N ||FK(x_0^i) - FK(\hat{x}_0^i)||^2Lpos=N1∑i=1N∣∣FK(x0i)−FK(x^0i)∣∣2
Lfoot=1N−1∑i=1N−1∣∣(FK(x0i+1)−FK(x0i))⋅fi∣∣2L_{foot} = \frac{1}{N-1} \sum_{i=1}^{N-1} ||(FK(x_0^{i+1}) - FK(x_0^i)) \cdot f_i||^2Lfoot=N−11∑i=1N−1∣∣(FK(x0i+1)−FK(x0i))⋅fi∣∣2
Lvel=1N−1∑i=1N−1∣∣(x0i+1−x0i)−(x^0i+1−x^0i)∣∣2L_{vel} = \frac{1}{N-1} \sum_{i=1}^{N-1} ||(x_0^{i+1} - x_0^i) - (\hat{x}_0^{i+1} - \hat{x}_0^i)||^2Lvel=N−11∑i=1N−1∣∣(x0i+1−x0i)−(x^0i+1−x^0i)∣∣2
In case we predict joint rotations, FK(·) denotes the forward kinematic function converting joint rotations into joint positions (otherwise, it denotes the identity function). fi∈{0,1}Jf_i \in \{0,1\}^Jfi∈{0,1}J is the binary foot contact mask for each frame iii. Relevant only to feet, it indicates whether they touch the ground, and are set according to binary ground truth data (Shi et al., 2020). In essence, it mitigates the foot-sliding effect by nullifying velocities when touching the ground.
翻译:
几何损失。 在动作领域,生成网络通常使用几何损失进行正则化(Petrovich et al., 2021; Shi et al., 2020)。这些损失强制执行物理属性并防止伪影,鼓励生成自然和连贯的动作。在这项工作中,我们尝试了三种常见的几何损失,它们调节 (1) 位置(如果我们预测旋转)、(2) 足部接触和 (3) 速度。
- Lpos=1N∑i=1N∣∣FK(x0i)−FK(x^0i)∣∣2L_{pos} = \frac{1}{N} \sum_{i=1}^N ||FK(x_0^i) - FK(\hat{x}_0^i)||^2Lpos=N1∑i=1N∣∣FK(x0i)−FK(x^0i)∣∣2
- Lfoot=1N−1∑i=1N−1∣∣(FK(x0i+1)−FK(x0i))⋅fi∣∣2L_{foot} = \frac{1}{N-1} \sum_{i=1}^{N-1} ||(FK(x_0^{i+1}) - FK(x_0^i)) \cdot f_i||^2Lfoot=N−11∑i=1N−1∣∣(FK(x0i+1)−FK(x0i))⋅fi∣∣2
- Lvel=1N−1∑i=1N−1∣∣(x0i+1−x0i)−(x^0i+1−x^0i)∣∣2L_{vel} = \frac{1}{N-1} \sum_{i=1}^{N-1} ||(x_0^{i+1} - x_0^i) - (\hat{x}_0^{i+1} - \hat{x}_0^i)||^2Lvel=N−11∑i=1N−1∣∣(x0i+1−x0i)−(x^0i+1−x^0i)∣∣2
如果我们预测关节旋转,FK(·) 表示将关节旋转转换为关节位置的正向运动学函数(否则,它表示恒等函数)。fi∈{0,1}Jf_i \in \{0,1\}^Jfi∈{0,1}J 是帧 iii 的二元足部接触掩码。它仅与足部相关,指示它们是否接触地面,并根据二元真实数据(Shi et al., 2020)设置。本质上,它通过在接触地面时将速度归零来减轻足部滑动效应。
解释:
这是MDM的关键创新点之一,利用了其预测 x0x_0x0 的特性。
- 目的: 确保生成的动作不仅看起来像,而且符合物理规律,避免不自然的抖动或“脚滑”等伪影,从而使动作更自然、连贯。
- 三种几何损失:
- LposL_{pos}Lpos (位置损失):
- 作用: 衡量模型预测的动作姿态(x^0i\hat{x}_0^ix^0i)与真实动作姿态(x0ix_0^ix0i)在关节位置上的差异。
- FK(·): 如果模型内部预测的是关节旋转,则需要通过正向运动学(Forward Kinematics) 函数FK(·) 将旋转转换为3D关节位置,以便进行比较。如果模型直接预测位置,那么FK(·) 只是一个恒等函数。
- LfootL_{foot}Lfoot (足部接触损失):
- 作用: 这是一个非常重要的物理约束,用于解决“脚滑”问题。当角色的脚应该接触地面并保持静止时,如果模型生成的动作中脚还在移动,就会显得不自然。
- fif_ifi (足部接触掩码): 这是一个二元向量,对于每一帧 iii,它指示了哪些关节(特别是脚部关节)是否接触地面。如果接触,对应位置为1,否则为0。
- 原理: 当足部接触地面(fif_ifi 对应位置为1)时,(FK(x0i+1)−FK(x0i))(FK(x_0^{i+1}) - FK(x_0^i))(FK(x0i+1)−FK(x0i)) 代表足部在两帧之间的位移(即速度)。这个损失项会惩罚足部在接触地面时仍有位移的情况,迫使模型在这种情况下生成接近零的速度,从而“固定”住脚。
- LvelL_{vel}Lvel (速度损失):
- 作用: 衡量模型预测动作的速度与真实动作的速度之间的差异。这有助于保持动作的流畅性和节奏,避免突然的加速或减速。
- 原理: 比较预测动作在连续两帧之间的位置变化(速度)与真实动作的速度。
- LposL_{pos}Lpos (位置损失):
这些几何损失与 LsimpleL_{simple}Lsimple 一起,构成了MDM的完整训练目标,确保生成的动作既符合语义条件,又具有物理真实性。
原文:
Overall, our training loss is L=Lsimple+λposLpos+λvelLvel+λfootLfootL = L_{simple} + \lambda_{pos} L_{pos} + \lambda_{vel} L_{vel} + \lambda_{foot} L_{foot}L=Lsimple+λposLpos+λvelLvel+λfootLfoot.
Model. Our model is illustrated in Figure 2. We implement GGG with a straightforward transformer (Vaswani et al., 2017) encoder-only architecture. The transformer architecture is temporally aware, enabling learning arbitrary length motions, and is well-proven for the motion domain (Petrovich et al., 2021; Duan et al., 2021; Aksan et al., 2021). The noise time-step ttt and the condition code ccc are each projected to the transformer dimension by separate feed-forward networks, then summed to yield the token ztkz_{tk}ztk. Each frame of the noised input xtx_txt is linearly projected into the transformer dimension and summed with a standard positional embedding. ztkz_{tk}ztk and the projected frames are then fed to the encoder. Excluding the first output token (corresponding to ztkz_{tk}ztk), the encoder result is projected back to the original motion dimensions, and serves as the prediction x0x_0x0. We implement text-to-motion by encoding the text prompt to ccc with CLIP (Radford et al., 2021) text encoder, and action-to-motion with learned embeddings per class.
翻译:
总的来说,我们的训练损失是 L=Lsimple+λposLpos+λvelLvel+λfootLfootL = L_{simple} + \lambda_{pos} L_{pos} + \lambda_{vel} L_{vel} + \lambda_{foot} L_{foot}L=Lsimple+λposLpos+λvelLvel+λfootLfoot。
模型。 我们的模型如图2所示。我们使用一个简单的 Transformer(Vaswani et al., 2017)仅编码器架构来实现 GGG。Transformer 架构具有时间感知能力,可以学习任意长度的动作,并且在动作领域已被充分证明(Petrovich et al., 2021; Duan et al., 2021; Aksan et al., 2021)。噪声时间步 ttt 和条件编码 ccc 分别通过独立的前馈网络(Feed-Forward Networks, FFN) 投影到 Transformer 维度,然后求和得到 token ztkz_{tk}ztk。加噪输入 xtx_txt 的每一帧都被线性投影到 Transformer 维度,并与标准的位置嵌入求和。ztkz_{tk}ztk 和投影后的帧被输入到编码器。除了第一个输出 token(对应于 ztkz_{tk}ztk),编码器的结果被投影回原始动作维度,并作为预测的 x0x_0x0。我们通过使用 CLIP(Radford et al., 2021)文本编码器将文本提示编码为 ccc 来实现文本到动作,并通过每个类别的学习嵌入来实现动作到动作。
解释:
这一段描述了MDM的核心神经网络架构和输入处理方式。
- 总训练损失: 明确了最终的训练目标是 LsimpleL_{simple}Lsimple 和三种几何损失的加权和,其中 λ\lambdaλ 是用于平衡各项损失重要性的超参数。
- 模型 GGG 的架构:
- Transformer 仅编码器: MDM的核心是Transformer架构,但只使用了编码器部分。Transformer因其处理序列数据的能力而闻名,特别适合处理动作序列这种时间依赖性强的数据。
- 时间感知能力: Transformer能够捕捉动作序列中的长期依赖关系,使其能够学习任意长度的动作。
- 输入编码:
- 时间步 ttt 和条件 ccc: 这两个信息是Transformer的关键输入。它们首先通过独立的前馈网络(FFN)转换成与Transformer内部维度相匹配的向量,然后相加形成一个特殊的控制 token ztkz_{tk}ztk。这个 ztkz_{tk}ztk 包含了当前去噪的时间信息和用户提供的条件信息。
- 加噪动作 xtx_txt: 动作序列的每一帧 xtix_t^ixti 都会被线性投影到Transformer的维度。
- 位置嵌入(Positional Embedding): 投影后的动作帧会加上位置嵌入。这是Transformer处理序列的常见做法,因为Transformer本身不包含顺序信息,位置嵌入用于告知模型序列中每个元素的位置。
- 输入到编码器: ztkz_{tk}ztk 和所有带有位置嵌入的投影动作帧一起作为输入序列,送入Transformer编码器。
- 输出解码:
- 编码器处理完输入序列后,其输出(除了对应 ztkz_{tk}ztk 的第一个输出)会被投影回原始动作数据的维度,这就是模型预测的干净动作 x0x_0x0。
- 条件 ccc 的获取:
- 文本到动作: 使用预训练的 CLIP 文本编码器 将文本提示(如“跑步”)转换为高维的语义嵌入,作为条件 ccc。CLIP因其强大的文本-图像(以及泛化到文本-其他模态)对齐能力而备受青睐。
- 动作到动作: 对于离散的动作类别(如“跳跃”),模型会为每个类别学习一个独立的嵌入向量作为条件 ccc。
原文:
Sampling from p(x0∣c)p(x_0|c)p(x0∣c) is done in an iterative manner, according to Ho et al. (2020). In every time step ttt we predict the clean sample x0=G(xt,t,c)x_0 = G(x_t, t, c)x0=G(xt,t,c) and noise it back to xt−1x_{t-1}xt−1. This is repeated from t=Tt = Tt=T until x0x_0x0 is achieved (Figure 2 right). We train our model GGG using classifier-free guidance (Ho & Salimans, 2022). In practice, GGG learns both the conditioned and the unconditioned distributions by randomly setting c=∅c = \emptysetc=∅ for 10% of the samples, such that G(xt,t,∅)G(x_t, t, \emptyset)G(xt,t,∅) approximates p(x0)p(x_0)p(x0). Then, when sampling GGG we can trade-off diversity and fidelity by interpolating or even extrapolating the two variants using sss:
Gs(xt,t,c)=G(xt,t,∅)+s⋅(G(xt,t,c)–G(xt,t,∅))G_s(x_t, t, c) = G(x_t, t, \emptyset) + s \cdot (G(x_t, t, c) – G(x_t, t, \emptyset))Gs(xt,t,c)=G(xt,t,∅)+s⋅(G(xt,t,c)–G(xt,t,∅))
翻译:
采样。 从 p(x0∣c)p(x_0|c)p(x0∣c) 进行采样是按照 Ho et al. (2020) 的方式迭代进行的。在每个时间步 ttt,我们预测干净样本 x0=G(xt,t,c)x_0 = G(x_t, t, c)x0=G(xt,t,c),然后将其重新加噪回 xt−1x_{t-1}xt−1。这个过程从 t=Tt=Tt=T 重复进行,直到获得 x0x_0x0(图2右)。我们使用无分类器引导(Ho & Salimans, 2022)训练模型 GGG。在实践中,GGG 通过随机将10%的样本的 ccc 设置为 ∅\emptyset∅ 来学习条件和无条件分布,从而使 G(xt,t,∅)G(x_t, t, \emptyset)G(xt,t,∅) 近似 p(x0)p(x_0)p(x0)。然后,在采样时,我们可以通过使用 sss 来插值甚至外推这两种变体,从而在多样性和保真度之间进行权衡:
Gs(xt,t,c)=G(xt,t,∅)+s⋅(G(xt,t,c)–G(xt,t,∅))G_s(x_t, t, c) = G(x_t, t, \emptyset) + s \cdot (G(x_t, t, c) – G(x_t, t, \emptyset))Gs(xt,t,c)=G(xt,t,∅)+s⋅(G(xt,t,c)–G(xt,t,∅))
解释:
这一段描述了MDM如何从噪声中生成最终动作,以及如何通过“无分类器引导”来平衡生成结果的多样性和与条件的匹配程度。
- 迭代采样过程:
- 从噪声开始: 生成过程从一个纯高斯噪声 xTx_TxT 开始。
- 逐步去噪: 在每个时间步 ttt(从 TTT 递减到1),模型 GGG 会接收当前的加噪动作 xtx_txt、时间步 ttt 和条件 ccc,并预测出干净的原始动作 x0x_0x0。
- 计算 xt−1x_{t-1}xt−1: 根据预测的 x0x_0x0 和当前 xtx_txt,扩散模型的逆过程公式可以计算出下一个时间步(更少噪声)的动作 xt−1x_{t-1}xt−1。
- 重复: 这个过程重复进行,直到 t=0t=0t=0,最终得到完全去噪的动作 x0x_0x0。
- 无分类器引导 (Classifier-Free Guidance):
- 训练阶段: 为了让模型同时学习如何根据条件生成(条件分布 p(x0∣c)p(x_0|c)p(x0∣c))和如何生成一般性数据(无条件分布 p(x0)p(x_0)p(x0)),在训练时,MDM会随机地将一部分(例如10%)样本的条件 ccc 替换为 ∅\emptyset∅(空条件)。这样,模型 GGG 就能学习到两种模式。
- 采样阶段: 在实际生成动作时,可以利用这两种学习到的能力来控制生成结果。公式 Gs(xt,t,c)G_s(x_t, t, c)Gs(xt,t,c) 结合了:
- G(xt,t,∅)G(x_t, t, \emptyset)G(xt,t,∅):模型对无条件生成 x0x_0x0 的预测(倾向于生成多样但可能不完全符合条件的动作)。
- G(xt,t,c)G(x_t, t, c)G(xt,t,c):模型对有条件生成 x0x_0x0 的预测(倾向于生成符合条件但可能多样性较低的动作)。
- 引导尺度 sss: 这是一个超参数,用于平衡这两种预测。
- 当 s=0s=0s=0 时,Gs=G(xt,t,∅)G_s = G(x_t, t, \emptyset)Gs=G(xt,t,∅),完全是无条件生成,多样性最高,但可能不符合条件。
- 当 s=1s=1s=1 时,Gs=G(xt,t,c)G_s = G(x_t, t, c)Gs=G(xt,t,c),完全是有条件生成,最符合条件,但多样性可能受限。
- 当 s>1s > 1s>1 时,会“外推”条件的影响,使得生成结果更强烈地符合条件,但有时可能导致不自然。
- 通过调整 sss,用户可以在多样性(Diversity) 和与条件的匹配度(Fidelity) 之间进行权衡。
原文:
Editing. We enable motion in-betweening in the temporal domain, and body part editing in the spatial domain, by adapting diffusion inpainting to motion data. Editing is done only during sampling, without any training involved. Given a subset of the motion sequence inputs, when sampling the model (Figure 2 right), at each iteration we overwrite x0x_0x0 with the input part of the motion. This encourages the generation to remain coherent to original input, while completing the missing parts. In the temporal setting, the prefix and suffix frames of the motion sequence are the input, and we solve a motion in-betweening problem (Harvey et al., 2020). Editing can be done either conditionally or unconditionally (by setting c=∅c = \emptysetc=∅). In the spatial setting, we show that body parts can be re-synthesized according to a condition ccc while keeping the rest intact, through the use of the same completion technique.
翻译:
编辑。 我们通过将扩散修复(inpainting)技术应用于动作数据,实现了时间域上的动作插值(in-betweening)和空间域上的身体部位编辑。编辑仅在采样过程中进行,不涉及任何训练。给定动作序列输入的一个子集,在模型采样(图2右)的每次迭代中,我们用动作的输入部分覆盖 x0x_0x0。这鼓励生成结果与原始输入保持连贯,同时补全缺失的部分。在时间设置中,动作序列的前缀和后缀帧是输入,我们解决了动作插值问题(Harvey et al., 2020)。编辑可以是有条件的,也可以是无条件的(通过设置 c=∅c = \emptysetc=∅)。在空间设置中,我们展示了通过使用相同的补全技术,可以在保持身体其他部分不变的情况下,根据条件 ccc 重新合成身体部位。
解释:
这一段介绍了MDM的另一个强大功能:动作编辑,而且无需额外的训练。
- 核心思想: 借鉴了图像处理中的“修复(inpainting)”概念。在图像修复中,给定图像的一部分(例如,图像的边缘),模型会填充缺失的部分。MDM将其扩展到动作数据。
- 无需额外训练: 这是一个重要的优点。这意味着MDM本身就具备了编辑能力,不需要为特定的编辑任务(如插值或身体部位编辑)进行额外的模型训练或微调。
- 实现方式: 在采样(去噪)的每次迭代中:
- 模型首先预测一个完整的干净动作 x0x_0x0。
- 然后,MDM会用原始输入中已知的部分(例如,用户指定的固定帧或身体部位)来覆盖这个预测的 x0x_0x0 相应位置。
- 通过这种方式,模型在后续的去噪步骤中,会强制生成与已知部分一致的缺失内容,从而实现“补全”或“编辑”。
- 两种编辑模式:
- 时间域插值 (Motion In-betweening):
- 场景: 给定一段动作序列的开始部分(前缀帧)和结束部分(后缀帧),模型会填充中间缺失的动作。
- 条件: 这种插值可以是有条件的(例如,通过文本提示指导中间动作的风格或内容),也可以是无条件的(模型根据数据分布自然衔接)。
- 空间域身体部位编辑 (Body Part Editing):
- 场景: 保持动作序列中某些身体部位(例如,下半身)不变,同时根据条件 ccc 重新生成或修改其他身体部位(例如,上半身)。
- 原理: 同样是通过覆盖技术,将用户不希望改变的身体部位固定住,只让模型在去噪时修改指定要编辑的部位。
- 时间域插值 (Motion In-betweening):
总结MDM的特点:
- 多功能性: 支持文本到动作、动作到动作、无条件生成以及动作编辑(插值和身体部位编辑)等多种任务。
- 基于扩散模型: 利用扩散模型的强大生成能力,特别是在处理多对多映射问题上的优势,能够生成多样化的动作。
- 预测 x0x_0x0 而非 ϵt\epsilon_tϵt: 这是一个关键设计,使得在去噪过程中可以直接对“干净”的动作应用物理约束。
- 几何损失: 引入位置、足部接触和速度损失,确保生成的动作符合物理规律,自然连贯,避免伪影(如脚滑)。
- Transformer 架构: 使用Transformer编码器作为骨干网络,具有时间感知能力,能处理任意长度的动作序列。
- 无分类器引导: 在采样时通过引导尺度 sss 平衡生成结果的多样性和与条件的匹配度。
- 无需额外训练的编辑能力: 通过借鉴图像修复技术,在采样过程中即可实现动作插值和身体部位编辑,大大提高了模型的实用性。
4 实验 (EXPERIMENTS)
原文:
We implement MDM for three motion generation tasks: Text-to-Motion(4.1), Action-to-Motion(4.2) and unconditioned generation(5.2. Each sub-section reviews the data and metrics of the used benchmarks, provides implementation details, and presents qualitative and quantitative results. Then, we show implementations of motion in-betweening (both conditioned and unconditioned) and body-part editing by adapting diffusion inpainting to motion (5.1). Our models have been trained with T=1000T = 1000T=1000 noising steps and a cosine noise schedule. All of them have been trained on a single NVIDIA GeForce RTX 2080 Ti GPU for a period of about 3 days.
翻译:
我们为MDM实现了三种动作生成任务:文本到动作(4.1节)、动作到动作(4.2节)和无条件生成(5.2节)。每个小节都回顾了所用基准测试的数据和指标,提供了实现细节,并展示了定性和定量结果。然后,我们展示了通过调整扩散修复技术到动作数据,实现的动作插值(包括有条件和无条件)和身体部位编辑(5.1节)。我们的模型使用 T=1000T=1000T=1000 个加噪步骤和余弦噪声调度进行训练。所有模型都在单个 NVIDIA GeForce RTX 2080 Ti GPU 上训练了大约3天。
解释:
这一段是实验部分的总览。
- 实验任务: 论文明确指出,MDM在三种核心动作生成任务上进行了评估:
- 文本到动作 (Text-to-Motion): 根据文本描述生成动作。
- 动作到动作 (Action-to-Motion): 根据离散的动作类别(如“跑步”、“跳跃”)生成动作。
- 无条件生成 (Unconditioned Generation): 在没有任何特定条件的情况下生成动作,通常用于评估模型学习到的数据分布的质量。
- 组织结构: 后续的小节(4.1, 4.2, 5.1, 5.2)将分别详细介绍这些任务。每个任务的介绍都将包含:
- 数据 (Data): 使用了哪些数据集。
- 指标 (Metrics): 如何量化评估生成结果的质量。
- 实现细节 (Implementation Details): 模型训练的具体参数和设置。
- 结果 (Results): 定性(视觉效果)和定量(数值指标)的评估。
- 编辑功能: 论文还提到,除了生成任务,他们还将展示MDM的动作插值和身体部位编辑能力,这些都是通过将扩散修复技术应用于动作数据实现的。
- 训练细节:
- 加噪步骤 T=1000T=1000T=1000: 扩散模型训练时,从干净数据到纯噪声的步骤数量。T=1000T=1000T=1000 是一个常见的设置。
- 余弦噪声调度 (Cosine Noise Schedule): 一种定义在扩散过程中如何逐步添加噪声的策略,通常能提供更好的性能。
- 资源消耗: 强调了MDM的轻量级,仅使用单个 NVIDIA GeForce RTX 2080 Ti GPU,训练时间约为3天。这与引言中提到的“资源需求巨大”的传统扩散模型形成了对比,突出了MDM的效率优势。
4.1 文本到动作 (TEXT-TO-MOTION)
原文:
Text-to-motion is the task of generating motion given an input text prompt. The output motion is expected to be both implementing the textual description, and a valid sample from the data distribution (i.e. adhering to general human abilities and the rules of physics). In addition, for each text prompt, we also expect a distribution of motions matching it, rather than just a single result. We evaluate our model using two leading benchmarks - KIT (Plappert et al., 2016) and HumanML3D (Guo et al., 2022a), over the set of metrics suggested by Guo et al. (2022a): R-precision and Multimodal-Dist measure the relevancy of the generated motions to the input prompts, FID measures the dissimilarity between the generated and ground truth distributions (in latent space), Diversity measures the variability in the resulting motion distribution, and MultiModality is the average variance given a single text prompt. For the full implementation of the metrics, please refer to Guo et al. (2022a). We use HumanML3D as a platform to compare different backbones of our model, discovering that the diffusion framework is relatively agnostic to this attribute. In addition, we conduct a user study comparing our model to current art and ground truth motions.
翻译:
文本到动作是根据输入文本提示生成动作的任务。输出动作预期既要实现文本描述,又要成为数据分布中的有效样本(即符合一般人类能力和物理规则)。此外,对于每个文本提示,我们还期望生成一个匹配的动作分布,而不仅仅是单一结果。我们使用两个主要基准测试——KIT(Plappert et al., 2016)和 HumanML3D(Guo et al., 2022a)来评估我们的模型,并采用 Guo et al. (2022a) 建议的一组指标:R-precision 和 Multimodal-Dist 衡量生成动作与输入提示的相关性,FID 衡量生成分布与真实分布之间的差异(在潜在空间中),Diversity 衡量生成动作分布的可变性,MultiModality 是给定单个文本提示的平均方差。有关指标的完整实现,请参阅 Guo et al. (2022a)。我们使用 HumanML3D 作为平台来比较我们模型的不同骨干网络,发现扩散框架对这一属性相对不敏感。此外,我们还进行了一项用户研究,将我们的模型与当前最先进技术和真实动作进行比较。
解释:
这一节详细介绍了文本到动作任务的背景、评估方式和初步发现。
- 任务目标:
- 语义匹配: 生成的动作必须符合文本描述。
- 物理真实性: 动作必须是“有效样本”,即看起来自然,符合人类运动能力和物理规律(这与前面提到的几何损失相呼应)。
- 多样性: 对于同一个文本提示,模型应该能够生成多种不同的、但都符合描述的动作,而不是每次都生成完全相同的动作(这是“多对多”问题的体现)。
- 基准测试 (Benchmarks):
- KIT (Plappert et al., 2016): 一个经典的动作-语言数据集。
- HumanML3D (Guo et al., 2022a): 一个更近期、更全面的数据集,提供了丰富的文本描述和动作数据。
- 评估指标 (Metrics): 论文采用了Guo et al. (2022a)提出的一套综合性指标,这些指标从不同角度评估生成质量:
- R-precision: 衡量生成动作与输入文本提示的相关性。通常通过将生成的动作和真实动作(以及其他不相关的动作)与文本提示一起输入一个分类器,看生成的动作是否能被正确匹配到其文本提示。
- Multimodal-Dist: 同样衡量生成动作与文本提示的相关性。
- FID (Fréchet Inception Distance): 衡量生成动作分布与真实动作分布之间的相似性。FID值越低越好,表示生成动作的质量和多样性越接近真实数据。
- Diversity: 衡量生成动作分布的内部可变性。高Diversity表示模型能够生成更多样化的动作。
- MultiModality: 衡量给定单个文本提示时,生成动作的平均方差。它关注的是模型对于同一文本提示,能生成多少种不同的、但都合理的动作。
- 架构比较: 论文提到使用HumanML3D平台比较了模型不同骨干网络(例如Transformer的不同配置),发现“扩散框架对这一属性(骨干网络选择)相对不敏感”。这暗示了扩散模型本身的强大能力,即使骨干网络有所变化,也能保持较好的性能。
- 用户研究: 除了客观指标,还进行了主观用户研究,让用户比较MDM生成的动作与当前最先进技术和真实动作的优劣,这通常能提供更直观、更符合人类感知的评估。
原文:
Data. HumanML3D is a recent dataset, textually re-annotating motion capture from the AMASS (Mahmood et al., 2019) and HumanAct12 (Guo et al., 2020) collections. It contains 14, 616 motions annotated by 44, 970 textual descriptions. In addition, it suggests a redundant data repre-sentation including a concatenation of root velocity, joint positions, joint velocities, joint rotations and the foot contact binary labels. We also use in this section the same representation for the KIT dataset, brought by the same publishers. Although limited in the number (3, 911) and the diversity of samples, most of the text-to-motion research is based on KIT, hence we view it as important to evaluate using it as well.
翻译:
数据。 HumanML3D 是一个最近的数据集,它对来自 AMASS(Mahmood et al., 2019)和 HumanAct12(Guo et al., 2020)集合的动作捕捉数据进行了文本重新标注。它包含 14,616 个动作,标注了 44,970 条文本描述。此外,它还提供了一种冗余数据表示,包括根部速度、关节位置、关节速度、关节旋转和足部接触二元标签的串联。在本节中,我们还对 KIT 数据集使用了相同的表示,该数据集由相同的发布者提供。尽管 KIT 数据集在数量(3,911)和样本多样性方面有限,但大多数文本到动作研究都基于 KIT,因此我们认为使用它进行评估也很重要。
解释:
这一段详细介绍了文本到动作任务所使用的数据集。
- HumanML3D:
- 来源: 对AMASS和HumanAct12数据集中的动作捕捉数据进行了文本重新标注,使其适用于文本到动作任务。
- 规模: 包含14,616个动作,对应44,970条文本描述,数据量较大。
- 动作表示: 提供了“冗余数据表示”,这意味着每个动作帧包含多种信息,串联在一起作为模型的输入或目标。这些信息包括:
- 根部速度 (Root Velocity): 人体根关节(通常是骨盆)的速度。
- 关节位置 (Joint Positions): 所有关节的3D位置。
- 关节速度 (Joint Velocities): 所有关节的速度。
- 关节旋转 (Joint Rotations): 所有关节的旋转信息。
- 足部接触二元标签 (Foot Contact Binary Labels): 指示哪些脚部关节在当前帧接触地面(这与前面提到的 LfootL_{foot}Lfoot 损失直接相关)。
- KIT 数据集:
- 规模: 相对较小(3,911个动作)。
- 重要性: 尽管规模有限,但由于“大多数文本到动作研究都基于KIT”,因此将其作为评估基准是必要的,以便与现有工作进行公平比较。
- 表示: 对KIT数据集也采用了与HumanML3D相同的动作表示方式。
原文:
Implementation. In addition to our Transformer encoder-only backbone (Section 3), we experiment MDM with three more backbones: (1) Transformer decoder injects ztkz_{tk}ztk through the cross-attention layer, instead of as an input token. (2) Transformer decoder + input token, where ztkz_{tk}ztk is injected both ways, and (3) GRU (Cho et al., 2014) concatenate ztkz_{tk}ztk to each input frame (Table 1). Our models were trained with batch size 64, 8 layers (except GRU that was optimal at 2), and latent dimension 512. To encode the text we use a frozen CLIP-ViT-B/32 model. Each model was trained for 500K steps, afterwhich a checkpoint was chosen that minimizes the FID metric to be reported. Since foot contact and joint locations are explicitly represented in HumanML3D, we don’t apply geometric losses in this section. We evaluate our models with guidance-scale s=2.5s = 2.5s=2.5 which provides a diversity-fidelity sweet spot (Figure 4).
翻译:
实现。 除了我们在第3节中描述的 Transformer 仅编码器骨干网络外,我们还尝试了MDM的另外三种骨干网络配置:(1) Transformer 解码器,通过交叉注意力层注入 ztkz_{tk}ztk,而不是作为输入 token。(2) Transformer 解码器 + 输入 token,其中 ztkz_{tk}ztk 以两种方式注入,以及 (3) GRU(Cho et al., 2014),将 ztkz_{tk}ztk 连接到每个输入帧(表1)。我们的模型以批大小 64、8 层(GRU 除外,其最佳层数为2)和潜在维度 512 进行训练。为了编码文本,我们使用一个冻结的 CLIP-ViT-B/32 模型。每个模型都训练了 500K 步,之后选择一个使 FID 指标最小的检查点进行报告。由于 HumanML3D 中明确表示了足部接触和关节位置,因此我们在此部分不应用几何损失。我们使用引导尺度 s=2.5s = 2.5s=2.5 来评估我们的模型,该尺度提供了多样性-保真度的最佳平衡点(图4)。
解释:
这一段提供了文本到动作任务的具体实现细节和实验设置。
- 骨干网络变体: 论文不仅使用了在第3节中描述的“Transformer 仅编码器”作为MDM的骨干,还实验了其他几种变体,以探究不同架构的影响:
- Transformer 解码器 (Cross-Attention): ztkz_{tk}ztk(时间步和条件信息)通过交叉注意力机制注入到解码器中,而不是作为输入序列的一部分。
- Transformer 解码器 + 输入 token: 结合了上述两种方式, ztkz_{tk}ztk 既通过交叉注意力注入,也作为输入 token。
- GRU (Gated Recurrent Unit): 一种循环神经网络(RNN)架构,将 ztkz_{tk}ztk 直接连接到每个输入帧。这是一种更传统的处理序列数据的方法。
- 目的: 通过比较这些变体,论文可以评估Transformer编码器在MDM中的有效性,并验证其关于“扩散框架对骨干网络选择相对不敏感”的发现。
- 训练超参数:
- 批大小 (Batch Size): 64。
- 层数 (Layers): 8层(Transformer)。GRU模型最佳层数为2。
- 潜在维度 (Latent Dimension): 512。
- 文本编码器: 使用了冻结的 CLIP-ViT-B/32 模型来将文本提示编码为条件 ccc。
- “冻结”: 意味着CLIP模型在MDM训练过程中不会更新其权重,只作为特征提取器使用。
- CLIP-ViT-B/32: CLIP是一个强大的预训练模型,能够将文本和图像映射到同一个嵌入空间。ViT-B/32是其Vision Transformer骨干的一个具体配置。
- 训练步数与检查点选择:
- 500K 步: 训练的总迭代次数。
- FID 最小化: 选择在验证集上FID指标最小的模型检查点进行最终评估。
- 几何损失的应用:
- “不应用几何损失”: 这是一个重要的细节。由于HumanML3D数据集本身就提供了足部接触和关节位置的明确信息,这些信息可以直接用于训练,因此在本节的文本到动作任务中,论文选择不额外应用之前定义的几何损失 Lpos,Lfoot,LvelL_{pos}, L_{foot}, L_{vel}Lpos,Lfoot,Lvel。这可能意味着数据集本身已经包含了足够的物理约束信息,或者这些损失在文本到动作任务中效果不明显。
- 引导尺度 sss:
- s=2.5s=2.5s=2.5: 论文通过实验确定 s=2.5s=2.5s=2.5 是在多样性和保真度之间取得“最佳平衡点”的引导尺度。这个值通常通过在验证集上进行超参数搜索来确定(如图4(b)所示)。
原文:
Quantitative evaluation. We evaluate and compare our models to current art (JL2P Ahuja & Morency (2019), Text2Gesture (Bhattacharya et al., 2021), and T2M (Guo et al., 2022a)) with the metrics suggested by Guo et al. (2022a). As can be seen, MDM achieves state-of-the-art results in FID, Diversity, and MultiModality, indicating high diversity per input text prompt, and high-quality samples, as can also be seen qualitatively in Figure 1.
翻译:
定量评估。 我们使用 Guo et al. (2022a) 建议的指标,将我们的模型与当前最先进的技术(JL2P Ahuja & Morency (2019)、Text2Gesture (Bhattacharya et al., 2021) 和 T2M (Guo et al., 2022a))进行评估和比较。可以看出,MDM 在 FID、Diversity 和 MultiModality 方面取得了最先进的结果,表明每个输入文本提示都具有高多样性,并且样本质量高,这也可以从图1的定性结果中看出。
解释:
这一段总结了MDM在文本到动作任务上的定量表现。
- 比较对象: MDM与三种当时最先进的文本到动作方法进行了比较:
- JL2P (Ahuja & Morency, 2019)
- Text2Gesture (Bhattacharya et al., 2021)
- T2M (Guo et al., 2022a)
- 评估指标: 使用了之前提到的 FID、Diversity 和 MultiModality。
- 结果: MDM在这些关键指标上取得了最先进 (state-of-the-art, SOTA) 的结果。
- 低FID: 表明生成动作的质量和分布与真实动作非常接近。
- 高Diversity和MultiModality: 表明MDM能够为同一个文本提示生成高度多样化且高质量的动作,成功解决了“多对多”问题。
- 定性验证: 结果也得到了定性评估(即视觉效果)的印证,图1展示了MDM生成的动作的视觉质量。
原文:
User study. We asked 31 users to choose between MDM and state-of-the-art works in a side-by-side view, with both samples generated from the same text prompt randomly sampled from the KIT test set. We repeated this process with 10 samples per model and 10 repetitions per sample. This user study enabled a comparison with the recent TEMOS model (Petrovich et al., 2022), which was not included in the HumanML3D benchmark. Fig. 4 shows that most of the time, MDM was preferred over the compared models, and even preferred over ground truth samples in 42.3% of the cases.
翻译:
用户研究。 我们邀请了31名用户,在并排视图中选择 MDM 和最先进技术生成的动作,这些样本均由 KIT 测试集中随机抽样的相同文本提示生成。我们对每个模型重复此过程10次,每个样本重复10次。这项用户研究使得能够与最近的 TEMOS 模型(Petrovich et al., 2022)进行比较,该模型未包含在 HumanML3D 基准测试中。图4显示,在大多数情况下,MDM 优于被比较的模型,甚至在 42.3% 的情况下优于真实样本。
解释:
这一段描述了MDM在文本到动作任务上的用户研究结果。
- 研究设计:
- 参与者: 31名用户。
- 方式: 并排比较 (side-by-side view),用户同时看到MDM和其他模型生成的动作,并进行选择。
- 样本来源: 从KIT测试集随机抽样的相同文本提示生成动作。
- 重复性: 每个模型生成10个样本,每个样本进行10次重复比较,确保结果的可靠性。
- 比较对象:
- 除了之前提到的SOTA模型,用户研究还包括了TEMOS模型,因为它没有被包含在HumanML3D基准测试中,但也是一个重要的SOTA方法。
- 研究结果(图4(a)):
- MDM优于SOTA: 在大多数情况下,用户更倾向于MDM生成的动作,表明其主观质量更高。
- MDM优于真实动作: 令人惊讶的是,在 42.3% 的情况下,用户甚至更喜欢MDM生成的动作,而不是真实的动作捕捉数据。这可能意味着MDM生成的动作有时比真实的动作更“理想化”、“流畅”或“符合预期”,因为真实动作捕捉数据可能包含一些不完美的细节或噪声。这强调了MDM在生成高质量、令人愉悦的动作方面的强大能力。
4.2 动作到动作 (ACTION-TO-MOTION)
原文:
Action-to-motion is the task of generating motion given an input action class, represented by a scalar. The output motion should faithfully animate the input action, and at the same time be natural and reflect the distribution of the dataset on which the model is trained. Two dataset are commonly used to evaluate action-to-motion models: HumanAct12 (Guo et al., 2020) and UESTC (Ji et al., 2018).
翻译:
动作到动作是给定一个输入动作类别(由一个标量表示)来生成动作的任务。输出动作应该忠实地表现输入动作,同时自然地反映模型训练所用的数据集的分布。通常使用两个数据集来评估动作到动作模型:HumanAct12(Guo et al., 2020)和 UESTC(Ji et al., 2018)。
解释:
这一节介绍了动作到动作任务的定义和评估数据集。
- 任务定义:
- 输入: 一个动作类别,通常由一个标量ID表示(例如,1代表“跑步”,2代表“跳跃”)。
- 输出: 对应的动作序列。
- 目标:
- 忠实性: 动作必须准确地表现出输入的类别(例如,输入“跑步”就生成跑步,而不是跳跃)。
- 自然性: 动作必须看起来自然,符合物理规律。
- 分布匹配: 动作应该反映训练数据集的整体动作风格和多样性。
- 评估数据集:
- HumanAct12 (Guo et al., 2020): 一个用于动作识别和生成的常用数据集。
- UESTC (Ji et al., 2018): 另一个广泛用于动作识别和生成的RGB-D数据集。
5 附加应用 (ADDITIONAL APPLICATIONS)
原文:
5.1 MOTION EDITING
In this section we implement two motion editing applications - in-betweening and body part edit-ing, both using the same approach in the temporal and spatial domains correspondingly. For in-betweening, we fix the first and last 25% of the motion, leaving the model to generate the remaining 50% in the middle. For body part editing, we fix the joints we don’t want to edit and leave the model to generate the rest. In particular, we experiment with editing the upper body joints only. In figure 3 we show that in both cases, using the method described in Section 3 generates smooth motions that adhere both to the fixed part of the motion and the condition (if one was given).
翻译:
5.1 动作编辑 (MOTION EDITING)
在本节中,我们实现了两种动作编辑应用——动作插值(in-betweening)和身体部位编辑,它们分别在时间域和空间域中采用相同的方法。对于动作插值,我们固定动作序列的起始和结束 25% 部分,让模型生成中间的 50% 部分。对于身体部位编辑,我们固定不希望编辑的关节,让模型生成其余部分。特别是,我们只实验了编辑上半身关节。图3显示,在这两种情况下,使用第3节描述的方法都能生成平滑的动作,并且这些动作既符合动作的固定部分,也符合给定的条件(如果提供了条件)。
解释:
这一节详细说明了MDM的动作编辑能力,这是其“附加应用”之一。
- 两种编辑应用:
- 动作插值 (Motion In-betweening):
- 场景: 给定一个动作序列的开始(前25%)和结束(后25%)部分,模型需要“填充”中间缺失的50%动作。
- 目的: 创造连贯的过渡,连接两个已知的动作片段。
- 身体部位编辑 (Body Part Editing):
- 场景: 用户指定动作序列中某些身体部位(例如,下半身)保持不变,而模型则负责重新生成或修改其他身体部位(例如,上半身)。
- 实验重点: 这里特别提到了只实验了编辑上半身关节,这意味着下半身(如腿部和足部)保持不变。
- 动作插值 (Motion In-betweening):
- 实现方法: 论文再次强调,这两种编辑都是通过第3节中描述的“扩散修复”技术实现的,即在采样过程中,每次迭代都用原始输入中已知的部分覆盖模型预测的 x0x_0x0。
- 结果:
- 平滑性: 生成的动作是平滑的,没有突兀的跳变。
- 一致性: 动作既能与固定的部分(前缀/后缀或未编辑的身体部位)无缝衔接,又能符合给定的条件(如果存在)。
- 图3: 论文引用了图3来展示这些编辑的定性结果。
原文:
5.2 UNCONSTRAINED SYNTHESIS
The challenging task of unconstrained synthesis has been studied by only a few (Holden et al., 2016; Raab et al., 2022). In the presence of data labeling, e.g., action classes or text description, the la-bels work as a supervising factor, and facilitate a structured latent space for the training network. The lack of labeling make training more difficult. The human motion field possesses rich unlabeled datasets (Adobe Systems Inc., 2021), and the ability to train on top of them is an advantage. Daring to test MDM in the challenging unconstrained setting, we follow MoDi(Raab et al., 2022) for eval-uation. We use the metrics they suggest (FID, KID, precision/recall and multimodality), and run on an unconstrained version of the HumanAct12 (Guo et al., 2020) dataset.
翻译:
5.2 无条件合成 (UNCONSTRAINED SYNTHESIS)
无条件合成是一项具有挑战性的任务,目前只有少数研究(Holden et al., 2016; Raab et al., 2022)进行了探索。在存在数据标签(例如动作类别或文本描述)的情况下,标签作为监督因子,有助于训练网络构建结构化的潜在空间。缺乏标签会使训练变得更加困难。人体动作领域拥有丰富的无标签数据集(Adobe Systems Inc., 2021),能够在此基础上进行训练是一个优势。为了在具有挑战性的无条件设置中测试 MDM,我们遵循 MoDi(Raab et al., 2022)的评估方法。我们使用他们建议的指标(FID、KID、Precision/Recall 和 Multimodality),并在 HumanAct12(Guo et al., 2020)数据集的无条件版本上运行。
解释:
这一节介绍了MDM在无条件生成任务上的表现。
- 任务定义:
- 无条件合成 (Unconstrained Synthesis): 在没有任何条件(如文本、动作类别)指导的情况下,模型直接从其学习到的数据分布中生成动作。
- 挑战性: 论文指出,这项任务比有条件生成更具挑战性,因为缺少标签作为“监督因子”来引导模型构建结构化的潜在空间。
- 优势: 尽管困难,但能够利用大量无标签动作数据进行训练是一个显著优势,因为获取高质量的标注数据成本很高。
- 评估方法:
- 遵循MoDi: 论文采用了MoDi模型(Raab et al., 2022)提出的评估方法,MoDi是一个专门为无条件动作生成设计的模型。
- 数据集: 使用了HumanAct12数据集的“无条件版本”。这意味着尽管HumanAct12本身有标签,但在评估时,MDM会忽略这些标签,只将其视为无标签的动作数据。
- 指标: 采用了MoDi建议的指标,包括FID、KID、Precision/Recall 和 Multimodality。
原文:
Data. Although annotated, we use HumanAct12 (see Section 4.2) in an unconstrained fashion, ignoring its labels. The choice of HumanAct12 rather than a dataset with no labels (e.g., Mix-amo (Adobe Systems Inc., 2021)), is for compatibility with previous publications.
Implementation. Our model uses the same architecture for all forms of conditioning, as well as for the unconstrained setting. The only change to the structure shown in Figure 2, is the removal of the conditional input, such that ztkz_{tk}ztk is composed of the projection of ttt only. To simulate an unconstrained behavior, ACTOR Petrovich et al. (2021) has been trained by (Raab et al., 2022) with a labeling of one class to all motions.
Quantitative evaluation. The results of our evaluation are shown in table 5. We demonstrate supe-riority over works that were not designed for an unconstrained setting, and get closer to MoDi (Raab et al., 2022). MoDi is carefully molded for unconstrained settings, while our work can be applied to any (or no) constrain, and also provides editing capabilities.
翻译:
数据。 尽管 HumanAct12(参见4.2节)是带标注的,但我们以无条件的方式使用它,忽略其标签。选择 HumanAct12 而非无标签数据集(例如 Mixamo (Adobe Systems Inc., 2021))是为了与之前的出版物保持兼容性。
实现。 我们的模型对所有形式的条件生成以及无条件设置都使用相同的架构。图2所示结构中唯一的改变是移除了条件输入,使得 ztkz_{tk}ztk 仅由 ttt 的投影组成。为了模拟无条件行为,ACTOR Petrovich et al. (2021) 已由 (Raab et al., 2022) 训练,将所有动作标注为同一类别。
定量评估。 我们的评估结果显示在表5中。我们展示了MDM在无条件生成任务上优于那些并非为无条件设置设计的作品,并且更接近于专门为无条件设置精心设计的 MoDi(Raab et al., 2022)。MoDi 专门针对无条件设置进行了精心设计,而我们的工作可以应用于任何(或无)约束,并且还提供了编辑能力。
解释:
这一段详细说明了无条件生成任务的数据、实现和评估结果。
- 数据选择:
- HumanAct12 (无标签使用): 再次使用HumanAct12,但这次是忽略其所有标签,将其视为一个纯粹的无标签动作数据集。
- 原因: 主要是为了与现有研究兼容,以便进行公平的比较,而不是因为没有其他无标签数据集可用(例如Mixamo)。
- 实现细节:
- 架构不变: MDM的核心架构保持不变,无论是条件生成还是无条件生成。
- 条件输入移除: 唯一的改变是,在无条件设置中,条件输入 ccc 被移除。因此,之前由 ttt 和 ccc 共同组成的 ztkz_{tk}ztk,现在只由时间步 ttt 的投影构成。
- ACTOR的无条件模拟: 为了与ACTOR模型进行比较,论文提到ACTOR被训练成将所有动作都归为“一个类别”,从而模拟无条件行为。
- 定量评估结果 (表5):
- MDM的优势: MDM在无条件生成任务上优于那些原本不是为无条件设置设计的模型。
- 接近MoDi: MDM的结果更接近专门为无条件生成任务设计的MoDi模型。这表明MDM的通用架构在无条件设置下也表现出色,尽管它并非专门为此任务优化。
- 通用性和编辑能力: 论文再次强调MDM的通用性(可应用于任何或无约束)以及其内置的编辑能力,这是其相比MoDi等专用模型的一个优势。
6 讨论 (DISCUSSION)
原文:
We have presented MDM, a method that lends itself to various human motion generation tasks. MDM is an untypical classifier-free diffusion model, featuring a transformer-encoder backbone, and predicting the signal, rather than the noise. This yields both a lightweight model, that is unburdening to train, and an accurate one, gaining much from the applicable geometric losses. Our experiments show superiority in conditioned generation, but also that this approach is not very sensitive to the choice of architecture.
A notable limitation of the diffusion approach is the long inference time, requiring about 1000 forward passes for a single result. Since our motion model is small anyway, using dimensions order of magnitude smaller than images, our inference time shifts from less than a second to only about a minute, which is an acceptable compromise. As diffusion models continue to evolve, beside better compute, in the future we would be interested in seeing how to incorporate better control into the generation process, and widen the options for applications even further.
翻译:
6 讨论 (DISCUSSION)
我们介绍了 MDM,这是一种适用于各种人体动作生成任务的方法。MDM 是一种非典型的无分类器引导扩散模型,其特点是采用 Transformer 编码器骨干网络,并预测信号本身而非噪声。这使得模型既轻量化、训练负担小,又准确,并从适用的几何损失中获益良多。我们的实验表明,MDM 在条件生成方面表现优越,而且这种方法对架构的选择也不是很敏感。
扩散方法的一个显著局限性是推理时间长,生成一个结果需要大约1000次前向传播。然而,由于我们的动作模型本身就很小,使用的维度比图像小几个数量级,因此我们的推理时间从不到一秒增加到大约一分钟,这是一个可以接受的折衷。随着扩散模型不断发展,除了更好的计算能力,未来我们还希望探索如何将更好的控制融入生成过程,并进一步拓宽应用选项。
解释:
这一节是论文的总结和展望。
- MDM的优点总结:
- 多功能性: 适用于多种动作生成任务。
- 独特设计: 作为“非典型的无分类器引导扩散模型”,其关键特点是:
- Transformer 编码器骨干: 强调其处理序列数据的能力。
- 预测信号而非噪声: 再次强调这一设计选择的优势,特别是与几何损失的结合。
- 轻量化与高效: 训练负担小,模型准确。
- 几何损失的贡献: 强调几何损失在提升动作质量方面的关键作用。
- 优越性能: 在条件生成方面表现出色。
- 架构不敏感: 表明MDM的性能主要得益于扩散框架本身和其核心设计,而非对特定骨干网络的严格依赖。
- MDM的局限性:
- 推理时间长: 扩散模型固有的缺点,生成一个结果需要多次迭代(约1000次前向传播)。
- 可接受的折衷: 尽管推理时间长,但由于动作数据的维度远小于图像(例如,一个动作序列的数据量通常远小于一张高分辨率图像),MDM的推理时间从不到一秒增加到大约一分钟,这在许多应用中是“可以接受的折衷”。
- 未来工作展望:
- 更好的控制: 探索如何将更精细、更直观的控制融入生成过程,例如更灵活地指定动作的风格、节奏或特定细节。
- 拓宽应用: 进一步扩展MDM的应用范围,可能包括更复杂的交互、多角色动作生成等。
实验中用到的各种指标解释
以下是论文在实验部分(特别是4.1节和5.2节)中提到的主要评估指标的详细解释:
-
R-precision (R-精确度)
- 目的: 衡量生成的动作与输入文本提示(或动作类别)的相关性。
- 工作原理: 通常涉及一个分类器或检索系统。对于一个文本提示,模型会生成多个动作。然后,将这些生成的动作与真实动作(以及其他不相关的动作)混合在一起。一个文本-动作匹配模型会尝试将文本提示与最相关的动作进行匹配。R-precision衡量的是在检索到的前R个动作中,有多少是与原始文本提示匹配的。值越高表示相关性越好。
- 上下文: 在文本到动作任务中,高R-precision意味着模型能生成与文本描述高度吻合的动作。
-
Multimodal-Dist (多模态距离)
- 目的: 衡量生成动作与输入文本提示的相关性,与R-precision类似,但可能通过不同的方式计算多模态嵌入空间中的距离。
- 工作原理: 通常涉及将文本和动作都嵌入到一个共享的潜在空间中。然后,计算生成动作的嵌入与文本提示的嵌入之间的距离。值越低表示相关性越好。
- 上下文: 同样用于评估文本到动作任务中生成动作的语义准确性。
-
FID (Fréchet Inception Distance)
- 目的: 衡量生成数据分布与真实数据分布之间的相似性。FID值越低,表示生成数据的质量和多样性越接近真实数据。
- 工作原理: FID通过计算真实数据和生成数据在某个特征空间(通常是预训练的深度神经网络的中间层,如Inception网络的特征空间)中的高斯分布(均值和协方差)之间的Fréchet距离来得到。它同时考虑了生成样本的质量(均值)和多样性(协方差)。
- 上下文: 这是生成模型领域最常用的评估指标之一。在动作生成中,低FID意味着生成的动作既真实又多样,能够很好地覆盖真实动作的分布。
-
KID (Kernel Inception Distance)
- 目的: 与FID类似,也是衡量生成数据分布与真实数据分布之间的相似性。KID被认为是FID的更鲁棒版本,尤其是在样本量较小时。
- 工作原理: KID使用最大均值差异(Maximum Mean Discrepancy, MMD) 的平方来比较两个分布,其中特征函数是Inception网络的中间层。它避免了FID对高斯假设的依赖,并且在小样本量下有更稳定的估计。值越低表示相似性越好。
- 上下文: 在无条件生成任务中被MoDi模型采用,因此MDM也使用它进行比较。
-
Diversity (多样性)
- 目的: 衡量生成动作分布内部的可变性。高多样性意味着模型能够生成多种不同的动作。
- 工作原理: 通常通过计算生成样本之间在特征空间中的平均距离或差异来衡量。例如,可以随机选择一批生成的动作,计算它们两两之间的特征距离,然后取平均。
- 上下文: 在文本到动作任务中,高Diversity表明模型能够针对同一个文本提示生成多种合理的动作变体,解决了“多对多”问题。
-
MultiModality (多模态性)
- 目的: 衡量给定单个文本提示时,模型生成动作的平均方差。它关注的是模型对于同一输入条件,能生成多少种不同的、但都合理的动作。
- 工作原理: 对于一个特定的文本提示,模型会生成多批动作。然后,计算这些动作在特征空间中的方差或散布程度。方差越大,多模态性越高。
- 上下文: 与Diversity类似,但更侧重于条件生成中,模型针对单一条件生成多重合理输出的能力。
-
Accuracy (准确率)
- 目的: 在动作到动作任务中,衡量生成的动作是否能被一个预训练的动作分类器正确识别为输入类别。
- 工作原理: 使用一个在真实动作数据上训练好的动作分类器。将生成的动作输入该分类器,看分类器预测的类别是否与原始输入动作类别一致。
- 上下文: 高准确率意味着模型能够忠实地生成符合指定动作类别的动作。
-
Precision/Recall (精确度/召回率)
- 目的: 在无条件生成任务中,衡量生成分布覆盖真实分布的程度(Recall)以及生成样本的真实性(Precision)。
- 工作原理: 通常通过构建真实数据和生成数据在特征空间中的最近邻图来计算。
- Precision: 衡量生成的样本中有多少是“真实的”(即在真实数据分布附近)。高Precision意味着生成的动作质量高,没有太多“离群值”。
- Recall: 衡量生成样本覆盖了真实数据分布的多少部分。高Recall意味着生成的动作多样性好,能够覆盖真实数据中的各种动作。
- 上下文: 这是一对在无条件生成中常用的指标,用于全面评估生成样本的质量和多样性。
这些指标共同为MDM在不同任务上的表现提供了全面且量化的评估。