← 返回 PaperDaily 视觉与图像

LVLM遇模态缺失就“趴窝”?TTSD-FAR用0.629%参数把F1从0.48救回0.51

传感器掉线、字幕丢失、画面损坏……LVLM一遇模态缺失就肉眼可见地“降智”。这篇TTSD-FAR偏偏只更新0.629%的参数,就把50%文本缺失下的F1从趴窝的0.4785拉回0.5124,还顺手解决了持续适应的漂移问题。方法不算复杂,思路非常实用,值得所有做多模态落地的朋友读一读。

LVLM遇模态缺失就“趴窝”?TTSD-FAR用0.629%参数把F1从0.48救回0.51

paperdaily_reaction_gif


原论文信息如下:
论文标题:
TTSD-FAR: 面向LVLM缺失模态情感识别的测试时自蒸馏与Fisher锚定恢复
发表日期:
2026年08月

发表单位:
LIVIA, ETS Montreal, Canada; Aiim Lab, Queen’s University, Canada

原文链接:
https://arxiv.org/pdf/2608.18386v1.pdf


大家有没有想过一个场景:你正在参加一个重要的视频会议,对方说着说着,突然画面卡住变成了“马赛克艺术”,只剩下声音还在顽强输出。这时候,如果你是一个正在做“多模态情感识别”的AI,你还能准确判断出对方是高兴、愤怒还是尴尬吗?
再比如,智能客服系统正在分析一段用户反馈视频,结果语音识别服务突然抽风,字幕文件没生成出来。这时候,这个AI还能从“无声电影”里读懂用户的愤怒值吗?
这就是本期论文要解决的核心问题——在实际部署中,多模态AI经常会遇到“模态缺失”(Missing Modality),也就是某些输入通道突然失效。别看现在大视频语言模型(LVLM)在各种榜单上呼风唤雨,一旦遇到这种“缺胳膊少腿”的输入,它们的表现可能比路人甲还路人甲。

LVLM面对缺失模态为何束手无策?

论文作者先用一个非常直观的实验展示了问题的严重性。他们在MELD数据集上,用Video-LLaVA-7B模型做了个测试:把输入中的文本模态(即对话的字幕)随机遮挡掉50%,然后观察模型内部的表征变化。
结果可以说是相当“惨烈”。通过UMAP可视化可以清楚地看到,当所有模态都完整时,不同情绪类别的表征在隐空间里是“分家”的,边界清晰,一眼就能看出谁是谁。但当文本模态缺失后,这些表征就像过年挤地铁一样,全部糊成一团,分类边界彻底消失。
图1:内部表征的UMAP可视化。叉号代表缺失模态输入,圆点代表完整模态输入。
内部表征的UMAP可视化。叉号(×)代表缺失模态输入,圆点(•)代表完整模态输入。可以看到完整模态下两类边界清晰,而缺失模态下完全重叠。
定量分析同样触目惊心:同一批样本,完整模态和文本缺失模态之间的最大均值差异(MMD)高达0.8350,余弦相似度只有0.6342。这意味着,仅仅去掉一个模态,模型内部的“世界观”就发生了翻天覆地的变化。性能上,F1分数从0.6149直接掉到0.4785,这还只是50%的缺失率,如果是100%呢?不敢想。
那既然问题这么严重,有没有现成的补救办法呢?传统的测试时自适应(TTA)方法,比如熵最小化(TENT、EATA),在LVLM面前直接“翻车”。论文里的实验数据显示,TENT在文本缺失50%的情况下,F1直接崩到0.1655,这跟随机猜(七分类大概是0.14)几乎没什么区别。EATA稍微好点,但也就0.2482,同样处于“报废”状态。
为什么熵最小化会失效?因为LVLM是自回归模型,它生成的是自然语言序列,输出层的“置信度”和分类任务里的“概率分布”完全是两码事。在模态缺失的情况下,模型很容易“自我感觉良好”地输出一个语法通顺但语义完全错误的答案,这时候去最小化熵,反而是在强化错误。
再看检索增强生成(RAG),这个方法在知识密集型任务里表现不错,但在模态缺失场景下也不灵了。原因很简单:RAG需要拿当前输入去检索知识库,但如果“当前输入”本身就不完整(比如文本没了),检索出来的东西自然也是“牛头不对马嘴”。论文实验显示,RAG在MELD上文本缺失50%时,F1也只有0.4660,比不处理的0.4785还低。

TTSD-FAR:自蒸馏+Fisher锚定的双保险方案

既然传统方法都不行,那该怎么办?蒙特利尔ETS和女王大学的研究者们提出了一个非常优雅的思路:既然缺失模态会导致模型内部表征发生偏移,那我们能不能在测试的时候,让模型自己学着把“偏移的表征”拉回到“完整模态的表征”上?
这就是TTSD(测试时自蒸馏)的核心思想。框架整体结构如图2所示,看起来不复杂,但里面藏着不少巧思。
图2:提出的TTSD-FAR方法示意图。
图2:TTSD-FAR方法整体架构图。实线绿色箭头表示完整模态下的信息流,虚线红色箭头表示缺失模态情况下的信息流。完整模态下,教师LoRA提供参考特征;缺失模态下,学生LoRA接受缺失输入并尝试对齐。蒸馏损失L_distill用于拉近学生与教师表征的距离。
框架的底座是一个冻结的7B Video-LLaVA模型,在此基础上挂了两组LoRA适配器:一组叫教师LoRA(Teacher LoRA),另一组叫学生LoRA(Student LoRA)。这两组LoRA的分工非常明确。
教师LoRA是在完整模态数据上训练出来的,它的“眼界”是完整的。在测试阶段,每当遇到一个模态完整的样本,教师LoRA就会对输入进行处理,产出一组高质量的内部特征表征,作为“标准答案”。
学生LoRA则在测试阶段同步参与。它的输入是被“特意破坏”的——论文里叫“掩码输入”。虽然当前测试样本本身是完整的,但研究者会人为地把它的一部分模态遮掉,比如把文本替换成空字符串,或者把视频帧换成零张量。这时候,学生LoRA接收的就是一个“缺胳膊少腿”的输入。
然后,一个特征级蒸馏损失(L_distill)被计算出来:学生LoRA在“缺失模态输入”下产生的表征,要尽量去模仿教师LoRA在“完整模态输入”下产生的表征。通过梯度回传,学生LoRA的参数被更新,从而学会了一种“脑补”的能力——即使看不到完整的输入,也能在特征空间里尽可能还原出完整模态应有的样子。
到了真正推理的时候,如果来了一个模态缺失的测试样本,模型就直接用学生LoRA来处理。此时,学生LoRA因为已经在测试阶段“见识”过各种缺失组合,所以它能在缺失模态下依然产出相对靠谱的表征,最终生成的情感判断也会准确得多。
这个流程解释起来有点绕,但核心只有一句话:用完整的模态去教缺失的模态,让学生学会“脑补”

特征级蒸馏如何超越熵最小化与RAG?

为什么特征级蒸馏能成功,而熵最小化和RAG会失败?这里面的门道值得好好掰扯一下。
先看熵最小化。这类方法的底层逻辑是“置信度高的预测就是正确的预测”。这个假设在传统的单标签分类任务里基本成立,但在自回归LVLM里就站不住脚了。LVLM的输出是一个词一个词蹦出来的,每个词的置信度都很高,但组合起来的整句话可能完全跑偏。在模态缺失的情况下,模型特别容易“一本正经地胡说八道”,此时你再去优化熵,等于是给错误火上浇油。
再看RAG。RAG的思路是“用外部知识来补全缺失信息”,这听起来很合理,但实际操作起来有个致命的前提——检索的query(查询)得足够靠谱。如果当前观察到的模态很弱(比如文本全没了,只有一些模糊的视频帧),模型拿这些“弱信号”去检索,检索回来的东西大概率是“文不对题”的,反而引入了更多噪声。
特征级蒸馏则完全绕开了这两个坑。它不关心模型的输出词是什么,也不依赖任何外部知识库,它只关注一件事:模型内部的特征表征是否“长得像”完整模态下的样子。这是一种自监督的、内在的校准方式
要理解LVLM为什么在模态缺失面前如此脆弱,得先搞明白一件事:模态缺失本质上是一种隐藏的分布偏移。LVLM在训练时,见过的样本几乎都是“视觉+音频+文本”齐全的完整输入,模型内部的注意力机制早已习惯了模态之间的相互配合。一旦到了测试阶段,某个模态突然掉线,模型面对的输入分布就和训练时完全不同了。
论文作者从三个角度验证了这一判断。首先是内部表征可视化:在MELD数据集上,把文本模态遮掉50%,用Video-LLaVA-7B提取内部特征,UMAP投影后可以明显看到,完整模态下两个情绪类别的表征是“井水不犯河水”的,而文本缺失后两类表征直接糊成一团。第二是定量指标:同一批样本在完整模态和缺失模态下,最大均值差异(MMD)高达0.8350,余弦相似度只有0.6342。MMD是用来衡量两个分布是否一致的核心指标,0.8350这个数值意味着两个分布几乎“各说各话”。第三是任务性能:F1从0.6149掉到0.4785。
既然问题这么严重,直接重新训练模型行不行?不行。一个7B参数的LVLM重训一次需要约1020次浮点运算,普通团队根本扛不住。那用训练时的模态丢弃策略行不行?也不行。这种做法会牺牲完整模态下的性能,而且部署时遇到的具体缺失模式千变万化,训练时根本模拟不全。
所以只剩下一条路:测试时自适应(TTA)。也就是在推理阶段,让模型自己根据当前测试数据“微调”一下,不用回到训练环境。但这个思路在LVLM上也接连碰壁。熵最小化方法(TENT、EATA)是传统TTA的看家本领,它们在分类模型上表现不错,在自回归LVLM上却直接崩溃——TENT在文本缺失50%时F1崩到0.1655,几乎等于随机猜。检索增强生成(RAG)依赖检索库补全信息,但当前的输入模态本身已经残缺,拿弱信号去检索,结果自然是牛头不对马嘴。
问题很清楚了:LVLM需要一种既能适应任意缺失模态组合、又能在长期运行中保持稳定的轻量级自适应方案。这就是TTSD-FAR交出的答卷。

TTSD-FAR:自蒸馏+Fisher锚定的双保险方案

TTSD-FAR的全称是Test-Time Self-Distillation with Fisher-Anchored Restoration,直译过来就是“基于Fisher锚定恢复的测试时自蒸馏”。名字听着长,拆开看其实就两部分:TTSD负责“学”FAR负责“稳”
先看“学”的部分。TTSD的思路是:在测试阶段即时构建一个“教师-学生”对。教师是冻结的,学生是轻量可更新的,两者都挂在同一个冻结的LVLM骨干上,但各自带一组独立的LoRA适配器。这里的LoRA(Low-Rank Adaptation,低秩适配)是一种参数高效的微调方法,只更新一小部分低秩矩阵,就能让大模型适应新任务。教师LoRA在完整模态数据上预先训练好,它的特征输出代表了“完整模态下应有的样子”。学生LoRA则负责接收“人为制造的缺失模态输入”,学着让自己的输出特征向教师靠拢。
具体来说,测试阶段每来一个完整模态的样本,论文会先构造一个掩码版本——把视频帧或者文本随机遮掉一部分,得到一个残缺输入。这个操作可以用掩码输入向量来表示:
公式:掩码输入 = (视频掩码·视频输入, 文本掩码·文本输入)
这里的mv和mt是二进制掩码,取0表示该模态被完全遮掉,取1表示保留。通过随机改变掩码的组合方式,学生LoRA就能在测试阶段“见识”各种缺失模态模式。
然后,同样的样本走两条路:完整样本喂给教师LoRA,掩码样本喂给学生LoRA。教师和学生都在LVLM的第l层输出特征,分别记为htea和hstu。蒸馏损失直接对这两个特征做均方误差:
公式:蒸馏损失 = E[||学生特征 - 教师特征||^2]
梯度只回传到学生LoRA,教师LoRA全程冻结。这样反复迭代,学生就学会了“脑补”——输入里缺了东西,特征照样能还原出完整模态的味道。到了真正推理时,如果来了一个天生就缺模态的测试样本,直接交给学生LoRA处理即可。整个过程只更新学生LoRA的少量参数,论文中提到参数更新比例仅占模型总参数的0.629%,成本极低。

特征级蒸馏如何超越熵最小化与RAG?

为什么特征级蒸馏能扛住,而熵最小化和RAG都垮了?这里得从监督信号的角度掰扯。
熵最小化的底层假设是“低置信度的预测大概率是错的”。这个假设在CNN分类器上基本成立,但在自回归LVLM里完全失效。LVLM是一个词一个词往外蹦的,即使模态缺失导致语义理解跑偏,模型在词汇层面的置信度依然可能很高——它只是“一本正经地胡说八道”。这时候你去最小化熵,等于在给错误火上浇油。论文实验也验证了这一点:TENT和EATA在50%文本缺失时F1分别只有0.1655和0.2482。
meng
RAG的问题出在“没米下锅”。RAG需要用当前输入去检索外部知识库,但当前输入本身就缺了模态,模型连基本的语义都拎不清,拿什么去检索?论文实验也证实了这一点:在MELD上50%文本缺失时,RAG的F1只有0.4660,甚至比不处理时的0.4785还要低。这说明RAG不仅没帮上忙,反而因为检索到了不相关的内容,把原本还能用的弱信号污染得更严重了。
特征级蒸馏则完全不同。它不依赖输出层的置信度,不依赖任何外部知识库,只用教师LoRA在完整模态下产生的特征作为监督信号。这是模型“自己以前见过的东西”——在训练阶段,LVLM对类似样本是见过完整模态的,教师LoRA把这些经验固化了下来。学生要做的,就是让自己的特征表达向教师看齐。这种监督信号既不要求输出正确,也不要求外部补全,纯粹是“内部校准”,所以天然适合自回归架构。
放一张MELD数据集上的主对比表,可以看到不同缺失比例下各种方法的表现差异。
表1:MELD数据集上不同缺失比例下各方法F1对比
表1:MELD数据集上不同缺失比例下各方法F1对比。随着缺失比例从0%逐步增加到50%,TTSD-FAR的F1下降幅度明显小于熵最小化、RAG等基线,且始终优于不处理的基线。
在30%缺失时,TTSD-FAR的F1为0.5483,而熵最小化只有0.4619,RAG是0.4936;到了50%缺失,TTSD-FAR依然有0.5124,而TENT已经崩到0.1655。这种优势在文本缺失和视觉缺失场景下都保持一致。

FAR机制:如何让自适应既不过度也不停滞?

TTSD解决了“怎么学”的问题,但还有另一个隐患:测试时的数据流是永不停歇的。如果学生LoRA一直在接受梯度更新,会发生什么?第一种情况,学生已经收敛了,你还继续更新,梯度噪声就会慢慢把学到的知识“洗掉”,这叫过度自适应。第二种情况,测试数据分布已经变了,比如说话人从A换成了B,缺失模态的模式也从“缺文本”变成了“缺视频”,但模型还停留在旧状态,这叫自适应停滞
FAR(Fisher-Anchored Restoration)就是为这两个问题设计的调节器。它让学生LoRA在两种状态之间切换:active(活跃学习态)anchored(锚定冻结态)。刚进入测试流时,学生处于active状态,正常接收梯度更新。怎么判断它学得差不多了?FAR用一个动态指标来监控——Fisher信息对角线。
简单理解,Fisher信息刻画了模型参数对损失变化的敏感程度。如果某个参数的Fisher值很大,说明动它一下就会显著影响损失。在自适应过程中,FAR维护一个Fisher信息的指数滑动平均:
公式:Fisher信息更新 = 动量衰减×上一步Fisher + (1-动量衰减)×当前梯度平方
其中βF是平滑系数,⊙表示逐元素平方。然后定义收敛指标CI:
公式:CI = ||F_t - F_{t-1}||_1 / (||F_t||_1 + ε)
CI衡量的是Fisher信息的变化幅度。当CI小于阈值τfc时,说明参数的敏感度已经稳定,学生LoRA学得差不多了,FAR就让它进入anchored状态,冻结参数,避免过度自适应。
但如果是测试分布发生了真正的漂移呢?这时FAR会计算另一个指标——Fisher不匹配指数(FMI)。它把当前梯度与锚定时的Fisher信息做比值:
公式:FMI = (1/p) Σ (当前梯度平方 / 锚定Fisher + ε)
FMI的值反映了当前样本对参数产生的梯度,相对于锚定状态下的敏感度有多大。如果当前梯度平方远大于锚定Fisher值,说明模型遇到了“没见过的东西”——分布漂移了。一旦FMI超过阈值τfmi,FAR就把学生从anchored切回active,重新开始学习。这样,自适应既能及时“刹车”,也能灵敏“重启”,在整个测试流中长期保持稳定。
图3:FAR模块在不同缺失比例下的蒸馏效果对比
图3展示了FAR模块在不同缺失比例下的蒸馏效果。可以看到,加入FAR之后,蒸馏损失的波动幅度明显更小,而且不会像无FAR那样出现后期的发散上升。
图4的Fisher重要性热力图则揭示了另一个细节:FAR让参数的Fisher信息分布更加集中,意味着模型把“注意力”放在了少数几个关键参数上,而不是均匀散开。这种稀疏性正是长期稳定性的来源。
图4:Fisher重要性热力图对比
图4:Fisher重要性热力图(对数刻度):左侧为TTSD-FAR,中间为不含FAR的TTSD,右侧为两者差异。FAR让Fisher信息更加集中,模型自适应的稳定性更强。

三大数据集验证:全面领先的实证结果

实验部分,论文在三个有挑战性的视频情感识别数据集上做了验证:MELD(多模态情绪线数据集,包含《老友记》剧集中的多模态对话)、DFEW(动态面部表情数据集,包含海量短视频片段)、BAH(通过音频视频和文本信息来对人类情感进行二分类识别的数据集,即二元情感音频数据集)。三个数据集分别覆盖了“文本+视频”“纯视频”“视频+文本+音频”等不同的模态组合场景。
每个数据集上,论文都测试了文本缺失、视觉缺失两种场景,缺失比例从10%到50%不等。来看DFEW和BAH上的主结果表。
表2:DFEW数据集上视觉缺失情况下各方法F1对比
表2:DFEW数据集上视觉缺失情况下各方法F1对比。DFEW的任务是从动态面部表情中识别情绪,当视觉模态大量缺失时,所有方法都会掉点,TTSD-FAR的下降曲线最平缓。
表3:BAH数据集上文本缺失情况下各方法F1对比
表3:BAH数据集上文本缺失情况下各方法F1对比。BAH数据集中文本是情感判断的关键模态,文本缺失过半时,TTSD-FAR依然保持0.625的F1,远高于RAG的0.5742和熵最小化的0.3965。
论文还专门验证了FAR的消融效果。对比对象是纯TTSD(没有停止准则)和TTSD-LS(用损失平台期做停止准则)。结果显示,纯TTSD在长测试流上后期会持续掉点,因为过度自适应把学到的知识洗掉了;TTSD-LS虽然能止住过度自适应,但对真正的分布漂移反应迟钝;只有TTSD-FAR能根据Fisher信息的变化灵活切换状态,在长期自适应中保持稳定性能。
表8:TTSD-FAR与纯TTSD及TTSD-LS在BAH数据集上的对比
表8:TTSD-FAR与纯TTSD、TTSD-LS在BAH数据集上随文本缺失比例增加的WF1对比。可以清楚看到,FAR机制带来的稳定性优势。
更值得一提的是跨模型泛化实验。论文不只在一个7B模型上验证,还在MobileVideoGPT-0.5B这个小模型上做了测试。结果显示,TTSD-FAR对小模型同样有效,说明方法的适用性不局限于特定模型规模。
表7:Video-LLaVA-7B与MobileVideoGPT-0.5B在BAH数据集上的F1对比
表7:Video-LLaVA-7B与MobileVideoGPT-0.5B在BAH数据集上文本缺失比例增加时的F1对比。可以看到,在7B和0.5B两个量级的模型上,TTSD-FAR都稳定优于不处理的基线。
总结来看,TTSD-FAR在三个数据集、两种缺失类型、四档缺失比例、两个模型规模上的表现都保持稳定,这不是模型调参调出来的偶然优势,而是方法本身在机制上的胜利。

龙迷三问

下面是龙哥对于大家可能的一些问题的解答:
这篇论文到底在解决什么问题?大型视频语言模型在缺失模态下性能骤降,传统TTA与RAG双双失效。蒙特利尔ETS与女王大学提出TTSD-FAR框架,通过教师-学生双LoRA自蒸馏与Fisher锚定恢复机制,仅更新0.629%参数即实现多数据集、多种缺失率下的稳定
这篇工作最值得看的点是什么?在三个数据集上,TTSD-FAR在0%-50%缺失模态比例下均优于所有对比方法。在MELD文本缺失50%时,F1为0.5124,显著优于RAG(0.4660)和Perplexity Gen(0.4722);在DFEW视觉缺失50%时,F1为0.4775,优于RAG(0.4468);在BAH文本缺失50%时,F1为0.6250,优于所有基线。
这篇工作的边界或风险在哪里?优点:(1) 提出了一种针对LVLM的参数高效测试时自适应方法,仅更新少量LoRA参数;(2) 特征级自蒸馏提供了比熵最小化更可靠的监督信号;(3) FAR机制有效解决了持续自适应中的漂移问题;(4) 在三个数据集上均取得最优性能。缺点:(1) 需要完整模态样本进行自适应,在完全缺失模态场景下无法工作;(2) 两次前向传播增加了计算开销;(3) 仅验证了视频-文本两种模态,对更多模态的泛化性未知;(4) 对Fisher信息相关超参数(如阈值、衰减系数)较为敏感。
如果你还有哪些想要了解的,欢迎在评论区留言或者讨论~

龙哥点评

论文创新性分数:★★★★☆

提出TTSD-FAR框架,通过冻结教师模型引导自适应低秩学生模型进行特征级自蒸馏,并利用Fisher信息对角线监控收敛与漂移,实现缺失模态场景下的参数高效测试时自适应。

实验合理度:★★★★☆

F1-score

学术研究价值:★★★★☆

提出TTSD-FAR框架,通过冻结教师模型引导自适应低秩学生模型进行特征级自蒸馏,并利用Fisher信息对角线监控收敛与漂移,实现缺失模态场景下的参数高效测试时自适应;更关键的是问题定义是否可复用到同类任务。

稳定性:★★★☆☆

现有材料未提供充分的极端条件、重复运行或扰动测试,稳定性暂按中性评价。

适应性以及泛化能力:★★★☆☆

现有材料未完整展示跨数据集、跨场景或分布外实验,泛化能力仍需进一步验证。

硬件需求及成本:★★★☆☆

仅更新44M参数(约0.629%的7B参数)。完整模态样本需两次前向传播(教师和学生各一次)及一次反向传播;缺失模态样本仅需一次前向传播。在MELD测试集上,无自适应约1.5小时,有自适应约2.1小时。

复现难度:★★★☆☆

现有材料未确认完整代码、配置、数据处理脚本和权重是否齐备,复现难度暂按中性评价。

产品化成熟度:★★★☆☆

论文验证以研究实验为主,真实部署中的时延、成本、维护和异常场景仍需补充验证。

可能的问题:;(4) 在三个数据集上均取得最优性能。缺点:(1) 需要完整模态样本进行自适应,在完全缺失模态场景下无法工作;(2) 两次前向传播增加了计算开销;

主要参考文献


*本文仅代表个人理解及观点,不构成任何论文审核或者项目落地推荐意见,具体以相关组织评审结果为准。欢迎就论文内容交流探讨,理性发言哦~ 想了解更多原文细节的小伙伴,可以点击"阅读原文",查看更多原论文细节哦!       

转发文章 微博 X LinkedIn Facebook
龙哥读论文 · PaperDaily

本文基于龙哥读论文 PaperDaily 数据库整理,结合论文原文与工程视角进行解读。

LONGGE AI COMMUNITY

把每天读到的论文,变成长期积累

加入「龙哥读论文」知识星球,持续获取 AI 论文、资讯、开源项目、招聘与研究思路。

加入龙哥读论文微信群:添加微信 kangjinlonghelper,备注“研究方向 + 地点 + 学校/公司 + 昵称”。

龙哥读论文知识星球二维码 微信扫码加入知识星球