(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024016838
(43)【公開日】2024-02-07
(54)【発明の名称】敵対的攻撃に対するクラウンに基づく方法及びシステム
(51)【国際特許分類】
G06T 7/00 20170101AFI20240131BHJP
【FI】
G06T7/00 300F
【審査請求】未請求
【請求項の数】20
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2023120912
(22)【出願日】2023-07-25
(31)【優先権主張番号】17/873,661
(32)【優先日】2022-07-26
(33)【優先権主張国・地域又は機関】US
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.BLUETOOTH
2.ZIGBEE
3.JAVA
4.PYTHON
5.JAVASCRIPT
(71)【出願人】
【識別番号】390023711
【氏名又は名称】ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツング
【氏名又は名称原語表記】ROBERT BOSCH GMBH
【住所又は居所原語表記】Stuttgart, Germany
(74)【代理人】
【識別番号】100114890
【弁理士】
【氏名又は名称】アインゼル・フェリックス=ラインハルト
(74)【代理人】
【識別番号】100098501
【弁理士】
【氏名又は名称】森田 拓
(74)【代理人】
【識別番号】100116403
【弁理士】
【氏名又は名称】前川 純一
(74)【代理人】
【識別番号】100134315
【弁理士】
【氏名又は名称】永島 秀郎
(74)【代理人】
【識別番号】100162880
【弁理士】
【氏名又は名称】上島 類
(72)【発明者】
【氏名】ホアン ジャン
(72)【発明者】
【氏名】ジェレミー ジーグ コルター
(72)【発明者】
【氏名】レスリー ライス
(72)【発明者】
【氏名】ワン-イー リン
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096AA06
5L096BA05
5L096CA02
5L096CA18
5L096DA01
5L096DA02
5L096FA02
5L096FA69
5L096HA11
5L096JA11
5L096KA04
5L096MA07
(57)【要約】
【課題】攻撃を識別する方法を提供する。
【解決手段】本方法は、1つ又は複数の画像の入力を受信することであって、1つ又は複数の画像は、パッチサイズ及びサイズを含む、ことと、画像を、第1のサブ画像と第2のサブ画像とに分割することと、第1のサブ画像及び第2のサブ画像を分類することであって、第1のサブ画像及び第2のサブ画像に関連するピクセル位置に変数を導入することによって分類が達成される、ことと、第1のサブ画像及び第2のサブ画像が分類されたことと、敵対的パッチが識別されたこととに応じて、入力が認証されていないことを示す通知を出力することと、を含む。
【選択図】
図3
【特許請求の範囲】
【請求項1】
攻撃を識別する方法であって、
1つ又は複数の画像の入力を受信することであって、前記1つ又は複数の画像は、パッチサイズ及びサイズを含む、ことと、
前記1つ又は複数の画像のうちの1つの画像を、第1のサブ画像と第2のサブ画像とに分割することと、
前記第1のサブ画像及び前記第2のサブ画像を分類することであって、前記第1のサブ画像及び前記第2のサブ画像に関連するピクセル位置に変数を導入することによって分類が達成される、ことと、
前記第1のサブ画像及び前記第2のサブ画像が分類されたことと、敵対的パッチが識別されたこととに応じて、前記入力が認証されていないことを示す通知を出力することと、
を含む方法。
【請求項2】
前記分類することは、前記第1のサブ画像及び前記第2のサブ画像に関連する入力空間において分枝限定法を利用することによって達成される、
請求項1に記載の方法。
【請求項3】
前記方法は、前記1つ又は複数の画像のうちの前記1つの画像に関連するパッチサイズを利用してパッチ攻撃問題を定式化するために、混合整数計画を利用することを含む、
請求項1に記載の方法。
【請求項4】
前記方法は、前記パッチ攻撃問題を解くために、凸計画ソルバを利用することを含む、
請求項3に記載の方法。
【請求項5】
前記画像は、LIDAR画像、レーダ画像、ソナー画像、サーマル画像、ヒート画像、又は、温度画像である、
請求項1に記載の方法。
【請求項6】
前記方法は、前記1つ又は複数の画像のうちの前記1つの画像に関連する画像サイズを利用して特徴マップを出力するように構成された特徴抽出器として、bagsnet又はconvmixerを利用することを含む、
請求項1に記載の方法。
【請求項7】
抽出器は、前記1つ又は複数の画像のうちの前記1つの画像よりも小さい受容野を有する、
請求項1に記載の方法。
【請求項8】
画像を分類するためのシステムであって、
当該システムは、
1つ又は複数の画像を生成するように構成されたセンサと、
前記センサと通信するコントローラと、
を含み、
前記コントローラは、
1つ又は複数の画像の入力を受信することであって、前記1つ又は複数の画像は、パッチサイズ及び画像サイズを含む、ことと、
前記1つ又は複数の画像のうちの1つの画像を、第1のサブ画像と第2のサブ画像とに分割することと、
前記第1のサブ画像及び前記第2のサブ画像を分類することであって、前記第1のサブ画像及び前記第2のサブ画像に関連するピクセル位置に変数を導入することによって分類が達成される、ことと、
前記第1のサブ画像及び前記第2のサブ画像が分類されたことと、敵対的パッチが識別されたこととに応じて、前記入力が認証されていないことを示す通知を出力することと、
を行うように構成されている、システム。
【請求項9】
前記画像は、LIDAR画像、レーダ画像、ソナー画像、サーマル画像、ヒート画像、又は、温度画像である、
請求項8に記載のシステム。
【請求項10】
前記分類することは、前記第1のサブ画像及び前記第2のサブ画像に関連する入力空間において分枝限定法を利用することによって達成される、
請求項8に記載のシステム。
【請求項11】
前記コントローラは、C1={xi,j,x∈Cかつ(i,j)∈S1},C2={xi,j,x∈Cかつ(i,j)∈S2}を利用して、前記第1のサブ画像及び前記第2のサブ画像を検証するようにさらに構成されている、
請求項8に記載のシステム。
【請求項12】
前記システムは、特徴抽出器を含み、
前記特徴抽出器は、前記1つ又は複数の画像のうちの1つの画像に関連する画像サイズを取得して特徴マップを出力するように構成されている、
請求項8に記載のシステム。
【請求項13】
前記特徴抽出器は、bagsnet又はconvmixerのいずれかを含む、
請求項12に記載のシステム。
【請求項14】
攻撃を識別する方法であって、
1つ又は複数の画像の入力を受信することであって、前記1つ又は複数の画像は、パッチサイズ及びサイズを含む、ことと、
前記1つ又は複数の画像のうちの1つの画像を、第1のサブ画像と第2のサブ画像とに分割することと、
前記第1のサブ画像及び前記第2のサブ画像を分類することであって、前記第1のサブ画像及び前記第2のサブ画像に関連するピクセル位置に変数を配置することによって分類が実施される、ことと、
前記第1のサブ画像及び前記第2のサブ画像が分類されたことと、敵対的パッチが識別されなかったこととに応じて、前記1つ又は複数の画像のうちの前記1つの画像を複数のサブ画像に分割して、前記複数のサブ画像を分類することを継続することと、
前記複数のサブ画像のうちの1つにおいて敵対的パッチが識別されたことに応じて、前記入力が認証されていないことを示す通知を出力することと、
を含む方法。
【請求項15】
前記方法は、全てのサブドメインが認証されている場合に、前記入力が認証されていることを示す通知を出力することをさらに含む、
請求項14に記載の方法。
【請求項16】
前記方法は、前記1つ又は複数の画像のうちの前記1つの画像に関連するパッチサイズを利用してパッチ攻撃問題を定式化するために、混合整数計画を利用することを含む、
請求項14に記載の方法。
【請求項17】
前記方法は、前記パッチ攻撃問題を解くために、凸計画ソルバを利用することを含む、
請求項14に記載の方法。
【請求項18】
前記分類することは、前記第1のサブ画像及び前記第2のサブ画像に関連する入力空間において分枝限定法を利用することによって達成される、
請求項14に記載の方法。
【請求項19】
前記方法は、C1={xi,j,x∈Cかつ(i,j)∈S1},C2={xi,j,x∈Cかつ(i,j)∈S2}を利用して、前記第1のサブ画像及び前記第2のサブ画像を検証することをさらに含む、
請求項14に記載の方法。
【請求項20】
前記方法は、前記1つ又は複数の画像のうちの前記1つの画像に関連する画像サイズを利用して特徴マップを出力するように構成された特徴抽出器として、bagsnet又はconvmixerを利用することをさらに含む、
請求項14に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
技術分野
本開示は、機械学習を使用した画像量子化に関する。
【背景技術】
【0002】
背景
機械学習ネットワークは、分類のためのニューラルネットワークの敵対的訓練を受けることがある。分類器の性能を、そのような摂動に対してロバスト化することができるが、そのようなシステムは、証明可能な性能の保証に欠ける場合がある。そのようなネットワークは、ロバスト性に欠けることがますます明らかとなってきている。
【発明の概要】
【課題を解決するための手段】
【0003】
概要
第1の実施形態は、攻撃を識別する方法が、1つ又は複数の画像の入力を受信することであって、1つ又は複数の画像は、パッチサイズ及びサイズを含む、ことと、画像を、第1のサブ画像と第2のサブ画像とに分割することと、第1のサブ画像及び第2のサブ画像を分類することであって、第1のサブ画像及び第2のサブ画像に関連するピクセル位置に変数を導入することによって分類が達成される、ことと、第1のサブ画像及び第2のサブ画像が分類されたことと、敵対的パッチが識別されたこととに応じて、入力が認証されていないことを示す通知を出力することと、を含むことを開示している。
【0004】
第2の実施形態は、画像を分類するためのシステムが、1つ又は複数の画像を生成するように構成されたセンサと、センサと通信するコントローラとを含み、コントローラが、1つ又は複数の画像の入力を受信することであって、1つ又は複数の画像は、パッチサイズ及びサイズを含む、ことと、画像を、第1のサブ画像と第2のサブ画像とに分割することと、第1のサブ画像及び第2のサブ画像を分類することであって、第1のサブ画像及び第2のサブ画像に関連するピクセル位置に変数を導入することによって分類が達成される、ことと、第1のサブ画像及び第2のサブ画像が分類されたことと、敵対的パッチが識別されたこととに応じて、入力が認証されていないことを示す通知を出力することと、を行うように構成されていることを開示している。
【0005】
第3の実施形態は、攻撃を識別する方法であって、1つ又は複数の画像の入力を受信することであって、1つ又は複数の画像は、パッチサイズ及びサイズを含む、ことと、画像を、第1のサブ画像と第2のサブ画像とに分割することと、第1のサブ画像及び第2のサブ画像を分類することであって、第1のサブ画像及び第2のサブ画像に関連するピクセル位置に変数を配置することによって分類が実施される、ことと、第1のサブ画像及び第2のサブ画像が分類されたことと、敵対的パッチが識別されなかったこととに応じて、画像を複数のサブ画像に分割して、複数のサブ画像を分類することを継続することと、複数のサブ画像のうちの1つにおいて敵対的パッチが識別されたことに応じて、入力が認証されていないことを示す通知を出力することと、を含む方法を開示している。
【図面の簡単な説明】
【0006】
【
図1】一実施形態による、ニューラルネットワークを訓練するためのシステムを示す図である。
【
図2】一実施形態による、ニューラルネットワークを訓練及び利用するためのコンピュータ実装方法を示す図である。
【
図3】パッチ攻撃に対して画像分類するためのニューラルネットワークを認証するための例示的なフローチャートである。
【
図4】混合整数計画を利用するフローチャートの例示的な実施形態を示す図である。
【
図5】一実施形態による、コンピュータ制御式の機械と制御システムとの間の相互作用の概略線図である。
【
図6】一実施形態による、部分的に自律的な車両、完全に自律的な車両、部分的に自律的なロボット、又は、完全に自律的なロボットであり得る車両を制御するように構成された
図5の制御システムの概略線図である。
【
図7】生産ラインの一部のような製造システムのパンチカッタ、カッタ又はガンドリルのような製造機械を制御するように構成された
図5の制御システムの概略線図である。
【
図8】少なくとも部分的に自律的なモードを有する電動ドリル又は電動ドライバのような電動工具を制御するように構成された
図5の制御システムの概略線図である。
【
図9】自動化されたパーソナルアシスタントを制御するように構成された
図5の制御システムの概略線図である。
【
図10】制御アクセスシステム又はサーベイランスシステムのようなモニタリングシステムを制御するように構成された
図5の制御システムの概略線図である。
【
図11】イメージングシステム、例えば、MRI装置、X線イメージング装置又は超音波装置を制御するように構成された
図5の制御システムの概略線図である。
【発明を実施するための形態】
【0007】
詳細な説明
本明細書には、本開示の実施形態が説明されている。しかしながら、開示された実施形態は、単なる例に過ぎず、他の実施形態は、種々異なる代替的な形態を取ることができるということが理解されるべきである。図面は、必ずしも縮尺通りであるとは限らない。すなわち、特定のコンポーネントの詳細を図示するためにいくつかの特徴が誇張されていたり又は最小化されていたりする場合がある。したがって、本明細書に開示された特定の構造的及び機能的な詳細は、限定するものとして解釈されるべきではなく、実施形態を種々に利用することを当業者に教示するための単なる代表的な基礎として解釈されるべきである。当業者には理解されるように、図面のいずれか1つを参照しながら図示及び説明された種々の特徴は、1つ又は複数の他の図面に図示された特徴と組み合わせられて、明示的には図示又は説明されていない実施形態を生成することができる。図示された特徴の組合せは、典型的な用途のための代表的な実施形態を提供するものである。しかしながら、特定の用途又は実装のためには、本開示の教示と一致するように特徴を種々に組み合わせること及び修正することが望ましい場合がある。
【0008】
敵対的パッチは、画像のあらゆる位置に存在する可能性があり、したがって、サンプルxを認証するためには、分類器に対する「最悪」の位置、すなわち、全てのパッチ位置に対する最も低いf_L*を発見することが必要である。
【0009】
サイズw×hの画像xについて検討し、全てのピクセル位置の集合は、S={(i,j)、ここで、0≦i≦w,0≦j≦h}である。これを解くために、まず始めに入力空間に対して分枝限定法(branch-and-bound)を行うことを提案する。
【0010】
分枝限定法は、検証問題カバレッジのドメインを以下のサブドメインに分割する。
【0011】
C1={xi,j,x∈Cかつ(i,j)∈S1},C2={xi,j,x∈Cかつ(i,j)∈S2}、ここで、S1∪S2=S (1)
【0012】
不完全な検証器を使用して、緩和を用いてそれぞれのサブドメインの下限を推定することができる。下限が0より大きい場合には、サブドメインが検証され、そうでない場合には、入力空間に対する断割が継続される(S1又はS2)。全ての不安定な入力空間が断割されると、検証が完了する。
【0013】
これに代えて、以下の定式化について検討する。
【0014】
pをサイズw
p×h
pのパッチとする。(lx,ly)を画像x内のパッチpの対応するピクセル位置とする。次いで、所望のサイズのパッチに対処するために、lxは、[1,w-wp]の範囲内の整数に制約され、lyは、[1,h-hp]の範囲内の整数に制約される。次いで、結果的に生じる摂動画像x’は、i∈[lx,lx+wp]及びj∈[ly,ly+hp]の場合には、
【数1】
によって制約され、そうでない場合(例えば、パッチの内側のピクセルは、0と1との間の範囲内に入ることができ、パッチの外側のピクセルは、x内の元のピクセル値に等しくなければならない)には、
【数2】
によって制約される。次いで、定式化したい問題は、以下の通りである。
【0015】
【0016】
px∈[0,wi-wp-1],py∈[0,hi-hp-1],
【0017】
i∈[p
x,p
x+w
p]及びj∈[p
y,p
y+h
p]の場合には、
【数4】
そうでない場合には、
【数5】
【0018】
これを解けるように定式化するためには、まず始めに、xが[1,w-wp]の範囲内の整数であるという制約を、以下の制約を用いて、サイズw-wpのブール変数を導入することによって符号化する。
【0019】
【0020】
【0021】
ここで、変数n及びmを使用して、それぞれ(i,j)のピクセル位置がパッチ内にあるかどうかを符号化することができる。ピクセル位置(i,j)は、i∈[lx,lx+wp]及びj∈[ly,ly+hp]の場合には、パッチ内にある。以下の制約を用いて、変数pを導入することによってこれを定式化する。
【0022】
pi,j≧sxi,j+syi,j-1
【0023】
pi,j≦sxi,j
【0024】
pi,j≦syi,j
【0025】
(方程式2)
【0026】
ピクセル値の符号化を用いる。
【0027】
x’i,j≧pi,j・0+(1-pi,j)・xi,j
【0028】
x’i,j≦pi,j・1+(1-pi,j)・xi,j
【0029】
本開示は、パッチ攻撃に対して画像分類するためのニューラルネットワークfθを認証するための種々の方法を提案する。本開示の第1の部分は、入力空間での分枝限定法である。サイズwxp及びパッチサイズwp×hpのサンプルxを所与とする。
【0030】
(1)で説明したように、画像xを2つのサブ画像に分割する。例えば、S1={(i,j)、ここで、0≦i≦[w/2]+wp,0≦j≦h},S2={(i,j)、ここで、[w/2]+wp≦i≦w,0≦j≦h}に分割する。
【0031】
方程式2又は方程式1の方法を使用して、C1及びC2を別個に検証する。
【0032】
サブ問題C1及びC2のいずれについても、方程式1を利用してこれをさらに断割する。
【0033】
全てのサブドメインが認証されるまで繰り返し、又は、それぞれのサブドメインが1つのパッチ位置のみを含むようになるまで断割する。
【0034】
全てのサブドメインが認証されている場合には、「xは、認証されている」と返し、そうでない場合には、「xは、認証されていない」と返す。
【0035】
第2の部分は、混合整数計画法(mixed integer programming)である。サイズwxp及びパッチサイズw
p×h
pのサンプルxを所与として、パッチ攻撃問題を、(2)及び(3)の制約を用いて
【数8】
として定式化する。cvxpy(https://github.com/cvxpy/cvxpyで紹介されている)のような既存の凸計画ソルバを使用してこの問題を直接的に解き、次いで、解かれたパッチ位置p
x及びp
yを、方程式1又は方程式2の方法を使用した検証のために使用する。
【0036】
本開示の第3の部分は、T(x)と表記される特徴抽出器としてbagsnet又はconvmixerを利用することができ、この特徴抽出器は、サイズwxpの入力画像を取得して、wfxpfの特徴マップを出力する。次いで、この特徴マップは、最終的な分類のためのMと表記されるMLPへの入力として使用され、すなわち、分類器f(x)=M(T(x))である。特徴マップにおけるそれぞれの「ピクセル」は、入力空間のwr×prのサブ領域(受容野)から抽出された特徴を表す。敵対的パッチ(入力空間におけるサイズwp×hp)が、最大でもwaxpaのサブ領域に影響を与えることができると仮定すると、wfxpfの特徴マップを入力として扱って、本発明の第1の部分と同様の方法を使用することができ、敵対的パッチサイズは、waxpaである。
【0037】
ロバストなモデルを訓練するための認証方法を使用するために、システムは、2ステップの訓練を実装することができる。すなわち、データセット(x,y)と、分類器fθと、損失関数lとを所与として、以下のことが行われる。
【0038】
1)まず始めに、損失関数lを使用して、敵対的パッチを有さないデータセットに対してfを事前訓練する。
【0039】
2)次いで、それぞれのサンプル(x,y)と、f(x)と、認証された限定b(すなわち、上限と下限との間の差)とについて、1.から得られた重みを用いて開始する。すなわち、∂l(x,f(x))/∂xを用いてパッチδを更新し、
a.xが正確に認証されている場合には、-∂l(x,f(x))/∂θを用いてθを更新し、
b.そうでない場合には、∂b(x,y)/∂θを用いてθを更新する。
【0040】
今から、図面に図示された実施形態を参照することとする。これらの実施形態は、これらの教示を機械学習モデル又はニューラルネットワークに適用することができる。
図1は、ニューラルネットワーク、例えばディープニューラルネットワークを訓練するためのシステム100を示している。システム100は、ニューラルネットワークのための訓練データ102にアクセスするための入力インタフェースを含み得る。例えば、
図1に図示されているように、入力インタフェースは、データストレージ106からの訓練データ102にアクセスすることができるデータストレージインタフェース104によって構成可能である。例えば、データストレージインタフェース104は、メモリインタフェース又は永続的なストレージインタフェース、例えばハードディスク又はSSDインタフェースであるものとしてよいが、Bluetooth、Zigbee又はWi-Fiインタフェースのようなパーソナル、ローカル若しくはワイドエリアネットワークインタフェース、又は、イーサネット若しくは光ファイバインタフェースであるものとしてもよい。データストレージ106は、ハードドライブ又はSSDのような、システム100の内部データストレージであってよいが、外部データストレージ、例えばネットワークアクセス可能なデータストレージであるものとしてもよい。
【0041】
いくつかの実施形態においては、データストレージ106は、訓練されていないバージョンのニューラルネットワークのデータ表現108をさらに含み得るものであり、この訓練されていないバージョンのニューラルネットワークのデータ表現108には、データストレージ106からシステム100によってアクセスすることができる。しかしながら、それぞれ訓練データ102と、訓練されていないニューラルネットワークのデータ表現108とに、例えばデータストレージインタフェース104のそれぞれ異なるサブシステムを介して、それぞれ異なるデータストレージからアクセスするものとしてもよいことが理解されよう。それぞれのサブシステムは、データストレージインタフェース104に関する上記のような種類のものであってよい。他の実施形態においては、訓練されていないニューラルネットワークのデータ表現108を、ニューラルネットワークのための設計パラメータに基づいてシステム100によって内部生成することができ、したがって、データストレージ106に明示的に格納しなくてもよい。システム100は、プロセッササブシステム110をさらに含み得るものであり、このプロセッササブシステム110は、システム100の動作中に、訓練されるべきニューラルネットワークの層のスタックの代用として反復関数を提供するように構成可能である。ここで、代用される層のスタックのうちのそれぞれの層は、互いに共有される重みを有し得るものであり、前の層の出力を入力として受信することができ、又は、層のスタックのうちの最初の層である場合には、初期の活性化と、層のスタックの入力の一部とを受信することができる。プロセッササブシステム110は、訓練データ102を使用してニューラルネットワークを反復的に訓練するようにさらに構成可能である。ここで、プロセッササブシステム110による訓練の反復は、順伝播部分及び逆伝播部分を含み得る。プロセッササブシステム110は、数ある演算の中でも、実施可能な順伝播部分を定義することと、反復関数のうちの、反復関数が固定点に収束する平衡点を決定することであって、この平衡点を決定することは、数値求根アルゴリズムを使用して反復関数の根解からその入力を差し引いたものを求めることを含む、平衡点を決定すること、この平衡点をニューラルネットワークにおける層のスタックの出力の代用として提供することとによって、順伝播部分を実施するように構成可能である。システム100は、訓練されたニューラルネットワークのデータ表現112を出力するための出力インタフェースをさらに含み得るものであり、このデータを、訓練されたモデルデータ112と称することもできる。例えば、
図1にも図示されているように、出力インタフェースは、データストレージインタフェース104によって構成可能であり、この場合、前述のインタフェースは、これらの実施形態においては入力/出力(「IO」)インタフェースであり、この入力/出力(「IO」)インタフェースを介して、訓練されたモデルデータ112をデータストレージ106に格納することができる。例えば、訓練データ102に対する訓練を反映させるために、ニューラルネットワークの重み、ハイパーパラメータ、及び、他の種類のパラメータのようなニューラルネットワークのパラメータを適合させることができるという点において、「訓練されていない」ニューラルネットワークを定義するデータ表現108を、訓練中又は訓練後に、訓練されたニューラルネットワークのデータ表現112によって少なくとも部分的に置き換えることができる。このことは、
図1において、データストレージ106上の同一のデータレコードを参照している参照符号108,112によっても図示されている。他の実施形態においては、データ表現112を、「訓練されていない」ニューラルネットワークを定義するデータ表現108とは別個に格納することができる。いくつかの実施形態においては、出力インタフェースは、データストレージインタフェース104とは別個であってよいが、一般的に、データストレージインタフェース104に関する上記のような種類のものであってよい。
【0042】
システム100の構造は、本明細書において説明されるイメージ・トゥ・イメージ(image-to-image)機械学習モデルと、ミキサ機械学習モデルとを訓練するために利用可能なシステムの一例である。機械学習モデルを動作させるための及び訓練するための追加的な構造は、
図2に示されている。
【0043】
図2は、本明細書において説明される機械学習モデル、例えば、本明細書において説明されるイメージ・トゥ・イメージ機械学習モデルと、ミキサ機械学習モデルと、事前訓練された参照モデルとを実装するためのシステム200を示している。システム200は、本明細書において説明される画像量子化プロセスを実施するために実装可能である。システム200は、少なくとも1つのコンピューティングシステム202を含み得る。コンピューティングシステム202は、メモリユニット208に動作可能に接続された少なくとも1つのプロセッサ204を含み得る。プロセッサ204は、中央処理装置(CPU)206の機能を実装する1つ又は複数の集積回路を含み得る。CPU206は、x86、ARM、Power又はMIPSの命令集合ファミリのうちの1つのような命令集合を実装する市販の処理装置であるものとしてよい。動作中、CPU206は、メモリユニット208から検索されたストアドプログラム命令を実行することができる。ストアドプログラム命令は、本明細書において説明される動作を実施するようにCPU206の動作を制御するソフトウェアを含み得る。いくつかの例においては、プロセッサ204は、CPU206、メモリユニット208、ネットワークインタフェース、及び、入力/出力インタフェースの機能を単一の集積装置に集積するシステムオンチップ(SoC)であるものとしてよい。コンピューティングシステム202は、種々の態様の動作を管理するためのオペレーティングシステムを実装することができる。
図2には、1つのプロセッサ204、1つのCPU206及び1つのメモリ208が図示されているが、当然、システム全体においてそれぞれ2つ以上のプロセッサ204、CPU206及びメモリ208を利用することができる。
【0044】
メモリユニット208は、命令及びデータを格納するための揮発性メモリ及び不揮発性メモリを含み得る。不揮発性メモリは、NANDフラッシュメモリ、磁気ストレージ媒体及び光学ストレージ媒体のようなソリッドステートメモリ、又は、コンピューティングシステム202が非アクティブである場合若しくは電力を喪失した場合にもデータを保持する任意の他の適当なデータストレージ装置を含み得る。揮発性メモリは、プログラム命令及びデータを格納するスタティックランダムアクセスメモリ及びダイナミックランダムアクセスメモリ(RAM)を含み得る。例えば、メモリユニット208は、機械学習モデル210又はアルゴリズム、機械学習モデル210のための訓練データセット212、生のソースデータセット216を格納することができる。
【0045】
コンピューティングシステム202は、外部システム及び外部装置との通信を提供するように構成されたネットワークインタフェース装置222を含み得る。例えば、ネットワークインタフェース装置222は、Institute of Electrical and Electronics Engineers(IEEE)802.11規格群によって定義されるような、有線及び/又は無線のイーサネットインタフェースを含み得る。ネットワークインタフェース装置222は、セルラネットワーク(例えば、3G、4G、5G)と通信するためのセルラ通信インタフェースを含み得る。ネットワークインタフェース装置222は、外部ネットワーク224又はクラウドへの通信インタフェースを提供するようにさらに構成可能である。
【0046】
外部ネットワーク224を、ワールドワイドウェブ又はインタネットと称することができる。外部ネットワーク224は、コンピューティング装置間の標準的な通信プロトコルを確立することができる。外部ネットワーク224は、コンピューティング装置とネットワークとの間で情報及びデータを容易に交換することを可能にすることができる。1つ又は複数のサーバ230は、外部ネットワーク224と通信することができる。
【0047】
コンピューティングシステム202は、デジタル及び/又はアナログの入力及び出力を提供するように構成可能である入力/出力(I/O)インタフェース220を含み得る。I/Oインタフェース220は、内部ストレージと外部入力及び/又は出力装置(例えば、HMI装置)との間で情報を転送するために使用される。I/Oインタフェース220は、プロセッサ及びストレージに、又は、プロセッサとストレージとの間で情報を転送するための関連する回路又はバスネットワークを含み得る。例えば、I/Oインタフェース220は、プロセッサによって読み出し可能又は設定可能であるデジタルI/O論理線路、I/O線路を介したデータ伝送を監督するためのハンドシェイク線路、タイミング及びカウンティング機構、並びに、そのような機能を提供することが知られている他の構造を含み得る。入力装置の例には、キーボード、マウス、センサ等が含まれる。出力装置の例には、モニタ、プリンタ、スピーカ等が含まれる。I/Oインタフェース220は、外部装置と通信するための追加的なシリアルインタフェース(例えば、ユニバーサルシリアルバス(USB)インタフェース)を含み得る。
【0048】
コンピューティングシステム202は、ヒューマンマシンインタフェース(HMI)装置218を含み得るものであり、ヒューマンマシンインタフェース(HMI)装置218は、システム200が制御入力を受信することを可能にする任意の装置を含み得る。入力装置の例には、キーボード、マウス、タッチスクリーン、音声入力装置、及び、他の同様の装置のようなヒューマンインタフェース入力を含めることができる。コンピューティングシステム202は、ディスプレイ装置232を含み得る。コンピューティングシステム202は、グラフィックス及びテキスト情報をディスプレイ装置232に出力するためのハードウェア及びソフトウェアを含み得る。ディスプレイ装置232は、電子ディスプレイスクリーン、プロジェクタ、プリンタ、又は、ユーザ若しくはオペレータに情報を表示するための他の適当な装置を含み得る。コンピューティングシステム202は、ネットワークインタフェース装置222を介したリモートHMI及びリモートディスプレイ装置との相互作用を可能にするようにさらに構成可能である。
【0049】
システム200は、1つ又は複数のコンピューティングシステムを使用して実装可能である。この例は、記載された全ての特徴を実装している単一のコンピューティングシステム202を描写しているが、複数の異なる特徴及び機能を、相互に通信し合う複数のコンピューティングユニットによって分散及び実現するものとしてもよいことが意図されている。選択される特定のシステムアーキテクチャは、種々異なる要因に依存する場合がある。
【0050】
システム200は、生のソースデータセット216を分析するように構成された機械学習アルゴリズム210を実装可能である。生のソースデータセット216は、機械学習システムのための入力データセットを表すことができる生の又は未処理のセンサデータを含み得る。生のソースデータセット216は、ビデオ、ビデオセグメント、画像、テキストに基づく情報、音響又は人間の音声、時系列データ(例えば、経時的な圧力センサ信号)、及び、生の又は部分的に処理済みのセンサデータ(例えば、オブジェクトのレーダマップ)を含み得る。入力のいくつかの異なる例が示されており、
図5乃至
図11を参照しながら説明される。いくつかの例においては、機械学習アルゴリズム210は、所定の機能を実施するように設計されたニューラルネットワークアルゴリズム(例えば、ディープニューラルネットワーク)であるものとしてよい。例えば、ニューラルネットワークアルゴリズムは、自動車用途においては、画像内の道路標識又は歩行者を識別するように構成可能である。機械学習アルゴリズム210は、本明細書において説明されるイメージ・トゥ・イメージ機械学習モデルと、ミキサ機械学習モデルと、事前訓練された参照モデルとを動作させるように構成されたアルゴリズムを含み得る。
【0051】
コンピュータシステム200は、機械学習アルゴリズム210のための訓練データセット212を格納することができる。訓練データセット212は、機械学習アルゴリズム210を訓練するための事前に構築されたデータの集合を表すことができる。訓練データセット212は、ニューラルネットワークアルゴリズムに関連する重み付け係数を学習するために、機械学習アルゴリズム210によって使用可能である。訓練データセット212は、機械学習アルゴリズム210が学習プロセスを介して複製することを試みる、対応する成果又は結果を有するソースデータの集合を含み得る。この例においては、訓練データセット212は、オブジェクト(例えば、道路標識)が含まれる入力画像を含み得る。入力画像は、種々のシナリオを含み得るものであり、これらのシナリオにおいてオブジェクトが識別される。
【0052】
機械学習アルゴリズム210は、訓練データセット212を入力として使用する学習モードにおいて動作可能である。機械学習アルゴリズム210は、訓練データセット212からのデータを使用して、複数回の反復にわたって実行可能である。反復のたびに、機械学習アルゴリズム210は、達成された結果に基づいて内部の重み付け係数を更新することができる。例えば、機械学習アルゴリズム210は、出力結果(例えば、画像データが入力である場合には、再構築又は補完された画像)を、訓練データセット212に含まれるものと比較することができる。訓練データセット212は、予期される結果を含んでいるので、機械学習アルゴリズム210は、性能がいつ許容可能になるのかを特定することができる。機械学習アルゴリズム210が所定の性能レベル(例えば、訓練データセット212に関連する成果に100%一致する)又は収束を達成した後には、訓練データセット212内に存在しないデータを使用して、機械学習アルゴリズム210を実行することができる。本開示における「収束」とは、設定された(例えば、所定の)回数の反復が行われたこと、又は、残差が十分に小さいこと(例えば、反復にわたる近似確率の変化が、閾値より小さいこと)、又は、他の収束条件を意味し得るということが理解されるべきである。訓練された機械学習アルゴリズム210は、注釈が付けられたデータを生成するために新しいデータセットに適用可能である。
【0053】
機械学習アルゴリズム210は、生のソースデータ216内の特定の特徴を識別するように構成可能である。生のソースデータ216は、補完結果が望まれている複数のインスタンス又は入力データセットを含み得る。例えば、機械学習アルゴリズム210は、ビデオ画像内の道路標識の存在を識別し、その出現に注釈を付けるように構成可能である。機械学習アルゴリズム210は、生のソースデータ216を処理して、特定の特徴の存在を識別するようにプログラミング可能である。機械学習アルゴリズム210は、生のソースデータ216内の特徴を、所定の特徴(例えば、道路標識)として識別するように構成可能である。生のソースデータ216は、種々のソースに由来することができる。例えば、生のソースデータ216は、機械学習システムによって収集された実際の入力データであるものとしてよい。生のソースデータ216は、システムをテストするために機械生成されたものであってよい。一例として、生のソースデータ216は、カメラからの生のビデオ画像を含み得る。
【0054】
一例においては、生のソースデータ216は、画像を表す画像データを含み得る。本明細書において説明される機械学習アルゴリズム(例えば、イメージ・トゥ・イメージ機械学習モデル、ミキサ機械学習モデル、及び、事前訓練された参照モデル)を適用すると、出力を、入力画像の量子化されたバージョンとすることができる。
【0055】
図3は、パッチ攻撃に対して画像分類するためのニューラルネットワークを認証するための例示的なフローチャートを示している。本方法は、入力空間において分枝限定法を行うことを含み得る。ステップ301において、システムは、入力又は画像を受信することができる。画像は、任意の種類の画像を含み得る。そのような画像は、LIDAR画像、レーダ画像、ソナー画像、サーマル画像、ヒート画像、又は、温度画像を含み得る。したがって、画像は、LIDAR、レーダ、ソナー、マイクロフォン、サーマルセンサ、ヒートセンサ等のような任意の数のセンサ及びカメラによって受信可能である。
【0056】
ステップ303において、システムは、画像xを2つのサブ画像に分割することができる。画像は、検証問題Cのドメインをサブドメインに分割する分枝限定法によって分割可能である。したがって、検証問題Cのドメインを、以下のサブドメインC1={xi,j,x∈Cかつ(i,j)∈S1},C2={xi,j,x∈Cかつ(i,j)∈S2}に分割することができ、ここで、S1∪S2=Sである。他の例においては、S1={(i,j)、ここで、0≦i≦[w/2]+wp,0≦j≦h},S2={(i,j)、ここで、[w/2]+wp≦i≦w,0≦j≦h}に分割することができる。
【0057】
ステップ305において、システムは、C1及びC2を別個に検証することができる。例えば、システムは、変数n及びmを利用して、それぞれ(i,j)のピクセル位置がパッチ内にあるかどうかを符号化することができる。ピクセル位置(i,j)は、i∈[lx,lx+wp]及びj∈[ly,ly+hp]の場合には、パッチ内にあるとすることができる。以下の制約を用いて、変数pを導入することによってこれを定式化することができる。
【0058】
pi,j≧sxi,j+syi,j-1
【0059】
pi,j≦sxi,j
【0060】
pi,j≦syi,j
【0061】
ステップ306において、システムは、サブ問題が存在する場合には、いくつかのシナリオにおいてサブ画像をさらに断割又は分割することができる。例えば、システムは、C1={xi,j,x∈Cかつ(i,j)∈S1},C2={xi,j,x∈Cかつ(i,j)∈S2}のいずれも利用して、サブ問題を分割することができ、ここで、S1∪S2=Sである。したがって、サブ問題C1及びC2のいずれについても、システムは、それらをさらに分割することができる。
【0062】
ステップ307において、システムは、全てのサブドメインが認証されるまで全てのステップを繰り返すことができ、又は、それぞれのサブドメインが1つのパッチ位置のみを含むようになるまで断割することができる。したがって、システムは、これらの状況の一方又は両方が発生するまでサブ画像を検証し、さらに断割することができる。
【0063】
判定309において、システムは、全てのサブドメインが認証されているかどうかを判定することができる。したがって、システムは、サブドメインを分析して、これらのサブドメインが認証されているかどうかを判定することができる。これらのサブドメインが認証されている場合には、システムは、出力するステップ311において、入力が認証されていると返す(例えば、「xは、認証されている」と返す)ことができる。これらのサブドメインが認証されていない場合には、システムは、入力が認証されていないと返す(例えば、「xは、認証されていない」と返す)ことができる。
【0064】
これに代えて、別の部分は、混合整数計画を含み得る。サイズwxp及びパッチサイズw
p×h
pのサンプルxを所与として、パッチ攻撃問題を、以下の制約を用いて、
【数9】
として定式化する。
【0065】
pi,j≧sxi,j+syi,j-1
【0066】
pi,j≦sxi,j
【0067】
pi,j≦syi,j
【0068】
ピクセル値の符号化を用いる。
【0069】
x’i,j≧pi,j・0+(1-pi,j)・xi,j
【0070】
x’i,j≦pi,j・1+(1-pi,j)・xi,j
【0071】
システムは、cvxpy(https://github.com/cvxpy/cvxpy)のような既存の凸計画ソルバを使用してこの問題を直接的に解くことができ、次いで、解かれたパッチ位置px及びpyを、式[1]又は式[2]に関連する方法を含む、上記の方法を使用した検証のために使用することができる場合がある。
【0072】
図4は、混合整数計画を利用するフローチャートの例示的な実施形態を示している。ステップ401において、システムは、サイズwのサンプルxを受信することができる。ステップ403において、システムは、サイズwxp及びパッチサイズw
p×h
pのサンプルxを所与として、パッチ攻撃問題を、方程式[2]及び方程式[3]の制約を用いて、
【数10】
として定式化することができる。次いで、ステップ405において、システムは、凸計画ソルバを利用してこの問題を直接的に解くことができる。システムは、cvxpy(https://github.com/cvxpy/cvxpy)のような既存の凸計画ソルバを利用することができる。ステップ407において、システムは、解かれたパッチ位置p
x及びp
yを、方程式[1]又は方程式[2]の方法を使用した検証のために使用することができる。
【0073】
本明細書において説明される機械学習モデルは、道路標識の画像処理の文脈だけでなく、多くの異なる用途において使用可能である。画像量子化を使用することができる追加的な用途が、
図6乃至
図11に示されている。
図5には、これらの用途(及び他の用途)のために機械学習モデルを訓練及び使用する目的で使用される構造が例示されている。
図5は、コンピュータ制御式の機械500と制御システム502との間の相互作用の概略線図を示している。コンピュータ制御式の機械500は、アクチュエータ504及びセンサ506を含む。アクチュエータ504は、1つ又は複数のアクチュエータを含み得るものであり、センサ506は、1つ又は複数のセンサを含み得る。センサ506は、コンピュータ制御式の機械500の状態を検知するように構成されている。センサ506は、検知した状況をセンサ信号508に符号化し、センサ信号508を制御システム502に送信するように構成可能である。センサ506の非限定的な例には、ビデオセンサ、レーダセンサ、LiDARセンサ、超音波センサ、及び、モーションセンサが含まれる。一実施形態においては、センサ506は、コンピュータ制御式の機械500に近接する環境の光学画像を検知するように構成された光学センサである。
【0074】
制御システム502は、コンピュータ制御式の機械500からセンサ信号508を受信するように構成されている。後述するように、制御システム502は、センサ信号に依存してアクチュエータ制御コマンド510を計算し、アクチュエータ制御コマンド510をコンピュータ制御式の機械500のアクチュエータ504に送信するようにさらに構成可能である。
【0075】
図5に示されているように、制御システム502は、受信ユニット512を含む。受信ユニット512は、センサ506からセンサ信号508を受信し、センサ信号508を入力信号xに変換するように構成可能である。代替的な実施形態においては、センサ信号508は、受信ユニット512を用いることなく入力信号xとして直接的に受信される。それぞれの入力信号xは、それぞれのセンサ信号508の一部であるものとしてよい。受信ユニット512は、それぞれのセンサ信号508を処理してそれぞれの入力信号xを生成するように構成可能である。入力信号xは、センサ506によって記録された画像に対応するデータを含み得る。
【0076】
制御システム502は、分類器514を含む。分類器514は、上記のニューラルネットワークのような機械学習(ML)アルゴリズムを使用して、入力信号xを1つ又は複数のラベルに分類するように構成可能である。分類器514は、上記のパラメータ(例えば、パラメータθ)のようなパラメータによってパラメータ化されるように構成されている。パラメータθは、不揮発性ストレージ516に格納可能であり、かつ、不揮発性ストレージ516によって提供可能である。分類器514は、入力信号xから出力信号yを決定するように構成されている。それぞれの出力信号yは、それぞれの入力信号xに1つ又は複数のラベルを割り当てる情報を含む。分類器514は、出力信号yを変換ユニット518に送信することができる。変換ユニット518は、出力信号yをアクチュエータ制御コマンド510に変換するように構成されている。制御システム502は、アクチュエータ制御コマンド510をアクチュエータ504に送信するように構成されており、アクチュエータ504は、アクチュエータ制御コマンド510に応じてコンピュータ制御式の機械500を動作させるように構成されている。他の実施形態においては、アクチュエータ504は、直接的に出力信号yに基づいてコンピュータ制御式の機械500を動作させるように構成されている。
【0077】
アクチュエータ504によってアクチュエータ制御コマンド510が受信されると、アクチュエータ504は、関連するアクチュエータ制御コマンド510に対応する行動を実行するように構成されている。アクチュエータ504は、制御ロジックを含み得るものであり、制御ロジックは、アクチュエータ制御コマンド510を第2のアクチュエータ制御コマンドに変換するように構成されており、第2のアクチュエータ制御コマンドは、アクチュエータ504を制御するために利用される。1つ又は複数の実施形態においては、アクチュエータ制御コマンド510を利用して、アクチュエータに代えて又はこれに加えてディスプレイを制御することができる。
【0078】
他の実施形態においては、制御システム502は、センサ506が含まれるコンピュータ制御式の機械500に代えて又はこれに加えて、センサ506を含む。制御システム502は、アクチュエータ504が含まれるコンピュータ制御式の機械500に代えて又はこれに加えて、アクチュエータ504も含み得る。
【0079】
図5に示されているように、制御システム502は、プロセッサ520及びメモリ522も含む。プロセッサ520は、1つ又は複数のプロセッサを含み得る。メモリ522は、1つ又は複数のメモリ装置を含み得る。1つ又は複数の実施形態の分類器514(例えば、事前訓練された分類器306に関する上記の機械学習アルゴリズムのような機械学習アルゴリズム)は、不揮発性ストレージ516と、プロセッサ520と、メモリ522とを含む制御システム502によって実装可能である。
【0080】
不揮発性ストレージ516は、ハードドライブ、光学ドライブ、テープドライブ、不揮発性ソリッドステート装置、クラウドストレージ、又は、情報を永続的に格納することができる任意の他の装置のような、1つ又は複数の永続的なデータストレージ装置を含み得る。プロセッサ520は、高性能コア、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ、マイクロコンピュータ、中央処理装置、フィールドプログラマブルゲートアレイ、プログラマブルロジック装置、ステートマシン、論理回路、アナログ回路、デジタル回路、又は、メモリ522内に常駐するコンピュータ実行可能命令に基づいて信号(アナログ又はデジタル)を操作する任意の他の装置が含まれる高性能コンピューティング(HPC)システムから選択された1つ又は複数の装置を含み得る。メモリ522は、単一のメモリ装置又は複数のメモリ装置を含み得るものであり、こうしたメモリ装置には、限定するものではないが、ランダムアクセスメモリ(RAM)、揮発性メモリ、不揮発性メモリ、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、フラッシュメモリ、キャッシュメモリ、又は、情報を格納することができる任意の他の装置が含まれる。
【0081】
プロセッサ520は、メモリ522を読み込むように構成可能であり、かつ、不揮発性ストレージ516に常駐していて1つ又は複数の実施形態の1つ又は複数のMLアルゴリズム及び/又は方法論を具現化するコンピュータ実行可能命令を実行するように構成可能である。不揮発性ストレージ516は、1つ又は複数のオペレーティングシステム及びアプリケーションを含み得る。不揮発性ストレージ516は、種々のプログラミング言語及び/又はプログラミング技術を使用して作成されたコンピュータプログラムからコンパイル及び/又は翻訳されたものを格納することができ、こうした種々のプログラミング言語及び/又はプログラミング技術には、限定するものではないが、Java、C、C++、C#、Objective C、Fortran、Pascal、Java Script、Python、Perl、及び、PL/SQLが、単独で又は組み合わせた形態で含まれる。
【0082】
プロセッサ520によって実行されると、不揮発性ストレージ516のコンピュータ実行可能命令は、本明細書において開示されるMLアルゴリズム及び/又は方法論のうちの1つ又は複数を制御システム502に実施させることができる。不揮発性ストレージ516は、本明細書において説明される1つ又は複数の実施形態の機能、特徴及びプロセスを支援する(データパラメータを含む)MLデータも含み得る。
【0083】
本明細書において説明されるアルゴリズム及び/又は方法論を具現化するプログラムコードは、種々の異なる形態のプログラム製品として個別に又は集合的に配布可能である。プログラムコードは、1つ又は複数の実施形態の態様をプロセッサに実行させるためのコンピュータ可読プログラム命令を有するコンピュータ可読ストレージ媒体を使用して配布可能である。本質的に非一時的であるコンピュータ可読ストレージ媒体は、コンピュータ可読命令、データ構造、プログラムモジュール又は他のデータのような情報を格納するための任意の方法又は技術により実装された、揮発性及び不揮発性の、取り外し可能及び取り外し不可能な有形の媒体を含み得る。コンピュータ可読ストレージ媒体は、RAM、ROM、消去可能なプログラマブル読み出し専用メモリ(EPROM)、電気的に消去可能なプログラマブル読み出し専用メモリ(EEPROM)、フラッシュメモリ若しくは他のソリッドステートメモリ技術、ポータブルコンパクトディスク読み出し専用メモリ(CD-ROM)、又は、他の光学ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ若しくは他の磁気ストレージ装置、又は、所望の情報を格納するために使用可能であってかつコンピュータによって読み出し可能である任意の他の媒体をさらに含み得る。コンピュータ可読プログラム命令は、コンピュータ可読ストレージ媒体からコンピュータ、他の種類のプログラマブルデータ処理装置又は他の装置にダウンロード可能であり、又は、ネットワークを介して外部コンピュータ若しくは外部ストレージ装置にダウンロード可能である。
【0084】
コンピュータ可読媒体に格納されたコンピュータ可読プログラム命令は、コンピュータ、他の種類のプログラマブルデータ処理装置、又は、他の装置に対して、特定の手法により機能するように指示するために使用可能であり、これにより、コンピュータ可読媒体に格納された命令は、フローチャート又は線図において規定された機能、行動、及び/又は、動作を実施する命令が含まれる製造品を製造する。特定の代替的な実施形態においては、フローチャート及び線図において規定された機能、行動、及び/又は、動作は、1つ又は複数の実施形態と一致するように並べ替え可能であり、連続して処理可能であり、及び/又は、同時に処理可能である。さらに、いずれのフローチャート及び/又は線図も、1つ又は複数の実施形態と一致するように、図示されたものよりも多数又は少数のノード又はブロックを含み得る。
【0085】
プロセス、方法又はアルゴリズムは、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、ステートマシン、コントローラ、又は、他のハードウェアコンポーネント若しくは装置、又は、ハードウェアとソフトウェアとファームウェアコンポーネントとの組合せのような適当なハードウェアコンポーネントを使用して、全体的又は部分的に具現化可能である。
【0086】
図6は、車両600を制御するように構成された制御システム502の概略線図を示しており、車両600は、少なくとも部分的に自律的な車両、又は、少なくとも部分的に自律的なロボットであるものとしてよい。車両600は、アクチュエータ504及びセンサ506を含む。センサ506は、1つ又は複数のビデオセンサ、カメラ、レーダセンサ、超音波センサ、LiDARセンサ、及び/又は、位置センサ(例えば、GPS)を含み得る。1つ又は複数の特定のセンサのうちの1つ又は複数を、車両600に組み込むことができる。本明細書において説明される標識認識及び処理の文脈では、センサ506は、車両600に取り付けられた又は車両600に組み込まれたカメラである。上記の1つ又は複数の特定のセンサに代えて又はこれに加えて、センサ506は、実行されるとアクチュエータ504の状態を特定するように構成されたソフトウェアモジュールを含み得る。ソフトウェアモジュールの1つの非限定的な例には、車両600又は他の場所に近接する気象の現在又は将来の状態を特定するように構成された気象情報ソフトウェアモジュールが含まれる。
【0087】
車両600の制御システム502の分類器514は、入力信号xに依存して、車両600の近傍にあるオブジェクトを検出するように構成可能である。このような実施形態においては、出力信号yは、車両600に対するオブジェクトの近傍を特徴付ける情報を含み得る。この情報に従って、アクチュエータ制御コマンド510を決定することができる。アクチュエータ制御コマンド510は、検出されたオブジェクトとの衝突を回避するために使用可能である。
【0088】
車両600が少なくとも部分的に自律的な車両である実施形態においては、アクチュエータ504を、車両600のブレーキ、推進システム、エンジン、ドライブトレイン又はステアリングの形態で具現化することができる。検出されたオブジェクトとの衝突を車両600が回避するように、アクチュエータ504が制御されるように、アクチュエータ制御コマンド510を決定することができる。検出されたオブジェクトを、歩行者又は樹木のように、分類器514によって最もそうである可能性が高いとみなされたものに従って分類することもできる。この分類に依存して、アクチュエータ制御コマンド510を決定することができる。敵対的攻撃が発生する可能性のあるシナリオにおいては、上記のシステムは、オブジェクトをより良好に検出するようにさらに訓練可能であり、又は、照明条件の変化又は車両600上のセンサ若しくはカメラに対する角度の変化を識別するようにさらに訓練可能である。
【0089】
車両600が少なくとも部分的に自律的なロボットである他の実施形態においては、車両600は、飛行、水泳、潜水及び足踏みのような1つ又は複数の機能を実施するように構成された移動ロボットであるものとしてよい。移動ロボットは、少なくとも部分的に自律的な芝刈り機、又は、少なくとも部分的に自律的な掃除ロボットであるものとしてよい。このような実施形態においては、識別されたオブジェクトとの衝突を移動ロボットが回避することができるように、移動ロボットの推進ユニット、ステアリングユニット、及び/又は、ブレーキユニットを制御することができるように、アクチュエータ制御コマンド510を決定することができる。
【0090】
他の実施形態においては、車両600は、園芸ロボットの形態の少なくとも部分的に自律的なロボットである。このような実施形態においては、車両600は、センサ506として光学センサを使用して、車両600に近接する環境内の植物の状態を特定することができる。アクチュエータ504は、化学物質を噴霧するように構成されたノズルであるものとしてよい。植物の識別された種及び/又は識別された状態に依存して、アクチュエータ504に植物への適量の化学薬品の噴霧を行わせるように、アクチュエータ制御コマンド510を決定することができる。
【0091】
車両600は、家庭用電化製品の形態の少なくとも部分的に自律的なロボットであるものとしてよい。家庭用電化製品の非限定的な例には、洗濯機、ストーブ、オーブン、電子レンジ、又は、食器洗浄機が含まれる。このような車両600においては、センサ506は、家庭用電化製品によって処理が施されるべきオブジェクトの状態を検出するように構成された光学センサであるものとしてよい。例えば、家庭用電化製品が洗濯機である場合には、センサ506は、洗濯機の内側の洗濯物の状態を検出することができる。検出された洗濯物の状態に基づいて、アクチュエータ制御コマンド510を決定することができる。
【0092】
図7は、生産ラインの一部のような製造システム702のパンチカッタ、カッタ又はガンドリルのようなシステム700(例えば、製造機械)を制御するように構成された制御システム502の概略線図を示している。制御システム502は、システム700(例えば、製造機械)を制御するように構成されたアクチュエータ504を制御するように構成可能である。
【0093】
システム700(例えば、製造機械)のセンサ506は、製造された製品704の1つ又は複数の性質を捕捉するように構成された光学センサであるものとしてよい。分類器514は、1つ又は複数の捕捉された性質から、製造された製品704の状態を特定するように構成可能である。アクチュエータ504は、製造された製品704の後続の製造ステップのために、製造された製品704の特定された状態に依存して、システム700(例えば、製造機械)を制御するように構成可能である。アクチュエータ504は、製造された製品704の特定された状態に依存して、システム700(例えば、製造機械)の後続の製造された製品704に対するシステム700(例えば、製造機械)の機能を制御するように構成可能である。
【0094】
図8は、少なくとも部分的に自律的なモードを有する電動ドリル又は電動ドライバのような電動工具800を制御するように構成された制御システム502の概略線図を示している。制御システム502は、電動工具800を制御するように構成されたアクチュエータ504を制御するように構成可能である。
【0095】
電動工具800のセンサ506は、作業面802、及び/又は、作業面802に打ち込まれる締結具804の、1つ又は複数の性質を捕捉するように構成された光学センサであるものとしてよい。分類器514は、1つ又は複数の捕捉された性質から、作業面802、及び/又は、作業面802に対する締結具804の状態を特定するように構成可能である。状態とは、締結具804が作業面802と同一平面にあることであってよい。状態は、これに代えて作業面802の硬度であるものとしてよい。アクチュエータ504は、作業面802に対する締結具804の特定された状態、又は、作業面802の1つ又は複数の捕捉された性質に依存して電動工具800の駆動機能が調整されるように、電動工具800を制御するように構成可能である。例えば、アクチュエータ504は、締結具804の状態が、作業面802に対して同一平面である場合には、駆動機能を中止することができる。他の非限定的な例として、アクチュエータ504は、作業面802の硬度に依存して追加的なトルク又はより少ないトルクを印加することができる。
【0096】
図9は、自動化されたパーソナルアシスタント900を制御するように構成された制御システム502の概略線図を示している。制御システム502は、自動化されたパーソナルアシスタント900を制御するように構成されたアクチュエータ504を制御するように構成可能である。自動化されたパーソナルアシスタント900は、洗濯機、ストーブ、オーブン、電子レンジ又は食器洗浄機のような家庭用電化製品を制御するように構成可能である。
【0097】
センサ506は、光学センサ及び/又は音響センサであるものとしてよい。光学センサは、ユーザ902のジェスチャ904のビデオ画像を受信するように構成可能である。音響センサは、ユーザ902の音声コマンドを受信するように構成可能である。
【0098】
自動化されたパーソナルアシスタント900の制御システム502は、システム502を制御するように構成されたアクチュエータ制御コマンド510を決定するように構成可能である。制御システム502は、センサ506のセンサ信号508に従ってアクチュエータ制御コマンド510を決定するように構成可能である。自動化されたパーソナルアシスタント900は、センサ信号508を制御システム502に送信するように構成されている。制御システム502の分類器514は、ユーザ902によって行われたジェスチャ904を識別するためのジェスチャ認識アルゴリズムを実行し、アクチュエータ制御コマンド510を決定し、アクチュエータ制御コマンド510をアクチュエータ504に送信するように構成可能である。分類器514は、ジェスチャ904に応じて不揮発性ストレージから情報を検索し、検索した情報を、ユーザ902による受信のために適した形態で出力するように構成可能である。
【0099】
図10は、モニタリングシステム1000を制御するように構成された制御システム502の概略線図を示している。モニタリングシステム1000は、ドア1002を介したアクセスを物理的に制御するように構成可能である。センサ506は、アクセスが許可されるかどうかの判定に関連するシーンを検出するように構成可能である。センサ506は、画像及び/又はビデオデータを生成及び送信するように構成された光学センサであるものとしてよい。このようなデータは、人物の顔を検出するために制御システム502によって使用可能である。
【0100】
モニタリングシステム1000の制御システム502の分類器514は、不揮発性ストレージ516に格納された既知の人物の識別情報を照合し、それによって人物の識別情報を特定することにより、画像及び/又はビデオデータを解釈するように構成可能である。分類器514は、画像及び/又はビデオデータの解釈に応じて、アクチュエータ制御コマンド510を生成するように構成可能である。制御システム502は、アクチュエータ制御コマンド510をアクチュエータ504に送信するように構成されている。この実施形態においては、アクチュエータ504は、アクチュエータ制御コマンド510に応じてドア1002をロック又はロック解除するように構成可能である。他の実施形態においては、非物理的かつ論理的なアクセス制御も可能である。
【0101】
モニタリングシステム1000は、サーベイランスシステムであるものとしてもよい。このような実施形態においては、センサ506は、サーベイランス下にあるシーンを検出するように構成された光学センサであるものとしてよく、制御システム502は、ディスプレイ1004を制御するように構成されている。分類器514は、シーンの分類、例えば、センサ506によって検出されたシーンが疑わしいかどうかを判定するように構成されている。制御システム502は、分類に応じてアクチュエータ制御コマンド510をディスプレイ1004に送信するように構成されている。ディスプレイ1004は、アクチュエータ制御コマンド510に応じて表示内容を調整するように構成可能である。例えば、ディスプレイ1004は、分類器514によって疑わしいとみなされたオブジェクトを強調表示することができる。本開示のシステムの1つの実施形態を利用して、サーベイランスシステムは、将来の特定の時点にオブジェクトが出現することを予測することができる。
【0102】
図11は、イメージングシステム1100、例えば、MRI装置、X線イメージング装置又は超音波装置を制御するように構成された制御システム502の概略線図を示している。センサ506は、例えば、イメージングセンサであるものとしてよい。分類器514は、検知された画像の全部又は一部の分類を決定するように構成可能である。分類器514は、訓練されたニューラルネットワークによって取得された分類に応じてアクチュエータ制御コマンド510を決定又は選択するように構成可能である。例えば、分類器514は、検知された画像の領域を、潜在的に異常であると解釈することができる。この場合には、ディスプレイ1102にイメージングを表示させて、この潜在的に異常な領域を強調表示させるように、アクチュエータ制御コマンド510を決定又は選択することができる。
【0103】
上記においては例示的な実施形態について説明したが、これらの実施形態は、特許請求の範囲に包含される全ての可能な形態を説明することを意図したものではない。本明細書において使用される用語は、限定する用語ではなく説明する用語であり、本開示の精神及び範囲から逸脱することなく種々の変更を行い得ることが理解される。前述したように、種々の実施形態の特徴を組み合わせて、明示的には説明又は図示されていない可能性のある本発明のさらなる実施形態を形成することができる。種々の実施形態が、1つ又は複数の所望の特性に関して他の実施形態又は従来技術の実装形態を凌ぐ利点を提供するものとして又はより好ましいものとして説明されている場合もあるが、特定の用途及び実装に依存して、所望の全体的なシステム属性を達成するために1つ又は複数の特徴又は特性を妥協し得ることが、当業者には認識される。これらの属性には、限定するものではないが、コスト、強度、耐久性、ライフサイクルコスト、市場性、外観、パッケージング、サイズ、保守容易性、重量、製造可能性、組立ての容易さ等を含めることができる。したがって、任意の実施形態が、1つ又は複数の特性に関して他の実施形態又は従来技術の実装形態よりもさほど望ましくないものとして説明されている限りにおいても、これらの実施形態は、本開示の範囲外にあるというわけではなく、特定の用途にとっては望ましい場合もある。
【手続補正書】
【提出日】2023-10-25
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
攻撃を識別する方法であって、
1つ又は複数の画像の入力を受信することであって、前記1つ又は複数の画像は、パッチサイズ及びサイズを含む、ことと、
前記1つ又は複数の画像のうちの1つの画像を、第1のサブ画像と第2のサブ画像とに分割することと、
前記第1のサブ画像及び前記第2のサブ画像を分類することであって、前記第1のサブ画像及び前記第2のサブ画像に関連するピクセル位置に変数を導入することによって分類が達成される、ことと、
前記第1のサブ画像及び前記第2のサブ画像が分類されたことと、敵対的パッチが識別されたこととに応じて、前記入力が認証されていないことを示す通知を出力することと、
を含む方法。
【請求項2】
前記分類することは、前記第1のサブ画像及び前記第2のサブ画像に関連する入力空間において分枝限定法を利用することによって達成される、
請求項1に記載の方法。
【請求項3】
前記方法は、前記1つ又は複数の画像のうちの前記1つの画像に関連するパッチサイズを利用してパッチ攻撃問題を定式化するために、混合整数計画を利用することを含む、
請求項1に記載の方法。
【請求項4】
前記方法は、前記パッチ攻撃問題を解くために、凸計画ソルバを利用することを含む、
請求項3に記載の方法。
【請求項5】
前記画像は、LIDAR画像、レーダ画像、ソナー画像、サーマル画像、ヒート画像、又は、温度画像である、
請求項1に記載の方法。
【請求項6】
前記方法は、前記1つ又は複数の画像のうちの前記1つの画像に関連する画像サイズを利用して特徴マップを出力するように構成された特徴抽出器として、bagsnet又はconvmixerを利用することを含む、
請求項1に記載の方法。
【請求項7】
前記特徴抽出器は、前記1つ又は複数の画像のうちの前記1つの画像よりも小さい受容野を有する、
請求項6に記載の方法。
【請求項8】
画像を分類するためのシステムであって、
当該システムは、
1つ又は複数の画像を生成するように構成されたセンサと、
前記センサと通信するコントローラと、
を含み、
前記コントローラは、
1つ又は複数の画像の入力を受信することであって、前記1つ又は複数の画像は、パッチサイズ及び画像サイズを含む、ことと、
前記1つ又は複数の画像のうちの1つの画像を、第1のサブ画像と第2のサブ画像とに分割することと、
前記第1のサブ画像及び前記第2のサブ画像を分類することであって、前記第1のサブ画像及び前記第2のサブ画像に関連するピクセル位置に変数を導入することによって分類が達成される、ことと、
前記第1のサブ画像及び前記第2のサブ画像が分類されたことと、敵対的パッチが識別されたこととに応じて、前記入力が認証されていないことを示す通知を出力することと、
を行うように構成されている、システム。
【請求項9】
前記画像は、LIDAR画像、レーダ画像、ソナー画像、サーマル画像、ヒート画像、又は、温度画像である、
請求項8に記載のシステム。
【請求項10】
前記分類することは、前記第1のサブ画像及び前記第2のサブ画像に関連する入力空間において分枝限定法を利用することによって達成される、
請求項8に記載のシステム。
【請求項11】
前記コントローラは、C1={xi,j,x∈Cかつ(i,j)∈S1},C2={xi,j,x∈Cかつ(i,j)∈S2}を利用して、前記第1のサブ画像及び前記第2のサブ画像を検証するようにさらに構成されている、
請求項8に記載のシステム。
【請求項12】
前記システムは、特徴抽出器を含み、
前記特徴抽出器は、前記1つ又は複数の画像のうちの1つの画像に関連する画像サイズを取得して特徴マップを出力するように構成されている、
請求項8に記載のシステム。
【請求項13】
前記特徴抽出器は、bagsnet又はconvmixerのいずれかを含む、
請求項12に記載のシステム。
【請求項14】
攻撃を識別する方法であって、
1つ又は複数の画像の入力を受信することであって、前記1つ又は複数の画像は、パッチサイズ及びサイズを含む、ことと、
前記1つ又は複数の画像のうちの1つの画像を、第1のサブ画像と第2のサブ画像とに分割することと、
前記第1のサブ画像及び前記第2のサブ画像を分類することであって、前記第1のサブ画像及び前記第2のサブ画像に関連するピクセル位置に変数を配置することによって分類が実施される、ことと、
前記第1のサブ画像及び前記第2のサブ画像が分類されたことと、敵対的パッチが識別されなかったこととに応じて、前記1つ又は複数の画像のうちの前記1つの画像を複数のサブ画像に分割して、前記複数のサブ画像を分類することを継続することと、
前記複数のサブ画像のうちの1つにおいて敵対的パッチが識別されたことに応じて、前記入力が認証されていないことを示す通知を出力することと、
を含む方法。
【請求項15】
前記方法は、全てのサブドメインが認証されている場合に、前記入力が認証されていることを示す通知を出力することをさらに含む、
請求項14に記載の方法。
【請求項16】
前記方法は、前記1つ又は複数の画像のうちの前記1つの画像に関連するパッチサイズを利用してパッチ攻撃問題を定式化するために、混合整数計画を利用することを含む、
請求項14に記載の方法。
【請求項17】
前記方法は、前記パッチ攻撃問題を解くために、凸計画ソルバを利用することを含む、
請求項14に記載の方法。
【請求項18】
前記分類することは、前記第1のサブ画像及び前記第2のサブ画像に関連する入力空間において分枝限定法を利用することによって達成される、
請求項14に記載の方法。
【請求項19】
前記方法は、C1={xi,j,x∈Cかつ(i,j)∈S1},C2={xi,j,x∈Cかつ(i,j)∈S2}を利用して、前記第1のサブ画像及び前記第2のサブ画像を検証することをさらに含む、
請求項14に記載の方法。
【請求項20】
前記方法は、前記1つ又は複数の画像のうちの前記1つの画像に関連する画像サイズを利用して特徴マップを出力するように構成された特徴抽出器として、bagsnet又はconvmixerを利用することをさらに含む、
請求項14に記載の方法。
【外国語明細書】