【论文阅读】Self-supervised Learning of Person-specific Facial Dynamics for APR

【论文阅读】Self-supervised Learning of Person-specific Facial Dynamics for APR

基于特定人物面部动态的自监督学习自动人格识别

论文

关键词:自动人格分析(APR),排序损失,面部时间演变,人格化动态层,自监督学习,卷积神经网络,CNN权重表示
本文主要创新点在于:自监督学习、关注个性化特征

摘要

本文旨在解决现有自动人格分析系统中频繁出现的两个重要问题:1. 使用短视频片段甚至单帧,而非长期行为来推断人格特质;2. 缺乏对特定个体面部动态进行编码以用于人格识别的方法。为解决这些问题,本文提出了一种新颖的排序损失(Rank Loss)利用面部动作的自然时间演变,而非人格标签,来进行面部动态的自监督学习。我们首先训练一个通用的U-net风格模型从一组未标记的面部视频中学习到通用面部动态。然后,冻结该通用模型,并将一组中间滤波器整合到此架构中。随后,仅使用特定个体的视频继续进行自监督学习。这样,滤波器的权重就具有特定个体的特性,可以建模特定个体面部动态。接着,我们提出将滤波器的权重进行拼接作为特定个体的表示,该表示可直接用于预测人格特质,无需网络的其他部分。我们在自我报告的人格数据集和表观人格数据集上对所提方法进行了评估。除了在从视频中估计人格特质分数方面SOTA,我们还表明视频中受试者执行的任务会影响结果,任务组合的融合能达到最高准确率,且多尺度动态比单尺度动态更具信息量。

引言INTRODUCTION

人格是由生物、环境因素演变而来的特征性行为、认知和情感模式集,可以通过连贯的时间与空间变化的情感和行为体现。识别人格可以更好理解人类行为、情感过程和健康状况。
可测量的两种人格类型为:1. 自我报告的人格。其特点是个人对自己行为和情感模式的理解;2. 表观人格。一个或多个观察者基于各种线索对某人的感知。

基于特质的人格模型:评估长时稳定但存在个体差异的人格。

虽然评估人格特质的标准方法是使用基于语言行为描述符的问卷,但心理学研究指出:非语言面部行为也包含关于人类隐含气质和内部状态的重要线索。
因此,大多数基于视频的自动人格分析方法都建立在非言语面部线索的基础上。将视频层面的标签重新用作帧或片段的标签,并基于这些短片段训练机器学习(ML)模型。问题是:1.具有不同人格的人可以在单帧中表现出相同的动作原语(如面部表情、头部姿态等),表明人格的是它们如何随时间变化以响应特定刺激。因此,这种训练策略会导致一个病态的机器学习问题,即相同的输入模式具有多个标签,实际上不可能学习到一个好的假设。2.虽然一个人的帧/片段级面部行为可能在短时间内迅速变化,但视频标签保持不变,因为人格不会(在该时间尺度上)变化。

因此,短暂的行为表达(单帧或一小组帧)不包含足够的信息来编码人格特质特定模式,从帧/短片段中学习人格是不现实的。

虽然有研究通过计算所有帧/片段级手工设计特征的全局统计量来构建视频级描述符,但它们未能在结果描述符中保留面部行为的重要组成部分——详细的时间信息。

在这里插入图片描述

在本文中,我们的目标是为每个人提取一个人格化的视频级别面部行为描述符,长时稳定,但与其他人不同。并且,我们既不想丢失短期的时间信息,也不认为视频标签可以被视为帧/段级别的标签。为此,我们提出了一种新颖的“排序损失”来优化模型,以便在自监督的环境中从大量未标记的面部视频中学习通用的面部动态,并随后采用领域适应方法,生成一个编码个人特定面部动态的描述符。我们所提出方法的概述如图 1 所示。总之,本文为人格化的行为表示范式的自监督学习提出了以下四个贡献:

  • 提出了一种基于Bilen等的动态图像自监督学习方法。与Bilen采用的利用动态图像来概括序列层面的时间演变的方法不同,我们提出从单张图像中创建动态图像,将其作为自监督环境中的一个预处理任务。具体而言,我们提出了一种新颖的“排序损失”来训练一个网络,该网络在给定一张静态图像后,能够生成一个特征表示,当将其投影到其紧接的前后2帧上时,会根据这些帧相对于给定图像的时序位置产生单调递减的得分。换句话说,生成的表示需要为相邻帧分配递减的相似度得分,即其设计为“与相邻帧越来越相似”。这种任务可以通过自监督的方式进行学习,使得这些表示能够编码给定面部表情周围短时面部动作的动态变化。据我们所知,这篇论文是将自监督学习方法扩展到自动人格分析的首个工作。
  • 提出了一种领域自适应方法,通过自适应层将特定于个人的信息整合到预训练网络中。我们观察到,尽管所提出的排序损失允许网络在自监督设置下学习丰富的通用面部行为动态,但它缺乏对人格预测任务至关重要的特定于个人的信息。为了整合此类信息,我们在预训练网络(保持冻结状态)中添加了一组特定于个人的自适应层(PALs),并仅使用单个视频继续自监督训练。在此设置下,自适应层将编码特定于个人的面部动态。
  • 首次将学习到的网络权重用作行为描述符进行人格分析。现有方法基于预训练网络输出的特征进行构建,我们建议使用PAL的权重作为下游任务(在此为预测人格特质)的信息来源。PALs已针对特定个人的面部动作进行训练以实现自适应,因此这些权重构成了给定主体的固定大小的面部动态描述符,并且与视频长度无关,从而降低了生成表示的变异性。我们观察到,小型全连接网络能够利用我们的特定于个人的权重,在从视频预测人格的任务上取得令人鼓舞的结果。
  • 研究了多个因素(包括访谈内容、时间尺度和融合策略)对人格分析的影响,并发现这些因素会显著影响性能。

相关工作

基于视频的自动人格分析是一个跨学科研究领域,结合了心理学发现和最先进的机器学习技术。在本节中,我们首先回顾相关的心理学研究,包括五因素人格模型(第2.1节)以及人格与面部行为之间的关系(第2.2节),为应用面部行为动态预测人格特质的可行性提供依据。然后在第2.3节中,我们回顾了基于视频的自动人格预测的最新方法。

五因素模型

五因素模型(FFM)是一种经典词汇性人格评估方法,也是最广泛使用的人格模型之一。FFM由五个相对独立的人格维度组成:开放性(Openness to experience)、严谨性(Conscientiousness)、外向性(Extraversion)、宜人性(Agreeableness)和神经质(Neuroticism)。感兴趣的可以测试一下。FFM模型的稳健性已在各种情境中得到实证证明。本文也采用FFM模型作为人格的度量标准。

人格、面部行为与情绪之间的关系

一个人的隐含特质和内在状态会反映在其非言语表达行为中。由于人脸包含丰富的个人身份线索,如性别、种族、情绪状态、年龄等,因此普遍认为面部外观和行为可以作为主要且显著的非言语信息来源,用于推断各种人格化属性。因此,大量的人格预测研究均基于头像或上半身照片,而非全身图像。此外,一些研究表明,当被试者以自然姿势和面部表情拍摄时,观察者对几乎所有特质的判断都是准确的。

基于视频的自动人格预测

多项心理学研究表明,人格特质通过面部表情表现出来,而面部动作的自动分析已达到很高的准确性。因此,近年来出现了大量基于面部的自动人格预测方法,大致可分为两类:
1.基于帧级特征的方法。由于视频由一系列高维帧组成,直接从整个视频中提取表示具有挑战性。因此,许多现有系统首先从单帧或短片段(通常少于10帧)分析人格特质,并返回预测结果,然后通过决策级融合生成最终预测。
2.基于视频级特征的方法。由于人格特质在长期内应保持稳定,一些研究尝试基于相对较长期的信息(如整个视频或超过15秒的行为片段)而非单帧或短视频片段进行预测。许多方法首先进行帧/片段级特征提取,然后将其汇总为表示整个视频的统计描述符,使用SVR和岭回归等标准回归器预测人格特质。

然而,上述所有方法都使用视频级标签训练模型进行帧/片段级特征提取,这意味着它们都基于人格可通过单个面部表情或极短持续时间的面部动作反映的假设。如引言中所讨论的,这一假设会导致机器学习问题不适当,而且与人格特质的定义相矛盾:人格特质随时间稳定但个体间不同。虽然少数研究在不依赖此假设的情况下致力于视频级特征提取,但它们通常使用手工设计的中层线索,可能会忽略许多重要的时空模式,或导致时间信息丢失。为此,本文提出了一种新颖的特定于人的特征提取方法,旨在解决所有这些问题。

方法

本节描述了所提出的特定于个人的描述符编码面部动态的方法。该描述符旨在对给定个人保持稳定,但在不同个体之间有所差异。具体而言,我们希望它能成为一个良好的人格估计器,能够利用长视频片段编码特定于个人的面部动态。
如图1,我们的解决方案从使用情感数据(见第4.4.1节)预训练编码器开始,因为有证据表明人格与情感相关。第3.1节描述了人脸动态表示的自监督学习。第3.2.2节提出训练一个动态面部神经网络(DFNN),以学习通用的面部动态;第3.2.3节介绍了所提出的领域适应方法,用于为每个个体训练一组特定于个人的适应层(PALs)。第3.3节展示了如何利用学习到的PAL权重来预测人格特质。
与相关研究相比,我们方法的主要优势在于:1)描述符以自监督方式学习,无需人工标注标签,从而克服了缺乏逐帧标签的问题;2)可以通过使用不同的时间窗口来编码多尺度面部动态;3)所提出的描述符是从视频的所有可用帧中学习的,不会丢失任何短期细节。

面部动态的自监督学习

我们提出了一种新颖的排序损失函数,用于以自监督的方式训练U-net风格网络。这种方法不仅能够使网络在无需人工标注标签的情况下进行训练,还能直接从整张人脸图像中学习动态特征,而非依赖手工设计方法或深度模型提取的特征。

  • 输入和目标
输入:面部图像序列的中间图片
目标:动态表示,可以排序面部图像序列(忽略方向)

动态图像算法最初被提出作为人类动作识别的序列描述符。该描述符定义为从图像序列中计算出的RankSVM核。将其投影到序列的帧时,它会给出一个分数,从而能够根据帧的时序位置对它们进行排序。动态图像可被视为一种序列描述符,其特征与正在被考虑的这一帧之前的所有帧愈发相似。这种描述符编码了序列的时间演变,并通过实证验证可作为动作的良好动态表示。
由于我们的目标是训练一个学习面部动态的网络,因此我们旨在学习类似的动态表示(DR)。然而,与从每个给定图像序列中学习单独的DR不同,我们希望学习一个通用网络,该网络能够仅根据该序列的一张(中心)图像来预测面部图像序列的DR。这样,网络就被迫学习任意短序列中面部的通用时间演变规律。虽然我们可以直接将DR用作所提出自监督学习任务的目标表示,但我们观察到面部动作表现出对称且模糊的时间模式,这可能导致较弱的表示,因为“预测”任务(理解为对先前帧进行排序)会变得更加困难。如图2(a)所示,面部动作的时间反转对应物也是合理的面部动作。此类模糊信息的重要来源是面部表现的激活(起始)和去激活(结束)阶段。如图2(b)所示,三个相似的帧可能携带完全不同的动态,因此如果仅根据先前帧定义相应的面部表示,最终会得到完全不同的描述符。对于相似输入具有非常不同的描述符会使学习过程更加困难。为了部分克服这一限制,输出的DR根据其相对于输入帧的时间距离,对输入帧的前后帧进行排序。使用相对于给定图像的时间距离(无论方向如何),可以在对周围帧进行排序的同时对称地建模模式,这比学习预测这些帧更高效地解决了模糊性问题。形式上,设 I t ∈ R m × n I_t \in \mathbb R^{m\times n} It​∈Rm×n为给定的面部图像,设 { I t − T , I t − T + 1 , ⋅ ⋅ ⋅ , I t − 1 } \{I_{t-T} , I_{t-T+1}, · · · , I_{t-1}\} {It−T​,It−T+1​,⋅⋅⋅,It−1​}和 { I t + 1 , I t + 2 , ⋅ ⋅ ⋅ , I t + T } \{I_{t+1}, I_{t+2}, · · · , I_{t+T}\} {It+1​,It+2​,⋅⋅⋅,It+T​}为以 I t I_t It​为中心的 2 T + 1 2T + 1 2T+1帧窗口对应的帧。设 V a , ( a ∈ [ t − T , t + T ] ) V_a,(a ∈ [t − T, t + T]) Va​,(a∈[t−T,t+T])为帧a的静态表示。本文选择 V a V_a Va​为图像本身,即 V a = I a V_a=I_a Va​=Ia​。
我们的自监督学习任务定义为学习一个具有参数θ的网络 f ( ⋅ , θ ) f(·, θ) f(⋅,θ),该网络仅从单个图像 I t I_t It​输入生成动态表示(DR) d t ∈ R m × n d_t \in \mathbb R^{m\times n} dt​∈Rm×n。DR的任务是从 I t I_t It​的相邻帧中编码时间信息,能够根据其相对于 I t I_t It​的相对时间距离对前后帧进行排序。帧的排序通过为每帧分配一个分数来完成,该分数 S ( d t , V a ) S(d_t, V_a) S(dt​,Va​)定义为DR d t d_t dt​与图像 V a V_a Va​之间的弗罗贝尼乌斯内积 ⟨ d t , V a ⟩ \langle d_t, V_a\rangle ⟨dt​,Va​⟩。然后,这些分数以序数方式用于对给定窗口内的帧进行排序。具体来说,我们感兴趣的是为a < t的帧分配递增分数,为a > t的帧分配递减分数。这样,我们可以定义在时间a和b处计算的分数之间的差异为 δ a b ( t ) = S ( d t , V a ) − S ( d t , V b ) δ_{ab}(t) = S(d_t, V_a) − S(d_t, V_b) δab​(t)=S(dt​,Va​)−S(dt​,Vb​),其中a被选为比b更接近t,且a和b均为t之前的帧或t之后的帧。即目标为: d t 使 δ a b ( t ) > 0 , { ∣ a − t ∣ < ∣ b − t ∣ ( a − t ) ( b − t ) > 0 d_t使δ_{ab}(t)>0, \begin{cases}|a − t| < |b − t|\\ (a − t)(b − t) > 0\end{cases} dt​使δab​(t)>0,{∣a−t∣<∣b−t∣(a−t)(b−t)>0​。我们只会在对(a, b)排序错误的情况下( δ a b ( t ) < 0 δ_{ab}(t)< 0 δab​(t)<0)考虑 δ a b ( t ) δ_{ab}(t) δab​(t)的实际值。

在定义目标损失函数之前,让我们先来理解DR所描述的内容。需要指出的是,该分数被定义为点积,它表示生成的表示 d t d_t dt​与特征描述符 V a V_a Va​之间的相似度。对于与输入图像 I t I_t It​在时间上较近的帧,该分数应较高,因此我们获得的特征表示会随着帧的移远而“逐渐降低相似度”。通过这种方式,学习到的表示将动态图像编码为加权变化的摘要。
  • 训练策略
    自监督学习方法 f ( ⋅ , θ ) f(·, θ) f(⋅,θ)的任务为从输入人脸图像 I t I_t It​中学习一个投影 d t d_t dt​,即 d t = f ( d_t = f( dt​=f(I_t , θ ) , θ) ,θ)。从先验知识来看,我们可以借助原始动态图像算法,根据相邻帧和前述准则为每个输入 I t I_t It​定义一个目标 d t d_t dt​。在这种情况下,可以使用生成输出与对应目标之间的重建损失,使网络学会重现此类表示。然而,这种损失函数无法体现生成表示的排序能力,即重建损失中的细微误差不一定与帧排序中的误差相关。通过实证验证,当使用预定义表示和重建损失时,对相邻帧进行排序的预训练任务会显著退化。因此,我们提出通过强制网络生成直接满足式(2)的输出来学习DR,即我们希望网络能够帮助确定产生DR的参数。对于给定的输入图像 I t I_t It​,我们首先计算表示 d t = f ( d_t = f( dt​=f(I_t , θ ) , θ) ,θ),然后根据式(2)中定义的成对分数,计算以 I t I_t It​为中心、包含 N = 2 T + 1 N = 2T + 1 N=2T+1帧的窗口内所有帧的分数。我们建议使用一种仅惩罚负分数(即基于其分数会被错误排序的帧)的排序损失。为了避免零附近的微小波动对损失产生影响,我们引入了排序成功因子 η η η表示分隔两个正确排序图像之间分数的最小值。损失函数 L f ( d t ) = γ × ‖ d t ‖ 2 + ∑ b = t − T t − 1 ∑ a = b + 1 t m i n ( m a x ( 0 , η − δ a b ( t ) ) , ε 1 ) + ∑ a = t t + T − 1 ∑ b = a + 1 T m i n ( m a x ( 0 , η − δ a b ( t ) ) , ε 2 ) L_f (d_t) = γ × ‖d_t‖^2 + \sum\limits^{t−1}_{b=t−T}\sum\limits ^t_{a=b+1} min(max(0, η − δ_{ab}(t)), ε_1) + \sum\limits ^{t+T −1}_{a=t} \sum\limits ^ T_{ b=a+1} min(max(0, η − δ_{ab}(t)), ε_2) Lf​(dt​)=γ×‖dt​‖2+b=t−T∑t−1​a=b+1∑t​min(max(0,η−δab​(t)),ε1​)+a=t∑t+T−1​b=a+1∑T​min(max(0,η−δab​(t)),ε2​)。γ是一个正则化因子(设为1)。 ε 1 ε_1 ε1​和 ε 2 ε_2 ε2​为松弛因子,对每个单个图像对的排序损失设置上限,避免异常值(例如错误检测的人脸区域)导致极大损失值,从而导致网络出现偏差。实验中, ε 1 = ε 2 ∈ [ 0.35 , 0.66 ] ε_1=ε_2\in[0.35, 0.66] ε1​=ε2​∈[0.35,0.66],具体取决于时间窗口的大小。损失 L f ( d t ) L_f (d_t) Lf​(dt​)可以针对网络f的参数进行微分,因此网络可以通过典型的反向传播方法进行学习。训练过程也如图3所示。需要再次强调的是,我们并非针对预定义的“真实值” d t ∗ d_t^∗ dt∗​进行反向传播,因此允许网络在无需为每个训练图像显式生成目标DR的情况下进行训练。这样,网络也有助于定义DR的形式。

人格化描述提取

自动理解人类面部行为的常见挑战之一是如何弥合通用模型与特定个体模型之间的差距。尽管人们在表达面部行为方面存在潜在的相似性,但在个体层面也存在细微差异。因此,在测试时如何有效地将特定个体信息整合到模型中,这是一个具有广泛应用前景的开放问题。
鉴于上述对DR的自监督学习描述,本节探讨以下两个问题:1. 如何从一组未标记的面部视频中学习通用的面部动态;2. 如何从个体的未标记面部视频中,除通用动态外,同时编码特定个体的面部动态。

在这里插入图片描述
  • 通用面部动态建模
    由于大多数人表达面部动作的方式相似,我们的首要目标是学习一个DFNN网络,该网络能够编码如图4所示的、大多数个体可观察到的一般面部动态。我们提出通过在编码器顶部添加一个由若干全连接层组成的回归头来进行效价和唤醒度估计任务,以此对编码器进行预训练。通过这种方式预训练编码器,生成的DR旨在捕捉与相关面部行为的情绪特征空间中的时间变化。换句话说,由于某些情绪被发现能反映人格特质,这种预训练将引导网络捕捉与人格相关的信息,而非身份等其他类型的信息。在编码器预训练完成后,我们采用所提出的自监督学习方法来训练DFNN。所提出的排序损失使DFNN能够从大量易于获取的无标签人脸视频中学习一般的面部动态模式。具体而言,DFNN学习对不同年龄、性别、种族、身份等人群展示的各种面部表情的相邻帧进行排序。因此,它应该能够编码大多数人在不考虑其身份的情况下可观察到的面部动作模式。
  • 人格化面部动态建模
    尽管人们通过面部行为表达情感和认知状态的方式存在潜在的相似性,但也存在细微的个体差异。在本文中,我们观察到,在训练时排序准确率约为96%(时间窗口为7帧和11帧,步长为2的平均结果),而DR在测试时的配对比较排序准确率为87%。为了在测试时提升每个人的性能,我们提出将一组人格化自适应层(PALs)引入通用训练的DFNN网络。这种设置允许PALs从多个空间分辨率的特征图中编码动态信息。这些PALs针对每个人独立训练。我们脱离通用网络(保持冻结状态),仅通过优化损失函数,从特定人员的视频中调整PALs层的参数。这使得PALs参数具有人格化,即参数θ分为通用子集和特定人员子集,分别对应UNet和PALs。换句话说,令 θ = θ g , θ p s θ = θ_g, θ_{ps} θ=θg​,θps​,其中 θ g θ_g θg​是UNet的权重,在大量通用人脸视频池中训练得到; θ p s θ_{ps} θps​是额外PALs的权重。现在,假设仅给定一组特定人员的视频,冻结 θ g θ_g θg​训练。在这种设置下,如图5所示,经过自适应后,DR在特定人员未见过的视频上的排序能力提高到93%。我们发现,由DFNN-PAL网络生成的DR在特定人员未见过的视频帧排序性能上得到改善(从87%提高到93%),但对其他个体的性能有所降低。我们认为,特定人员动态推理性能提升的原因是,调整后的PALs能够更好地编码给定人员的特定面部动态,同时结合DFNN提供的通用面部动态。此外,尽管单个视频中的面部表现差异很大,PALs仍帮助DFNN从大多数帧中准确推断面部动态(93%的排序准确率)。因此,我们假设PALs中编码的动态在给定人员的各种面部表现中是稳定的。同时,基于其他个体排序性能的下降,我们推测PALs中编码的面部动态模式在其他人中很少出现,这是由于个体层面面部动态的细微差异所致。因此,PALs有望编码相对稳定的特定人员面部动态——对于给定人员而言随时间变化较小,但与其他人员相比存在差异。
  • 人格化描述符
    我们观察到,我们的方法提供了一种与视频长度无关的特定于个人的表示方式,即PAL层的表示。具体而言,我们建议使用 θ p s θ_{ps} θps​作为在人格预测下游任务中使用的信息来源。由于权重 θ p s θ_{ps} θps​已针对特定个人训练用于上述排序任务,因此它们具有特定于个人的特性,并且对于特定个人而言,无论视频长度如何,都构成固定大小的表示。本文中使用的每种特定于个人的表示均由5个PAL层的滤波器权重组成,这些层的滤波器数量分别为32、64、128、256和512,从而产生的表示为1984维(992个权重和992个偏置)。

模型结构
本文选择U-Net网络(我们将其命名为动态面部神经网络DFNN)计算 f ( ⋅ , θ ) f(·, θ) f(⋅,θ),这是一个具有多层跳跃连接的5层编码器-解码器网络(见图4)。编码器包含五个模块,每个模块由一个二维卷积层、一个实例归一化层和一个Leaky ReLU激活函数组成。解码器也包含五个模块。解码器中的每个模块包含一个转置卷积层、一个实例归一化层和Leaky ReLU中。所有五个编码器-解码器层对都通过跳跃连接相连。
为了推断特定人物的面部动态,我们提出了DFNN-PALs网络结构。具体而言,我们在DFNN的每个跳跃层中插入一个卷积块,该卷积块由一个核大小为1的卷积层、一个实例归一化层和一个Leaky ReLU组成。PALs的拓扑结构对所有个体保持一致,即五个中间层,核大小为1,分别包含32、64、128、256和512个滤波器。在特定人物的训练过程中,DFNN的权重被冻结,仅调整插入的PALs的权重。

在这里插入图片描述

训练人格模型

为了学习用于人格识别任务的回归模型,我们将学习到的人格化描述符用作人工神经网络(ANN)的输入特征。图1展示了该ANN的结构。它包含4个全连接隐藏层,每个隐藏层都配备了dropout(概率为0.5),以防止模型过拟合。最后一层有5个输出单元,每个单元对应五大人格特质中的一个。这种结构使模型能够联合学习所有五种人格特质。由于人格化表示的时间尺度由时间窗口的大小决定,而人格分析的最佳时间尺度尚不明确,因此我们提出使用多尺度人格化描述符来完成此任务,每个描述符捕捉不同时间尺度下的面部动态。这可以通过使用不同长度的时间窗口来训练多组PALs实现。这些人特定描述符的组合从而代表了给定个体在多个时间和空间分辨率下获得的面部动态。总之,人格特质分析的方法如下:我们从DFNN网络出发,添加PAL层。然后独立地为每个受试者训练适应层,并将权重 θ p s θ_{ps} θps​用作其特征表示。接着,将相应的 θ p s θ_{ps} θps​输入ANN网络。网络训练的实现细节在第4.2节中解释。

实验

为了探究我们方法的可行性,我们开展了实验,对自我报告的人格和表观人格进行了分析。此外,我们还测试了DFNN生成的DRs的排序能力,以评估其动态编码能力。在本节中,我们首先简要介绍实验所使用的数据库(第4.1节)。然后,在第4.2节中描述实现细节,在第4.3节中介绍评估指标。在第4.4节中,我们描述了一系列消融研究的结果,这些研究旨在评估我们方法中不同设置的影响。最后,在第4.5节中,我们将所提出的方法与当前最先进的方法进行比较。

人格数据库

尽管有多个公开视频数据集用于表观人格研究,但仅少数数据库被用于研究自我报告人格。即使在可用的自我报告人格数据库中,大多数数据库的受试者数量也非常少。
因此:自我报告人格实验:VHQ数据集。表观人格实验:ChaLearn数据集。
总之,Chalearn数据集与VHQ数据集的不同之处在于:1. 注释类型;2. 视频数量;3. 视频时长;4. 录制条件。

实现细节

  • DFNN训练:
    我们首先使用Aff-Wild数据集对编码器进行预训练,用于效价和唤醒度强度估计任务。之后,仅使用RECOLA数据集来训练和验证DFNN,而SEMAINE和BP4D数据集的训练集、验证集和测试集中的所有视频均用作训练DFNN的跨数据集帧排序评估的测试集。对于RECOLA数据集,我们使用了对应于AVEC 2016挑战赛的27段视频。对于SEMAINE数据集,我们使用了用于AVEC 2012挑战赛的子集。对于BP4D数据集,我们使用FERA 2015挑战赛定义的分区。因此,在设置要考虑的帧跨度时提到步长S,对于SEMAINE数据集,这将自动缩放为2S。在DFNN训练期间,输入和输出均为大小为224×224×3的张量。
  • PALs训练:
    为了为每个人生成PALs,我们保持DFNN的权重冻结,并为所有个体保持PALs的初始权重相同。在特定人员训练过程中,我们根据时间戳向网络输入帧,即从视频开始到视频结束。这不仅确保PALs的权重在训练期间始终收敛到特定视频的同一组值,还确保个体训练的PALs之间的差异仅受特定人员的面部动态影响,而不受权重初始化或用于训练的帧顺序的影响。为了调整PALs训练的超参数,我们将Chalearn训练集和验证集中的每个视频平均分为两部分,一部分用于训练,另一部分用于排序准确率验证。我们最终选择了一组生成最高排序准确率的超参数,然后使用每个完整视频为每个人训练一组新的PALs作为特定人员表示。同时,我们使用从Chalearn实验中获得的相同超参数为VHQ数据集中的视频训练PALs。由于此过程不需要人工标注,我们为Chalearn和VHQ中的所有视频生成了PALs。DFNN和PALs的所有实验均在PyTorch中实现,其中使用ADAM作为优化方法。
  • 人格模型的训练与测试
    由于VHQ数据集中的数据量有限(每次访谈会话包含55名参与者的55段视频),我们采用留一法交叉验证来评估自报告人格特质的ANN模型。在每次折叠中,使用54名参与者的视频进行训练,剩余1名参与者的视频用于测试。报告的结果是通过对所有55次折叠的结果取平均值得到的。
    对于ChaLearn数据集,我们基于数据集中定义的相应子集实施了标准的训练、验证和测试流程。在这些过程中,采用了基于相关性的特征选择(CFS)来选择最相关的特征,该操作在训练集上进行,且使用皮尔逊线性相关系数来衡量相关性。不同实验中所选特征的维度范围为16至42。在验证和测试阶段,从验证数据和测试数据中选择相同的特征。人格模型(ANN)的训练和评估在MATLAB 2019中实现,其中采用RMSProp优化方法,学习率为0.0005,训练进行了150个 epoch。

评价指标

ranking accuracy(RA):评估生成的DR的排序能力
皮尔逊相关系数(PCC)、均方根误差(RMSE):衡量人格分析方法的性能
平均准确率ACC:与ChaLearn上的模型比较

消融实验

在本节中,我们报告并分析了多项消融实验的结果,以评估不同设置(例如编码器预训练、编码动态的时间尺度、任务内容和融合策略)对人格预测性能以及面部动态编码能力的影响。

  • 编码器预训练:评估所提出的基于情感引导的编码器预训练对后续面部动态学习效果的影响。
  • 时间窗口大小:时间窗口T的大小(以秒为单位)决定了DFNN和PALs所学习的描述符的时间尺度。这由两个参数决定:步长和帧数。
  • 视频内容:探究视频中任务内容是否会对人格分析产生影响 → \to →不同任务引发的行为可能会对人格预测模型的性能产生重大影响
  • 融合策略:视频级融合(将三个视频合并后训练PALs并生成特定于个人的描述符)、特征级融合(将每个视频生成的特定于个人的描述符进行拼接)、决策级融合(使用线性回归组合每个视频生成的预测) → \to →决策级融合取得了最佳平均性能,视频级融合在平均性能方面优于特征级融合。

与其他方法的比较

与四个基线模型(直方图特征(VHQ数据集的基线)、行为原语的频谱表示、深度回归网络(仅视频特征)、深度残差网络)比较。我们还从经过良好训练的DFNN编码器的最后一层提取了逐帧潜在特征,并采用频谱方法将这些特征汇总为每个视频的表示。

在这里插入图片描述

结论

本文提出了一种新颖的自动人格分析方法。该方法首先预训练一个情感引导编码器,然后采用所提出的排序损失函数来训练一个深度前馈神经网络(DFNN),使其能够学习通用的短期面部动态特征。训练过程以自监督方式进行,无需任何人工标注。随后,在经过良好训练的DFNN的每个跳跃层中插入一个卷积块,这些卷积块针对每个人分别进行训练,同样采用自监督方式。这使得学习到的权重能够适应相应个体的面部行为,因此我们提议将这些权重用作人格化描述符。
我们在自我报告人格数据集和表观人格数据集上对所提方法进行了评估。特别地,通过一系列消融实验展示了学习设置和超参数的影响。获得的结果表明:1. 编码器的学习率对于DFNN学习动态特征及后续的人格预测至关重要,而编码器的情感引导预训练增强了人格预测的性能;2. 用于训练DFNN和PALs的帧的时间窗口决定了所学动态特征的时间尺度,结果表明每个尺度的动态特征都能提供关于人格的一些有用且独特的信息。这一点从多尺度时间动态融合模型的性能优于单尺度模型的结果中可以明显看出;3. 在自我报告人格预测中,由不同任务触发的面部行为会显著影响预测性能,包含多个任务的较长视频比仅包含单一任务的短视频能提供更好的预测结果;4. 如果每个个体有多个视频,决策级融合似乎能产生最佳结果;5. 与现有的基于视频的自动人格预测方法相比,我们的方法在 Agreeableness(宜人性)、Neuroticism(神经质)和 Openness(开放性)特质上均取得了显著改进。
未来的工作可以将当前基于面部的成果与语音信息相结合,以预测人格。具体而言,我们感兴趣的是研究在自监督方式下联合从视听和语言信号中学习人格特质的最佳网络结构。虽然我们的表示是通过无监督学习来总结面部动态而非人格信息,但由于它们是以领域无关的方式学习的,因此可以应用于其他面部动态重要的任务。未来的工作还可以将所提出的方法扩展到其他领域。此外,由于缺乏公开的大规模视听自我报告人格数据集,这限制了深度学习方法在该领域的应用,我们还计划扩展当前的VHQ数据集,增加更多受试者,并从多个传感器(音频、视频、热成像、脑电图以及皮肤电导、心率等生理信号)记录更多数据。

Read more

【Arrow开发者必读】:3步解决C和Rust间Schema不一致难题

第一章:Arrow开发者必读:C与Rust数据交互的挑战 在现代数据处理系统中,Apache Arrow 作为跨语言内存数据标准,广泛用于高性能计算场景。当使用 Rust 编写核心逻辑并与 C 接口交互时,开发者常面临内存布局不一致、生命周期管理复杂及类型系统差异等难题。这些挑战直接影响数据传递的安全性与效率。 内存模型差异带来的风险 Rust 的所有权机制与 C 的手动内存管理存在根本冲突。若将 Rust 创建的 Arrow 数组直接暴露给 C,可能因提前释放导致悬垂指针。必须通过 FFI 边界进行深拷贝或使用引用计数包装。 例如,在 Rust 中导出数组指针时需确保其生命周期超越调用栈: #[no_mangle] pub extern "C" fn get_array_data() -> *const ffi:

介绍终身机器人学习的数据集LIBERO

介绍终身机器人学习的数据集LIBERO

1 LIBERO的作用 LIBERO是一个用于研究多任务和终身机器人学习中知识迁移的综合基准测试平台,LIBERO是基于robosuite框架构建的。它专注于机器人操作任务,这些任务需要两类知识: 1. 陈述性知识:关于物体和空间关系的知识 2. 程序性知识:关于运动和行为的知识 2 核心原理 任务生成与基准设计 LIBERO提供了一个程序化生成管道,原则上可以生成无限数量的操作任务。系统包含130个任务,分为四个任务套件,每个套件都有受控的分布偏移: * LIBERO-Spatial/Object/Goal:专注于特定类型知识的迁移 * LIBERO-100:包含需要迁移纠缠知识的100个操作任务 学习框架 系统采用模仿学习作为主要学习方法,因为任务使用稀疏奖励函数(任务完成时获得+1奖励)。LIBERO提供高质量的人类遥操作演示数据集用于训练。 算法与策略架构 LIBERO实现了三种视觉运动策略网络: * bc_rnn_policy:基于RNN的行为克隆策略 * bc_transformer_policy:基于Transformer的行为克隆策略

OpenClaw 完整安装与配置文档(包含Minimax/deepseek模型接入、飞书机器人接入)

OpenClaw 完整安装与配置文档 文档说明:本文档适用于 Linux 系统(Debian/Ubuntu 系列),详细梳理 OpenClaw 从基础环境准备、核心程序安装,到模型配置(Minimax/DeepSeek)、飞书渠道对接的全流程,所有交互式配置选项完整呈现,步骤可直接复制执行,适配新手操作。 适用场景:OpenClaw 新手部署、企业内部飞书机器人对接、Minimax/DeepSeek 模型配置 前置说明: 1. 服务器需联网,确保能访问 GitHub、npm、飞书官网; 2. 操作全程使用终端命令行,建议使用远程工具(如 Xshell、Putty)连接服务器; 3. 复制命令时需完整复制,避免遗漏特殊符号; 4. 所有交互式配置选项均完整列出,按文档指引选择即可。 5. 拥有root用户/sudo权限。

山东大学《Web数据管理》期末复习宝典【万字解析!】

山东大学《Web数据管理》期末复习宝典【万字解析!】

🌈 个人主页:十二月的猫-ZEEKLOG博客 🔥 系列专栏:🏀山东大学期末速通专用_十二月的猫的博客-ZEEKLOG博客 💪🏻 十二月的寒冬阻挡不了春天的脚步,十二点的黑夜遮蔽不住黎明的曙光  目录 1. 第二章 网络爬虫 1.1 爬虫基础知识 1.2 爬虫分类 1.3 开源工具 Nutch 2. 第三章 网页分析 2.1 正则表达式 2.2 DOM模型 2.3 Beautiful Soup工具 2.4 Scrapy框架 2.5 不同爬虫工具比较 2.6 元搜索引擎 3. 第四章 爬虫与网站的博弈 3.1 Robot协议 3.