論文の概要: Unified Pre-training for Program Understanding and Generation
- arxiv url: http://arxiv.org/abs/2103.06333v1
- Date: Wed, 10 Mar 2021 20:32:59 GMT
- ステータス: 処理完了
- システム内更新日: 2021-03-12 14:42:27.292404
- Title: Unified Pre-training for Program Understanding and Generation
- Title(参考訳): プログラム理解と生成のための統一事前学習
- Authors: Wasi Uddin Ahmad and Saikat Chakraborty and Baishakhi Ray and Kai-Wei
Chang
- Abstract要約: PLBARTは、プログラムおよび言語理解および生成タスクの幅広い範囲を実行できるシーケンス・ツー・シーケンスモデルである。
PLBARTは、JavaとPythonの関数と関連するNLテキストの広範なコレクションに、自動エンコーディングを通知することで事前トレーニングされている。
- 参考スコア(独自算出の注目度): 46.89905110678675
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Code summarization and generation empower conversion between programming
language (PL) and natural language (NL), while code translation avails the
migration of legacy code from one PL to another. This paper introduces PLBART,
a sequence-to-sequence model capable of performing a broad spectrum of program
and language understanding and generation tasks. PLBART is pre-trained on an
extensive collection of Java and Python functions and associated NL text via
denoising autoencoding. Experiments on language generation tasks, including
code summarization, generation, translation in seven programming languages show
that PLBART outperforms or rivals state-of-the-art models. Moreover,
experiments on discriminative tasks, e.g., program repair, clone detection, and
vulnerable code detection demonstrate PLBART's effectiveness in program
understanding. Furthermore, analysis reveals that PLBART learns program syntax,
style (e.g., identifier naming convention), logical flow (e.g., if block inside
an else block is equivalent to else if block) that are crucial to program
semantics and thus excels even with limited annotations.
- Abstract(参考訳): コード要約と生成により、プログラミング言語(PL)と自然言語(NL)の変換が促進される一方、コード翻訳はレガシーコードのPLから別のPLへのマイグレーションに有効である。
本稿では,プログラムと言語理解と生成タスクの幅広いスペクトルを実行できるシーケンス・ツー・シーケンスモデルplbartについて述べる。
PLBARTは、JavaとPythonの関数と関連するNLテキストの広範なコレクションに、自動エンコーディングを通知することで事前トレーニングされている。
コード要約、生成、7つのプログラミング言語の翻訳を含む言語生成タスクの実験は、plbartが最先端モデルよりも優れており、あるいは競合することを示している。
さらに、プログラム修復、クローン検出、脆弱なコード検出などの識別タスクの実験は、プログラム理解におけるPLBARTの有効性を示している。
さらに分析により、plbartはプログラムの意味論に不可欠なプログラム構文、スタイル(例えば識別子命名規則)、論理フロー(例えば、elseブロック内のブロックが他のifブロックと等価である場合)を学習し、限られたアノテーションでさえ優れていることが明らかになった。
関連論文リスト
- IRCoder: Intermediate Representations Make Language Models Robust
Multilingual Code Generators [55.40713784611711]
本研究では,コンパイラ中間表現を活用することで,Code-LMの多言語機能を改善する可能性について検討する。
まず,約400万のソースコードファイルからなる並列データセットであるSLTransをコンパイルする。
次に、SLTransにおける因果言語モデリングトレーニングを継続して実施し、Code-LMはIR言語を学習せざるを得なかった。
IRCoderと呼ばれる結果のモデルは、さまざまなコード生成タスクやメトリクスに対して、サイズと一貫性のあるゲインを表示します。
論文 参考訳(メタデータ) (2024-03-06T17:52:08Z) - AdaCCD: Adaptive Semantic Contrasts Discovery Based Cross Lingual
Adaptation for Code Clone Detection [69.79627042058048]
AdaCCDは、その言語でアノテーションを使わずに、新しい言語のクローンコードを検出する新しい言語間適応手法である。
5つのプログラミング言語からなる多言語コードクローン検出ベンチマークを構築し,AdaCCDの言語間適応性を評価する。
論文 参考訳(メタデータ) (2023-11-13T12:20:48Z) - Guess & Sketch: Language Model Guided Transpilation [61.24102712913847]
学習されたトランスパイレーションは、手作業による書き直しやエンジニアリングの取り組みに代わるものだ。
確率的ニューラルネットワークモデル(LM)は、入力毎に可塑性出力を生成するが、正確性を保証するコストがかかる。
Guess & Sketch は LM の特徴からアライメントと信頼性情報を抽出し、意味的等価性を解決するためにシンボリック・ソルバに渡す。
論文 参考訳(メタデータ) (2023-09-25T15:42:18Z) - Code Representation Pre-training with Complements from Program
Executions [29.148208436656216]
テストケースで明らかになったプログラムの動的情報を調べ,それを補体としてコードの特徴表現に埋め込むために,FuzzPretrainを提案する。
FuzzyPretrainは、ソースコードやASTのみをトレーニングしたコード検索に対して、6%/9%のmAP改善を実現した。
論文 参考訳(メタデータ) (2023-09-04T01:57:22Z) - Understanding Programs by Exploiting (Fuzzing) Test Cases [26.8259045248779]
プログラムのより深い意味理解を実現するために,入力と出力/振る舞いの関係を学習に取り入れることを提案する。
コードの大部分の実行をトリガーするのに十分な入力を得るために,ファズテストを採用し,ファズチューニングを提案する。
提案手法の有効性は,コードクローン検出とコード分類を含む2つのプログラム理解タスクにおいて検証され,最先端技術よりも大きなマージンで優れている。
論文 参考訳(メタデータ) (2023-05-23T01:51:46Z) - LEVER: Learning to Verify Language-to-Code Generation with Execution [64.36459105535]
本稿では,プログラムの実行結果の検証を学習することで,言語からコードへの生成を改善するシンプルな手法であるLEVERを提案する。
具体的には、LLMからサンプリングされたプログラムが、自然言語入力、プログラム自体とその実行結果に基づいて正しいか否かを判定するために、検証者を訓練する。
LEVER はベースコード LLMs (4.6% から 10.9% まで) を継続的に改善し、それらすべてに対して新しい最先端の結果を得る。
論文 参考訳(メタデータ) (2023-02-16T18:23:22Z) - PanGu-Coder: Program Synthesis with Function-Level Language Modeling [47.63943623661298]
PanGu-Coderは、PanGu-Alphaアーキテクチャを採用した事前訓練されたデコーダのみの言語モデルである。
最初の段階ではCausal Language Modellingを使用して、生のプログラミング言語データで事前トレーニングを行います。
第2段階では、Causal Language ModellingとMasked Language Modellingを組み合わせて、自然言語プログラム定義とコード関数のゆるくキュレートされたペアをトレーニングしている。
論文 参考訳(メタデータ) (2022-07-22T18:08:16Z) - Compilable Neural Code Generation with Compiler Feedback [43.97362484564799]
本稿では、言語モデルの微調整、コンパイル可能性強化、コンパイル可能性判定を含む、コンパイル可能なコード生成のための3段階パイプラインを提案する。
2つのコード生成タスクの実験は,提案手法の有効性を示し,平均44.18から89.18に,テキスト・コード生成では70.3から96.2に向上した。
論文 参考訳(メタデータ) (2022-03-10T03:15:17Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。