論文の概要: CERT: Continual Pre-Training on Sketches for Library-Oriented Code
Generation
- arxiv url: http://arxiv.org/abs/2206.06888v1
- Date: Tue, 14 Jun 2022 14:44:34 GMT
- ステータス: 処理完了
- システム内更新日: 2022-06-15 17:41:39.552008
- Title: CERT: Continual Pre-Training on Sketches for Library-Oriented Code
Generation
- Title(参考訳): CERT: ライブラリ指向コード生成のためのSketchesの継続的な事前トレーニング
- Authors: Daoguang Zan, Bei Chen, Dejian Yang, Zeqi Lin, Minsu Kim, Bei Guan,
Yongji Wang, Weizhu Chen, Jian-Guang Lou
- Abstract要約: ライブラリ指向コード生成のモデルをトレーニングするために,未実装のコードコーパスを活用する方法を示す。
PandasEvalとNumpyEvalという2つのベンチマークを作成し、ライブラリ指向のコード生成を評価します。
- 参考スコア(独自算出の注目度): 46.45445767488915
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Code generation is a longstanding challenge, aiming to generate a code
snippet based on a natural language description. Usually, expensive text-code
paired data is essential for training a code generation model. Recently, thanks
to the success of pre-training techniques, large language models are trained on
large-scale unlabelled code corpora and perform well in code generation. In
this paper, we investigate how to leverage an unlabelled code corpus to train a
model for library-oriented code generation. Since it is a common practice for
programmers to reuse third-party libraries, in which case the text-code paired
data are harder to obtain due to the huge number of libraries. We observe that
library-oriented code snippets are more likely to share similar code sketches.
Hence, we present CERT with two steps: a sketcher generates the sketch, then a
generator fills the details in the sketch. Both the sketcher and the generator
are continually pre-trained upon a base model using unlabelled data.
Furthermore, we craft two benchmarks named PandasEval and NumpyEval to evaluate
library-oriented code generation. Experimental results demonstrate the
impressive performance of CERT. For example, it surpasses the base model by an
absolute 15.67% improvement in terms of pass@1 on PandasEval. Our work is
available at https://github.com/microsoft/PyCodeGPT.
- Abstract(参考訳): コード生成は長年の課題であり、自然言語記述に基づいたコードスニペットの生成を目指している。
通常、コード生成モデルのトレーニングには高価なテキストコードペアデータが必要である。
近年,事前学習技術の成功により,大規模未ラベルコードコーパスで大規模言語モデルを訓練し,コード生成に長けている。
本稿では,非ラベルコードコーパスをライブラリ指向のコード生成モデルに活用する方法について検討する。
プログラマがサードパーティのライブラリを再利用するのは一般的なプラクティスなので、大量のライブラリのため、テキストコード対のデータを得るのが難しくなります。
ライブラリ指向のコードスニペットは、同様のコードスケッチを共有する傾向にある。
したがって、CERTには2つのステップがある:スケッチ作成者がスケッチを生成し、それからジェネレータがスケッチの細部を埋める。
スケッチとジェネレータは、ラベルなしのデータを使用してベースモデル上で常に事前学習される。
さらに,pandaseval と numpyeval という2つのベンチマークを作成し,ライブラリ指向のコード生成の評価を行った。
実験によりCERTの優れた性能が示された。
例えば、PandasEvalのpass@1では、絶対15.67%の改善によってベースモデルを上回っている。
私たちの仕事はhttps://github.com/microsoft/pycodegptで利用可能です。
関連論文リスト
- Code Execution with Pre-trained Language Models [88.04688617516827]
コードインテリジェンスのトレーニング済みモデルのほとんどは実行トレースを無視しており、ソースコードと構文構造のみに依存している。
我々は,大規模かつ現実的なPythonデータセットとコード実行タスクを作成するために,突然変異に基づくデータ拡張手法を開発した。
次に、コード実行事前学習とカリキュラム学習を活用して意味理解を強化するトランスフォーマーモデルであるCodeExecutorを提案する。
論文 参考訳(メタデータ) (2023-05-08T10:00:05Z) - Knowledge Transfer for Pseudo-code Generation from Low Resource
Programming Language [13.716669765394293]
我々は、並列コード-擬似コードデータを用いて、高リソースPL(C++)で訓練されたコード-擬似コードニューラルモデルによって得られた知識の伝達に焦点をあてる。
後方翻訳により生成されたC符号の成功率を23.27%向上させる。
論文 参考訳(メタデータ) (2023-03-16T03:38:08Z) - CodeExp: Explanatory Code Document Generation [94.43677536210465]
既存のコード・トゥ・テキスト生成モデルは、コードの高レベルな要約のみを生成する。
我々は、コードのための高品質な説明記述の基準を特定するために、人間の研究を行う。
タスクのための多段階微調整戦略とベースラインモデルを提案する。
論文 参考訳(メタデータ) (2022-11-25T18:05:44Z) - DocCoder: Generating Code by Retrieving and Reading Docs [87.88474546826913]
コードマニュアルとドキュメントを明示的に活用するアプローチであるDocCoderを紹介します。
我々のアプローチは一般的に、どんなプログラミング言語にも適用でき、基礎となるニューラルモデルとは無関係です。
論文 参考訳(メタデータ) (2022-07-13T06:47:51Z) - InCoder: A Generative Model for Code Infilling and Synthesis [88.46061996766348]
InCoderは、プログラム合成(左から右への生成)と編集(埋め込み)が可能な統合生成モデルである。
InCoderは、許可されたコードの大きなコーパスからコードファイルを生成するように訓練されている。
私たちのモデルは、ゼロショットコードの埋め込みを直接実行できる最初の生成モデルです。
論文 参考訳(メタデータ) (2022-04-12T16:25:26Z) - Code Generation for Unknown Libraries via Reading API Documentations [10.122354606820416]
未知のライブラリのコード生成を、追加のトレーニングなしで行うという課題について検討する。
自然言語の意図に基づいて,APIドキュメントから関連コードシグネチャを抽出できるモデルを実装した。
論文 参考訳(メタデータ) (2022-02-16T00:36:33Z) - CodeRetriever: Unimodal and Bimodal Contrastive Learning [128.06072658302165]
関数レベルのコードセマンティック表現を訓練するために,一様および二様のコントラスト学習を組み合わせたCodeRetrieverモデルを提案する。
ノンモーダルなコントラスト学習のために、文書と関数名に基づいてポジティブなコードペアを構築するためのセマンティックガイド付き手法を設計する。
バイモーダルなコントラスト学習では、コードのドキュメンテーションとインラインコメントを活用して、テキストコードペアを構築します。
論文 参考訳(メタデータ) (2022-01-26T10:54:30Z) - What do pre-trained code models know about code? [9.60966128833701]
事前に訓練されたコードモデルを調べるために、プローブと呼ばれる診断タスクを使用します。
BERT(英語で事前学習)、CodeBERT(ソースコードで事前学習)、CodeBERTa(自然言語で事前学習)、GraphCodeBERT(データフローでソースコードで事前学習)について検討した。
論文 参考訳(メタデータ) (2021-08-25T16:20:17Z) - InferCode: Self-Supervised Learning of Code Representations by
Predicting Subtrees [17.461451218469062]
本稿では,自己言語学習機構をソースコードモデルに適用することにより,制限を克服するinfercodeを提案する。
ASTのサブツリーは、人間のラベル付けや高価なグラフ構築のオーバーヘッドなしにコード表現をトレーニングするためのラベルとして、InferCodeで扱われる。
Code2Vec、Code2Seq、ASTNNなど、同じ下流タスクに適用される以前のコード学習技術と比較して、事前に訓練されたInferCodeモデルを使用して、より高いパフォーマンスを達成できます。
論文 参考訳(メタデータ) (2020-12-13T10:33:41Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。