
你有没有想过,给视频做一次"AI换脸式"的编辑,比如把画面里的绿色跑车变成红色的,背后的计算模型到底在算什么?
大多数人的直觉是:模型得先"看懂"这辆车是什么颜色、什么形状,再"想"出红色跑车该长什么样,然后把它画出来。这个过程听起来理所当然,几乎所有主流的视频编辑模型也是这么干的。可这篇来自小米和西安电子科技大学团队的论文,GRNEdit,却提出了一个让人愣一下的想法:编辑视频的时候,模型其实不需要考虑"变成什么样",它只需要对画面里的每一个最小信息单元做一个简单到近乎粗暴的判断:保留,还是翻转。
这个思路听起来简单,但它撬动的是整个视频编辑领域一直没能解决的效率问题。
编辑视频为什么这么"重"
先说说现在的主流做法有多费劲。
指令式视频编辑,简单说就是你给模型一句话:"把这个女人的黄裙子换成藏青色晚礼服",模型就要在保留画面里其他一切(背景、动作、其他人物)不变的前提下,精确完成这个改动。这类系统几乎都建立在扩散模型或者流模型这类连续空间的生成骨干网络上。
问题出在"怎么把源视频的信息喂给模型"这件事上。现有方法基本上两条路:要么用一整套复制的重量级分支网络去处理源视频信息,要么把源视频的特征直接和噪声特征拼接在一起,让骨干网络自己去消化。VACE这样的模型用了额外的分支结构,参数量高达3.05B;Omni-Video这类模型的条件控制部分甚至超过4.6B参数,比很多完整的生成模型还大。
这就好比你想给一份文件做局部修改,正常做法是标记出要改的那几行字,写清楚改成什么。可现有的AI编辑系统做的是:把整份文件重新复印一份,配一个专门的秘书团队(重量级分支)从头到尾比对、理解、重写。文件越长(模型越大),秘书团队就要越庞大,效率自然直线下降。而且更麻烦的是,这个秘书团队既要负责"找出该改的地方",又要负责"想清楚改完是什么样",两件事绑在一起,谁都不能轻装上阵。
那有没有办法让"找地方"和"想内容"这两件事分开?这正是GRNEdit的出发点。
GRN:把视频拆成一堆0和1的秘密
要理解GRNEdit的巧思,得先说清楚它站在了谁的肩膀上。
**GRN**(Generative Refinement Network,生成式精炼网络)*:一种与扩散模型、自回归模型都不同的新型视频/图像生成架构,它把视觉内容编码成一串串二进制比特(0和1),然后通过反复"猜测-修正"全部比特位来生成内容。
GRN的核心武器叫**HBQ**(Hierarchical Binary Quantization,层次化二值量化)*:一种把视频压缩编码成分层二进制比特图的技术,取代了传统方法里"从一堆候选值里选一个"或者"预测一个连续数值"的做法。
传统的图像编码方式主要有两种。一种是连续隐空间(VAE用的那种),每个位置存的是一个浮点数,比如0.13、0.87这样,模型要预测的是这个数值该调整成多少,这是个连续回归问题,理论上有无穷多种可能取值。另一种是VQ codebook(向量量化码本)方式,每个位置存的是从几百上千个候选"模板"里选出的一个编号,模型要做的是从这一大堆候选项里挑出正确的那个,这是个多选一的分类问题。
HBQ用的是第三种方式:每个位置只存一个比特,要么是0,要么是1。这意味着当模型需要在这个位置做修改时,它只有一种可能的替代状态——把0变成1,或者把1变成0。没有"到底该选0.24还是0.31"的犹豫,也没有"候选模板里到底哪个更合适"的搜索空间,只有翻或者不翻这一个二元判断。
这就好比你在填一张只有"是/否"两个选项的调查问卷,和填一张需要在1到100之间打分、或者从80个选项里选一个的问卷,工作量完全不是一个量级。如果视频的每个像素信息都用连续数值或者多选一码本表示,模型每次编辑都要重新计算"这里该变成哪个具体数值"这道开放题;而如果每个位置只有0和1两种可能,编辑就退化成了"这里该不该变"这道判断题,判断题显然比开放题好回答得多,也好学得多。
论文里给出的一个直观数据是:GRN这套二进制编码方式的重建效果不但没打折扣,反而在ImageNet上做到了0.56的rFID(比0.87的传统VAE方法表现更好,数值越小越好),视频上也基本持平。也就是说,压缩率更高,效果却没变差,这才是敢用二进制表示做编辑的底气。
核心思路:把源视频当"证据"而不是"答案"
理解了GRN的二进制表示,GRNEdit真正的创新才浮现出来。
论文提出了一个叫**二元证据视角**(binary evidence perspective)*的框架,核心观点是:源视频里每个比特位提供的不是"目标应该是什么"的答案,而是"当前状态是否应该保留"的证据。
这句话拆开说是这样的。当源视频和目标视频(编辑后的视频)都用同一套HBQ编码时,它们在每个坐标位置上是完全对齐的。源视频这个位置是1,目标视频这个位置可能还是1(表示这里不用改),也可能变成了0(表示这里被编辑改动了)。论文把这个差异定义为**编辑映射**(edit map),公式上写作源比特和目标比特做异或运算:相同则为0(保留),不同则为1(翻转)。
关键的转折在这里:既然源比特和目标比特之间只有"翻转与否"这一个关系,那源视频信息就不需要被当成一份需要被"重新生成"的完整参照物,它只需要作为一种支持信号,去影响"这个比特该不该翻转"这个判断的概率。
这就像法庭上的证人证词。证人不负责判决被告有罪还是无罪(那是法官的工作,对应GRN骨干网络负责的内容合成),证人只提供证据,比如"我看到他当晚在场",这个证据会让法官更倾向于某个判断,但证据本身不是判决书。同样,源视频的比特状态是一份"证据",它会让GRN骨干网络更倾向于保留(如果这个区域没被指令要求修改)或者更倾向于翻转(如果指令明确要在这里做改动),但生成骨干网络仍然掌握最终的判断权。
如果不这样区分会怎样?现有方法的做法相当于要求"证人"同时兼任"法官",既要提供事实依据,又要给出最终判决,还要负责把判决书写成一份完整详实的文书(也就是重新构建出目标区域的具体视觉内容)。这三件事绑在一起,自然需要一个庞大复杂的机制去支撑,这正是VACE、Omni-Video这类模型条件分支又大又贵的根本原因。
两阶段训练:先学会用证据,再学会纠错
基于"证据"这个思路,GRNEdit设计了一套两阶段的训练框架。
**第一阶段:证据注入与身份锚定**
在这一阶段,模型要学会怎么把源视频的比特信息,转换成能够影响GRN内部判断的"证据信号"。
具体做法是,用一个很轻量的编码器把源视频的比特信息,映射到GRN内部几个关键Transformer模块的隐藏状态上。这个映射过程还会受到编辑指令的调制,指令说"把车变绿",那么"车"这个区域对应的证据强度就会被削弱(表示这里更倾向于被翻转),而背景区域的证据强度会被保持(表示这里更倾向于被保留)。
这里论文用了一个精巧的技巧,叫**身份对齐的空指令**(identity-aligned null condition)*:把传统扩散模型里用于分类器自由引导的"空指令"训练,重新定义为"这就是一次不编辑的操作",并用源视频重建作为监督信号。
传统的**分类器自由引导**(Classifier-Free Guidance, CFG)*:一种让生成模型在"有条件"和"无条件"两种预测之间做对比,从而增强条件遵循能力的训练技巧,最早由Ho和Salimans在2022年提出。
在原始CFG做法里,训练时会随机丢弃文本条件,让模型学会在"没有指令"的情况下也能生成点什么,但这个"无条件"分支通常没有明确的语义指向,它只是一个统计上的对照组。GRNEdit的做法不同:它明确规定,空指令 = 不编辑 = 完整还原源视频。也就是说,当训练样本被随机抽中走这条"空指令"路径时,模型的任务变成了纯粹的重建源视频,容不得半点走样。
这个设计的好处不止是让空指令有了明确意义,它还顺带解决了一个更棘手的问题:怎么给第二阶段提供一个"参照物"。因为这条身份重建路径,会产生一个跟"编辑后状态"处在同一个表示空间里的"源视频保真状态",这两个状态可以直接拿来做对比,而不需要额外训练一个独立的对比模型。
打个比方,这就像你想检查一份修改稿改得对不对,最好的办法是手边同时放着原稿的完整备份,两相对照,哪里改多了、哪里漏改了,一目了然。如果没有这份"忠实还原"的备份,你就只能凭空猜测原文长什么样,判断的可靠性会大打折扣。GRNEdit用一次身份训练,顺手把这份"备份"也一起训练出来了。
**第二阶段:身份参照下的比特边界修正**
第一阶段结束后,第二阶段冻结所有参数,只训练一个叫**比特边界路由器**(Bit-Margin Router)*的轻量模块,它的任务是对比"编辑后的状态"和"身份参照状态"这两份隐藏表示,在logit(模型输出的原始分数,还没经过归一化的那种)层面,把两者的差异转化为对未确定区域的修正信号。
具体机制上,这个路由器会计算两个状态之间的**边界差异**(margin discrepancy),然后学习一个介于负1到正1之间的系数,来决定要不要把这份差异应用到最终的编辑判断上。当系数接近0时,相当于什么都没改,第一阶段的结果原样保留;当系数接近1时,相当于完全采纳"身份参照"的建议,也就是把这块区域拉回源视频的样子;当系数为负时,则是主动远离参照状态,加强编辑的力度。
这套设计还有一个细节值得一提:路由器的最终输出层是**零初始化**(zero-init)的,意味着训练刚开始的时候,这个模块完全不产生任何影响,模型行为和只有第一阶段时完全一致。这是个很谨慎的工程选择,避免了一个新模块在训练初期就把已经调好的第一阶段结果搅乱。
论文里给出的效果是,第二阶段只增加了大约30M参数,却把非编辑区域的PSNR(峰值信噪比,衡量图像重建质量的指标,数值越高越好)从22.0 dB提升到23.8 dB,提升了1.8个分贝。虽然这个提升在整体评分上体现得不明显(因为评分模型对像素级的细微漂移不敏感),但从论文附带的可视化图(比如书桌换成乡村风格木桌的例子)能明显看到,未被编辑的区域,比如背景里的时钟、照片这些细节,在经过第二阶段修正后变得更贴近原图。
训练成本低到什么程度
说了这么多设计思路,最终还是要看数据说话。
GRNEdit只用了0.6M(60万)训练样本对,这个数字在动辄使用几百万甚至上千万训练对的行业里,属于相当克制的规模。更关键的是条件控制部分的参数量:GRNEdit-2B模型只增加了37M(约3700万)条件参数,占主干网络的比例大约3.1%;GRNEdit-8B增加了45M参数,占比约2.0%。
对比一下同行的规模:VACE用了3.05B(30.5亿)条件参数,Omni-Video超过4.6B。GRNEdit的条件参数量只有它们的百分之一左右。
| 方法 | 参数规模 / 单视频推理时间 | OpenVE-Bench总分 | 额外条件参数 |
|---|---|---|---|
| VACE (ICCV 2025) | 14B / 545秒 | 3.01 | 3.05B |
| Omni-Video | 11B / 312秒 | 3.66 | >4.6B |
| DITTO (CVPR 2026) | 14B / 611秒 | 3.44 | 3.17B |
| UniVideo (ICLR 2026) | 14B / 893秒 | 4.18 | >7B |
| Kiwi-Edit (2026) | 8B / 45秒 | 4.17 | 3B |
| **GRNEdit-2B (本文)** | 2B / 39秒 | **4.03** | **37M** |
| **GRNEdit-8B (本文)** | 8B / 84秒 | **4.18** | **45M** |
从这张表能看出一件挺有意思的事:GRNEdit-2B用一个只有2B参数的小模型,加上37M的轻量条件模块,跑分达到4.03,超过了不少动辄10B以上的大模型。GRNEdit-8B更是以45M的条件参数,追平了参数量超过它17倍的UniVideo(4.18分打平)。推理速度上,GRNEdit-8B只需要84秒,而UniVideo需要893秒,相差超过10倍。
这组数字背后传递的信息是:视频编辑这件事,未必需要一个越来越庞大的条件分支才能做好。如果编辑的本质真的可以简化为"每个比特翻不翻"这样一个二元问题,那条件分支自然可以做得又小又快。
在另一个基准测试**ReCo-Bench**(一个专门评估添加、删除、替换、风格化四类编辑任务的评测集)上,GRNEdit-2B在删除类任务的所有子指标上都排名第一,风格化任务上达到9.08分,也拿到了最好的运动自然度和视频质量子分。这说明它在OpenVE数据集之外的独立测试集上依然稳健。
"证据"到底是不是真证据?一个可视化的验证
论文里有一段挺有说服力的分析,专门回应一个可能被质疑的问题:你说这是"证据",会不会只是给普通的残差特征换了个好听的名字?
研究者做了个实验:去掉源信息注入分支,然后观察比特边界(也就是模型对"保留还是翻转"这个判断的置信度分数)发生了多大变化,同时记录变化的方向和强度。结果显示,这份影响是有清晰方向性的:正值代表"倾向于保留",负值代表"倾向于翻转"。而普通的残差特征通常没有这样统一的语义方向,它把"改哪里"和"改成什么"这两件事纠缠在了一起,很难单独拆解出方向性含义。
论文还提到一个具体数字:被保留的比特位收到的、与源信息方向一致的响应强度,是被改动比特位的6.2倍。换句话说,模型确实学会了"这里不用动,就该大力保留源信息;那里要改,就该弱化源信息的影响力"这种有分寸的行为,而不是一股脑地把源信息全部糊在结果上。
这里还有个容易被忽略但很关键的对比:连续模型里的**注意力机制**(attention)*看起来也有点像"给不同位置分配权重",但本质不同。注意力权重只是决定"从哪里搬运信息"的临时路由系数,真正写回骨干网络的内容,来自于对被搬运信息做加权求和之后的结果,本质上还是连续特征的混合。而GRNEdit里的证据信号,是直接作用在骨干网络"这个位置该判0还是判1"这个原生决策轴上的,两者的作用层级不一样。
打个类比,注意力机制像是快递分拣站,决定哪些包裹先送到哪个仓库,但最终仓库里堆的是什么货,取决于包裹里装的东西(连续特征)本身。而GRNEdit的证据信号更像是仓库管理员手里的一份"入库/退货"清单,直接告诉分拣员"这批货保留,那批货退回",管理决策直接作用在最终的取舍上,不需要经过货物本身的层层混合。如果没有这种直接作用于决策层的设计,源信息的影响就只能靠特征混合去"稀释"表达,模型很难学出清晰的边界,编辑效果也容易出现"该保留的地方也糊了一层新内容"的问题。
跨骨干网络的验证:这不是GRN的巧合
论文里还做了一个挺硬核的对照实验,专门排除"这套方法只是恰好适配GRN架构"这种可能性。
研究者把"证据式条件注入"和"VACE式条件注入",分别搬到了两个不同的二进制生成骨干网络上做对比:GRN和**Infinity**(另一种基于比特位自回归建模的生成模型,2025年提出)。
结果是,在GRN上,GRNEdit式的证据注入只用2K训练步就达到3.70分,而VACE式方案训练了16K步才勉强追平,条件分支参数量却是GRNEdit的100倍以上。Infinity上重现了同样的排序,证据式方案收敛更快、参数更少。
但研究者没有止步于此,他们还做了一个反向验证:把同样的对照放到**Wan**(一款没有二进制坐标表示的连续视频生成模型)上。结果这次反转了,在Wan上,VACE式的方案反而表现更好。
这个反转恰恰是最有说服力的证据。它说明"证据式"条件注入之所以高效,根本原因在于它和二进制表示天然契合,一旦离开了这种离散的比特坐标体系,这套思路就失去了发挥空间。这不是一个可以随便套用到任何模型上的万能技巧,而是一个和特定表示方式深度绑定的设计。这也提醒我们,很多看似通用的方法创新,其实是和底层表示强绑定的,脱离了那个表示基础,方法本身可能就站不住脚。
局限性:添加类任务依然是块硬骨头
论文很坦诚地承认了这套方法目前搞不定的地方,主要集中在**对象添加**(ADD)这类任务上。
问题的根源不难理解:如果编辑是"删除画面里的某个人"或者"把车的颜色从绿变红",源视频里本来就存在相关的视觉信息,可以拿来当"证据"参考。可如果编辑是"在天空中添加一只飞翔的海鸥",源视频里压根没有海鸥的任何痕迹,证据从何而来?
论文的可视化案例显示,添加一只海鸥的效果里,海鸥的位置是对的,但渲染质量明显偏弱,看起来"欠火候"。添加一个白色陶瓷杯子到桌子上,位置和外观都还行,但杯子和桌面的接触显得生硬,像是贴上去的,而不是自然放在那里。添加一幅画框到墙上,透视和光影跟环境融合得不够自然。
论文自己把这些问题归为两类原因。一类是方法本身的局限:轻量级的证据分支,天生就不太擅长处理这种"源视频完全没有相关线索、需要凭空生成全新内容"的场景,因为证据机制本来的设计假设就是"源视频提供支持信息",一旦这个假设不成立,机制的优势就发挥不出来。另一类是训练数据本身的问题:论文用的OpenVE数据集里,一部分"添加类"的训练样本,本质上更像是把一个物体"贴"到画面上做合成,而不是让新物体真正符合场景的几何关系、遮挡关系、光影关系,这种数据本身就没法教会模型怎么做出真正自然的物理融合。
有意思的是,为什么背景替换类任务反而做得比较好?论文给出的解释是,背景替换只需要保留前景物体的边界轮廓,然后生成一个相对独立的背景,背景和前景之间的物理交互要求本来就低。这也从侧面印证了,凡是需要精细物理交互(接触、遮挡、光影一致性)的编辑任务,对现有这套轻量级证据机制来说都是更大的挑战。
针对这些短板,论文也给出了三个改进方向:一是让证据分支具备任务自适应能力,给添加类任务分配更多的语义生成空间,同时用区域感知的门控机制,在编辑区域之外坚持保留源证据,在需要生成新内容的区域适当放松这份约束;二是采用更保守的微调策略,比如冻结大部分骨干网络参数,或者用LoRA做局部调整,减少全参数微调对预训练生成先验的破坏;三是引入质量更高的训练数据,混合更多类似ReCo-Data、Ditto-1M这样的数据集,并针对添加类任务加强时间一致性、接触关系、光影一致性方面的数据筛选。
写在后面
读这篇论文,最让我意外的不是它的分数有多高,而是它对"编辑"这个动作本身的重新定义。
我们习惯性地认为,视频编辑就是"理解画面+想象结果+画出来"这三步走。但GRNEdit说,如果你的表示方式足够特殊(比如二进制比特位),编辑其实可以退化成一个局部的、逐点的判断题:这里改还是不改。理解和生成的重活儿,全部甩给已经训练好的骨干网络去扛,条件分支只负责回答这道判断题。
这让我联想到一个很不相关的领域,压缩感知和稀疏编码。在那个领域里,人们也发现,如果信号本身具有某种稀疏结构(大部分位置是0,只有少数位置有值),那么恢复信号所需要的观测量可以远远小于信号本身的维度。GRNEdit某种程度上做的是类似的事:如果编辑本身在正确的表示空间里是"稀疏"的(大部分比特不需要动),那么描述这个编辑所需要的信息量,理应远小于描述整个画面所需要的信息量。这套逻辑一旦成立,轻量级条件分支就不再是一种妥协,而是一种自然结果。
论文里那个添加类任务失败的案例,反而让我觉得这套框架的诚实度很高。它没有回避自己的短板,而是把"证据从哪来"这个问题的答案,坦然地摆在了读者面前:没有源信息支持的编辑,天然就是这套框架的盲区。这提醒我们,任何一个精巧的设计,都是在特定假设下才成立的,跳出那个假设,代价立刻就会显现。
如果二进制表示真的能在生成模型里站稳脚跟,不只是用来编辑,还能用来做理解、检索、压缩,那"用0和1的翻转来描述变化"这件事,会不会成为未来多模态系统里一种通用的"变化语言"?
Q&A
Q1:GRNEdit是什么?
A:GRNEdit是小米和西安电子科技大学团队提出的一种轻量级视频编辑框架,它把视频编辑重新定义为对二进制比特位的"保留还是翻转"判断,而不是传统方法那样预测连续特征或从码本里选值,从而大幅降低了条件控制模块的参数量。
Q2:GRNEdit为什么能用这么少的参数做视频编辑?
A:因为它基于GRN模型的二进制表示,每个位置只有0和1两种状态,编辑判断退化成简单的二元决策,条件分支只需要判断"这里该不该变",不需要负责生成具体内容,所以GRNEdit-2B和GRNEdit-8B的条件参数量分别只有37M和45M,远低于同类模型动辄超过3B的规模。
Q3:GRNEdit目前有哪些做不好的地方?
A:主要短板在对象添加类任务上,比如在画面里凭空添加一只海鸥或一个杯子,因为源视频里没有相关信息可以作为"证据",模型容易出现渲染质量不足或者物体与场景融合生硬的问题,论文认为这既有方法本身的局限,也与训练数据质量有关。
好文章,需要你的鼓励
这篇论文提出一种插件式2D动作接口,让已训练好的3D运动语言模型无需修改或微调即可直接理解2D姿态输入。实验证明2D输入效果媲美3D输入,且在真实视频场景下配合专门的降噪适配器,2D方案比3D姿态估计更省算力、更实用,为动作理解模型的现实部署提供了新路径。
研究团队让8种AI智能体独立完成100项真实科研任务,深度剖析800份研究轨迹后发现,即便是最强模型,也普遍存在"发现问题却不修正"的现象,背后根源指向AI缺乏检验自身产出、主动纠错的元认知能力。
WorldRover是一套面向可探索世界建模的合成视频数据引擎,基于虚幻引擎构建,能让同一段探索轨迹在保持路线与场景一致的前提下,重新渲染为多种视角和外观状态,并同步提供深度、光流、长程点追踪等丰富标注,最终发布WorldRover-10M数据集,含2190万帧、202.7小时视频。
这篇论文指出,现有多目标强化学习训练大模型时存在"一刀切"分配优化精力的问题,提出SA-MRPO方法,根据每个奖励目标的饱和程度动态调整其权重,在数学推理、自适应推理、代码生成等任务上均取得优于现有方法GDPO的效果。