論文の概要: Sequence Model Design for Code Completion in the Modern IDE
- arxiv url: http://arxiv.org/abs/2004.05249v1
- Date: Fri, 10 Apr 2020 22:40:49 GMT
- ステータス: 処理完了
- システム内更新日: 2022-12-14 21:35:59.231287
- Title: Sequence Model Design for Code Completion in the Modern IDE
- Title(参考訳): モダンIDEにおけるコード補完のためのシーケンスモデル設計
- Authors: Gareth Ari Aye and Gail E. Kaiser
- Abstract要約: 本稿では,すべての有効なキーワードとスコープ内識別子を列挙する静的解析能力と,それらの上に確率分布を配置する言語モデルの能力を組み合わせた,トップk次トークンの予測手法を提案する。
我々のモデルは,文字レベルの入力表現とトークン出力を混合し,語彙外トークン(OOV)を有意に表現し,予測遅延を最小化する。
- 参考スコア(独自算出の注目度): 3.4824234779710452
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Code completion plays a prominent role in modern integrated development
environments (IDEs). Machine learning has become ubiquitous in analogous
natural language writing and search software, surfacing more relevant
autocompletions and search suggestions in fewer keystrokes. Prior research has
reported training high-accuracy, deep neural networks for modeling source code,
but little attention has been given to the practical constraints imposed by
interactive developer tools. In particular, neural language models for source
code modeling like the one described in Maybe Deep Neural Networks are the Best
Choice for Modeling Source Code are framed around code completion, but only
report accuracy of next-token prediction. However, in order for a language
model (LM) to work well within real-world code completion systems, it must also
always make suggestions that produce valid code that typechecks to support code
completion's role in correctness-checking; return instantaneous results to help
programmers code more efficiently in fewer keystrokes; and be small enough to
fit comfortably on disk and in memory on developer workstations, since
virtually all modern IDEs run locally and support offline usage. To meet these
additional requirements, we propose a novel design for predicting top-k next
tokens that combines static analysis' ability to enumerate all valid keywords
and in-scope identifiers with the ability of a language model to place a
probability distribution over them. Our model mixes character-level input
representation with token output to represent out-of-vocabulary (OOV) tokens
meaningfully and minimize prediction latency. OOV tokens can be predicted
through detection of local repetition common in software. This design achieves
state-of-art accuracy in source code modeling and fits the constraints imposed
by real-world code completion implementations in modern IDEs.
- Abstract(参考訳): コード補完は現代の統合開発環境(ide)において重要な役割を果たす。
機械学習は、類似の自然言語の書き込みや検索ソフトウェアで広く普及し、より関連性の高いオートコンプリートや検索提案を、より少ないキーストロークで実現している。
以前の研究では、ソースコードをモデリングするための高精度でディープニューラルネットワークのトレーニングが報告されていたが、インタラクティブな開発ツールが課す実践的な制約にはほとんど注意が払われていない。
特に、深層ニューラルネットワークで記述されているように、ソースコードモデリングのためのニューラルネットワークモデルは、ソースコードをコード補完を中心にモデル化するのに最適な選択であるが、次の予測の精度は報告するしかない。
しかし、言語モデル(lm)が実世界のコード補完システムでうまく機能するためには、コード補完をサポートするための型チェックのような有効なコードを生成するための提案を常に行わなければならない。
これらの追加要件を満たすために,静的解析のすべての有効なキーワードとスコープ内識別子を列挙する能力と,それらの上に確率分布を置く言語モデルの能力を組み合わせた,トップkの次のトークンを予測する新しい設計を提案する。
我々のモデルは,文字レベルの入力表現とトークン出力を混合し,語彙外トークン(OOV)を有意に表現し,予測遅延を最小化する。
OOVトークンは、ソフトウェアに共通する局所的な繰り返しを検出することによって予測できる。
この設計は、ソースコードモデリングにおける最先端の精度を実現し、現代のIDEにおける実世界のコード補完実装によって課される制約に適合する。
関連論文リスト
- Training Neural Networks as Recognizers of Formal Languages [87.06906286950438]
形式言語理論は、特に認識者に関するものである。
代わりに、非公式な意味でのみ類似したプロキシタスクを使用するのが一般的である。
ニューラルネットワークを文字列のバイナリ分類器として直接訓練し評価することで、このミスマッチを補正する。
論文 参考訳(メタデータ) (2024-11-11T16:33:25Z) - 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) - CodeIP: A Grammar-Guided Multi-Bit Watermark for Large Language Models of Code [56.019447113206006]
大規模言語モデル(LLM)はコード生成において顕著な進歩を遂げた。
CodeIPは、新しいマルチビット透かし技術で、出所の詳細を保存するために追加情報を埋め込む。
5つのプログラミング言語にまたがる実世界のデータセットで実施された実験は、CodeIPの有効性を実証している。
論文 参考訳(メタデータ) (2024-04-24T04:25:04Z) - Does Your Neural Code Completion Model Use My Code? A Membership Inference Approach [66.51005288743153]
本稿では,現在のニューラルコード補完モデルの法的および倫理的問題について考察する。
私たちは、もともと分類タスクのために作られたメンバシップ推論アプローチ(CodeMIと呼ばれる)を調整します。
我々は,この適応型アプローチの有効性を,多種多様なニューラルコード補完モデルで評価した。
論文 参考訳(メタデータ) (2024-04-22T15:54:53Z) - On-the-Fly Syntax Highlighting: Generalisation and Speed-ups [2.208443815105053]
オンザフライ構文強調は、視覚二次表記値を言語派生のそれぞれの文字と素早く関連付けるタスクである。
スピード制約はツールのユーザビリティを保証するために不可欠であり、オンラインソースコードにアクセスするエンドユーザの応答性を示す。
コードの理解力を高めるためには、正確なハイライトを達成することが重要です。
このようなリゾルバの開発コストに対処することは、多くのプログラミング言語のバージョンを考えると必須である。
論文 参考訳(メタデータ) (2024-02-13T19:43:22Z) - INSPECT: Intrinsic and Systematic Probing Evaluation for Code
Transformers [7.255653248042546]
我々は、ソースコードの表面、構文、構造、意味的特性を訓練する15の探索タスクを定義するためにフレームワークを使用します。
8つの事前訓練されたソースコードモデルと、ベースラインとして自然言語モデル(BERT)を探索する。
構造情報(GraphCodeBERTなど)を組み込んだモデルの方が,ソースコードの特徴をよりよく表現できることがわかった。
論文 参考訳(メタデータ) (2023-12-08T15:21:54Z) - LongCoder: A Long-Range Pre-trained Language Model for Code Completion [56.813974784131624]
LongCoderは自己アテンションにスライディングウィンドウ機構を採用し、グローバルアクセス可能なトークンを2種類導入している。
ブリッジトークンは入力シーケンス全体を通して挿入され、ローカル情報を集約し、グローバルな相互作用を促進する。
メモリトークンは、後で呼び出され、記憶する必要がある重要なステートメントをハイライトするために含まれます。
論文 参考訳(メタデータ) (2023-06-26T17:59:24Z) - Emergent Representations of Program Semantics in Language Models Trained on Programs [3.376269351435396]
プログラムの形式的意味論を表現するために,コードの言語モデル(LM)が学習できることを示す。
本研究では,2次元グリッド環境をナビゲートするドメイン固有言語で記述されたプログラムの合成コーパス上でトランスフォーマーモデルを訓練する。
論文 参考訳(メタデータ) (2023-05-18T17:58:08Z) - Enriching Source Code with Contextual Data for Code Completion Models:
An Empirical Study [4.438873396405334]
コンテクストデータを用いてコードを理解しやすくすることで、コード補完作業のための事前学習された言語モデルの性能が向上するかどうかを問う。
コメントについては、マルチラインコメントの存在下でモデルの性能が向上していることが分かる。
論文 参考訳(メタデータ) (2023-04-24T17:09:14Z) - Toward a Theory of Causation for Interpreting Neural Code Models [49.906221295459275]
本稿では,ニューラルコードモデル(NCM)に特化したポストホック解釈法である$do_code$を紹介する。
$do_code$は、言語指向の説明を可能にする因果推論に基づいている。
その結果,NCMはコード構文の変化に敏感であることが判明した。
論文 参考訳(メタデータ) (2023-02-07T22:56:58Z) - Towards Full-line Code Completion with Neural Language Models [25.458883198815393]
単一トークンではなく,コード行全体を直接完了する可能性について論じる。
最近のニューラルネットワークモデルは、コード補完の好ましいアプローチとして採用されている。
論文 参考訳(メタデータ) (2020-09-18T03:12:13Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。