論文の概要: Understanding How CodeLLMs (Mis)Predict Types with Activation Steering
- arxiv url: http://arxiv.org/abs/2404.01903v2
- Date: Fri, 13 Sep 2024 14:56:46 GMT
- ステータス: 翻訳完了
- システム内更新日: 2024-09-16 23:17:21.089580
- Title: Understanding How CodeLLMs (Mis)Predict Types with Activation Steering
- Title(参考訳): アクティベーションステアリングによるCodeLLMs(Mis)予測型の理解
- Authors: Francesca Lucchetti, Arjun Guha,
- Abstract要約: モデルが型を誤って予測した場合に何が起こるかを調べる。
コードにセマンティクスを保存する編集を適用することで、コードLLMは最終的に型アノテーションの誤予測に誤解される。
ステアリングは型予測タスクで直接微調整に匹敵する性能を発揮することを示す。
- 参考スコア(独自算出の注目度): 1.7252995245478464
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: CodeLLMs are transforming software development as we know it. This is especially true for tasks where rule-based approaches fall short, like type prediction. The type prediction task consists in adding a new type annotation to a partially typed program, such that the resulting program is closer to being fully typed. The intractability of rule-based approaches and high cost of manual annotation make CodeLLMs an attractive solution to the problem. However, CodeLLMs are still far from being deployed on the large-scale due to doubts surrounding their reliability. To shed some light on how CodeLLMs approach type prediction, we investigate what happens when a model mispredicts a type. We show that by applying semantics-preserving edits to code, CodeLLMs are eventually misled into mispredicting type annotations. However, by leveraging activation steering we are able to "steer" the model back to the correct prediction, making models more robust against semantically irrelevant prompt features. We show that steering achieves comparable performance to fine-tuning directly on the type prediction task. Furthermore, we find that steering vectors computed from Python code are effective at correcting TypeScript mispredictions, and vice versa. To our knowledge, this is the first evidence of its kind to suggest that CodeLLMs learn task representations that transfer across languages.
- Abstract(参考訳): CodeLLMは、私たちが知っているように、ソフトウェア開発を変革しています。
これは、型予測のようなルールベースのアプローチが不足しているタスクには特に当てはまります。
型予測タスクは、部分的に型付けされたプログラムに新しい型アノテーションを追加することで構成される。
ルールベースのアプローチの難易度と手作業によるアノテーションの高コストにより、CodeLLMはこの問題に対する魅力的な解決策となっている。
しかし、CodeLLMは信頼性に関する疑問から、大規模なデプロイには程遠い。
CodeLLMsが型予測にどのようにアプローチするかを示すために、モデルが型を誤って予測した場合に何が起こるかを調査する。
コードにセマンティクスを保存する編集を適用することで、コードLLMは最終的に型アノテーションの誤予測に誤解される。
しかしながら、アクティベーションステアリングを活用することで、モデルを正しい予測に"ステア"することができるため、意味的に無関係なプロンプト機能に対して、モデルはより堅牢になります。
ステアリングは型予測タスクで直接微調整に匹敵する性能を発揮することを示す。
さらに、Pythonコードから計算されたステアリングベクターはTypeScriptの誤予測を修正するのに有効であり、その逆も有効であることがわかった。
われわれの知る限り、これはCodeLLMsが言語間で転送されるタスク表現を学習していることを示す最初の証拠である。
関連論文リスト
- RightTyper: Effective and Efficient Type Annotation for Python [0.7673339435080445]
RightTyperは実際のプログラムの振る舞いに基づいて正確な型アノテーションを生成する。
RightTyperは高速で空間効率が良いため、平均的なパフォーマンスオーバーヘッドは30%に過ぎません。
論文 参考訳(メタデータ) (2025-07-21T20:37:35Z) - Type-Constrained Code Generation with Language Models [51.03439021895432]
大規模言語モデル(LLM)はコードの形式的な側面をモデル化しないため、コンパイル不可能な出力を生成する。
本稿では,型システムを利用してコード生成を誘導する型制約デコード手法を提案する。
提案手法は,コンパイルエラーを半分以上削減し,コード合成,翻訳,修復作業における機能的正しさを向上する。
論文 参考訳(メタデータ) (2025-04-12T15:03:00Z) - Predicting the Performance of Black-box LLMs through Self-Queries [60.87193950962585]
大規模言語モデル(LLM)は、AIシステムにおいてますます頼りになってきている。
本稿では、フォローアッププロンプトを使用し、異なる応答の確率を表現として捉え、ブラックボックス方式でLCMの特徴を抽出する。
これらの低次元表現上で線形モデルをトレーニングすると、インスタンスレベルでのモデル性能の信頼性を予測できることを示す。
論文 参考訳(メタデータ) (2025-01-02T22:26:54Z) - Steering Without Side Effects: Improving Post-Deployment Control of Language Models [61.99293520621248]
言語モデル(LM)は、デプロイ後予期せず振る舞うことが示されている。
KL-then-steer (KTS) は, その利点を保ちながら, 操舵の副作用を低減する技術である。
本手法はLlama-2-chat-7Bモデルと比較して44%のジェイルブレイク攻撃を防ぐ。
論文 参考訳(メタデータ) (2024-06-21T01:37:39Z) - Perplexed: Understanding When Large Language Models are Confused [3.4208414448496027]
本稿では,言語モデルが複雑になる場所を探索するライブラリであるperplexedを紹介する。
Codetokenizerと呼ばれるコードモデルの解析を支援するために構築した追加ツールを使用して、コード生成のためのLLM(Large Language Models)に焦点を当てたケーススタディを実施しました。
我々の研究したコードLLMは、コードが構文的に正しくないコーディング構造において、最悪のパフォーマンスを示しました。
論文 参考訳(メタデータ) (2024-04-09T22:03:39Z) - Which Syntactic Capabilities Are Statistically Learned by Masked
Language Models for Code? [51.29970742152668]
精度に基づく測定に依存することで、モデルの能力が過大評価される可能性があることを強調する。
これらの問題に対処するために,SyntaxEval in Syntactic Capabilitiesというテクニックを導入する。
論文 参考訳(メタデータ) (2024-01-03T02:44:02Z) - AdaTyper: Adaptive Semantic Column Type Detection [4.062265896931587]
私たちはAdaTyperを提案し、最も重要なデプロイメント課題の1つに対処します。
AdaTyperは弱いスーパービジョンを使用して、ハイブリッド型予測器を新しいセマンティックタイプに適応し、推論時にデータ分散をシフトする。
クラウドソーシングによる実世界のデータベーステーブル上でのAdaTyperの適応性能の評価を行った。
論文 参考訳(メタデータ) (2023-11-23T04:42:27Z) - Evaluating and Explaining Large Language Models for Code Using Syntactic
Structures [74.93762031957883]
本稿では,コード用大規模言語モデルに特有の説明可能性手法であるASTxplainerを紹介する。
その中核にあるASTxplainerは、トークン予測をASTノードに整合させる自動メソッドを提供する。
私たちは、最も人気のあるGitHubプロジェクトのキュレートデータセットを使用して、コード用の12の人気のあるLLMに対して、実証的な評価を行います。
論文 参考訳(メタデータ) (2023-08-07T18:50:57Z) - Generative Type Inference for Python [62.01560866916557]
本稿では静的解析から静的ドメイン知識を取り入れた数ショットの生成型推論手法であるTypeGenを紹介する。
TypeGenは、静的解析の型推論ステップを、型依存グラフ(TDG)に基づいたプロンプトに変換することで、COTプロンプトを生成する。
実験の結果、TypeGenは引数型予測では10.0%、Top-1 Exact Matchでは22.5%で最高のベースラインであるType4Pyを上回っている。
論文 参考訳(メタデータ) (2023-07-18T11:40:31Z) - Type Prediction With Program Decomposition and Fill-in-the-Type Training [2.7998963147546143]
大規模な言語モデルを活用する型予測のための検索ベースのアプローチであるOpenTauを構築した。
TypeScriptの型予測のための新しいデータセットで作業を評価し、ファイルタイプチェックの47.4%(14.5%の絶対的改善)とファイル毎の3.3型のエラー率を示している。
論文 参考訳(メタデータ) (2023-05-25T21:16:09Z) - The Larger They Are, the Harder They Fail: Language Models do not
Recognize Identifier Swaps in Python [34.13276581200455]
大規模言語モデル(LLM)は、コード生成タスクにうまく適用されている。
デフォルト関数名がスワップされた場合、LLMは正しいPythonコードを生成することができないことを示す。
モデルのサイズが大きくなるにつれて、それらのいくつかは誤った予測に自信を持つようになる。
論文 参考訳(メタデータ) (2023-05-24T18:54:39Z) - Enriching Source Code with Contextual Data for Code Completion Models:
An Empirical Study [4.438873396405334]
コンテクストデータを用いてコードを理解しやすくすることで、コード補完作業のための事前学習された言語モデルの性能が向上するかどうかを問う。
コメントについては、マルチラインコメントの存在下でモデルの性能が向上していることが分かる。
論文 参考訳(メタデータ) (2023-04-24T17:09:14Z) - TypeT5: Seq2seq Type Inference using Static Analysis [51.153089609654174]
本稿では,型予測をコード入力タスクとして扱う新しい型推論手法を提案する。
本手法では静的解析を用いて,型シグネチャがモデルによって予測されるコード要素毎に動的コンテキストを構築する。
また,モデルの入力コンテキストに事前の型予測を組み込んだ反復復号方式を提案する。
論文 参考訳(メタデータ) (2023-03-16T23:48:00Z) - Do Machine Learning Models Produce TypeScript Types That Type Check? [2.1365083849371747]
任意の型予測モデルで使用可能なTypeScriptの型マイグレーションツールであるTypeWeaverを紹介します。
我々は、再帰型ニューラルネットワークのDeepTyper、グラフニューラルネットワークのLambdaNet、汎用多言語トランスフォーマーのInCoderの3つのモデルでこれを評価した。
最高の型予測モデルでは、パッケージの21%の型チェックしかありませんが、もっと励ましく言えば、ファイルの69%が型チェックを成功させています。
論文 参考訳(メタデータ) (2023-02-23T16:59:38Z) - Toward a Theory of Causation for Interpreting Neural Code Models [49.906221295459275]
本稿では,ニューラルコードモデル(NCM)に特化したポストホック解釈法である$do_code$を紹介する。
$do_code$は、言語指向の説明を可能にする因果推論に基づいている。
その結果,NCMはコード構文の変化に敏感であることが判明した。
論文 参考訳(メタデータ) (2023-02-07T22:56:58Z) - Language Model Pre-Training with Sparse Latent Typing [66.75786739499604]
そこで本研究では,多種多様な潜在型を持つ文レベルのキーワードを疎に抽出することのできる,事前学習対象Sparse Latent Typingを提案する。
実験結果から,本モデルは外部知識を使わずに,自己教師型で解釈可能な潜在型カテゴリを学習できることが示唆された。
論文 参考訳(メタデータ) (2022-10-23T00:37:08Z) - Few-Shot Semantic Parsing with Language Models Trained On Code [52.23355024995237]
Codexは同等のGPT-3モデルよりもセマンティックパーシングが優れていることがわかった。
GPT-3とは異なり、Codexは意味表現を直接ターゲットとする場合、おそらく意味解析で使われる意味表現がコードと似た構造になっているように、同じように機能する。
論文 参考訳(メタデータ) (2021-12-16T08:34:06Z) - Editing Factual Knowledge in Language Models [51.947280241185]
本稿では,この知識を編集する手法であるKnowledgeEditorを提案する。
knowledgeeditorは計算効率が高いだけでなく、lm事前トレーニングの修正も必要としない。
2つの一般的なアーキテクチャと知識集約型タスクで、KnowledgeEditorの有効性を示します。
論文 参考訳(メタデータ) (2021-04-16T15:24:42Z) - Contrastive Code Representation Learning [95.86686147053958]
一般的な再構成に基づくBERTモデルは,ソースコードの編集に敏感であることを示す。
コントラコード(ContraCode)は、コード機能を学ぶのにフォームではなく、コントラスト的な事前学習タスクである。
論文 参考訳(メタデータ) (2020-07-09T17:59:06Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。