JP2024154761A - Adversarial attack countermeasure support system, method, and program - Google Patents
Adversarial attack countermeasure support system, method, and program Download PDFInfo
- Publication number
- JP2024154761A JP2024154761A JP2023068791A JP2023068791A JP2024154761A JP 2024154761 A JP2024154761 A JP 2024154761A JP 2023068791 A JP2023068791 A JP 2023068791A JP 2023068791 A JP2023068791 A JP 2023068791A JP 2024154761 A JP2024154761 A JP 2024154761A
- Authority
- JP
- Japan
- Prior art keywords
- attack
- loss
- image
- inference
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Image Analysis (AREA)
Abstract
Description
本開示は、敵対的攻撃への対策を支援する技術に関する。 This disclosure relates to technology that helps counter hostile attacks.
近年、ディープニューラルネットワーク(DNN)が登場して以来、AI(Artificial Intelligence)を利用したアプリケーションは劇的に増加している。以下、AIを利用したアプリケーションをAIアプリケーションともいう。AIアプリケーションに用いられるAIモデルは通常のデータの入力に対して高いパフォーマンスを発揮するが、その一方で敵対的攻撃に対しては脆弱であり、分類の誤りや誤検出を起こす可能性がある。したがって、実際のアプリケーション、特に自動運転や監視システムなど高いセキュリティが要求される分野においてAIアプリケーションをリリースする前には敵対的攻撃に対するロバスト性を評価することが重要である。 In recent years, since the emergence of deep neural networks (DNNs), applications using AI (Artificial Intelligence) have increased dramatically. Hereinafter, applications using AI are also referred to as AI applications. AI models used in AI applications perform well when normal data is input, but are vulnerable to adversarial attacks and may cause misclassification or false positives. Therefore, it is important to evaluate the robustness against adversarial attacks before releasing AI applications in actual applications, especially in fields that require high security such as autonomous driving and surveillance systems.
非特許文献1には、画像の分類あるいは検出を行うAIモデルのロバスト性を評価する手法が開示されている。非特許文献1に開示された手法は、画像にパラメータフリー戦略で人間が認識できないノイズを追加することにより敵対的サンプルを生成し、評価対象のAIモデルで敵対的サンプルに対して分類あるいは検出を実行し、その分類あるいは検出の精度によってAIモデルのロバスト性を評価するというものである。
Non-Patent
特許文献1には、敵対的生成ネットワーク(GAN:Generative Adversarial Network)を用いて敵対的サンプルを生成する手法が記載されている。特許文献1に記載された手法では視覚的な変化を伴う敵対的サンプルが生成される。
AIモデルのロバスト性の評価においては、人間の目で認識できるかどうかとは関係なく、様々な種類の特徴を持った敵対的サンプルを用いて評価を行うことが好ましい。しかしながら、非特許文献1に開示された手法は、元の画像との視覚的特徴の差異が比較的小さい敵対的サンプルを生成し、AIモデルのロバスト性の評価に用いるものである。したがって、元の画像との視覚的特徴の差異が明らかであるにも関わらず人間にとって不自然でないというような類の画像による攻撃に対するAIモデルのロバスト性を適切に評価することができない。
In evaluating the robustness of an AI model, it is preferable to use adversarial samples with various types of features, regardless of whether they can be recognized by the human eye. However, the method disclosed in Non-Patent
特許文献1には、元の画像とは異なる視覚的特徴を持った敵対的サンプルを生成する方法が記載されている。特許文献1に記載の方法によれば、上述したような非特許文献1に開示された手法におけるた攻撃パターンの欠如を克服する可能性がある。しかしながら、特許文献1の手法は、攻撃を成功させることができる最も簡単な攻撃パターンの敵対的サンプルを生成する傾向を持つものであり、多様な攻撃パターンの敵対的サンプルを生成するものではない。
本開示に含まれるひとつの目的は、AIモデルの多様な攻撃パターンの敵対的攻撃に対する対策を支援する技術を提供することである。 One objective of this disclosure is to provide technology that helps counter adversarial attacks with a variety of attack patterns on AI models.
本開示に含まれるひとつの態様による敵対的攻撃対策支援システムは、元画像から攻撃エンベディングをエンコードする攻撃エンコーダと、前記攻撃エンコーダから出力された前記攻撃エンベディングにランダムノイズを加えるノイズ追加部と、前記ランダムノイズが加えられた攻撃エンべディングを用いて推論モデルを攻撃するための攻撃画像を生成するジェネレータと、前記推論モデルを用いて前記攻撃画像に対する推論を行い、推論結果を取得する推論部と、前記攻撃画像と前記元画像との識別を行い、識別結果を算出する識別部と、前記推論結果および前記識別結果に基づいて前記攻撃画像を訓練するための損失である訓練損失を算出する損失算出部と、前記訓練損失に基づいて前記攻撃エンコーダ、前記ジェネレータ、および識別部を更新するパラメータ更新部と、を有する。 An adversarial attack countermeasure support system according to one aspect of the present disclosure includes an attack encoder that encodes an attack embedding from an original image, a noise addition unit that adds random noise to the attack embedding output from the attack encoder, a generator that generates an attack image for attacking an inference model using the attack embedding to which the random noise has been added, an inference unit that performs inference on the attack image using the inference model and obtains an inference result, a discrimination unit that discriminates between the attack image and the original image and calculates the discrimination result, a loss calculation unit that calculates a training loss, which is a loss for training the attack image based on the inference result and the discrimination result, and a parameter update unit that updates the attack encoder, the generator, and the discrimination unit based on the training loss.
本開示に含まれるひとつの態様によれば、多様な攻撃パターンの攻撃画像に対するAIモデルのロバスト性の評価を支援することが可能になる。 One aspect of the present disclosure makes it possible to assist in evaluating the robustness of an AI model against attack images with a variety of attack patterns.
以下、図面を参照して、本発明の実施形態について説明する。なお、この実施形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付し適宜説明を省略する。 Hereinafter, an embodiment of the present invention will be described with reference to the drawings. Note that the present invention is not limited to this embodiment. In addition, in the description of the drawings, the same parts are given the same reference numerals and the description will be omitted as appropriate.
<ハードウエア構成>
本実施形態にて用いられる装置は、任意の適切なコンピュータシステムにソフトウェアプログラムを適用することによ実現されてもよい。
<Hardware configuration>
The apparatus used in the present embodiment may be realized by applying a software program to any suitable computer system.
図1は、本実施形態におけるコンピュータシステムのブロック図である。 Figure 1 is a block diagram of a computer system in this embodiment.
コンピュータシステム300は、主要コンポーネントとして、1つ以上のプロセッサ302、メモリ304、端末インターフェース312、ストレージインターフェース314、I/O(入出力)デバイスインターフェース316、およびネットワークインターフェース318を有している。これらのコンポーネントは、メモリバス306、I/Oバス308、バスインターフェース部309、およびI/Oバスインターフェース部310を介して相互的に接続される。
The
プロセッサ302は、1つまたは複数の汎用プログラマブル中央処理装置(CPU)302Aおよび302Bを含んでもよい。例えば、コンピュータシステム300は複数のプロセッサを備えてもよい。他の例として、コンピュータシステム300は単一のCPUを備えていてもよい。プロセッサ302は、メモリ304に格納された命令を実行する装置であり、不図示のオンボードキャッシュを含んでもよい。
メモリ304は、データおよびプログラムを記憶するためのランダムアクセス可能な半導体メモリ、記憶装置、揮発性の記憶媒体、または不揮発性の記憶媒体を含んでもよい。メモリ304は、以下に説明する各部の機能を実現するソフトウェアプログラム、ソフトウェアモジュール、およびデータ構造のすべてまたは一部を格納してもよい。例えば、メモリ304は、攻撃生成モデル学習部340、攻撃画像生成部350、およびAIモデルロバスト性評価部360の機能を実現するソフトウェアモジュールを格納していてもよい。各部とソフトウェアモジュールの構成単位は一致していなくてもよい。例えば、複数の部分を1つのソフトウェアモジュールにより実現してもよいし、1つの部分を複数のソフトウェアモジュールにより実現してもよい。
The
ある態様として、攻撃生成モデル学習部340、攻撃画像生成部350、およびAIモデルロバスト性評価部360は、それらの機能を実現するソフトウェアプログラムをプロセッサにより実行するプロセッサベースのシステムの代わりに、またはプロセッサベースのシステムに加えて、半導体デバイス、チップ、論理ゲート、回路、回路カード、および/または他の物理ハードウェアデバイスにより一部または全部をハードウェアで実現されてもよい。また、ある態様として、攻撃生成モデル学習部340、攻撃画像生成部350とAIモデルロバスト性評価部360は、ソフトウェアプログラムの命令または記述以外のデータを含んでもよい。また、ある態様として、不図示のカメラ、センサ、または他のデータ入力デバイスが、バスインターフェース部309、プロセッサ302、またはコンピュータシステム300の他のハードウェアと直接通信するように提供されてもよい。攻撃生成モデル学習部340、攻撃画像生成部350、およびAIモデルロバスト性評価部360の詳細については図2、3、4を参照しながら後述する。
In one embodiment, the attack generation
コンピュータシステム300は、バスインターフェース部309を含んでもよい。バスインターフェース部309は、プロセッサ302、メモリ304、表示システム324、およびI/Oバスインターフェース部310間の通信を行う。I/Oバスインターフェース部310はI/Oバス308と接続されていてもよい。I/Oバス308にはデータの転送が可能なように様々な入出力部が接続されている。I/Oバスインターフェース部310は、I/Oバス308を介して、一般にI/Oプロセッサ(IOP)あるいはI/Oアダプタ(IOA)として知られる複数のI/Oインターフェース部(312,314,316、および318)と通信してもよい。
The
表示システム324は、表示装置326に画像を表示する処理を実行するシステムであり、不図示の表示コントローラと表示メモリの一方または両方を含んでもよい。表示コントローラは、ビデオとオーディオの両方のデータを表示装置326に提供することができる。表示システム324は、単独のディスプレイ画面、テレビ、タブレット、または携帯型デバイスなどの表示装置326に接続されてもよい。
また、コンピュータシステム300は、データを収集し、プロセッサ302に当該データを提供するように構成された1つまたは複数のセンサ等の不図示のデバイスを含んでもよい。例えば、コンピュータシステム300は、心拍数データやストレスレベルデータ等を収集するバイオメトリックセンサ、湿度データ、温度データ、圧力データ等を収集する環境センサと、加速度データ、運動データ等を収集するモーションセンサとを含んでもよい。これ以外の種類のセンサも使用可能である。
I/Oインターフェース部(312,314,316、および318)は、様々なストレージまたはI/Oデバイスと通信する機能を備える。例えば、端末インターフェース312は、ビデオ表示装置、スピーカテレビ等のユーザ出力デバイスや、キーボード、マウス、キーパッド、タッチパッド、トラックボール、ボタン、ライトペン、または他のポインティングデバイス等のユーザ入力デバイスのようなユーザI/Oデバイス320の取り付けが可能である。ユーザは、ユーザインターフェースを使用して、ユーザ入力デバイスを操作することで、ユーザI/Oデバイス320およびコンピュータシステム300に対して入力データや指示を入力し、コンピュータシステム300からの出力データを受け取ってもよい。ユーザインターフェースは例えば、ユーザI/Oデバイス320を介して、表示装置に表示されたり、スピーカによって再生されたり、プリンタを介して印刷されてもよい。
The I/O interface units (312, 314, 316, and 318) are capable of communicating with various storage or I/O devices. For example, the
ストレージインターフェース314は、1つまたは複数のディスクドライブや直接アクセスするストレージ装置322(通常は磁気ディスクドライブストレージ装置であるが、単一のディスクドライブとして見えるように構成されたディスクドライブのアレイまたは他のストレージ装置であってもよい)の取り付けが可能である。ひとつの態様として、ストレージ装置322は、任意の二次記憶装置として実装されてもよい。メモリ304の内容は、ストレージ装置322に記憶され、必要に応じてストレージ装置322から読み出されてもよい。I/Oデバイスインターフェース316は、プリンタ、ファックスマシン等の他のI/Oデバイスに対するインターフェースを提供してもよい。ネットワークインターフェース318は、コンピュータシステム300と他のデバイスが相互的に通信できるように、通信経路を提供してもよい。この通信経路は、例えば、ネットワーク330であってもよい。
The storage interface 314 may be attached to one or more disk drives or directly accessed storage devices 322 (usually magnetic disk drive storage devices, but may also be an array of disk drives or other storage devices configured to appear as a single disk drive). In one embodiment, the
ひとつの態様として、コンピュータシステム300は、マルチユーザメインフレームコンピュータシステム、シングルユーザシステム、またはサーバコンピュータ等の、直接的ユーザインターフェースを有しない、他のコンピュータシステム(クライアント)からの要求を受信するデバイスであってもよい。他の実施形態では、コンピュータシステム300は、デスクトップコンピュータ、携帯型コンピュータ、ノートパソコン、タブレットコンピュータ、ポケットコンピュータ、電話、スマートフォン、または任意の他の適切な電子機器であってもよい。
In one aspect,
次に、図2を参照して本実施形態に係る攻撃生成モデル学習部340について説明する。
Next, the attack generation
図2は、攻撃生成モデル学習部340のブロック図である。
Figure 2 is a block diagram of the attack generation
攻撃生成モデル学習部340は、攻撃エンコーダ103、ノイズ追加部105、ジェネレータ107、識別部110、損失算出部111、およびパラメータ更新部112を有している。
The attack generation
元画像101とクラス条件c 102が攻撃エンコーダ103に入力される。元画像101は、攻撃対象とするAIモデルの生成に用いられた学習データセット内の元の画像である。AIモデルは、画像からの物体検出あるいは画像の分類を行う推論モデルである。元画像101には、攻撃エンコーダに入力される前に、画像の反転、トリミング、回転などいくつかの処理を施してデータ拡張を行ってもよい。クラス条件c 102は、攻撃の対象とするクラスを示す情報である。以下、攻撃の対象とするクラスを対象クラスと呼ぶ場合がある。対象クラスは、すなわち、攻撃によってAIモデルが誤検出するクラスまたは誤った分類を行うクラスである。対象クラスは、AIモデルが画像を分類できる任意のクラスであってよいし、分類されない背景を示すクラスであってもよい。攻撃エンコーダ103は、元画像101を、攻撃エンベディングe 104と呼ばれる特徴ベクトルへとマッピングするCNN(畳み込みニューラルネットワーク)であり、元画像101の画像表現とクラス条件c 102と元画像101に適した攻撃戦略とをベクトルにエンコードする。攻撃エンコーダ103は、特に限定されないが、例えば、入力された元画像101およびクラス条件c 102に最も適した攻撃パターンの攻撃エンベディングe 104を生成する。最も適した攻撃パターンとはすなわち攻撃に成功する可能性が最も高い攻撃パターンである。
The
ノイズ追加部105は、攻撃エンコーダ103により生成された攻撃エンベディングe 104に複数のランダムノイズε 106をそれぞれ加える。ランダムノイズεは、一様分布またはガウス分布であってよいが、これらに限定されることはない。攻撃エンベディングe 104にそれぞれ異なるランダムノイズε 106が加えられた複数の攻撃エンベディングはジェネレータ107に入力される。
The
ジェネレータ107は、クラス条件c 102と複数の攻撃エンベディングとを入力として複数の攻撃画像G(e,c,ε) 108を生成し、複数の攻撃画像108をを識別部110に出力する。ジェネレータ107は、攻撃エンベディングを攻撃画像108にデコードするCNNである。
The
推論部109は、攻撃対象のAIモデルを備え、AIモデルを用いて画像からの物体検出あるいは画像の分類を行い、その検出あるいは分類の結果を取得する。以下、検出あるいは分類の結果を推論結果という場合がある。識別部110は、攻撃画像108と元画像101との識別を行い、識別の結果を取得する。識別は、人間の目で見た視覚的な区別を行うことである。以下、攻撃画像108と元画像101との識別の結果を識別結果という場合がある。
The
損失算出部111は、推論部109による推論結果および識別部110による識別結果に基づいて、攻撃画像108を評価するための損失を算出する。パラメータ更新部112は、損失算出部111で算出された損失を最適化するように攻撃エンコーダ103、ジェネレータ107、および識別部110のパラメータを更新する。損失算出部111による損失の算出およびパラメータ更新部112によるパラメータの更新の詳細について以下に述する。
The
攻撃画像108は、元画像101に多少の変更を加えたものとなるが、元画像101と全く異なる画像にすることは好ましくないため、元画像101と攻撃画像108の差分を適切な範囲に制限するために、式(1)のように損失Ldifを設計する。損失Ldif(第1の損失)は、元画像101と攻撃画像108の差分を適切な範囲Mに制限するための損失である。以下、損失Ldifを第1の損失という場合がある。
Although the
次に、ジェネレータ107と識別部110は、通常のGANのように、2プレーヤーによるミニマックス法のゲームで互いに競争することになる。識別部110は、元画像101と攻撃画像108を正しく識別しようとする。一方、ジェネレータ107は、よりリアルで高品質な攻撃画像108を生成して識別部110をだまそうとする。そのために、損失LGおよび損失LGANは、それぞれ以下の式(2)および式(3)に示すように設計される。以下、損失LGANを第2の損失という場合がある。
Next, the
次に、推論部109における攻撃画像108に対する物体検出あるいは画像の分類の推論結果から攻撃が成功したか否かを判定することができる。例えばAIモデルが分類タスクのモデルである場合、AIモデルが攻撃画像108をクラス条件cに示されている対象クラスに誤って分類したら攻撃は成功したと判断できる。また、AIモデルが検出タスクのモデルである場合、AIモデルが攻撃画像108から対象クラスの物体を誤って検出したら攻撃は成功したと判断できる。したがって、損失LAIは式(4)に示すように設計される。以下、損失LAIを第3の損失という場合がある。
Next, it can be determined whether the attack is successful or not from the inference result of object detection or image classification for the
次に、複数の攻撃画像G(e,c,ε)に対するAIモデルによる推論の結果AI(G(e,c,ε),c)から、複数の攻撃画像G(e,c,ε)のなかで攻撃の成功に最も近い攻撃画像G(e,c,ε+)が選択される。例えば、推論結果の精度に基づいて攻撃の成功に最も近い攻撃画像G(e,c,ε+)を選択してもよい。そして、より良い攻撃エンベディングeをエンコードするために攻撃エンコーダ103を更新する損失Leは、式(5)に示すように設計される。以下、損失Leを第4の損失という場合がある。
Next, from the result AI(G(e,c,ε),c) of inference by the AI model for the multiple attack images G(e,c,ε), the attack image G(e,c,ε+) that is closest to the successful attack among the multiple attack images G(e,c, ε ) is selected. For example, the attack image G(e,c,ε + ) that is closest to the successful attack may be selected based on the accuracy of the inference result. Then, the loss L e that updates the
損失算出部111は、それぞれ異なる重みを表すハイパーパラメータω1、ω2、ω3を用いて、上述した第1、2、3、4の損失の損失関数から、式(6)に示す総合的な損失Lを算出する。以下、損失Lを訓練損失という場合がある。
The
訓練損失を算出しパラメータを更新するという学習を所定の終了条件が満たされるまで複数回繰り返すと、攻撃エンコーダ103は、適切な攻撃エンベディングe 104をエンコードし、攻撃を成功させるように訓練される。終了条件として、例えば、推論結果の精度に閾値を設けてよいし、反復回数に上限を設けてもよい。そして、ジェネレータ107は、高品質でリアルな攻撃画像108を生成するように訓練される。また、識別部110は、実際の画像と生成された攻撃画像108を区別するように訓練される。このようにして訓練された攻撃エンコーダ103と訓練されたジェネレータ107は、攻撃画像生成部350で使用される。また、訓練された攻撃エンコーダ103、訓練されたジェネレータ107、および訓練された識別部110は、AIモデルロバスト性評価部360で使用される。
When the learning of calculating the training loss and updating the parameters is repeated multiple times until a predetermined termination condition is met, the
次に、図3を参照して、攻撃画像生成部350について説明する。
Next, the attack
図3は、攻撃画像生成部350のブロック図である。図3を参照すると、攻撃画像生成部350は、攻撃エンコーダ103とジェネレータ107を有している。
Figure 3 is a block diagram of the attack
攻撃エンコーダ103とジェネレータ107は、攻撃生成モデル学習部340にて訓練されたものである。元画像201は、攻撃画像204を生成する元の画像である。クラス条件c 202は、攻撃の対象クラスを示す情報である。クラス条件c 202の対象クラスは、攻撃生成モデル学習部340にて用いられたクラス条件c 102に示された対象クラスと同じであってもよい。攻撃エンコーダ103は、元画像201とクラス条件c 202に対して最適な攻撃エンベディングe 203をエンコードすることができる。ジェネレータ107は、その攻撃エンベディングe 203に基づいて高品質でリアルな攻撃画像204を生成することができる。
The
次に、図4を参照して、AIモデルロバスト性評価部360について説明する。
Next, the AI model
AIモデルを評価するには、まず訓練済みの攻撃エンコーダと訓練済みのジェネレータによって攻撃画像を生成し、生成された攻撃画像を評価対象のAIモデルに入力し、AIモデルから推論結果を取得する。一般には、推論結果の適合率や再現率などの精度が評価基準としてそのまま使用される。ただし、この評価方法による評価は、ジェネレータの能力に大きく依存する。つまり、ジェネレータがどれだけ好適に訓練されているかが評価結果に大きな影響を与える。ジェネレータのネットワーク内の全てのパラメータは訓練によって得ることが可能であるが、その訓練の反復回数は経験に基づいて人間によって決定される。したがって、ジェネレータをどれだけ好適に訓練することができるかは人間の経験や能力に依存してしまう。 To evaluate an AI model, first, an attack image is generated using a trained attack encoder and a trained generator, the generated attack image is input into the AI model to be evaluated, and an inference result is obtained from the AI model. In general, the accuracy of the inference result, such as the precision rate and recall rate, is used as the evaluation criterion. However, evaluation using this evaluation method is heavily dependent on the capabilities of the generator. In other words, how well the generator is trained has a significant impact on the evaluation results. All parameters in the generator network can be obtained through training, but the number of training iterations is determined by humans based on experience. Therefore, how well the generator can be trained depends on human experience and capabilities.
これに対して本実施形態では、ジェネレータの微調整(訓練)の反復回数をAIモデルのロバスト性の評価基準としている。具体的には、事前に訓練済みのジェネレータ107を使用して攻撃画像404を生成し、その攻撃画像404で攻撃に失敗した場合、攻撃に成功する攻撃画像404を生成できるようになるまでジェネレータ107の微調整(訓練)を繰り返す。そして、攻撃に成功するまでの微調整の反復回数がAIモデルの評価結果406として記録される。微調整の反復回数が多いほどAIモデルは攻撃を受けにいと言えるため、微調整の反復回数は、AIモデルがどのていど堅牢であるかを表すロバスト性の評価基準となる。
In contrast, in this embodiment, the number of iterations of fine-tuning (training) the generator is used as the evaluation criterion for the robustness of the AI model. Specifically, an
図4は、AIモデルロバスト性評価部360のブロック図である。図4を参照すると、AIモデルロバスト性評価部360は、攻撃エンコーダ103、ジェネレータ107、評価部405、識別部110、損失算出部407、およびパラメータ更新部408を有している。なお、AIモデルロバスト性評価部360には、ランダムノイズε 106を加えるノイズ追加部105に相当する機能はない。
Figure 4 is a block diagram of the AI model
元画像401は、評価に用いる攻撃画像404を生成する元の画像である。クラス条件c 402は、評価における攻撃の対象クラスを示す情報である。クラス条件c 402の対象クラスは、攻撃生成モデル学習部340にて用いられたクラス条件c 102に示された対象クラスと同じであってもよい。
The
攻撃エンコーダ103および識別部110は、攻撃生成モデル学習部340にて訓練されたものである。ジェネレータ107は、初期の状態においては攻撃生成モデル学習部340にて訓練されたものである。
The
損失算出部307は、重みを表すハイパーパラメータω1、ω2を用いて、上述した第1、2、3の損失の損失関数から、式(7)に示す微調整損失Lftを算出する。 The loss calculation unit 307 calculates the fine-tuning loss L ft shown in formula (7) from the loss functions of the first, second, and third losses described above, using the hyperparameters ω 1 and ω 2 representing weights.
評価部405は、評価対象のAIモデルを備え、AIモデルを用いて攻撃画像404からの物体検出あるいは攻撃画像404の分類を行い、その推論結果において攻撃が失敗していたら、攻撃が成功するまで損失算出部407およびパラメータ更新部408によるジェネレータ107の訓練とAIモデルによる推論結果の取得とを繰り返す。評価部405は、全ての元画像401を基にした攻撃画像404の評価を行った後、推論結果の平均精度と反復回数を算出し、評価結果406として出力する。
The
次に、図5を参照して、AIモデルロバスト性評価部360の動作の流れについて説明する。
Next, the operation flow of the AI model
図5は、AIモデルロバスト性評価部360の動作を示すフローチャートである。
Figure 5 is a flowchart showing the operation of the AI model
まず、AIモデルロバスト性評価部360に対して、評価用データセット内の元画像401とクラス条件402を含む必要な情報が入力される(ステップs11)。
First, the necessary information including the
次に、AIモデルロバスト性評価部360内では、攻撃エンコーダ103およびジェネレータ107が、与えられた元画像401がクラス条件402に示された対象クラスに誤検出あるいは誤分類されるような攻撃エンベディング403および攻撃画像404を生成する(ステップs12)。
Next, within the AI model
次に、評価部405は、生成された攻撃画像404をAIモデルに入力し、AIモデルによる推論結果を取得する(ステップs13)。そして、評価部405は、推論結果とクラス条件402に示された対象クラスとを比較して、攻撃の成否を判定する(ステップs14)。
Next, the
攻撃が成功していれば、評価部405は、推論結果を評価結果406に反映させる(ステップs15)。攻撃が失敗していたら、損失算出部407が、式(7)に基づいて微調整損失Lftを算出し(ステップs16)、パラメータ更新部408が、微調整損失Lftに基づいてジェネレータ107のパラメータを更新し(ステップs17)、反復回数のカウントを+1してステップs12に戻る。AIモデルロバスト性評価部360は、ステップs16、s17、s12、s13を一例の更新処理とし、攻撃が成功するまで更新処理を繰り返し、最終的に攻撃が成功していれば、評価部405は、推論結果と反復回数を評価結果406に反映させる(ステップs15)。
If the attack is successful, the
以上、本発明の実施形態について述べてきたが、本発明は、ここに示された実施形態だけに限定されるものではなく、本発明の技術思想の範囲内において、これらの実施形態を組み合わせて使用したり、一部の構成を変更したりしてもよい。また、上記実施形態の一部又は全部は以下の事項を含む。ただし、本発明が以下の事項に限定されるものではない。 Although the embodiments of the present invention have been described above, the present invention is not limited to the embodiments shown here, and these embodiments may be used in combination or some configurations may be changed within the scope of the technical concept of the present invention. In addition, some or all of the above embodiments include the following items. However, the present invention is not limited to the following items.
(事項1)
敵対的攻撃対策支援システムは、元画像から攻撃エンベディングをエンコードする攻撃エンコーダと、前記攻撃エンコーダから出力された前記攻撃エンベディングにランダムノイズを加えるノイズ追加部と、前記ランダムノイズが加えられた攻撃エンべディングを用いて推論モデルを攻撃するための攻撃画像を生成するジェネレータと、前記推論モデルを用いて前記攻撃画像に対する推論を行い、推論結果を取得する推論部と、前記攻撃画像と前記元画像との識別を行い、識別結果を算出する識別部と、前記推論結果および前記識別結果に基づいて前記攻撃画像を訓練するための損失である訓練損失を算出する損失算出部と、前記訓練損失に基づいて前記攻撃エンコーダ、前記ジェネレータ、および識別部を更新するパラメータ更新部と、を有する。
(Item 1)
The adversarial attack countermeasure support system includes an attack encoder that encodes an attack embedding from an original image, a noise adding unit that adds random noise to the attack embedding output from the attack encoder, a generator that generates an attack image for attacking an inference model using the attack embedding with the random noise added, an inference unit that performs inference on the attack image using the inference model and obtains an inference result, a discrimination unit that discriminates between the attack image and the original image and calculates the discrimination result, a loss calculation unit that calculates a training loss, which is a loss for training the attack image based on the inference result and the discrimination result, and a parameter update unit that updates the attack encoder, the generator, and the discrimination unit based on the training loss.
これによれば、ランダムノイズを加えた攻撃エンベディングを用いた攻撃画像による攻撃の評価に基づいて攻撃エンコーダおよびジェネレータのパラメータを更新し、攻撃画像を改善するので、多様な攻撃パターンの攻撃画像に対するAIモデルのロバスト性の評価を支援することが可能になる。 This allows the parameters of the attack encoder and generator to be updated based on the evaluation of attacks using attack images that use attack embeddings with added random noise, and improves the attack images, making it possible to assist in the evaluation of the robustness of AI models against attack images with a variety of attack patterns.
(事項2)
事項1に記載の敵対的攻撃対策支援システムにおいて、前記損失算出部は、前記元画像と前記攻撃画像の差分を所定範囲に制限しようとするための第1の損失を計算し、前記識別部が前記元画像と前記攻撃画像を正しく識別しようとし前記ジェネレータが前記元画像と前記攻撃画像を誤って識別させようとして敵対する第2の損失を計算し、前記推論モデルによる推論に対する攻撃が成功する可能性を高めようとするための第3の損失を計算し、前記攻撃が成功する可能性の高い攻撃画像のランダムノイズが加えられていない攻撃エンベディングとランダムノイズが加えられた攻撃エンベディングとの距離を小さくしようとするための第4の損失を計算し、前記第1の損失と前記第2の損失と前記第3の損失と前記第4の損失を所定の重みづけをして合計することにより前記訓練損失を計算する。
(Item 2)
In the adversarial attack countermeasure support system described in
これによれば、多様な攻撃パターンの攻撃画像に対するAIモデルのロバスト性の評価を支援することが可能になる。 This makes it possible to assist in evaluating the robustness of AI models against attack images with a variety of attack patterns.
(事項3)
事項2に記載の敵対的攻撃対策支援システムにおいて、前記損失算出部による前記訓練損失の算出と前記パラメータ更新部による前記攻撃エンコーダ、前記ジェネレータ、および識別部の更新を所定の終了条件が満たされるまで繰り返して得られた前記攻撃エンコーダおよび前記ジェネレータを用いて攻撃画像を生成する攻撃画像生成部を更に有する。これによれば、推論モデルの攻撃に成功する可能性の高い攻撃画像を生成することができる。
(Item 3)
The adversarial attack countermeasure support system according to item 2 further includes an attack image generation unit that generates an attack image using the attack encoder and the generator obtained by repeating the calculation of the training loss by the loss calculation unit and the update of the attack encoder, the generator, and the identification unit by the parameter update unit until a predetermined termination condition is satisfied. This makes it possible to generate an attack image that is likely to be successful in attacking an inference model.
(事項4)
事項3に記載の敵対的攻撃対策支援システムにおいて、前記攻撃画像生成部により生成された攻撃画像を前記推論モデルに入力して推論結果を取得し、前記攻撃画像と元画像との識別を行って識別結果を算出し、前記推論結果および前記識別結果に基づいて前記攻撃画像を微調整するための損失である微調整損失を算出し、前記推論結果にて攻撃が成功しなかった場合、前記微調整損失に基づいて前記ジェネレータを更新し、更新された前記ジェネレータを前記攻撃画像生成部に用いて生成した攻撃画像を前記推論モデルに入力して推論結果および識別結果を取得するという一連の更新処理を攻撃が成功するまで繰り返し、前記更新処理の反復回数を前記推論モデルの評価結果として出力するロバスト性評価部を更に有する。
(Item 4)
The adversarial attack countermeasure support system described in item 3 further includes a robustness evaluation unit that repeats a series of update processes, including inputting an attack image generated by the attack image generation unit to the inference model to obtain an inference result, identifying the attack image from an original image to calculate an identification result, calculating a fine-tuning loss that is a loss for fine-tuning the attack image based on the inference result and the identification result, updating the generator based on the fine-tuning loss if the attack is not successful based on the inference result, inputting an attack image generated using the updated generator to the attack image generation unit to the inference model to obtain an inference result and an identification result, until the attack is successful, and outputs the number of iterations of the update process as an evaluation result of the inference model.
これによれば、攻撃が成功するまでジェネレータの更新を繰り返しその反復回数を評価結果とするので、ジェネレータの能力に依存しない方法でロバスト性を評価することができる。 This allows the generator to be repeatedly updated until the attack is successful, and the number of iterations is used as the evaluation result, making it possible to evaluate robustness in a way that is not dependent on the capabilities of the generator.
(事項5)
事項4に記載の敵対的攻撃対策支援システムにおいて、前記ロバスト性評価部は、前記第1の損失と前記第2の損失と前記第3の損失を所定の重みづけをして合計することにより前記微調整損失を計算する。これによれば、適切な更新処理により推論モデルの攻撃が成功するまでの更新処理の反復回数により適切なロバスト性の評価が可能となる。
(Item 5)
In the adversarial attack countermeasure support system described in item 4, the robustness evaluation unit calculates the fine-tuning loss by summing the first loss, the second loss, and the third loss with a predetermined weighting. This makes it possible to appropriately evaluate robustness based on the number of iterations of the update process until an attack on an inference model is successful through an appropriate update process.
103…攻撃エンコーダ、105…ノイズ追加部、107…ジェネレータ、109…推論部、110…識別部、111…損失算出部、112…パラメータ更新部、300…コンピュータシステム、302…プロセッサ、304…メモリ、306…メモリバス、308…I/Oバス、309…バスインターフェース部、310…I/Oバスインターフェース部、312…端末インターフェース、314…ストレージインターフェース、316…I/Oデバイスインターフェース、316…デバイスインターフェース、318…ネットワークインターフェース、320…I/Oデバイス、322…ストレージ装置、324…表示システム、326…表示装置、330…ネットワーク、340…攻撃生成モデル学習部、350…攻撃画像生成部、360…AIモデルロバスト性評価部、405…評価部
406…評価結果、407…損失算出部、408…パラメータ更新部
103...attack encoder, 105...noise addition unit, 107...generator, 109...inference unit, 110...identification unit, 111...loss calculation unit, 112...parameter update unit, 300...computer system, 302...processor, 304...memory, 306...memory bus, 308...I/O bus, 309...bus interface unit, 310...I/O bus interface unit, 312...terminal interface, 314...storage interface, 316...I/O device interface, 316...device interface, 318...network interface, 320...I/O device, 322...storage device, 324...display system, 326...display device, 330...network, 340...attack generation model learning unit, 350...attack image generation unit, 360...AI model robustness evaluation unit, 405...
Claims (7)
前記攻撃エンコーダから出力された前記攻撃エンベディングにランダムノイズを加えるノイズ追加部と、
前記ランダムノイズが加えられた攻撃エンべディングを用いて推論モデルを攻撃するための攻撃画像を生成するジェネレータと、
前記推論モデルを用いて前記攻撃画像に対する推論を行い、推論結果を取得する推論部と、
前記攻撃画像と前記元画像との識別を行い、識別結果を算出する識別部と、
前記推論結果および前記識別結果に基づいて前記攻撃画像を訓練するための損失である訓練損失を算出する損失算出部と、
前記訓練損失に基づいて前記攻撃エンコーダ、前記ジェネレータ、および識別部を更新するパラメータ更新部と、
を有する敵対的攻撃対策支援システム。 an attack encoder that encodes an attack embedding from an original image;
a noise adding unit that adds random noise to the attack embedding output from the attack encoder;
A generator that generates an attack image for attacking an inference model using the attack embedding to which the random noise is added;
an inference unit that performs inference on the attack image using the inference model and obtains an inference result;
a classification unit that classifies the attack image and the original image and calculates a classification result;
a loss calculation unit that calculates a training loss, which is a loss for training the attack image, based on the inference result and the classification result;
a parameter updater that updates the attack encoder, the generator, and the discriminator based on the training loss;
A support system for countering hostile attacks.
前記元画像と前記攻撃画像の差分を所定範囲に制限しようとするための第1の損失を計算し、
前記識別部が前記元画像と前記攻撃画像を正しく識別しようとし前記ジェネレータが前記元画像と前記攻撃画像を誤って識別させようとして敵対する第2の損失を計算し、
前記推論モデルによる推論に対する攻撃が成功する可能性を高めようとするための第3の損失を計算し、
前記攻撃が成功する可能性の高い攻撃画像のランダムノイズが加えられていない攻撃エンベディングとランダムノイズが加えられた攻撃エンベディングとの距離を小さくしようとするための第4の損失を計算し、
前記第1の損失と前記第2の損失と前記第3の損失と前記第4の損失を所定の重みづけをして合計することにより前記訓練損失を計算する、
請求項1に記載の敵対的攻撃対策支援システム。 The loss calculation unit is
Calculating a first loss for limiting a difference between the original image and the attack image to a predetermined range;
Calculating a second loss in which the classifier tries to correctly classify the original image and the attack image and the generator tries to incorrectly classify the original image and the attack image;
Calculating a third loss to attempt to increase the likelihood of a successful attack against an inference by the inference model;
Calculating a fourth loss for reducing the distance between an attack embedding to which no random noise has been added and an attack embedding to which random noise has been added of the attack image to which the attack is likely to be successful;
calculating the training loss by summing the first loss, the second loss, the third loss, and the fourth loss with a predetermined weighting;
The hostile attack countermeasure support system according to claim 1 .
請求項2に記載の敵対的攻撃対策支援システム。 and an attack image generation unit that generates an attack image using the attack encoder and the generator obtained by repeating the calculation of the training loss by the loss calculation unit and the update of the attack encoder, the generator, and the discrimination unit by the parameter update unit until a predetermined termination condition is satisfied.
The hostile attack countermeasure support system according to claim 2.
請求項3に記載の敵対的攻撃対策支援システム。 a robustness evaluation unit that repeats a series of update processes, including inputting an attack image generated by the attack image generation unit into the inference model to obtain an inference result, discriminating between the attack image and an original image to calculate a discrimination result, calculating a fine-tuning loss, which is a loss for fine-tuning the attack image based on the inference result and the discrimination result, updating the generator based on the fine-tuning loss if the attack is not successful based on the inference result, inputting an attack image generated by the updated generator into the inference model to obtain an inference result and a discrimination result, until the attack is successful, and outputs the number of iterations of the update process as an evaluation result of the inference model.
The hostile attack countermeasure support system according to claim 3.
請求項4に記載の敵対的攻撃対策支援システム。 the robustness evaluation unit calculates the fine-tuning loss by summing the first loss, the second loss, and the third loss with a predetermined weighting;
The hostile attack countermeasure support system according to claim 4.
攻撃エンコーダにより元画像から攻撃エンベディングをエンコードし、
前記攻撃エンコーダから出力された前記攻撃エンベディングにランダムノイズを加え、
ジェネレータにより、前記ランダムノイズが加えられた攻撃エンべディングを用いて推論モデルを攻撃するための攻撃画像を生成し、
前記推論モデルを用いて前記攻撃画像に対する推論を行い、推論結果を取得し、
識別部により、前記攻撃画像と前記元画像との識別を行い、識別結果を算出し、
前記推論結果および前記識別結果に基づいて前記攻撃画像を訓練するための損失である訓練損失を算出し、
前記訓練損失に基づいて前記攻撃エンコーダ、前記ジェネレータ、および識別部を更新する、
敵対的攻撃対策支援方法。 The computer
The attack encoder encodes the attack embedding from the original image.
adding random noise to the attack embedding output from the attack encoder;
A generator generates an attack image for attacking the inference model using the attack embedding to which the random noise has been added;
Performing inference on the attack image using the inference model to obtain an inference result;
A discrimination unit discriminates between the attack image and the original image and calculates a discrimination result;
Calculating a training loss, which is a loss for training the attack image, based on the inference result and the classification result;
updating the attack encoder, the generator, and the discriminator based on the training loss;
A method for supporting countermeasures against adversarial attacks.
前記攻撃エンコーダから出力された前記攻撃エンベディングにランダムノイズを加え、
ジェネレータにより、前記ランダムノイズが加えられた攻撃エンべディングを用いて推論モデルを攻撃するための攻撃画像を生成し、
前記推論モデルを用いて前記攻撃画像に対する推論を行い、推論結果を取得し、
識別部により、前記攻撃画像と前記元画像との識別を行い、識別結果を算出し、
前記推論結果および前記識別結果に基づいて前記攻撃画像を訓練するための損失である訓練損失を算出し、
前記訓練損失に基づいて前記攻撃エンコーダ、前記ジェネレータ、および識別部を更新することを、
コンピュータに実行させるための敵対的攻撃対策支援プログラム。 The attack encoder encodes the attack embedding from the original image.
adding random noise to the attack embedding output from the attack encoder;
A generator generates an attack image for attacking the inference model using the attack embedding to which the random noise has been added;
Performing inference on the attack image using the inference model to obtain an inference result;
A discrimination unit discriminates between the attack image and the original image and calculates a discrimination result;
Calculating a training loss, which is a loss for training the attack image, based on the inference result and the classification result;
updating the attack encoder, the generator, and the discriminator based on the training loss.
A program to be executed by a computer to assist in countering hostile attacks.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023068791A JP2024154761A (en) | 2023-04-19 | 2023-04-19 | Adversarial attack countermeasure support system, method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023068791A JP2024154761A (en) | 2023-04-19 | 2023-04-19 | Adversarial attack countermeasure support system, method, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2024154761A true JP2024154761A (en) | 2024-10-31 |
Family
ID=93259449
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023068791A Pending JP2024154761A (en) | 2023-04-19 | 2023-04-19 | Adversarial attack countermeasure support system, method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2024154761A (en) |
-
2023
- 2023-04-19 JP JP2023068791A patent/JP2024154761A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113056743B (en) | Training a neural network for vehicle re-identification | |
CN111310802B (en) | Anti-attack defense training method based on generation of anti-network | |
US10938840B2 (en) | Neural network architectures employing interrelatedness | |
US20210256125A1 (en) | Post-Training Detection and Identification of Backdoor-Poisoning Attacks | |
Carlini et al. | Towards evaluating the robustness of neural networks | |
CN111242222B (en) | Classification model training method, image processing method and device | |
CN111475797A (en) | Method, device and equipment for generating confrontation image and readable storage medium | |
WO2023167817A1 (en) | Systems and methods of uncertainty-aware self-supervised-learning for malware and threat detection | |
CN108765340B (en) | Blurred image processing method, device and terminal device | |
US20250149058A1 (en) | Audio-Visual Separation of On-Screen Sounds Based on Machine Learning Models | |
CN106415594A (en) | A method and a system for face verification | |
US12093843B2 (en) | Inferencing and learning based on sensorimotor input data | |
CN113254927B (en) | Model processing method and device based on network defense and storage medium | |
WO2021144943A1 (en) | Control method, information processing device, and control program | |
CN113569611B (en) | Image processing method, device, computer equipment and storage medium | |
CN111160555A (en) | Processing method and device based on neural network and electronic equipment | |
CN114187483A (en) | Methods for generating adversarial samples, training methods for detectors, and related equipment | |
JP2019152964A (en) | Learning method and learning device | |
CN113505855A (en) | Training method for anti-attack model | |
CN115913643A (en) | Network intrusion detection method, system and medium based on countermeasure self-encoder | |
CN117940936A (en) | Method and apparatus for evaluating robustness against | |
KR20220120427A (en) | Method and apparatus for tracking object | |
Lee et al. | Reinforced adaboost learning for object detection with local pattern representations | |
JP7448087B2 (en) | Inference device, inference method, and program | |
JP2024154761A (en) | Adversarial attack countermeasure support system, method, and program |