70亿参数“小模型”,怎么比GPT-5还懂AI画图的“空间感”?

AI提示词1个月前发布 jinlian
4 0

你有过这样的经历吗?让AI给你画一张画,比如:“办公桌上,笔记本电脑在左边,咖啡杯在电脑右边,桌子右边放盆栽。”结果呢?AI画出来的图挺好看,颜色和光影都好。但是,咖啡杯跑到了电脑左边,盆栽也不见了。这种“好看却摆不对”的问题,现在AI画画时经常出现。

为了解决这问题,北京大学和字节跳动的Seed团队合作了。他们做了一套系统,叫SpatialScore。这个系统专门教AI看懂“东西该放哪儿”。更有意思的是,这个系统只有70亿参数。这在AI大模型里算“小个子”。但是,它比GPT-5和Gemini-2.5 Pro这些万亿参数的大模型还要准。

我们把AI画画的过程想象成“室内设计”。你出要求,AI画图,SpatialScore就是那个“验收员”。它拿着尺子,检查每件家具是不是放对了位置。

70亿参数“小模型”,怎么比GPT-5还懂AI画图的“空间感”?

AI画家老毛病:画得好看,但分不清方向

你对朋友说:“把杯子放在笔记本右边。”朋友马上就懂了。但是,对AI画图模型来说,这个简单指令包含好几层意思。它得知道“杯子”和“笔记本”长什么样。它还要理解“右边”是什么意思。而且,它要把这个关系画到图上。场景一复杂,比如五六个物体之间有很多“前后左右上下”的限制,AI就难了。它就像接到一份很难的室内设计图,很容易把家具摆错位置。

那现在有的“打分系统”能帮AI改过来吗?现在有很多模型专门给AI生成的图片打分。它们就像装修验收的质检员。比如HPSv3、PickScore、ImageReward这些模型,它们擅长看画美不美、颜色搭不搭、风格对不对。这就像质检员看墙刷平了没,颜色选得好不好。但是,这些质检员不怎么关心家具位置对不对。研究团队做了一个实验。他们给这些模型看两张图,一张位置是对的,一张是错的。结果,这些“质检员”反而给位置错的图打了更高的分。因为那张图可能只是“更好看一点”。这就像验收员说:“沙发堵住了门,但是颜色很和谐,给高分!”这显然不靠谱。

还有一种方法,用GenEval。这是一个基于规则的评估工具。它靠目标检测器来检查物体在不在,位置对不对。目标检测器就是一种能识别图片中有什么东西的AI工具。但是,GenEval只能处理很简单的描述。比如“一张照片里A在B的左边”这种短句。一旦描述变长,物体变多,位置关系变复杂,GenEval就没法用了。而且,如果图片里物体有遮挡,比如杯子被书挡了一半,检测器就可能判断错。桌子上有两根香蕉,它可能只找到一根。然后就给了错误的评分。

那用最厉害的闭源大模型呢?GPT-5和Gemini-2.5 Pro在空间理解上确实做得不错。但是,它们的使用成本太高了。在线强化学习需要“裁判”不断给反馈。这就需要频繁调用模型。用闭源大模型做这个,就像请按分钟计费的金牌设计师全程监工,账单会很吓人。开源的视觉语言模型(比如Qwen2.5-VL-72B)虽然免费,但是研究团队发现,即使是720亿参数的版本,面对复杂的多物体空间关系时,也会出“幻觉”。它会很肯定地说位置是对的,但其实是错的。

所以,研究团队遇到的核心问题就是:缺少一个又准又便宜的“空间位置专用验收员”。SpatialScore就是要填补这个空白。

打地基:做了8万对“对比样本”

要训练一个好的“验收专家”,首先得给它看很多“对的例子”和“错的例子”。这就像培训新质检员。你不能只给他看完美的样板间。你还得给他看各种典型的摆放错误,让他学会分辨。

研究团队为此做了一个数据集,叫“SpatialReward-Dataset”。里面有超过8万对“对抗性偏好对”。这个名字听着有点复杂,但是原理很简单。每一对数据都包括两张图:一张是“完美图”,所有物体的位置都严格符合文字描述。另一张是“干扰图”,故意把其中一两个位置关系弄错了。

这是它的制作过程:

第一步:GPT-5生成场景描述。 GPT-5扮演“场景策划师”。它生成大量描述复杂空间关系的提示词。这些提示词不简单,不像“A在B左边”。它们像这样:“一张木桌上,显示器居中放桌子后面边缘,键盘在显示器前面居中,鼠标在键盘右侧对齐前边缘,笔记本在键盘左侧顶部对齐。”这样的描述,涉及好几个物体和多重空间限制。

第二步:GPT-5修改描述,制造错误。 GPT-5扮演“捣蛋鬼”。它对这些完美提示词做“小破坏”。比如把“鼠标在键盘右边”改成“鼠标在键盘左边”。或者把两个物体的相对位置换一下。每次只改动一到三处空间关系,其他描述不变。

第三步:用描述生成图片。 拿着“完美提示词”和“被破坏的提示词”,分别去生成图片。研究团队选了三个很厉害的图片生成模型:阿里的Qwen-Image、腾讯的HunyuanImage-2.1、字节的Seedream 4.0。这些模型本身画图就厉害,所以生成的图片质量很高。这减少了其他干扰。对于每一对数据,用同一个模型生成“完美图”和“干扰图”。这样,两张图在画风、颜色、清晰度上几乎一样。唯一的区别就是物体的位置关系。这样可以避免质检员因为“这张图更好看”而偏心,确保它学的是纯粹的空间判断能力。

第四步:人工检查。 这是最关键的一步。每一对数据都经过人类专家逐个检查。检查人员要确认两件事:完美图确实完全符合文字描述的所有空间关系。干扰图确实有预期的位置偏差,而不是碰巧虽然用了错误的提示词但图还是对的。不符合这两个标准的数据对,都会被直接删除。

这个数据集的规模和复杂度比以前的都大。提示词更长,场景更复杂。大部分提示词包含四到八个甚至更多空间限制条件。场景包括厨房、客厅、办公室、花园、停车场、露营地等25种以上真实环境。这就像一本很厚的“错题集”。

训练验收专家:SpatialScore诞生了

有了这本很厚的“错题集”,接下来就要用它来训练我们的“专家”——SpatialScore了。

SpatialScore的基础模型是Qwen2.5-VL-7B,这是一个70亿参数的视觉语言模型。你可以把它理解成一个已经能“看图说话”的AI。它能看懂图片里有什么,也能理解文字说了什么。但是,它还不擅长精确判断“图片中物体位置关系是否与文字描述一致”。SpatialScore的训练,就是把这个通用型AI变成空间方位领域的专家

改造的方法用了LoRA技术。LoRA很巧妙,它不用改动模型的所有参数(那样太费时,还可能破坏模型已有的知识)。它只在模型的关键位置,插入一小组可以训练的“补丁参数”。你可以这样理解:你不是要推倒一栋大楼重建,而是在大楼的特定房间里装一些新设备。这样,大楼就有了新功能,同时保留了原来的所有能力。

训练时,模型要完成一个任务:给它看一个文字提示词和两张图(一张完美图,一张干扰图)。它要学会给完美图打高分,给干扰图打低分。这个学习目标用了一个叫Bradley-Terry模型的数学方法。它本质上就是一种“两两比较谁更好”的排序方法。就像让两个选手比赛,赢的得分高。

SpatialScore的打分方式也很巧妙。它不直接给一个固定分数。它输出一个分数的“概率分布”。就像射击比赛,它不说“我打了9.5环”,而是说“我大概率打在9到10环之间,中心是9.5环”。具体来说,模型会输出两个数值:一个均值μ代表最可能的分数,一个标准差σ代表不确定性。这种概率化评分方式让排序更稳定。它不容易因为个别极端样本而判断错。

在技术上,研究团队在输入提示词的末尾加了一个特殊标记“<reward>”。这个标记在模型内部能“注意到”图片和文字的所有信息。模型最后一层输出的这个标记的特征向量,会送入一个小型多层感知机。这个感知机可以理解成一个简单的“翻译器”,它把特征向量转换成μ和σ这两个数值。

整个训练过程在8块英伟达H20 GPU上,不到一天就完成了。训练完成后,SpatialScore在研究团队做的365对测试集上,达到了95.77%的配对准确率。这个数字意味着,每给它看100对“完美图vs干扰图”,它有近96次能正确判断出哪张是对的,哪张是错的。

这个成绩有多厉害呢?GPT-5在同一测试集上的准确率约89%。Gemini-2.5 Pro约95.1%。也就是说,一个70亿参数的“小模型”,在空间位置判断这个任务上,超过了那些参数量是它几百倍的顶级闭源模型。而像PickScore、ImageReward这些现有的图像评分模型,准确率只有46%到65%左右。这跟随便猜差不多。开源的Qwen2.5-VL系列虽然参数越大越准(7B是60%,72B是76%),但是即使是最大的720亿参数版本,也远不如SpatialScore的7B版本。

研究团队还测试了不同大小的SpatialScore版本:3B版本准确率89.1%,7B版本95.8%,32B版本97.3%。综合考虑准确度和计算效率(后面强化学习需要频繁调用),7B版本是最好的选择。

AI画家如何“自我进化”:SpatialScore当教练

有了厉害的“验收专家”之后,下一步就是用它来训练AI画图模型了。要让AI画家学会“把东西放对地方”。这里用的核心方法叫在线强化学习。具体算法框架是GRPO(Group Relative Policy Optimization,组相对策略优化)。

在线强化学习的核心思想,可以用一个比喻来理解。假设你教一个新手室内设计师。你不会直接告诉他:“沙发应该放在这个坐标。”你会让他自己先设计几十个方案。然后你(作为验收专家)对每个方案打分。你告诉他:“这个方案空间布局不错,得8分。”“那个方案杯子位置放错了,得3分。”经过一轮轮设计、评分、改进,新手设计师就会越来越擅长把家具摆对位置。

研究团队选择了FLUX.1-dev作为被训练的基础画图模型。选它有两个原因:第一,它本身画图能力强,特别是处理长文本描述时表现不错。这和SpatialReward-Dataset中那些复杂场景描述很搭。第二,FLUX.1-dev还没经过类似优化。这意味着任何提升都归功于SpatialScore的指导,而不是其他因素。

GRPO算法的工作流程是这样的:对于训练集中的每个文字提示词,画图模型一次生成一组图片(这里是24张)。然后SpatialScore对这24张图逐一打分。在组内,每张图的“优势值”会通过与组内平均分和标准差的比较来计算。得分高于平均水平的图获得正向优势(意味着“画得好,继续这么画”)。得分低于平均水平的图获得负向优势(意味着“画得不好,以后别这么画”)。画图模型根据这些反馈信号调整参数,争取下次画出更多高分图。

但是,这里有一个技术难题。原来的画图模型(基于“流匹配”技术)在生成图片时走的是一条“确定性路径”。就是说,给同样的输入,每次的生成过程是固定的。但是强化学习需要“探索”,也就是尝试不同的可能性来发现更好的方案。解决办法是把确定性的生成路径转换为“随机路径”。在每一步生成过程中加入一点可控的随机噪声。这就像对设计师说:“在你原来的方案基础上,每次稍微做一些随机的小调整。”这样才能有机会碰撞出更好的方案。

聪明的筛选术:top-k过滤策略

在实际训练中,研究团队发现了一个容易忽略但很麻烦的问题:不同难度的提示词会导致优势值估算不准。

考虑这个场景:如果某个提示词很简单(比如只要求两个物体的简单位置关系),那么24张生成图中可能有20张都画对了,只有4张画错。这时候组内的平均分会很高。结果,即使有些图画得很好,但是因为平均分太高,它们的优势值反而变成了负数。在强化学习里,负的优势值意味着“以后少画这样的图”。但是这些图明明画对了!这就像一个班级全是学霸,考了95分的同学因为班级平均分是97分,反而被当成“差生”批评。反过来,如果某个提示词特别难,24张图可能都画得不好。此时低分的图也可能因为平均分同样低而获得不合理的正向优势。

为了解决这个偏差,研究团队提出了一个简单的top-k过滤策略。思路很简单:在24张图的评分排序之后,只取得分最高的k张和得分最低的k张。用这2k张图来计算平均分和标准差。而且,只用这些被选中的图来更新模型。这样,无论提示词难还是简单,用于训练的样本总是包含了“最好的”和“最差的”两个极端。优势值的分布更均衡,训练信号也更清晰。

研究团队测试了不同的k值。当k=4时(就是取最好的4张和最差的4张,共8张),训练前期进步很快。但是后期因为样本太少,多样性不够,速度就慢了。当k=6时(取最好和最差各6张,共12张),在速度和多样性之间达到了最佳平衡。所以k=6被定为所有实验的默认配置。

这个策略还有一个好处:它大大减少了计算量。原始的GRPO需要对所有24张图的生成过程做“函数评估”来更新模型参数。但是采用top-k=6过滤后,只需要对12张图做这个计算。在采样组大小为24、去噪步数为6的设定下,每个提示词每步训练只需要72次函数评估(2×6×6)。而原始方案需要144次(24×6)。计算量直接减半,但是性能没有下降,甚至还提升了。

实验成绩单:远超旧方法,接近大模型

那么,经过SpatialScore指导的强化学习训练后,AI画家的“空间布局能力”到底提升了多少呢?

在研究团队自己做的SpatialScore评估指标上,FLUX.1-dev的原始得分只有2.18分(满分10分)。经过训练后,它跳到了7.81分。涨了近四倍。这就像一个室内设计师,从“十件家具只能摆对两件”进步到了“十件能摆对近八件”。

研究团队还在多个外部测试上做了评估。在DPG-Bench这个衡量“文字-图像对齐”的综合测试中,训练后的模型在空间关系维度上从89.44%提升到91.58%。整体得分从82.91%提升到85.03%。这个整体得分已经很接近GPT-Image-1的85.15%了。GPT-Image-1是OpenAI的商业产品。

在TIIF-Bench测试上,研究团队分别测试了短提示词和长提示词的表现。在短提示词的基本空间关系维度上,得分从75.8%提升到84.5%。在长提示词场景下,得分从64.5%提升到67.5%。在UniGenBench++测试的2D和3D布局维度上,改进也很明显。特别是在长提示词的3D布局上,从74.2%提升到80.1%。

这和之前的Flow-GRPO方法形成对比。Flow-GRPO使用GenEval作为奖励模型进行训练,效果不好。虽然Flow-GRPO在短提示词上有些改善,但是在长提示词场景下性能急剧下降。在UniGenBench++长提示词的2D布局上从81.9%暴跌到44.5%。3D布局从74.2%跌到40.5%。这说明了GenEval的局限性:它只能处理简单模板,一碰到复杂的多物体空间场景就“教不动”了。

而且,SpatialScore指导下的训练带来的提升不只在空间维度。在DPG-Bench的全维度评估中,训练后的模型在全局理解、实体识别、属性匹配等所有五个大维度上都有提升。但是Flow-GRPO训练的模型则在所有维度上都变差了。这说明SpatialScore的训练信号不仅没有牺牲其他能力来提升空间理解,反而产生了好的影响。

从实际生成的图片来看,研究团队展示了多个复杂场景的对比。比如一个餐厅场景的描述,要求“三根蜡烛从左到右由高到矮排列,水果碗在中间蜡烛后面居中对齐,两个盘子分别在蜡烛前方与最高和最矮蜡烛对齐,画挂在碗的正上方”。原始的FLUX.1-dev画出的图中多个物体位置有偏差。Flow-GRPO版本甚至直接没画蜡烛。但是SpatialScore训练后的模型,基本完整且准确地还原了所有空间关系。另一个露营场景的例子更明显。Flow-GRPO版本把帐篷都弄丢了。但是SpatialScore版本忠实地呈现了帐篷、火堆、水壶、原木、背包、灯笼等所有物体之间的前后左右关系。

研究团队还把SpatialScore的训练方法用到了另一个画图模型Qwen-Image上。结果同样好:在SpatialScore评估上从6.74提升到8.25。在各个外部测试的空间维度上也都有一致的提升。这说明SpatialScore不只对一个特定模型有效,它有很好的通用性。

在GenEval这个简单场景测试上,虽然研究团队说过GenEval有很多局限,但是经过SpatialScore训练的模型仍然取得了明显的零样本提升:整体得分从0.65提升到0.78。其中位置维度从0.19提升到0.37,几乎翻倍。这说明在复杂场景中学到的空间理解能力,确实能用到简单场景中。

研究的局限和未来方向

任何研究都有它的限制,这项工作也一样。研究团队坦白说,SpatialScore目前只在静态图片上验证了空间理解能力的增强。如果涉及到视频生成,模型不光要理解“现在物体在哪里”,还要理解“物体如何随时间移动和变化”。比如,一段视频可能要表现“先把物体A移到B的左边,然后把物体C放到B的右边,接着交换A和C的位置”。这种按时间顺序的空间推理,是现在研究还没碰到的领域。

研究团队认为,把奖励模型扩展到视频生成中的空间理解,是一个重要的未来方向。特别是对“仿真到真实”的具身模拟场景来说。具身模拟就是让机器人在虚拟世界里学习空间操作,然后用到现实世界中。生成时间连贯且空间准确的视频序列,对缩小模拟和现实之间的差距很重要。

这项研究解决的是一个很实际的问题:让AI画出来的东西不仅好看,还要“摆得对”。当你用AI生成一张产品图、一个游戏场景图,或者一个室内设计参考图时,你希望画面中的每个元素都准确地在你指定的位置。你不想反复“抽卡”碰运气。

SpatialScore的方法——先做高质量的对比数据,再训练专门的评判模型,最后用这个评判模型指导生成模型自我改进——这是一套可以重复使用的研究方法。以后如果想让AI画家学会更好的光影处理、更准确的人体比例、更合理的物理规律,都可以用这条路。

而且,这项研究提出的top-k过滤策略,虽然听起来只是一个小技巧,但是它揭示了强化学习训练中一个常见的问题。它的解决方案简单又有效。这个思路对其他领域的强化学习应用也有参考价值。

AI生成内容在创意产业、电商、游戏、建筑设计等领域的应用越来越广。“让AI准确理解空间”这件事会越来越重要。SpatialScore给我们指出了一条可行的路。路的尽头还有更大的可能性等着我们探索。

© 版权声明

相关文章

暂无评论

暂无评论...