2ヶ月前

Transformerを用いてニューラル-シンボリック編集文法でバグを修正する

Hu, Yaojie ; Shi, Xingjian ; Zhou, Qiang ; Pike, Lee
Transformerを用いてニューラル-シンボリック編集文法でバグを修正する
要約

私たちは、新しいTransformerベースのコード修正手法であるNSEdit(ニューラル-シンボリック編集)を紹介します。バグが含まれているソースコードのみが与えられた場合、NSEditはそのバグを修正するための編集シーケンスを予測します。編集文法は正規言語として定式化され、Transformerはこれをニューラル-シンボリックスクリプティングインターフェースとして使用して編集プログラムを生成します。私たちはTransformerを改良し、編集位置を選択するためにポインタネットワークを追加しました。ビームサーチによって生成された編集シーケンスの再順位付けを行うために、複数のリランカーのアンサンブルを訓練しました。これらのリランカーは検証セットで微調整され、過学習を軽減しています。NSEditはさまざまなコード修正データセットで評価され、CodeXGLUEベンチマークのTufano小規模データセットにおいて新たな最先端の精度(24.04%)を達成しました。NSEditは、プログラムがパッケージ間で異なる場合やバグのあるプログラムが具体的な場合でも堅牢に動作します。私たちは方法について詳細な分析を行い、各コンポーネントの有効性を示しています。

Transformerを用いてニューラル-シンボリック編集文法でバグを修正する | 最新論文 | HyperAI超神経