北航CASE团队提出了个叫CASE的框架,目的是让大模型能不断学新知识,编辑上千次都不会忘掉旧的。现在大语言模型发展快,可怎么更新知识成了个麻烦事。比如像“星巴克换了CEO”或者新的科研成果出来,模型有时候就记不住了,还会搞混。为了应对这个难题,北航的CASE团队就想出了这个方案,帮模型实现“终身编辑”。 这个框架主要用了两个办法:一个是给每次编辑“算分”,把冲突的知识放到不同地方存着,把能兼容的知识共享一下。另一个是只关注那些对模型影响大的关键神经元去调优。这么做能避免浪费资源,还能减少局部的冲突。 传统的方法要么瞎加参数浪费算力,要么胡乱更新参数让人头疼。而CASE团队发现,以前的方法没好好考虑怎么处理新知识和旧知识的冲突。所以他们搞了个CAA模块来量化冲突程度。要是新知识和旧知识不打架就共享存储空间;要是打架了就另起炉灶存一边。KNT策略呢,就是用Fisher信息矩阵来找对模型预测影响最大的神经元,只去动这几个关键的地方。 实验结果挺让人惊喜的:在对LLM进行1000次连续编辑后,准确率比现在的最好方法高了近10%。关键是额外加的参数还不到1MB,这个提升挺大的。 随着金融、医疗这些领域用大模型越来越多,不停地更新知识变得必须得做。CASE框架提供了一种更轻巧的更新方式,适合在大规模应用中用。团队以后还打算把这个技术扩展到处理多模态数据和非结构化数据上去,进一步提高模型的学习能力。总之,这个框架为大模型的知识更新带来了新的思路,值得我们期待它在更多地方发挥作用。