当前位置: 首页 » 资讯 » 新科技 » 正文

机器人学会给自己纠错:当安全护栏不再只是护栏

IP属地 中国·北京 科技行者 时间:2026-10-31 00:18:12


想象一下这个场景。你在教一个新手司机开车,副驾驶上坐着一位教练,手握一个备用刹车。每次新手要撞上东西的时候,教练就一脚踩下去,车子安全了。可是第二天,第三天,新手依然在同一个路口做出同样危险的动作,教练依然在同一个地方踩刹车。

一个月过去了,新手司机的驾驶技术有没有变好?

没有。他只是学会了依赖那个备用刹车。

这正是机器人学习领域正在发生的事情。研究者们给机器人装上了各种安全护栏,但护栏修正的是动作,不是大脑。

机器人世界的老问题:护栏和大脑谁说了算

先说说这篇论文要解决的东西到底是什么。

视觉-语言-动作模型

VLA模型:一种能同时理解图像、听懂语言指令、并输出机器人动作的人工智能系统,比如让机器人"把苹果放进碗里",它能看懂场景、理解指令、规划出一连串手臂动作。

这类模型的厉害之处在于通用性,一个模型能应对很多不同任务,不需要为每个任务单独编程。但问题也随之而来:复杂场景里到处都是长得很像的物体,旁边可能还摆着不该碰的东西。机器人得精准识别目标,同时还不能撞到不相关的物品。

任务成功率和安全代价,这两件事得一起看。一味追求完成任务,可能顺手碰倒了旁边的花瓶;过于小心翼翼,任务又完不成。这是个两头都要兼顾的平衡木。

为了解决这个平衡问题,研究者们发明了运行时护盾这种东西。

控制屏障函数

CBF:一种数学工具,通过实时计算,在机器人即将做出危险动作前,把这个动作"投影"到一个安全的替代动作上,相当于给机器人装了个自动纠偏装置。

一个很有代表性的例子叫AEGIS,它结合视觉识别和CBF,在机器人执行动作之前拦截并修正那些可能造成碰撞的指令。听起来很完美对吧,危险动作被拦下来了,任务却还能继续。

但这篇论文的作者们发现了一个要命的漏洞。护盾只改了这一次的动作,机器人的"大脑"(也就是底层策略模型)完全没有变化。下一秒,大脑又会做出同样的危险判断,护盾又得再拦一次。这种拉锯可能一直持续到任务超时。

论文里有一个特别形象的例子。在一个"捡起洋葱放进碗里,同时别碰倒瓶子"的任务中,机器人的策略模型一直试图朝着洋葱移动,但AEGIS的护盾一直把它往反方向拽,因为洋葱恰好就在瓶子附近的危险区域里。这场拉锯战持续了超过300步,最终机器人什么都没做成,任务超时失败。

这就是论文反复强调的政策-护盾错配。

你可能会说,那就把护盾做得更强不就行了?论文的回答很直接:不行,因为问题根本不在护盾强不强,而在于机器人的大脑压根没学到任何东西。护盾越强,拉锯战打得越激烈,机器人反而越难完成任务。

如果只是不断强化护盾会怎样?数据给出了答案:在一个较难的"番茄"任务里,AEGIS把成功率从74%直接拉到了28.7%,代价是碰撞成本确实降低了,但代价是几乎把任务做砸了。这不是修正,这是用安全换取了失败。

把护盾的纠正变成学习素材

论文的核心想法说起来并不复杂:既然护盾每次纠正动作的时候,其实是在告诉机器人"你这么做不对,应该这么做才安全",那为什么不把这些纠正记录下来,变成教机器人改进自己的教材?

这个框架被作者命名为FAILBANK,翻译过来大概是"失败银行",意思是把每一次失败和危险的瞬间都存进一个账本里,攒够了就拿出来给机器人补课。

这里要先解释一个关键设计。

观察者模式

Observe-only:让安全护盾只在旁边观察和记录,给出一个"如果换成我会怎么做"的建议动作,但这个建议动作并不会真正执行,机器人仍然按照自己原本的判断去行动。

这个设计乍一听有点反直觉。既然护盾已经算出了更安全的动作,为什么不直接用?论文给出了一个很扎实的实验来解释原因。

研究者对比了两种收集数据的方式。第一种是护盾全程参与执行,也就是传统AEGIS的做法;第二种是护盾只在旁边观察,不插手。结果让人意外:在同样46个初始状态里,当护盾真正介入执行时,有8个原本机器人自己能成功完成的任务,反而因为护盾的强行纠正而失败了,只换回来5个原本失败的任务被护盾救回。净亏损3个成功案例。

更扎心的是,在护盾介入模式收集到的失败记录中,高达88.9%其实是护盾自己造成的失败,根本不是机器人策略本身的问题。

这就好比你想了解一个学生平时做题到底哪里容易出错,结果每次他刚要写错,你就一把抢过他的笔替他写完。这样收集到的"错题",记录的根本不是这个学生的真实水平,而是你自己抢笔的习惯。真正想摸清楚学生的弱点,得让他把错误真实地暴露出来,哪怕这意味着短期内多扣几次分。如果不采用观察者模式,后果立刻可见:护盾介入组因为抢笔抢走了38.9个百分点的真实失败信号,导致后续训练出来的模型压根没学对地方,最后这个护盾介入收集的数据集甚至没能通过系统自带的质量检验,被直接淘汰。

四步循环:从观察到进化

FAILBANK的整个流程被设计成四个阶段,像一条流水线一样循环运转。

第一步叫观察与标注。机器人正常执行自己的动作,护盾在旁边安静地记录"如果是我,我会怎么调整",同时标记这次调整是不是真的被触发了。这一步的关键是,护盾用的是模拟器里才有的特权几何信息,也就是物体精确的三维位置和形状,这些信息在真实部署时机器人是拿不到的,只能算是"开卷考试"阶段的辅助工具。

第二步叫准入与加权。不是所有记录下来的建议都值得学。论文设计了一套筛选机制,只保留那些发生在"危险还没真正降临之前"的早期纠正建议,太晚的纠正(比如已经快撞上了才给建议)会被直接丢弃,因为这时候的建议往往已经来不及挽回局面,参考价值有限。

这里有个很巧妙的设计叫静默锚点。

静默锚点

Quiet anchor:那些机器人自己顺利完成、根本没触发任何护盾干预的成功动作,也会被当作学习素材保留下来,提醒模型"这样做是对的,别忘了"。

为什么要专门留这部分?因为如果只拿纠正记录去训练模型,模型很容易变成一个"专门处理危险情况的专家",反而把那些本来做得好的日常动作给带偏了。这就像一个本来成绩不错的学生,老师只盯着他做错的那几道题反复讲评,结果这孩子做题的时候变得畏手畏脚,原本擅长的题型反而开始出错。加入静默锚点就是提醒模型,别忘了你本来就会的那些正确做法。

实验数据证实了这个设计的价值。只用纠正记录训练,成功率从65%提到了89%,但代价(也就是碰撞成本)只从38.61降到20.88。加上静默锚点之后,成功率保持89%不变,代价却进一步降到16.52。纠正记录负责把任务做对,静默锚点负责把代价压得更低,两者分工明确。

第三步叫积累。这一步很简单,就是把新一轮收集到的有效记录,和之前几轮攒下来的记录合并到一个越来越大的"失败银行"里,留着给下一轮训练用。

第四步叫更新,这是整个框架里最谨慎的一步。

低秩适应

LoRA:一种给大型神经网络做"轻量化手术"的技术,不去改动模型里全部参数,只在关键位置插入少量可训练的新参数,这样既能让模型学到新东西,又不至于把原来学得好的能力搞坏。

每一轮,系统都会从最初的基础模型重新训练一个全新的LoRA适配器,而不是在上一轮的基础上继续叠加修改。训练完成后,这个候选模型还得通过一道关卡才能被正式采用,那就是在一批模型从没见过的留出数据上,检查它的"流匹配损失"有没有涨得太离谱,以及它给出的第一个动作和原始基础模型差异是不是太大。只有两项指标都在容忍范围内,这个新模型才会被接受,否则就作废,继续沿用上一轮的模型。

这个"考试"机制的意义在于防止模型在追求新能力的过程中,把原本已经很扎实的基本功给丢了。这有点像公司给员工做技能培训,新培训的内容得先经过小范围测试,确认不会让员工原本的核心业务能力下降,才会正式推广到全员。如果没有这道关卡会发生什么?论文里专门做了对比实验:把训练步数从800步一路加到4800步,代价是学习信号里的某个损失指标飙升到1.11,超过了预设的1.10安全线,但有意思的是,即便超过了这条线,任务成功率反而还在继续上升。这说明这道关卡设得比较保守,它宁可错杀一些可能有用的模型,也不愿意冒风险放行一个可能有隐患的版本。

实验结果:两个指标一起涨

论文选用了VLA-Arena这个评测平台,在它的静态障碍物任务套件上做测试,覆盖两个难度等级和两种不同的底层模型架构。

下面这组数据是整篇论文最硬核的部分。

和什么都不做的基础模型相比,FAILBANK让任务成功率在两种模型架构上分别提升了8.5和6.9个百分点,同时把机器人自己造成的碰撞代价分别降低了35.6%和23.8%。

和护盾方案AEGIS相比,FAILBANK的成功率分别高出25.4和9.5个百分点,而碰撞代价基本维持在同一水平。

这组数字放在一起看,意味着FAILBANK不是靠牺牲安全性换来了更高的成功率,也不是靠放慢动作换来了更低的碰撞代价,而是两件事同时往好的方向走。论文里统计了一个更直观的指标:在十个任务和两种模型架构组合出的十个场景里,FAILBANK同时在成功率和碰撞代价上都超过基础模型的场景有8个,而AEGIS只有3个。

这里要解释一下这个综合评分指标。

基准相对分数

BRS:论文自己设计的一个综合打分方式,把失败率和碰撞代价这两个维度按同等权重压缩成一个分数,基础模型得分固定是0.368,一个完美模型(零失败零代价)能拿到1分。

这个设计的巧妙之处在于,它强迫你同时关注两件事,而不是只盯着成功率猛涨就沾沾自喜。在这个评分体系下,FAILBANK在两种模型架构上都拿到了比AEGIS更高的分数,一个是0.498对0.350,另一个是0.443对0.441。后者的差距很小,论文也坦诚地说明了这个数字的统计置信区间是有重叠的,不能武断地说FAILBANK就一定比AEGIS更安全,只能说它在成功率和代价的综合权衡上做得更好。

论文还专门测试了这套方法的泛化能力,看它学到的东西是不是只对训练时见过的场景有用。结果显示,在训练数据从没覆盖过的初始状态、从没见过的任务、乃至更难的难度等级上,成功率都有不同程度的提升,其中一个具体的数字是在训练时完全没用过的更难任务等级上,机器人从没见过任何相关数据,成功率依然从50.5%提升到了59.4%。这说明机器人学到的不是针对某个具体场景的死记硬背,而是某种更通用的判断能力。

多轮迭代会不会越滚越好?

论文还做了一个很诚实的实验,连续跑了五轮自我进化,看看失败银行越攒越大,会不会让模型表现持续线性提升。

答案是不会。

随着记录从3700条一路涨到22700条,成功率在第二轮达到峰值,随后开始波动,碰撞代价则在第三轮达到最低点,之后又有所反弹。两个指标的最优点出现在不同的轮次,而且后面几轮都在小幅震荡,没有哪一轮是绝对意义上的终点。

但有一点很重要,五轮里的每一轮,成功率都始终高于基础模型,碰撞代价也始终低于基础模型。这说明持续的运行时反馈确实在持续重塑这个模型,只是这个重塑过程不是单调上升的直线,而更像是一个在不断寻找新平衡点的过程。

论文作者对这一点的态度很坦率,他们没有把这个波动包装成"稳步提升",而是明确承认这是一个需要进一步研究的现象。这种诚实本身也值得肯定。

这个方法目前还有哪些边界

论文也老实交代了方法的适用范围。目前这套框架只适用于那种输出连续动作、用流匹配方式生成动作的模型架构,如果换成别的动作生成方式,整套监督机制和验收标准都得重新设计。另外,目前的实验只覆盖了静态障碍物场景,也就是危险物体是不会动的。如果换成动态场景,比如旁边有个移动的物体,整套系统还得加上对未来轨迹的预测能力,这目前还没有被验证过。论文里附带的一个动态场景压力测试显示,这套思路直接搬到动态障碍物上效果并不理想,预测误差在短时间窗口内就能达到危险半径的10%到29%,说明现有的预测手段还不足以支撑动态场景下的安全纠正。

写在后面

读完这篇论文最触动我的一点,是那个"护盾介入造成88.9%虚假失败"的实验。这个数字第一次让我意识到,安全干预本身可能是一种会污染数据的操作。我们平时设计各种监控和纠错系统时,很容易默认"多一层保护总是好的",但这篇论文用扎实的对比实验告诉你,如果你的监控系统会改变被监控对象的行为,那你收集到的数据可能根本不反映真实情况。这个逻辑其实可以推广到很多领域,比如教育里的过度纠错,管理里的过度干预,本质上都面临类似的悖论:你想了解真实问题出在哪,但你的干预手段本身已经让"真实"变得不再真实。

另一个让我反复琢磨的地方,是那五轮迭代实验里成功率和代价在不同轮次分别达到最优的现象。这意味着"持续学习"这件事本身,不是一条单调上升的曲线,而更像是在一个多维空间里不断试探和调整。这篇论文没有刻意美化这个结果,而是把这种不完美的真实情况摆出来,这种态度比强行宣称"效果持续变好"要诚实得多,也更值得信任。

如果一个机器人每天都在犯同样的错误,而你每天都在旁边替它擦屁股,那它到底是在变聪明,还是你在变得越来越累?

Q&A

Q1:FAILBANK是什么?

A:FAILBANK是一个让机器人从运行时安全纠正中持续学习改进的四阶段框架,它让安全护盾只做观察不做干预,把护盾给出的纠正建议转化为训练数据,再通过严格验收机制更新机器人的底层策略模型,最终让机器人部署时不再需要护盾。

Q2:FAILBANK和传统的运行时安全护盾(比如AEGIS)有什么区别?

A:传统护盾只是临时拦截危险动作,机器人大脑本身不会改变,容易反复出现同样的冲突。FAILBANK让护盾只在旁边观察记录,把这些记录转化为训练素材,持续更新机器人的策略模型本身,实验显示它比AEGIS成功率高出9.5到25.4个百分点,碰撞代价相当。

Q3:FAILBANK目前还有哪些局限?

A:目前只适用于连续动作、流匹配类型的模型架构,且只在静态障碍物场景下验证有效,迁移到动态障碍物场景时效果不理想,论文作者也坦承多轮迭代后成功率和碰撞代价会出现波动,不是单调提升的过程。

【数据支持来自天眼查App】

免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其内容真实性、完整性不作任何保证或承诺。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。