微信扫一扫,关注公众号

  • 科技行者

  • 算力行者

见证连接与计算的「力量」

首页 香港大学教我们:让AI"边学边记"突破300关,终于不再"学了新的忘了旧的"

香港大学教我们:让AI"边学边记"突破300关,终于不再"学了新的忘了旧的"

2026-05-13 12:48
分享至:
----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.-
2026-05-13 12:48 科技行者

这项由香港大学计算与数据科学学院及深圳湾区人工智能与计算机视觉研究中心联合开展的研究,发表于2026年第43届国际机器学习大会(ICML 2026),论文编号为arXiv:2602.03473。

人类有一种很自然的学习方式:学会骑自行车之后,再去学骑摩托车,不会突然忘记怎么踩脚踏板。但现在的人工智能系统却常常做不到这一点——当它学习新知识时,旧知识会像被橡皮擦掉一样消失,这种现象在学术界被称为"灾难性遗忘"。

更麻烦的是,现实世界中的任务是源源不断的。今天要认识猫和狗,明天要认识各种花卉,后天又要识别建筑风格。如果每次来了新任务,AI都要把旧知识清空重学,那跟一个每天早上失忆的人没什么区别。研究人员把这类问题叫做"持续学习",其中最难啃的骨头是"类别增量学习"——AI需要一批接一批地学习全新的类别,同时还要记住所有已学过的内容。

大多数现有研究在这个问题上做得还不错,但有个致命的局限:它们只在很短的任务序列上测试过,比如把100个类别分成10组,每次学一组,一共10次。然而真实世界可不是这么客气,任务可能会绵延成百上千个。当研究团队把现有方法推到100个任务、200个任务甚至300个任务的场景下,很多方法的表现会像被长跑耗尽体力的运动员一样,直线崩溃。

正是为了解决这个"越跑越慢甚至摔倒"的问题,香港大学的研究团队提出了一套新方案,叫做CaRE——一个可以扩展到300多个连续任务的持续学习框架。与此同时,他们还专门构建了一个更具挑战性的测试数据集OmniBenchmark-1K,让整个领域终于有了测试"长跑能力"的专用跑道。

一、"学了新的忘了旧的",这个老问题到底有多麻烦

先用一个贴近生活的场景来理解这件事。假设你是一家博物馆的导览员,博物馆一直在新增展厅。第一个月你学会了介绍古埃及文物,第二个月又来了古希腊展厅,第三个月增加了中世纪欧洲,就这样一直加下去,一年后博物馆有了几百个展厅。

一个优秀的导览员不仅要记住最新展厅的内容,还要在游客问起三年前那个古埃及展厅时,依然能侃侃而谈。更难的是,当有人拿出一件从未见过的文物问你"这是哪个时代哪个地区的风格"时,你需要调动所有展厅的知识来综合判断。

这就是持续学习面临的核心挑战:既要不断吸收新知识,又不能遗忘旧知识,还要能在新知识和旧知识之间灵活切换、互相借鉴。

近年来,研究者们发现借助已经在海量图片上预训练好的大模型作为起点,然后用轻量级的"补丁模块"来学习每个新任务,是一条很有效的路子。这类方法的核心思路是:大模型已经掌握了非常通用的视觉理解能力,学新任务只需要加一个小小的适配器(Adapter),就像给一双通用运动鞋加上针对不同运动的鞋垫一样,既省力又有效。

但问题在于,当任务数量从10个扩展到100个,再到300个时,这些"鞋垫"会越堆越多。如何在几百个鞋垫里,迅速找到对当前情况最合适的那一个,甚至是最合适的几个组合,就成了真正的技术难题。

二、大脑如何调用记忆:CaRE的设计灵感来自人类认知

研究团队在设计CaRE时,借鉴了人类记忆的运作方式。当你试图区分一只柯基犬和一只哈士奇时,你不会从零开始思考,而是会自动调用所有关于狗的记忆——可能包括你养过的宠物、看过的纪录片、以及朋友家里的各种狗狗。与此同时,你对"猫科动物的特征"这类记忆虽然也存在,但此刻并不是最主要的参考依据。

换句话说,人类在面对新问题时,会有选择性地召唤相关历史知识,而不是无差别地翻遍所有记忆。这种"按需调用相关记忆"的机制,就是CaRE设计的核心出发点。

CaRE的核心组件叫做"双层路由专家混合"机制,英文缩写是BR-MoE。这个名字听起来复杂,但背后的逻辑其实就像一家大型图书馆的智能检索系统。

图书馆里有成百上千个书架(对应着每个任务学到的"专家模块")。当你带着一本书来查询时,检索系统不会让你把所有书架都翻一遍。它会先判断这本书大概属于哪几个类别,然后把你引导到最相关的两三个书架区域,再在这些区域内精确找到最匹配的几本参考书,综合给出答案。

具体来说,BR-MoE的工作分两步走。第一步叫"动态路由器选择",第二步叫"动态专家路由"。这两步层层递进,共同完成对历史知识的精准检索。

三、第一步:用"自信心"来选图书管理员

先来理解BR-MoE的第一步。每个任务在训练时都会产生三样东西:一个"类别感知器"(相当于这个任务的专属标签解读器),一个"路由网络"(相当于这个任务的专属管理员),以及一个"适配器专家"(相当于这个任务的知识本体)。

当一张新图片进来时,系统会把它同时送给所有任务的类别感知器,让每个感知器都判断一下:"这张图片像不像我负责的那些类别?"

关键在于,系统并不是看哪个感知器打分最高,而是看哪个感知器"最有把握"。这个"把握程度"通过一个叫做"信息熵"的指标来衡量。信息熵越低,说明感知器越笃定,越低越说明"这张图很可能属于我管的类别";信息熵越高,则说明感知器自己也不确定,在各种可能性之间犹豫不决。

用一个更形象的比喻:你拿着一张柯基犬的图片去问100个专家。负责"犬类"的专家会很快、很肯定地说"这是犬类!"(低熵,高自信);而负责"汽车"的专家会茫然地说"这……好像是什么动物?但又好像不是……"(高熵,低自信)。

系统根据信息熵从低到高排序,选出最自信的几个感知器所对应的路由网络。在训练时,除了当前任务的路由网络必然被激活外,还会额外动态选择一个最相关的历史路由网络;在推理时,则完全依赖这种动态选择机制,选出两个最自信的路由网络。

这个设计之所以采用信息熵而不是简单的最高分,是因为信息熵能够捕捉整体分布的不确定性,而不仅仅是最高概率值的大小。一个感知器可能在某个类别上打了60分,但它同时在其他类别上也打了55分和50分,整体非常不确定——这时信息熵就会比较高,说明它其实并不擅长处理这张图片。相比之下,一个感知器在某个类别上打了90分,其他类别都只有5分,整体非常笃定,信息熵就会很低。

研究团队用实验验证了这个选择:用自动编码器重建误差、用原型分类器的余弦相似度、或者直接取最高分等替代方案,表现都明显不如信息熵方法。

四、第二步:管理员精确调配专属档案

一旦选出了最相关的几个路由网络(比如选出了管理"犬类"任务的路由网络96号和管理"哈士奇"相关任务的路由网络53号),第二步便开始了。

每个被选中的路由网络会生成一组"权重评分",评估在它管辖范围内的所有专家适配器中,哪几个最值得调用。评分最高的前三个专家会被激活,它们的输出按照各自的权重加权合并,形成一个融合了多方知识的特征表示。

以柯基犬的例子来说:路由网络96号激活了专家96(柯基犬相关)、专家16(狗类通用知识)和专家37(动物毛发纹理),并根据它们各自的相关程度分配权重。路由网络53号则激活了专家53(哈士奇,因为哈士奇与柯基在外形上有些相似之处)、专家19和专家1(均含动物知识)。这两批激活的专家各自产生特征,然后合并在一起。

这样一来,最终的特征表示里既有柯基犬自身最独特的判别特征(来自专家96),也有来自相似犬种的参考特征(来自专家53),还有通用的动物细节特征(来自专家16等)。这种融合既"精准"——因为调用了最相关的知识,又"全面"——因为引入了互补的相关经验。

除了这些任务专属的专家之外,系统还引入了一个"共享专家",这个专家积累的是所有任务的通用知识精华。这个共享专家不是固定不变的,而是通过一种叫做"指数移动平均"的方式,随着每个新任务的学习而缓缓更新,就像一个不断沉淀的经验库,总是保存着迄今为止所有任务的综合知识摘要。每次有新任务到来,就用新任务训练出的适配器参数去小幅度地更新共享专家,动量系数设为0.999,意味着更新非常缓慢、稳定,不会因为某个新任务而大幅改变积累多年的通用知识。

五、每一层网络都有自己的"判断力"

这里有一个非常重要的细节值得单独说明:BR-MoE模块会被安装在神经网络的每一个中间层,而不只是最后一层。这意味着网络的每一层都有自己独立的路由判断能力。

为什么这很重要?因为在视觉神经网络里,浅层负责识别边缘、纹理这类低级特征,而深层才开始理解语义、类别这样的高级概念。浅层看到柯基犬时,感知到的可能只是"有毛"、"有角"这类基础特征,而深层才会判断"这是一只犬,而且是柯基"。

如果全网络共用一套路由决策,就相当于要求浅层也按照高层的逻辑来调用专家,这显然不合理。CaRE的解决方案是让每一层都自主做决策,根据自己这一层的特征抽象程度,选择最合适的知识来辅助当前层的特征提取。

为了训练每一层的类别感知器都能做出有效判断,研究团队引入了一个辅助损失函数。具体来说,对于每一层的类别感知器,它不仅要自己学着区分当前任务的类别(分类损失),还要模仿最后一层深层网络的输出分布(KL散度损失)。这就好像让每个楼层的接待员不仅要处理好自己楼层的工作,还要学习顶层总经理的判断方式,使得即使是浅层,也能形成更具语义价值的判断,从而做出更好的路由决策。

研究团队用实验验证了层级独立决策的价值:当把路由决策的"视野"从1层扩展到2层(即当前层的决策会延续到下一层),再扩展到3层时,性能持续下降。这证明每一层都需要有自己量身定制的知识检索模式,而不是简单地共用上一层的决策。

六、训练时的细节:既要记住旧知识,也要学会新任务

在训练机制上,CaRE采用了一种参数冻结策略。每来一个新任务,就为这个任务新增一套三元组(类别感知器、路由网络、适配器专家),同时把所有以前任务的参数锁死不动。这样做的好处是从根本上避免了"学新忘旧"——旧知识的参数从未被触碰,自然不会被覆盖。

整体训练目标由两部分组成。主要部分是针对当前任务的分类损失,使用了一种叫做"角度惩罚"的分类函数,通过对特征向量和类别向量之间的余弦相似度做归一化,使得不同类别之间的决策边界更加清晰,配合一个固定放大系数20来锐化分类边界。辅助部分则是对每一层类别感知器的监督,包括该层自身的分类损失和与最终层输出的KL散度对齐损失。这两部分加权组合,构成了最终的优化目标。值得一提的是,辅助损失的权重系数λ设为1,实验表明在0.5到2.0的范围内,性能对这个参数并不敏感,说明这个设计具有良好的稳定性。

七、为了公平测试,还专门造了一个新跑道

在验证CaRE的性能时,研究团队遇到了一个尴尬的现实:现有的测试数据集根本不够用来评测长序列性能。最常用的CIFAR-100只有100个类别,如果分成100个任务,每个任务就只有1个类别,这种测试毫无意义。ImageNet虽然大,但绝大多数预训练模型都用它训练过,测它就像考试前偷看了答案,成绩没有参考价值。

于是研究团队从头构建了一个新数据集,命名为OmniBenchmark-1K。这个数据集从OmniBenchmark-V2中精心筛选而来,包含来自21个视觉领域的1000个类别,共约18.87万张训练图片,每个类别平均169张,最多的有403张,最少也有100张。测试集包含约19849张图片,每类约19张。

为了确保均衡性,数据集的构建过程使用固定随机种子,从每个视觉领域中等比例抽取类别,覆盖了鸟类、食物、活动等21个不同主题。这个数据集的类别之间有的差异巨大(比如蘑菇和飞机),有的则语义相近(比如不同品种的狗),这种多样性正是测试持续学习能力的绝佳场景。

在这个新跑道上,研究团队设计了四种难度不同的评测配置。"B0 Inc10"代表没有初始基础类,每个任务学10个类,总共100个任务;"B0 Inc5"则是每任务5个类,共200个任务;"B100 Inc6"有100个基础类打底,再学151个任务;最难的"B100 Inc3"则是在100个基础类之上,再连续学301个任务,每次只学3个类。

与此同时,研究团队也在OmniBenchmark-V1、ObjectNet、ImageNet-R、ImageNet-A等传统数据集上进行了较短序列(50到60个任务)的评测,以及CIFAR-100等超短序列(5到20个任务)的经典场景测试。

八、跑完300关,CaRE遥遥领先

在长序列评测结果上,CaRE展现出了压倒性的优势。以100任务场景为例,CaRE的最终准确率达到68.27%,比当时最强的竞争对手MOS(64.27%)高出4个百分点,比MIN(63.60%)高出近4.67个百分点。

当任务数量增加到200个时,差距进一步扩大。CaRE以67.46%的最终准确率领先,而强劲的TUNA只有59.14%,差距接近8.32个百分点。在151个任务的场景下,CaRE超过APER-Adapter约6个百分点。

最引人注目的是301个任务的极端场景。在这个超长序列下,大多数方法都出现了明显的性能滑坡,但CaRE依然保持在68.51%的最终准确率,明显高于所有对手。

研究团队还特别观察到一个发人深省的现象:一些在短序列表现不错的方法,比如SEMA和MoAL,在长序列下会出现断崖式下跌。以MoAL为例,在最初的20个任务里它的表现相当不错,但随着任务数量增加,它的准确率急剧下降,最终远落后于CaRE。这说明能在短序列下工作的方法,并不一定具备支撑长序列的内在架构。

在短序列经典测试上,CaRE同样表现优异。在CIFAR-100的10任务设置下,CaRE的最终准确率达到92.46%,超过MoAL约1.97个百分点,超过TUNA约0.75个百分点。在ObjectNet的20任务设置下,CaRE以66.54%的最终准确率领先,超过SLCA超过5个百分点。在ImageNet-R和ImageNet-A两个极具挑战性的数据集上,CaRE分别获得80.53%和64.78%的最终准确率,继续保持领先。即便是只有5个任务的超短序列评测(VTAB数据集),CaRE以93.80%的最终准确率居于榜首。

从不同任务顺序下的稳定性来看,研究团队用4个不同的随机种子生成4种不同的任务排列,结果显示CaRE在最终准确率上的标准差仅为0.16,是所有对比方法中最低的,远低于MOS的0.88和TUNA的1.00。这说明CaRE的优势并非依赖于特定的任务顺序,而是来自其架构本身的鲁棒性。

九、效率上的惊喜:更强的同时,还更轻便

一个很自然的担忧是:这么复杂的双层路由机制,计算开销会不会很高?研究团队在100任务场景下对计算效率进行了详细分析,结果令人惊喜。

CaRE每个任务平均需要的可训练参数量为330万,在所有对比方法中处于中等偏低水平。学完所有任务后,额外附加在预训练模型上的参数总量约为9099万,而MOS为3227万,但MOS的性能明显低于CaRE。换个维度看,与性能接近的MIN相比,CaRE的参数量更少。

推理速度上,CaRE的平均推理延迟约为70.89毫秒,与MIN的71.13毫秒基本相当,但明显快于MOS的1116.54毫秒和TUNA的820.19毫秒。也就是说,CaRE用了不到MOS十六分之一的推理时间,就实现了更高的准确率。

十、路由行为的可视化:系统真的在"按需调用相关知识"吗

为了验证BR-MoE确实在做有意义的知识检索而不是随机选择,研究团队进行了路由行为分析。

在301任务的评测协议下,他们统计了不同网络层在不同阶段(学习10个任务、100个任务、301个任务后)的路由召回率。路由器的Top-2召回率指的是:被激活的两个路由网络中,有没有至少一个对应真实任务。专家的Top-3召回率则指:激活的三个专家中,有没有对应真实任务的专家。

结果显示,随着网络层数的加深,召回率持续上升。在学习了301个任务之后,第3层的路由器召回率为27.4%,专家召回率为58.4%;而第12层(最深层)的路由器召回率达到80.6%,专家召回率达到85.8%。这说明深层网络已经形成了足够丰富的语义表示,能够以很高的准确率识别当前输入属于哪个任务范畴,并调用正确的历史知识。

浅层的较低召回率并不代表失败,而是符合预期——浅层处理的是通用低级特征,不同任务的浅层知识本来就有较多重叠,所以调用"相关任务"还是"非相关任务"的浅层专家,差异并不大。

研究团队还通过热力图可视化了100个任务下,各层的路由器激活模式和专家激活模式。结果清楚地显示出层次化的激活结构:浅层的激活分布比较弥散,少数几个路由器被绝大多数任务频繁调用(说明浅层知识确实更加通用);深层的激活则越来越集中,每个任务倾向于激活与自身高度相关的特定路由器和专家(说明深层知识更加任务专属)。

特别有意思的一个发现是:即便是学习早期任务时,那些尚未存在的后期任务的知识也无从获取;但在推理时,系统可以动态地将后期任务积累的知识融合进来,用于辅助对早期任务类别的判断。这种推理时的灵活性意味着,随着系统学习的任务越来越多,它对早期任务的判断能力其实也在悄悄提升,因为可调用的参考知识库变得更加丰富了。

十一、消融实验:把CaRE拆解开来看

为了搞清楚每个设计细节的贡献,研究团队做了一系列"拆零件"实验,逐一验证每个组件的必要性。所有消融实验都在OmniBenchmark-1K的100任务设置下进行。

关于动态路由选择的重要性:如果把所有类别感知器全部移除,改用原型分类器来静态决定路由(即为每个任务维护一个原型向量,根据余弦相似度决定用哪个任务的路由),最终准确率会下降整整9.98个百分点。这是所有消融实验中幅度最大的一次,充分说明层级独立的动态路由是CaRE性能的核心来源。

关于多路由网络的必要性:如果把激活的路由网络数量从2个减少到1个(只激活当前任务自己的路由),最终准确率下降1.20个百分点。如果在1个路由的基础上激活双倍数量的专家来补偿(也就是说通过多调专家来弥补少用路由的缺陷),性能依然没有恢复到2个路由的水平。这说明,多个路由网络带来的不只是更多的专家资源,更重要的是带来了来自不同任务视角的特征处理方式,这种多样性是单纯增加专家数量所无法替代的。

关于专家路由网络(门控机制)的必要性:如果去掉门控评分,直接通过类别感知器选择K个专家然后直接加和(不加权),性能会下降6个百分点以上。增加被激活的专家数量(从K=1到K=3),如果没有门控加权,性能会持续下降,因为不相关专家的特征被等权加入,相当于噪声叠加。

关于专家数量K的选择:实验发现K=3是最优点。从K=1增加到K=2再到K=3,性能持续提升,但K=6和K=18与K=3基本持平,没有进一步提升。这与大型语言模型中"激活更多专家就能持续提升性能"的经验相悖。原因在于,持续学习的目标是精准检索相关历史知识,而不是广泛聚合通用知识。激活过多专家不可避免地引入无关任务的特征,这些特征对当前任务来说是噪声,反而会干扰判断。

关于单路由器的局限性:如果整个系统只有一个共享路由器,每来一个新任务就扩展这个路由器的通道维度(而不是新增独立的任务专属路由器),性能会暴跌11.79个百分点。这说明随着任务数量增加,一个单一路由器根本无法有效区分和调度几百个不同任务的知识。

关于适配器通道配置:实验发现,任务专属适配器使用16个瓶颈通道最优;共享专家使用64个通道最优;EMA动量系数使用0.999最优,过大(0.9999)或过小(0.9)都会导致性能下降。

关于模块放置位置:研究团队还测试了两种连接方式——"先经过适配器再送入类别感知器和路由网络"(After Adapter)与"原始特征直接送入类别感知器和路由网络"(Before Adapter)。结果显示前者优于后者1.36个百分点,说明经过任务专属适配器变换后的特征,比原始特征更适合用来做路由决策。

---

说到底,CaRE做的事情可以用一句话概括:让AI学会"按图索骥",而不是"全部翻遍"。面对一张新图片,它不是把所有学过的知识都翻出来,而是先判断"这张图大概涉及什么主题",再有的放矢地调出相关历史知识来辅助判断,而且这个判断在网络的每一层都在独立进行,每层都有自己的"专业判断力"。

这个设计之所以在300多个任务的超长序列上依然有效,是因为它的效率随任务数量增长得非常克制——无论有多少任务,每次推理只需要激活2个路由网络和6个专家,而不是把所有几百个任务的知识全部调用一遍。同时,它的准确性依赖于深层特征足够丰富的语义信息,实验已经证明深层的路由准确率高达80%以上,完全足够支撑高质量的知识检索。

这项研究的意义不只在于刷新了技术指标。它更重要的贡献在于:揭示了"长序列持续学习"是一个与"短序列持续学习"截然不同的挑战,并提供了第一条被验证可行的解决路径。它还提供了OmniBenchmark-1K这个专为长序列评测设计的数据集,让未来的研究有了可以共同比拼的标准跑道。

当然,CaRE也有它诚实承认的局限性:随着任务数量增长,附加到模型上的参数量是线性增长的,这在超长序列上会带来不可忽视的存储负担。如何在不牺牲性能的前提下进一步压缩模型复杂度,以及如何把这套方案扩展到视觉语言大模型,是研究团队明确提出的未来方向。

有兴趣深入了解技术细节的读者,可以通过arXiv编号2602.03473查阅完整论文,所有代码和数据集也已在GitHub开源(搜索CaRE LMMMEng即可找到)。

---

Q&A

Q1:CaRE和普通持续学习方法相比,最核心的区别是什么?

A:普通方法通常为每个任务训练一个适配器,推理时要么选一个固定的,要么对所有任务的结果取平均。CaRE的核心区别在于双层路由机制:先用信息熵动态选出最相关的路由网络,再由这些路由网络按权重激活最匹配的专家模块,而且这个过程在网络每一层独立进行。这种"按需调用相关知识"的方式,让CaRE在长序列场景下比其他方法更稳健。

Q2:OmniBenchmark-1K和之前常用的CIFAR-100这类数据集相比,有什么本质的不同?

A:CIFAR-100只有100个类别,分成超过20个任务时每任务就只有几个类,任务太短且类别太少,无法测试真实的长序列学习能力。OmniBenchmark-1K有1000个类别,横跨21个视觉领域,每个类别至少100张训练图片,最多能分出300多个连续任务,专门用于评测持续学习系统在长任务序列下的综合表现,是目前该领域规模最大、最全面的长序列测试集之一。

Q3:CaRE在长序列测试里有多少个任务时性能会开始明显下降?

A:CaRE在所有测试配置下均保持了较为稳定的性能曲线。即便在301个任务的极端场景下,它的最终准确率仍维持在68.51%,是所有对比方法中最高的。相比之下,SEMA和MoAL等方法在超过20个任务之后就出现了明显的性能滑坡,说明CaRE的架构设计从根本上更适合长序列场景,目前尚未观察到明显的性能断崖点。

分享至
0赞

好文章,需要你的鼓励

推荐文章
----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.- ----..---.-...-/--...-.-......./-...-....-..--../-............-.-