确保新版语言处理模型不会出现性能倒退
机器学习服务背后的模型不断更新,新版模型通常比旧版更准确。但整体准确率的提升仍可能伴随着特定情况下的性能回归——即准确率下降。这对用户来说可能令人沮丧,特别是当特定回归产生下游影响时。
在计算语言学协会年会上发表的一篇论文中,我们提出了一种自然语言处理中回归自由模型更新的新方法,使我们能够构建不仅准确率更高、而且能持续保持旧模型正确分类的新深度神经网络模型。
该论文包含两部分:模型更新回归研究和缓解方案提议。研究中,我们使用基于BERT语言模型的公共基准模型,并在通用语言理解评估框架的七项不同NLP任务上训练它们。然后使用不同模型参数或更强大的BERT模型训练更新模型。我们发现即使重新训练后整体性能有所提升,仍有1.9%到7.6%的输入案例出现回归。
为缓解回归问题,我们将匹配过去性能的问题表述为约束优化问题,然后通过知识蒸馏放松该问题,促使新模型在适当情境下模仿旧模型。
NLP模型中的回归缺陷
研究中,我们通过负翻转率衡量模型更新回归,即旧分类器预测正确但新分类器预测错误的案例百分比。对于拥有数千万用户的服务,我们测量的NFR类型将转化为数十万用户的糟糕体验。
研究显示,在更新模型中,NFR通常远高于总准确率增益,高出两到八倍。这意味着仅追求更新模型更高的准确率改进并不能确保减少回归。
如何缓解回归
回归自由模型更新要求模型既要学习目标任务,又要符合旧模型提出的条件,使其成为约束优化问题。我们将硬约束放松为软不等式条件,并提出了替代NFR的代理指标:使用Kullback-Leibler散度(标准相似性度量)来度量预测logits的连续度量。
在评估我们的方法时,我们使用了两个基线:传统方式更新的模型和包含原始模型与更新模型的集成模型。结果显示,当更新涉及改变语言模型时,我们的知识蒸馏方法最有效,将平均NFR降至2.91%,而集成模型为3.63%,传统更新为4.57%。
使用CheckList协议评估模型发现,蒸馏能有效减少几乎所有类型行为测试中的回归,表明我们的蒸馏方法实际上是在将新模型行为与旧模型对齐。
当更新涉及不同随机种子而不改变语言模型时,集成方法表现优于我们的方法。这可能是因为集成天然减少输出方差,使其不易过拟合。
基于初步研究结果,我们设计了一个简单模型选择程序:使用20个随机种子训练20个不同模型,挑选出能提供最大NFR减少的模型。发现在保持相同语言模型的更新情况下,这种方法减少回归的效果与集成方法相当,且无需并行运行两个模型的操作开销。
更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)或者 我的个人博客 https://blog.qife122.com/
对网络安全、黑客技术感兴趣的朋友可以关注我的安全公众号(网络安全技术点滴分享)
公众号二维码
公众号二维码