論文の概要: CodeBERTScore: Evaluating Code Generation with Pretrained Models of Code
- arxiv url: http://arxiv.org/abs/2302.05527v1
- Date: Fri, 10 Feb 2023 22:12:05 GMT
- ステータス: 処理完了
- システム内更新日: 2023-02-14 20:07:06.944429
- Title: CodeBERTScore: Evaluating Code Generation with Pretrained Models of Code
- Title(参考訳): CodeBERTScore: 事前訓練されたコードモデルによるコード生成の評価
- Authors: Shuyan Zhou, Uri Alon, Sumit Agarwal, Graham Neubig
- Abstract要約: コード生成のための自動評価指標であるCodeBERTScoreを提案する。
BLEUとして正確なトークンマッチングを測定する代わりに、CodeBERTScoreは、生成されたコードと参照コードにおける各トークン間のソフトな類似度スコアを計算する。
CodeBERTScoreは、既存のすべてのメトリクスよりも、人間の好みと機能の正しさとの相関性が高い。
- 参考スコア(独自算出の注目度): 78.9752616934056
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Since the rise of neural models of code that can generate long expressions
and statements rather than a single next-token, one of the major problems has
been reliably evaluating their generated output. In this paper, we propose
CodeBERTScore: an automatic evaluation metric for code generation, which builds
on BERTScore (Zhang et al., 2020). Instead of measuring exact token matching as
BLEU, CodeBERTScore computes a soft similarity score between each token in the
generated code and in the reference code, using the contextual encodings of
large pretrained models. Further, instead of encoding only the generated tokens
as in BERTScore, CodeBERTScore also encodes the programmatic context
surrounding the generated code. We perform an extensive evaluation of
CodeBERTScore across four programming languages. We find that CodeBERTScore
achieves a higher correlation with human preference and with functional
correctness than all existing metrics. That is, generated code that receives a
higher score by CodeBERTScore is more likely to be preferred by humans, as well
as to function correctly when executed. Finally, while CodeBERTScore can be
used with a multilingual CodeBERT as its base model, we release five
language-specific pretrained models to use with our publicly available code at
https://github.com/neulab/code-bert-score . Our language-specific models have
been downloaded more than 25,000 times from the Huggingface Hub.
- Abstract(参考訳): 1つの次点ではなく、長い表現とステートメントを生成することができるコードのニューラルモデルが台頭して以来、主要な問題の1つは、生成された出力を確実に評価してきた。
本稿では,BERTScore(Zhang et al., 2020)上に構築されたコード生成の自動評価指標であるCodeBERTScoreを提案する。
BLEUとして正確なトークンマッチングを測定する代わりに、CodeBERTScoreは、生成されたコードと参照コードの各トークン間のソフトな類似度スコアを、大きな事前訓練されたモデルのコンテキストエンコーディングを使用して計算する。
さらに、BERTScoreのように生成されたトークンのみをエンコードする代わりに、CodeBERTScoreは生成されたコードを取り巻くプログラムコンテキストをエンコードする。
我々は、4つのプログラミング言語でCodeBERTScoreを広範囲に評価する。
CodeBERTScoreは、既存のすべての指標よりも人間の嗜好と機能的正しさとの相関性が高いことがわかった。
つまり、CodeBERTScoreによって高いスコアを受け取る生成されたコードは、人間によって好まれる傾向があり、実行時に正しく機能する。
最後に、CodeBERTScoreは多言語のCodeBERTをベースモデルとして使用できますが、言語固有の事前訓練されたモデルを5つリリースし、公開コードで使用しています。
私たちの言語固有のモデルは、Huggingface Hubから25,000回以上ダウンロードされています。
関連論文リスト
- CodeFusion: A Pre-trained Diffusion Model for Code Generation [17.187094058627615]
自然言語からのコード生成のための自動回帰モデルでは、生成された以前のトークンを再考することは容易ではない。
我々は、この制限に対処する事前訓練された拡散コード生成モデルであるCodeFusionを紹介し、符号化された自然言語で条件付けられた完全なプログラムを反復的にデノベートする。
実験によると、CodeFusionは最先端の自動回帰システムと同等に動作する。
論文 参考訳(メタデータ) (2023-10-26T11:06:15Z) - Outline, Then Details: Syntactically Guided Coarse-To-Fine Code
Generation [61.50286000143233]
ChainCoderは、Pythonコードを段階的に生成するプログラム合成言語モデルである。
自然言語記述と構文的に整合したI/Oデータサンプルを共同で符号化するために、カスタマイズされたトランスフォーマーアーキテクチャを利用する。
論文 参考訳(メタデータ) (2023-04-28T01:47:09Z) - CodeGeeX: A Pre-Trained Model for Code Generation with Multilingual Benchmarking on HumanEval-X [50.008474888951525]
コード生成に130億のパラメータを持つ多言語モデルであるCodeGeeXを紹介する。
CodeGeeXは、23のプログラミング言語の8500億のトークンで事前訓練されている。
論文 参考訳(メタデータ) (2023-03-30T17:34:01Z) - Tackling Long Code Search with Splitting, Encoding, and Aggregating [67.02322603435628]
長いコード検索のための新しいベースラインSEA(Split, Encode, Aggregate)を提案する。
長いコードをコードブロックに分割し、これらのブロックを埋め込みにエンコードし、それらを集約して包括的な長いコード表現を得る。
エンコーダとしてGraphCodeBERTを使用すると、SEAはコードSearchNetベンチマークでGraphCodeBERTよりも10.1%高い0.785という総合的な平均逆ランキングスコアを達成する。
論文 参考訳(メタデータ) (2022-08-24T02:27:30Z) - CERT: Continual Pre-Training on Sketches for Library-Oriented Code
Generation [46.45445767488915]
ライブラリ指向コード生成のモデルをトレーニングするために,未実装のコードコーパスを活用する方法を示す。
PandasEvalとNumpyEvalという2つのベンチマークを作成し、ライブラリ指向のコード生成を評価します。
論文 参考訳(メタデータ) (2022-06-14T14:44:34Z) - InCoder: A Generative Model for Code Infilling and Synthesis [88.46061996766348]
InCoderは、プログラム合成(左から右への生成)と編集(埋め込み)が可能な統合生成モデルである。
InCoderは、許可されたコードの大きなコーパスからコードファイルを生成するように訓練されている。
私たちのモデルは、ゼロショットコードの埋め込みを直接実行できる最初の生成モデルです。
論文 参考訳(メタデータ) (2022-04-12T16:25:26Z) - LAMNER: Code Comment Generation Using Character Language Model and Named
Entity Recognition [0.7894331610810762]
LANguage Model と Named Entity Recognition (LAMNER) を提案する。
LAMNERは、コード構造を効果的に符号化し、コードトークンの構造的特性をキャプチャできるコードコメント生成装置である。
LAMNERや他のベースラインから生成されたコメントを、一般的な4つのメトリクスを持つ人気のあるJavaデータセットで評価する。
論文 参考訳(メタデータ) (2022-04-05T20:53:06Z) - A Systematic Evaluation of Large Language Models of Code [88.34057460577957]
コードの大規模な言語モデル(LM)は、最近、コードを完成させ、自然言語記述からコードを合成する大きな可能性を示しています。
現在の最先端のコードLMは公開されておらず、モデルやデータ設計の決定について多くの疑問が残されている。
Codexはオープンソースではありませんが、既存のオープンソースモデルはいくつかのプログラミング言語でクローズな結果が得られることが分かりました。
GPT-2アーキテクチャに基づいた2.7Bパラメータを持つ新しいモデルPolyCoderをリリースし、12のプログラミング言語を1台のマシンで249GBのコードでトレーニングした。
論文 参考訳(メタデータ) (2022-02-26T15:53:55Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。