JP7229308B2 - Methods and systems for defending against universal adversarial attacks on time series data - Google Patents

Methods and systems for defending against universal adversarial attacks on time series data Download PDF

Info

Publication number
JP7229308B2
JP7229308B2 JP2021118003A JP2021118003A JP7229308B2 JP 7229308 B2 JP7229308 B2 JP 7229308B2 JP 2021118003 A JP2021118003 A JP 2021118003A JP 2021118003 A JP2021118003 A JP 2021118003A JP 7229308 B2 JP7229308 B2 JP 7229308B2
Authority
JP
Japan
Prior art keywords
data
driven
models
adversarial
regime
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.)
Active
Application number
JP2021118003A
Other languages
Japanese (ja)
Other versions
JP2022019689A (en
Inventor
プラディープ・ラトール
アルグヤ・バサク
スリ・ハルシャ・ニスタラ
ヴェンカタラマナ・ルンカナ
Original Assignee
タタ・コンサルタンシー・サーヴィシズ・リミテッド
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by タタ・コンサルタンシー・サーヴィシズ・リミテッド filed Critical タタ・コンサルタンシー・サーヴィシズ・リミテッド
Publication of JP2022019689A publication Critical patent/JP2022019689A/en
Application granted granted Critical
Publication of JP7229308B2 publication Critical patent/JP7229308B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/034Test or assess a computer or a system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound

Description

関連出願の相互参照および優先権
本出願は、2020年7月17日に出願されたインド特許出願第202021030571号の優先権を主張する。
CROSS REFERENCE TO AND PRIORITY TO RELATED APPLICATIONS This application claims priority from Indian Patent Application No. 202021030571 filed on 17 July 2020.

本明細書の本開示は、一般に、サイバー物理セキュリティシステムに関し、より詳細には、時系列データに対する普遍的敵対的攻撃の影響を評価するためのおよびそのような攻撃から防御するための方法およびシステムに関する。 TECHNICAL FIELD The present disclosure herein relates generally to cyber-physical security systems, and more particularly to methods and systems for assessing the impact of and defending against universal adversarial attacks on time-series data. Regarding.

世界が自動化に移行するのに伴い、様々なプロセスおよびシステムを自動化する意図で広範囲の研究が行われている。自動化に関して言えば、機械学習は重要な側面である。機械学習技法は、様々なプロセスから取得されたデータの中のパターンを学習し、プロセスを表す1つまたは複数のデータモデルを生成する。そのようなデータモデルは実際のプロセスの動作をエミュレートし、したがって、限定はしないが、産業プロセスの最適化などの用途に使用される。しかしながら、そのようなデータに対する攻撃はデータセキュリティ問題を引き起こす。さらに、そのような攻撃はデータを破損することがあるので、最適化プロセスなどの他の用途に破損されたデータを使用することは意図された結果をもたらさないことがある。たとえば、ヘルスケア産業では、ECG信号は、様々な病気/異常などを診断するための、患者の健康状態を評価するために測定される重要なパラメータである。患者のための適切な治療は、そのような信号の分析に基づいて決定される。しかしながら、ECGデータが敵対的攻撃を使用する攻撃者によって破損された場合、識別された評価および治療は適切ではないことがあり、患者にとって致命傷となることがある。 As the world moves toward automation, extensive research is being conducted with the intention of automating various processes and systems. Machine learning is an important aspect when it comes to automation. Machine learning techniques learn patterns in data obtained from various processes and generate one or more data models that represent the processes. Such data models emulate the behavior of real processes and are therefore used for applications such as, but not limited to, industrial process optimization. However, attacks on such data pose data security problems. Moreover, such attacks can corrupt data, so using the corrupted data for other uses, such as optimization processes, may not have the intended result. For example, in the healthcare industry, ECG signals are important parameters that are measured to assess the health status of patients for diagnosing various diseases/disorders and the like. Appropriate therapy for the patient is determined based on analysis of such signals. However, if the ECG data is corrupted by an attacker using adversarial attacks, the identified assessment and treatment may not be adequate and may be fatal to the patient.

本開示の実施形態は、従来のシステムにおいて本発明者らによって認識される上述の技術的問題のうちの1つまたは複数に対する解決策としての技術改善を提示する。たとえば、1つの実施形態では、普遍的敵対的攻撃から防御するための、プロセッサによって実施される方法が提供される。1つまたは複数のハードウェアプロセッサを介して、複数のデータソースからのデータが入力として受信される。次いで、1つまたは複数のハードウェアプロセッサを介して、受信されたデータが前処理される。さらに、1つまたは複数のハードウェアプロセッサを介して、複数の第1のセットのデータ駆動型モデルからの少なくとも1つのデータ駆動型モデルの中の訓練データと比較して、前処理されたデータの中のドリフトが決定される。さらに、1つまたは複数のハードウェアプロセッサを介して、前処理されたデータと一致するレジームが識別される。さらに、1つまたは複数のハードウェアプロセッサを介して、複数の第1のセットのデータ駆動型モデルから、識別されたレジームと一致するデータ駆動型モデルが選択される。さらに、1つまたは複数のハードウェアプロセッサを介して、選択されたデータ駆動型モデルに対して1つまたは複数の普遍的敵対的攻撃が実行される。1つまたは複数の普遍的敵対的攻撃を実行することは、複数の反復において、普遍的敵対的摂動を計算することを伴う。普遍的敵対的摂動を計算することは、対応するデータサンプルに対して損失の勾配の方向に最適ステップを取ることによって、データから複数の第1のデータサンプルの各々に対する更新を計算することをさらに伴う。さらに、計算された更新は、普遍的敵対的摂動の以前の値に加えられる。次いで、計算された更新を加えた後に、普遍的敵対的摂動がクリップされる。普遍的敵対的摂動が計算されると、次のステップにおいて、1つまたは複数のハードウェアプロセッサを介して、1つまたは複数の普遍的敵対的攻撃を実行した後の選択されたデータ駆動型モデルのパフォーマンスが推定される。1つまたは複数の普遍的敵対的攻撃を実行した後の選択されたデータ駆動型モデルの推定されたパフォーマンスがパフォーマンスのしきい値未満である場合、1つまたは複数のハードウェアプロセッサを介して、選択されたデータ駆動型モデルが再訓練される。選択されたデータ駆動型モデルの再訓練は、第2のセットのデータ駆動型モデルからの生成モデルを含む複数のデータ拡張技法および複数の敵対的攻撃技法を使用して複数の第2のデータサンプルを生成することであって、複数の第2のデータサンプルが第1のデータサンプルの分布と同様の分布を有する、生成することをさらに伴い、さらなるステップにおいて、複数の第1のデータサンプルと複数の第2のデータサンプルとの組合せを使用して、選択されたデータ駆動型モデルが更新される。 Embodiments of the present disclosure present technical improvements as solutions to one or more of the above-described technical problems recognized by the inventors in conventional systems. For example, in one embodiment, a processor-implemented method for defending against universal adversarial attacks is provided. Data from multiple data sources are received as inputs via one or more hardware processors. The received data is then preprocessed via one or more hardware processors. further, comparing the preprocessed data with training data in at least one data-driven model from the plurality of first set of data-driven models via one or more hardware processors; drift is determined. Further, regimes are identified that match the preprocessed data via one or more hardware processors. Further, via one or more hardware processors, data-driven models consistent with the identified regime are selected from the plurality of first set of data-driven models. Additionally, one or more universal adversarial attacks are performed against the selected data-driven model via one or more hardware processors. Performing one or more universal adversarial attacks involves computing universal adversarial perturbations in multiple iterations. Computing the universally adversarial perturbation further comprises computing an update for each of the plurality of first data samples from the data by taking an optimal step in the direction of the gradient of the loss for the corresponding data sample. Accompany. Additionally, the computed update is added to the previous value of the universal adversarial perturbation. The universal adversarial perturbation is then clipped after applying the computed update. Once the universal adversarial perturbations have been computed, the next step is to generate the selected data-driven model after performing one or more universal adversarial attacks via one or more hardware processors. performance is estimated. via one or more hardware processors, if the estimated performance of the selected data-driven model after executing one or more universally adversarial attacks is below the performance threshold; The selected data-driven model is retrained. Retraining of the selected data-driven model is performed on multiple second data samples using multiple data augmentation techniques and multiple adversarial attack techniques including generative models from a second set of data-driven models. wherein the plurality of second data samples has a distribution similar to the distribution of the first data samples, and in a further step, the plurality of first data samples and the plurality of is used in combination with the second data sample to update the selected data-driven model.

別の態様では、普遍的敵対的攻撃から防御するためのシステムが提供される。本システムは、1つまたは複数のハードウェアプロセッサと、通信インターフェースと、複数の命令を含むメモリとを含む。複数の命令は、実行されると、1つまたは複数のハードウェアプロセッサに、複数のデータソースからのデータを入力として受信することを行わせる。次いで、1つまたは複数のハードウェアプロセッサを介して、受信されたデータが前処理される。さらに、1つまたは複数のハードウェアプロセッサを介して、複数の第1のセットのデータ駆動型モデルからの少なくとも1つのデータ駆動型モデルの中の訓練データと比較して、前処理されたデータの中のドリフトが決定される。さらに、1つまたは複数のハードウェアプロセッサを介して、前処理されたデータと一致するレジームが識別される。さらに、1つまたは複数のハードウェアプロセッサを介して、複数の第1のセットのデータ駆動型モデルから、識別されたレジームと一致するデータ駆動型モデルが選択される。さらに、1つまたは複数のハードウェアプロセッサを介して、選択されたデータ駆動型モデルに対して1つまたは複数の普遍的敵対的攻撃が実行される。1つまたは複数の普遍的敵対的攻撃を実行することは、複数の反復において、普遍的敵対的摂動を計算することを伴う。普遍的敵対的摂動を計算することは、対応するデータサンプルに対して損失の勾配の方向に最適ステップを取ることによって、データから複数の第1のデータサンプルの各々に対する更新を計算することをさらに伴う。さらに、計算された更新は、普遍的敵対的摂動の以前の値に加えられる。次いで、計算された更新を加えた後に、普遍的敵対的摂動がクリップされる。普遍的敵対的摂動が計算されると、次のステップにおいて、1つまたは複数のハードウェアプロセッサを介して、1つまたは複数の普遍的敵対的攻撃を実行した後の選択されたデータ駆動型モデルのパフォーマンスが推定される。1つまたは複数の普遍的敵対的攻撃を実行した後の選択されたデータ駆動型モデルの推定されたパフォーマンスがパフォーマンスのしきい値未満である場合、1つまたは複数のハードウェアプロセッサを介して、選択されたデータ駆動型モデルが再訓練される。選択されたデータ駆動型モデルの再訓練は、第2のセットのデータ駆動型モデルからの生成モデルを含む複数のデータ拡張技法および複数の敵対的攻撃技法を使用して複数の第2のデータサンプルを生成することであって、複数の第2のデータサンプルが第1のデータサンプルの分布と同様の分布を有する、生成することをさらに伴い、さらなるステップにおいて、複数の第1のデータサンプルと複数の第2のデータサンプルとの組合せを使用して、選択されたデータ駆動型モデルが更新される。 In another aspect, a system is provided for defending against universal adversarial attacks. The system includes one or more hardware processors, a communication interface, and a memory containing instructions. The instructions, when executed, cause one or more hardware processors to receive data from multiple data sources as inputs. The received data is then preprocessed via one or more hardware processors. further, comparing the preprocessed data with training data in at least one data-driven model from the plurality of first set of data-driven models via one or more hardware processors; drift is determined. Further, regimes are identified that match the preprocessed data via one or more hardware processors. Further, via one or more hardware processors, data-driven models consistent with the identified regime are selected from the plurality of first set of data-driven models. Additionally, one or more universal adversarial attacks are performed against the selected data-driven model via one or more hardware processors. Performing one or more universal adversarial attacks involves computing universal adversarial perturbations in multiple iterations. Computing the universally adversarial perturbation further comprises computing an update for each of the plurality of first data samples from the data by taking an optimal step in the direction of the gradient of the loss for the corresponding data sample. Accompany. Additionally, the computed update is added to the previous value of the universal adversarial perturbation. The universal adversarial perturbation is then clipped after applying the computed update. Once the universal adversarial perturbations have been computed, the next step is to generate the selected data-driven model after performing one or more universal adversarial attacks via one or more hardware processors. performance is estimated. via one or more hardware processors, if the estimated performance of the selected data-driven model after executing one or more universally adversarial attacks is below the performance threshold; The selected data-driven model is retrained. Retraining of the selected data-driven model is performed on multiple second data samples using multiple data augmentation techniques and multiple adversarial attack techniques including generative models from a second set of data-driven models. wherein the plurality of second data samples has a distribution similar to the distribution of the first data samples, and in a further step, the plurality of first data samples and the plurality of is used in combination with the second data sample to update the selected data-driven model.

さらに別の態様では、普遍的敵対的攻撃から防御するための非一時的コンピュータ可読記憶媒体が提供される。非一時的コンピュータ可読記憶媒体は複数の命令を含み、複数の命令は、実行されると、1つまたは複数のハードウェアプロセッサに、本明細書で詳述される手法を使用して普遍的敵対的攻撃から防御することを行わせる。1つまたは複数のハードウェアプロセッサを介して、複数のデータソースからのデータが入力として受信される。次いで、1つまたは複数のハードウェアプロセッサを介して、受信されたデータが前処理される。さらに、1つまたは複数のハードウェアプロセッサを介して、複数の第1のセットのデータ駆動型モデルからの少なくとも1つのデータ駆動型モデルの中の訓練データと比較して、前処理されたデータの中のドリフトが決定される。さらに、1つまたは複数のハードウェアプロセッサを介して、前処理されたデータと一致するレジームが識別される。さらに、1つまたは複数のハードウェアプロセッサを介して、複数の第1のセットのデータ駆動型モデルから、識別されたレジームと一致するデータ駆動型モデルが選択される。さらに、1つまたは複数のハードウェアプロセッサを介して、選択されたデータ駆動型モデルに対して1つまたは複数の普遍的敵対的攻撃が実行される。1つまたは複数の普遍的敵対的攻撃を実行することは、複数の反復において、普遍的敵対的摂動を計算することを伴う。普遍的敵対的摂動を計算することは、対応するデータサンプルに対して損失の勾配の方向に最適ステップを取ることによって、データから複数の第1のデータサンプルの各々に対する更新を計算することをさらに伴う。さらに、計算された更新は、普遍的敵対的摂動の以前の値に加えられる。次いで、計算された更新を加えた後に、普遍的敵対的摂動がクリップされる。普遍的敵対的摂動が計算されると、次のステップにおいて、1つまたは複数のハードウェアプロセッサを介して、1つまたは複数の普遍的敵対的攻撃を実行した後の選択されたデータ駆動型モデルのパフォーマンスが推定される。1つまたは複数の普遍的敵対的攻撃を実行した後の選択されたデータ駆動型モデルの推定されたパフォーマンスがパフォーマンスのしきい値未満である場合、1つまたは複数のハードウェアプロセッサを介して、選択されたデータ駆動型モデルが再訓練される。選択されたデータ駆動型モデルの再訓練は、第2のセットのデータ駆動型モデルからの生成モデルを含む複数のデータ拡張技法および複数の敵対的攻撃技法を使用して複数の第2のデータサンプルを生成することであって、複数の第2のデータサンプルが第1のデータサンプルの分布と同様の分布を有する、生成することをさらに伴い、さらなるステップにおいて、複数の第1のデータサンプルと複数の第2のデータサンプルとの組合せを使用して、選択されたデータ駆動型モデルが更新される。 In yet another aspect, a non-transitory computer-readable storage medium for defending against universal adversarial attacks is provided. A non-transitory computer-readable storage medium includes a plurality of instructions that, when executed, direct one or more hardware processors to a universal host using techniques detailed herein. to defend against physical attacks. Data from multiple data sources are received as inputs via one or more hardware processors. The received data is then preprocessed via one or more hardware processors. further, comparing the preprocessed data with training data in at least one data-driven model from the plurality of first set of data-driven models via one or more hardware processors; drift is determined. Further, regimes are identified that match the preprocessed data via one or more hardware processors. Further, via one or more hardware processors, data-driven models consistent with the identified regime are selected from the plurality of first set of data-driven models. Additionally, one or more universal adversarial attacks are performed against the selected data-driven model via one or more hardware processors. Performing one or more universal adversarial attacks involves computing universal adversarial perturbations in multiple iterations. Computing the universally adversarial perturbation further comprises computing an update for each of the plurality of first data samples from the data by taking an optimal step in the direction of the gradient of the loss for the corresponding data sample. Accompany. Additionally, the computed update is added to the previous value of the universal adversarial perturbation. The universal adversarial perturbation is then clipped after applying the computed update. Once the universal adversarial perturbations have been computed, the next step is to generate the selected data-driven model after performing one or more universal adversarial attacks via one or more hardware processors. performance is estimated. via one or more hardware processors, if the estimated performance of the selected data-driven model after executing one or more universally adversarial attacks is below the performance threshold; The selected data-driven model is retrained. Retraining of the selected data-driven model is performed on multiple second data samples using multiple data augmentation techniques and multiple adversarial attack techniques including generative models from a second set of data-driven models. wherein the plurality of second data samples has a distribution similar to the distribution of the first data samples, and in a further step, the plurality of first data samples and the plurality of is used in combination with the second data sample to update the selected data-driven model.

上記の全般的な説明と以下の詳細な説明の両方は例示的かつ説明的なものにすぎず、特許請求されるように本発明を限定するものではないことを理解されたい。 It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention, as claimed.

本開示に組み込まれ、本開示の一部を構成する添付の図面は、例示的な実施形態を示し、本明細書とともに、開示される原則を説明するのに役立つ。 The accompanying drawings, which are incorporated in and constitute a part of this disclosure, illustrate exemplary embodiments and, together with the description, serve to explain the principles disclosed.

本開示のいくつかの実施形態による、普遍的敵対的攻撃から防御するための例示的なシステムを示す図である。1 illustrates an exemplary system for defending against universal adversarial attacks, according to some embodiments of the present disclosure; FIG. 本開示のいくつかの実施形態による、図1のシステムによる、普遍的敵対的攻撃から防御するプロセスに関与するステップを示す流れ図である(図2Bとまとめて図2と呼ばれる)。2B is a flow diagram illustrating the steps involved in the process of defending against a universally adversarial attack by the system of FIG. 1, according to some embodiments of the present disclosure (collectively referred to as FIG. 2B). 本開示のいくつかの実施形態による、図1のシステムによる、普遍的敵対的攻撃から防御するプロセスに関与するステップを示す流れ図である(図2Aとまとめて図2と呼ばれる)。2A is a flow diagram illustrating the steps involved in the process of defending against universal adversarial attacks by the system of FIG. 1, according to some embodiments of the present disclosure (collectively referred to as FIG. 2A); 本開示のいくつかの実施形態による、図1のシステムによる、各データ点における普遍的敵対的摂動更新を計算するプロセスに関与するステップを示す流れ図である。2 is a flow diagram showing the steps involved in the process of computing universal adversarial perturbation updates at each data point by the system of FIG. 1, according to some embodiments of the present disclosure; 本開示のいくつかの実施形態による、普遍的敵対的攻撃から防御するための産業プラント環境の中の図1のシステムの例示的な実装形態を示す図である。1 illustrates an exemplary implementation of the system of FIG. 1 within an industrial plant environment for defending against universal adversarial attacks, according to some embodiments of the present disclosure; FIG.

例示的な実施形態は、添付の図面を参照して説明される。図では、参照番号の一番左の数字は、その参照番号が最初に登場する図を識別する。便宜的である場合には、同じまたは同様の部品を指すために、図面全体を通じて同じ参照番号が使用される。開示される原則の例および特徴が本明細書で説明されるが、開示される実施形態の範囲から逸脱することなく、修正形態、適応形態、および他の実装形態が可能である。以下の詳細な説明は例示的なものにすぎないと見なされ、真の範囲は以下の特許請求の範囲によって示されることが意図されている。 Exemplary embodiments are described with reference to the accompanying drawings. In the figures, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. Where convenient, the same reference numbers will be used throughout the drawings to refer to the same or like parts. Although examples and features of the disclosed principles are described herein, modifications, adaptations, and other implementations are possible without departing from the scope of the disclosed embodiments. It is intended that the following detailed description be considered as exemplary only, with a true scope being indicated by the following claims.

用語集:
本明細書の方法およびシステムによって対処される時系列データ分類問題の数学的定義が以下で与えられる。
Xi∈RTはデータセットXのi番目のサンプルであり、Tはサンプルのシーケンス長である
Yi∈[0,K-1]、ここで、Yiはi番目のサンプルの真のクラスである
KはXの一意のクラスの数である

Figure 0007229308000001
はXiに対応する敵対的サンプルである
Figure 0007229308000002
は攻撃者がモデルに予測してほしいXiに対応する標的クラスである
εmax∈RはXに対する許容される摂動のLノルムの上界である
Figure 0007229308000003
はXiに対する許容される摂動のLノルムの上界である
f(.):RT→RKは任意のデータ駆動型モデルである
Figure 0007229308000004
はXiに対応するf(.)によって予測されるクラスである
Figure 0007229308000005
はそれぞれ、非標的型攻撃および標的型攻撃に対する、サンプルXi、データ駆動型モデルf(.)に対応する損失である
NはBIM(基本反復法(Basic Iterative Method))におけるステップの数である
α∈RはBIMの小さいステップサイズである
Rfooling∈Rは所望のフーリング比、すなわち、所与のデータセットからのだまされたサンプルの割合である
EpochfoolはRfoolingを達成するために実行すべきエポックの最大数である
U∈RTはデータセットXに対する普遍的敵対的摂動である
Figure 0007229308000006
はFGSM(高速勾配符号法(Fast Gradient Sign Method))を使用したXiに対応する敵対的サンプルである
Error(.):はデータセットの誤分類エラー比を計算する。 Glossary:
A mathematical definition of the time series data classification problem addressed by the methods and systems herein is given below.
X i ∈R T is the i-th sample of dataset X and T is the sequence length of samples
Y i ∈[0,K-1], where Y i is the true class of the ith sample
K is the number of unique classes in X
Figure 0007229308000001
is the adversarial sample corresponding to Xi
Figure 0007229308000002
is the target class corresponding to X i that the attacker wants the model to predict ε max ∈R is the upper bound on the L norm of the permissible perturbations on X
Figure 0007229308000003
is an upper bound on the L norm of permissible perturbations on Xi
f(.):R T →R K is any data-driven model
Figure 0007229308000004
is the class predicted by f(.) corresponding to Xi
Figure 0007229308000005
are the losses corresponding to sample X i , data-driven model f(.) for untargeted and targeted attacks, respectively
N is the number of steps in BIM (Basic Iterative Method) α∈R is the small step size of BIM
R fooling ∈ R is the desired fooling ratio, i.e. the fraction of fooled samples from a given dataset
Epoch fool is the maximum number of epochs to run to achieve R fooling
U∈R T is a universally adversarial perturbation on dataset X
Figure 0007229308000006
is the adversarial sample corresponding to X i using FGSM (Fast Gradient Sign Method)
Error(.): computes the misclassification error ratio of the dataset.

次に図面を、より具体的には、同様の参照符号が対応する特徴を図全体を通して一貫して示している図1~図4を参照すると、好ましい実施形態が示されており、これらの実施形態は、以下の例示的なシステムおよび/または方法の文脈で説明される。 Referring now to the drawings, and more particularly to FIGS. 1-4, wherein like reference numerals indicate corresponding features throughout the figures, preferred embodiments are shown and these implementations are shown. Aspects are described in the context of exemplary systems and/or methods below.

図1は、本開示のいくつかの実施形態による、普遍的敵対的攻撃から防御するための例示的なシステム(100)を示す。図1は、本開示のいくつかの実施形態による、実験の設計および実行のための例示的なシステムを示す。一実施形態では、システム100は、プロセッサ104と、代替として入力/出力(I/O)インターフェース106と呼ばれる通信インターフェースデバイスと、プロセッサ104に動作可能に結合された1つもしくは複数のデータ記憶デバイスまたはメモリ102とを含む。一実施形態では、プロセッサ104は1つまたは複数のハードウェアプロセッサ(104)であり得る。一実施形態では、1つまたは複数のハードウェアプロセッサ(104)は、1つまたは複数のマイクロプロセッサ、マイクロコンピュータ、マイクロコントローラ、デジタル信号プロセッサ、中央処理ユニット、状態機械、論理回路、および/または動作命令に基づいて信号を操作する任意のデバイスとして実装され得る。数ある能力の中でも、プロセッサ104は、メモリ102に記憶されたコンピュータ可読命令をフェッチし、実行するように構成される。一実施形態では、システム100は、ラップトップコンピュータ、ノートブック、ハンドヘルドデバイス、ワークステーション、メインフレームコンピュータ、サーバ、ネットワーククラウドなどの様々なコンピューティングシステムにおいて実装され得る。 FIG. 1 shows an exemplary system (100) for defending against universal adversarial attacks, according to some embodiments of the present disclosure. FIG. 1 illustrates an exemplary system for experimental design and execution, according to some embodiments of the present disclosure. In one embodiment, the system 100 includes a processor 104, a communication interface device, alternatively referred to as an input/output (I/O) interface 106, and one or more data storage devices operably coupled to the processor 104 or and memory 102 . In one embodiment, processor 104 may be one or more hardware processors (104). In one embodiment, the one or more hardware processors (104) comprise one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuits, and/or operational It can be implemented as any device that manipulates signals based on instructions. Among other capabilities, processor 104 is configured to fetch and execute computer readable instructions stored in memory 102 . In one embodiment, system 100 may be implemented in various computing systems such as laptop computers, notebooks, handheld devices, workstations, mainframe computers, servers, network clouds, and the like.

I/Oインターフェース106は、様々なソフトウェアインターフェースおよびハードウェアインターフェース、たとえば、ウェブインターフェース、グラフィカルユーザインターフェース(GUI)などを含むことができ、ワイヤードネットワーク、たとえば、LAN、ケーブルなどと、WLAN、セルラー、または衛星などのワイヤレスネットワークとを含む、多種多様なネットワークN/Wおよびプロトコルタイプ内の複数の通信を容易にすることができる。一実施形態では、I/Oインターフェース106は、いくつかのデバイスを互いにまたは別のサーバに接続するための1つまたは複数のポートを含むことができる。たとえば、I/Oインターフェース106は、許可されたユーザがGUIを通じて本明細書で開示されるシステムにアクセスし、1つまたは複数の他の同様のシステム100と通信することを可能にする。 The I/O interface 106 can include a variety of software and hardware interfaces, such as web interfaces, graphical user interfaces (GUIs), etc., and wired networks, such as LAN, cable, etc. and WLAN, cellular, or Multiple communications within a wide variety of network N/W and protocol types can be facilitated, including wireless networks such as satellites. In one embodiment, I/O interface 106 may include one or more ports for connecting several devices to each other or to another server. For example, I/O interface 106 allows authorized users to access the system disclosed herein through a GUI and communicate with one or more other similar systems 100 .

メモリ102は、たとえば、スタティックランダムアクセスメモリ(SRAM)およびダイナミックランダムアクセスメモリ(DRAM)などの揮発性メモリ、ならびに/または読取り専用メモリ(ROM)、消去可能プログラマブルROM、フラッシュメモリ、ハードディスク、光ディスク、および磁気テープなどの不揮発性メモリを含む、当技術分野で知られている任意のコンピュータ可読記憶媒体を含み得る。したがって、メモリ102は、システム100のプロセッサ104によって実行される各ステップの入力/出力および本開示の方法に関連する情報を含み得る。システム100による、普遍的敵対的攻撃から防御するプロセスに関与する様々なステップが図2A~図3に示されており、システム100の構成要素を参照して以下で説明される。 Memory 102 may be, for example, volatile memory such as static random access memory (SRAM) and dynamic random access memory (DRAM), and/or read only memory (ROM), erasable programmable ROM, flash memory, hard disks, optical disks, and/or May include any computer-readable storage medium known in the art, including non-volatile memory such as magnetic tape. Thus, memory 102 may contain information related to the inputs/outputs of each step performed by processor 104 of system 100 and the methods of the present disclosure. The various steps involved in the process of defending against universal adversarial attacks by system 100 are illustrated in FIGS. 2A-3 and described below with reference to the components of system 100. FIG.

図2Aおよび図2B(まとめて図2と呼ばれる)は、本開示のいくつかの実施形態による、図1のシステムによる、普遍的敵対的攻撃から防御するプロセスに関与するステップを示す流れ図である。 2A and 2B (collectively referred to as FIG. 2) are flow diagrams illustrating the steps involved in the process of defending against universal adversarial attacks by the system of FIG. 1, according to some embodiments of the present disclosure.

システム100は、入力として収集された時系列データに対して標的型攻撃、非標的型攻撃および普遍的敵対的攻撃を実行する。システム100はまた、標的型攻撃、非標的型攻撃および普遍的敵対的攻撃に応答して1つまたは複数のデータ駆動型モデルの再訓練を実行するように構成される。このプロセスを説明するために、産業プラント環境の中のシステム100の動作が考慮され、そのような環境では、システム100は図4に示すように実装され得る。しかしながら、システム100は、図2および図3に示される手法に従うことによって、攻撃、ならびに任意の他のアプリケーション/環境からのデータに対する標的型攻撃、非標的型攻撃および普遍的敵対的攻撃の軽減を実行するように構成され得、そのようなシナリオでは、システム100はそれに応じて要件通りに実装され得ることに留意されたい。図4に示される様々なデータ処理モジュールは、1つまたは複数のハードウェアプロセッサ104の実装形態であり得る。 The system 100 performs targeted attacks, untargeted attacks, and universal adversarial attacks on time-series data collected as input. System 100 is also configured to perform retraining of one or more data-driven models in response to targeted, untargeted, and universally adversarial attacks. To describe this process, the operation of system 100 within an industrial plant environment is considered, in which environment system 100 may be implemented as shown in FIG. However, the system 100 mitigates targeted, untargeted, and universally adversarial attacks against attacks, as well as data from any other application/environment, by following the techniques shown in FIGS. It should be noted that the system 100 may be configured to do so, and in such scenarios the system 100 may be implemented accordingly. The various data processing modules shown in FIG. 4 may be one or more hardware processor 104 implementations.

このプロセスでは、ステップ202において、システム100は、通信インターフェース106を介して、1つまたは複数のデータソースからのデータを入力として受信する。様々な実施形態では、データはリアルタイムデータならびに非リアルタイムデータであり得る。たとえば、システム100が産業プラントからのデータに対する標的型攻撃、非標的型攻撃および普遍的敵対的攻撃の識別を実行するために使用される場合、様々なプロセスパラメータ(たとえば、温度、圧力、流量、レベル、特定の材料の量など)の値がリアルタイム入力として収集されるが、実験室で測定または試験されるパラメータなどのリアルタイムで入手できないパラメータに関する情報(たとえば、使用される物質/材料の化学組成)は非リアルタイム入力/データとして収集される。 In this process, at step 202 the system 100 receives data from one or more data sources as input via the communication interface 106 . In various embodiments, the data can be real-time data as well as non-real-time data. For example, if the system 100 is used to perform targeted, non-targeted, and universally adversarial attack identification on data from an industrial plant, various process parameters (e.g., temperature, pressure, flow, levels, amounts of a particular material, etc.) are collected as real-time inputs, but information about parameters not available in real time, such as parameters measured or tested in the laboratory (e.g. chemical composition of substances/materials used). ) are collected as non-real-time inputs/data.

次いで、システム100は、ステップ204において、データ前処理モジュール401を使用して、受信された入力データを前処理する。データを前処理することは、限定はしないが「範囲外検出」などの1つまたは複数の単変量方法および多変量方法を使用した外れ値の識別および除去を伴い、その後に、システム100による補完、ならびに1つまたは複数のデータソースからの複数の変数の同期および統合が続く。前処理段階の間、システム100はまた、実際的な制限により物理センサを使用して測定することができないパラメータを推定するために、ソフトセンサ推定モジュール402の中の1つまたは複数のソフトセンサと対話し得る。ソフトセンサは、必要な特徴と、必要に応じて、導出された特徴の値とを導出することができる、物理学ベースのモデルおよびデータ駆動型モデルを含む。次いで、前処理されたデータならびにソフトセンサデータ(すなわち、ソフトセンサを使用して導出されたデータ)は、さらなる処理のためにメモリ102の中の適切なデータベースに記憶される。説明のために、データベースに記憶される前処理されたデータおよびソフトセンサデータは、まとめて「前処理されたデータ」と呼ばれる。 The system 100 then preprocesses the received input data using the data preprocessing module 401 at step 204 . Preprocessing the data involves identifying and removing outliers using one or more univariate and multivariate methods such as, but not limited to, "out-of-range detection", followed by imputation by the system 100. , and followed by synchronization and integration of multiple variables from one or more data sources. During the preprocessing stage, system 100 also uses one or more soft sensors in soft sensor estimation module 402 to estimate parameters that cannot be measured using physical sensors due to practical limitations. can interact. Soft sensors include physics-based and data-driven models that can derive required features and, optionally, derived feature values. The preprocessed data as well as the soft sensor data (ie, data derived using the soft sensors) are then stored in a suitable database within memory 102 for further processing. For purposes of explanation, the preprocessed data and soft sensor data stored in the database are collectively referred to as "preprocessed data."

さらに、システム100は、ステップ206において、ドリフト検出モジュール403を使用して、複数の第1のセットのデータ駆動型モデルからの少なくとも1つのデータ駆動型モデルの中の訓練データと比較して、前処理されたデータの中の任意のドリフトを決定する。この文脈における「訓練データ」という用語は、異なるプロセスパラメータの値に換算したプラント運用およびパフォーマンスの参照データを指し、プラントの予想された/意図されたパフォーマンスである。この文脈における「ドリフト」という用語は、訓練データからの前処理されたデータの逸脱を指し、プラントのパフォーマンスおよび動作パラメータが1つまたは複数の予想されたレベルと一致しないことを示す。システム100のドリフト検出モジュールは、限定はしないが、深層学習ベースのエンコーダ-デコーダ、分離フォレスト、主成分分析および1クラスサポートベクターマシンなどの1つまたは複数の適切な多変量外れ値およびドリフト検出方法を使用して前処理されたデータを分析することによって、ドリフトを決定する。システム100は、前処理されたデータを直接、または前処理されたデータを変換した後に処理し得、ドリフトが検出された場合、システム100はデータをアーカイブし得る。一実施形態では、システム100は、アーカイブされるデータのラベリングを実行し得る。システム100はまた、許可されたユーザがシステム100にアクセスするためのインターフェースを提供し、データのラベリングを支援するための1つまたは複数の入力を提供し得る。システム100によって処理されるデータは、1つまたは複数のレジームに属し得る。一実施形態では、少なくとも1つのデータ駆動型モデルセットはレジームごとに生成され、メモリ102の中のデータベースに記憶される。各データ駆動型モデルセットは、第1のセットのデータ駆動型モデルおよび第2のセットのデータ駆動型モデルをさらに含む。第1のセットのデータ駆動型モデルの中の各データ駆動型モデルは、回帰および分類などの少なくとも1つの時系列モデリングタスクを実行するように訓練される。第1のセットのデータ駆動型モデルは、限定はしないが、回帰のバリアント(多重線形回帰、ステップワイズ回帰、前方回帰、後方回帰、部分的最小二乗回帰、主成分回帰、ガウス過程回帰、多項式回帰など)、決定木およびそのバリアント(ランダムフォレスト、バギング、ブースティング、ブートストラッピング)、サポートベクター回帰、k近傍回帰、スプラインフィッティングまたはそのバリアント(たとえば、多適応的回帰スプライン)、人工ニューラルネットワークおよびそのバリアント(多層パーセプトロン、再帰型ニューラルネットワークおよびそのバリアント、たとえば、長短期記憶ネットワーク、ならびに畳み込みニューラルネットワーク)ならびに時系列回帰モデルなどの統計技法、機械学習技法および深層学習技法を使用して構築され得る。さらに、第1のセットのデータ駆動型モデルは、統計ベース、機械学習ベースまたは深層学習ベースの1クラスまたは多クラス分類、主成分分析などのスコアリングモデルまたは診断モデル、マハラノビス距離、分離フォレスト、ランダムフォレスト分類器、1クラスサポートベクターマシン、人工ニューラルネットワークおよびそのバリアント、楕円エンベロープならびにオートエンコーダ(たとえば、デンスオートエンコーダ、LSTMオートエンコーダ)も含む。第2のセットのデータ駆動型モデルの中の各データ駆動型モデルは、レジームについてのデータの分布を学習し、その分布が対応するレジームの訓練データの分布と一致するデータサンプルを生成する、敵対的生成ネットワークベースの生成モデルである。 Further, the system 100, at step 206, uses the drift detection module 403 to compare the training data in the at least one data-driven model from the plurality of first set of data-driven models to compare the previous Determine any drift in the processed data. The term "training data" in this context refers to reference data of plant operation and performance in terms of values for different process parameters, which are the expected/intended performance of the plant. The term "drift" in this context refers to the deviation of preprocessed data from the training data, indicating that plant performance and operating parameters do not match one or more expected levels. The drift detection module of system 100 includes one or more suitable multivariate outlier and drift detection methods such as, but not limited to, deep learning-based encoder-decoders, segregation forests, principal component analysis and one-class support vector machines. Determine the drift by analyzing the preprocessed data using . The system 100 may process the preprocessed data directly or after transforming the preprocessed data, and if drift is detected the system 100 may archive the data. In one embodiment, system 100 may perform labeling of archived data. System 100 may also provide an interface for authorized users to access system 100 and provide one or more inputs to assist in labeling of data. Data processed by system 100 may belong to one or more regimes. In one embodiment, at least one data-driven model set is generated for each regime and stored in a database in memory 102 . Each data-driven model set further includes a first set of data-driven models and a second set of data-driven models. Each data-driven model in the first set of data-driven models is trained to perform at least one time series modeling task, such as regression and classification. The first set of data-driven models includes, but is not limited to, regression variants (multiple linear regression, stepwise regression, forward regression, backward regression, partial least squares regression, principal component regression, Gaussian process regression, polynomial regression). ), decision trees and their variants (random forest, bagging, boosting, bootstrapping), support vector regression, k-nearest neighbor regression, spline fitting or its variants (e.g. multi-adaptive regression splines), artificial neural networks and their Variants (multilayer perceptrons, recurrent neural networks and their variants such as long short-term memory networks, and convolutional neural networks) and statistical, machine and deep learning techniques such as time series regression models can be constructed. In addition, the first set of data-driven models are statistics-based, machine-learning-based or deep-learning-based one-class or multi-class classification, scoring or diagnostic models such as principal component analysis, Mahalanobis distance, segregation forest, random Also included are forest classifiers, one-class support vector machines, artificial neural networks and their variants, elliptic envelopes and autoencoders (eg, dense autoencoders, LSTM autoencoders). Each data-driven model in the second set of data-driven models learns the distribution of data for the regime and produces data samples whose distribution matches the distribution of the training data for the corresponding regime, adversarial It is a generative model based on generative networks.

システム100は、異なるレジームに関する情報を記憶するために使用される、メモリ102の中のデータベースを有し、ここにおいて、各領域に属するデータが指定される。さらに、ステップ208において、システム100は、レジーム識別モジュール404を使用して、メモリ102の中のモデルデータベースの中の1つまたは複数のレジーム識別モデルを使用して前処理されたデータを処理することによって、現在のデータ点またはデータ点のバッチのレジームを識別する。前処理されたデータを処理することによって、システム100は、現在のデータ点またはデータ点のバッチと一致するレジームを識別する。前処理されたデータと一致するレジームを識別している間に、システム100は、複数のデータ駆動型レジーム識別モデルを使用して、(前処理された)入力データが意図されたレジームに属するかまたは大域的外れ値に属するかを決定する。データ駆動型レジーム識別モデルは、ランダムフォレスト分類器、サポートベクターマシン分類器、人工ニューラルネットワークおよびそのバリアント、ならびにオートエンコーダ(たとえば、デンスオートエンコーダ、LSTMオートエンコーダ)などの統計技法、機械学習技法および深層学習技法を使用して構築されるモデルを含む。一実施形態では、一致するレジームが識別されない(すなわち、前処理されたデータと一致するデータがレジームのいずれにも見つからない)場合、システム100は、許可されたユーザが新しいレジームを定義するための適切なインターフェースを提供し得る。 The system 100 has a database in memory 102 that is used to store information about different regimes, where the data belonging to each domain is specified. Further, at step 208, system 100 uses regime identification module 404 to process data preprocessed using one or more regime identification models in the model database in memory 102. identifies the regime of the current data point or batch of data points. By processing the preprocessed data, the system 100 identifies regimes that match the current data point or batch of data points. While identifying regimes consistent with preprocessed data, system 100 uses multiple data-driven regime identification models to determine whether the (preprocessed) input data belongs to the intended regime. or belong to global outliers. Data-driven regime discriminative models include random forest classifiers, support vector machine classifiers, artificial neural networks and their variants, as well as statistical techniques such as autoencoders (e.g. dense autoencoders, LSTM autoencoders), machine learning techniques and deep Contains models built using learning techniques. In one embodiment, if no matching regime is identified (i.e., no data matching the preprocessed data is found in any of the regimes), system 100 prompts an authorized user to define a new regime. A suitable interface can be provided.

レジームが識別される(または新しいレジームが定義される)と、システム100は、ステップ210において、識別されたレジームと一致するデータ駆動型モデルとして、メモリ102の中のデータベースに記憶された複数の第1のセットのデータ駆動型モデルからデータ駆動型モデル(代替的に「モデル」と呼ばれることがある)を選択する。一実施形態では、システム100は、データモデルとレジームとの間のマッピングに基づいて、各レジームと一致するデータ駆動型モデルを選択する。各レジームには一意の「レジームID」が提供され得、次いで、各レジームIDは、1つまたは複数のデータ駆動型モデルとともにマッピングされる(たとえば、「レジームID→データ駆動型モデル「X」」)。そのようなマッピングに関する情報は、システム100によって参照データベースに記憶され得る。リアルタイムデータを処理している間、入力データが属するレジームを識別した後、システム100は、この参照テーブルの中のデータに基づいて、識別されたレジームと一致するデータ駆動型モデルを識別する。 Once a regime is identified (or a new regime is defined), the system 100, at step 210, generates a plurality of first models stored in a database in memory 102 as data-driven models consistent with the identified regime. Select a data-driven model (alternatively called a "model") from a set of data-driven models. In one embodiment, system 100 selects a data-driven model that matches each regime based on a mapping between data models and regimes. Each regime may be provided with a unique "regime ID", and each regime ID is then mapped with one or more data-driven models (e.g., "regime ID → data-driven model 'X'" ). Information regarding such mappings may be stored by the system 100 in a reference database. While processing real-time data, after identifying the regime to which the input data belongs, the system 100 identifies data-driven models that match the identified regime based on the data in this lookup table.

ステップ212において、システム100は、選択されたデータ駆動型モデルを使用して少なくとも1つの時系列モデリングタスクを実行する。時系列モデリングタスクは、回帰、分類、異常検出、異常位置特定および予知のうちの少なくとも1つであり得る。選択されたデータ駆動型モデルを使用して少なくとも1つの時系列モデリングタスクを実行することによって、システム100は、予測モジュール408を使用して、観測されるプロセス/システムに関連付けられた様々なパラメータの値を抽出/予測する。そのような抽出/予測されるパラメータのデータの例は、限定はしないが、産業プロセス/機械のヘルスインデックス、キーパフォーマンスインジケータ(KPI:key performance indicator)の推定された値などである。パラメータの予測/抽出のための時系列モデリングタスクを実行するステップは、システム100によってステップ214と並行して実行され得る。 At step 212, system 100 performs at least one time series modeling task using the selected data-driven model. The time series modeling task can be at least one of regression, classification, anomaly detection, anomaly localization and prognosis. By performing at least one time series modeling task using the selected data-driven model, system 100 uses prediction module 408 to estimate various parameters associated with the observed process/system. Extract/predict values. Examples of such extracted/predicted parameter data include, but are not limited to, industrial process/machine health indices, estimated values of key performance indicators (KPIs), and the like. The step of performing time series modeling tasks for parameter prediction/extraction may be performed by system 100 in parallel with step 214 .

さらに、ステップ214において、システム100は、敵対的攻撃モジュール405を使用して、選択されたデータ駆動型モデルに対して1つまたは複数の普遍的敵対的攻撃を実行する。様々な実施形態では、システム100は、選択されたデータ駆動型モデルに対して標的型ならびに非標的型敵対的攻撃を実行する。たとえば、システム100は、選択されたデータ駆動型モデルに対してFGSM(高速勾配符号法)攻撃およびBIM(基本反復法)攻撃を実行する。FGSM攻撃およびBIM攻撃の詳細は以下で与えられる。 Additionally, at step 214, system 100 uses adversarial attack module 405 to perform one or more universal adversarial attacks against the selected data-driven model. In various embodiments, system 100 performs targeted as well as untargeted adversarial attacks against selected data-driven models. For example, the system 100 performs FGSM (Fast Gradient Coding) and BIM (Basic Iterative Method) attacks on selected data-driven models. Details of FGSM and BIM attacks are given below.

1. FGSM攻撃:
FGSM攻撃は、入力に対して「損失の勾配」の符号の方向に摂動Xiを加えることによって敵対的サンプルを生成する単一ステップ攻撃である。代替として、非標的型攻撃のための敵対的サンプルは以下によって取得される。
1. FGSM attack:
The FGSM attack is a single-step attack that generates adversarial samples by applying a perturbation X i in the direction of the sign of the 'gradient of loss' to the input. Alternatively, adversarial samples for non-targeted attacks are obtained by:

Figure 0007229308000007
Figure 0007229308000007

攻撃者がXiに対応する標的クラス

Figure 0007229308000008
を予測するためにモデルを誤った方向に導く、標的型攻撃のための敵対的サンプルは以下によって取得される。 Target class to which the attacker corresponds to Xi
Figure 0007229308000008
Adversarial samples for targeted attacks, which mislead the model to predict , are obtained by:

Figure 0007229308000009
Figure 0007229308000009

ここで、LTはLの負数に等しい。標的型攻撃の場合、予測されたクラスと標的クラスとの間の損失は最小化されるが、非標的型攻撃の場合、予測されたクラスと真のクラスとの間の損失は最大化される。 where L T is equal to the negative of L. For targeted attacks, the loss between predicted and target classes is minimized, while for untargeted attacks, the loss between predicted and true classes is maximized. .

2. BIM攻撃:
BIM攻撃では、FGSMは、より小さいステップサイズを取ることによってサンプルデータに対して反復的に適用され、各反復の後、出力は、敵対的サンプルが元の入力Xiのε近傍内である一定の事前に指定された限界内にあるような値にクリップされる。
2. BIM attack:
In a BIM attack, FGSM is applied iteratively on the sample data by taking smaller step sizes and after each iteration the output is a constant is clipped to a value that is within prespecified limits of

非標的型敵対的サンプル

Figure 0007229308000010
は式(4)および(5)を使用して計算される。 Non-Targeted Adversarial Sample
Figure 0007229308000010
is calculated using equations (4) and (5).

Figure 0007229308000011
Figure 0007229308000011

同様に、標的型敵対的サンプル

Figure 0007229308000012
は方程式(6)および(7)を使用して計算される。 Similarly, targeted adversarial samples
Figure 0007229308000012
is calculated using equations (6) and (7).

Figure 0007229308000013
Figure 0007229308000013

システム100はまた、選択されたデータ駆動型モデルに対して普遍的敵対的攻撃を実行し、ここにおいて、所与のデータセットXに対する普遍的敵対的摂動Uは、Xのデータ入力分布μからの最も多くのサンプルを誤った方向に導くことができるように定義され、式(8)において表される。 System 100 also performs a universal adversarial attack on the selected data-driven model, where the universal adversarial perturbation U for a given dataset X is It is defined to be able to mislead the most samples and is expressed in equation (8).

Figure 0007229308000014
Figure 0007229308000014

普遍的敵対的摂動は、(a)摂動の無限ノルムがεmax以下である、(b)普遍的敵対的摂動が所望のフーリング比を満たすという2つの条件が満たされるように計算される。これらの条件は以下のように表される。 The universal adversarial perturbation is computed such that two conditions are satisfied: (a) the infinite norm of the perturbation is less than or equal to εmax , and (b) the universal adversarial perturbation satisfies the desired Fooling ratio. These conditions are expressed as follows.

Figure 0007229308000015
Figure 0007229308000015

選択されたデータ駆動型モデルに対して敵対的攻撃を実行するプロセスに関与する上述のステップは、図3に示される。ステップ302において、システム100は、対応するデータサンプルに対して損失の勾配の方向に最適ステップを取ることによって、前処理されたデータから複数の第1のデータサンプルの各々の更新を計算する。さらに、ステップ304において、システム100は、計算された更新を普遍的敵対的摂動の以前の値に加える。最初の反復において、普遍的敵対的摂動の「以前の値」は普遍的敵対的摂動の初期値を指す。後続の反復において、普遍的敵対的摂動の「以前の値」は以前の反復の終わりでの普遍的敵対的摂動の累積値を指す。さらに、ステップ306において、敵対的サンプルが一定の事前に指定された限界内にあるように出力がクリップされる。 The above steps involved in the process of executing an adversarial attack against a selected data-driven model are illustrated in FIG. At step 302, the system 100 computes an update for each of the plurality of first data samples from the preprocessed data by taking the optimal step in the direction of the gradient of loss for the corresponding data sample. Additionally, at step 304, the system 100 adds the calculated update to the previous value of the universal adversarial perturbation. In the first iteration, the "previous value" of the universal adversarial perturbation refers to the initial value of the universal adversarial perturbation. In subsequent iterations, the "previous value" of the universal adversarial perturbation refers to the cumulative value of the universal adversarial perturbation at the end of the previous iteration. Additionally, at step 306, the output is clipped so that adversarial samples are within certain pre-specified limits.

選択されたデータ駆動型モデルに対してそのような敵対的攻撃を実行した後、システム100は、ステップ216において、モデルパフォーマンスモジュール406を使用して、選択されたデータ駆動型モデルに対する敵対的攻撃の影響を評価するために、選択されたデータ駆動型モデルのパフォーマンスを推定する。データ駆動型モデルのパフォーマンスを評価するためにシステム100によって使用されるパラメータのいくつかの例は、精度、リコールまたは真陽性率、偽陽性率、検出漏れ率、全体精度、Fスコア、ROC(受信者操作特性(receiver operating characteristic))曲線下面積、平均二乗誤差(MSE:Mean Square Error)、平均絶対誤差(MAE:Mean Absolute Error)、平方根平均二乗誤差(RMSE:Root Mean Square Error)、ヒット率、決定の係数などを含む。このステップにおいて、Uは、予測されたクラスが誤りである少なくとも少数のサンプルを無視しながら、Xの中のすべてのサンプルにわたって反復することによって計算される。システム100はまた、FGSM攻撃が失敗した少なくとも少数の「ハード」サンプルを無視するように構成される。残りのサンプルの各々について、最小ノルムを有するΔUが、各サンプルに対して損失の勾配の方向に異なるステップサイズを探索することによって計算される。さらに、制約

Figure 0007229308000016
が満たされることを確実にするために、εmax無限ボールに対してU+ΔUの投影が取られる。 After performing such an adversarial attack on the selected data-driven model, system 100 uses model performance module 406 in step 216 to perform an adversarial attack on the selected data-driven model. Estimate the performance of selected data-driven models to assess impact. Some examples of parameters used by system 100 to evaluate the performance of data-driven models are accuracy, recall or true positive rate, false positive rate, false positive rate, overall accuracy, F-score, ROC (received receiver operating characteristic) area under the curve, mean square error (MSE), mean absolute error (MAE), root mean square error (RMSE), hit rate , including coefficients of determination, etc. In this step, U is computed by iterating over all samples in X while ignoring at least a few samples for which the predicted class is wrong. The system 100 is also configured to ignore at least a few "hard" samples in which the FGSM attack failed. For each of the remaining samples, ΔU with the minimum norm is computed by searching different step sizes in the direction of the loss gradient for each sample. Furthermore, the constraint
Figure 0007229308000016
is satisfied, a projection of U+ΔU is taken on the ε max infinite ball.

次いで、システム100は、選択されたデータ駆動型モデルの推定されたパフォーマンスをパフォーマンスのしきい値と比較する。選択されたデータ駆動型モデルの推定されたパフォーマンスがパフォーマンスのしきい値未満である場合、ステップ218において、システム100は、敵対的攻撃に対する脆弱性を克服するために選択されたデータ駆動型モデルを更新するために、再訓練モジュール407を使用して、選択されたデータ駆動型モデルの再訓練を実行する。この段階において、システム100は、第2のセットのデータ駆動型モデルからの生成モデルを含む複数のデータ拡張技法および複数の敵対的攻撃技法を使用して複数の第2のデータサンプルを生成する。第2のデータサンプルは、第1のデータサンプルの分布と同様の分布を有する。さらに、システム100は、複数の第1のデータサンプルと複数の第2のデータサンプルとの組合せを使用して、選択されたデータ駆動型モデルを更新する。システム100は、この段階において、選択されたデータ駆動型モデルの敵対的訓練を実行する。一実施形態では、システム100は、レジーム固有の訓練データ、レジーム固有の拡張されたデータおよび対応する敵対的サンプルを使用して、各レジームに対応するデータに対してすべてのデータ駆動型モデルの訓練を実行する。データ駆動型モデルの訓練は、モデルにおいて使用される学習技法および変数を変更することを伴い得る。たとえば、選択されたデータ駆動型モデルがランダムフォレスト分類モデルであった場合、再訓練の間に、サポートベクターマシン分類および人工ニューラルネットワーク分類などの、ランダムフォレスト以外の技法も考慮され得る。敵対的サンプルを生成するために、システム100は元のレジーム固有の訓練データおよび対応する拡張されたデータを使用する。各レジーム固有のデータセットのデータ拡張のために、システム100は、GAN、ランダムマスキングおよび量子化などを使用して訓練されたデータ生成器を使用し得る。ランダムマスキングでは、システム100は最初にゼロ値をランダムに選択されたインスタンスに割り当て、次いで、1つまたは複数の適切な単変量および多変量補間アルゴリズムを使用してそれらのインスタンスを補間する。ランダムマスキングの後、システム100は最初に、各単変量時系列データの最小値と最大値との間の固定数のレベルを選ぶ。さらに、時系列データの中の個々のデータ点値は最も近いレベルに丸められる。レジームごとにデータ駆動型モデルに対して敵対的訓練を実行することによって、だますことが難しい、ロバストなレジーム固有の敵対的に訓練されたデータモデルが取得され得る。 System 100 then compares the estimated performance of the selected data-driven model to a performance threshold. If the estimated performance of the selected data-driven model is below the performance threshold, at step 218 system 100 uses the selected data-driven model to overcome vulnerability to adversarial attacks. To update, a retraining module 407 is used to perform retraining of the selected data-driven model. At this stage, system 100 generates a plurality of second data samples using a plurality of data augmentation techniques and a plurality of adversarial attack techniques including generative models from a second set of data-driven models. The second data samples have a distribution similar to the distribution of the first data samples. Additionally, system 100 updates the selected data-driven model using a combination of the plurality of first data samples and the plurality of second data samples. System 100 performs adversarial training of the selected data-driven model at this stage. In one embodiment, system 100 trains all data-driven models on data corresponding to each regime using regime-specific training data, regime-specific augmented data and corresponding adversarial samples. to run. Training a data-driven model can involve changing the learning techniques and variables used in the model. For example, if the data-driven model chosen was a random forest classification model, techniques other than random forest, such as support vector machine classification and artificial neural network classification, may also be considered during retraining. To generate adversarial samples, system 100 uses the original regime-specific training data and the corresponding augmented data. For data augmentation of each regime-specific dataset, system 100 may use data generators trained using GANs, random masking and quantization, and the like. In random masking, the system 100 first assigns zero values to randomly selected instances and then interpolates those instances using one or more suitable univariate and multivariate interpolation algorithms. After random masking, system 100 first chooses a fixed number of levels between the minimum and maximum values of each univariate time series. Additionally, individual data point values within the time series data are rounded to the nearest level. By performing adversarial training on data-driven models for each regime, robust regime-specific adversarially trained data models that are difficult to fool can be obtained.

本明細書は、いかなる当業者も実施形態を作成および使用することを可能にするために本明細書の主題について説明している。主題の実施形態の範囲は特許請求の範囲によって定義され、当業者が思い付く他の修正形態を含み得る。そのような他の修正形態は、それらが特許請求の範囲の文言と異ならない同様の要素を有する場合、またはそれらが特許請求の範囲の文言と実質的な差がない同等の要素を含む場合、特許請求の範囲内にあることが意図されている。 This written description describes the subject matter of this specification to enable any person skilled in the art to make and use the embodiments. The scope of the subject embodiments is defined by the claims, and may include other modifications that occur to those skilled in the art. Such other modifications, if they have like elements that do not differ from the claim language, or if they contain equivalent elements that do not differ materially from the claim language, It is intended to be within the scope of the claims.

本明細書の本開示の実施形態は、データ駆動型モデルにおいて使用される時系列データに対するデータセキュリティの未解決の問題に対処する。したがって、本実施形態は、所与の入力データと一致するレジームを識別し、対応するデータ駆動型モデルを選択し、選択されたデータ駆動型モデルを誤った方向に導くために入力データに対して普遍的敵対的攻撃を実行するための機構を提供する。さらに、本明細書の実施形態は、入力データに対する攻撃によるデータ駆動型モデルの推定されたパフォーマンスがパフォーマンスのしきい値を下回るものとして識別される場合、データ駆動型モデルを再訓練するための機構をさらに提供する。 Embodiments of the disclosure herein address an open issue of data security for time-series data used in data-driven models. Thus, the present embodiment identifies regimes that match given input data, selects the corresponding data-driven model, and performs a computation on the input data to mislead the selected data-driven model. Provides a mechanism for conducting universal adversarial attacks. Further, embodiments herein provide a mechanism for retraining the data-driven model when the estimated performance of the data-driven model due to attacks on the input data is identified as below a performance threshold. further provide.

保護の範囲は、そのようなプログラムに、さらに、その中にメッセージを有するコンピュータ可読手段に拡大され、そのようなコンピュータ可読記憶手段は、プログラムがサーバまたはモバイルデバイスまたは任意の適切なプログラマブルデバイス上で動作するとき、本方法の1つまたは複数のステップの実装のためのプログラムコード手段を含むことを理解されたい。ハードウェアデバイスは、たとえば、サーバもしくはパーソナルコンピュータなどのような任意の種類のコンピュータまたはそれらの任意の組合せを含む、プログラムされ得る任意の種類のデバイスであり得る。デバイスはまた、たとえば、ハードウェア手段であり得る手段を含んでもよく、手段は、たとえば、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、またはハードウェア手段とソフトウェア手段との組合せ、たとえば、ASICおよびFPGA、もしくは少なくとも1つのマイクロプロセッサおよびソフトウェア処理構成要素がその中に配置された少なくとも1つのメモリなどである。したがって、手段は、ハードウェア手段とソフトウェア手段の両方を含むことができる。本明細書で説明される方法実施形態は、ハードウェアおよびソフトウェアにおいて実装され得る。デバイスはまた、ソフトウェア手段を含み得る。代替として、本実施形態は、たとえば、複数のCPUを使用して、異なるハードウェアデバイス上で実装され得る。 The scope of protection extends to such programs and further to computer readable means having messages therein, and such computer readable storage means means that the programs are stored on a server or mobile device or any suitable programmable device. It should be understood to include program code means for implementing one or more steps of the method when operating. The hardware device can be any type of device that can be programmed including, for example, any type of computer such as a server or personal computer, or any combination thereof. The device may also include means which may be, for example, hardware means, which may be, for example, an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), or a combination of hardware and software means. , such as ASICs and FPGAs, or at least one memory with at least one microprocessor and software processing components disposed therein. Accordingly, the means may comprise both hardware and software means. The method embodiments described herein can be implemented in hardware and software. The device may also include software means. Alternatively, the present embodiments may be implemented on different hardware devices, for example using multiple CPUs.

本明細書の実施形態は、ハードウェア要素およびソフトウェア要素を含むことができる。ソフトウェアにおいて実装される本実施形態は、限定はしないが、ファームウェア、常駐ソフトウェア、マイクロコードなどを含む。本明細書で説明される様々な構成要素によって実行される機能は、他の構成要素または他の構成要素の組合せにおいて実装され得る。本明細書の目的で、コンピュータ使用可能媒体またはコンピュータ可読記憶媒体は、命令実行システム、装置、もしくはデバイスによって、またはそれらに関連して使用するためのプログラムを含む、記憶する、通信する、伝搬する、またはトランスポートすることができる任意の装置であり得る。 Embodiments herein may include hardware and software elements. Embodiments implemented in software include, but are not limited to, firmware, resident software, microcode, and the like. The functions performed by various components described herein may be implemented in other components or combinations of other components. For purposes of this specification, a computer-usable or computer-readable storage medium includes, stores, communicates, or propagates a program for use by or in connection with an instruction execution system, apparatus, or device , or any device capable of transport.

図示のステップは示された例示的な実施形態を説明するために提示されており、進行中の技術開発は特定の機能が実行されるやり方を変化させるであろうことが予想されるべきである。これらの例は、限定ではなく、例示の目的で、本明細書で提示される。さらに、機能ビルディングブロックの境界は、説明の便宜上、本明細書では任意に定義されている。指定された機能およびそれらの関係が適切に実行される限り、代替の境界が定義され得る。代替形態(本明細書で説明されるものの均等物、拡張形態、変形形態、逸脱形態などを含む)は、本明細書に含まれる教示に基づいて関連分野の当業者に明らかとなろう。そのような代替形態は、開示される実施形態の範囲内に入る。また、「備える(comprising)」、「有する(having)」、「含む(containing)」、および「含む(including)」という語および他の同様の形態は、意味が同等であり、これらの語のうちのいずれか1つが続く1つまたは複数の項目はそのような1つまたは複数の項目の網羅的なリストとなるものではなく、リストされた1つまたは複数の項目のみに限定されるものでもないという点で、オープンエンドであることが意図されている。本明細書および添付の特許請求の範囲で使用される場合、文脈が別段に明確に示さない限り、単数形「a」、「an」、および「the」は複数の参照を含むことにも留意されなければならない。 The illustrated steps are presented to illustrate the illustrated exemplary embodiments, and it should be expected that ongoing technology developments will change the manner in which certain functions are performed. . These examples are presented herein for purposes of illustration and not limitation. Furthermore, the boundaries of functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternate boundaries may be defined so long as the specified functions and relationships thereof are appropriately performed. Alternatives (including equivalents, extensions, variations, deviations, etc., of those described herein) will become apparent to persons skilled in the relevant art(s) based on the teachings contained herein. Such alternatives fall within the scope of disclosed embodiments. Also, the terms "comprising," "having," "containing," and "including" and other similar forms are equivalent in meaning and Any one or more of the items followed by any one of them does not constitute an exhaustive list of such item or items, nor is it intended to be limited only to the listed item or items. It is intended to be open-ended in that there are no Also note that as used in this specification and the appended claims, the singular forms "a," "an," and "the" include plural references unless the context clearly indicates otherwise. It must be.

さらに、1つまたは複数のコンピュータ可読記憶媒体は、本開示と一致する実施形態を実装する際に利用され得る。コンピュータ可読記憶媒体は、プロセッサによって読取り可能な情報またはデータが記憶され得る任意のタイプの物理メモリを指す。したがって、コンピュータ可読記憶媒体は、プロセッサに本明細書で説明される実施形態と一致するステップまたは段階を実行させるための命令を含む、1つまたは複数のプロセッサによる実行のための命令を記憶し得る。「コンピュータ可読記憶媒体」という用語は、有形の項目を含み、搬送波および過渡信号を除外する、すなわち、非一時的であると理解されるべきである。例は、ランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、揮発性メモリ、不揮発性メモリ、ハードディスク、CD ROM、DVD、フラッシュドライブ、ディスク、および任意の他の知られている物理記憶媒体を含む。 Additionally, one or more computer-readable storage media may be utilized in implementing embodiments consistent with the present disclosure. Computer-readable storage medium refers to any type of physical memory in which information or data readable by a processor may be stored. Thus, a computer-readable storage medium may store instructions for execution by one or more processors, including instructions for causing the processors to perform steps or stages consistent with the embodiments described herein. . The term "computer-readable storage medium" is to be understood to include tangible items and exclude carrier waves and transients, ie, non-transitory. Examples include random access memory (RAM), read-only memory (ROM), volatile memory, non-volatile memory, hard disks, CD ROMs, DVDs, flash drives, disks, and any other known physical storage medium. include.

本開示および例は例示的なものにすぎないと見なされ、開示される実施形態の真の範囲は添付の特許請求の範囲によって示されることが意図されている。 It is intended that the present disclosure and examples be considered as exemplary only, with the true scope of the disclosed embodiments being indicated by the following claims.

100 システム
102 メモリ
104 プロセッサ
106 入力/出力(I/O)インターフェース
200 プロセッサ実施方法
401 データ前処理モジュール
402 ソフトセンサ推定モジュール
403 ドリフト検出モジュール
404 レジーム識別モジュール
405 敵対的攻撃モジュール
406 モデルパフォーマンスモジュール
407 再訓練モジュール
408 予測モジュール
100 systems
102 memory
104 processors
106 Input/Output (I/O) interfaces
200 processor implementation method
401 Data Preprocessing Module
402 Soft Sensor Estimation Module
403 Drift Detection Module
404 Regime Identification Module
405 Hostile Attack Module
406 model performance module
407 Retraining Module
408 Forecast Module

Claims (15)

普遍的敵対的攻撃から防御するための、プロセッサによって実施される方法(200)であって、
1つまたは複数のハードウェアプロセッサを介して、複数のデータソースからのデータを入力として受信するステップ(202)と、
前記1つまたは複数のハードウェアプロセッサを介して、前記受信されたデータを前処理するステップ(204)と、
前記1つまたは複数のハードウェアプロセッサを介して、複数の第1のセットのデータ駆動型モデルからの少なくとも1つのデータ駆動型モデルの中の訓練データと比較して、前記前処理されたデータの中のドリフトを決定するステップ(206)と、
前記1つまたは複数のハードウェアプロセッサを介して、前記前処理されたデータと一致するレジームを識別するステップ(208)と、
前記1つまたは複数のハードウェアプロセッサを介して、複数の第1のセットのデータ駆動型モデルから、前記識別されたレジームと一致するデータ駆動型モデルを選択するステップ(210)と、
前記1つまたは複数のハードウェアプロセッサを介して、前記選択されたデータ駆動型モデルに対して1つまたは複数の普遍的敵対的攻撃を実行するステップ(214)であって、
複数の反復において、普遍的敵対的摂動を計算するステップであって、
前記訓練データの中の対応するデータサンプルに対して損失の勾配の方向に最適ステップを取ることによって、前記データから複数の第1のデータサンプルの各々に対する更新を計算するステップ(302)と、
前記計算された更新を前記普遍的敵対的摂動の以前の値に加えるステップ(304)と、
前記計算された更新を加えた後に、前記普遍的敵対的摂動をクリップするステップ(306)と
を含む、ステップ
を含む、ステップ(214)と、
前記1つまたは複数のハードウェアプロセッサを介して、前記1つまたは複数の普遍的敵対的攻撃を実行した後の前記選択されたデータ駆動型モデルのパフォーマンスを推定するステップ(216)と、
前記1つまたは複数の普遍的敵対的攻撃を実行した後の前記選択されたデータ駆動型モデルの前記推定されたパフォーマンスがパフォーマンスのしきい値未満である場合、前記1つまたは複数のハードウェアプロセッサを介して、前記選択されたデータ駆動型モデルを再訓練するステップ(218)であって、前記再訓練するステップが、
第2のセットのデータ駆動型モデルからの生成モデルを含む複数のデータ拡張技法および複数の敵対的攻撃技法を使用して複数の第2のデータサンプルを生成するステップであって、前記複数の第2のデータサンプルが前記第1のデータサンプルの分布と同様の分布を有する、ステップと、
前記複数の第1のデータサンプルと前記複数の第2のデータサンプルとの組合せを使用して、前記選択されたデータ駆動型モデルを更新するステップと
を含む、ステップ(218)と
を含む方法。
A processor-implemented method (200) for defending against universal adversarial attacks, comprising:
receiving data from a plurality of data sources as input (202) via one or more hardware processors;
preprocessing (204) the received data via the one or more hardware processors;
of the preprocessed data compared to training data in at least one data-driven model from the plurality of first set of data-driven models, via the one or more hardware processors; determining (206) the drift in
identifying (208), via the one or more hardware processors, a regime that matches the preprocessed data;
selecting (210), via the one or more hardware processors, a data-driven model consistent with the identified regime from a plurality of first set of data-driven models;
performing (214), via the one or more hardware processors, one or more universal adversarial attacks against the selected data-driven model, comprising:
calculating the universally adversarial perturbation at multiple iterations, comprising:
calculating (302) an update for each of a plurality of first data samples from said data by taking an optimal step in the direction of a gradient of loss for the corresponding data sample in said training data;
adding (304) the calculated update to a previous value of the universal adversarial perturbation;
clipping (306) said universally adversarial perturbation after applying said calculated update; and step (214), comprising:
estimating (216), via the one or more hardware processors, the performance of the selected data-driven model after executing the one or more universally adversarial attacks;
the one or more hardware processors if the estimated performance of the selected data-driven model after executing the one or more universally adversarial attacks is below a performance threshold; retraining (218) the selected data-driven model via
generating a plurality of second data samples using a plurality of data augmentation techniques and a plurality of adversarial attack techniques including generative models from a second set of data-driven models; two data samples having a distribution similar to the distribution of the first data sample;
and updating said selected data-driven model using a combination of said plurality of first data samples and said plurality of second data samples.
前記前処理が、外れ値の識別および除去、欠測データの補完、ならびに1つまたは複数のデータソースからの複数の変数の同期および統合を含む、請求項1に記載の方法。 2. The method of claim 1, wherein the preprocessing includes identifying and removing outliers, imputing missing data, and synchronizing and integrating multiple variables from one or more data sources. 前記前処理されたデータの中の前記ドリフトが、複数のデータ駆動型ドリフト検出モデルを使用して決定される、請求項1に記載の方法。 2. The method of claim 1, wherein the drift in the preprocessed data is determined using multiple data-driven drift detection models. 前記レジームを識別するステップが、複数のデータ駆動型レジーム識別モデルを使用して、前記データが意図されたレジームに属するかまたは大域的外れ値に属するかを決定するステップを含む、請求項1に記載の方法。 2. The method of claim 1, wherein identifying the regime comprises using a plurality of data-driven regime identification models to determine whether the data belong to an intended regime or to a global outlier. the method of. データ駆動型モデルセットがレジームごとに生成され、前記データ駆動型モデルセットが、
第1のセットのデータ駆動型モデルであって、前記第1のセットのデータ駆動型モデルが時系列モデリングタスクを実行するように訓練される、第1のセットのデータ駆動型モデルと、
第2のセットのデータ駆動型モデルであって、前記第2のセットのデータ駆動型モデルの中の各データ駆動型モデルが、前記レジームについてのデータの分布を学習し、かつ対応する前記レジームの訓練データと一致するデータサンプルを生成する、敵対的生成ネットワークベースの生成モデルである、第2のセットのデータ駆動型モデルと
を含む、請求項1に記載の方法。
A data-driven model set is generated for each regime, the data-driven model set comprising:
a first set of data-driven models, wherein the first set of data-driven models are trained to perform a time series modeling task;
a second set of data-driven models, wherein each data-driven model in said second set of data-driven models learns a distribution of data for said regime and a corresponding data-driven model for said regime; 2. The method of claim 1, comprising a second set of data-driven models that are generative adversarial network-based generative models that generate data samples that match the training data.
前記時系列モデリングタスクが、分類、回帰、および異常検出タスクのうちの1つである、請求項5に記載の方法。 6. The method of claim 5 , wherein the time series modeling task is one of classification, regression, and anomaly detection tasks. 入力として収集された前記データが、リアルタイムデータおよび非リアルタイムデータのうちの少なくとも1つである、請求項1に記載の方法。 2. The method of claim 1, wherein the data collected as input is at least one of real-time data and non-real-time data. 普遍的敵対的攻撃から防御するためのシステム(100)であって、
1つまたは複数のハードウェアプロセッサ(104)と、
通信インターフェース(106)と、
複数の命令を含むメモリ(102)と
を備え、前記複数の命令が実行されると、前記1つまたは複数のハードウェアプロセッサに、
複数のデータソースからのデータを入力として受信すること(202)と、
前記受信されたデータを前処理すること(204)と、
複数の第1のセットのデータ駆動型モデルからの少なくとも1つのデータ駆動型モデルの中の訓練データと比較して、前記前処理されたデータの中のドリフトを決定すること(206)と、
前記前処理されたデータと一致するレジームを識別すること(208)と、
複数の第1のセットのデータ駆動型モデルから、前記識別されたレジームと一致するデータ駆動型モデルを選択すること(210)と、
前記選択されたデータ駆動型モデルに対して1つまたは複数の普遍的敵対的攻撃を実行すること(214)であって、
複数の反復において、普遍的敵対的摂動を計算することであって、
前記訓練データの中の対応するデータサンプルに対して損失の勾配の方向に最適ステップを取ることによって、前記データから複数の第1のデータサンプルの各々に対する更新を計算すること(302)と、
前記計算された更新を前記普遍的敵対的摂動の以前の値に加えること(304)と、
前記計算された更新を加えた後に、前記普遍的敵対的摂動をクリップすること(306)と
を含む、計算すること
を含む、実行すること(214)と、
前記1つまたは複数の普遍的敵対的攻撃を実行した後の前記選択されたデータ駆動型モデルのパフォーマンスを推定すること(216)と、
前記1つまたは複数の普遍的敵対的攻撃を実行した後の前記選択されたデータ駆動型モデルの前記推定されたパフォーマンスがパフォーマンスのしきい値未満である場合、前記選択されたデータ駆動型モデルを再訓練すること(218)であって、前記再訓練することが、
第2のセットのデータ駆動型モデルからの生成モデルを含む複数のデータ拡張技法および複数の敵対的攻撃技法を使用して複数の第2のデータサンプルを生成することであって、前記複数の第2のデータサンプルが前記第1のデータサンプルの分布と同様の分布を有する、生成することと、
前記複数の第1のデータサンプルと前記複数の第2のデータサンプルとの組合せを使用して、前記選択されたデータ駆動型モデルを更新することと
を含む、再訓練すること(218)と
を行わせる、システム。
A system (100) for defending against universal hostile attacks, comprising:
one or more hardware processors (104);
a communication interface (106);
a memory (102) containing a plurality of instructions, wherein when the plurality of instructions are executed, the one or more hardware processors:
receiving data from multiple data sources as input (202);
preprocessing (204) the received data;
determining (206) drift in the preprocessed data compared to training data in at least one data-driven model from a plurality of first set of data-driven models;
identifying (208) a regime that matches the preprocessed data;
selecting (210) a data-driven model consistent with the identified regime from a plurality of first set of data-driven models;
performing (214) one or more universal adversarial attacks against the selected data-driven model,
Computing the universal adversarial perturbation at multiple iterations, comprising:
calculating (302) an update for each of a plurality of first data samples from the data by taking an optimal step in the direction of a gradient of loss for the corresponding data sample in the training data;
adding (304) the calculated update to a previous value of the universal adversarial perturbation;
clipping (306) the universally adversarial perturbation after applying the calculated update, performing (214) comprising:
estimating (216) the performance of the selected data-driven model after performing the one or more universal adversarial attacks;
the selected data-driven model if the estimated performance of the selected data-driven model after performing the one or more universal adversarial attacks is below a performance threshold; retraining (218), said retraining comprising:
generating a plurality of second data samples using a plurality of data augmentation techniques and a plurality of adversarial attack techniques including generative models from a second set of data-driven models; generating two data samples having a distribution similar to the distribution of the first data sample;
retraining (218) comprising: updating the selected data-driven model using a combination of the plurality of first data samples and the plurality of second data samples; Let it go, the system.
前記前処理が、外れ値の識別および除去、欠測データの補完、ならびに1つまたは複数のデータソースからの複数の変数の同期および統合を含む、請求項8に記載のシステム。 9. The system of claim 8, wherein the preprocessing includes identifying and removing outliers, imputing missing data, and synchronizing and integrating multiple variables from one or more data sources. 前記システムが、複数のデータ駆動型ドリフト検出モデルを使用して前記前処理されたデータの中の前記ドリフトを決定する、請求項8に記載のシステム。 9. The system of claim 8, wherein the system determines the drift in the preprocessed data using multiple data-driven drift detection models. 前記システムが、複数のデータ駆動型レジーム識別モデルを使用して、前記データが意図されたレジームに属するかまたは大域的外れ値に属するかを決定することによって前記レジームを識別する、請求項8に記載のシステム。 9. The system of claim 8, wherein the system identifies the regime by determining whether the data belongs to an intended regime or to a global outlier using a plurality of data-driven regime identification models. system. データ駆動型モデルセットがレジームごとに生成され、前記データ駆動型モデルセットが、
第1のセットのデータ駆動型モデルであって、前記第1のセットのデータ駆動型モデルが時系列モデリングタスクを実行するように訓練される、第1のセットのデータ駆動型モデルと、
第2のセットのデータ駆動型モデルであって、前記第2のセットのデータ駆動型モデルの中の各データ駆動型モデルが、前記レジームについてのデータの分布を学習し、かつ対応する前記レジームの訓練データと一致するデータサンプルを生成する、敵対的生成ネットワークベースの生成モデルである、第2のセットのデータ駆動型モデルと
を含む、請求項8に記載のシステム。
A data-driven model set is generated for each regime, the data-driven model set comprising:
a first set of data-driven models, wherein the first set of data-driven models are trained to perform a time series modeling task;
a second set of data-driven models, wherein each data-driven model in said second set of data-driven models learns a distribution of data for said regime and a corresponding data-driven model for said regime; 9. The system of claim 8, comprising a second set of data-driven models that are generative adversarial network-based generative models that generate data samples that match the training data.
前記時系列モデリングタスクが、分類、回帰、および異常検出タスクのうちの1つである、請求項12に記載のシステム。 13. The system of Claim 12 , wherein the time series modeling task is one of a classification, regression, and anomaly detection task. 前記システムが、リアルタイムデータおよび非リアルタイムデータのうちの少なくとも1つを入力として収集する、請求項8に記載のシステム。 9. The system of claim 8, wherein the system collects at least one of real-time data and non-real-time data as input. 普遍的敵対的攻撃から防御するための非一時的コンピュータ可読記憶媒体であって、前記非一時的コンピュータ可読記憶媒体が複数の命令を含み、前記複数の命令が実行されると、
1つまたは複数のハードウェアプロセッサを介して、複数のデータソースからのデータを入力として受信することと、
前記1つまたは複数のハードウェアプロセッサを介して、前記受信されたデータを前処理することと、
前記1つまたは複数のハードウェアプロセッサを介して、複数の第1のセットのデータ駆動型モデルからの少なくとも1つのデータ駆動型モデルの中の訓練データと比較して、前記前処理されたデータの中のドリフトを決定することと、
前記1つまたは複数のハードウェアプロセッサを介して、前記前処理されたデータと一致するレジームを識別することと、
前記1つまたは複数のハードウェアプロセッサを介して、複数の第1のセットのデータ駆動型モデルから、前記識別されたレジームと一致するデータ駆動型モデルを選択することと、
前記1つまたは複数のハードウェアプロセッサを介して、前記選択されたデータ駆動型モデルに対して1つまたは複数の普遍的敵対的攻撃を実行することであって、
複数の反復において、普遍的敵対的摂動を計算することであって、
前記訓練データの中の対応するデータサンプルに対して損失の勾配の方向に最適ステップを取ることによって、前記データから複数の第1のデータサンプルの各々に対する更新を計算することと、
前記計算された更新を前記普遍的敵対的摂動の以前の値に加えることと、
前記計算された更新を加えた後に、前記普遍的敵対的摂動をクリップすることと
を含む、計算すること
を含む、実行することと、
前記1つまたは複数のハードウェアプロセッサを介して、前記1つまたは複数の普遍的敵対的攻撃を実行した後の前記選択されたデータ駆動型モデルのパフォーマンスを推定することと、
前記1つまたは複数の普遍的敵対的攻撃を実行した後の前記選択されたデータ駆動型モデルの前記推定されたパフォーマンスがパフォーマンスのしきい値未満である場合、前記1つまたは複数のハードウェアプロセッサを介して、前記選択されたデータ駆動型モデルを再訓練することであって、前記再訓練することが、
第2のセットのデータ駆動型モデルからの生成モデルを含む複数のデータ拡張技法および複数の敵対的攻撃技法を使用して複数の第2のデータサンプルを生成することであって、前記複数の第2のデータサンプルが前記第1のデータサンプルの分布と同様の分布を有する、生成することと、
前記複数の第1のデータサンプルと前記複数の第2のデータサンプルとの組合せを使用して、前記選択されたデータ駆動型モデルを更新することと
を含む、再訓練することと
を行わせる、非一時的コンピュータ可読記憶媒体。
1. A non-transitory computer-readable storage medium for defending against universal adversarial attacks, said non-transitory computer-readable storage medium comprising a plurality of instructions, said plurality of instructions being executed, comprising:
receiving data from multiple data sources as input via one or more hardware processors;
preprocessing the received data via the one or more hardware processors;
of the preprocessed data compared to training data in at least one data-driven model from the plurality of first set of data-driven models, via the one or more hardware processors; determining drift in
identifying, via the one or more hardware processors, a regime that matches the preprocessed data;
selecting, via the one or more hardware processors, a data-driven model consistent with the identified regime from a plurality of first set of data-driven models;
executing one or more universal adversarial attacks against the selected data-driven model via the one or more hardware processors,
Computing the universal adversarial perturbation at multiple iterations, comprising:
calculating an update for each of a plurality of first data samples from the data by taking an optimal step in the direction of a gradient of loss for the corresponding data sample in the training data;
adding the calculated update to a previous value of the universal adversarial perturbation;
clipping the universally adversarial perturbation after applying the calculated update;
estimating, via the one or more hardware processors, the performance of the selected data-driven model after executing the one or more universally adversarial attacks;
the one or more hardware processors if the estimated performance of the selected data-driven model after executing the one or more universally adversarial attacks is below a performance threshold; retraining the selected data-driven model via
generating a plurality of second data samples using a plurality of data augmentation techniques and a plurality of adversarial attack techniques including generative models from a second set of data-driven models; generating two data samples having a distribution similar to the distribution of the first data sample;
updating the selected data-driven model using a combination of the plurality of first data samples and the plurality of second data samples; A non-transitory computer-readable storage medium.
JP2021118003A 2020-07-17 2021-07-16 Methods and systems for defending against universal adversarial attacks on time series data Active JP7229308B2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
IN202021030571 2020-07-17
IN202021030571 2020-07-17

Publications (2)

Publication Number Publication Date
JP2022019689A JP2022019689A (en) 2022-01-27
JP7229308B2 true JP7229308B2 (en) 2023-02-27

Family

ID=76920698

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021118003A Active JP7229308B2 (en) 2020-07-17 2021-07-16 Methods and systems for defending against universal adversarial attacks on time series data

Country Status (3)

Country Link
US (1) US11836257B2 (en)
EP (1) EP3944159A1 (en)
JP (1) JP7229308B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI692776B (en) * 2018-10-29 2020-05-01 財團法人工業技術研究院 Neural-network-based classification device and classification method
US11334671B2 (en) * 2019-10-14 2022-05-17 International Business Machines Corporation Adding adversarial robustness to trained machine learning models
US20220156376A1 (en) * 2020-11-19 2022-05-19 International Business Machines Corporation Inline detection and prevention of adversarial attacks
CN114612689B (en) * 2022-05-16 2022-09-09 中国科学技术大学 Countermeasure sample generation method, model training method, processing method and electronic equipment
CN117014224B (en) * 2023-09-12 2024-01-30 联通(广东)产业互联网有限公司 Network attack defense method and system based on Gaussian process regression

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190318099A1 (en) 2018-04-16 2019-10-17 International Business Machines Corporation Using Gradients to Detect Backdoors in Neural Networks
JP2019179390A (en) 2018-03-30 2019-10-17 株式会社Preferred Networks Gaze point estimation processing device, gaze point estimation model generation device, gaze point estimation processing system, gaze point estimation processing method, program, and gaze point estimation model
WO2019207770A1 (en) 2018-04-27 2019-10-31 日本電気株式会社 Learned model update device, learned model update method, and program

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DK201770681A1 (en) 2017-09-12 2019-04-03 Itu Business Development A/S A method for (re-)training a machine learning component
US11157782B2 (en) 2017-11-16 2021-10-26 International Business Machines Corporation Anomaly detection in multidimensional time series data
US11562244B2 (en) * 2018-02-07 2023-01-24 Royal Bank Of Canada Robust pruned neural networks via adversarial training
US10152970B1 (en) * 2018-02-08 2018-12-11 Capital One Services, Llc Adversarial learning and generation of dialogue responses
DE102018208763A1 (en) * 2018-06-04 2019-12-05 Robert Bosch Gmbh Method, apparatus and computer program for operating a machine learning system
US11481637B2 (en) * 2018-06-14 2022-10-25 Advanced Micro Devices, Inc. Configuring computational elements for performing a training operation for a generative adversarial network
US11275819B2 (en) * 2018-12-05 2022-03-15 Bank Of America Corporation Generative adversarial network training and feature extraction for biometric authentication
DE102019204318A1 (en) * 2019-03-28 2020-10-01 Conti Temic Microelectronic Gmbh Automatic detection and classification of adversarial attacks
US20200342306A1 (en) * 2019-04-25 2020-10-29 International Business Machines Corporation Autonomous modification of data
DE102019210270A1 (en) * 2019-05-23 2020-11-26 Robert Bosch Gmbh Method for training a Generative Adversarial Network (GAN), Generative Adversarial Network, computer program, machine-readable storage medium and device
US11681796B2 (en) * 2019-09-10 2023-06-20 International Business Machines Corporation Learning input preprocessing to harden machine learning models

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019179390A (en) 2018-03-30 2019-10-17 株式会社Preferred Networks Gaze point estimation processing device, gaze point estimation model generation device, gaze point estimation processing system, gaze point estimation processing method, program, and gaze point estimation model
US20190318099A1 (en) 2018-04-16 2019-10-17 International Business Machines Corporation Using Gradients to Detect Backdoors in Neural Networks
WO2019207770A1 (en) 2018-04-27 2019-10-31 日本電気株式会社 Learned model update device, learned model update method, and program

Also Published As

Publication number Publication date
EP3944159A1 (en) 2022-01-26
US20220058273A1 (en) 2022-02-24
JP2022019689A (en) 2022-01-27
US11836257B2 (en) 2023-12-05

Similar Documents

Publication Publication Date Title
JP7229308B2 (en) Methods and systems for defending against universal adversarial attacks on time series data
Fan et al. Transfer learning for remaining useful life prediction based on consensus self-organizing models
AU2019201789B2 (en) Failed and censored instances based remaining useful life (rul) estimation of entities
Li et al. Data-driven bearing fault identification using improved hidden Markov model and self-organizing map
US20180268285A1 (en) Neural network cooperation
Singh et al. Software defect prediction tool based on neural network
Ayodeji et al. Causal augmented ConvNet: A temporal memory dilated convolution model for long-sequence time series prediction
CN110333987B (en) Equipment physical examination report generation method and device, computer equipment and storage medium
JP7119631B2 (en) DETECTION DEVICE, DETECTION METHOD AND DETECTION PROGRAM
US20220366040A1 (en) Deep learning based detection of malicious shell scripts
CN117616431A (en) Interpretable machine learning for large-scale data
CN112086144A (en) Molecule generation method, molecule generation device, electronic device, and storage medium
JP2019105871A (en) Abnormality candidate extraction program, abnormality candidate extraction method and abnormality candidate extraction apparatus
Bakirov et al. On sequences of different adaptive mechanisms in non-stationary regression problems
KR102456409B1 (en) Method for determining a confidence level of inference data produced by artificial neural network
Mount et al. Unsupervised selection of optimal operating parameters for visual place recognition algorithms using Gaussian mixture models
WO2023167817A1 (en) Systems and methods of uncertainty-aware self-supervised-learning for malware and threat detection
CN114401205B (en) Method and device for detecting drift of unmarked multi-source network flow data
KR102308752B1 (en) Method and apparatus for tracking object
US10984283B2 (en) Recognition of biases in data and models
JP7331938B2 (en) LEARNING DEVICE, ESTIMATION DEVICE, LEARNING METHOD, AND LEARNING PROGRAM
Quazi et al. Image Classification and Semantic Segmentation with Deep Learning
CN115349129A (en) Generating performance predictions with uncertainty intervals
JP6629682B2 (en) Learning device, classification device, classification probability calculation device, and program
Hwang et al. Anomaly Detection in Time Series Data and its Application to Semiconductor Manufacturing

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210823

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210915

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220831

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220920

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221114

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230116

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230214

R150 Certificate of patent or registration of utility model

Ref document number: 7229308

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150