Fine-tuning over large pretrained language models (PLMs) has established many state-of-the-art results. Despite its superior performance, such fine-tuning can be unstable, resulting in significant variance in performance and potential risks for practical applications. Previous works have attributed such instability to the catastrophic forgetting problem in the top layers of PLMs, which indicates iteratively that fine-tuning layers in a top-down manner is a promising solution. In this paper, we first point out that this method does not always work out due to the different convergence speeds of different layers/modules. Inspired by this observation, we propose a simple component-wise gradient norm clipping method to adjust the convergence speed for different components. Experiment results demonstrate that our method achieves consistent improvements in terms of generalization performance, convergence speed, and training stability. The codebase can be found at https://github.com/yangalan123/FineTuningStability.
翻译:对大型预先培训语言模型(PLM)的微调已经确立了许多最先进的结果。尽管这种微调表现优异,但可能不稳定,导致性能和潜在实际应用风险的显著差异。以前的工作将这种不稳定归因于PLM顶层的灾难性遗忘问题,这反复地表明,自上而下的微调层是一个有希望的解决办法。在本文中,我们首先指出,由于不同层/模量的趋同速度不同,这种方法并不总是能奏效。我们根据这项观察,提出了一种简单、分成件的梯度标准剪切法,以调整不同组件的趋同速度。实验结果表明,我们的方法在通用性、趋同速度和培训稳定性方面都取得了一致的改进。代码库可以在https://github.com/yangalan123/FineTuningStable上找到。