On the Usage of Continual Learning for Out-of-Distribution Generalization in Pre-trained Language Models of Code

要約

事前トレーニング言語モデル (PLM) は、コードの深層学習において広く普及している手法となっており、2 段階の事前トレーニングと微調整手順を利用して、コードに関する一般的な知識を取得し、さまざまな下流タスクに特化します。
ただし、ソフトウェア コードベースの動的な性質により、PLM の有効性と堅牢性に課題が生じます。
特に、世界に現実的なシナリオでは、事前トレーニング データとテスト データの分布の間に大きな違い、つまり分布シフトが生じる可能性があり、その結果、下流タスクでの PLM のパフォーマンスが低下します。
この論文では、時間の経過とともに分布が変化するソフトウェア データにコードの PLM を適応させる必要性を強調しますが、これはこれまでの研究では見落とされてきた重大な問題です。
この研究の動機は、ソフトウェアの進化シナリオに従って微調整データが時間の経過とともに進化する非定常環境で PLM を検討することです。
具体的には、モデルが時間の経過とともに新しい未知の API を含む一連のプログラムから学習する必要があるシナリオを設計します。
私たちは、API 呼び出しと API 使用量予測という 2 つのダウンストリーム タスクに関して、広く使用されている 2 つの PLM アーキテクチャ、つまり GPT2 デコーダーと RoBERTa エンコーダーを研究します。
私たちは、以前の研究で最も一般的に使用されていた微調整手法が API の動的な性質を処理できるほど堅牢ではなく、以前に取得した知識の損失、つまり壊滅的な忘却につながることを実証しました。
これらの問題に対処するために、再生ベースおよび正則化ベースの方法を含む 5 つの継続的な学習アプローチを実装します。
私たちの調査結果は、これらの簡単な方法を利用することで、両方の下流タスクにわたって PLM の壊滅的な忘れを効果的に軽減し、同等またはそれ以上のパフォーマンスを達成できることを示しています。

要約(オリジナル)

Pre-trained language models (PLMs) have become a prevalent technique in deep learning for code, utilizing a two-stage pre-training and fine-tuning procedure to acquire general knowledge about code and specialize in a variety of downstream tasks. However, the dynamic nature of software codebases poses a challenge to the effectiveness and robustness of PLMs. In particular, world-realistic scenarios potentially lead to significant differences between the distribution of the pre-training and test data, i.e., distribution shift, resulting in a degradation of the PLM’s performance on downstream tasks. In this paper, we stress the need for adapting PLMs of code to software data whose distribution changes over time, a crucial problem that has been overlooked in previous works. The motivation of this work is to consider the PLM in a non-stationary environment, where fine-tuning data evolves over time according to a software evolution scenario. Specifically, we design a scenario where the model needs to learn from a stream of programs containing new, unseen APIs over time. We study two widely used PLM architectures, i.e., a GPT2 decoder and a RoBERTa encoder, on two downstream tasks, API call and API usage prediction. We demonstrate that the most commonly used fine-tuning technique from prior work is not robust enough to handle the dynamic nature of APIs, leading to the loss of previously acquired knowledge i.e., catastrophic forgetting. To address these issues, we implement five continual learning approaches, including replay-based and regularization-based methods. Our findings demonstrate that utilizing these straightforward methods effectively mitigates catastrophic forgetting in PLMs across both downstream tasks while achieving comparable or superior performance.

arxiv情報

著者 Martin Weyssow,Xin Zhou,Kisub Kim,David Lo,Houari Sahraoui
発行日 2023-08-22 14:10:06+00:00
arxivサイト arxiv_id(pdf)

提供元, 利用サービス

arxiv.jp, Google

カテゴリー: cs.LG, cs.SE パーマリンク