論文の概要: Neural Variable Name Repair: Learning to Rename Identifiers for Readability
- arxiv url: http://arxiv.org/abs/2512.01141v1
- Date: Sun, 30 Nov 2025 23:37:46 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-12-02 19:46:34.600589
- Title: Neural Variable Name Repair: Learning to Rename Identifiers for Readability
- Title(参考訳): ニューラル変数名前修復: 可読性のための識別子名変更の学習
- Authors: Muhammad Yousuf, Akshat Bagade, Chhittebbayi Penugonda, Maanas Baraya,
- Abstract要約: 変数名の修復には,ローカルあるいはパラメータ名のすべての発生をプレースホルダに置き換える,実際のC++関数が与えられる。
関数をTree-sitterでパースすることで、BigCodeのThe StackのC++部分から自動的にこのタスクを実行します。
そこで我々は,Top-5 と組込み型部分類似度スコア (0-100) を用いて,近似同義語や形式変種に対する評価を行った。
- 参考スコア(独自算出の注目度): 0.0
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Developers routinely work with source files whose variable names are generic or misleading, and with teams moving quickly, many functions are left undocumented. This slows comprehension, increases the risk of subtle bugs, and makes it harder for both humans and large language models (LLMs) to reason about code. We study variable name repair: given a real C++ function where all occurrences of one local or parameter name have been replaced by a placeholder (e.g. ID 1), the goal is to generate a natural, descriptive replacement name. We automatically construct this task from the C++ portion of BigCode's The Stack by parsing functions with Tree-sitter, masking a single identifier, and treating the original name as supervision. On top of Llama 3.1-8B, we build a pipeline with (i) warmup and dropout schedules for more stable fine-tuning, (ii) LoRA adapters for efficient specialization on identifier repair, and (iii) a dual-encoder reranker over top-k generator candidates. We evaluate using exact match, Top-5 Hit, and an embedding-based partial similarity score (0-100) that gives credit for near synonyms and format variants (e.g., jsonValue vs. json). On a held-out set of 200 C++ functions, a zero-shot Llama 3.1 baseline reaches 6.1 percent exact match. Our best LoRA-tuned model (with warmup and dropout) achieves 43.1 percent exact match, 50.2 percent Top-5 Hit, and an 82.03 partial-match score. A dual encoder reranker further improves selection quality without modifying the underlying generator, suggesting that task-specific fine-tuning plus reranking is a promising approach for practical identifier repair tools.
- Abstract(参考訳): 開発者は通常、変数名がジェネリックまたは誤解を招くソースファイルで作業する。
これにより、理解が遅くなり、微妙なバグのリスクが増大し、人間と大規模言語モデル(LLM)の両方がコードを理解するのが難しくなる。
変数名修復について検討する: 1つのローカルまたはパラメータ名のすべての発生をプレースホルダー(eg ID 1)に置き換える実C++関数の場合、目的は自然に記述された代替名を生成することである。
我々はこのタスクをBigCodeのThe StackのC++部分から自動的に構築し、関数をTree-sitterでパースし、単一の識別子をマスクし、元の名前を監督として扱う。
Llama 3.1-8Bの上にパイプラインを構築します
一 より安定した微調整のためのウォームアップ及びドロップアウトスケジュール
二 識別子修復の効率化を図るためのLoRAアダプタ及び
(iii)トップkジェネレータ候補に対するデュアルエンコーダリランカ。
我々は,Top-5 Hit と埋め込み型部分類似度スコア (0-100) を用いて,近似同義語や形式変種 (jsonValue vs. json) のクレジットを与える。
200のC++関数からなるホールトアウトセットでは、ゼロショットのLlama 3.1ベースラインが6.1%の精度で一致している。
我々の最高のLoRA調整モデル(ウォームアップとドロップアウト)は43.1%の正確な試合、50.2%のTop-5ヒット、82.03のパーシャルマッチスコアを達成した。
デュアルエンコーダ・リランカは、基礎となるジェネレータを変更することなく、選択品質をさらに向上させ、タスク固有の微調整+リランクが実用的な識別子修復ツールにとって有望なアプローチであることを示唆している。
関連論文リスト
- FUSELOC: Fusing Global and Local Descriptors to Disambiguate 2D-3D Matching in Visual Localization [52.57327385675752]
直接2D-3Dマッチングではメモリが大幅に削減されるが、より大きくあいまいな検索空間のために精度が低下する。
重み付き平均演算子を用いて局所的および大域的記述子を融合することにより、この曖昧さに対処する。
メモリを43%削減し、1.6倍高速に動作しながら、階層的な手法に近いパフォーマンスを実現しています。
論文 参考訳(メタデータ) (2024-08-21T23:42:16Z) - RENAS: Prioritizing Co-Renaming Opportunities of Identifiers [1.1688548469063846]
この手法はJavaアプリケーションで同時に名前を変えなければならない関連する識別子を特定し、推奨するものである。
ReNASは、識別子間の関係と類似性に基づいて、候補をリネームするための優先度スコアを決定する。
ReNASは既存のリネーム推奨手法と比較してF1対策を0.11以上改善した。
論文 参考訳(メタデータ) (2024-08-19T06:13:09Z) - Plan with Code: Comparing approaches for robust NL to DSL generation [0.0]
コードのプランニングは多くのオーケストレーションタスクにおいて、より信頼性の高いアプローチだと考えられている。
本稿では,タスクプランニングの特別事例として,RPA(Robotic Process Automation)領域におけるワークフローの自動化に焦点を当てる。
論文 参考訳(メタデータ) (2024-08-15T04:29:33Z) - Enhancing Function Name Prediction using Votes-Based Name Tokenization and Multi-Task Learning [10.668991471782618]
投票による名前のトークン化とマルチタスク学習を用いた関数名予測を行うフレームワークを提案する。
Epitomeは、事前訓練されたアセンブリ言語モデルとグラフニューラルネットワークにより、包括的な機能意味学を学ぶ。
エピトームは最先端の関数名予測ツールを44.34%、64.16%、54.44%の精度、リコール、F1スコアで上回っている。
論文 参考訳(メタデータ) (2024-05-15T06:01:40Z) - ReGAL: Refactoring Programs to Discover Generalizable Abstractions [59.05769810380928]
Generalizable Abstraction Learning (ReGAL)は、再利用可能な関数のライブラリをコード化して学習する手法である。
ReGALによって発見された共有関数ライブラリは、プログラムが様々な領域で容易に予測できることを示している。
CodeLlama-13Bでは、ReGALはLOGOで11.5%、日付理解で26.1%、TextCraftで8.1%という絶対精度が向上し、3つのドメインのうち2つでGPT-3.5を上回った。
論文 参考訳(メタデータ) (2024-01-29T18:45:30Z) - Symbol Preference Aware Generative Models for Recovering Variable Names from Stripped Binary [18.05110624825475]
逆コンパイルにおける顕著な課題は、変数名を復元することである。
本稿では,モデルバイアスを緩和しながら生成モデルの強みを利用する新しい手法を提案する。
我々は、事前訓練された生成モデルCodeGemma-2B、CodeLlama-7B、CodeLlama-34BのプロトタイプGenNmを構築した。
論文 参考訳(メタデータ) (2023-06-05T02:39:48Z) - RefBERT: A Two-Stage Pre-trained Framework for Automatic Rename
Refactoring [57.8069006460087]
本研究では,他のリネーム活動よりも難易度の高い変数名の自動改名について検討する。
変数名に対する名前変更のための2段階事前訓練フレームワークであるRefBERTを提案する。
RefBERTの変数名は既存の手法よりも正確で有意義であることを示す。
論文 参考訳(メタデータ) (2023-05-28T12:29:39Z) - VarCLR: Variable Semantic Representation Pre-training via Contrastive
Learning [84.70916463298109]
VarCLRは変数名のセマンティック表現を学ぶための新しいアプローチである。
VarCLRはコントラスト学習に適しており、明示的に類似した入力間の距離を最小化することを目的としている。
VarCLRはBERTのような洗練された汎用言語モデルを効果的に適用できることを示す。
論文 参考訳(メタデータ) (2021-12-05T18:40:32Z) - Contrastive Code Representation Learning [95.86686147053958]
一般的な再構成に基づくBERTモデルは,ソースコードの編集に敏感であることを示す。
コントラコード(ContraCode)は、コード機能を学ぶのにフォームではなく、コントラスト的な事前学習タスクである。
論文 参考訳(メタデータ) (2020-07-09T17:59:06Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。