2ヶ月前

文脈に応じたコード変更の構造モデル

Brody, Shaked ; Alon, Uri ; Yahav, Eran
文脈に応じたコード変更の構造モデル
要約

私たちは、過去の編集に基づいて学習されたモデルを用いて編集完了を予測する問題に取り組んでいます。部分的に編集されたコードスニペットが与えられた場合、私たちの目標はそのスニペットの残り部分に対する編集の完了を予測することです。このタスクを「EditCompletion(編集完了)」タスクと呼び、その解決に向けた新しいアプローチを提案します。主なアイデアは、構造的な編集を直接表現することです。これにより、編集自体の尤度をモデル化することが可能となり、編集後のコードの尤度を学習する代わりとなります。私たちは、プログラムの抽象構文木(Abstract Syntax Tree: AST)上のパスとして編集操作を表現します。このパスは、編集の起点から対象まで伸びています。この表現を使用して、「EditCompletion」タスクのために強力かつ軽量なニューラルモデルを提示します。私たちは詳細な評価を行い、LSTMやTransformer、ニューラルCRFなどの複数の有力なモデルによって駆動される様々な表現とモデリング手法との比較を行いました。実験結果は、私たちのモデルが最先端の逐次モデルに対して28%の相対的な改善率を達成し、直接編集をモデリングする代わりに編集後のコード生成を学習する文法ベースのモデルよりも2倍高い精度を持つことを示しています。私たちのコード、データセットおよび学習済みモデルは公開されており、以下のURLからアクセスできます。https://github.com/tech-srl/c3po/

文脈に応じたコード変更の構造モデル | 最新論文 | HyperAI超神経