論文の概要: Adversarial Attacks on Code Models with Discriminative Graph Patterns
- arxiv url: http://arxiv.org/abs/2308.11161v1
- Date: Tue, 22 Aug 2023 03:40:34 GMT
- ステータス: 処理完了
- システム内更新日: 2023-10-23 13:19:00.165149
- Title: Adversarial Attacks on Code Models with Discriminative Graph Patterns
- Title(参考訳): 識別グラフパターンを持つコードモデルに対する逆攻撃
- Authors: Thanh-Dat Nguyen, Yang Zhou, Xuan Bach D. Le, Patanamon (Pick)
Thongtanunam, David Lo
- Abstract要約: 我々は、コードモデルの堅牢性をよりよく評価するために、新しい敵攻撃フレームワーク、GraphCodeAttackを提案する。
ターゲットのコードモデルが与えられたら、GraphCodeAttackは自動的に重要なコードパターンをマイニングし、モデルの決定に影響を与える可能性がある。
ASTパターンからの攻撃を効果的に合成するために、GraphCodeAttackは、個別にトレーニング済みのコードモデルを使用して、具体的なコードスニペットでASTを埋める。
- 参考スコア(独自算出の注目度): 9.474381289311715
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Pre-trained language models of code are now widely used in various software
engineering tasks such as code generation, code completion, vulnerability
detection, etc. This, in turn, poses security and reliability risks to these
models. One of the important threats is \textit{adversarial attacks}, which can
lead to erroneous predictions and largely affect model performance on
downstream tasks. Current adversarial attacks on code models usually adopt
fixed sets of program transformations, such as variable renaming and dead code
insertion, leading to limited attack effectiveness. To address the
aforementioned challenges, we propose a novel adversarial attack framework,
GraphCodeAttack, to better evaluate the robustness of code models. Given a
target code model, GraphCodeAttack automatically mines important code patterns,
which can influence the model's decisions, to perturb the structure of input
code to the model. To do so, GraphCodeAttack uses a set of input source codes
to probe the model's outputs and identifies the \textit{discriminative} ASTs
patterns that can influence the model decisions. GraphCodeAttack then selects
appropriate AST patterns, concretizes the selected patterns as attacks, and
inserts them as dead code into the model's input program. To effectively
synthesize attacks from AST patterns, GraphCodeAttack uses a separate
pre-trained code model to fill in the ASTs with concrete code snippets. We
evaluate the robustness of two popular code models (e.g., CodeBERT and
GraphCodeBERT) against our proposed approach on three tasks: Authorship
Attribution, Vulnerability Prediction, and Clone Detection. The experimental
results suggest that our proposed approach significantly outperforms
state-of-the-art approaches in attacking code models such as CARROT and ALERT.
- Abstract(参考訳): 事前訓練されたコードの言語モデルは、コード生成、コード補完、脆弱性検出など、様々なソフトウェアエンジニアリングタスクで広く使われている。
これにより、これらのモデルにセキュリティと信頼性のリスクが生じる。
重要な脅威の1つは \textit{adversarial attacks} であり、これは誤った予測につながり、ダウンストリームタスクにおけるモデルパフォーマンスに大きな影響を及ぼす。
コードモデルに対する現在の敵対的攻撃は通常、変数リネームやデッドコード挿入など、プログラム変換の固定セットを採用する。
上記の課題に対処するため,我々は,コードモデルのロバスト性を評価するための新しい攻撃フレームワークであるgraphcodeattackを提案する。
ターゲットとなるコードモデルが与えられると、graphcodeattackはモデルの決定に影響を与える重要なコードパターンを自動的にマイニングして、入力コードの構造をモデルに摂動させる。
そのために、GraphCodeAttackは入力ソースコードのセットを使用してモデルの出力を探索し、モデル決定に影響を与える可能性のある \textit{discriminative} ASTs パターンを特定します。
GraphCodeAttackは適切なASTパターンを選択し、選択したパターンをアタックとして減らし、デッドコードとしてモデルの入力プログラムに挿入する。
ASTパターンからの攻撃を効果的に合成するために、GraphCodeAttackは、個別にトレーニング済みのコードモデルを使用して、具体的なコードスニペットでASTを埋める。
著者属性,脆弱性予測,クローン検出という3つのタスクに対する2つの人気コードモデル(CodeBERTやGraphCodeBERTなど)の堅牢性を評価する。
実験結果から,提案手法は CARROT や ALERT などの攻撃コードモデルにおいて,最先端の手法よりも大幅に優れていたことが示唆された。
関連論文リスト
- Are aligned neural networks adversarially aligned? [69.31050597889977]
敵のユーザは、アライメントの試みを回避できるインプットを構築できる。
既存のNLPベースの最適化攻撃は、整列したテキストモデルを確実に攻撃するには不十分であることを示す。
我々は、NLP攻撃の改善が、テキストのみのモデルに対して、同じレベルの逆制御を示す可能性があると推測する。
論文 参考訳(メタデータ) (2023-06-26T17:18:44Z) - Defense-Prefix for Preventing Typographic Attacks on CLIP [14.832208701208414]
一部の敵対的攻撃は、モデルを偽りまたはばかげた分類に騙す。
我々は,DP トークンをクラス名の前に挿入して,文字攻撃に対して "robust" という単語を"robust" する,シンプルで効果的な方法を紹介した。
本手法は, モデルにおけるゼロショット能力を維持しつつ, タイポグラフィー攻撃データセットの分類タスクの精度を大幅に向上させる。
論文 参考訳(メタデータ) (2023-04-10T11:05:20Z) - CodeLMSec Benchmark: Systematically Evaluating and Finding Security
Vulnerabilities in Black-Box Code Language Models [58.27254444280376]
自動コード生成のための大規模言語モデル(LLM)は、いくつかのプログラミングタスクにおいてブレークスルーを達成した。
これらのモデルのトレーニングデータは、通常、インターネット(例えばオープンソースのリポジトリから)から収集され、障害やセキュリティ上の脆弱性を含む可能性がある。
この不衛生なトレーニングデータは、言語モデルにこれらの脆弱性を学習させ、コード生成手順中にそれを伝播させる可能性がある。
論文 参考訳(メタデータ) (2023-02-08T11:54:07Z) - ReCode: Robustness Evaluation of Code Generation Models [90.10436771217243]
コード生成モデルのための総合的ロバストネス評価ベンチマークであるReCodeを提案する。
ドクストリング、関数と変数名、コード構文、コードフォーマットのコードに特化して、30以上の変換をカスタマイズします。
ヒトのアノテータでは、摂動プロンプトの90%以上が本来のプロンプトの意味を変えていないことが確認された。
論文 参考訳(メタデータ) (2022-12-20T14:11:31Z) - CodeAttack: Code-Based Adversarial Attacks for Pre-trained Programming
Language Models [8.832864937330722]
我々は、コード構造を用いて、効果的で効率的で、知覚不能なコードサンプルを生成する、単純で効果的なブラックボックス攻撃モデルであるCodeAttackを提案する。
プログラム言語間でのコード-コード(翻訳と修復)およびコード-NL(要約)タスクにおけるCodeAttackの転送性を評価する。
論文 参考訳(メタデータ) (2022-05-31T18:40:01Z) - Defending Variational Autoencoders from Adversarial Attacks with MCMC [74.36233246536459]
変分オートエンコーダ(VAE)は、様々な領域で使用される深部生成モデルである。
以前の研究が示すように、視覚的にわずかに修正された入力に対する予期せぬ潜在表現と再構成を生成するために、VAEを簡単に騙すことができる。
本稿では, 敵攻撃構築のための目的関数について検討し, モデルのロバスト性を評価する指標を提案し, 解決策を提案する。
論文 参考訳(メタデータ) (2022-03-18T13:25:18Z) - Software Vulnerability Detection via Deep Learning over Disaggregated
Code Graph Representation [57.92972327649165]
この研究は、コードコーパスから安全でないパターンを自動的に学習するためのディープラーニングアプローチを探求する。
コードには解析を伴うグラフ構造が自然に認められるため,プログラムの意味的文脈と構造的規則性の両方を利用する新しいグラフニューラルネットワーク(GNN)を開発する。
論文 参考訳(メタデータ) (2021-09-07T21:24:36Z) - Demystifying Code Summarization Models [5.608277537412537]
我々は、極端要約、code2vec、code2seq、Sequence GNNの4つの顕著なコード要約モデルを評価する。
結果は、すべてのモデルが意味的な意味をほとんど含まない構文的および語彙的特性に基づいて予測することを示している。
本稿では,トレーニングデータのレンズを用いて,コード要約モデルの予測を説明する新しい手法を提案する。
論文 参考訳(メタデータ) (2021-02-09T03:17:46Z) - InferCode: Self-Supervised Learning of Code Representations by
Predicting Subtrees [17.461451218469062]
本稿では,自己言語学習機構をソースコードモデルに適用することにより,制限を克服するinfercodeを提案する。
ASTのサブツリーは、人間のラベル付けや高価なグラフ構築のオーバーヘッドなしにコード表現をトレーニングするためのラベルとして、InferCodeで扱われる。
Code2Vec、Code2Seq、ASTNNなど、同じ下流タスクに適用される以前のコード学習技術と比較して、事前に訓練されたInferCodeモデルを使用して、より高いパフォーマンスを達成できます。
論文 参考訳(メタデータ) (2020-12-13T10:33:41Z) - GraphCodeBERT: Pre-training Code Representations with Data Flow [97.00641522327699]
本稿では,コード固有の構造を考慮したプログラミング言語の事前学習モデルであるGraphCodeBERTを提案する。
これは変数間の"where-the-value-comes-from"の関係をエンコードするコードのセマンティックレベルの構造です。
コード検索,クローン検出,コード翻訳,コード改良の4つのタスクにおいて,本モデルを評価する。
論文 参考訳(メタデータ) (2020-09-17T15:25:56Z) - Differentiable Language Model Adversarial Attacks on Categorical
Sequence Classifiers [0.0]
敵対的攻撃パラダイムは、ディープラーニングモデルの脆弱性の様々なシナリオを探索する。
本研究では,言語モデルの微調整を,敵対的攻撃のジェネレータとして利用する。
我々のモデルは、銀行取引、電子健康記録、NLPデータセットに関する多様なデータセットに対して機能する。
論文 参考訳(メタデータ) (2020-06-19T11:25:36Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。