論文の概要: Pop Quiz! Do Pre-trained Code Models Possess Knowledge of Correct API
Names?
- arxiv url: http://arxiv.org/abs/2309.07804v1
- Date: Thu, 14 Sep 2023 15:46:41 GMT
- ステータス: 処理完了
- システム内更新日: 2023-09-15 12:34:51.797148
- Title: Pop Quiz! Do Pre-trained Code Models Possess Knowledge of Correct API
Names?
- Title(参考訳): ポップクイズ!
トレーニング済みのコードモデルは、正しいAPI名を知っているか?
- Authors: Terry Yue Zhuo, Xiaoning Du, Zhenchang Xing, Jiamou Sun, Haowei Quan,
Li Li, Liming Zhu
- Abstract要約: CodeBERTやCodexのようなトレーニング済みのコードモデルの最近のブレークスルーは、さまざまな下流タスクにおいて、優れたパフォーマンスを示している。
最近の研究によると、最先端の事前訓練されたコードモデルでさえ、コード生成中に正しいAPIを提案することに苦労している。
- 参考スコア(独自算出の注目度): 28.86399157983769
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Recent breakthroughs in pre-trained code models, such as CodeBERT and Codex,
have shown their superior performance in various downstream tasks. The
correctness and unambiguity of API usage among these code models are crucial
for achieving desirable program functionalities, requiring them to learn
various API fully qualified names structurally and semantically. Recent studies
reveal that even state-of-the-art pre-trained code models struggle with
suggesting the correct APIs during code generation. However, the reasons for
such poor API usage performance are barely investigated. To address this
challenge, we propose using knowledge probing as a means of interpreting code
models, which uses cloze-style tests to measure the knowledge stored in models.
Our comprehensive study examines a code model's capability of understanding API
fully qualified names from two different perspectives: API call and API import.
Specifically, we reveal that current code models struggle with understanding
API names, with pre-training strategies significantly affecting the quality of
API name learning. We demonstrate that natural language context can assist code
models in locating Python API names and generalize Python API name knowledge to
unseen data. Our findings provide insights into the limitations and
capabilities of current pre-trained code models, and suggest that incorporating
API structure into the pre-training process can improve automated API usage and
code representations. This work provides significance for advancing code
intelligence practices and direction for future studies. All experiment
results, data and source code used in this work are available at
\url{https://doi.org/10.5281/zenodo.7902072}.
- Abstract(参考訳): CodeBERTやCodexのようなトレーニング済みのコードモデルの最近のブレークスルーは、さまざまな下流タスクにおいて、優れたパフォーマンスを示している。
これらのコードモデル間のapi使用の正確性とあいまいさは、望ましいプログラム機能を達成するために不可欠であり、様々なapiを構造的および意味的に完全に修飾された名前を学ぶ必要がある。
最近の研究によると、最先端の事前訓練されたコードモデルでさえ、コード生成中に正しいAPIを提案することに苦労している。
しかし、このようなAPI使用率低下の理由はほとんど調査されていない。
この課題に対処するために,clozeスタイルのテストを用いてモデルに格納された知識を測定するコードモデルの解釈手段として,知識探索の利用を提案する。
包括的調査では,APIコールとAPIインポートという2つの視点から,APIの完全修飾名を理解するためのコードモデルの能力について検討した。
具体的には、現在のコードモデルがAPI名を理解するのに苦労していることを明らかにする。
自然言語のコンテキストは、Python APIの名前の特定や、Python APIの名前の知識の一般化において、コードモデルを支援することができる。
今回の調査結果は,現在の事前トレーニング済みコードモデルの限界と能力に関する洞察を提供し,事前トレーニングプロセスにapi構造を組み込むことで,api使用自動化とコード表現の改善が期待できる。
この研究は、コードインテリジェンスの実践を前進させ、今後の研究の方向性を示す。
この研究で使用されるすべての実験結果、データおよびソースコードは \url{https://doi.org/10.5281/zenodo.7902072} で入手できる。
関連論文リスト
- API Pack: A Massive Multilingual Dataset for API Call Generation [32.283025183438895]
API Packは100万以上の命令APIコールペアを備えた多言語データセットである。
たった20,000のPythonインスタンス上で微調整されたCodeLlama-13Bは、それぞれGPT-3.5とGPT-4よりも10%以上精度が5%高い。
言語間のAPIコール生成は、言語毎の広範なデータを必要としない。
論文 参考訳(メタデータ) (2024-02-14T23:09:15Z) - Exploring Behaviours of RESTful APIs in an Industrial Setting [0.43012765978447565]
これらのAPIが示す振る舞いの例を生成するために,REST APIに共通する一連の動作特性を提案する。
これらの例は、APIの理解を深めるために(i)、自動テストケースのソースとして(ii)の両方に使用することができます。
提案手法は,システム理解と実践者によるテスト生成の源泉として考えられる例を生成することができる。
論文 参考訳(メタデータ) (2023-10-26T11:33:11Z) - APICom: Automatic API Completion via Prompt Learning and Adversarial
Training-based Data Augmentation [6.029137544885093]
APIレコメンデーションは、開発者が多数の候補APIの中で必要なAPIを見つけるのを支援するプロセスである。
これまでの研究では、主にAPIレコメンデーションをレコメンデーションタスクとしてモデル化していた。
ニューラルネットワーク翻訳研究領域に動機づけられたこの問題を生成タスクとしてモデル化することができる。
提案手法は,プロンプト学習に基づく新しいアプローチAPIComを提案し,そのプロンプトに応じてクエリに関連するAPIを生成する。
論文 参考訳(メタデータ) (2023-09-13T15:31:50Z) - Continual Learning From a Stream of APIs [90.41825351073908]
継続学習(CL)は、以前のタスクを忘れずに新しいタスクを学習することを目的としている。
既存のCLメソッドは大量の生データを必要とするが、著作権上の考慮とプライバシー上のリスクのために利用できないことが多い。
本稿では,データ効率CL (DECL-APIs) とデータフリーCL (DFCL-APIs) の2つの実践的yet-novel CL設定について考察する。
論文 参考訳(メタデータ) (2023-08-31T11:16:00Z) - Private-Library-Oriented Code Generation with Large Language Models [52.73999698194344]
本稿では,大規模言語モデル(LLM)をプライベートライブラリのコード生成に活用することに焦点を当てる。
プログラマがプライベートコードを書く過程をエミュレートする新しいフレームワークを提案する。
TorchDataEval、TorchDataComplexEval、MonkeyEval、BeatNumEvalの4つのプライベートライブラリベンチマークを作成しました。
論文 参考訳(メタデータ) (2023-07-28T07:43:13Z) - LongCoder: A Long-Range Pre-trained Language Model for Code Completion [56.813974784131624]
LongCoderは自己アテンションにスライディングウィンドウ機構を採用し、グローバルアクセス可能なトークンを2種類導入している。
ブリッジトークンは入力シーケンス全体を通して挿入され、ローカル情報を集約し、グローバルな相互作用を促進する。
メモリトークンは、後で呼び出され、記憶する必要がある重要なステートメントをハイライトするために含まれます。
論文 参考訳(メタデータ) (2023-06-26T17:59:24Z) - When Language Model Meets Private Library [25.610036042971043]
実際には、プログラマはプライベートライブラリを使ってコードを書くことが一般的である。
これは、トレーニング中にプライベートAPIを見たことがないため、言語モデルにとっての課題である。
APIRetrieverは有用なAPIを見つけ、APICoderはこれらのAPIを使ってコードを生成する。
論文 参考訳(メタデータ) (2022-10-31T11:42:06Z) - Binding Language Models in Symbolic Languages [146.3027328556881]
Binderはトレーニング不要のニューラルシンボリックフレームワークで、タスク入力をプログラムにマッピングする。
解析の段階では、Codexは元のプログラミング言語では答えられないタスク入力の一部を特定することができる。
実行段階では、CodexはAPI呼び出しで適切なプロンプトを与えられた万能機能を実行することができる。
論文 参考訳(メタデータ) (2022-10-06T12:55:17Z) - On the Effectiveness of Pretrained Models for API Learning [8.788509467038743]
開発者は、Excelファイルのパース、行ごとのテキストファイルの読み書きなど、特定の機能を実装するためにAPIを使うことが多い。
開発者は、より高速でクリーンな方法でアプリケーションを構築するために、自然言語クエリに基づいた自動API使用シーケンス生成の恩恵を受けることができる。
既存のアプローチでは、クエリが与えられたAPIシーケンスの検索や、RNNベースのエンコーダデコーダを使用してAPIシーケンスを生成するために、情報検索モデルを使用している。
論文 参考訳(メタデータ) (2022-04-05T20:33:24Z) - ReACC: A Retrieval-Augmented Code Completion Framework [53.49707123661763]
本稿では,語彙のコピーと類似したセマンティクスを持つコード参照の両方を検索により活用する検索拡張コード補完フレームワークを提案する。
我々は,Python および Java プログラミング言語のコード補完タスクにおけるアプローチを評価し,CodeXGLUE ベンチマークで最先端のパフォーマンスを実現する。
論文 参考訳(メタデータ) (2022-03-15T08:25:08Z) - GraphCodeBERT: Pre-training Code Representations with Data Flow [97.00641522327699]
本稿では,コード固有の構造を考慮したプログラミング言語の事前学習モデルであるGraphCodeBERTを提案する。
これは変数間の"where-the-value-comes-from"の関係をエンコードするコードのセマンティックレベルの構造です。
コード検索,クローン検出,コード翻訳,コード改良の4つのタスクにおいて,本モデルを評価する。
論文 参考訳(メタデータ) (2020-09-17T15:25:56Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。