2ヶ月前

CodeT5: Identifier-aware Unified Pre-trained Encoder-Decoder Models for Code Understanding and Generation コードT5:識別子認識統一事前学習エンコーダー-デコーダーモデルによる コード理解と生成

Wang, Yue ; Wang, Weishi ; Joty, Shafiq ; Hoi, Steven C. H.
CodeT5: Identifier-aware Unified Pre-trained Encoder-Decoder Models for
  Code Understanding and Generation
コードT5:識別子認識統一事前学習エンコーダー-デコーダーモデルによる
コード理解と生成
要約

自然言語(NL)向けに事前学習されたBERTやGPTなどのモデルは、最近、プログラミング言語(PL)への転移が良好であり、コード関連の多様なタスクにおいて大幅な利点をもたらすことが示されています。しかし、それらの成功にもかかわらず、現在の大多数の手法は生成タスク(または理解タスク)に最適でないエンコーダーのみ(またはデコーダーのみ)の事前学習に依存しているか、またはコードスニペットをNLと同様に処理し、PL特有のトークンタイプなどの特性を無視しています。本稿では、開発者が割り当てた識別子から伝わるコードの意味論をより効果的に活用する統一型事前学習エンコーダーデコーダーTransformerモデルであるCodeT5を提案します。当モデルは統一フレームワークを採用しており、コード理解と生成の両方のタスクをシームレスにサポートし、マルチタスク学習も可能となっています。さらに、我々は新しい識別子認識型事前学習タスクを提案します。このタスクによりモデルはマスキングされた識別子を区別し、回復することが可能となります。また、ユーザが書いたコードコメントを利用した双方向二重生成タスクを提案することで、より良いNL-PL対応を実現します。包括的な実験結果からCodeT5がコード欠陥検出やクローン検出などの理解タスクにおいて従来の手法を大幅に上回り、PL-NL, NL-PL, およびPL-PLなど様々な方向性での生成タスクでも優れた性能を示すことが確認されました。さらに分析した結果、当モデルがコードから意味論情報をより効果的に捉えていることが明らかになりました。当研究で使用したコードおよび事前学習済みモデルはhttps://github.com/salesforce/CodeT5 で公開されています。

CodeT5: Identifier-aware Unified Pre-trained Encoder-Decoder Models for Code Understanding and Generation コードT5:識別子認識統一事前学習エンコーダー-デコーダーモデルによる コード理解と生成 | 最新論文 | HyperAI超神経