(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023145403
(43)【公開日】2023-10-11
(54)【発明の名称】深層平衡フロー推定
(51)【国際特許分類】
G06T 7/00 20170101AFI20231003BHJP
G06F 17/17 20060101ALI20231003BHJP
G06V 10/82 20220101ALI20231003BHJP
G06T 7/254 20170101ALI20231003BHJP
G06N 3/08 20230101ALI20231003BHJP
【FI】
G06T7/00 350C
G06F17/17
G06V10/82
G06T7/254 A
G06T7/00 650B
G06N3/08
【審査請求】未請求
【請求項の数】20
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2023050468
(22)【出願日】2023-03-27
(31)【優先権主張番号】17/706,064
(32)【優先日】2022-03-28
(33)【優先権主張国・地域又は機関】US
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.BLUETOOTH
2.ZIGBEE
3.JAVA
4.PYTHON
5.Java Script
(71)【出願人】
【識別番号】390023711
【氏名又は名称】ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツング
【氏名又は名称原語表記】ROBERT BOSCH GMBH
【住所又は居所原語表記】Stuttgart, Germany
(74)【代理人】
【識別番号】100114890
【弁理士】
【氏名又は名称】アインゼル・フェリックス=ラインハルト
(74)【代理人】
【識別番号】100098501
【弁理士】
【氏名又は名称】森田 拓
(74)【代理人】
【識別番号】100116403
【弁理士】
【氏名又は名称】前川 純一
(74)【代理人】
【識別番号】100134315
【弁理士】
【氏名又は名称】永島 秀郎
(74)【代理人】
【識別番号】100162880
【弁理士】
【氏名又は名称】上島 類
(72)【発明者】
【氏名】シャオジエ バイ
(72)【発明者】
【氏名】デビン ウィルモット
(72)【発明者】
【氏名】フィリペ カブリタ コンデッサ
(72)【発明者】
【氏名】ジェレミー ジーグ コルター
(72)【発明者】
【氏名】ジョアン セメド
(72)【発明者】
【氏名】ヤシュ サヴァニ
【テーマコード(参考)】
5B056
5L096
【Fターム(参考)】
5B056HH03
5L096AA06
5L096AA09
5L096BA02
5L096BA04
5L096BA05
5L096BA13
5L096CA04
5L096GA51
5L096HA04
5L096HA11
5L096KA04
(57)【要約】 (修正有)
【課題】コンピュータシステムによるフロー推定に関し、深層平衡(DEQ)モデルベースの方法及びシステムを提供する。
【解決手段】機械学習(ML)システムのためのコンピュータ実装方法は、センサから時系列データである第1の画像フレームおよび第2の画像フレームを受信し、第1の画像フレームの第1のフロー状態および第1の潜在状態を判定することと、第1のフロー状態、第1の潜在状態および層関数に基づいて、求根法を用いてDEQベースの固定小数点解を求め、推定されたフローおよび潜在状態を取得することと、時系列データである第3の画像フレームを受信することと、推定フロー状態、推定潜在状態および層関数に基づいて、求根法を用いて固定小数点解を求め、更新フロー状態および更新潜在状態を取得することと、更新フロー状態を出力することと、を含む。
【選択図】
図3A
【特許請求の範囲】
【請求項1】
機械学習(ML)システムのためのコンピュータ実装方法であって、
センサから第1の画像フレームおよび第2の画像フレームを受信することであって、前記第1の画像フレームおよび前記第2の画像フレームは時系列データである、ことと、
前記第1の画像フレームの第1のフロー状態および第1の潜在状態を判定することと、
前記第1のフロー状態、前記第1の潜在状態および層関数に基づいて、求根法を用いて深層平衡モデル(DEQ)ベースの固定小数点解を求め、推定フロー状態および推定潜在状態を取得することと、
第3の画像フレームを受信することであって、前記第2の画像フレームおよび前記第3の画像フレームは時系列データである、ことと、
前記推定フロー状態、前記推定潜在状態および前記層関数に基づいて、前記求根法を用いて前記固定小数点解を求め、更新フロー状態および更新潜在状態を取得することと、
前記更新フロー状態を出力することと、
を含む、方法。
【請求項2】
前記固定小数点解は、
【数1】
で表現され、ここで、
【数2】
であり、f
θは前記層関数である、
請求項1記載の方法。
【請求項3】
前記方法は、前記MLシステムに対する物体の動きを推定することと、前記更新フロー状態に基づいて前記MLシステムのアクチュエータを制御することと、をさらに含み、前記MLシステムは半自律車両または自律車両である、請求項1記載の方法。
【請求項4】
前記方法は、前記MLシステムに対する物体の動きを推定することと、前記更新フロー状態に基づいて前記MLシステムのアクチュエータを制御することと、をさらに含み、前記MLシステムは、セキュリティシステムである、請求項1記載の方法。
【請求項5】
前記求根法は、準ニュートン法である、請求項1記載の方法。
【請求項6】
準ニュートン法は、アンダーソンソルバまたはブロイデンソルバである、請求項5記載の方法。
【請求項7】
前記センサは、ビデオカメラ、赤外線カメラ、LiDARセンサ、超音波センサまたは音響アレイである、請求項1記載の方法。
【請求項8】
前記層関数は、損失を取得するために複数の画像フレームおよび関連するフローデータのグラウンドトゥルースと比較されるトレーニングフロー状態およびトレーニング潜在状態データが取得されるよう、前記求根法を用いた前記深層平衡モデル(DEQ)ベースの固定小数点解を用いて処理された複数の画像フレームおよび関連するフローデータを用いてトレーニングされ、前記層関数は、陰関数定理(IFT)を用いて損失勾配に基づいて更新されている、請求項1記載の方法。
【請求項9】
前記損失は、主損失および補正損失を含む、請求項8記載の方法。
【請求項10】
デバイス制御システムであって、
コントローラを備え、前記コントローラは、
センサから第1の画像フレームおよび第2の画像フレームを受信することであって、前記第1の画像フレームおよび前記第2の画像フレームは時系列データである、ことと、
前記第1の画像フレームの第1のフロー状態および第1の潜在状態を判定することと、
前記第1のフロー状態、前記第1の潜在状態および層関数に基づいて、求根法を用いて固定小数点解を求め、推定フロー状態および推定潜在状態を取得することと、
第3の画像フレームを受信することであって、前記第2の画像フレームおよび前記第3の画像フレームは時系列データである、ことと、
前記推定フロー状態、前記推定潜在状態および層関数に基づいて、前記求根法を用いて前記固定小数点解を求め、更新フロー状態および更新潜在状態を取得することと、
前記更新フロー状態に基づいて前記システムを制御することと、
を行うように構成されている、システム。
【請求項11】
前記固定小数点解は、
【数3】
で表現される深層平衡モデル(DEQ)に基づく固定小数点解であり、ここで、
【数4】
であり、f
θは前記層関数である、
請求項10記載のシステム。
【請求項12】
前記求根法は、準ニュートン法である、請求項11記載のシステム。
【請求項13】
前記センサは、ビデオカメラ、赤外線カメラ、LiDARセンサ、超音波センサまたは音響アレイである、請求項12記載のシステム。
【請求項14】
前記層関数は、損失を取得するために複数の画像フレームおよび関連するフローデータのグラウンドトゥルースと比較されるトレーニングフロー状態およびトレーニング潜在状態データが取得されるよう、前記求根法を用いた前記深層平衡モデル(DEQ)ベースの固定小数点解を用いて処理された複数の画像フレームおよび関連するフローデータを用いてトレーニングされ、前記層関数は陰関数定理(IFT)を使用して損失勾配に基づいて更新され、前記損失は主損失および補正損失を含む、請求項13記載のシステム。
【請求項15】
機械の制御に関連する少なくとも1つの知覚タスクを実行するためのシステムであって、前記システムは、
プロセッサと、
命令を含むメモリと、
を備え、前記命令は、前記プロセッサによって実行される際に、前記プロセッサに、
センサから第1の画像フレームおよび第2の画像フレームを受信することであって、前記第1の画像フレームおよび前記第2の画像フレームは時系列データである、ことと、
前記第1の画像フレームの第1のフロー状態および第1の潜在状態を判定することと、
前記第1のフロー状態、前記第1の潜在状態および層関数に基づいて、求根法を用いて深層平衡モデル(DEQ)ベースの固定小数点解を求め、推定フロー状態および推定潜在状態を取得することと、
第3の画像フレームを受信することであって、前記第2の画像フレームおよび前記第3の画像フレームは時系列データである、ことと、
前記推定フロー状態、前記推定潜在状態および前記層関数に基づいて、前記求根法を用いて前記固定小数点解を求め、更新フロー状態および更新潜在状態を取得することと、
前記更新フロー状態を出力することと、
を行わせるためのものである、システム。
【請求項16】
前記固定小数点解は、
【数5】
で表現され、ここで、
【数6】
であり、f
θは前記層関数である、
請求項15記載のシステム。
【請求項17】
前記システムは、前記プロセッサによって実行される際に、前記プロセッサに、
前記機械に対する物体の動きを推定することと、
前記更新フロー状態に基づいて前記機械のアクチュエータを制御することと、
を含む動作を実行させるための命令をさらに含む、請求項15記載のシステム。
【請求項18】
前記機械は、半自律車両または自律車両、セキュリティシステム、アクセス制御システム、医療システム、またはロボットシステムである、請求項17記載のシステム。
【請求項19】
前記センサは、ビデオカメラ、赤外線カメラ、LiDARセンサ、超音波センサ、または音響アレイである、請求項18記載のシステム。
【請求項20】
前記システムは、1つ以上のコンピューティングデバイスによって実行される際に、前記1つ以上のコンピューティングデバイスに、損失を取得するために複数の画像フレームおよび関連するフローデータのグラウンドトゥルースと比較されるトレーニングフロー状態およびトレーニング潜在状態データが取得されるよう、前記求根法を用いて前記深層平衡モデル(DEQ)ベースの固定小数点解を用いて処理された複数の画像フレームおよび関連するフローデータを用いて前記層関数をトレーニングすることを含む動作を実行させるための命令をさらに含み、前記層関数は、陰関数定理(IFT)を使用して損失勾配に基づいて更新されている、請求項15記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、ニューラルネットワークを含む、機械学習の能力を有するコンピュータシステムによるフロー推定に関する。特定の実施形態では、本開示は、求根法を用いた深層平衡(DEQ)ニューラルネットワークモデルベースの固定小数点解を用いたフロー推定に関する。
【0002】
発明の背景
ニューラルネットワークは、機械学習のサブセットであり、深層学習アルゴリズムの中心である。ニューラルネットワークは、入力層、1つ以上の隠れ層および出力層を含む、ノード層を有する。各ノードは、別のノードに接続し、関連する重みおよび閾値を有する。任意の個々のノードの出力が閾値を上回る場合、そのノードは活性化され、ネットワークの次の層にデータを送信する。
【0003】
最近の開発は、ニューラルネットワークの陰的層において行われている。陰的層の基本は、入力から層の出力をどのように計算するかを指定する代わりに、層の出力が満たすべき条件を指定することである。
【0004】
陰的層モデルの1つのクラスは、深層平衡(DEQ)モデルである。DEQモデリングは、何らかの反復手順の固定小数点を見出す層を指定することを含む。マルチスケール深層平衡モデル(MDEQ)は、中間状態の記憶を回避するために陰的微分を使用して、複数の特徴解像度の平衡点を同時に直接に解き、これを通して逆伝播する。
【0005】
発明の概要
一実施形態によれば、機械学習(ML)システムのためのコンピュータ実装方法は、センサから第1の画像フレームおよび第2の画像フレームを受信することであって、第1の画像フレームおよび第2の画像フレームは時系列データである、ことと、第1の画像フレームの第1のフロー状態および第1の潜在状態を判定することと、第1のフロー状態、第1の潜在状態および層関数に基づいて、求根法を用いて深層平衡モデル(DEQ)ベースの固定小数点解を求め、推定フロー状態および推定潜在状態を取得することと、第3の画像フレームを受信することであって、第2の画像フレームおよび第3の画像フレームは時系列データである、ことと、推定フロー状態、推定潜在状態および層関数に基づいて、求根法を用いて固定小数点解を求め、更新フロー状態および更新潜在状態を取得することと、更新フロー状態を出力することと、を含む。
【0006】
別の実施形態によれば、トレーニング可能な機能を含むシステムは、トレーニング可能な機能のための入力データにアクセスするための入力インタフェースと、入力インタフェースと通信するプロセッサとを含む。プロセッサは、入力インタフェースと電気的に結合されたセンサから、第1の画像フレームおよび第2の画像フレームを受信することであって、第1の画像フレームおよび第2の画像フレームは時系列データである、ことと、第1の画像フレームの第1のフロー状態および第1の潜在状態を判定することと、第1のフロー状態、第1の潜在状態および層関数に基づいて、求根法を用いて固定小数点解を求め、推定フロー状態および推定潜在状態を取得することと、第3の画像フレームを受信することであって、第2の画像フレームおよび第3の画像フレームは時系列データである、ことと、推定フロー状態、推定潜在状態および層関数に基づいて、求根法を用いて固定小数点解を求め、更新フロー状態および更新潜在状態を取得することと、更新フロー状態に基づいてシステムを制御することと、を行うようにプログラムされている。
【0007】
別の実施形態によれば、非一時的コンピュータ可読媒体は、1つ以上のコンピューティングデバイスによって実行される際に、1つ以上のコンピューティングデバイスに、センサから第1の画像フレームおよび第2の画像フレームを受信することであって、第1の画像フレームおよび第2の画像フレームは時系列データである、ことと、第1の画像フレームの第1のフロー状態および第1の潜在状態を判定することと、第1のフロー状態、第1の潜在状態および層関数に基づいて、求根法を用いて深層平衡モデル(DEQ)ベースの固定小数点解を求め、推定フロー状態および推定潜在状態を取得することと、第3の画像フレームを受信することであって、第2の画像フレームおよび第3の画像フレームは時系列データである、ことと、推定フロー状態、推定潜在状態および層関数に基づいて、求根法を用いて固定小数点解を求め、更新フロー状態および更新潜在状態を取得することと、更新フロー状態を出力することと、を含む動作を実行させるための命令を含む。
【図面の簡単な説明】
【0008】
【
図1】一実施形態による、ニューラルネットワークをトレーニングするためのシステムを示す図である。
【
図2】一実施形態による、ニューラルネットワークをトレーニングおよび利用するためのコンピュータ実装方法を示す図である。
【
図3A】一実施形態による、深層平衡モデル(DEQ)などの機械学習システムにおける求根法を用いた固定小数点解のためのグラフィカルフロー図である。
【
図3B】一実施形態による、深層平衡モデル(DEQ)などの機械学習システムにおける求根法を用いた固定小数点解の別のグラフィカルフロー図である。
【
図4A】反復に関するSintelビデオの50フレーム上のDEQおよびリカレントフロー推定器の順方向収束の比較のグラフ表現の図である。
【
図4B】異なるモデルに関するトレーニングメモリおよび推論時間のグラフ表現の図である。
【
図4C】アンダーソンソルバを使用したトレーニングDEQの頻度に対する平均エンドポイント誤差(AEPE)および収束安定性のグラフ表現の図である。
【
図4D】アンダーソンソルバを使用したトレーニングDEQの頻度に対する平均エンドポイント誤差(AEPE)および収束安定性のグラフ表現の図である。
【
図4E】ブロイデンソルバを使用したトレーニングDEQについての頻度に対する平均エンドポイント誤差(AEPE)および収束安定性のグラフ表現の図である。
【
図4F】ブロイデンソルバを使用したトレーニングDEQについての頻度に対する平均エンドポイント誤差(AEPE)および収束安定性のグラフ表現の図である。
【
図5】一実施形態による、コンピュータ制御される機械と制御システムとの間の相互作用の概略図である。
【
図6】一実施形態による、部分的自律車両、完全自律車両、部分的自律ロボット、または完全自律ロボットでありうる、車両を制御するように構成された
図5の制御システムの概略図を示す図である。
【
図7】生産ラインの一部などの製造システムのパンチカッタ、カッタまたはガンドリルなどの製造機械を制御するように構成された
図5の制御システムの概略図である。
【
図8】少なくとも部分的に自律モードを有する電動ドリルまたはドライバなどの電動工具を制御するように構成された
図5の制御システムの概略図である。
【
図9】自動パーソナルアシスタントを制御するように構成された
図5の制御システムの概略図である。
【
図10】制御アクセスシステムまたはサーベイランスシステムなどの監視システムを制御するように構成された
図5の制御システムの概略図である。
【
図11】撮像システム、例えば、MRI装置、X線撮像装置、または超音波装置を制御するように構成された
図5の制御システムの概略図である。
【0009】
詳細な説明
本開示の実施形態を本明細書において説明する。しかしながら、開示する実施形態は単なる例であり、他の実施形態は種々の代替形態を取ることができることを理解されたい。図面は、必ずしも一定の縮尺で描かれてはおらず、幾つかの特徴につき特定の構成要素の詳細を示すために誇張または最小化したところがある。したがって、本明細書に開示する特定の構造的かつ機能的詳細は、限定としてではなく、単に、実施形態を様々に採用するように当業者に教示するための代表的な基礎として解釈されるべきである。当業者が理解するように、図のうちのいずれか1つを参照して図示および説明される種々の特徴は、1つ以上の他の図に図示される特徴と組み合わされて明示的に図示または説明されない実施形態をもたらすことができる。図示された特徴の組み合わせは、典型的な用途のための代表的な実施形態を提供する。なお、本開示の教示と一致する特徴の種々の組み合わせおよび修正が、特定の用途または実装のために所望されうる。
【0010】
「実質的に」なる用語は、本明細書では、開示または特許請求される実施形態を説明するために使用されうる。「実質的に」なる用語により、本開示において開示または特許請求される値または相対的な特性を修正することができる。当該例では、「実質的に」は、この語が修飾する値または相対的特性が、値または相対的特性の±0%、0.1%、0.5%、1%、2%、3%、4%、5%、または10%以内で変化しうることを意味しうる。
【0011】
センサなる用語は、物理的特性を検出または測定し、記録し、示し、または別の形式でこれに応答するデバイスを指す。センサなる用語は、光学、光、撮像、または光子センサ(例えば、電荷結合素子(CCD)、CMOSアクティブピクセルセンサ(APS)、赤外線センサ(IR)、CMOSセンサ)、音響、音、または振動センサ(例えば、マイクロフォン、ジオフォン、ハイドロフォン)、自動車センサ(例えば、車輪速度、駐車、レーダー、酸素、死角、トルク、LiDAR)、化学センサ(例えば、イオン感応性電界効果トランジスタ(ISFET)、酸素、二酸化炭素、ケミレジスタ、ホログラフィックセンサ)、電流、電位、磁気、または無線周波数センサ(例えば、ホール効果、磁力計、磁気抵抗、ファラデーカップ、検流計)、環境、気象、水分、または湿度センサ(例えば、気象レーダー、アクチノメータ)、フロー、または流体速度センサ(例えば、質量空気フローセンサ、風速計)、電離放射線、または素粒子センサ(例えば、電離箱、ガイガーカウンタ、中性子検出器)、ナビゲーションセンサ(例えば、全地球測位システム(GPS)センサ、磁気流体力学(MHD)センサ)、位置、角度、変位、距離、速度、または加速度センサ(例えば、LiDAR、加速度計、超広帯域レーダー、圧電センサ)、力、密度、またはレベルセンサ(例えば、歪みゲージ、核密度ゲージ)、サーマル、熱、または温度センサ(例えば、赤外線温度計、高温計、熱電対、サーミスタ、マイクロ波放射計)、またはその目的が物理的特性を検出または測定し、これを記録、指示、または別の形式でこれに応答することである、他のデバイス、モジュール、機械、またはサブシステムを含む。
【0012】
具体的には、センサは、時系列信号の特性を測定することができ、空間内の位置などの空間的または時空的な態様を含むことができる。信号は、電気機械、音、光、電磁気、RF、または他の時系列データを含みうる。また、本出願に開示する技術は、他のセンサ、例えば、無線電磁波用のアンテナ、音声用のマイクなどを用いた時系列撮像にも適用することができる。
【0013】
画像なる用語は、対象物(例えば、物理的物体、シーン、または特性)に類似し、したがって、その描写を提供する、写真または他の2次元ピクチャなどの物理的特性(例えば、可聴音、可視光、赤外光、超音波、水中音響)の知覚を示す表現またはアーチファクトを指す。画像は、時間、空間、強度、濃度、または他の特性の成分を含みうるという点で、多次元でありうる。例えば、画像は時系列画像を含みうる。この技術は、3D音響源または物体を撮像するように拡張することもできる。
【0014】
本明細書で説明される方法およびシステムは、DEQとも称される、深層平衡(DEQ)機械学習モデルにおける推論のための新しいソルバを導入する。DEQは最近非常に活発な研究分野である。本開示は、陰的深層学習層の例であり、出力を受信するために評価されうる明示的表現を伴う単純関数としての層の代わりに、陰的層は、層の出力が満たす必要がある幾つかの分析条件を提供する。DEQは、従来のネットワークアーキテクチャと同等の性能を提供する一方で、著しくメモリ効率が高いことが示されている。しかし、その反面、推論速度が遅くなることが多く、DEQの推論を高速化しようとすると、モデルの精度が犠牲になる(ソルバが早期に停止するなど)ことがあった。本開示で導入されるニューラルソルバを使用すると、モデルの性能に実質的な影響を与えることなく、推論速度を実質的に向上させることができる。具体的には、本明細書に開示するソルバは、アンダーソン加速の学習可能な形態を汎化し、エンドツーエンドでトレーニングすることのできる方法において、最適化の初期値の推測と反復更新の実行の両方に、パラメータ化ネットワークを使用する。これらのモデルにおける推論は、異なる入力に対して同じ非線形層の固定小数点を繰り返し解く必要があり、これは、本明細書で説明されるソルバを使用して本明細書で説明されるネットワークを用いて良好に実行されるため、当該解決策は、陰的モデル設定に特によく適している。
【0015】
多くの最近の最先端(SOTA:state-of-the-art)のオプティカルフローモデルは、安定したフロー推定に向けて反復精緻化を促進することで、従来のアルゴリズムをエミュレートするために有限ステップのリカレント更新演算を使用している。しかしながら、これらのRNNは、大きな計算およびメモリオーバーヘッドを課し、当該「安定推定」をモデル化するように直接にトレーニングされてはおらず、代わりに、バックプロパゲーションスルータイム(BPTT:backpropagation-through-time)を使用している。当該RNNは収束が不十分となることがあり、このため性能劣化を受けることがある。これらの欠点に対処するために、本出願は、深層平衡(DEQ:deep equilibrium)フロー推定器、すなわち、(例えば、ブラックボックスソルバを介して)陰的層の固定小数点としてフローについて直接に解き、この固定小数点を用いて分析的に微分し、これにより0(1)のトレーニングメモリを必要とするアプローチを開示する。この陰的深度アプローチは、いかなる特定のモデルにも基づくものではないため、広範囲のSOTAフロー推定モデル設計(例えば、リカレント全ペアフィールド変換(RAFT:recurrent all-pairs field transform)およびグローバルモーションアグリゲーション(GMA:global motion aggregation))に適用することができる。これらの陰的DEQの使用は、例えば、固定小数点再使用および不正確勾配を使用して、フローをより速く計算することを可能にする。これはまた、リカレント対応物よりも少ない4分の1~6分の1のトレーニングメモリを消費し、同じ計算予算でより良好な結果を達成する。加えて、本出願は、DEQフロー推定器を安定させるためのスパース固定小数点補正方式を開示し、これにより一般的なDEQモデルに対する長年の課題に対処するものである。これらは、種々の現実的な設定で検証され、実質的により良好な計算およびメモリ効率性を有するSintelおよびKITTIデータセットに対するSOTA方法の改善を示している。
【0016】
オプティカルフロー推定は、ビデオフレーム間の見かけのピクセルレベルの動きを予測する古典的なコンピュータビジョンのタスクである。この問題に対する学習ベースのアプローチは、古典的なアプローチよりも優れた性能を有するものであり、フロー推定値を学習するために従来の深層畳み込みネットワークを使用することが提案されている。最近の進歩は、RAFT法の出現によって示されているように、有限ステップのアンロールでリカレントな更新演算により推定性能が著しく改善することを示している。このアプローチを採用した現代のオプティカルフローモデルは、通常、オプティカルフロー推定値を反復精緻化するためにゲート付きリカレントユニット(GRU:Gated Recurrent Unit)に依存している。このアプローチは、従来の最適化ベースの方法をエミュレートするために動機付けされたものであり、これに応じて定義される更新演算子は、最先端のフローモデルのための標準的な設計となっている。
【0017】
優れた性能にもかかわらず、これらのロールアウトされたリカレントネットワークには複数の欠点がある。第1に、これらのモデルをトレーニングすることは、バックプロパゲーションスルータイム(BPTT)アルゴリズムにおいて長い隠れ状態履歴を追跡することを伴い、これは、著しい計算負荷およびメモリ負荷をもたらす。したがって、これらのモデルは、より大きな画像およびより多くの反復に対してスケールが小さくなる傾向がある。第2に、これらのモデルは、必要なだけ多くのステップで「安定推定」を解く従来の最適化アプローチをエミュレートするように設計されているが、リカレントネットワークは、当該最小エネルギ最適状態を直接にモデル化するものではない。むしろ、これらは、予め定義されたL個の更新ステップの後に停止し、BPTTを用いた経路依存の方法で依然としてトレーニングされている。
【0018】
本出願では、従来のネットワークのように層を重ねるのではなく、DEQモデルが入力
【数1】
を使用して単一層f
θの固定小数点として出力を定義する。したがって、これらのネットワークは、「無限層」平衡表現を(直感的に)モデル化するものである。さらに、バックワードパスでは、これらのDEQモデルは、順方向計算中に中間状態を記憶する必要なしに、最終固定小数点z
*を用いて直接に微分することができる。したがって、これらの陰的モデルは、トレーニング中に0(1)メモリのみを消費しながら、固定小数点解への任意の経路を自由に取ることができるブラックボックスの1次ソルバをフォワードパスで使用することができる。なお、このf
θは、任意の特定のモデル設計を使用することを前提とせず、トランスフォーマーモデルと同等の結果を達成しながら、言語モデリングおよびセマンティックセグメンテーションを含む大規模タスクにDEQフレームワークを適用することができる。
【0019】
ここで、既存のリカレントなアンロールベースのフロー推定方法を置き換えるための優れた自然なフレームワークとして、深層平衡(DEQ)フロー推定器を提示する。このアプローチが好ましい理由は複数ある。第1に、単純な反復層スタッキングに頼るのではなく、これは、従来の最適化ベースのパースペクティブにはるかに多く一致する趣旨で、特殊化ブラックボックス方法(例えば、準ニュートン法)を使用して固定小数点について直接に解くことができる。このアプローチを使用することは、安定したフロー推定プロセスを促進する一方で、しばしばより良好な結果をもたらす。第2に、もはやBPTTを実行する必要がない。代わりに、これは、固定小数点
【数2】
自体を用いて直接に微分を行うことができ、トレーニングメモリコストを大幅に低下させる。第3に、この固定小数点の定式化は、1)隣接するビデオフレームからの固定小数点再使用、および2)不正確勾配など、多数の陰的ネットワーク拡張を正しいと確認する。前者は、冗長な計算を回避するのに役立つため、フロー推定を実質的に加速し、後者は、バックワードパスの計算量が少なくなる。第4に、DEQアプローチは、f
θのいかなる特定の構造にも基づいていない。したがって、DEQは、これらのSOTAフロー推定モデル設計(例えば、RAFT、GMA、Depthstillationなど)の広い範囲に適用され、前述の計算およびメモリの利点を得ることができ、f
θの特定の構造に基づくさらなる利点を得ることができるフレームワークである。
【0020】
DEQフロー推定器を既存のリカレントアプローチに対する優れた代替手段として提案することに加えて、これは、DEQネットワークをトレーニングすることの長年の不安定性の課題にも対処している。RAFTモデルから着想を得たこのスパース固定小数点補正スキームは、DEQフロー推定器を実質的に安定化させることができる。
【0021】
第1に、深層平衡(DEQ)アプローチは、オプティカルフロー法を定式化するための新しい自然な出発点である。DEQアプローチは、フロー推定プロセスの固定小数点収束を直接にモデル化し、実質的に加速し、ビデオフレーム間の冗長な計算を回避し、ほぼフリーのバックワードパスが付属している。第2に、DEQアプローチは、先行するモデリング取り組み(モデル設計と特徴抽出に重点を置く)およびデータ関連の取り組みと直交しており、互換性がある。DEQの導入により、これらの先行モデル設計は、より計算量が大きく、メモリ効率が高くなり、精度も向上している。例えば、KITTI-15(トレーニング)では、ゼロショットDEQベースのRAFTモデルは、同じ基礎となるRAFTモデルを使用した場合と比較して、最先端のF1-all値を12.9%さらに低減する。第3に、オプティカルフロー問題におけるDEQモデルは、最小限のコストを追加するだけで大幅に安定化させるスパース固定小数点補正スキームを提示し、このアプローチを用いたフロー推定タスクが、最近提案されているヤコビアンベースの正則化よりも優れていることを示している。
【0022】
反復オプティカルフロー(Iterative Optical Flow):オプティカルフローは古典的な問題であるが、最近、この分野で大きな実質的な進歩があった。以前の方法は、オプティカルフロー予測を、異なる目的項を有する連続最適化を使用するエネルギ最小化問題として定式化していた。この観点から、オプティカルフローをモデル化するために離散的最適化を使用した複数の改良(例えば、条件付きランダムフィールド、グローバル最適化、およびグローバル4Dコストボリュームに対する推論に基づくもの)が行われた。より最近では、深層学習方法の進歩に伴い、深層ニューラルネットワークを用いてこれらの最適化ステップをエミュレートしようとする取り組みが爆発的に行われている。例えば、粗から密へのピラミッドに依存する深層アーキテクチャに基づく多くのオプティカルフロー方法が存在している。具体的には、最近の研究の取り組みは、典型的には複数の直接のフロー予測モジュールを積み重ねることを含む反復精緻化に向けられている。この研究のきっかけとなったRAFTモデルは、安定したフロー推定値に収束する傾向がある従来のオプティマイザの挙動を模倣する相関行列および畳み込みGRU更新演算子を使用して、オプティカルフロータスクに対して最先端の性能を達成することができることを最初に示した。RAFTのこのリカレントなアンロールフレームワークの上に構築されて、リカレント段階の前に追加の自己注意型グローバルモーションアグリゲーション(GMA)モジュールを導入して、オクルージョンのモデリングを改善した。最近の別の研究であるAutoFlowは、オプティカルフローのためのトレーニングデータを自動的にレンダリングし、増補するために2レベル最適化を利用している。最後に、密な相関ボリュームを疎な代替手段と置き換えることによって、これらのフロー推定器はより迅速となりうる。
【0023】
これらのモデリングの取り組みに対して概ね直交する(したがって相補的な)方向である。トレーニングフロー推定器自体の「デフォルト」のリカレントなアンロールの定式化が改善される。これにより、実質的により少ない計算およびメモリコストを費やしながら、同じ収束フロー推定の定式化が維持される。
【0024】
陰的深層学習:従来のネットワークのような予め規定された計算グラフまたは階層的な層スタッキングを有しない、新しいクラスの深層学習アーキテクチャを提案することを考える。代わりに、これらの陰的ネットワークの出力は、典型的には、基礎となる動的システムの解であると定義される。例えば、ニューラルODEは、残差ブロックの無限小ステップをODEフローとしてモデル化する。深層平衡(DEQ)ネットワークは、浅い層fθ(例えば、トランスフォーマーブロック)の固定小数点表現を直接に解き、フォワードパスにおいて中間ステップを記憶することなくこの固定小数点を用いて微分する別のクラスの陰的モデルである。これにより、トレーニングのフォワードパスとバックワードパスを完全に分離しながら、一定のメモリを有する陰的ネットワークをトレーニングすることが可能になる。しかしながら、これらの陰的モデルは、計算の非効率性、不安定性、および理論的な収束保証の欠如など、複数の深刻な問題を抱えていることが後続の研究によって知られている。肯定的な意見として、後続の研究により、DEQベースのモデルが、言語モデリング、生成モデリング、セマンティックセグメンテーションなどの困難なタスクに対して競争力のある結果を達成することができることも示されている。本出願は、このタスクが平衡モデルの定式化からも実質的に利益を得ることができることを示している。
【0025】
方法:最初に、既存のフロー推定器の幾つかのモデル化準備を導入することによって開始する。これらのモジュールは、典型的には、未加工の画像ペアに直接に適用され、抽出された表現は、次いで、反復精緻化段に渡される。ここでは、例示的な例としてRAFTモデルを使用するが、最先端のフロー推定器は、概して、(すなわち、コンテキスト抽出および視覚相関計算のために)同様の構造を共有することに留意されたい。
【0026】
RGB画像ペア
【数3】
が与えられると、オプティカルフロー推定器は、水平(dx)方向および垂直(dy)方向における連続するフレーム間のピクセルごとの動きを記述する、2つの座標グリッド
【数4】
間の対応関係
【数5】
を学習することを目的とする。一致した画像ペアを処理するために、これは、まず、特徴
【数6】
を符号化し、第1の画像
【数7】
からコンテキスト埋め込み
【数8】
を生成する。次に、ピラミッドグローバル相互関係テンソルC={C
0,…,C
p-1}のグループが構築され、ここで、
【数9】
は、
【数10】
におけるハイパーピクセルの全てのペアの間の内積をC
0として最初に計算することによって見出され、すなわち、
【数11】
である。その後、最後の2つの次元をダウンサンプリングして、C
k(k>0)を生成する。相関ピラミッドCおよびコンテキスト埋め込み
【数12】
は、モデルがグローバルな意味で大きな動きおよび変位を推測することを可能にし、次いで、反復精緻化段への入力として渡される。
【0027】
ここで、相関およびコンテキスト計算部分はそのまま維持され(
図3Aを参照)、反復精緻化段への集中が得られる。
【0028】
DEQ:深層ニューラルネットワークは、i=0,1,2,…,Lに対してz
[i+1]=f(z
[i],θ
i,c(x))であり、重みθ
iおよび前の層の入力c(x)が両方とも層にわたって結合される、すなわち、θ
i=θ∀iであるように、隠れ層zおよび活性化fを用いて定義することができる。これらの活性化fのうちの一部は、アトラクタ特性を示すことがあり、すなわち、z
*=f(z
*,θ,c(x))かつ
【数13】
であるような固定小数点z
*が存在する。すなわち、初期活性化z
[0]に対してfを繰り返し適用すると、固定小数点z
*に収束する。この場合、反復される関数の適用は、固定小数点を直接に見出すための数値的方法によって等価的に置き換えられうる。これにより、問題は、複数の層に対するフォワードパスおよびバックワードパスを計算することから、数値的方法を用いて固定小数点を直接に計算し最適化することに移行する。このアプローチは、深層平衡モデル(DEQ)と称されることがある。
【0029】
深層平衡モデルについては、層/ブロックfθ(複数の浅い部分層を含みうる)と入力xが与えられたとき、深層平衡モデルは、その固定小数点表現
z*=fθ(z*;x)
を直接に解くことによって、z[i+1]=fθ(z[i];x)(ここでi=1;...;L、L→∞)という形の「無限レベル」層スタッキングを近似することを目的とする。
【0030】
当該固定小数点の定式化の魅力的な特性の1つは、フォワードパスにおけるいかなる中間活性化にも依存することなく、平衡特徴を用いて陰的に微分できることである。形式的には、損失
【数14】
が与えられると、最終出力
【数15】
を使用して勾配を直接に計算することができる。ここで、
【数16】
は、平衡z
*におけるヤコビ行列である。平衡を解くために、ブロイデン法を使用して、f
θ(z
*;x)-z
*=0の根を見出すことができる。後続の研究では、ピースマン-ラッフォード分割およびアンダーソン加速などの他のアルゴリズムが適用されている。
【0031】
DEQフロー推定器:フロー推定タスクには固有の課題があるため、先行の研究では、明示的ニューラルネットワークがフローの正確な予測に苦労し、法外な数のトレーニング反復を必要とすることが示されている。1つの解決策は、RNN(例えば、convGRU)を用いて従来の最適ベースのアルゴリズムの特色の模倣に頼ることである。しかしながら、これらの方法は、依然として、複数の点で従来の方法とは全く異なっている。例えば、最適化ベースの方法は、1)適応的かつ明確に定義された停止基準を(例えば、これらが最適に到達するときはいつでも)有し、2)ソルバの選択(例えば、1次法または2次法)にとらわれず、3)本質的に経路に依存しない(すなわち、出力のみが、必要とすべき唯一のものである)。これらの特性のいずれも、リカレントネットワークをアンロールする有限ステップによって直接的に特徴付けられるものではない。
【0032】
このギャップを埋めるために、DEQベースのアプローチを開示する。具体的には、コンテキスト埋め込み
【数17】
およびピラミッド相関テンソルCが与えられると、DEQフロー推定器は、2つのストリーム、すなわち、1)フロー更新を構築する潜在表現
【数18】
と、2)フロー推定値
【数19】
自体との固定小数点収束を同時に解き、その更新は、一般的に、
【数20】
のように関連している。この定式化は、RAFTまたはGMAのような顕著なフロー推定器モデル設計の形態を捕捉する。形式的に、入力
【数21】
およびモデルパラメータf
θ=(H,F)は、DEQフローモデルが、そのフォワードパスにおいて以下のフロー更新方程式を使用して固定小数点を直接に解くことができる動的システムを共同で定義する。すなわち、
【数22】
である。
【0033】
直感的に、これは、「無限深度」特徴表現
【数23】
に対応し、ここで、システムがもう1つのフロー更新ステップf
θを実行する場合、フロー推定
【数24】
および潜在状態
【数25】
の両方は変化しない(したがって、固定小数点、すなわち「平衡」に達する)。重要なことに、準ニュートン法(例えば、ブロイデン法またはアンダーソン混合)のようなはるかに高度な根の解法を活用することによって、固定小数点を見出すことができる。これらの方法は、無限に多くの単純なアンロールステップを実行した場合(リカレントネットワークと同様であるが、計算およびメモリ制約のために有限数のステップまでしか実行しない)よりも、はるかに高速(超線形)でより良好な品質の収束を保証する。さらに、陰的ネットワークに関する研究により、f
θの正確な構造が、トランスフォーマーブロック、残差ブロック、またはグラフ層などの多種多様なモデル設計を包含することが示されていることに留意されたい。同様に、深層平衡フロー推定器については、式(2)はオプティカルフローモデルを巻き込んでいる。例えば、RAFTの場合、
【数26】
であり、ここで、
【数27】
は、RAFTにおけるような相関ルックアップを表す。なお、GMAも同様の更新形式で記述することができる。
【0034】
重要な問題は、DEQフロー推定器をどのように更新し、トレーニングするかである。前方固定小数点軌道の知識なしに、固定小数点フロー状態
【数28】
を用いて直接に区別できることがわかる。すなわち、
定理1。(陰関数定理(IFT))固定小数点フロー表現
【数29】
と、対応するフロー損失
【数30】
と、入力
【数31】
とが与えられると、DEQフローの勾配は、
【数32】
によって与えられる。重要なことに、この定理は、DEQフロー推定器のフォワードパスとバックワードパスとを分離することを可能にする(すなわち、勾配更新を実行するために、最終出力
【数33】
のみを必要とし、バックプロパゲーションスルータイム(BPTT)を実行する必要はない)。これは、膨大なメモリ削減を意味しており、Lステップリカレントフロー推定器は、BPTTを実行するために0(L)のメモリを必要とするが、DEQ推定器は、このオーバーヘッドをL分の1に削減して0(1)にする(例えば、RAFTは、モデルをトレーニングするためにL=12を使用し、したがって、DEQフローを使用すると、反復精緻化メモリコストを理論的に12分の1に削減することができる)。
【0035】
要約すると、DEQフローのフォワードパスは、ブラックボックスソルバを用いて固定小数点フロー更新方程式を直接に解き、そのバックワードパスは、最終的な最適値
【数34】
のみに依存し、これにより、このフロー推定プロセスは、最適化ベースのパースペクティブにより類似したものになる。
【0036】
加速DEQフロー:オプティカルフロー推定を深層平衡解として定式化することにより、RNNに基づく従来の方法では正しいことが確認できない陰的深層学習からツールキットを完全に利用することも可能になる。以下に例を挙げて詳しく説明すると、この平衡定式化は、フォワードおよびバックワードパイプラインの改善に有意に役立ち、最新のフロー推定器の全体的なオーバーヘッドを著しく簡素化することができる。
【0037】
DEQをトレーニングするための不正確勾配。陰関数定理(IFT)の正しさにも関わらず、ヤコビ項を反転させることは、高次元特徴マップを扱う上ですぐに困難となる可能性がある。これを克服するために、高速ベクトルヤコビ積を利用し、線形固定小数点システム
【数35】
を反復的に解くことが採用されている。しかし、このアプローチは、依然として本質的に反復的であり、実際には、フォワードフロー解法プロセスよりも安価ではない。
【0038】
これらの陰的ネットワークのバックワードダイナミクスは、IFTの単純で不正確な近似を通常はトレーニングし、その恩恵を受けることができる一方で、固定小数点フォワードパスによって「無限深度」表現をモデル化できることを示唆している。すなわち、これらのネットワークをトレーニングするための式(1)の厳密解は必要ない。代わりに
【数36】
が用いられ、ここで、Aはヤコビ(逆)近似項である。代替手段として、A=I(すなわち、ヤコビアンフリー)を使用し、これは、DEQフロー推定器のバックワードパスを単一ステップ計算
【数37】
に単純化する。したがって、既存のフロー推定器によって使用されるBPTTベースのリカレントフレームワークとは異なり、不正確勾配を用いたDEQフロー推定器のバックワードパスは、単一のステップから構成されている(したがって、ほぼフリーである)。経験的に、バックワードパスコストをほぼなくすことによって、不正確勾配は、DEQフロー推定器のための総トレーニング時間をさらにほぼ2分の1に低減する。不正確勾配を使用する能力は、固定小数点の定式化の直接的かつ固有の結果であり、基礎となるダイナミクスに対して一定レベルで安定していることを前提としていることに留意されたい。本発明者らの経験上、DEQフローは概して安定であることが示唆されている。次に、これらの推定値の安定性をさらに改善する追加のアプローチについて論じる。
【0039】
DEQフローのスパース固定小数点補正。陰的ネットワークをトレーニングする際の長年の課題は、不安定性の増大という問題である。要するに、DEQオプティカルフロー推定器は、離散層(またはステップ)を有さないため、トレーニング中に収束するのに苦労するのである。換言すれば、安定したフロー推定値
【数38】
は、到達するのに計算量が多くなる可能性がある。これは、オプティカルフロー推定プロセスが遅くなることを示唆している。
【0040】
本研究では、一実施形態は、DEQフロー収束を安定させるために固定小数点補正項を疎に適用している。正式には、ブラックボックスソルバ(例えば、ブロイデン法)が収束経路
【数39】
をもたらすと仮定する。ここで、
【数40】
は初期推測であり、
【数41】
は最終フロー推定値である。次いで、この経路上で
【数42】
をランダムに選び(例えば、一様に離間されることができる)、本発明者らの総損失を
【数43】
と定義し、ここで、γ<1は損失重みハイパーパラメータである。これは、RAFTのような従来のフロー推定器によって使用される密な段階的深層監視によって着想されたが、この適用は、2つの重要な点で異なる。第1に、不安定性を修正することを第一の目的とし、きわめて疎な方法で適用していることである。第2に、RNNチェーンを通じてコストの高い当該BPTTを実行するRAFTとは異なり、この固定小数点補正損失は依然として経路に依存せず、粗視化された固定小数点推定として理解することができる。したがって、この補正損失に対する不正確勾配更新も同様に実行することができ、すなわち
【数44】
となる。
【0041】
経験的に、これは、DEQフロー推定器を著しく安定させると同時に、性能に顕著な悪影響を及ぼさない。この結果は、ヤコビアン正則化のような既存の安定化方法とは著しく対照的であり、1)
【数45】
に局所的にのみ適用され、2)通常、モデル精度を低下させる。さらに、式(8)における不正確勾配のため、この方法は、余分な計算またはメモリコストをほとんど追加しない。
【0042】
ここでは範囲はフロー推定に限定されうるが、このアプローチは陰的モデルの一般的な不安定性の問題に対する貴重かつ軽量な解決策となる可能性を示唆している。
【0043】
より良好な初期化のための固定小数点再使用:DEQフロー推定器の固有の定式化はまた、一般的な最適化フレームワークから多くの有用な特性を継承している。これらの優れた特性の1つは、フロー推定収束をさらに加速するために固定小数点再使用を実行する能力である。これに対する動機は、ビデオの連続するフレームが典型的には高度に相関しているという事実に由来している。例えば、前景で動いているオブジェクトは数個だけで、他のコンテンツおよび背景のほとんどは、これらの隣接するフレーム間でほぼ同じである場合がある。より正式には、
【数46】
が3つの連続するビデオフレームである場合、グラウンドトゥルースオプティカルフロー
【数47】
は、通常、次のグラウンドトゥルースオプティカルフロー
【数48】
と強く相関する。したがって、FlowNetおよびRAFTのように、従来のネットワークを用いたリアルタイムフロー推定が実行された場合、多くの冗長な計算が頻繁に実行される。対照的に、DEQフローでは、これは、後続のフレームの固定小数点ソルバのための
【数49】
を推定する前のフレームの固定小数点解
【数50】
を再使用することができる。直感的に、これらのDEQフローは、このより多くの情報を得た初期推測を利用することによって、これらの順方向最適化を自動的に調整することができ、これは収束速度を促進する。これは、フレーム0のみが完全な固定小数点解法を必要とし、残りのフレームは全てこれらの先行フレームのフローを再使用することができるため、長いビデオシーケンスにわたるフロー推定のコストを償却する。このような再使用は、RAFTのウォームアップ方式と関連しているが、
【数51】
にのみ適用され、
【数52】
を除外し、多くのステップでアンロールされなければならない点で依然として異なることに注意されたい。DEQフローは固定小数点を直接にモデル化するため、ビデオデータの誘導バイアスを利用することによる当該適応化計算は、十分に正しいとされる。
【0044】
図3Aは、Sintelビデオシーケンスにおける固定小数点再使用の実用性を示している。固定小数点を再使用することによって、DEQフロー推定器の推論速度を約1.6倍にさらに加速することができる。興味深いことに、RAFTの反復アンロールは反復収束を模倣することを目的とするが、その活性化は通常、約15回の更新反復後に比較的高いレベルで振動する。
【0045】
要約すると、RAFTのような従来のリカレントフロー推定器は、幾つかの有限のLステップに対してアンロールされ、同じLステップチェーンを通して逆伝播する必要があるが、深層平衡フロー推定器は、1)IFTを活用し、0(1)トレーニングメモリのみを必要とし、2)不正確勾配を使用して、0(1)計算へのバックワードパスを低減し、3)長いシーケンスにわたってフロー推定コストを償却し、フォワードパスコストが著しく加速されるので隣接フレーム間の相関性を利用できる。
【0046】
本節で実験の結果について論じる。具体的には、DEQフロー推定器の計算およびメモリ効率の要点と、固定少数点補正がDEQフローをどのように改善するかの分析とが説明される。この方法は、MPI SintelデータセットおよびKITTI2015データセットの両方に対して最先端のゼロショット性能を達成し、(RAFTと同様の計算予算を依然として使用しながら)KITTI-15に関してF1-allスコアの驚くべき12.9%の誤差低減およびEPEの6.6%の改善を伴うものである。
【0047】
定量的評価を表1に示している。まず、FlyingChairsおよびFlyingThingsの3Dデータセットに対してDEQフローモデルを事前トレーニングする。次いで、MPI SintelおよびKITTI2015データセットのトレーニングセットに対してモデルを試験する。このモデルは、「C+T」と表され、DEQフローモデルのゼロショット汎化を評価する。次いで、試験提出のために、MPI-Sintel、KITTI2015、およびHD1Kに対してDEQフロー推定器を微調整する。
【0048】
トレーニングされたモデルは、リカレント更新の代わりにDEQフロー定式化を使用することを除いて、RAFT(5.3M)およびGMA(5.9M)と正確に同じサイズであった。これらをそれぞれDEQ-RAFT-B、DEQ-GMA-Bと表記する。DEQフローモデルのメモリ効率を利用して、はるかに大きいモデルが、2つの11GB 2080Ti GPUの同じ計算予算に適合する。この目的のために、更新演算子内の隠れ層の幅を広げることで、DEQ-RAFT-L(8.4M)およびDEQRAFT-H(12.8M)をトレーニングすることができた。また、f
θ内のConvGRUを複製することによってDEQRAFT-D(9.4M)をトレーニングした。
図4Bに示されているように、最大のDEQ-RAFT-Hモデルであっても、標準サイズのRAFTモデルによって使用されるフロー推定メモリの半分未満しか消費せず、著しく良好な精度が達成される(KITTI-15の4.38AEPEおよび14.9F1-allスコア、表1を参照)。
【0049】
【0050】
FlyingChairsおよびFlyingThings3Dに対してトレーニングされたRAFTベースの更新演算子(式(4)を参照)を用いたSintel(クリーン)データセットに対するDEQフローモデルの前述の計算およびメモリの利点をさらに検証した。結果を
図4Bに示している。特に、GPU当たり3のバッチサイズ(RAFTが11GB GPUに適合しうる最大値)を有するSintelでDEQフロー推定器をトレーニングすると、フロー推定プロセスのメモリコストが4分の1以下に低減されることが観察された(赤色のバー)。なお、モデルの残りの部分(例えば、相関ピラミッドおよびコンテキスト抽出)はそのままであるため、DEQフロー推定器ではこれらの部分のメモリ負担は改善されず、今度はメモリオーバーヘッドの新たな主要源となる。加えて、モデルを推論のために使用する場合、RAFT(ウォームスタートを伴う)のための32回のリカレントステップ、およびDEQ-RAFT(再使用を伴う)のためのアンダーソンソルバの使用は、相対残差がε=10
-3を下回ると停止する。結果は、DEQフローが正確な解に収束し、実際には、同じ構造およびサイズを有するRAFTモデル(青色のバー)よりも約20%速いことを示唆している。最後に、当該速度およびメモリ節約の利用は、計算およびメモリ予算内に依然として十分に留まりながら、さらにより大きくより正確なフロー推定器(DEQRAFT-Huge)を構築するために使用されうることが示される。
【0051】
固定小数点補正によるDEQの安定化。上述したように、非正則化正準DEQモデル(およびニューラルODEのような他の陰的ネットワーク)は、一般的に、コストが次第に増大していく前方固定小数点解法プロセスによって典型的に示唆される、増大する不安定性に悩まされている。本発明者らが提案しているスパース固定小数点補正スキームがこの問題をどのように軽減できるかを研究するために、アブレーション実験を行った。スキームの効果を理解するために、それぞれ36回および24回の順方向反復でアンダーソンおよびブロイデンソルバの両方を使用してDEQフローモデルをトレーニングする。簡単にするために、ソルバ収束軌道をr+1個のセグメントに等しく分割し(ここで、rは
図4C~
図4Fにおける頻度である)、各軌道クリップの後に補正損失を課す。さらに、1ステップの不正確勾配を補正損失に適用する。
【0052】
3つの異なる設定でトレーニングされたDEQフローモデルの結果:1)補助補正損失なしで直接のIFTによってトレーニングされたDEQフロー、2)補助補正損失なしで不正確勾配によってトレーニングされたDEQフロー、および3)不正確勾配ならびに1~3の固定小数点補正項によってトレーニングされたDEQフロー。結果は、AEPE(性能を測定する)および絶対固定小数点残余誤差
【数53】
(安定性を測定する)に関して報告される。
図4C~
図4Fに示されているように、提案の固定小数点補正は、標準的なIFTトレーニングプロトコルよりも約9%大きく性能が優れており、例えば60%を超える顕著なマージンで固定小数点誤差を低減する。さらに、安定性におけるこの有意な改善は、>1の補正が適用されるにつれて急速に減少し、したがって、実際には、1つの補正項が通常使用される。不正確勾配とともに、総トレーニング時間は、45%を超えて合理化することができるが、DEQフローのバックワードパスは、依然としてほとんどフリーである。
【0053】
性能と収束との間の相関。潜在的な問題は、より良好な固定小数点収束がより良好な性能をもたらすことができるかどうかということである。これに取り組むために、KITTI-15トレーニングデータセットに対して標準的な「C+T」トレーニングプロトコルを使用してトレーニングされたDEQフローモデルを評価する。フレームごとのEPEと、絶対固定小数点誤差で測定した収束度を可視化し、フレーム全体のピクセルあたりのフローの平均ノルムで散布図を染色し、大きな変位による硬さの指標として理解することができる。固定小数点誤差とEPEとのピアソン相関係数は0.86超であり、収束がフロー性能と強い相関があることを裏付けている。
【0054】
本出願は、オプティカルフロー推定をモデル化するための新しいフレームワークを導入した。深層平衡(DEQ)フローは、固定小数点安定フロー推定値を直接にモデル化して解き、これらのフローモデルのトレーニングおよび推論プロセスを非常に効率的にするツールのセットを提供する(例えば、これらは、ほぼフリーのバックワードパスを享受する)。さらに、当該平衡定式化の使用は、従来のモデル化およびデータ関連の取り組みとほぼ直交しており、したがってこれを補完する。経験的に、DEQフロー推定器を(RAFTのような)これらのモデル設計と統合し、現実的なオプティカルフローデータセットに対してより良好な性能を達成することが可能であることが示された。
【0055】
当該陰的フレームワークは、ほとんどの最先端のフロー推定器によって使用される既存のリカレントでアンロールな更新演算子の強力な(ドロップイン)置換を提供する。DEQフローは、計算的にもメモリ的にも、より高性能で軽量である。将来、より効率的で大規模で正確なオプティカルフローモデルを構築するための刺激的な方向を示唆するものである。
【0056】
ここで、これらの教示を機械学習モデルまたはニューラルネットワークに適用可能な図示の実施形態を参照する。
図1は、ニューラルネットワークをトレーニングするためのシステム100を示している。システム100は、ニューラルネットワークのためのトレーニングデータ102にアクセスするための入力インタフェースを含みうる。例えば、
図1に示されているように、入力インタフェースは、データストレージ106からトレーニングデータ102にアクセス可能なデータストレージインタフェース104によって構成可能である。例えば、データストレージインタフェース104は、メモリインタフェースまたは永続ストレージインタフェース、例えば、ハードディスクまたはSSDインタフェースであってよいが、Bluetooth、Zigbee、もしくはWi-Fiインタフェース、またはイーサネットもしくは光ファイバインタフェースなどのパーソナル、ローカル、またはワイドエリアネットワークインタフェースであってよい。データストレージ106は、ハードドライブまたはSSDなどの、システム100の内部データストレージであってよいが、外部データストレージ、例えばネットワークアクセス可能なデータストレージであってもよい。
【0057】
幾つかの実施形態では、データストレージ106は、データストレージ106からシステム100によってアクセスされうるニューラルネットワークの未トレーニングバージョンのデータ表現108をさらに含みうる。しかしながら、未トレーニングのニューラルネットワークのトレーニングデータ102およびデータ表現108はまた、それぞれ、例えば、データストレージインタフェース104の異なるサブシステムを介して、異なるデータストレージからアクセスされうることが理解されるであろう。各サブシステムは、データストレージインタフェース104について上述したようなタイプのものであってよい。他の実施形態では、未トレーニングのニューラルネットワークのデータ表現108は、ニューラルネットワークの設計パラメータに基づいてシステム100によって内部的に生成されたものであってよく、したがって、データストレージ106に明示的に記憶されていなくてもよい。システム100は、システム100の動作中に、トレーニングされるニューラルネットワークの層のスタックの代わりとして反復関数を提供するように構成されうるプロセッササブシステム110をさらに含みうる。ここで、置換されている層のスタックのそれぞれの層は、相互に共有された重みを有することができ、入力として、前の層の出力、または層のスタックの第1の層について、初期活性化、および層のスタックの入力の一部を受信することができる。プロセッササブシステム110は、トレーニングデータ102を使用してニューラルネットワークを反復的にトレーニングするようにさらに構成することができる。ここで、プロセッササブシステム110によるトレーニングの反復は、順方向伝播部分および逆方向伝播部分を含みうる。プロセッササブシステム110は、実行されうる順方向伝播部分を定義する他の動作の中でも、とりわけ、反復関数が固定点に収束する反復関数の平衡点を決定することであって、ここで、平衡点を決定することは、数値求根アルゴリズムを使用して反復関数からその入力を引いたものの根解を見出すことを含む、ことと、ニューラルネットワーク内の層のスタックの出力の代用として平衡点を提供することとによって、順方向伝播部分を実行するように構成することができる。システム100は、トレーニング済みのニューラルネットワークのデータ表現112を出力するための出力インタフェースをさらに含むことができ、このデータは、トレーニング済みのモデルデータ112と称されることもある。例えば、
図1にも示されているように、出力インタフェースは、データストレージインタフェース104によって構成されていてよく、前記インタフェースは、これらの実施形態では入出力(「IO」)インタフェースであり、これを介して、トレーニング済みのモデルデータ112がデータストレージ106に記憶可能となる。例えば、「未トレーニングの」ニューラルネットワークを定義するデータ表現108は、ニューラルネットワークの重み、ハイパーパラメータおよび他のタイプのパラメータなどのニューラルネットワークのパラメータが、トレーニングデータ102に対してトレーニングを反映するように適応化されうるという点で、トレーニング中またはトレーニング後に、トレーニング済みのニューラルネットワークのデータ表現112によって少なくとも部分的に置き換えることができる。これはまた、
図1において、データストレージ106上の同じデータレコードを参照する参照番号108,112によって示されている。他の実施形態では、データ表現112は、「未トレーニングの」ニューラルネットワークを定義するデータ表現108とは別個に記憶することができる。幾つかの実施形態では、出力インタフェースは、データストレージインタフェース104とは別個であってもよいが、概して、データストレージインタフェース104について上記で説明したようなタイプのものであってよい。
【0058】
図2は、本明細書で説明されるDEQモデルおよび関連するソルバを実装するシステム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は、動作の種々の態様を管理するためのオペレーティングシステムを実装することができる。
【0059】
メモリユニット208は、命令およびデータを記憶するための揮発性メモリおよび不揮発性メモリを含みうる。不揮発性メモリは、NANDフラッシュメモリなどのソリッドステートメモリ、磁気および光学記憶媒体、またはコンピューティングシステム202が非活性化されるときもしくは電力を失うときにデータを保持する任意の他の好適なデータストレージデバイスを含みうる。揮発性メモリは、プログラム命令およびデータを記憶するスタティックおよびダイナミックランダムアクセスメモリ(RAM)を含みうる。例えば、メモリユニット208は、機械学習モデル210またはアルゴリズム、機械学習モデル210のためのトレーニングデータセット212、ローソースデータセット216を記憶することができる。
【0060】
コンピューティングシステム202は、外部システムおよびデバイスとの通信を提供するように構成されたネットワークインタフェースデバイス222を含みうる。例えば、ネットワークインタフェースデバイス222は、電気電子技術者協会(IEEE)802.11規格ファミリによって定義された有線および/または無線イーサネットインタフェースを含みうる。ネットワークインタフェースデバイス222は、セルラーネットワーク(例えば、3G、4G、5G)と通信するためのセルラー通信インタフェースを含みうる。ネットワークインタフェースデバイス222は、外部ネットワーク224またはクラウドへの通信インタフェースを提供するようにさらに構成されうる。
【0061】
外部ネットワーク224は、ワールドワイドウェブまたはインターネットと称されることがある。外部ネットワーク224は、コンピューティングデバイス間の標準通信プロトコルを確立することができる。外部ネットワーク224は、情報およびデータがコンピューティングデバイスとネットワークとの間で容易に交換されることを可能にしうる。1つ以上のサーバ330は、外部ネットワーク224と通信することができる。
【0062】
コンピューティングシステム202は、デジタルおよび/またはアナログ入力および出力を提供するように構成されうる入力/出力(I/O)インタフェース220を含みうる。I/Oインタフェース220は、外部デバイスと通信するための追加のシリアルインタフェース(例えば、ユニバーサルシリアルバス(USB)インタフェース)を含みうる。
【0063】
コンピューティングシステム202は、システム200が制御入力を受信することを可能にする任意のデバイスを含みうるヒューマンマシンインタフェース(HMI)デバイス218を含みうる。入力デバイスの例は、キーボード、マウス、タッチスクリーン、音声入力デバイス、および他の同様のデバイスなどのヒューマンインタフェース入力を含みうる。コンピューティングシステム202は、ディスプレイデバイス232を含みうる。コンピューティングシステム202は、グラフィックスおよびテキスト情報をディスプレイデバイス232に出力するためのハードウェアおよびソフトウェアを含みうる。ディスプレイデバイス232は、電子表示画面、プロジェクタ、プリンタ、またはユーザもしくはオペレータに情報を表示するための他の好適なデバイスを含みうる。コンピューティングシステム202は、ネットワークインタフェースデバイス222を介してリモートHMIおよびリモートディスプレイデバイスとの相互作用を可能にするようにさらに構成することができる。
【0064】
システム200は、1つまたは複数のコンピューティングシステムを使用して実装することができる。この例は、説明される特徴の全てを実装する単一のコンピューティングシステム202を示しているが、種々の特徴および機能を分離し、互いに通信する複数のコンピューティングユニットによって実装できることを意図している。選択される特定のシステムアーキテクチャは、種々の要因に依存しうる。
【0065】
システム200は、ローソースデータセット216を分析するように構成された機械学習アルゴリズム210を実装することができる。ローソースデータセット216は、機械学習システムの入力データセットを表すことができる未加工または未処理のセンサデータを含みうる。ローソースデータセット216は、ビデオ、ビデオセグメント、画像、テキストベースの情報、オーディオまたは人間のスピーチ、時系列データ(例えば、経時的な圧力センサ信号)、および未加工のまたは部分的に処理されたセンサデータ(例えば、オブジェクトのレーダーマップ)を含みうる。入力の幾つかの異なる例を、
図5~
図11を参照して示し、説明する。幾つかの例では、機械学習アルゴリズム210は、所定の機能を実行するように設計されたニューラルネットワークアルゴリズムでありうる。例えば、ニューラルネットワークアルゴリズムは、ビデオ画像中の歩行者を識別するために自動車用途において構成されてもよい。機械学習アルゴリズム210は、深層平衡(DEQ)モデルであってもよい。
【0066】
コンピュータシステム200は、機械学習アルゴリズム210のためのトレーニングデータセット212を記憶することができる。トレーニングデータセット212は、機械学習アルゴリズム210をトレーニングするために過去に構築されたデータのセットを表すことができる。トレーニングデータセット212は、ニューラルネットワークアルゴリズムに関連付けられた重み付け係数を学習するために、機械学習アルゴリズム210によって使用されうる。トレーニングデータセット212は、機械学習アルゴリズム210が学習プロセスを介して複製しようとする対応する成果または結果を有するソースデータのセットを含みうる。この例では、トレーニングデータセット212は、歩行者がいるソースビデオおよび歩行者がいないソースビデオ、ならびに対応する存在情報および位置情報を含みうる。ソースビデオは、歩行者が識別される種々のシナリオを含みうる。
【0067】
機械学習アルゴリズム210は、トレーニングデータセット212を入力として使用して学習モードで動作させることができる。機械学習アルゴリズム210は、トレーニングデータセット212からのデータを使用して、複数の反復にわたって実行させることができる。各反復で、機械学習アルゴリズム210は、達成された結果に基づいて内部重み係数を更新することができる。例えば、機械学習アルゴリズム210は、出力結果(例えば、画像データが入力である場合の再構成されたまたは補足された画像)をトレーニングデータセット212に含まれるものと比較することができる。トレーニングデータセット212には期待される結果が含まれているため、機械学習アルゴリズム210は、性能が許容可能である場合を判定することができる。機械学習アルゴリズム210が所定の性能レベル(例えば、トレーニングデータセット212に関連付けられた成果との100%一致)を達成した後、機械学習アルゴリズム210は、トレーニングデータセット212にないデータを使用して実行することができる。トレーニング済みの機械学習アルゴリズム210を新しいデータセットに適用して、注釈付きデータを生成することができる。
【0068】
機械学習アルゴリズム210は、ローソースデータ216内の特定の特徴を識別するように構成することができる。ローソースデータ216は、補足結果が所望される複数のインスタンスまたは入力データセットを含みうる。例えば、機械学習アルゴリズム210は、ビデオ画像内の歩行者の存在を識別し、発生に注釈を付けるように構成されてもよい。機械学習アルゴリズム210は、ローソースデータ216を処理して、特定の特徴の存在を識別するようにプログラムすることができる。機械学習アルゴリズム210は、ローソースデータ216内の特徴を所定の特徴(例えば、歩行者)として識別するように構成することができる。ローソースデータ216は種々のソースから得ることができる。例えば、ローソースデータ216は、機械学習システムによって収集された実際の入力データであってよい。ローソースデータ216は、システムを試験するために機械生成されたものであってもよい。一例として、ローソースデータ216は、カメラからのロービデオ画像を含みうる。
【0069】
深層平衡モデル(DEQ)におけるフロー推定器の上記の説明を、推定器を実行するように構成された
図1~
図2の構造例とともに考えると、以下のアルゴリズムは、以下の(I-フロー推定)、(II-DEQ-フロー推定器トレーニング)、(III-損失計算)に要約される。これらのアルゴリズムは、
図1~
図2に記載された構造、例えば、ニューラルネットワーク設定において利用されるプロセッサおよび関連メモリおよび入力/出力インタフェースを使用して実行することができる。
【0070】
I-フロー推定:
・凍結された(トレーニングされた)層関数f
θ
・ビデオフレーム{p
0,…,p
t,…,p
T},0≦t≦T
が与えられたとして、
ビデオフレームp
t,p
t+1の各ペアに対し、
#1 初期化:
固定小数点解
【数54】
を初期化し、
・t=0の場合、任意の適切な固定初期化を使用する(例えば、0に初期化する)
・t>0の場合、前の解
【数55】
に固定小数点解を使用し、
#2 オプティカルフロー推定:
ブラックボックスソルバを用いて固定小数点解
【数56】
を計算し、
#3 オプティカルフロー推定値、すなわち
【数57】
を返す。
【0071】
II-DEQ-フロー推定器トレーニング:
・層関数f
θ
・ビデオフレーム{p
0,…,p
t,…,p
T},0≦t≦Tおよびグラウンドトゥルースオプティカルフロー
【数58】
・(任意の)補正/正則化損失ハイパーパラメータ
が与えられたとして、
ビデオフレームp
t,p
t+1の各ペアおよびグラウンドトゥルースオプティカルフロー
【数59】
に対し、
#1 オプティカルフロー推定:
オプティカルフローを推定して(オプティカルフロー推定を参照)、
f={f
0,…,f
T}
を取得し、
#2 損失計算:
推定されたオプティカルフローfとグラウンドトゥルースオプティカルフローf
gtとの間の損失を
L
main(f,f
gt)
のように計算し、
#2.5 (任意の)補正/正則化損失の比較:
追加の補正/正則化損失を計算し、
L
cor(f,f
gt)
#3 パラメータ更新:
陰関数定理(IFT)を使用して損失勾配に基づいて層関数パラメータθを更新する
損失が安定するまで#1~#3を繰り返す。停止基準は、固定数の反復(例えば、1~3を50回行う)または損失の収束までを含みうる。
【0072】
III-損失計算:
#1 主損失:
任意の適切な微分可能な損失を使用することができ、例えば、
【数60】
であり、
#2 補正/正則化損失(例):
【数61】
である。
【0073】
深層平衡(DEQ)フロー推定器は、経路に依存しない固定小数点解法プロセスとしてフローを直接にモデル化する。本出願は、オプティカルフロー推定を含むフロー推定に対する既存のリカレントアプローチに取って代わる陰的フレームワークを提示する。DEQフローは、より速く収束し、より少ないトレーニングメモリを必要とし、しばしばより正確であり、従来のモデル設計(例えば、RAFTおよびGMA)と互換性がある。
【0074】
図3Aは、一実施形態による、深層平衡モデル(DEQ)などの機械学習システムにおける求根法を用いた固定小数点解のためのグラフィカルフロー
図300である。第1の画像フレーム302および第2の画像フレーム304は、フロー推定306を生成するために使用される。DEQフロー推定器のこの視覚的比較。相関およびコンテキストモジュールの後、DEQフローは、高速ブラックボックス固定小数点ソルバ(例えば、アンダーソン、ニュートン)を使用して、安定した(固定小数点)フローz*=(h*,f*)について直接に解き、安価な不正確勾配を用いてz*によって微分する。これは、DEQフローのバックワードパスをほとんどフリーとする。対照的に、リカレントフロー推定器は、多くのステップのためにアンロールする必要があり、BPTTを実行する必要があり、これは、計算およびメモリの両方においてコストが高い。
【0075】
図3Bは、一実施形態による、深層平衡モデル(DEQ)などの機械学習システムにおける求根法を用いた固定小数点解の別のグラフィカルフロー
図350である。前のフレームのフロー推定からの固定小数点z*を再使用することによって、このシステムは、後続の平衡解法を「ジャンプスタート」し、本質的にソルバコストを償却し、収束を加速することができる。
【0076】
図4Aは、反復404に関するSintelビデオの50フレーム上のDEQおよびリカレントフロー推定器の順方向収束402の比較のグラフ表現400である。「DS」は、RAFTによって使用される深層監視を表現する。固定小数点再使用を伴うDEQフローは、再使用を伴わないDEQフローよりも速く収束する。
【0077】
図4Bは、異なるモデル416に関するトレーニングメモリ412および推論時間414のグラフ表現410である。画像サイズ436×1024のSintel(クリーン)でのトレーニングメモリ、推論速度、および性能を比較している。同じモデル設計(RAFTに基づく)は、リカレント対応物よりも消費するメモリがはるかに少なく、計算がはるかに高速である。全ての結果は、単一のQuadro RTX8000 GPU上でベンチマークされた。
【0078】
DEQフローの性能および収束安定性(絶対残余誤差によって測定される)。頻度は、いくつの補正項が選択されたかを示し、0は補正なしを意味する。ここでの提案の補正でトレーニングされたDEQフローは、優れた性能および安定性を享受する。
【0079】
図4C~
図4Dは、アンダーソンソルバを使用したトレーニングDEQの頻度424,434に対する平均エンドポイント誤差(AEPE)422および収束安定性432のグラフ表現420,430である。
【0080】
図4E~
図4Fは、ブロイデンソルバを使用したトレーニングDEQの頻度444,454に対する平均エンドポイント誤差(AEPE)442および収束安定性452のグラフ表現440,450である。
【0081】
DEQフローの性能および収束安定性(絶対残余誤差によって測定される)。頻度は、いくつの補正項が選択されたかを示し、0は補正なしを意味する。ここでの提案の補正でトレーニングされたDEQフローは、優れた性能および安定性を享受する。
【0082】
収束と性能との間の相関を考慮すると、より困難な例(例えば、大きい動きをもつ例)は、概して、より困難な固定小数点収束につながることも観測された。
【0083】
図5は、コンピュータ制御される機械500と制御システム502との間の相互作用の概略図を示している。コンピュータ制御される機械500は、アクチュエータ504およびセンサ506を含む。アクチュエータ504は1つ以上のアクチュエータを含むことができ、センサ506は1つ以上のセンサを含むことができる。センサ506は、コンピュータ制御される機械500の状態をセンシングするように構成されている。センサ506は、センシングした状態をセンサ信号508に符号化し、センサ信号508を制御システム502に送信するように構成することができる。センサ506の非限定的な例には、ビデオ、レーダー、LiDAR、超音波およびモーションセンサが含まれる。一実施形態では、センサ506は、コンピュータ制御される機械500に近接する環境の光学画像をセンシングするように構成された光学センサである。
【0084】
制御システム502は、コンピュータ制御される機械500からセンサ信号508を受信するように構成されている。以下に説明するように、制御システム502は、センサ信号に応じてアクチュエータ制御コマンド510を計算し、アクチュエータ制御コマンド510をコンピュータ制御される機械500のアクチュエータ504に送信するようにさらに構成することができる。
【0085】
図5に示されているように、制御システム502は受信ユニット512を含む。受信ユニット512は、センサ506からセンサ信号508を受信し、センサ信号508を入力信号xに変換するように構成することができる。代替実施形態では、センサ信号508は、受信ユニット512なしで入力信号xとして直接に受信される。各入力信号xは、各センサ信号508の一部でありうる。受信ユニット512は、各センサ信号508を処理して各入力信号xを生成するように構成することができる。入力信号xは、センサ506によって記録された画像に対応するデータを含みうる。
【0086】
制御システム502は分類器514を含む。分類器514は、上記で説明したニューラルネットワークなどの機械学習(ML)アルゴリズムを使用して、入力信号xを1つ以上のラベルに分類するように構成することができる。分類器514は、上述したようなパラメータ(例えばパラメータθ)によってパラメータ化されるように構成されている。パラメータθは、不揮発性ストレージ516に記憶され、かつ不揮発性ストレージ516によって提供することができる。分類器514は、入力信号xから出力信号yを決定するように構成されている。各出力信号yは、1つ以上のラベルを各入力信号xに割り当てる情報を含む。分類器514は、出力信号yを変換ユニット518に送信することができる。変換ユニット518は、出力信号yをアクチュエータ制御コマンド510に変換するように構成されている。制御システム502は、アクチュエータ制御コマンド510に応答してコンピュータ制御される機械500を作動させるように構成されたアクチュエータ504に、アクチュエータ制御コマンド510を送信するように構成されている。別の実施形態では、アクチュエータ504は、出力信号yに直接に基づいてコンピュータ制御される機械500を作動させるように構成されている。
【0087】
アクチュエータ504がアクチュエータ制御コマンド510を受信すると、アクチュエータ504は、関連するアクチュエータ制御コマンド510に対応する動作を実行するように構成されている。アクチュエータ504は、制御ロジックを含むことができ、当該制御ロジックは、アクチュエータ制御コマンド510を、アクチュエータ504を制御するために利用される第2のアクチュエータ制御コマンドに変換するように構成されている。1つ以上の実施形態では、アクチュエータ制御コマンド510は、アクチュエータに代えてまたはこれに加えて、ディスプレイを制御するためにも利用可能である。
【0088】
別の実施形態では、制御システム502は、センサ506を含むコンピュータ制御される機械500に代えてまたはこれに加えて、センサ506を含む。制御システム502はまた、アクチュエータ504を含むコンピュータ制御される機械500に代えてまたはこれに加えて、アクチュエータ504を含んでいてもよい。
【0089】
図5に示されているように、制御システム502はまた、プロセッサ520およびメモリ522を含む。プロセッサ520は1つ以上のプロセッサを含みうる。メモリ522は、1つ以上のメモリデバイスを含みうる。1つ以上の実施形態の分類器514(例えば、MLアルゴリズム)は、不揮発性ストレージ516とプロセッサ520とメモリ522とを含む制御システム502によって実装可能である。
【0090】
不揮発性ストレージ516は、ハードドライブ、光学ドライブ、テープドライブ、不揮発性ソリッドステートデバイス、クラウドストレージ、または情報を永続的に記憶することが可能な任意の他のデバイスなどの、1つ以上の永続的データストレージデバイスを含みうる。プロセッサ520は、高性能コア、マイクロプロセッサ、マイクロコントローラ、デジタルシグナルプロセッサ、マイクロコンピュータ、中央処理装置、フィールドプログラマブルゲートアレイ、プログラマブル論理デバイス、状態機械、論理回路、アナログ回路、デジタル回路、またはメモリ522内に存在するコンピュータ実行可能命令に基づいて信号(アナログまたはデジタル)を操作する任意の他のデバイスを含む、高性能コンピューティング(HPC)システムから選択された1つ以上のデバイスを含みうる。メモリ522は、以下に限定されるものではないが、ランダムアクセスメモリ(RAM)、揮発性メモリ、不揮発性メモリ、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、フラッシュメモリ、キャッシュメモリ、または情報を記憶することが可能な任意の他のデバイスを含む、単一のメモリデバイスまたは複数のメモリデバイスを含みうる。
【0091】
プロセッサ520は、不揮発性ストレージ516に存在し、1つ以上の実施形態の1つ以上のMLアルゴリズムおよび/または方法を具現化するコンピュータ実行可能命令をメモリ522に読み込んで実行するように構成することができる。不揮発性ストレージ516は、1つ以上のオペレーティングシステムおよびアプリケーションを含みうる。不揮発性ストレージ516は、Java、C、C++、C#、Objective C、Fortran、Pascal、Java Script、Python、Perl、およびPL/SQLを単独でまたは組み合わせて含むがこれらに限定されない種々のプログラミング言語および/または技術を使用して作成されたコンピュータプログラムからコンパイルおよび/または解釈されたものを記憶することができる。
【0092】
プロセッサ520によって実行される際に、不揮発性ストレージ516のコンピュータ実行可能命令は、制御システム502に、本明細書に開示しているようなMLアルゴリズムおよび/または方法のうちの1つ以上を実装させるためのものであってよい。不揮発性ストレージ516はまた、本明細書で説明される1つ以上の実施形態の機能、特徴およびプロセスをサポートするMLデータ(データパラメータを含む)を含みうる。
【0093】
本明細書に記載されるアルゴリズムおよび/または方法を具現化するプログラムコードは、種々の異なる形態のプログラム製品として個別にまたは集合的に配布することができる。プログラムコードは、1つ以上の実施形態の態様をプロセッサに実行させるためのコンピュータ可読プログラム命令を有するコンピュータ可読記憶媒体を使用して配布することができる。本質的に非一時的であるコンピュータ可読記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュールまたは他のデータなどの情報の記憶のための任意の方法または技術で実装される、揮発性および不揮発性ならびに取り外し可能かつ取り外し不可能な有形媒体を含みうる。コンピュータ可読記憶媒体は、RAM、ROM、消去可能プログラマブル読み出し専用メモリ(EPROM)、電気的消去可能プログラマブル読み取り専用メモリ(EEPROM)、フラッシュメモリもしくは他のソリッドステートメモリ技術、ポータブルコンパクトディスク読み出し専用メモリ(CD-ROM)もしくは他の光学ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージもしくは他の磁気ストレージデバイス、または所望の情報を記憶するために使用することができ、コンピュータによって読み出されうる任意の他の媒体をさらに含みうる。コンピュータ可読プログラム命令は、コンピュータ可読記憶媒体からコンピュータ、別のタイプのプログラマブルデータ処理装置または別のデバイスにあるいはネットワークを介して外部コンピュータまたは外部記憶デバイスにダウンロードされうる。
【0094】
コンピュータ可読媒体に記憶されたコンピュータ可読プログラム命令を使用して、コンピュータ、他のタイプのプログラマブルデータ処理装置、または他のデバイスに特定の方法で機能するように指示することができ、その結果、コンピュータ可読媒体に記憶された命令は、フローチャートまたは図で指定された機能、行為および/または動作を実装するための命令を含む、製造物品を生成するためのものである。幾つかの代替実施形態では、フローチャートおよび図で指定された機能、行為および/または動作は、1つ以上の実施形態に関連して、並べ替え可能であり、順次処理可能であり、かつ/または同時処理可能である。さらに、フローチャートおよび/または図のいずれも、1つ以上の実施形態と一致して示されるものよりも多いまたは少ないノードまたはブロックを含みうる。
【0095】
プロセス、方法、またはアルゴリズムは、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、状態機械、コントローラ、または他のハードウェア構成要素もしくはデバイス、あるいはハードウェア、ソフトウェア、およびファームウェア構成要素の組み合わせなどの好適なハードウェア構成要素を使用して、全体的または部分的に具現化可能である。
【0096】
図6は、少なくとも部分的に自律型の車両または少なくとも部分的に自律型のロボットでありうる車両600を制御するように構成された制御システム502の概略図を示している。車両600は、アクチュエータ504およびセンサ506を含む。センサ506は、1つ以上のビデオセンサ、カメラ、レーダーセンサ、超音波センサ、LiDARセンサ、および/または位置センサ(例えば、GPS)を含みうる。1つ以上の特定のセンサのうちの1つ以上は、車両600に統合することができる。上記で識別された1つ以上の特定のセンサに代えてまたはこれに加えて、センサ506は、実行時にアクチュエータ504の状態を決定するように構成されたソフトウェアモジュールを含みうる。ソフトウェアモジュールの1つの非限定的な例は、車両600または他の位置に近接する気象の現在または将来の状態を決定するように構成された気象情報ソフトウェアモジュールを含む。
【0097】
車両600の制御システム502の分類器514は、入力信号xに応じて車両600の近傍の物体を検出するように構成することができる。こうした実施形態では、出力信号yは、車両600に対する物体の近傍を特徴付ける情報を含みうる。この情報に従ってアクチュエータ制御コマンド510が決定されうる。アクチュエータ制御コマンド510は、検出した物体との衝突を回避するために使用されうる。
【0098】
車両600が少なくとも部分的に自律型の車両である実施形態では、アクチュエータ504は、車両600のブレーキ、推進システム、エンジン、ドライブトレイン、またはステアリング部において具現化することができる。アクチュエータ制御コマンド510は、車両600が検出した物体との衝突を回避するようにアクチュエータ504が制御されるように決定されうる。検出した物体はまた、歩行者または樹木など、分類器514が最も可能性が高いと見なすものに従って分類されうる。アクチュエータ制御コマンド510は、分類に応じて決定可能である。敵対的攻撃が発生しうるシナリオでは、上述したシステムは、物体をより良好に検出するか、または車両600上のセンサもしくはカメラの照明条件もしくは角度の変化を識別するようにさらにトレーニングされうる。
【0099】
車両600が少なくとも部分的に自律型のロボットである他の実施形態では、車両600は、飛行、泳行、潜行および歩行などの1つ以上の機能を実行するように構成された移動ロボットでありうる。移動ロボットは、少なくとも部分的に自律型の芝刈り機または少なくとも部分的に自律型の掃除ロボットであってよい。こうした実施形態では、アクチュエータ制御コマンド510は、移動ロボットが識別された物体との衝突を回避しうるように、移動ロボットの推進ユニット、ステアリングユニットおよび/またはブレーキユニットが制御されうるように決定されうる。
【0100】
別の実施形態では、車両600は、ガーデニングロボットの形態の少なくとも部分的に自律的なロボットである。こうした実施形態では、車両600は、センサ506として光学センサを使用して、車両600に近接する環境内の植物の状態を決定することができる。アクチュエータ504は、化学物質を噴霧するように構成されたノズルであってよい。植物の識別された種および/または識別された状態に応じて、アクチュエータ制御コマンド510は、アクチュエータ504に適切な量の適切な化学物質を植物に噴霧させるように決定されうる。
【0101】
車両600は、家電機器の形態の少なくとも部分的に自律的なロボットでありうる。家電機器の非限定的な例としては、洗濯機、ストーブ、オーブン、電子レンジ、または食器洗い機が挙げられる。当該車両600において、センサ506は、家電機器による処理の対象となる物体の状態を検出するように構成された光学センサであってよい。例えば、家電機器が洗濯機である場合、センサ506は、洗濯機内の洗濯物の状態を検出することができる。アクチュエータ制御コマンド510は、洗濯物の検出状態に基づいて決定されうる。
【0102】
図7は、生産ラインの一部などの製造システム702のパンチカッタ、カッタ、またはガンドリルなどのシステム700(例えば、製造機械)を制御するように構成された制御システム502の概略図を示している。制御システム502は、システム700(例えば、製造機械)を制御するように構成されたアクチュエータ504を制御するように構成することができる。
【0103】
システム700(例えば、製造機械)のセンサ506は、製造製品704の1つ以上の特性を捕捉するように構成された光学センサでありうる。分類器514は、捕捉された特性のうちの1つ以上から、製造製品704の状態を判定するように構成することができる。アクチュエータ504は、製造製品704の後続の製造ステップのために、製造製品704の判定された状態に応じて、システム700(例えば、製造機械)を制御するように構成することができる。アクチュエータ504は、製造製品704の判定された状態に応じて、システム700(例えば、製造機械)の後続の製造製品706に対するシステム700(例えば製造機械)の機能を制御するように構成することができる。
【0104】
図8は、少なくとも部分的に自律モードを有する電動ドリルまたはドライバなどの電動工具800を制御するように構成された制御システム502の概略図を示している。制御システム502は、電動工具800を制御するように構成されたアクチュエータ504を制御するように構成することができる。
【0105】
電動工具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の硬度に応じて、付加的なトルクを印加することができ、またはより少ないトルクを印加することができる。
【0106】
図9は、自動パーソナルアシスタント900を制御するように構成された制御システム502の概略図を示している。制御システム502は、自動パーソナルアシスタント900を制御するように構成されたアクチュエータ504を制御するように構成することができる。自動パーソナルアシスタント900は、洗濯機、ストーブ、オーブン、電子レンジ、または食器洗い機などの家電機器を制御するように構成されたものであってよい。
【0107】
センサ506は、光学センサおよび/または音声センサでありうる。光学センサは、ユーザ902のジェスチャ904のビデオ画像を受信するように構成可能である。音声センサは、ユーザ902の音声コマンドを受信するように構成可能である。
【0108】
自動パーソナルアシスタント900の制御システム502は、システム502を制御するように構成されたアクチュエータ制御コマンド510を決定するように構成することができる。制御システム502は、センサ506のセンサ信号508に従ってアクチュエータ制御コマンド510を決定するように構成することができる。自動パーソナルアシスタント900は、センサ信号508を制御システム502に送信するように構成されている。制御システム502の分類器514は、ジェスチャ認識アルゴリズムを実行して、ユーザ902によって行われたジェスチャ904を識別し、アクチュエータ制御コマンド510を決定し、アクチュエータ制御コマンド510をアクチュエータ504に送信するように構成可能である。分類器514は、ジェスチャ904に応答して不揮発性ストレージから情報を取り出し、取り出された情報をユーザ902による受信に適した形態で出力するように構成可能である。
【0109】
図10は、監視システム1000を制御するように構成された制御システム502の概略図を示している。監視システム1000は、ドア1002を通るアクセスを物理的に制御するように構成することができる。センサ506は、アクセスが許可されるかどうかを判定する際に関連するシーンを検出するように構成することができる。センサ506は、画像および/またはビデオデータを生成および送信するように構成された光学センサでありうる。当該データは、人の顔を検出するために制御システム502によって使用されてもよい。
【0110】
監視システム1000の制御システム502の分類器514は、不揮発性ストレージ516に記憶された既知の人々の識別情報を照合することによって画像および/またはビデオデータを解釈し、これによって人の識別情報を決定するように構成することができる。分類器514は、画像および/またはビデオデータの解釈に応答して、アクチュエータ制御コマンド510を生成するように構成することができる。制御システム502は、アクチュエータ制御コマンド510をアクチュエータ504に送信するように構成されている。この実施形態では、アクチュエータ504は、アクチュエータ制御コマンド510に応答してドア1002をロックまたはロック解除するように構成可能である。他の実施形態では、非物理的な論理アクセス制御も可能である。
【0111】
監視システム1000はサーベイランスシステムでありうる。こうした実施形態では、センサ506は、監視下にあるシーンを検出するように構成された光学センサとすることができ、制御システム502はディスプレイ1004を制御するように構成される。分類器514は、シーンを分類するように、例えば、センサ506によって検出したシーンに疑わしい箇所があるかどうかを判定するように構成される。制御システム502は、分類に応答して、アクチュエータ制御コマンド510をディスプレイ1004に送信するように構成される。ディスプレイ1004は、アクチュエータ制御コマンド510に応答して、表示されたコンテンツを調整するように構成されうる。例えば、ディスプレイ1004は、分類器514によって疑わしいと見なされた物体を強調表示することができる。開示しているシステムの一実施形態を利用して、サーベイランスシステムは、将来の特定の時間に現れる物体を予測することができる。
【0112】
図11は、撮像システム1100、例えばMRI装置、X線撮像装置または超音波装置を制御するように構成された、制御システム502の概略図を示している。センサ506は、例えば撮像センサであってよい。分類器514は、センシングした画像の全部または一部の分類を決定するように構成することができる。分類器514は、トレーニング済みのニューラルネットワークによって取得された分類に応答して、アクチュエータ制御コマンド510を決定または選択するように構成することができる。例えば、分類器514は、センシングされた画像の領域を潜在的に異常であると解釈することができる。この場合、アクチュエータ制御コマンド510は、潜在的に異常な領域の撮像および強調表示をディスプレイ302に表示させるように決定または選択することができる。
【0113】
本明細書では、収束について言及している。システムは、閾値または別の属性に基づいて、収束が満たされたことを判定することができる。例えば、収束のために利用される閾値は、定義された反復数、エラー損失の量、分類エラーの量、損失値(例えば、平均または和)、または他の属性によって満たされてもよい。
【0114】
本明細書に開示したプロセス、方法、またはアルゴリズムは、任意の既存のプログラム可能電子制御ユニットまたは専用電子制御ユニットを含みうる、処理デバイス、コントローラ、またはコンピュータに送達可能である/これによって実装されることができる。同様に、プロセス、方法、またはアルゴリズムは、コントローラまたはコンピュータによって実行可能なデータおよび命令として、限定はしないが、ROMデバイスなどの書込み不能記憶媒体上に永続的に記憶された情報、ならびにフロッピーディスク、磁気テープ、CD、RAMデバイス、ならびに他の磁気および光媒体などの書込み可能記憶媒体上に代替的に記憶された情報を含む多くの形態で記憶されうる。プロセス、方法、またはアルゴリズムは、ソフトウェア実行可能オブジェクトで実装することもできる。代替手段として、プロセス、方法、またはアルゴリズムは、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、状態機械、コントローラ、または他のハードウェア構成要素もしくはデバイス、あるいはハードウェア、ソフトウェア、およびファームウェア構成要素の組み合わせなどの好適なハードウェア構成要素を使用して、全体的または部分的に具現化されることができる。
【0115】
例示的な実施形態を上述したが、これらの実施形態は、特許請求の範囲によって包含される全ての可能な形態を説明することを意図するものではない。本明細書で使用される用語は、限定ではなく説明のための用語であり、本開示の趣旨および範囲から逸脱することなく種々の変更を行うことができることが理解される。前述したように、種々の実施形態の特徴を組み合わせて、明示的に説明または図示されていない場合がある本発明のさらなる実施形態を形成することができる。種々の実施形態を、1つ以上の所望の特性に関して他の実施形態または従来技術の実現形態よりも大きな利点を提供するものまたはより好ましいものとして説明してきたが、当業者は、特定の適用例および実現形態に依存する所望の全体的なシステム属性を達成するために1つ以上の特徴または特性が損なわれうることを認識している。これらの属性は、コスト、強度、耐久性、ライフサイクルコスト、市場性、外観、パッケージング、サイズ、サービス性、重量、製造可能性、組み立ての容易さなどを含むことができるが、これらに限定されない。したがって、任意の実施形態が1つ以上の特性に関して他の実施形態または従来技術の実現形態よりも望ましくないものとして説明される場合、これらの実施形態が本開示の範囲外にあるということではなく、特定の適用例にとって望ましいものであるということでありうる。
【外国語明細書】