(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024133442
(43)【公開日】2024-10-02
(54)【発明の名称】コンピュータビジョンにおける敵対的攻撃の検出と回避
(51)【国際特許分類】
G06N 3/094 20230101AFI20240925BHJP
G06T 7/00 20170101ALI20240925BHJP
G06V 10/70 20220101ALI20240925BHJP
【FI】
G06N3/094
G06T7/00 350B
G06V10/70
【審査請求】未請求
【請求項の数】20
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2024031927
(22)【出願日】2024-03-04
(31)【優先権主張番号】18/177,707
(32)【優先日】2023-03-02
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】500520743
【氏名又は名称】ザ・ボーイング・カンパニー
【氏名又は名称原語表記】The Boeing Company
(74)【代理人】
【識別番号】110002077
【氏名又は名称】園田・小林弁理士法人
(72)【発明者】
【氏名】アフラシアビ, アミール
(57)【要約】 (修正有)
【課題】機械学習(ML)に対する敵対的攻撃の検出及び回避方法並びに非一過性のコンピュータ可読媒体を提供する。
【解決手段】方法は、訓練されたMLモデルにおいて1以上の画像を受け取ることと、MLモデルにおいて攻撃データを受け取ることと、1以上の画像、1以上の画像に関連するメタデータ及び攻撃データに基づいて、MLモデルを使用して1以上の画像内に描かれている物体を予測することと、を含む。MLモデルは、攻撃データが予測の結果を変えることを防止するためにメタデータを使用する。
【選択図】
図3B
【特許請求の範囲】
【請求項1】
訓練された機械学習(ML)モデルにおいて1以上の画像を受け取ること(352)、
前記MLモデルにおいて攻撃データを受け取ること(354)、並びに
前記1以上の画像、前記1以上の画像に関連するメタデータ、及び前記攻撃データに基づいて、前記MLモデルを使用して前記1以上の画像内に描写されている物体を予測すること(356)であって、前記MLモデルは、前記メタデータを使用して、前記攻撃データが前記予測の結果を変えることを防止する、物体を予測すること(356)を含む、方法。
【請求項2】
前記攻撃データは、前記MLモデルによる前記物体の前記予測を変えることを意図した敵対的攻撃データ(404)を含む、請求項1に記載の方法。
【請求項3】
前記MLモデルは、物体を描写する訓練画像と前記訓練画像に関連するメタデータとの組み合わせを使用して訓練される(306)、請求項1に記載の方法。
【請求項4】
前記MLモデルは、前記訓練画像及び前記メタデータに関連する多次元アレイ(510)を使用して訓練される、請求項3に記載の方法。
【請求項5】
前記メタデータは、経時的にキャプチャされた前記物体の更なる画像に関連する時間的メタデータ(410A‐N)を含む、請求項1に記載の方法。
【請求項6】
前記時間的メタデータ(410A‐N)は、前記物体の複数の視界を描写する画像を更に含む、請求項5に記載の方法。
【請求項7】
前記メタデータは、前記1以上の画像内に描写されている前記物体に関連するグラフ(620)を含む、請求項1に記載の方法。
【請求項8】
前記グラフ(620)は、前記物体のサブコンポーネントに関連する複数の頂点及び辺を含む、請求項7に記載の方法。
【請求項9】
前記グラフ(620)は、前記サブコンポーネントを特定するするために第2のMLモデルを使用して生成される、請求項8に記載の方法。
【請求項10】
前記グラフ(620)は、前記サブコンポーネントの各々についてバウンディングボックスを特定し、各バウンディングボックスについてそれぞれの質量中心を計算することに基づいて更に生成され、前記グラフ(620)内の前記頂点の各々は、前記質量中心のうちの1以上に関連する、請求項9に記載の方法。
【請求項11】
コンピュータプログラムコードを含む非一過性のコンピュータ可読媒体であって、前記コンピュータプログラムコードは、1以上のコンピュータプロセッサの動作によって実行されると、複数の動作を実行し、前記複数の動作は、
訓練された機械学習(ML)モデルにおいて1以上の画像を受け取ること(352)、
前記MLモデルにおいて攻撃データを受け取ること(354)、並びに
前記1以上の画像、前記1以上の画像に関連するメタデータ、及び前記攻撃データに基づいて、前記MLモデルを使用して前記1以上の画像内に描写されている物体を予測すること(356)であって、前記MLモデルは、前記メタデータを使用して、前記攻撃データが前記予測の結果を変えることを防止する、物体を予測すること(356)を含む、非一過性のコンピュータ可読媒体。
【請求項12】
前記MLモデルは、物体を描写する訓練画像と前記訓練画像に関連するメタデータとの組み合わせを使用して訓練される(306)、請求項11に記載の非一過性のコンピュータ可読媒体。
【請求項13】
前記メタデータは、経時的にキャプチャされた前記物体の更なる画像に関連する時間的メタデータ(410A‐N)を含む、請求項11に記載の非一過性のコンピュータ可読媒体。
【請求項14】
前記時間的メタデータ(410A‐N)は、前記物体の複数の視界を描写する画像を更に含む、請求項13に記載の非一過性のコンピュータ可読媒体。
【請求項15】
前記メタデータは、前記1以上の画像内に描写されている前記物体に関連するグラフ(620)を含む、請求項11に記載の非一過性のコンピュータ可読媒体。
【請求項16】
コンピュータプロセッサ、並びに
指示命令が記憶されたメモリを備える、システムであって、前記指示命令は、前記コンピュータプロセッサで実行されると、複数の動作を実行し、前記複数の動作は、
訓練された機械学習(ML)モデルにおいて1以上の画像を受け取ること(352)、
前記MLモデルにおいて攻撃データを受け取ること(354)、並びに
前記1以上の画像、前記1以上の画像に関連するメタデータ、及び前記攻撃データに基づいて、前記MLモデルを使用して前記1以上の画像内に描写されている物体を予測すること(356)であって、前記MLモデルは、前記メタデータを使用して、前記攻撃データが前記予測の結果を変えることを防止する、物体を予測すること(356)を含む、システム。
【請求項17】
前記MLモデルは、物体を描写する訓練画像と前記訓練画像に関連するメタデータとの組み合わせを使用して訓練される(306)、請求項16に記載のシステム。
【請求項18】
前記メタデータは、経時的にキャプチャされた前記物体の更なる画像に関連する時間的メタデータ(410A‐N)を含む、請求項16に記載のシステム。
【請求項19】
前記時間的メタデータ(410A‐N)は、前記物体の複数の視界を描写する画像を更に含む、請求項18に記載のシステム。
【請求項20】
前記メタデータは、前記1以上の画像内に描写されている前記物体に関連するグラフ(620)を含む、請求項16に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
[0001] 本開示の態様は、機械学習(ML)に関し、特に、MLに対する敵対的攻撃の回避に関する。
【背景技術】
【0002】
[0002] MLにおける敵対的攻撃は、概して、モデルを混乱させる目的で(例えば、ニューラルネットワークを混乱させる目的で)、MLモデルに意図的に提供される入力である。その結果、所与の入力を誤って分類することなどのエラーが発生し得る。例えば、敵対的攻撃は、誤検出値又は検出漏れ値を示唆する誤分類につながり得る。これは、重大な結果をもたらし得る。これは、医療用途、自律ビークルの動作、及び多くの他の重要な用途を含む、重要な用途で特に問題となる。例えば、コンピュータビジョンMLモデルにおける自律的攻撃は、自律用途やロボット用途、ならびにセキュリティや監視システムにおける、壊滅的な損害をもたらし得る。
【発明の概要】
【0003】
[0003] 複数の実施形態は、方法を含む。該方法は、訓練されたMLモデルにおいて1以上の画像を受け取ることを含む。該方法は、MLモデルにおいて攻撃データを受け取ることを更に含む。該方法は、1以上の画像、1以上の画像に関連するメタデータ、及び攻撃データに基づいて、MLモデルを使用して1以上の画像内に描写されている物体を予測することを更に含む。MLモデルは、攻撃データが予測の結果を変えることを防止するためにメタデータを使用する。
【0004】
[0004] 複数の実施形態は、コンピュータプログラムコードを含む非一過性のコンピュータ可読媒体を更に含む。該コンピュータプログラムコードは、1以上のコンピュータプロセッサの動作によって実行されると、複数の動作を実行する。該動作は、訓練されたMLモデルにおいて1以上の画像を受け取ることを含む。該動作は、MLモデルにおいて攻撃データを受け取ることを更に含む。該動作は、1以上の画像、1以上の画像に関連するメタデータ、及び攻撃データに基づいて、MLモデルを使用して1以上の画像内に描写されている物体を予測することを更に含むMLモデルは、攻撃データが予測の結果を変えることを防止するためにメタデータを使用する。
【0005】
[0005] 複数の実施形態は、コンピュータプロセッサと指示命令を有するメモリとを含むシステムを更に含む。該指示命令は、コンピュータプロセッサによって実行されると、複数の動作を実行する。該動作は、訓練されたMLモデルにおいて1以上の画像を受け取ることを含む。該動作は、MLモデルにおいて攻撃データを受け取ることを更に含む。該動作は、1以上の画像、1以上の画像に関連するメタデータ、及び攻撃データに基づいて、MLモデルを使用して1以上の画像内に描かれている物体を予測することを更に含むMLモデルは、攻撃データが予測の結果を変えることを防止するためにメタデータを使用する。
【0006】
[0006] 複数の実施形態は、上述された複数の実施形態のいずれかを更に含む。その場合、攻撃データは、MLモデルによる物体の予測を変えることを意図した敵対的攻撃データを含む。
【0007】
[0007] 複数の実施形態は、上述された複数の実施形態のいずれかを更に含む。その場合、MLモデルは、物体を描写する訓練画像と訓練画像に関連するメタデータとの組み合わせを使用して訓練される。
【0008】
[0008] 複数の実施形態は、上述された複数の実施形態のいずれかを更に含む。その場合、MLモデルは、訓練画像及びメタデータに関連する多次元アレイを使用して訓練される。
【0009】
[0009] 複数の実施形態は、上述された複数の実施形態のいずれかを更に含む。その場合、メタデータは、経時的にキャプチャされた物体の更なる画像に関連する時間的メタデータを含む。
【0010】
[0010] 複数の実施形態は、上述された複数の実施形態のいずれかを更に含む、その場合、時間的メタデータは、物体の複数の視界(multiple view)を描写する画像を更に含む。
【0011】
[0011] 複数の実施形態は、上述された複数の実施形態のいずれかを更に含む。その場合、メタデータは、1以上の画像内に描写されている物体に関連するグラフを含む。
【0012】
[0012] 複数の実施形態は、上述された複数の実施形態のいずれかを更に含む。その場合、グラフは、物体のサブコンポーネントに関連する複数の頂点及び辺を含む。
【0013】
[0013] 複数の実施形態は、上述された複数の実施形態のいずれかを更に含む、その場合、グラフは、サブコンポーネントを特定するために第2のMLモデルを使用して生成される。
【0014】
[0014] 複数の実施形態は、上述された複数の実施形態のいずれかを更に含む。その場合、グラフは、サブコンポーネントの各々についてバウンディングボックスを特定し、各バウンディングボックスについてそれぞれの質量中心を計算することに基づいて更に生成される。グラフ内の頂点の各々は、質量中心のうちの1以上に関連する。
【0015】
[0015] 以下の説明及び関連する図面は、1以上の実施形態の特定の例示的な特徴を詳細に説明する。
【0016】
[0016] 添付の図面は、1以上の実施形態の特定の態様を示すもので、したがって、本開示の範囲に限定されるとみなされるべきではない。
【図面の簡単な説明】
【0017】
【
図1A】[0017] 一実施形態によるコンピュータビジョンMLシステムに対する敵対的攻撃を示す。
【
図1B】[0018] 一実施形態によるコンピュータビジョンMLシステムに対する敵対的攻撃に対する1つの解決策を示す。
【
図2】[0019] 一実施形態によるMLに対する敵対的攻撃の回避のためのコンピュータビジョンコントローラを示すブロック図である。
【
図3A】[0020] 一実施形態による敵対的攻撃の回避のためのMLモデルの訓練を示すフローチャートである。
【
図3B】[0021] 一実施形態による敵対的攻撃の回避のためのMLモデルを使用する推論を示すフローチャートである。
【
図4】[0022] 一実施形態によるMLに対する敵対的攻撃の回避のための時間的メタデータの使用を示す。
【
図5A】[0023] 一実施形態によるMLに対する敵対的攻撃の回避のための時間的メタデータの生成のためのメタデータアレイを示す。
【
図5B】[0024] 一実施形態によるMLに対する敵対的攻撃の回避のための時間的メタデータの生成のためのメタデータグラフを示す。
【
図6】[0025] 一実施形態によるMLに対する敵対的攻撃の回避のためのサブコンポーネントメタデータの生成を示す。
【発明を実施するための形態】
【0018】
[0026] 理解を容易にするために、可能な場合には、図面に共通する同一の要素を指し示すのに同一の参照番号を使用した。一実施形態の要素及び特徴は、更なる説明なしに他の実施形態に有利に組み込むことができると考えられる。
【0019】
[0027] 以下の説明では、開示される主題の理解を容易にするために、実施例のやり方で詳細が説明される。しかし、開示される実施態様は例示的なものであり、全ての可能な実施態様を網羅するものではないことが、当業者には明らかであるはずである。したがって、説明される実施例への言及は、本開示の範囲を制限することを意図していないことが理解されるべきである。説明されるデバイス、器具、方法、及び本開示の原理の更なる用途に対する任意の変形及び更なる修正は、本開示が関連する技術分野の当業者において通常行われ得ると十分に考えられる。特に、一実施態様に関して説明される特徴、構成要素、及び/又はステップは、本開示の他の実施態様に関して説明される特徴、構成要素、及び/又はステップと組み合わされてよいことが十分に考慮されている。
【0020】
[0028] MLモデル(例えば、ニューラルネットワーク)での敵対的防御のための既存の解決策は、通常、モデル自体の微調整に焦点を当てている。例えば、K. Chow, W. Wei, Y. Wu, and K. Liuによる論文Denoising and Verification Cross-Layer Ensemble Against Black-box Adversarial Attacks, in 2019 IEEE International Conference on Big Data, pp.1282-1291がある。IEEE, 2019(本明細書で以下、「Chow論文」)は、敵対的攻撃の影響を軽減するための、ディープニューラルネットワーク(DNN)における畳み込み層の改良について説明している。これは、
図1Bに関して、以下で更に説明される。
【0021】
[0029] しかし、これは敵対的攻撃の根本的な問題、つまりMLモデルの訓練に使われる訓練データセットを解決するものではない。本明細書で開示される1以上の技法は、訓練データセット(例えば、コンピュータビジョンのための時間的メタデータ又は物体に関連するメタデータ)に更なるメタデータを提供することによって、敵対的攻撃を防止する。これは、たとえ敵対的攻撃が(例えば、推論中に)起こったとしても、MLモデルは、分類出力をデータポイントに関連するメタデータと照合することによって、誤分類(例えば、誤検出や検出漏れ)を特定するように訓練されていることを意味する。一実施形態では、これを使用して、標的を絞った敵対的攻撃(例えば、MLモデルMに物体XをクラスYとして誤分類させることを意図した攻撃)と、標的を絞らない敵対的攻撃(例えば、モデルMに任意の物体クラスを誤分類させることを意図した攻撃)と、の両方を防止することができる。
【0022】
[0030] 一実施形態では、以下で1以上の実施形態に関して説明されるように、訓練中にメタデータを追加することが、分類結果を検証するために人間スタイルのルールベースの判断を利用するように、MLモデルを訓練する。これには、様々な異なるML用途に対する敵対的攻撃に対する堅牢性を含む、多くの利点がある。更に、これらの技法のうちの1以上は、欠落している(例えば、検出漏れ)又は誤分類されている(例えば、誤検出)サブコンポーネントの予測を支援することができる。それらはまた、訓練データセットやデータストレージのサイズを小さくすることもできる。例えば、これらの技法のうちの1以上は、フルサイズの画像の代わりに画像データ用(すなわち、コンピュータビジョン用)のグラフ表現を使用することができる。更に、本明細書で開示される技法は、動き検出や活動警告システム、視覚的検索エンジンや視覚的質疑応答システム、視覚的品質検査、及び様々な他の用途を含む、様々な用途向けに使用され得る。
【0023】
[0031]
図1Aは、一実施形態によるコンピュータビジョンMLシステムに対する敵対的攻撃を示す。一実施形態では、フロー110が、敵対的攻撃なしのコンピュータビジョン予測を示す。MLモデル114(例えば、DNN)は、入力として画像112を受け取る。MLモデル114は、予測116を生成する。予測116は、画像112が一時停止の標識を示すことを正確に予測し、この予測の信頼度は95%である。
【0024】
[0032] 一実施形態では、フロー120が、敵対的攻撃ありのコンピュータビジョン予測を示す。同じ画像112が、同じMLモデル114に提供される。加えて、しかし、敵対的ノイズ122も、ML114に対する入力として加えられる。一実施形態では、敵対的ノイズ122が、MLモデル114の性能を大幅に害する。図示されているように、敵対的ノイズ122は、MLモデル114が異なる予測を生成することをもたらす。予測124は、画像112が一方通行の標識を示すことを誤って予測し、その信頼度は95%である。
図3A~
図6に関連して以下で説明される1以上の技法は、敵対的攻撃に直面したときに、MLモデル(例えば、MLモデル114)の性能を向上させるための解決策を提供する。
【0025】
[0033]
図1Bは、一実施形態によるコンピュータビジョンMLシステムに対する敵対的攻撃に対する1つの解決策150を示す。一実施形態では、解決策150が、上述されたChow論文で説明されている先行技術の解決策である。図示されているように、解決策150は、DNN内部の畳み込み層の修正を提案する。例えば、多数のノイズ除去エンコーダ152及びデコーダ154を訓練して(例えば、破損したデータ例を使用して)、敵対的攻撃で提供されるノイズの敵対的効果を除去することができる。しかし、これは理想的ではない。というのも、MLモデル自体に修正を加える必要があり、特定の種類の敵対的攻撃や特定のモデル構築に束縛されるからである。以下の
図3A~
図6は、改善された解決策のための1以上の実施形態を説明する。この解決策は、様々な異なるML用途及び攻撃での敵対的攻撃に対して堅牢である。
【0026】
[0034]
図2は、一実施形態によるMLに対する敵対的攻撃の回避のためのコンピュータビジョンコントローラ200を示すブロック図である。一実施形態では、コンピュータビジョンコントローラ200が、プロセッサ202、メモリ210、及びネットワーク構成要素220を含む。メモリ210は、任意の非一過性のコンピュータ可読媒体の形態を採ってよい。プロセッサ202は、概して、メモリ210内に記憶されたプログラミング指示命令を読み出して、実行する。プロセッサ202は、単一の中央処理装置(CPU)、複数のCPU、複数の処理コアを有する単一のCPU、複数の実行経路を有するグラフィックス処理装置(CPU)などが代表的である。
【0027】
[0035] ネットワーク構成要素220は、コンピュータビジョンコントローラ200が適切な通信ネットワークと相互作用するために必要な構成要素を含む。例えば、ネットワーク構成要素220は、有線、WiFi、又はセルラーネットワークインターフェース構成要素及び関連するソフトウェアを含み得る。メモリ210は、単一のエンティティとして図示されているが、メモリ210は、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、フラッシュメモリ、又は他の種類の揮発性及び/若しくは不揮発性メモリなどの、物理アドレスに関連付けられたメモリのブロックを有する1以上のメモリデバイスを含んでよい。
【0028】
[0036] メモリ210は、概して、コンピュータビジョンコントローラ200の使用に関連する様々な機能を実行するためのプログラムコードを含む。プログラムコードは、概して、メモリ210内の様々な機能的「アプリケーション」又は「モジュール」として説明されるが、代替的な複数の実施態様は、異なる機能及び/又は機能の組み合わせを有してよい。メモリ210内では、訓練サービス212が、コンピュータビジョンMLモデル216(例えば、物体分類MLモデル)の訓練を容易にする。一実施形態では、コンピュータビジョンMLモデル216が、ニューラルネットワーク(例えば、DNN)又は任意の他の適切なMLモデルを含む、任意の適切なMLモデルである。推論サービス214は、コンピュータビジョンMLモデル216を使用して、入力画像によって描写されているものを予測することを容易にする。これは、
図3A~
図6関して、以下で更に説明される。
【0029】
[0037]
図2は、訓練サービス212、推論サービス214、及びコンピュータビジョンMLモデル216を、メモリ内210に配置されているとして示しているが、その表現は、単なる明瞭さのための例示として提供されている。より一般的には、コンピュータビジョンコントローラ200が、例えば、コンピュータサーバなどの1以上のコンピューティングプラットフォームを含み得る。それらは、共に配置されてよく、クラウドベースシステム(例えば、パブリッククラウド、プライベートクラウド、ハイブリッドクラウド、又は任意の他の適切なクラウドベースシステム)などの、インタラクティブにリンクされているが分散されたシステムを形成してよい。結果として、プロセッサ202及びメモリ210は、コンピューティング環境内の分散されたプロセッサ及びメモリリソースに対応してよい。したがって、訓練サービス212、推論サービス214、及びコンピュータビジョンMLモデル216のいずれか又は全ては、コンピューティング環境の分散されたメモリリソース内のコンピュータビジョンコントローラ200から遠隔に記憶されてよいことを理解されたい。
【0030】
[0038]
図3Aは、一実施形態による敵対的攻撃の回避のためのMLモデルの訓練を示すフローチャート300である。ブロック302において、訓練サービス(例えば、
図2で示されている訓練サービス212)、人間の管理者、又は任意の適切なエンティティが、訓練データを特定する。例えば、訓練サービスは、適切な訓練データを使用して、コンピュータビジョンMLモデル(例えば、コンピュータビジョンMLモデル216)を訓練することができる。訓練データは、コンピュータビジョンMLモデルを訓練するために使用される物体の適切なラベル付き画像を含み得る。
【0031】
[0039] ブロック304において、訓練サービスは、訓練データ内の物体についての更なるメタデータを特定する。一実施形態では、訓練データが、画像内に描写されているラベル付き物体を含む。既存の解決策では、この訓練データを使用して、コンピュータビジョンMLモデルを訓練する。しかし、
図1A~Bに関連して上述されたように、典型的な訓練データを用いて訓練されたコンピュータビジョンMLモデルは、敵対的攻撃に対して潜在的に脆弱である。
【0032】
[0040] 一実施形態では、訓練サービスが、訓練データ内の物体について更なるメタデータを使用することによって、コンピュータビジョンMLモデルに対する敵対的攻撃に対する堅牢性を改善する。例えば、訓練サービスは、経時的に物体を描写する更なる時間的データを特定し得る。この時間的データは、例えば、ある期間を経て連続的な画像として取得された物体の画像を含み得る。この時間的データは、コンピュータビジョンMLモデルを訓練するためのメタデータとして使用されて、推論中のエラーを特定することができ、コンピュータビジョンMLモデルを敵対的攻撃に対してより堅牢にする。これは、
図4~
図5Bに関して、以下で更に説明される。
【0033】
[0041] 別の一実施例として、訓練サービスは、単一の画像内の複数の物体同士の間の関係を反映した更なるメタデータを生成し得る。例えば、コンピュータビジョンMLモデルを訓練するために使用される画像は、複数の物体を描写してよく、又はサブコンポーネントに分割可能な単一の物体を描写してもよい。訓練サービスは、これらの物体又は物体のサブコンポーネント同士の間の関係に基づいて(例えば、物体又はサブコンポーネントのグラフ表現を生成することに基づいて)、更なるメタデータを生成し得る。訓練サービスは、この更なるメタデータを使用してコンピュータビジョンMLモデルを訓練することができ、コンピュータビジョンMLモデルを敵対的攻撃に対してより堅牢にする。これは、
図6に関して、以下で更に説明される。
【0034】
[0042] ブロック306において、訓練サービスは、更なるメタデータ及び訓練データを使用して、MLモデルを訓練する。例えば、訓練サービスは、時間的メタデータ(例えば、経時的な物体の複数の画像を反映する)と典型的な訓練データとの両方を使用してMLモデルを訓練し得る。これは、
図4~
図5Bに関して、以下で更に説明される。別の一実施例として、訓練サービスは、物体メタデータ(例えば、訓練データ内で描写されている(1以上の)物体のグラフ表現を生成することに基づく)と典型的な訓練データとの両方を使用してMLモデルを訓練し得る。これは、
図6に関して、以下で更に説明される。
【0035】
[0043] ブロック308において、推論サービス(例えば、
図2で示されている推論サービス214)は、訓練されたMLモデルを使用して物体を予測する。例えば、コンピュータビジョンMLモデルは、ブロック302
~306に関連して上述された技法を使用して訓練され得る。推論サービスは、次いで、訓練されたコンピュータビジョンMLモデルを使用して、画像内に描写されているものを予測することができる。これは、
図3Bに関して、以下で更に説明される。
【0036】
[0044] 例えば、コンピュータビジョンMLモデルは、ある期間を経て取得された物体の画像を反映した時間的メタデータを使用して訓練され得る。推論サービスは、物体の複数の画像を入力として受け取ることができ、コンピュータビジョンMLモデルを使用して、画像内に描写されている物体を予測することができる。一実施形態では、訓練中に更なる時間的メタデータを使用することにより、コンピュータビジョンMLモデルが、敵対的攻撃に対して著しくより堅牢になる。
【0037】
[0045] 別の一実施例として、コンピュータビジョンMLモデルは、物体関係メタデータ(例えば、画像内に描写されている(1以上の)物体のグラフ表現を反映する)を使用して訓練され得る。推論サービスは、1以上の物体の単一の画像を入力として受け取ることができ、コンピュータビジョンMLモデルを使用して、画像内に描写されている物体を予測することができる。一実施形態では、訓練中に更なる物体関係メタデータを使用することにより、コンピュータビジョンMLモデルが、敵対的攻撃に対して著しくより堅牢になる。
【0038】
[0046]
図3Bは、一実施形態による敵対的攻撃の回避のためのMLモデルを使用する推論を示すフローチャートである。一実施形態では、
図3Bが、
図3Aに関連して上述されたブロック308に対応する。ブロック352において、推論サービス(例えば、
図2で示されている推論サービス214)は、1以上の画像を受け取る。例えば、推論サービスは、コンピュータビジョンMLモデル(例えば、
図2で示されているコンピュータビジョンMLモデル216)を使用して、画像内に描写されている物体の予測のための1以上の画像を受け取り得る。
【0039】
[0047] ブロック354において、推論サービスは攻撃データを受け取る。例えば、
図1Aに関連して上述されたように、敵対的攻撃データは、MLモデルによって行われた予測を変えるために、コンピュータビジョンMLモデルに提供され得る。一実施形態では、敵対的攻撃データが、MLモデルによって行われた予測の精度を低減させるために意図的に提供される。
【0040】
[0048] ブロック356において、推論サービスは、メタデータを使用して画像内に描写されている物体を予測する。例えば、
図3Aに関連して上述されたように、コンピュータビジョンMLモデルは、入力画像に関連するメタデータを使用して、攻撃データによってもたらされる不正確さを回避するように訓練され得る。これは、時間的メタデータ(例えば、
図4~図5Bに関連して以下で説明されるような)、物体グラフメタデータ(例えば、
図6に関連して以下で説明されるような)、又は任意の他の適切なメタデータであり得る。一実施形態では、MLモデルが、メタデータを使用して、攻撃データが予測の結果を変えることを防止する。例えば、メタデータがなければ、MLモデルの予測は攻撃データによって変わってしまう(例えば、不正確になる可能性がある)だろう。しかし、メタデータがあれば、MLモデルの予測は、敵対的攻撃に対して堅牢であり、攻撃データによって変わることはない。
【0041】
[0049]
図4は、一実施形態によるMLに対する敵対的攻撃の回避のための時間的メタデータの使用を示す。一実施形態では、コンピュータビジョンMLモデル(例えば、コンピュータビジョンMLモデル216)を使用して、一連の画像410A‐Nとして描写されている物体402(例えば、物体A)を分類する。例えば、一連の時間画像410A‐Nは、期間t
0->t
nにわたり複数の視界から物体Aを描写している。
図4で示されているように、物体Aは、この時間にわたり4つの視界で描写され、各視界は、期間にわたり取得された複数の画像(例えば、4つの視界の各々から1秒ごとに、数秒ごとに、又は任意の他の適切な間隔で取得された画像)を含む。異なる視界は、期間t
0->t
nにわたり異なる位置又は角度から物体Aをキャプチャする異なる画像キャプチャデバイス(例えば、異なるカメラ)を反映し得る。これは、単なる一例であり、任意の適切な数の視界が使用され得る。例えば、1つの視界が使用され得るか、5つ以上の視界が使用され得るか、又は任意の他の適切な数の視界が使用され得る。更には、期間t
0->t
nは、任意の適切な持続時間を反映することができ、時間画像は、各視界の任意の適切な数の画像を反映することができる。
【0042】
[0050] 一実施形態では、時間画像410A‐Nは、中間分類430A‐N及び最終予測結果440を生成するために、物体分類ニューラルネットワーク層420によって使用される。例えば、コンピュータビジョンMLモデルは、一連の層420(例えば、畳み込み層)で構成された物体分類ニューラルネットワークであり得る。これらの層420を使用して、中間分類430A‐N及び最終予測結果440を生成することができる。
【0043】
[0051] 一実施形態では、敵対的攻撃404がまた、コンピュータビジョンMLモデルに提供される。例えば、敵対的攻撃404は、時間画像410A‐Nと共に物体分類ニューラルネットワーク層420への入力として提供され得る。図示されているように、敵対的攻撃は、中間分類430A‐Nのうちの1つを変える。物体分類ニューラルネットワーク層420は、時間t0->tnからの視界1の画像を物体Aを描写するものとして分類する。同様に、物体分類ニューラルネットワーク層420は、時間t0->tnからの視界3及び4の画像を物体Aを描写するものとして分類する。しかし、敵対的攻撃404は、物体分類ニューラルネットワーク層420に、時間t0->tnからからの視界2の画像を物体Bを描写するものとして分類させる。これは、敵対的攻撃404によってもたらされたエラーである。
【0044】
[0052] しかし、一実施形態では、コンピュータビジョンMLモデルが、敵対的攻撃に対して堅牢になるように、時間的メタデータを使用して訓練されている(例えば、
図3に関連して上述されたように)。したがって、訓練された物体分類ニューラルネットワーク層420は、物体Bの分類を物体Aの分類(例えば、他の時間画像からの)と矛盾するとして特定する。予測結果440は、敵対的攻撃404にもかかわらず、物体Aの正しい予測のままである。
【0045】
[0053] 一実施形態では、時間画像410A‐Nが、単一の訓練データセット(例えば、単一のテンソルファイル)の中に組み込まれる。更に、時間画像410A‐Nの各々は、それぞれの画像がキャプチャされた時間を特定するタイムスタンプに関連付けられ得る。これにより、訓練されたコンピュータビジョンMLモデルは、画像の順序を特定することが可能になり、その対応する視界は、対応する時間における同じ物体の異なる視界を反映する。
【0046】
[0054]
図5Aは、一実施形態によるMLに対する敵対的攻撃の回避のための時間的メタデータの生成のためのメタデータアレイ510を示す。一実施形態では、訓練サービス(例えば、
図2で示されている訓練サービス212)が、収集されたデータをメタデータ及びタイムスタンプ付きデータのn次元アレイに形成する。
図5Bに関連して以下で説明されるように、各キャプチャされた画像についてのメタデータは、画像内の物体と物体構成要素との間の関係を説明する一連の辺(例えば、グラフ内の辺)として抽出され、記録され得る。
【0047】
[0055] メタデータアレイ510は、3つの次元、すなわち、時間軸512、視界軸514、及びメタデータ軸516を含む。時間軸512及び視界軸514は、例えば、時間画像(例えば、
図4で示されている時間画像410A‐N)に対応し得る。すなわち、メタデータアレイ510内の各エントリは、特定の視界からの特定の時間においてキャプチャされた画像に関し得る。メタデータ軸516は、これらの画像の各々について抽出されたメタデータを反映する。例えば、メタデータ軸516は、軸512及び514に沿って表されるそれぞれの視界からの特定の時間においてキャプチャされた画像内に描写されている(1以上の)物体を表すグラフの辺及び頂点を反映し得る。
【0048】
[0056]
図5Bは、一実施形態によるMLに対する敵対的攻撃の回避のための時間的メタデータの生成のためのメタデータグラフ550を示す。一実施形態では、メタデータグラフ550内の各頂点が、画像内の物体のサブコンポーネントを反映し、頂点同士の間の辺は、これらのサブコンポーネント同士の間の関係を反映する。以下の
図6は、メタデータグラフ550を生成するための1つの例示的な技法を説明する。更に、
図5Aに関して上述されたアレイ510内のメタデータ軸516は、各キャプチャされた画像に対応するメタデータグラフを反映し得る。
【0049】
[0057] 例えば、メタデータグラフ550は、キャプチャされた画像内に描写されている航空機に対応し得る。頂点552は、航空機の機首に対応することができ、頂点554は、航空機の胴体に対応することができ、頂点556と558は、航空機のそれぞれの主翼に対応することができ、頂点560は、航空機のフィンに対応することができ、頂点562は、飛行機のテールコーンに対応することができ、頂点564は、航空機の安定板に対応することができる。一実施形態では、頂点552と564との間の辺は、航空機のこれらの構成要素同士の間の関係を反映する。
図5Aにおけるメタデータ軸516は、キャプチャされた画像(例えば、経時的に様々な視界からキャプチャされた画像)の各々についてのこれらの頂点及び辺を表し得る。
【0050】
[0058] 一実施形態では、
図5Aで示されているメタデータアレイ510を使用することにより、敵対的攻撃に対するコンピュータビジョンMLモデルの堅牢性が向上する。例えば、敵対的攻撃は、物体の全ての視界に影響を与え得る。メタデータアレイ510内のメタデータ軸516に沿って反映されたメタデータは、コンピュータビジョンMLモデルが、敵対的攻撃と物体サブコンポーネント同士の間の関係との矛盾を特定することを可能にし、コンピュータビジョンMLモデルを敵対的攻撃に対して著しくより堅牢にする。
【0051】
[0059]
図6は、一実施形態によるMLに対する敵対的攻撃の回避のためのサブコンポーネントメタデータの生成を示す。画像610は、物体を描写している。図示されているように、画像610は、整備工場内の航空機(例えば、製造中又は整備中の航空機)を描写している。航空機は、多くのサブコンポーネントで構成されている。
【0052】
[0060] 一実施形態では、訓練サービス(例えば、
図2で示されている訓練サービス212)が、これらのサブコンポーネントを特定する。例えば、訓練サービスは、サブコンポーネントを検出するために、適切な物体検出MLモデル(例えば、任意の適切な技法を使用する物体検出について訓練されたDNN)を使用し得る。例えば、訓練サービスは、サブコンポーネント1を航空機の機首として(例えば、90%の信頼度で)、サブコンポーネント2を航空機の胴体として(例えば、92%の信頼度で)、サブコンポーネント3を航空機の右主翼として(例えば、89%の信頼度で)、サブコンポーネント4を航空機の左主翼として(例えば、91%の信頼度で)、サブコンポーネント5を航空機のための安定板として(例えば、95%の信頼度で)、サブコンポーネント6を航空機のフィンとして(例えば、97%の信頼度で)、サブコンポーネント7を航空機のテールコーンとして(例えば、93%の信頼度で)特定し得る。これらは単なる例であり、任意の適切な技法を使用して、任意の適切なサブコンポーネントを特定することができる。
【0053】
[0061] 一実施形態では、訓練サービスが、様々なサブコンポーネントについてのバウンディングボックスを特定し(例えば、物体検出MLモデルを使用して)、各バウンディングボックスの質量中心を計算する。次いで、訓練サービスは、物体のグラフ表現620を生成する。一実施形態では、グラフ表現620が、バウンディングボックスの質量中心を表す頂点と頂点同士を接続する辺とを含む。このグラフ表現620は、敵対的攻撃に対して堅牢なMLモデルを訓練するためのメタデータとして使用され得る。例えば、グラフ表現620は、
図5Bで示されているメタデータグラフ550を生成するための1つの技法を示している。
【0054】
[0062] 一実施形態では、訓練サービスが、積み重ねられた訓練データ630を生成するために、ソース画像610とグラフ表現620とを積み重ねる。グラフ表現620は、ソース画像610についてのメタデータとして作用する。次いで、積み重ねられた訓練データ630を使用して、コンピュータビジョンMLモデル(例えば、DNN)640(例えば、
図2で示されているコンピュータビジョンMLモデル216)を訓練することができる。次いで、訓練されたコンピュータビジョンMLモデル640を使用して、1以上の画像650内の物体を予測することができる。ソース画像610と共にグラフ表現620を含めることで、訓練されたコンピュータビジョンMLモデルは、敵対的攻撃によってもたらされる不正確さを特定することができ、訓練されたコンピュータビジョンMLモデルを敵対的攻撃に対して堅牢にする。
【0055】
更なる検討事項
[0063] 前述の説明は、いかなる当業者も本明細書で説明される様々な実施形態を実施することが可能なように提供されている。本明細書で説明された実施例は、特許請求の範囲内で説明される範囲、適用性、又は実施形態を限定しない。これらの実施形態に対する様々な改変例が当業者には容易に明らかとなろう。また、本明細書に定義される一般的原理が他の実施形態に適用され得る。例えば、本開示の範囲から逸脱することなく、述べられる要素の機能及び構成に更がなされ得る。様々な例が、必要に応じて様々な手順又は構成要素を省略し、代用し、又は付加し得る。例として、記載される方法は、記載される順番とは異なる順番で実行されてもよく、様々なステップが追加され、省略され、又は結合されてもよい。また、幾つかの例に対して記載される特徴は、他の幾つかの例において結合され得る。例えば、本明細書に明記された幾つかの態様を使用して、装置が実装され、又は方法が実施され得る。更に、本明細書に明記された開示の様々な態様に加え、或いはそれ以外に他の構造、機能性、又は構造及び機能性を使用して実施されるような装置又は方法をカバーするために、本開示の範囲は意図される。本明細書に開示された開示のいかなる態様も、特許請求の範囲の1つ又は複数のエレメントによって実現され得ることを理解すべきである。
【0056】
[0064] 本明細書で使用される用語「例示」とは、「例、実例、又は説明の役割を果たす」ことを意味する。「例示的な」として本明細書で説明される任意の態様は、必ずしも他の態様よりも好ましい又は有利であると解釈されるべきではない。
【0057】
[0065] 項目のリストのうちの「少なくとも1つの」とは、本明細書では、単一の部材を含めたそれらの項目の任意の組み合わせを指す。一実施例として、「a、b、又はcのうちの少なくとも1つ」は、a、b、c、a~b、a~c、b~c、及びa~b~cをカバーし、並びに複数の同じ要素を有する任意の組み合わせ(例えば、a~a、a~a~a、a~a~b、a~a~c、a~b~b、a~c~c、b~b、b~b~b、b~b~c、c~c、並びにc~c~c、又はa、b、及びcの任意の順序付け)をカバーする。
【0058】
[0066] 本明細書で使用される用語「特定する」とは、多種多様な行為を包含する。例えば、「決定すること、判定すること、特定すること、判断すること」は、計算すること、算出すること、処理すること、導出すること、調査すること、調べること(例えば、表、データベース、又は別のデータ構造を調べること)、確認することなどを含んでよい。また、「決定すること、判定すること、特定すること、判断すること」は、受け取る(例えば、情報を受け取る)こと、アクセスする(例えば、メモリのデータにアクセスする)ことなどを含んでよい。また、「決定すること、判定すること、特定すること、判断すること」は、解決すること、選択すること、選ぶこと、確立することなどを含んでよい。
【0059】
[0067] 本明細書で開示される方法は、本方法を達成するために、1以上のステップ又は行為を含む。方法のステップ及び/又は行為は、特許請求の範囲から逸脱することなく、相互に交換することができる。言い換えると、ステップ又は行為の特定の順番が特定されなければ、特許請求の範囲から逸脱することなく、特定のステップ及び/又は行為の順番及び/又は使用が修正されてもよい。更に、上記の方法の様々な工程は、対応する機能を実行できる任意の適切な手段によって、実行されてもよい。手段は、回路、特定出願向け集積回路(ASIC)、又はプロセッサを含むがこれらに限定されない、様々な(1以上の)ハードウェア及び/又はソフトウェア構成要素及び/又は(1以上の)モジュールを含んでよい。概して、図面で示された動作がある場合、それらの動作は、同様の番号を付した対応するカウンターパートのミーンズ・プラス・ファンクション構成要素を有してよい。
【0060】
[0068] 以下の特許請求の範囲は、本明細書に示された実施形態に限定されることを意図していないが、特許請求の範囲の文言と一致する全範囲を与えるものである。特許請求の範囲内で、単数形の要素への言及は、特に明記されていない限り、「1つだけ」を意味するものではなく、「1つ又は複数」を意味するものである。特に明記されていない限り、「いくつかの」という用語は1つ又は複数を意味する。如何なるクレーム要素も、その要素が「~する手段(means for)」というフレーズを用いて明示的に挙げられているか、又は方法クレームの場合にはその要素が「~するステップ(step for)」というフレーズを用いて挙げられていない限り、35U.S.C.§112(f)の規定に基づいて解釈されることはない。当業者にとって既知であるか、又は後に既知となる、本開示を通じて説明される様々な態様の要素に対する構造的及び機能的均等物は、参照により本明細書に明示的に組み込まれ、請求項に包含されることを意図している。更に、本明細書に開示されたものは、そのような開示が特許請求の範囲に明示的に記載されているか否かにかかわらず、公衆に提供されることを意図したものではない。
【外国語明細書】