多任务学习的收敛挑战
多任务学习(MTL)通常需要联合优化一组任务的损失函数。简单求和损失函数的方法存在明显缺陷:由于任务难度差异,模型可能对某些任务过拟合而对其他任务欠拟合。现有方法多通过静态/动态调整损失权重或梯度操作来平衡任务学习速度,强制所有任务保持相近收敛速率。
异步收敛的创新方案
在NAACL 2022行业轨道发表的论文中,提出了一种突破性方法:
- 允许任务按自身节奏收敛
- 当某任务达到性能峰值时,切换为知识蒸馏(KD)损失
- 使用该任务最佳参数生成训练集的软标签
- 继续用真实标签训练未收敛任务
该方法在两种五任务场景(电商分类任务和混合型任务)中进行验证,相比最优基线模型分别取得0.9%和1.5%的平均提升。
两种训练模式对比
联合训练模式:
- 同时训练所有任务
- 对已收敛任务逐步切换KD损失
顺序训练模式:
- 逐个添加新任务
- 对已收敛任务持续使用KD损失
实验数据显示两种模式均能有效维持已收敛任务性能(验证曲线无下降趋势),其中顺序模式在任务差异较大时表现更优。
技术实现要点
- 通过验证曲线监测任务收敛点
- 保存峰值参数生成软标签
- KD损失与真实损失混合训练机制
- 适用于分类/回归等混合任务场景
该方法为处理多任务学习中固有的异步收敛问题提供了新思路,特别适用于电商推荐系统等需要同时优化多个相关指标的工业场景。