論文の概要: All You Need Is Logs: Improving Code Completion by Learning from
Anonymous IDE Usage Logs
- arxiv url: http://arxiv.org/abs/2205.10692v1
- Date: Sat, 21 May 2022 23:21:26 GMT
- ステータス: 処理完了
- システム内更新日: 2022-05-30 08:15:03.151179
- Title: All You Need Is Logs: Improving Code Completion by Learning from
Anonymous IDE Usage Logs
- Title(参考訳): 必要なのはログだけ - 匿名のide使用ログから学ぶことでコード補完を改善する
- Authors: Vitaliy Bibaev, Alexey Kalina, Vadim Lomshakov, Yaroslav Golubev,
Alexander Bezzubov, Nikita Povarov, Timofey Bryksin
- Abstract要約: そこで本研究では,IDEのユーザからコンプリート利用ログを収集する手法を提案する。
機械学習ベースのモデルをトレーニングして、完成候補をランク付けします。
評価の結果,過去のユーザ動作ログに基づいてトレーニングした単純なランキングモデルを用いることで,コード補完エクスペリエンスが大幅に向上した。
- 参考スコア(独自算出の注目度): 55.606644084003094
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Integrated Development Environments (IDE) are designed to make users more
productive, as well as to make their work more comfortable. To achieve this, a
lot of diverse tools are embedded into IDEs, and the developers of IDEs can
employ anonymous usage logs to collect the data about how they are being used
to improve them. A particularly important component that this can be applied to
is code completion, since improving code completion using statistical learning
techniques is a well-established research area.
In this work, we propose an approach for collecting completion usage logs
from the users in an IDE and using them to train a machine learning based model
for ranking completion candidates. We developed a set of features that describe
completion candidates and their context, and deployed their anonymized
collection in the Early Access Program of IntelliJ-based IDEs. We used the logs
to collect a dataset of code completions from users, and employed it to train a
ranking CatBoost model. Then, we evaluated it in two settings: on a held-out
set of the collected completions and in a separate A/B test on two different
groups of users in the IDE. Our evaluation shows that using a simple ranking
model trained on the past user behavior logs significantly improved code
completion experience. Compared to the default heuristics-based ranking, our
model demonstrated a decrease in the number of typing actions necessary to
perform the completion in the IDE from 2.073 to 1.832.
The approach adheres to privacy requirements and legal constraints, since it
does not require collecting personal information, performing all the necessary
anonymization on the client's side. Importantly, it can be improved
continuously: implementing new features, collecting new data, and evaluating
new models - this way, we have been using it in production since the end of
2020.
- Abstract(参考訳): 統合開発環境(IDE)は、ユーザの生産性を高め、作業をより快適にするために設計されています。
これを実現するために、多くの多様なツールがIDEに組み込まれており、IDEの開発者は匿名の使用ログを使用して、それらを改善するためにどのように使われているかのデータを集めることができる。
統計的学習技術を用いてコード補完を改善することは、十分に確立された研究分野である。
そこで本研究では,IDEのユーザから完成度ログを収集し,それを機械学習モデルで学習し,完成度候補のランク付けを行う手法を提案する。
コンプリート候補とそのコンテキストを記述した一連の機能を開発し、IntelliJベースのIDEの早期アクセスプログラムに匿名化されたコレクションをデプロイしました。
ログを使ってユーザからコード補完のデータセットを収集し、ランキングのcatboostモデルをトレーニングするために使用しました。
次に、収集した完了の保留セットと、IDE内の2つの異なるユーザーグループで別々のA/Bテストの2つの設定で評価した。
評価の結果,過去のユーザ行動ログでトレーニングされた単純なランキングモデルを用いることで,コード補完エクスペリエンスが大幅に向上した。
既定のヒューリスティックスによるランキングと比較すると,IDEの完了に必要なタイピングアクションの数が2.073から1.832に減少した。
このアプローチは、個人情報の収集を必要とせず、クライアント側で必要な匿名化を実行するため、プライバシー要件と法的制約に準拠する。
重要なのは、新機能の実装、新しいデータ収集、新しいモデルの評価など、継続的に改善できることです。
関連論文リスト
- Codev-Bench: How Do LLMs Understand Developer-Centric Code Completion? [60.84912551069379]
Code-Development Benchmark (Codev-Bench)は、細粒度で現実世界、リポジトリレベル、開発者中心の評価フレームワークです。
Codev-Agentは、リポジトリのクローリングを自動化し、実行環境を構築し、既存のユニットテストから動的呼び出しチェーンを抽出し、データ漏洩を避けるために新しいテストサンプルを生成するエージェントベースのシステムである。
論文 参考訳(メタデータ) (2024-10-02T09:11:10Z) - Full Line Code Completion: Bringing AI to Desktop [3.5296482958373447]
JetBrainsのIntelliJ Platform用のマルチトークンコード補完機能を構築するためのアプローチについて説明する。
この機能は構文的に正しいコードのみを推奨し、ローカルで完全に動作する。
論文 参考訳(メタデータ) (2024-05-14T15:42:55Z) - Does Your Neural Code Completion Model Use My Code? A Membership Inference Approach [66.51005288743153]
本稿では,現在のニューラルコード補完モデルの法的および倫理的問題について考察する。
私たちは、もともと分類タスクのために作られたメンバシップ推論アプローチ(CodeMIと呼ばれる)を調整します。
我々は,この適応型アプローチの有効性を,多種多様なニューラルコード補完モデルで評価した。
論文 参考訳(メタデータ) (2024-04-22T15:54:53Z) - How far are AI-powered programming assistants from meeting developers' needs? [17.77734978425295]
GitHub CopilotのようなIDE内AIコーディングアシスタントツール(ACAT)は、開発者のコーディング習慣に大きな影響を与えている。
我々は,実開発シナリオをシミュレートし,27人のコンピュータサイエンス学生を募集し,その振る舞いを3つのACATを用いて調査する。
ACATは一般的にタスク完了率を高め、時間を短縮し、コード品質を改善し、自己認識の生産性を高めます。
論文 参考訳(メタデータ) (2024-04-18T08:51:14Z) - Context Composing for Full Line Code Completion [0.46040036610482665]
本稿では,機能実装のコアとなるTransformerモデルに対するコンテクスト構成のアプローチについて述べる。
我々は、機能を改善するための次のステップを共有し、この分野におけるいくつかの研究面の重要性を強調します。
論文 参考訳(メタデータ) (2024-02-14T15:17:37Z) - Enriching Source Code with Contextual Data for Code Completion Models:
An Empirical Study [4.438873396405334]
コンテクストデータを用いてコードを理解しやすくすることで、コード補完作業のための事前学習された言語モデルの性能が向上するかどうかを問う。
コメントについては、マルチラインコメントの存在下でモデルの性能が向上していることが分かる。
論文 参考訳(メタデータ) (2023-04-24T17:09:14Z) - GEMv2: Multilingual NLG Benchmarking in a Single Line of Code [161.1761414080574]
Generation, Evaluation, and Metrics Benchmarkは、データセット、モデル、メトリック開発者のためのモジュラーインフラストラクチャを提供する。
GEMv2は51言語で40のドキュメントデータセットをサポートする。
すべてのデータセットのモデルはオンラインで評価でき、インタラクティブなデータカード作成とレンダリングツールによって、生きたベンチマークに新しいデータセットを簡単に追加できます。
論文 参考訳(メタデータ) (2022-06-22T17:52:30Z) - ReACC: A Retrieval-Augmented Code Completion Framework [53.49707123661763]
本稿では,語彙のコピーと類似したセマンティクスを持つコード参照の両方を検索により活用する検索拡張コード補完フレームワークを提案する。
我々は,Python および Java プログラミング言語のコード補完タスクにおけるアプローチを評価し,CodeXGLUE ベンチマークで最先端のパフォーマンスを実現する。
論文 参考訳(メタデータ) (2022-03-15T08:25:08Z) - SLADE: A Self-Training Framework For Distance Metric Learning [75.54078592084217]
我々は、追加のラベルのないデータを活用することで、検索性能を向上させるための自己学習フレームワークSLADEを提案する。
まず、ラベル付きデータに基づいて教師モデルをトレーニングし、ラベルなしデータに対して擬似ラベルを生成する。
次に、最終機能埋め込みを生成するために、ラベルと擬似ラベルの両方で学生モデルをトレーニングします。
論文 参考訳(メタデータ) (2020-11-20T08:26:10Z) - Towards Full-line Code Completion with Neural Language Models [25.458883198815393]
単一トークンではなく,コード行全体を直接完了する可能性について論じる。
最近のニューラルネットワークモデルは、コード補完の好ましいアプローチとして採用されている。
論文 参考訳(メタデータ) (2020-09-18T03:12:13Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。