(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-06-12
(45)【発行日】2023-06-20
(54)【発明の名称】証明可能ロバストな深層生成モデルを用いたシステム及び方法
(51)【国際特許分類】
G06N 20/00 20190101AFI20230613BHJP
【FI】
G06N20/00
(21)【出願番号】P 2022525134
(86)(22)【出願日】2020-10-20
(86)【国際出願番号】 EP2020079457
(87)【国際公開番号】W WO2021083731
(87)【国際公開日】2021-05-06
【審査請求日】2022-04-27
(32)【優先日】2019-10-28
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】390023711
【氏名又は名称】ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツング
【氏名又は名称原語表記】ROBERT BOSCH GMBH
【住所又は居所原語表記】Stuttgart, Germany
(74)【代理人】
【識別番号】100114890
【氏名又は名称】アインゼル・フェリックス=ラインハルト
(74)【代理人】
【識別番号】100098501
【氏名又は名称】森田 拓
(74)【代理人】
【識別番号】100116403
【氏名又は名称】前川 純一
(74)【代理人】
【識別番号】100134315
【氏名又は名称】永島 秀郎
(74)【代理人】
【識別番号】100162880
【氏名又は名称】上島 類
(72)【発明者】
【氏名】ジェレミー ジーグ コルター
(72)【発明者】
【氏名】フィリペ カブリタ コンデッサ
【審査官】今城 朋彬
(56)【参考文献】
【文献】米国特許出願公開第2019/0130256(US,A1)
【文献】米国特許出願公開第2017/0371329(US,A1)
【文献】特表2019-502212(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/00-99/00
(57)【特許請求の範囲】
【請求項1】
摂動に対してロバストであるように機械学習システムをトレーニングするためのコンピュータ実装による方法であって、
センサデータと許容可能摂動のl
pノルム球体の半径とを含む入力データを取得するステップと、
前記入力データに基づいて入力バウンディングデータを生成するステップと、
前記入力バウンディングデータをエンコーダネットワークの第1の出力に伝播させることにより、第1のバウンディングデータを生成するステップと、
前記入力バウンディングデータを前記エンコーダネットワークの第2の出力に伝播させることにより、第2のバウンディングデータを生成するステップと、
前記第1のバウンディングデータ及び前記第2のバウンディングデータに基づき、潜在変数に関連づけられた第3のバウンディングデータを生成するステップと、
前記第3のバウンディングデータをデコーダネットワークの出力に伝播させることにより、第4のバウンディングデータを生成するステップと、
前記第1のバウンディングデータ、前記第2のバウンディングデータ、前記第3のバウンディングデータ及び前記第4のバウンディングデータに基づき、エビデンス下限(ELBO)の下限を生成することによって、前記入力データに関してロバストネス認証を確立するステップと、
前記エンコーダネットワーク及び前記デコーダネットワークを含む前記機械学習システムが、前記許容可能摂動に対する防御に関してロバストであるように、前記ロバストネス認証に基づき前記エンコーダネットワーク及び前記デコーダネットワークを更新するステップと
を含む、
機械学習システムをトレーニングするためのコンピュータ実装による方法。
【請求項2】
前記ELBOは、条件付き対数尤度関数を含み、
前記エンコーダネットワーク及び前記デコーダネットワークを更新する前記ステップは、前記ELBOの前記下限を最適化するステップを含む、
請求項1に記載のコンピュータ実装による方法。
【請求項3】
前記エンコーダネットワーク及び前記デコーダネットワークを更新する前記ステップは、前記ELBOの前記下限を最大化するために、前記ELBOの前記下限に基づき前記エンコーダネットワーク及び前記デコーダネットワークのパラメータを更新するステップを含む、
請求項1に記載のコンピュータ実装による方法。
【請求項4】
前記機械学習システムは、前記エンコーダネットワーク及び前記デコーダネットワークを含む変分オートエンコーダを含み、
前記潜在変数は、前記変分オートエンコーダに関連づけられている、
請求項1に記載のコンピュータ実装による方法。
【請求項5】
前記エンコーダネットワークは、前記エンコーダネットワークの前記第1の出力を生成するための第1の符号化構成要素と、前記エンコーダネットワークの前記第2の出力を生成するための第2の符号化構成要素とを含み、
前記第1のバウンディングデータを生成する前記ステップは、前記第1の符号化構成要素の第1の上限データ及び第1の下限データを生成するステップを含み、
前記第2のバウンディングデータを生成するステップは、前記第2の符号化構成要素の第2の上限データ及び第2の下限データを生成するステップを含む、
請求項1に記載のコンピュータ実装による方法。
【請求項6】
前記ロバストネス認証は、||δ||
∞≦ε
trainを満たす全てのδについて、log p(x+δ)≧L(x+δ)≧
L(x)を保証するために、前記ELBOの前記下限を生成し、ここで、
xは、前記センサデータを表し、
δは、摂動データを表し、
L(x+δ)は、前記摂動データによって摂動された前記センサデータに基づく前記ELBOを表し、
L(x)は、前記ELBOの前記下限を表し、
ε
trainは、前記許容可能摂動のl
pノルム球体の半径を表す、
請求項1に記載のコンピュータ実装による方法。
【請求項7】
前記入力バウンディングデータは、前記入力データの上限データ及び下限データを含み、
前記第1のバウンディングデータは、前記エンコーダネットワークの第1の符号化構成要素の第1の出力の第1の上限データ及び第1の下限データを含み、
前記第2のバウンディングデータは、前記エンコーダネットワークの第2の符号化構成要素の第2の出力の第2の上限データ及び第2の下限データを含み、
前記第3のバウンディングデータは、前記潜在変数に関連づけられた第3の上限データ及び第3の下限データを含み、
前記第4のバウンディングデータは、前記デコーダネットワークの出力の第4の上限データ及び第4の下限データを含む、
請求項1に記載のコンピュータ実装による方法。
【請求項8】
アクチュエータと、
少なくとも1つのセンサを含むセンサシステムと、
機械学習システムを格納している非一時的コンピュータ可読媒体と、
前記センサシステム及び前記機械学習システムとの通信に基づき前記アクチュエータを制御する制御システムと
を含むシステムであって、
前記機械学習システムは、当該機械学習システムの損失関数の下限を設定するロバストネス認証に基づきトレーニングされたエンコーダネットワーク及びデコーダネットワークを有し、
前記制御システムは、少なくとも1つの電子プロセッサを含み、当該少なくとも1つの電子プロセッサは、以下のように動作可能であり、即ち、
前記センサシステムからのセンサデータと摂動からの摂動データとを含む入力データを取得し、前記センサデータは、前記摂動データによって摂動され、
前記機械学習システムを介して前記入力データを処理し、
前記機械学習システムを介して出力データを生成し、前記出力データは、前記センサデータの再構成体であり、前記出力データは、前記摂動データによって摂動されてない尤度に関連している、
ように動作可能であり、
ここで、
前記センサデータ及び前記出力データは、前記機械学習システムに関連したモデル分布に対応する分布内データであり、
前記機械学習システムは、たとえ前記摂動データが、前記入力データを前記モデル分布から外れた分布外データであると前記機械学習システムに識別させて処理させるように構成されていたとしても、前記入力データを前記分布内データの範囲内にあるものとして識別して処理する、
システム。
【請求項9】
前記制御システムは、前記出力データの分類に応じて分類データを生成するように動作可能であり、
前記制御システムは、前記分類データに基づいて前記アクチュエータに対する制御データを生成するように動作可能であり、
前記アクチュエータは、前記制御データに応答してアクションを実行する、
請求項8に記載のシステム。
【請求項10】
前記機械学習システムは、変分オートエンコーダを含み、前記変分オートエンコーダは、摂動に対してロバストであるようにトレーニングされており、前記エンコーダネットワーク及び前記デコーダネットワークを含む、
請求項8に記載のシステム。
【請求項11】
前記制御システムと通信する前に、前記変分オートエンコーダは、以下のステップを含むトレーニングプロセスによりトレーニングされる、即ち、
他のセンサデータと許容可能摂動のl
pノルム球体の半径とを含むトレーニングデータに基づき、入力バウンディングデータを生成するステップと、
前記入力バウンディングデータをエンコーダネットワークの第1の出力に伝播させることにより、第1のバウンディングデータを生成するステップと、
前記入力バウンディングデータを前記エンコーダネットワークの第2の出力に伝播させることにより、第2のバウンディングデータを生成するステップと、
前記第1のバウンディングデータ及び前記第2のバウンディングデータに基づき、潜在変数に関連づけられた第3のバウンディングデータを生成するステップと、
前記第3のバウンディングデータを前記デコーダネットワークの出力に伝播させることにより、第4のバウンディングデータを生成するステップと、
前記第1のバウンディングデータ、前記第2のバウンディングデータ、前記第3のバウンディングデータ及び前記第4のバウンディングデータに基づき、エビデンス下限(ELBO)の下限を生成することによって、前記トレーニングデータに関してロバストネス認証を確立するステップと、
前記機械学習システムが、前記許容可能摂動に対する防御に関してロバストであるように、前記ロバストネス認証に基づき前記エンコーダネットワーク及び前記デコーダネットワークを更新するステップと
を含むトレーニングプロセスによりトレーニングされる、
請求項10に記載のシステム。
【請求項12】
前記機械学習システムは、以下のようにトレーニングされる、即ち、
前記エンコーダネットワーク及び前記デコーダネットワークを更新する前記ステップが、前記ELBOの前記下限を最大化するために、前記ELBOの前記下限に基づき前記エンコーダネットワーク及び前記デコーダネットワークのパラメータを更新するステップを含む
ようにトレーニングされる、
請求項11に記載のシステム。
【請求項13】
前記機械学習システムは、以下のようにトレーニングされる、即ち
前記ロバストネス認証が、||δ||
∞≦ε
trainを満たす全てのδについて、log p(x+δ)≧L(x+δ)≧
L(x)を保証するために、前記ELBOの前記下限を生成し、ここで、
xは、前記センサデータを表し、
δは、摂動データを表し、
L(x+δ)は、前記摂動データによって摂動された前記センサデータに基づく前記ELBOを表し、
L(x)は、前記ELBOの前記下限を表し、
ε
trainは、許容可能摂動のl
pノルム球体の半径を表す
ようにトレーニングされる、
請求項11に記載のシステム。
【請求項14】
前記入力バウンディングデータは、前記トレーニングデータの上限データ及び下限データを含み、
前記第1のバウンディングデータは、前記エンコーダネットワークの第1の符号化構成要素の出力の第1の上限データ及び第1の下限データを含み、
前記第2のバウンディングデータは、前記エンコーダネットワークの第2の符号化構成要素の出力の第2の上限データ及び第2の下限データを含み、
前記第3のバウンディングデータは、前記潜在変数に関連づけられた第3の上限データ及び第3の下限データを含み、
前記第4のバウンディングデータは、前記デコーダネットワークの出力の第4の上限データ及び第4の下限データを含む、
請求項11に記載のシステム。
【請求項15】
少なくともコンピュータ可読データを含む非一時的コンピュータ可読媒体であって、前記コンピュータ可読データは、電子プロセッサによって実行されるときに、摂動に対してロバストであるように機械学習システムをトレーニングするための方法を実施するために実行可能であり、当該方法は、以下のステップを含む、即ち、
センサデータと許容可能摂動のl
pノルム球体の半径とを含む入力データを取得するステップと、
前記入力データに基づいて入力バウンディングデータを生成するステップと、
前記入力バウンディングデータをエンコーダネットワークの第1の出力に伝播させることにより、第1のバウンディングデータを生成するステップと、
前記入力バウンディングデータを前記エンコーダネットワークの第2の出力に伝播させることにより、第2のバウンディングデータを生成するステップと、
前記第1のバウンディングデータ及び前記第2のバウンディングデータに基づき、潜在変数に関連づけられた第3のバウンディングデータを生成するステップと、
前記第3のバウンディングデータをデコーダネットワークの出力に伝播させることにより、第4のバウンディングデータを生成するステップと、
前記第1のバウンディングデータ、前記第2のバウンディングデータ、前記第3のバウンディングデータ及び前記第4のバウンディングデータに基づき、エビデンス下限(ELBO)の下限を生成することによって、前記入力データに関してロバストネス認証を確立するステップと、
前記エンコーダネットワーク及び前記デコーダネットワークを含む前記機械学習システムが、前記許容可能摂動に対する防御に関してロバストであるように、前記ロバストネス認証に基づき前記エンコーダネットワーク及び前記デコーダネットワークを更新するステップと
を含む、
非一時的コンピュータ可読媒体。
【請求項16】
前記ELBOは、条件付き対数尤度関数を含み、
前記エンコーダネットワーク及び前記デコーダネットワークを更新する前記ステップは、前記ELBOの前記下限を最適化するステップを含む。
請求項15に記載の非一時的コンピュータ可読媒体。
【請求項17】
前記エンコーダネットワーク及び前記デコーダネットワークを更新する前記ステップは、前記ELBOの前記下限を最大化するために、前記ELBOの前記下限に基づき前記エンコーダネットワーク及び前記デコーダネットワークのパラメータを更新するステップを含む、
請求項15に記載の非一時的コンピュータ可読媒体。
【請求項18】
前記機械学習システムは、前記エンコーダネットワーク及び前記デコーダネットワークを含む変分オートエンコーダを含み、
前記潜在変数は、前記変分オートエンコーダに関連づけられている、
請求項15に記載の非一時的コンピュータ可読媒体。
【請求項19】
前記エンコーダネットワークは、第1の符号化構成要素と第2の符号化構成要素とを含み、
前記第1のバウンディングデータを生成する前記ステップは、前記第1の符号化構成要素の第1の出力の第1の上限データ及び第1の下限データを生成するステップを含み、
前記第2のバウンディングデータを生成するステップは、前記第2の符号化構成要素の第2の出力の第2の上限データ及び第2の下限データを生成するステップを含む、
請求項15に記載の非一時的コンピュータ可読媒体。
【請求項20】
前記ロバストネス認証は、||δ||
∞≦ε
trainを満たす全てのδについて、log p(x+δ)≧L(x+δ)≧
L(x)を保証するために、前記ELBOの前記下限を生成し、ここで、
xは、前記センサデータを表し、
δは、摂動データを表し、
L(x+δ)は、前記摂動データによって摂動された前記センサデータに基づく前記ELBOを表し、
L(x)は、前記ELBOの前記下限を表し、さらに
ε
trainは、許容可能摂動のl
pノルム球体の半径を表す、
請求項15に記載の非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、概して機械学習システムに関するものであり、より具体的には、敵対的攻撃に対してロバストな深層生成モデルに関する。
【背景技術】
【0002】
背景
一般に、深層ニューラルネットワークのような機械学習システムは、敵対的攻撃の影響を受け易い。一例として、機械学習システムはその入力を介して攻撃される可能性がある。かかる敵対的攻撃には入力に対する摂動が含まれ、これによって、機械学習システムの出力に変化が引き起こされる。例えば、敵対的攻撃がセンサデータに関係する場合には、センサデータに対する摂動により、機械学習システムは、例えば、誤った出力データを供給することによって、望ましくない挙動を示すおそれがあり、それにより、不利な結果及び作用が引き起こされる。分類という状況において、及び、それよりも少数ではあるが、物体検出又はイメージセグメンテーションといった他の教師あり学習という状況において、敵対的攻撃に関係する研究がいくつか存在する一方、敵対的攻撃に対する防御ソリューションを備えた生成モデルを提供することに関しては、多くの研究が存在しているようには思われない。
【発明の概要】
【課題を解決するための手段】
【0003】
概要
以下は、後で詳細に説明する特定の実施形態の概要である。説明される態様は、これらの特定の実施形態の簡単な概要を読み手に提供するために提示されるものに過ぎず、これらの態様の説明は、本開示の範囲を限定することを意図したものではない。実際に、本開示は、以下において明示的には記載されないことがある種々の態様を包含し得るものである。
【0004】
少なくとも1つの態様によれば、コンピュータ実装による方法は、入力データを取得するステップを含む。入力データは、センサデータと許容可能摂動のlpノルム球体の半径とを含む。この方法は、入力データに基づいて入力バウンディングデータを生成するステップを含む。この方法は、入力バウンディングデータをエンコーダネットワークの第1及び第2の出力に伝播させることにより、第1のバウンディングデータ及び第2のバウンディングデータを生成するステップを含む。この方法は、潜在変数に関連づけられかつエンコーダネットワークの出力に基づく、第3のバウンディングデータを生成するステップを含む。この方法は、第3のバウンディングデータをデコーダネットワークの出力に伝播させることにより、第4のバウンディングデータを生成するステップを含む。この方法は、第1のバウンディングデータ、第2のバウンディングデータ、第3のバウンディングデータ及び第4のバウンディングデータに基づき、エビデンス下限(ELBO)の下限を生成することによって、入力データに関してロバストネス認証を確立するステップを含む。この方法は、エンコーダネットワーク及びデコーダネットワークを含む機械学習システムが、許容可能摂動に対する防御に関してロバストであるように、ロバストネス認証に基づきエンコーダネットワーク及びデコーダネットワークを更新するステップを含む。
【0005】
少なくとも1つの態様によれば、システムは、アクチュエータ、センサシステム、非一時的コンピュータ可読媒体及び制御システムを含む。センサシステムは、少なくとも1つのセンサを含む。非一時的コンピュータ可読媒体は、機械学習システムの損失関数の下限を設定するロバストネス認証に基づきトレーニングされたエンコーダネットワーク及びデコーダネットワークを有する機械学習システムを格納している。制御システムは、センサシステム及び機械学習システムとの通信に基づきアクチュエータを制御するように動作可能である。制御システムは、少なくとも1つの電子プロセッサを含み、この電子プロセッサは、センサシステムからのセンサデータと摂動からの摂動データとを含む入力データを取得するように動作可能であり、ここで、センサデータは、摂動データによって摂動されている。機械学習システムを介して入力データが処理される。機械学習システムを介して出力データが生成される。出力データは、センサデータの再構成体である。出力データは、摂動データによって摂動されない尤度に関連づけられている。尤度は、ELBOに対応する。センサデータ及び出力データは、機械学習システムに関連づけられたモデル分布に対応する分布内データである。機械学習システムは、たとえ摂動データが、入力データをモデル分布から外れた分布外データであると機械学習システムに識別させて処理させるように構成されていたとしても、入力データを分布内データの範囲内にあるものとして識別して処理する。
【0006】
少なくとも1つの態様によれば、非一時的コンピュータ可読媒体は少なくともコンピュータ可読データを含み、このコンピュータ可読データは、電子プロセッサによって実行されるときに、摂動に対してロバストであるように機械学習システムをトレーニングするための方法を実施するために実行可能である。この方法は、センサデータと許容可能摂動のlpノルム球体の半径とを含む入力データを取得するステップを含む。この方法は、入力データに基づいて入力バウンディングデータを生成するステップを含む。この方法は、入力バウンディングデータをエンコーダネットワークの第1及び第2の出力に伝播させることにより、第1のバウンディングデータ及び第2のバウンディングデータを生成するステップを含む。この方法は、潜在変数に関連づけられかつエンコーダネットワークの出力に基づく、第3のバウンディングデータを生成するステップを含む。この方法は、第3のバウンディングデータをデコーダネットワークの出力に伝播させることにより、第4のバウンディングデータを生成するステップを含む。この方法は、第1のバウンディングデータ、第2のバウンディングデータ、第3のバウンディングデータ及び第4のバウンディングデータに基づき、エビデンス下限(ELBO)の下限を生成することによって、入力データに関してロバストネス認証を確立するステップを含む。この方法は、エンコーダネットワーク及びデコーダネットワークを含む機械学習システムが、許容可能摂動に対する防御に関してロバストであるように、ロバストネス認証に基づきエンコーダネットワーク及びデコーダネットワークを更新するステップを含む。
【0007】
本発明のこれらの及びその他の特徴、態様及び利点について、以下の詳細な説明において図面を参照しながら論じるが、それらの図面全体を通して、同種の参照符号は、類似の又は同種の部分を表す。
【図面の簡単な説明】
【0008】
【
図1A】本開示の1つの例示的な実施形態による、機械学習システムを含むシステムを示す図である。
【
図1B】本開示の1つの例示的な実施形態による、移動機械技術に関する
図1Aのシステムの1つの実施例を示す図である。
【
図1C】本開示の1つの例示的な実施形態による、製造技術に関する
図1Aのシステムの1つの実施例を示す図である。
【
図2A】本開示の1つの例示的な実施形態による、証明可能ロバストな深層生成モデルのトレーニングに関するフローチャートである。
【
図2B】本開示の1つの例示的な実施形態による、トレーニングされた
図2Aの証明可能ロバストな深層生成モデルの動作に関するフローチャートである。
【
図3A】本開示の1つの例示的な実施形態による、証明可能ロバストな深層生成モデルのトレーニングに関するブロック図である。
【
図3B】本開示の例示的な実施形態による、変分オートエンコーダを含む証明可能ロバストな深層生成モデルのトレーニングについての概念図である。
【
図4】本開示の1つの例示的な実施形態による、証明可能ロバストな深層生成モデルのトレーニング方法についてのフローチャートである。
【
図5A】本開示の1つの例示的な実施形態による入力データの非限定的な実施例を示す図である。
【
図5B】本開示の1つの例示的な実施形態による入力データの非限定的な実施例を示す図である。
【
図5C】本開示の1つの例示的な実施形態による入力データの非限定的な実施例を示す図である。
【
図5D】本開示の1つの例示的な実施形態による入力データの非限定的な実施例を示す図である。
【
図6A】1つの例示的な実施形態による、種々の生成モデルに関して第1のデータセットに対する敵対的攻撃の作用を表したグラフを示す図である。
【
図6B】1つの例示的な実施形態による、種々の生成モデルに関して第2のデータセットに対する敵対的攻撃の作用を表したグラフを示す図である。
【発明を実施するための形態】
【0009】
詳細な説明
例示として図示され説明された本明細書に記載の実施形態及びそれらの実施形態の利点の多くは、これまでの説明によって理解されるであろうし、開示された保護対象から逸脱することなく又はその利点の1つ若しくは複数を犠牲にすることなく、構成要素の形態、構造及び配置について種々の変更をなし得る、ということが明確になるであろう。実際にこれらの実施形態の記載された形態は、説明のためのものであるに過ぎない。これらの実施形態について種々の変形及び代替形態を受け容れる余地があり、本明細書に続く特許請求の範囲は、かかる変更を網羅し包含するものであり、開示された特定の形態に限定されるものではなく、むしろ、本開示の着想及び範囲に合致するあらゆる変形、等価物及び代替を包含することが意図されている。
【0010】
本明細書において説明するように、実施形態は、生成モデルというコンテキストにおける証明可能ロバストなトレーニングの適用に関する。より具体的には実施形態は、教師ありの分類タスクではなく、教師なしの生成モデルというコンテキストにおける損失関数に関係する証明可能境界を構築するものである。1つの実施形態によれば、例えば、証明可能ロバストなトレーニングは、変分オートエンコーダ(VAE)などのような少なくとも1つの生成モデルに関する。これに関して、正真正銘にロバストな下限が、尤度の変分下限に対して定義され、次いで、この下限が、証明可能ロバストなVAE(“proVAE”)を生成するために、トレーニング中に最適化される。同様に、これらの証明可能ロバストな生成モデルは、敵対的攻撃(例えば、生成モデルのもとでそれらの尤度を劇的に低下させるように入力を摂動しようと試みる敵対者)に対して、複数の生成モデルから成る制御グループに比較してかなりロバストである、と評価される。
【0011】
図1Aには、1つの例示的な実施形態によるシステム100のブロック図が示されている。システム100は、1つ又は複数のセンサを備えたセンサシステム110を含む。例えば、センサシステム110は、イメージセンサ、カメラ、レーダセンサ、光検出及び測距(LIDAR)センサ、サーマルセンサ、超音波センサ、赤外線センサ、モーションセンサ、衛星に基づくナビゲーションセンサ(例えば、全地球測位システム(GPS)センサ)、任意の適当なセンサ又はこれらの任意の組合せを含む。センサシステム110は、制御システム120と通信するように動作可能である。
【0012】
制御システム120は、センサシステム110の1つ又は複数のセンサから直接又は間接的にセンサデータを取得するように構成されている。入力データ(例えば、センサデータ及び/又はセンサデータに基づくイメージデータ)を受信すると、制御システム120は、処理システム140を介し機械学習システム200と連携して、この入力データを処理するように構成されている。これに関連して、処理システム140は少なくとも1つのプロセッサを含む。例えば、処理システム140は、電子プロセッサ、中央処理ユニット(CPU)、グラフィック処理ユニット(GPU)、マイクロプロセッサ、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、任意の適当な処理技術又はこれらの任意の組合せを含む。この入力データの処理に基づき、処理システム140は、機械学習システム200を介して出力データを生成するように動作可能である。付加的に又は選択的に、処理システム140は、機械学習システム200の出力データを分類する分類データを生成するように動作可能である。同様に、処理システム140は、機械学習システム200の分類データ及び/又は出力データに基づいて、アクチュエータシステム170に制御データを供給するように動作可能である。
【0013】
1つの例示的な実施形態によれば、機械学習システム200はメモリシステム160内に格納されている。1つの例示的な実施形態によれば、メモリシステム160は、少なくとも本明細書において開示される動作及び機能を可能にするために、種々のデータを格納し、それらのデータへのアクセスを提供するように構成されたコンピュータ又は電子ストレージシステムである。1つの例示的な実施形態によれば、メモリシステム160は、単一のデバイス又は複数のデバイスを含む。1つの例示的な実施形態においては、メモリシステム160は、電気的、電子的、磁気的、光学的な技術、半導体技術、電磁的な技術又は任意の適当な技術を含み得る。例えば、1つの例示的な実施形態によれば、メモリシステム160は、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、フラッシュメモリ、ディスクドライブ、メモリカード、光学ストレージデバイス、磁気ストレージデバイス、メモリモジュール、任意の適当な種類のメモリデバイス又はこれらの任意の組合せを含み得る。1つの例示的な実施形態によれば、制御システム120及び/又は処理システム140から見て、メモリシステム160は、近距離若しくは遠距離に設けられており、又は、これらの組合せとして(例えば、一部は近距離に、一部は遠距離に)設けられている。例えば、メモリシステム160は、処理システム140から、及び/又は、制御システム120の他の構成要素から、遠距離に設けられた少なくとも1つのクラウドに基づくストレージシステム(例えば、クラウドに基づくデータベースシステム)を含み得る。
【0014】
1つの例示的な実施形態によれば、機械学習システム200は、少なくとも1つの深層ニューラルネットワークを含む。より具体的には、深層ニューラルネットワークは、少なくとも1つの証明可能ロバストなトレーニング済み生成モデル(“PROVAE”)を含む。入力データに応答して、処理システム140は(機械学習システム200と連携して)、入力データの再構成体である出力データを生成するように動作可能である。例えば、入力データがセンサデータ(及び/又はセンサデータに基づくイメージデータ)である場合、処理システム140は、機械学習システム200を介して、センサデータの再構成体である出力データを生成するように動作可能である。他の例として、入力データが、摂動データによって摂動されたセンサデータ(及び/又はセンサデータに基づくイメージデータ)を含む場合、処理システム140は、機械学習システム200を介して、センサデータの再構成体である出力データを生成するように動作可能であり、この場合、尤度作用は、摂動データによって破壊されない。機械学習システム200のこの特徴は、かかる摂動データによっても機械学習システム200の尤度作用及び/又は出力データにおいて劇的な変化を引き起こさないという点において、敵対的攻撃に対する防御ソリューションを提供する上で有利である。
【0015】
これに加えて、システム100は、センサシステム110及びアクチュエータシステム170に関係する制御システム120の動作に寄与する他の構成要素を含む。例えば、
図1に示されているように、メモリシステム160は、同様に、システム100の動作に関係する他の関連データを、このシステム100の1つ又は複数の構成要素(例えば、センサシステム110、機械学習システム200、アクチュエータシステム170等)に関連させて格納するように構成されている。これに加えて、制御システム120は入力/出力(I/O)システム130を含み、この入力/出力(I/O)システム130は、システム100に関係する1つ又は複数のI/Oデバイスへの1つ又は複数のインタフェースを含む。同様に、制御システム120は、システム100の機能を支援する又はそれに寄与する、任意の適当なハードウェア、ソフトウェア又はそれらの組合せなど、他の機能モジュール150を提供するように構成されている。例えば、他の機能モジュール150は、オペレーティングシステム及び通信技術を含み、この通信技術によってシステム100の構成要素は、本明細書において説明するように互いに通信することができる。少なくとも
図1Aの実施例で説明した構成によれば、システム100を種々の技術において適用することができる。
【0016】
図1Bには、移動機械技術(例えば、ロボット等)に関するシステム100の第1の用途の実施例が示されている。
図1Bの場合、システム100は、車両10によって使用され、この車両10において制御システム120は、センサシステム110からのセンサデータに従って、車両10の少なくとも1つのアクチュエータシステム170を制御する。より具体的には、非限定的な実施例として、制御システム120は、センサシステム110からのセンサデータを使用して、エンティティ(例えば、物体)を識別するように構成されている。例えば、システム100は、イメージセンサからイメージデータを取得すると、標識(例えば、停止標識)を識別するように構成されている。他の実施例として、システム100は、イメージセンサ及びLIDARセンサから取得されたセンサデータに基づいて生成されたイメージデータから、歩行者を検出するように構成されている。これに関して、センサデータは、センサシステム110の1つ又は複数のセンサから生成及び/又は取得される。この実施例によれば、少なくともセンサデータ及び/又はイメージデータを受信すると、処理システム140は、機械学習システム200を介して、センサデータ(及び/又はイメージデータ)がエンティティに関連した分布に基づき生成された及び/又は当該分布内にある、という尤度を高い値で推定すると、センサデータ(及び/又はイメージデータ)からエンティティを識別するように構成されている。有利には、PROVAE 200Aは、入力データ(例えば、センサデータ及び/又はイメージデータ)が摂動(例えば、ノイズ)によって摂動されたとしても、高い尤度値を推定するように構成されており、それによって、分布外の攻撃に対してロバストである。例えば、非限定的な実施例として、センサシステム110からのセンサデータを含む非摂動/摂動入力データを受信した場合に、処理システム140が機械学習システム200を介して、(そのモデル分布内において)他の車両をエンティティとして識別したときは、制御システム120は、識別されたこの車両との衝突を回避するためにアクチュエータシステム170(例えば、ステアリングシステム、ブレーキングシステム又は任意の適当なアクチュエータシステム)を制御するように構成されている。この実施例によれば、アクチュエータシステム170は、自律的、高度に自律的、部分的に自律的、条件付きで自律的、又は、運転者支援された車両の運転機能を制御若しくは支援するように構成されている。
【0017】
図1Cには、製造技術に関するシステム100の第2の用途の実施例が示されている。
図1Cの場合、システム100は、製造システム20によって使用され、この製造システム20において制御システム120は、センサシステム110からのセンサデータに従って、製造機械22の少なくとも1つのアクチュエータシステム170を制御する。より具体的には、非限定的な例として、制御システム120は、製品24の欠陥のある構成要素のイメージの分布をモデリングすることによって、製品24における故障を識別するように構成されている。このケースにおいては、PROVAE 200Aは、センサデータが比較的小さい(及び/又は知覚不可能な)摂動によって摂動されるケースであっても、製品24の構成要素における欠陥又は故障を識別するように構成されている。例えば、摂動された入力データが製品24の欠陥のある構成要素のイメージを含む場合には、処理システム140は、機械学習システム200を介して、製品24が欠陥であると識別し、摂動データによって意図されるように製品24が欠陥ではないとは識別しないように構成されている。このケースでは、この摂動された入力データの処理に応答して、制御システム120は、欠陥製品を欠陥製品の分布に属するものとして分類するように構成されており、機械学習システム200の出力及び/又は製品24が欠陥製品24の分布内にあるという分類に基づいて、アクチュエータシステム170を制御するように構成されている。この非限定的な実施例によれば、例えば、アクチュエータシステム170は、製品24が欠陥であると識別することに基づいて、ロボット又は製造機械のアクションを制御するように構成されている。
【0018】
第1の用途(
図1B)及び第2の用途(
図1C)に対して付加的に又は選択的に、システム100(及び/又は制御システム120)は、他の用途においても同様に動作可能である。例えば、制御システム120は、これらのタイプの機械学習システム200をトレーニングするために使用されるトレーニングデータを生成するように構成されている。さらに、システム100(及び/又は制御システム120)は、同様に、コンピュータ制御機械、ロボット、家電製品、電動工具、電子パーソナルアシスタント、ヘルスケア/医療システム、移動機械、セキュリティシステム、シミュレーションシステム等といった種々の分野において適用可能である。さらに、システム100(及び/又は制御システム120及び/又は機械学習システム200)は、上述の用途に限定されるものではなく、摂動に対して証明可能ロバストな少なくとも1つのトレーニング済み生成モデルを備えた機械学習システム200から利益を得る任意の適当な用途に適用可能である。
【0019】
図2Aには、1つの例示的な実施形態による、少なくとも1つの証明可能ロバストな生成モデル(例えば、PROVAE 200A)を生成するための、機械学習システム200用のトレーニングプロセス204に関するフローチャートが示されている。
図2Aに示されているように、生成モデル(例えば、VAE)は、トレーニングプロセス204(
図4)を介して分布内データ202によってトレーニングされる。一例として、分布内データ202とは、生成モデルに関連したx∈Dの分布から選択又は取り出された入力データを指す。この特徴は、証明可能ロバストな生成モデルが、トレーニングプロセス204中に、他のタイプのトレーニングデータ(例えば、分布外データ、摂動データ、敵対的サンプル等)を必要としないため、有利である。分布内データ202によるトレーニングプロセス204が完了すると、証明可能ロバストなトレーニング済み生成モデル(例えば、PROVAE 200A)が生成され、動作の準備が整う。
【0020】
図2Bには、1つの例示的な実施形態による、少なくとも1つの証明可能ロバストなトレーニング済み生成モデル(例えば、PROVAE 200A)を含む、機械学習システム200の動作に関するフローチャートが示されている。このフローチャートによって、証明可能ロバストな生成モデルの利点が強調される。例えば、有利には、摂動データ208によって摂動された分布内データ202を含む入力データを受信すると、PROVAE 200Aは、この入力データが分布内データであると識別するように、さらに同様に、分布内データ202である出力データを生成するように、動作可能である。選択的に、図示されてはいないが、摂動データによって摂動されない分布内データ202を含む入力データを受信すると、分布内データ202である出力データを生成するように、PROVAE 200Aが構成されている。
【0021】
図3Aは、1つの例示的な実施形態による証明可能ロバストな深層生成モデルのトレーニングに関するブロック図である。
図3Aに示されているように、トレーニングプロセス204は、少なくともメモリシステム300と処理システム310とを含む。1つの例示的な実施形態によれば、メモリシステム300は、少なくとも本明細書において開示される動作及び機能を可能にするために、種々のデータを格納し、それらのデータへのアクセスを提供するように構成されたコンピュータ又は電子ストレージシステムである。1つの例示的な実施形態によれば、メモリシステム300は、単一のデバイス又は複数のデバイスを含む。1つの例示的な実施形態においては、メモリシステム300は、電気的、電子的、磁気的、光学的な技術、半導体技術、電磁的な技術又は任意の適当な技術を含む。例えば、メモリシステム300は、RAM、ROM、フラッシュメモリ、ディスクドライブ、メモリカード、光学ストレージデバイス、磁気ストレージデバイス、メモリモジュール、任意の適当な種類のメモリデバイス又はこれらの任意の組合せを含む。1つの例示的な実施形態によれば、処理システム310から見て、メモリシステム300は、近距離若しくは遠距離に設けられており、又は、これらの組合せとして(例えば、一部は近距離に、一部は遠距離に)設けられている。例えば、メモリシステム300は、処理システム310から遠距離に設けられた少なくとも1つのクラウドに基づくストレージシステム(例えば、クラウドに基づくデータベースシステム)を含むように構成されている。
【0022】
1つの例示的な実施形態によれば、
図3Aに示されているように、メモリシステム300は、少なくとも、トレーニングデータ302と、機械学習データ304と、証明可能ロバストな生成モデル(“PROVAE”)200Aとを含む。トレーニングデータ302は、少なくともセンサデータ(及び/又はセンサデータに基づくイメージデータ)を含む。有利には、トレーニングプロセス204は、入力データとして摂動を必要とせずに、許容可能摂動に対してトレーニングするように動作可能である。同様に、機械学習データ304は、PROVAE 200Aをトレーニング及び生成するための方法400(
図4)に関連した機械学習アルゴリズム、並びに、種々のバウンディングデータ(例えば、ベクトルデータ)、ロバストネス認証等といった他の関連データ304A(
図3B)を含む。PROVAE 200Aは、そのトレーニング及び/又は動作に関連したニューラルネットワークデータ(例えば、種々の層、パラメータデータ、ε
trainデータ等)を含む。トレーニングプロセス204が完了すると、PROVAE 200Aは、
図1Aのシステム100又は任意の適当なアプリケーションによって配備可能及び/又は使用可能となる。
【0023】
トレーニングデータ302(例えば、センサデータ及び/又はセンサデータに基づくイメージデータ)を受信すると、処理システム310は、機械学習データ304と連携して生成モデルをトレーニングするように構成されている。これに関連して、処理システム310は、少なくとも1つのプロセッサを含む。例えば、処理システム310は、電子プロセッサ、CPU、GPU、マイクロプロセッサ、FPGA、ASIC、任意の適当な処理技術又はこれらの任意の組合せを含む。1つの例示的な実施形態によれば、処理システム310は、トレーニングデータ302及び機械学習データ304に基づき、証明可能ロバストなトレーニング済み生成モデル(“PROVAE”)200Aを生成するために、メモリシステム300と通信する。
【0024】
図3Bには、例示的な実施形態による、証明可能ロバストな生成モデル(例えば、PROVAE 200A)を生成するための生成モデル(例えば、VAE)のトレーニングの概念図が示されている。一般的に、VAEは、エンコーダネットワークを有する少なくとも1つのエンコーダと、デコーダネットワークを有するデコーダとを含む。これに関して、エンコーダは、認識モデルを含むのに対し、デコーダは、生成モデルをそれぞれ含む。1つの例示的な実施形態によれば、少なくとも
図3Bに示されているように、エンコーダ及びデコーダは、入力に対する摂動作用を伝播するために区間境界伝播(IBP)技術を使用する。摂動作用は、VAE全体に伝播する。同様に、便宜上、証明可能ロバストなトレーニングプロセスについて
図4を参照しながら説明する際に役立つように、
図3Bには、VAEのいくつかの構成要素(例えば、μ(x)、σ(x)、g(z)等)のマッピング、及び、VAEに関係する他の関連データ304Aのいくつかの表現が示されている。同様に、
図3Bには、センサデータx(例えば、手書きの数字「4」を含む入力イメージ304B)の例と、センサデータの再構成体である出力データ
【数1】
(例えば、再構成された手書きの数字「4」を含む出力イメージ304C)の例とが示されている。入力イメージ304B及び出力イメージ304Cは、両方とも、分布内データとして識別される(又は「手書きの数字」の分布内において識別される)。
【0025】
一般に、VAEは、対数尤度に対する境界に基づいてトレーニングされ、この場合、処理システム310は、敵対的な状況においてはさらにバウンディングするように構成されている。VAEは、いわゆるエビデンス下限(ELBO)L(x)に基づいてトレーニングされ、このエビデンス下限は、確率p(x)を潜在変数z∈R
kにより表し、次いで、尤度を
【数2】
のようにバウンディングする。ここで、q(z│x)は、いわゆる変分分布であり、これは、事後分布p(z│x)を近似しようと試みるが(このケースにおいては、境界が狭い)、より扱い易い分布クラスを介してそれを行う。VAEの状況においては、処理システム310は、
【数3】
を選択する。
【0026】
ここで、μ
θ(x)及び
【数4】
は、入力xからの正規分布qの平均及び分散を予測するエンコーダネットワークであり、g
θ(z)は、潜在ベクトルzであるときに入力空間においてサンプルを生成するデコーダネットワークである。
【0027】
これらの前提の下で、ELBOは、以下の明示的な形態を有する。即ち、
【数5】
【0028】
ここで、Cは、定数である。一般にエンコーダ及びデコーダのネットワークは、以下の式、即ち、
【数6】
によって表される下限を最大化するように、協働してトレーニングされる。
【0029】
例えば、確率的勾配降下法を使用し、ここで、処理システム310は、サンプリング手順z~Ν(μ(x);σ2(x)I)を等価のプロセスz=μ(x)+σ(x)・ε~Ν(0,I)と置き換えて、サンプルを引き出し、平均及び分散の項をいわゆる再パラメータ化技術を介して逆伝播可能であることを保証する。
【0030】
図4には、1つの例示的な実施形態による、証明可能ロバストな生成モデル(例えば、PROVAE 200A)を生成するためのトレーニングプロセス204の方法400のフローチャートが示されている。この方法400によれば、深層生成モデルへの分布外攻撃に対するロバストな防御を定式化する技術的問題についての解決手段が提供される。方法400によれば、許容可能摂動についてELBOの下限を設定する証明可能ロバストな深層生成モデル(例えば、PROVAE 200A)を取得することによって、かかる防御が達成される。より具体的には、方法400は、Δε
train(x)を許容可能摂動のセットとして識別し、xを中心にセンタリングされた半径ε
trainの球体としてl
∞を識別する。本開示においては、表記の明瞭性のために、これらの用語Δε
train(x)とΔ(x)とが交換可能に使用される。
【0031】
処理システム310は、考えられる全ての摂動δ∈Δ(x)についてELBOの下限を、L(x)≦L(x+δ)≦log(p(x+δ))として取得するように構成されている。この下限によって、ELBOのロバストネス認証が提供される。Δ(x)における任意の可能な摂動のELBOに対して及ぼされる作用は、Lによって下限が設定される。下限Lの最適化によって、Δ(x)(x周囲の半径εtrainのl∞球体)内において考えられる限り最強の分布外攻撃に対してロバストであるように、ネットワークが効果的にトレーニングされる。
【0032】
ELBOの下限を設定する目的で、処理システム310は、μ
θ、σ
θ及びg
θの層にわたってIBPを実施し、このようにすることにより、処理システム310は、ELBOに関して入力空間における許容可能摂動の伝播についての境界を取得する。従って、処理システム310は、摂動された入力KL(q(z│x+δ)||p(z))のカルバックライブラー(KL)ダイバージェンスと、摂動された条件付き対数尤度
【数7】
の期待値との両方をバウンディングするように構成されている。これを行うために、処理システム310は、エンコーダネットワークμ
θ及びδ
θにIBPを実施し、かつ、デコーダネットワークg
θにIBPを実施する。
【0033】
方法400に対する準備として、処理システム310は、エンコーダネットワーク及びデコーダネットワークの構成ブロックに下限及び上限を伝播する。一般に、構成ブロックは、少なくとも、線形層及び畳み込み層並びに要素ごとの単調活性化関数を含む。これらの特徴によって処理システム310は、深層ニューラルネットワーク(例えば、VAE)の入力から出力まで、種々の区間境界を順次に接続することができる。本開示においては、表記の便宜及び明確性のために、μの上限は、
【数8】
として表され、下限は
μとして表され、これらは、多次元エンティティを扱う場合に要素ごとに考慮される。
【0034】
線形演算子に関して、処理システム310は、Wvを、vに適用される線形演算子Wとみなし、
【数9】
を、vの要素ごとの上限及び下限とみなす。処理システム310は、線形演算子Wを正及び負の演算子W=W
++W
-に分解し、これにより、W
+=max(W,0)及びW
-=min(W,0)となるようにし、ここで、max及びminは、要素ごとの最大値及び最小値に相当する。次いで、処理システム310は、線形演算子の上限及び下限をvに適用する。より具体的には、処理システム310は、畳み込み層及び線形層を保持する上限(式7)及び下限(式8)を、それらの線形特性に基づき適用する。
【数10】
【0035】
単調関数に関して、処理システム310は、v
t-1に要素ごとに適用される単調(非減少又は非増加)関数としてv
t=h(v
t-1)を表すように構成されている。処理システム310は、v
tの上限及び下限をhにより表現し、v
t-1の上限及び下限を以下のように表現する。即ち、
【数11】
【0036】
これらの境界は、ReLU及びシグモイドなどの単調活性化関数を保持する。
【0037】
l
2ノルム二乗に関して、処理システム310は、vの下限及び上限への要素ごとの依存性が存在することを認識することによって、vのl
2ノルム二乗の下限及び上限を取得するように構成されている。ここで、v
iは、vのi番目の構成要素を表すとすると、
【数12】
であるため、処理システム310は、
【数13】
及び
vの関数として個々の上限及び下限を以下のように取得する。
【数14】
【0038】
準備が実施された後、処理システム310は、方法400を実行して、例えば、少なくとも1つの対数尤度関数に関して、ワーストケースの摂動から取得されたロバストネス認証を最適化する。方法400は、1回又は複数回の反復(又はエポック)を含む。このケースにおいては、各反復(又はエポック)は、境界伝播を通してロバストネス認証を計算すること(例えば、ステップ402~412)と、ロバストネス認証を最適化すること(例えば、ステップ414)とを含み、それによって、ロバストにトレーニングされたエンコーダ及びデコーダのネットワーク(例えば、ステップ416)がもたらされる。
図4を参照すると、方法400は、下記の記載において説明するように、少なくとも、以下の実施形態を含む。
【0039】
ステップ402において、処理システム310は、入力xを取得し、この入力xにおいて少なくとも1つの境界を生成するように構成されている。例えば、入力xは、X={x
1,...,x
n}のようなトレーニングデータを含み、ここで、
【数15】
である。x∈Xであるとすると、処理システム310は、入力x
iに対する入力バウンディングデータを生成するように構成されている。入力バウンディングデータは、入力x
iに対する上限データと、入力x
iに対する下限データとを含む。
【0040】
同様に、第1の符号化構成要素μ
θ(x)及び第2の符号化構成要素σ
θ(x)であるとすると、処理システム310は、エンコーダネットワークを、ReLU活性化を有する畳み込み層のシーケンスとなるように構築し、その際、少なくとも1つの最後の層は、少なくとも1つの全結合線形層である。これに加えて、入力xとしての摂動を必要とすることなく、処理システム310は、摂動データをδ∈Δε
train(x
i)として定義し、かつ、許容可能摂動入力の下限及び上限を以下のように表すことにより、任意の許容可能摂動入力x
i+δを考慮するように、動作可能である。
【数16】
【0041】
ステップ404において、処理システム310は、エンコーダネットワークの出力の境界を生成するように構成されている。これらの境界は、VAEの第1のバウンディングデータ及び第2のバウンディングデータを含む。第1及び第2のバウンディングデータは、エンコーダの第1及び第2の符号化構成要素の個々の出力に関係する。より具体的には、処理システム310は、第1の符号化構成要素μθ(x)の出力に対する第1の上限データと第1の下限データとを生成するように構成されている。これに加えて、処理システム310は、第2の符号化構成要素σθ(x)の出力に対する第2の上限データと第2の下限データとを生成するように構成されている。処理システム310は、第2の符号化構成要素σθ(x)の第2のバウンディングデータとは無関係に、第1の符号化構成要素μθ(x)の第1のバウンディングデータを生成するように構成されている。これに関して、処理システム310は、第1のバウンディングデータと第2のバウンディングデータとを同時に又は異なる時点において生成するように構成されている。
【0042】
式7乃至式8における線形層及び畳み込み層並びに式9乃至式10における活性化関数のための区間境界伝播により、処理システム310は、エンコーダネットワークの出力を
x
i
及び
【数17】
のIBPに基づきエンコーダネットワークの構成要素全体にわたり、
【数18】
を介してバウンディングするように構成されている。
【0043】
ここで、μ
i=μ
θ(x
i)及びσ
i=σ
θ(x
i)は、エンコーダの出力であり、
μ
θ
及び
【数19】
並びに
σ
θ
及び
【数20】
は、それぞれエンコーダネットワークの下限及び上限値の伝播に対応する。その結果、符号化構成要素μ
i及びσ
iの出力に対する境界が得られ、同様に(対数及び指数は、単調非減少であるため)、摂動Δ(x
i)の大きさε
trainの関数としてlog σ
iが得られる。
【0044】
エンコーダネットワークの出力に対して境界が与えられている場合には、処理システム310は、Ν(μ
i,σ
iI)とΝ(0,I)との間のKLダイバージェンスを
【数21】
を介してバウンディングするように構成されている。
【0045】
ここで、
【数22】
は、エンコーダによって出力されたi番目のサンプルの二乗平均及び共分散のj番目の構成要素を表す。これに加えて、処理システム310は、エンコーダネットワークの終端部分におけるμ
i及びσ
iに対する境界から続けて、デコーダネットワークを介してIBPを実施することができるように構成されている。
【0046】
ステップ406において、処理システム310は、“ε”により表される少なくとも1つのサンプルを取り出し、“z”により表される潜在変数に対する境界を計算するように構成されている。例えば、処理システム310は、再パラメータ化技術を介して潜在変数に対する境界(又はVAEの第3のバウンディングデータ)を取得するように構成されている。より具体的には、再パラメータ化は線形演算子であるため、再パラメータ化技術を用いることによって、潜在変数に対する境界は、式7乃至式8における線形演算子に対する境界の結果から得られる。
【0047】
例えば、処理システム310は、ε~Ν(0,1)、ε
+=max(ε,0)かつε
-=min(ε,0)によって表される1つのサンプルを、ε=ε
++ε
-=となるよう処理するように構成されており、ここで、0は、平均を表し、Iは、共分散のための単位ベクトルを表す。この再パラメータ化技術は、潜伏変数をz
i=μ
i+σ
iεとして表現することによって、エンコーダからランダム性を切り離す。再パラメータ化技術を使用した後、処理システム310は、
【数23】
として表される潜在変数z
iをバウンディングする(例えば、第3のバウンディングデータを生成する)ように構成されている。
【0048】
ステップ408において、処理システム310は、デコーダネットワークgθ(x)の出力に対する境界を生成するように構成されている。これに関して、処理システム310は、VAEの第4のバウンディングデータを生成するように構成されており、この第4のバウンディングデータは、デコーダネットワークgθ(x)の第4の上限データと第4の下限データとを含む。例えば、ステップ408の後、潜在変数(即ち、z)に対する境界は、次いで、デコーダネットワークgθを介して伝播され、このデコーダネットワークgθは、ReLU活性化及びシグモイド活性化(例えば、単調活性化関数、この場合、式9乃至式10により境界を伝播可能)を有する線形層及び畳み込み層(例えば、線形演算子、この場合、式7乃至式8により境界を伝播可能)を含む。従って、処理システム310は、エンコーダネットワークによる場合のように、潜在ベクトルziに対する境界の関数として、デコーダネットワークの出力に対する境界を供給するように構成されている。
【0049】
これに加えて、処理システム310は、条件付き対数尤度log p(x
i|z
i)をバウンディングする問題に対処する。このようにするために、処理システム310は、
【数24】
における対角共分散σ
θIを確定する。かくして処理システム310は、条件付き対数尤度のバウンディング問題を、バウンディング問題||x
i-g
θ(z
i)||
2へと低減する。式11乃至式12を解くと、処理システム310は、
【数25】
を介してこの関数をバウンディングするように構成されている。
【0050】
ここで、処理システム310は、xの要素全体にわたりjにおいて要素ごとの最大値及び最小値並びに合計を取り出すように構成されている。
【0051】
ステップ410において、処理システム310は、損失関数として機能するELBO Lに対する少なくとも1つの境界を生成することによって、ロバストネス認証を生成するように構成されている。より具体的には、処理システム310は、ELBOに対して下限データを生成するように構成されている。例えば、ELBOは、KLダイバージェンスの負を考慮するので、処理システム310は、エンコーダネットワーク及びデコーダネットワークに対する上限及び下限と、条件付き対数尤度に対する関連した下限及びKLダイバージェンスに対する上限とを組み合わせ、それによって、以下の下限から下限データを取得する。
【数26】
【0052】
この場合、エンコーダネットワークに対する上限及び下限が伝播され、再パラメータ化技術は、以下のとおりである。
【数27】
【0053】
ELBOに対して結果として得られた下限によって、摂動されたサンプルlog p(xi+δ)の対数尤度の下限が設定され、これは、摂動に関するロバストネス認証として機能する。このことが意味するのは、エンコーダに供給される入力区間境界がxi-εtrain1及びxi+εtrain1(半径εtrainのxiでセンタリングされたl∞球体)であるとして、L≧αである場合には、このことにより全てのδ:||δ||∞≦εtrainについて、log p(x+δ)≧αであることが保証される、ということである。
【0054】
方法400は、下限を最適化することによってVAEをトレーニングすることを含む。例えば、処理システム310は、ELBO Lを直接最適化する代わりに、ロバストネス認証の最適化に対応して、ELBO Lの下限を最適化することによって、証明可能ロバストな深層生成モデルをトレーニングする。
【0055】
ステップ414において、処理システム310は、ELBOの下限を最適化するように、エンコーダネットワーク及びデコーダネットワークを更新するように構成されている。例えば、処理システム310は、VAEのパラメータを更新し、ELBO Lの下限値を直接最大化するように動作可能である。このケースにおいては、パラメータ(即ち、θ)は、少なくとも内部の重み付けを含み、これらの重み付けは、VAEのエンコーダネットワーク及びデコーダネットワークに関連づけられている。
【0056】
ステップ416において、処理システム310は、ロバストにトレーニングされたネットワークを出力するように構成されており、これらのネットワークは、少なくとも、第1のエンコーダネットワークμ
θ(x)、第2のエンコーダネットワークσ
θ(x)及びデコーダネットワークg
θ(x)を含む。一旦、処理システム310がロバストにトレーニングされたネットワークを出力すると、処理システム310は、使用する目的でPROVAE 200Aを配備又は送信するように構成される。例えば、一旦、ロバストにトレーニングされると、PROVAE 200Aは、
図1Aのシステム100又は任意の適当なアプリケーションによって配備可能及び/又は使用可能となる。
【0057】
さらに、方法400は、
図4に示したステップに限定されるものではなく、方法400が類似の又は実質的に類似の機能、効果及び/又は結果を提供する、ということを前提として、種々の変更を含み得る。これに関して、1つの変形実施例として、IBPの代わりに、ステップ404、406及び410において他の境界伝播技術を含むように、方法400が構成される。それら他の境界伝播技術によって、より厳格な境界を提供することができるが、その代償として、IBPによって提供されるものよりも遥かに複雑になる。他の変形実施例として、方法400は、ステップ408、410及び412を2回以上(例えば、設定された回数だけ)実施し、そのセットに関する結果を平均することを含む。付加的に又は選択的に、方法400は、
【数28】
を解くために、モンテカルロ積分を実行することを含む。さらに他の変形実施例として、方法400はさらに、分類器を介して生成モデルの出力を分類することを含み、これにより、新たなロバストネス認証が、誤って分類されたサンプルに対するペナルティを含むようになり、このペナルティによって、対数尤度の減少がバウンディングされるだけでなく、分類出力がノイズ又は敵対的攻撃によって変更されないことも保証される。
【0058】
図5A、
図5B、
図5C及び
図5Dには、1つの例示的な実施形態による入力データの非限定的な実施例が示されている。入力データのこれらの実施例には、Modified National Institute of Standards and Technologyデータベース(「MNISTデータベース」)から取得されたサンプル画像(例えば、手書きの数字のイメージ)が含まれる。より具体的には、
図5Aには、摂動されていないイメージデータ500を含み摂動データを含まない、入力データの非摂動サンプルが示されている。これに対して、
図5B乃至
図5Dには、摂動データによって摂動されたこの同一のイメージデータ500を含む、入力データの敵対的サンプルが示されている。例えば、
図5Bには、イメージデータ500(
図5A)を含む敵対的サンプル502が、PROVAEに対する射影勾配降下(PGD)攻撃と共に示されている。一方、
図5Cには、PROVAE 200Aにおいてε
train=0.01のPGD攻撃を受けたイメージデータ500(
図5A)を含む敵対的サンプル504が示されている。
図5Dには、PROVAE 200Aにおいてε
train=0.1のPGD攻撃を受けたイメージデータ500(
図5A)を含む敵対的サンプル506が示されている。
【0059】
例示的な査定によれば、イメージデータ500の非摂動サンプルに基づいて、VAE及びPROVAE 200Aが評価される。イメージデータ500のこの非摂動サンプルが、VAEに入力データとして与えられた場合には、損失は、L=-28.28として表される。比較として、例えば、イメージデータ500の非摂動サンプルが、εtrain=0.01であるPROVAE 200Aに入力データとして与えられた場合には、損失は、L=-31.10として表される。他の比較として、例えば、イメージデータ500の非摂動サンプルが、εtrain=0.1であるPROVAE 200Aに入力データとして与えられた場合には、損失は、L=-41.31として表される。これらの査定によって実証されるように、VAEとPROVAE 200Aとの間の性能に有意な差は存在しない。しかも、損失値によって実証されるように、VAE及びPROVAE 200Aは、分布内データであり手書きの数字の範囲内にあるものとして、イメージデータ500を正確に識別して処理するように動作可能である。
【0060】
他の例示的な査定によれば、VAE及びPROVAE 200Aが、摂動データによりイメージデータ500(
図5A)が摂動される、入力データの摂動されたサンプルに基づき評価される。これに関して、攻撃されたデータのこれらの敵対サンプルに関してVAEとPROVAE 200Aとを比較すると、VAEに比較してPROVAE 200Aの利点が強調される。より具体的には、敵対的サンプル502がVAEに入力データとして与えられた場合には、損失はL=-113.97として表される。即ち、このケースにおいては、L=-113.97であるので、敵対的サンプル502が手書きの数字のイメージデータ500を含んでいるにもかかわらず、摂動データの攻撃に起因して、VAEは、この敵対的サンプル502を分布外データであるとして(例えば、手書きの数字の範囲内にないものとして)誤って解釈する。これとは対照的に、敵対的サンプル504が、ε
train=0.01であるPROVAE 200Aに入力データとして与えられた場合には、損失は、L=-59.08として表され、この場合、PROVAE 200Aは、この敵対的サンプル504を分布内データであるとして(例えば、手書きの数字の範囲内にあるものとして)正確に識別して処理し、これによって、VAEに比較してロバストであることが示される。他の比較として、敵対的サンプル506が、ε
train=0.1であるPROVAEに入力データとして与えられた場合には、損失は、L=-50.06として表され、この場合、PROVAE 200Aは、この敵対的サンプル506を分布内データであるとして(例えば、手書きの数字の範囲内にあるものとして)正確に識別して処理し、これによって、VAEに比較してロバストであることが示される。さらに、
図6A及び
図6BにもPROVAE 200Aの利点が示されており、これらの図面には、VAEとPROVAE 200Aとの比較が含まれている。
【0061】
図6A及び
図6Bには、それぞれ異なるε
trainの値でトレーニングされた複数の分類器について、ELBO Lによって表されるような、損失に対する敵対的攻撃(例えば、0≦ε
attack≦0.2である半径ε
attackのl
∞球体におけるPGD攻撃)の作用のグラフィカル表示を含むグラフが示されている。
図6Aには、第1のデータセット(例えば、MNISTデータベースからのサンプルイメージ)に基づくグラフ600が示されているのに対して、
図6Bには、第2のデータセット(例えば、Canadian Institute For Advanced Research(CIFAR10)データベースからのサンプルイメージ)に基づくグラフ610が示されている。
図6Aの場合、VAE表現602は、第1のデータセットに基づきε
train=0に対応する。
図6Bの場合、VAE表現612は、第2のデータセットに基づきε
train=0に対応する。VAE表現602及び612の各々によれば、非ロバストな分類器に関する損失Lの急速な減衰が明確に示されており、証明可能ロバストな分類器をトレーニングすることによって、ε
attack=0である非摂動データに対してLの低い値を犠牲にして、この減衰がどのようにして緩和されるのかが示されている。これに加えて、比較のために、
図6A及び
図6Bは、それぞれ第1のデータセット及び第2のデータセットに基づくproVAE(ε
train=0.01)表現604及び614が示されている。同様に、比較のために、
図6A及び
図6Bは、それぞれ第1のデータセット及び第2のデータセットに基づくproVAE(ε
train=0.10)表現606及び616が示されている。従って、
図6A及び
図6Bに示されているように、proVAE表現604、606、614及び616各々は、VAE表現602及び612と比較して、ε
attackを増加させるために、より良好に機能する。
【0062】
本明細書において説明したように、実施形態には、数多くの有利な特徴及び利点が含まれている。例えば、実施形態は、尤度の変分下限(即ち、ELBO)に対するロバストな下限を定義し、証明可能ロバストな生成モデルをトレーニングするためにそれらの下限を最適化することに基づく、証明可能ロバストな生成モデルのトレーニング及び生成に関する。これらの実施形態によれば、生成モデルの領域における敵対的攻撃即ち分布外攻撃に対する証明可能な防御が導入され、このような攻撃の場合、モデルの分布内のサンプルが摂動されて、その尤度が低減される。
【0063】
これに加えて、
図6A乃至
図6Bによれば、この証明可能な防御の有効性が確証され、モデルのロバストネスに関連した他のトレードオフが導入される。例えば、
図6A乃至
図6Bには、
図4のトレーニングプロセスを介してロバストにトレーニングされていなかったVAEと比較して、PROVAE 200Aが、(例えば、ε
trainが増加したときに、ε
attackのより高い値でより高い対数尤度を有することによって)敵対的攻撃に対してより良好な防御をもたらすことが示されている。さらに、本開示における教示を、分布内に含める攻撃に対する防御の形成に関係する改善の方向へと拡張可能であり、そのような攻撃の場合には、敵対的攻撃が分布外のサンプル
【数29】
を摂動して、あたかも分布に属するものであるかのように見せかける可能性がある(x∈D)。
【0064】
同様に、実施形態は、敵対的攻撃に対する機械学習システム(例えば、深層生成モデル)の感受性に関連した技術的問題に対する技術的解決手段を提供することにおいて有利である。これらの敵対的攻撃は、入力データに知覚し得ない変化を引き起こすことが知られており、この変化は、尤度関数の劇的な変化につながる可能性があり、それによって、不正確な出力データが供給される。この技術的問題の対処にあたり、本明細書において開示した実施形態は、機械学習システムの入力に対するこれらの小さい変化(例えば、摂動)によっても機械学習システムの尤度機能に劇的な変更がもたらされないロバストな生成モデルを提供する。従って、上述のように、本明細書において説明した実施形態は、敵対的攻撃に対する防御解決手段を備えた生成モデルを提供する上で有利である。
【0065】
即ち、上述の説明は、例示的なものであって限定的なものではなく、特定の用途及びその要件の文脈において提供される、ということが意図されている。当業者であれば、これまでの説明から、本発明を種々の形態で実装し得ること、及び、種々の実施形態を単独で又は組み合わせて実装し得ることを理解することができる。従って、本発明の実施形態をそれらの特定の実施例に関連して説明してきたが、本明細書において定義された一般的な原理を、説明された実施形態の着想及び範囲から逸脱することなく、他の実施形態及び用途に適用することができ、本発明の実施形態及び/又は方法の真の範囲は、図示され説明された実施形態に限定されるものではない。なぜならば、図面、明細書及び添付の特許請求の範囲を精査すると、当業者には種々の変形が明らかになるからである。例えば、構成要素及び機能を、説明された種々の実施形態とは異なるように分離又は結合することができ、さらに、それらを異なる用語を用いて説明することができる。これら及びその他の変形、修正、追加及び改良は、以下の特許請求の範囲において定義された本開示の範囲内に含まれ得る。