論文の概要: NatGen: Generative pre-training by "Naturalizing" source code
- arxiv url: http://arxiv.org/abs/2206.07585v1
- Date: Wed, 15 Jun 2022 15:08:29 GMT
- ステータス: 処理完了
- システム内更新日: 2022-06-16 13:21:00.821468
- Title: NatGen: Generative pre-training by "Naturalizing" source code
- Title(参考訳): NatGen: "Naturalizing"ソースコードによる生成事前トレーニング
- Authors: Saikat Chakraborty and Toufique Ahmed and Yangruibo Ding and Premkumar
Devanbu and Baishakhi Ray
- Abstract要約: 我々は,ソースコードの「成熟化」という新たな事前学習目標を提案する。
自然言語とは異なり、コードのバイモーダルでデュアルチャネルの性質により、意味論的に等価なコードを大規模に生成することができます。
私たちは、CodeT5に匹敵する最先端のパフォーマンスを達成するために、3つの生成ソフトウェアエンジニアリングタスクでモデルを微調整します。
- 参考スコア(独自算出の注目度): 18.410818213965918
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Pre-trained Generative Language models (e.g. PLBART, CodeT5, SPT-Code) for
source code yielded strong results on several tasks in the past few years,
including code generation and translation. These models have adopted varying
pre-training objectives to learn statistics of code construction from very
large-scale corpora in a self-supervised fashion; the success of pre-trained
models largely hinges on these pre-training objectives. This paper proposes a
new pre-training objective, "Naturalizing" of source code, exploiting code's
bimodal, dual-channel (formal & natural channels) nature. Unlike natural
language, code's bimodal, dual-channel nature allows us to generate
semantically equivalent code at scale. We introduce six classes of semantic
preserving transformations to introduce un-natural forms of code, and then
force our model to produce more natural original programs written by
developers. Learning to generate equivalent, but more natural code, at scale,
over large corpora of open-source code, without explicit manual supervision,
helps the model learn to both ingest & generate code. We fine-tune our model in
three generative Software Engineering tasks: code generation, code translation,
and code refinement with limited human-curated labeled data and achieve
state-of-the-art performance rivaling CodeT5. We show that our pre-trained
model is especially competitive at zero-shot and few-shot learning, and better
at learning code properties (e.g., syntax, data flow).
- Abstract(参考訳): ソースコードに対する事前訓練された生成言語モデル(PLBART、CodeT5、SPT-Codeなど)は、コード生成や翻訳を含む過去数年間のいくつかのタスクで強い結果を得た。
これらのモデルは、非常に大規模なコーパスから自己管理的な方法でコード構築の統計を学習するために、様々な事前学習目標を採用してきた。
本稿では,2モーダル・デュアルチャネル(形式的・自然なチャネル)の性質を生かした,新たな事前学習対象であるソースコードの「Naturalizing」を提案する。
自然言語とは異なり、コードのバイモーダルでデュアルチャネルの性質は、意味的に等価なコードを大規模に生成することを可能にする。
セマンティック保存変換の6つのクラスを導入し、非自然なコード形式を導入し、それから開発者が書いたより自然なオリジナルプログラムを作らせます。
明確な手動の監督なしに、大規模なオープンソースコードのコーパスを越えて、同等だがより自然なコードを生成することを学ぶことで、モデルはコードの取り込みと生成の両方を学ぶことができる。
私たちは、コード生成、コード翻訳、限定されたラベル付きデータによるコード改良の3つの生成ソフトウェアエンジニアリングタスクでモデルを微調整し、最先端のパフォーマンスのCodeT5に匹敵するパフォーマンスを達成する。
事前訓練されたモデルは、特にゼロショットと少数ショットの学習において競合し、コード特性(例えば、構文、データフロー)を学習する上で優れています。
関連論文リスト
- CodeGRAG: Bridging the Gap between Natural Language and Programming Language via Graphical Retrieval Augmented Generation [58.84212778960507]
我々は,LLMの性能を高めるため,グラフィカル検索拡張コード生成フレームワークであるCodeGRAGを提案する。
CodeGRAGは、制御フローとデータフローに基づいて、コードブロックのグラフィカルなビューを構築し、プログラミング言語と自然言語のギャップを埋める。
ハードメタグラフプロンプト、ソフトプロンプト技術、事前訓練されたGNN専門家の目的の有効性を検証するために、C++言語とピソン言語の両方を含む4つのデータセットで様々な実験と改善が行われた。
論文 参考訳(メタデータ) (2024-05-03T02:48:55Z) - GenCode: A Generic Data Augmentation Framework for Boosting Deep Learning-Based Code Understanding [28.02426812004216]
我々は、コード理解モデルのトレーニングを強化するために、汎用データ拡張フレームワークGenCodeを導入する。
GenCodeの有効性を評価するため、4つのコード理解タスクと3つの事前学習されたコードモデルの実験を行った。
最先端(SOTA)のコード拡張手法であるMixCodeと比較すると、GenCodeは平均で2.92%高い精度と4.90%の堅牢性を持つコードモデルを生成する。
論文 参考訳(メタデータ) (2024-02-24T08:57:12Z) - Code Representation Learning At Scale [75.04686476303436]
2段階の事前学習スキームを用いて,大量のコードデータを用いてコード表現学習を行う。
まず、マスキング言語モデリングにおけるランダム性と、プログラミング言語の構造的側面の両方を活用して、エンコーダを訓練する。
そして、教師なしの方法で強陰性かつ強正に構築された対照的な学習を通して表現を強化する。
論文 参考訳(メタデータ) (2024-02-02T22:19:15Z) - INSPECT: Intrinsic and Systematic Probing Evaluation for Code
Transformers [7.255653248042546]
我々は、ソースコードの表面、構文、構造、意味的特性を訓練する15の探索タスクを定義するためにフレームワークを使用します。
8つの事前訓練されたソースコードモデルと、ベースラインとして自然言語モデル(BERT)を探索する。
構造情報(GraphCodeBERTなど)を組み込んだモデルの方が,ソースコードの特徴をよりよく表現できることがわかった。
論文 参考訳(メタデータ) (2023-12-08T15:21:54Z) - CCT5: A Code-Change-Oriented Pre-Trained Model [14.225942520238936]
我々は、ソフトウェアメンテナンスにおける開発者のサポートを改善するために、コード変更用に特別に設計されたモデルを事前訓練することを提案する。
まず、1.5M以上のコード変更とコミットメッセージのペアデータを含む大規模なデータセットを収集します。
トレーニング済みのモデルであるCCT5を、コードの変更とコードレビュープロセスに特有の2つのタスクによって引き起こされる3つの広範囲に分散したタスクで微調整する。
論文 参考訳(メタデータ) (2023-05-18T07:55:37Z) - CodeT5+: Open Code Large Language Models for Code Understanding and
Generation [72.1638273937025]
大きな言語モデル (LLM) は膨大なソースコードで事前訓練されており、コードインテリジェンスにおいて顕著な進歩を遂げている。
CodeT5+は、コンポーネントモジュールを柔軟に組み合わせて、幅広い下流のコードタスクに適合させることができるコードのためのエンコーダ-デコーダLLMのファミリーである。
我々は、ゼロショット、微調整、命令調整を含む20以上のコード関連ベンチマークでCodeT5+を広範囲に評価した。
論文 参考訳(メタデータ) (2023-05-13T14:23:07Z) - CodeGen2: Lessons for Training LLMs on Programming and Natural Languages [116.74407069443895]
我々はエンコーダとデコーダベースのモデルを単一のプレフィックスLMに統一する。
学習方法は,「フリーランチ」仮説の主張を考察する。
データ配信においては,混合分布と多言語学習がモデル性能に及ぼす影響について検討した。
論文 参考訳(メタデータ) (2023-05-03T17:55:25Z) - CodeExp: Explanatory Code Document Generation [94.43677536210465]
既存のコード・トゥ・テキスト生成モデルは、コードの高レベルな要約のみを生成する。
我々は、コードのための高品質な説明記述の基準を特定するために、人間の研究を行う。
タスクのための多段階微調整戦略とベースラインモデルを提案する。
論文 参考訳(メタデータ) (2022-11-25T18:05:44Z) - Contrastive Learning for Source Code with Structural and Functional
Properties [66.10710134948478]
本稿では,ソースコードの特徴に基づいて事前学習に焦点を当てた,新たな自己教師型モデルBOOSTを提案する。
私たちは、機能的に等価なコードを生成する自動化された構造誘導型コード変換アルゴリズムを採用しています。
私たちは、対照的な学習目標を通じて、機能的に等価なコードをより近く、異なるコードに近づける方法で、モデルをトレーニングします。
論文 参考訳(メタデータ) (2021-10-08T02:56:43Z) - CodeT5: Identifier-aware Unified Pre-trained Encoder-Decoder Models for
Code Understanding and Generation [36.47905744758698]
我々は、開発者が指定した識別子から伝達されるコードセマンティクスをよりよく活用する、事前訓練されたエンコーダ-デコーダ変換モデルであるCodeT5を提案する。
我々のモデルは、コード理解と生成タスクの両方をシームレスにサポートし、マルチタスク学習を可能にする統一的なフレームワークを採用している。
論文 参考訳(メタデータ) (2021-09-02T12:21:06Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。