(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-01-10
(45)【発行日】2025-01-21
(54)【発明の名称】時空間上のアテンションを使用したビデオシーケンスからの物体表現の教師なし学習
(51)【国際特許分類】
G06N 3/0455 20230101AFI20250114BHJP
G06N 3/0475 20230101ALI20250114BHJP
G06N 3/088 20230101ALI20250114BHJP
G06T 1/40 20060101ALI20250114BHJP
G06T 3/20 20060101ALI20250114BHJP
G06T 7/00 20170101ALI20250114BHJP
【FI】
G06N3/0455
G06N3/0475
G06N3/088
G06T1/40
G06T3/20
G06T7/00 350C
(21)【出願番号】P 2023568562
(86)(22)【出願日】2022-05-27
(86)【国際出願番号】 EP2022064484
(87)【国際公開番号】W WO2022248712
(87)【国際公開日】2022-12-01
【審査請求日】2023-12-06
(32)【優先日】2021-05-28
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】517030789
【氏名又は名称】ディープマインド テクノロジーズ リミテッド
(74)【代理人】
【識別番号】100108453
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】リシャブ・カブラ
(72)【発明者】
【氏名】ダニエル・ゾラン
(72)【発明者】
【氏名】ゴーカー・エルドガン
(72)【発明者】
【氏名】アントニア・フィービー・ニーナ・クレスウェル
(72)【発明者】
【氏名】ロイク・マッセイ-ドゥ-ルンドロワ
(72)【発明者】
【氏名】マシュー・ボトビニック
(72)【発明者】
【氏名】アレクサンダー・レルヒナー
(72)【発明者】
【氏名】クリストファー・ポール・バージェス
【審査官】佐藤 直樹
(56)【参考文献】
【文献】国際公開第2021/096739(WO,A1)
【文献】国際公開第2020/237136(WO,A1)
【文献】Nguyen-Ha PHONG et al.,Sequential View Synthesis with Transformer,ACCV 2020[online],2021年01月01日,[検索日2024.11.26],インターネット:<URL:https://openaccess.thecvf.com/content/ACCV2020/papers/Nguyen-Ha_Sequential_View_Synthesis_with_Transformer_ACCV_2020_paper.pdf>
【文献】黒田 修二郎 ほか,教師あり学習による解きほぐされた特徴表現の学習 -識別器を用いた特徴表現の解きほぐし-,電子情報通信学会技術研究報告 Vol.120 No.300 [online] IEICE Technical Report,日本,一般社団法人電子情報通信学会,2020年12月10日,第120巻
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/0455
G06N 3/0475
G06N 3/088
G06T 1/40
G06T 3/20
G06T 7/00
(57)【特許請求の範囲】
【請求項1】
ビデオ物体表現ニューラルネットワークシステムを訓練するコンピュータ実装方法であって、前記ビデオ物体表現ニューラルネットワークシステムは、各自己アテンション層が層入力に対して自己アテンション機構を適用するように構成された1つまたは複数の自己アテンション層を備える自己アテンションニューラルネットワークを含み、複数の自己アテンションニューラルネットワークパラメータを有し、前記方法は、
連続する時間の各々において1つのT個の画像フレームのシーケンスを含むビデオシーケンスを取得するステップと、
前記画像フレームの各々を処理して、T個の画像フレームの各々についてのS個の空間エンコーディングのセットを生成し、それによって、前記ビデオシーケンスについてのS×T個の空間エンコーディングのグループを取得するステップであって、画像フレームの各空間エンコーディングは、前記画像フレームのそれぞれの領域のエンコーディングを含む、ステップと、
前記S×T個の空間エンコーディングのグループを含む層入力に対して前記自己アテンション機構を適用することによって、前記自己アテンションニューラルネットワークを使用して前記S×T個の空間エンコーディングのグループを処理して、各々が画像フレーム時間および画像フレーム領域に対応する、変換された空間エンコーディングのグループを生成するステップであって、前記層入力に対して前記自己アテンション機構を適用することは、異なる画像フレームの前記空間エンコーディングにわたって前記自己アテンション機構を適用することを含む、ステップと、
物体潜在変数のセットにおける各物体潜在変数について、前記画像フレームの時間にわたって前記変換された空間エンコーディングのグループを集約することによって、前記物体潜在変数の物体潜在分布をパラメータ化する1つまたは複数の値を判定するステップと、
前記物体潜在変数の前記物体潜在分布からのサンプリングによって、前記物体潜在変数のセットにおける各物体潜在変数の値を判定するステップと、
前記物体潜在変数の前記判定された値を処理して、画像フレームの復号されたシーケンスを生成するステップと、
少なくとも前記自己アテンションニューラルネットワークパラメータの値を調整して、i)前記T個の画像フレームのシーケンスと前記画像フレームの復号されたシーケンスとの差の尺度、およびii)前記物体潜在分布の各々と以前の物体潜在分布との差に応じて、目的関数を最適化することによって、前記
ビデオ物体表現ニューラルネットワークシステムを訓練するステップと
を含む、方法。
【請求項2】
前記画像フレームの領域にわたって前記変換された空間エンコーディングのグループを集約することによって、フレーム潜在変数のセットにおける各フレーム潜在変数について、前記フレーム潜在変数のフレーム潜在分布をパラメータ化する1つまたは複数の値を判定するステップと、
前記フレーム潜在変数についての前記フレーム潜在分布からのサンプリングによって、前記フレーム潜在変数のセットにおける各フレーム潜在変数の値を判定するステップと
をさらに含み、
画像フレームの復号されたシーケンスを生成するステップは、前記フレーム潜在変数の前記判定された値を処理して、前記画像フレームの復号されたシーケンスを生成することをさらに含む、請求項1に記載の方法。
【請求項3】
前記
ビデオ物体表現ニューラルネットワークシステムを訓練するステップは、少なくとも前記自己アテンションニューラルネットワークパラメータの値を調整して、前記フレーム潜在分布の各々と以前のフレーム潜在分布との差に応じて、前記目的関数を最適化することを含む、請求項2に記載の方法。
【請求項4】
各空間エンコーディングは、前記画像フレームの前記それぞれの領域の特徴マップを含み、前記画像フレームの各々を処理して、前記T個の画像フレームの各々について前記S個の空間エンコーディングのセットを生成するステップは、複数の特徴抽出ニューラルネットワークパラメータを有する特徴抽出ニューラルネットワークを使用して前記画像フレームの各々を処理して、前記画像フレームの各領域についての前記特徴マップを生成することを含み、前記
ビデオ物体表現ニューラルネットワークシステムを訓練するステップは、前記特徴抽出ニューラルネットワークパラメータの値を調整することを含む、請求項
1に記載の方法。
【請求項5】
複数の画像フレームデコーダニューラルネットワークパラメータを有する画像フレームデコーダニューラルネットワークを使用して前記物体潜在変数の前記判定された値を処理して、前記画像フレームの復号されたシーケンスを生成するステップを含み、
前記
ビデオ物体表現ニューラルネットワークシステムを訓練するステップは、前記画像フレームデコーダニューラルネットワークパラメータの値を調整することをさらに含む、請求項
1に記載の方法。
【請求項6】
前記画像フレームの復号されたシーケンスは、連続する復号された画像フレーム時間ステップの各々についての画像フレームを含み、画像フレームデコーダニューラルネットワークを使用して前記画像フレームの復号されたシーケンスを生成するステップは、各復号された画像フレームの各ピクセルおよび各復号された画像フレーム時間ステップについて、
前記画像フレームデコーダニューラルネットワークを使用して、前記物体潜在変数の前記判定された値、前記ピクセルの位置を指定する情報、および前記
画像フレーム時間ステップを指定する情報を処理して、前記ピクセルおよび前記
画像フレーム時間ステップについて、前記物体潜在変数の各々についてのピクセル分布のパラメータを判定するステップと、
前記物体潜在変数の各々についての前記ピクセル分布を組み合わせて、結合ピクセル分布を判定するステップと、
前記結合ピクセル分布からのサンプリングを行って、前記ピクセルおよび前記
画像フレーム時間ステップの値を判定するステップと
を含む、請求項5に記載の方法。
【請求項7】
各復号された画像フレームの各ピクセルおよび各復号された画像フレーム時間ステップについて、
前記画像フレームデコーダニューラルネットワークを使用して、前記物体潜在変数の前記判定された値、前記ピクセルの位置を指定する情報、および前記
画像フレーム時間ステップを指定する情報を処理して、前記ピクセルおよび前記
画像フレーム時間ステップについて、前記物体潜在変数の各々についての混合重みを判定するステップ
をさらに含み、
前記物体潜在変数の各々についての前記ピクセル分布を組み合わせて、結合ピクセル分布を判定するステップは、それぞれの前記混合重みによって重み付けされた各物体潜在変数についての前記ピクセル分布を組み合わせることを含む、請求項6に記載の方法。
【請求項8】
1つもしくは複数の物体、または前記ビデオシーケンスにおける1つもしくは複数の物体についての物体特性を定義するか、あるいは視点位置または向きを定義する条件付け入力を取得するステップと、
前記条件付け入力を前記自己アテンションニューラルネットワークおよび前記画像フレームデコーダニューラルネットワークに提供するステップと
をさらに含む、請求項
5に記載の方法。
【請求項9】
前記
自己アテンションニューラルネットワークを使用して前記S×T個の空間エンコーディングのグループを処理するステップは、前記1つまたは複数の自己アテンション層のうちの1つを使用して前記S×T個の空間エンコーディングのグループを含む前記層入力を処理して、前記空間エンコーディングの各々についてのクエリおよびキー値対を生成し、前記自己アテンション機構を使用して前記クエリを前記キー値対に適用して、前記変換された空間エンコーディングのグループを判定することを含み、前記自己アテンションニューラルネットワークパラメータは、前記クエリおよび前記キー値対を生成するために前記層入力に適用される学習された変換のパラメータを含む、請求項
1に記載の方法。
【請求項10】
前記
自己アテンションニューラルネットワークを使用して前記S×T個の空間エンコーディングのグループを処理するステップは、
前記S×T個の空間エンコーディングのグループを前記
自己アテンションニューラルネットワークの第1の自己アテンション層への前記層入力として提供して、第1の自己アテンション層出力を生成するステップと、
前記第1の自己アテンション層出力を前記
自己アテンションニューラルネットワークの第2の自己アテンション層に提供して、前記変換された空間エンコーディングのグループを生成するステップと、
空間エンコーディングの数をS×T個の空間エンコーディングからK×T個の空間エンコーディングに低減させるステップであって、ただし、Kは、物体潜在変数の数であり、KはSよりも小さい、ステップと
を含む、請求項
1に記載の方法。
【請求項11】
前記低減させるステップは、前記第1の自己アテンション層出力に対してプーリング演算を適用することを含む、請求項10に記載の方法。
【請求項12】
前記
ビデオ物体表現ニューラルネットワークシステムを訓練するステップは、前記画像フレームの復号されたシーケンスを生成する画像フレームデコーダニューラルネットワーク、前記自己アテンションニューラルネットワーク、および前記空間エンコーディングのセットを生成する特徴抽出ニューラルネットワークを介して、前記目的関数の勾配を誤差逆伝播させることを含む、請求項
1に記載の方法。
【請求項13】
前記訓練されたビデオ物体表現ニューラルネットワークシステムを使用して、前記物体潜在変数または前記物体潜在分布をパラメータ化する前記値から、前記ビデオシーケンスに示されている1つまたは複数の物体の1つまたは複数の特性を取得するステップをさらに含む、請求項
2に記載の方法。
【請求項14】
前記訓練されたビデオ物体表現ニューラルネットワークシステムを使用して、フレーム潜在変数またはフレーム潜在分布をパラメータ化する前記値から、前記ビデオシーケンスについての視点の位置または向きを取得するステップをさらに含む、
請求項13に記載の方法。
【請求項15】
前記物体潜在変数についての以前の物体潜在分布からのサンプリングによって、前記物体潜在変数のセットにおける各物体潜在変数の値を判定し、
前記物体潜在変数の前記判定された値を処理して、新しい画像フレームの復号されたシーケンスを生成すること
によって、前記訓練されたビデオ物体表現ニューラルネットワークシステムを使用して、前記新しい画像フレームの復号されたシーケンスを含む新しいビデオシーケンスを生成するステップをさらに含む、請求項
2に記載の方法。
【請求項16】
前記フレーム潜在変数についての以前のフレーム潜在分布からのサンプリングによって、前記フレーム潜在変数のセットにおける各フレーム潜在変数の値を判定するステップと、
前記物体潜在変数の前記判定された値および前記フレーム潜在変数の前記判定された値を処理して、前記新しい画像フレームの復号されたシーケンスを生成するステップと
をさらに含む
、請求項15に記載の方法。
【請求項17】
入力画像フレームのシーケンスを含む入力ビデオシーケンスを取得し、
前記入力画像フレームの各々を処理して、前記入力ビデオシーケンスについての空間エンコーディングのグループを取得し、
前記
自己アテンションニューラルネットワークを使用して前記入力ビデオシーケンスについての前記空間エンコーディングのグループを処理して、変換された空間エンコーディングのグループを生成し、
前記変換された空間エンコーディングのグループから判定された物体潜在分布からのサンプリングによって、前記物体潜在変数のセットの値を判定し、
前記物体潜在変数のセットについての前記判定された値を修正して、潜在変数の修正されたセットを取得し、
前記潜在変数の修正されたセットを処理して、修正された画像フレームの復号されたシーケンスを生成すること
によって、前記訓練されたビデオ物体表現ニューラルネットワークシステムを使用して、前記修正された画像フレームの復号されたシーケンスを含む修正されたビデオシーケンスを生成するステップ
をさらに含む、請求項
2に記載の方法。
【請求項18】
前記変換された空間エンコーディングのグループから判定されたフレーム潜在分布からのサンプリングによって、前記フレーム潜在変数のセットの値を判定するステップと、
前記フレーム潜在変数のセットについての前記判定された値を修正して、前記潜在変数の修正されたセットを取得するステップと
をさらに含む
、請求項17に記載の方法。
【請求項19】
前記訓練されたビデオ物体表現ニューラルネットワークシステムを使用して、エージェントを制御して、環境と対話しつつタスクを実行するステップをさらに含み、前記方法は、
前記環境の現在の状態を特徴付ける観測情報を取得するステップであって、前記観測情報は、観測ビデオシーケンスを含む、ステップと、
前記訓練されたビデオ物体表現ニューラルネットワークシステムを使用して、前記観測ビデオシーケンスを処理して、前記物体潜在分布をパラメータ化する前記値を取得するステップと、
制御システムを使用して、前記物体潜在分布をパラメータ化する前記値からのデータを処理することを含めて前記観測情報からのデータを処理して、制御出力を生成するステップと、
前記制御出力を使用して前記観測情報に応答して、前記エージェントによって実行されるアクションを選択するステップと
を含む、請求項
1に記載の方法。
【請求項20】
命令を記憶する1つまたは複数のコンピュータ可読記憶媒体であって、前記命令は、1つまたは複数のコンピュータによって実行されたときに、前記1つまたは複数のコンピュータに、請求項1から19のいずれか一項に記載の方法のそれぞれの動作を実施させる、1つまたは複数のコンピュータ可読記憶媒体。
【請求項21】
システムであって、1つまたは複数のコンピュータと、命令を記憶する1つまたは複数の記憶デバイスとを備え、前記命令は、前記1つまたは複数のコンピュータによって実行されたときに、前記1つまたは複数のコンピュータに、請求項1から19のいずれか一項に記載の方法のそれぞれの動作を実施させる、システム。
【請求項22】
コンピュータ実装ビデオ処理ニューラルネットワークシステムであって、
訓練された特徴抽出ニューラルネットワークであって、
連続する時間の各々において1つのT個の画像フレームのシーケンスを含むビデオシーケンスを受信することと、
前記画像フレームの各々を処理して前記T個の画像フレームの各々についてのS個の空間エンコーディングのセットを生成し、それによって、前記ビデオシーケンスについてのS×T個の空間エンコーディングのグループを取得することであって、各空間エンコーディングは、前記画像フレームのそれぞれの領域のエンコーディングを含む、取得することと
を行うように構成された、訓練された特徴抽出ニューラルネットワークと、
各自己アテンション層が、層入力に対して自己アテンション機構を適用するように構成された、1つまたは複数の自己アテンション層を含む、訓練された自己アテンションニューラルネットワークであって、
前記S×T個の空間エンコーディングのグループを含む層入力に対して前記自己アテンション機構を適用することによって、前記
自己アテンションニューラルネットワークを使用して前記S×T個の空間エンコーディングのグループを処理して、各々が画像フレーム時間および画像フレーム領域に対応する変換された空間エンコーディングのグループを生成することあって、前記層入力に対して前記自己アテンション機構を適用することは、異なる画像フレームの前記空間エンコーディングにわたって前記自己アテンション機構を適用することを含む、生成すること
を行うように構成された自己アテンションニューラルネットワークと
を備え、
前記ビデオ処理ニューラルネットワークシステムは、
物体潜在変数のセットにおける各物体潜在変数について、前記画像フレームの時間にわたって前記変換された空間エンコーディングのグループを集約することによって、前記物体潜在変数の物体潜在分布をパラメータ化する1つまたは複数の値を判定することと、前記物体潜在分布をパラメータ化する前記値から、前記ビデオシーケンスに示されている1つまたは複数の物体の1つまたは複数の特性を判定することと
を行うように構成される、コンピュータ実装ビデオ処理ニューラルネットワークシステム。
【請求項23】
コンピュータ実装ビデオ生成ニューラルネットワークシステムであって、
物体潜在変数のセットにおける各物体潜在変数の値を、前記物体潜在変数についてのそれぞれの以前の物体潜在分布からのサンプリングによって判定する
ように構成され、
前記システムは、
前記物体潜在変数の前記判定された値を処理して、連続する時間ステップにおける生成された画像フレームのシーケンスを含むビデオシーケンスを生成する、訓練された画像フレームデコーダニューラルネットワークであって、各生成された画像フレームの各ピクセルおよび各生成された画像フレーム時間ステップについて、
前記物体潜在変数の前記判定された値、前記ピクセルの位置を指定する情報、および前記
画像フレーム時間ステップを指定する情報を処理して、前記ピクセルおよび前記
画像フレーム時間ステップについて、前記物体潜在変数の各々についてのピクセル分布のパラメータを判定し、
前記物体潜在変数の各々についての前記ピクセル分布を組み合わせて、結合ピクセル分布を判定し、
前記結合ピクセル分布からのサンプリングを行って、前記ピクセルおよび前記
画像フレーム時間ステップの値を判定する
ように構成された、訓練された画像フレームデコーダニューラルネットワーク
を備える、コンピュータ実装ビデオ生成ニューラルネットワークシステム。
【請求項24】
前記画像フレームデコーダニューラルネットワークは、各復号された画像フレームの各ピクセルおよび各復号された画像フレーム時間ステップについて、
前記物体潜在変数の前記判定された値、前記ピクセルの位置を指定する情報、および前記
画像フレーム時間ステップを指定する情報を処理して、前記ピクセルおよび前記
画像フレーム時間ステップについて、前記物体潜在変数の各々についての混合重みを判定し、
それぞれの前記混合重みによって重みづけされた各物体潜在変数についての前記ピクセル分布を組み合わせて、前記結合ピクセル分布を判定する
ようにさらに構成される、請求項23に記載のコンピュータ実装ビデオ生成ニューラルネットワークシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書は、機械言語モデルをビデオフレームにおける物体および視点などのグローバル時変要素を特徴付けるように訓練することに関する。
【背景技術】
【0002】
機械学習モデルは、入力を受信し、受信された入力およびモデルのパラメータの値に基づいて、出力、たとえば、予測出力を生成する。
【0003】
ニューラルネットワークは、非線形ユニットの1つまたは複数の層を使用して、受信された入力についての出力を予測する機械学習モデルである。いくつかのニューラルネットワークは、出力層に加えて、1つまたは複数の隠れ層を含む。各隠れ層の出力は、ネットワークにおける次の層、すなわち、次の隠れ層または出力層への入力として使用される。ネットワークの各層は、パラメータのそれぞれのセットの現在の値に従って、受信された入力から出力を生成する。
【先行技術文献】
【非特許文献】
【0004】
【文献】arXiv:2010.11929
【文献】Kingmaら、arXiv1312.6114
【文献】Eslami SMAら、「Neural scene representation and rendering.」、Science.、2018年6月15日、360(6394)、1204~1210頁、doi:10.1126/science.aar6170、PMID:29903970
【文献】arXiv:2003.08934
【文献】arXiv:1901.11390
【文献】arXiv:2006.15055
【発明の概要】
【課題を解決するための手段】
【0005】
本明細書は、一般に、1つまたは複数の物理的位置における1つまたは複数のコンピュータ上の1つまたは複数のコンピュータプログラムとして実装され、ビデオ物体表現ニューラルネットワークシステムを訓練するシステムおよび方法について説明する。訓練されたシステムのエンコーダ部分を使用して、ビデオシーケンスにおける複数の異なる物体の特性を判定するか、もしくはビデオシーケンスについての視点の位置を判定するか、またはその両方を行ってもよい。訓練されたシステムのデコーダ部分を使用して新しいビデオシーケンスを生成してもよい。エンコーダとデコーダを一緒に使用してビデオシーケンスを修正してもよい。
【0006】
一態様では、ビデオ物体表現ニューラルネットワークシステムを訓練するコンピュータ実装方法が提供される。ビデオ物体表現ニューラルネットワークシステムは、各々が、層入力に対して自己アテンション機構を適用するように構成され、複数の自己アテンションニューラルネットワークパラメータを有する、1つまたは複数の自己アテンション層を備える自己アテンションニューラルネットワーク、たとえば、トランスフォーマニューラルネットワーク層を含む。
【0007】
方法は、連続する時間の各時間において1つのT個の画像フレームを含むビデオシーケンスを取得するステップと、画像フレームの各々を処理してT個の画像フレームの各々についてS個の空間エンコーディングのセットを生成するステップとを含む。それによって、方法は、ビデオシーケンスについてのS×T個の空間エンコーディングのグループを取得する。各空間エンコーディングは、画像フレームのそれぞれの領域またはパッチのエンコーディングを含む。ビデオは、たとえば、カメラまたはLIDARセンサーから取得されてもよく、すなわち、画像フレームは、点群を含んでもよい。
【0008】
方法は、特に、S×T個の空間エンコーディングのグループを含む層入力に対して自己アテンション機構を適用して、場合によっては、さらなる自己アテンション処理ステップの後に、変換された空間エンコーディングのグループを生成することによって、アテンションニューラルネットワークを使用してS×T個の空間エンコーディングのグループを処理するステップをさらに含む。変換された空間エンコーディングの各々は、画像フレーム時間および画像フレーム領域に対応する。変換された空間エンコーディングのグループは、同じ解像度を有してもよく、または異なる、たとえばより低い解像度を有してもよく、すなわち、変換された空間エンコーディングはS×T個以下であってもよい。実装形態では、層入力に対して自己アテンション機構を適用するステップは、それぞれに異なる画像フレームの空間エンコーディングを介し、すなわち、連続する時間のうちのそれぞれに異なる時間からの画像フレームに対して自己アテンション機構を適用するステップを含む。
【0009】
方法は、物体潜在変数、一般的には、ベクトルのセットにおける各ベクトルについて、物体潜在変数の物体潜在分布をパラメータ化する1つまたは複数の値、たとえば、分布の平均または標準偏差(または分散)を判定するステップをさらに含む。このことは、画像フレームの時間にわたって変換された空間エンコーディングのグループを集約することによって行われる。方法はまた、フレーム潜在変数のセットにおける各フレーム潜在変数について、画像フレームの領域にわたって変換された空間エンコーディングのグループを集約することによって、フレーム潜在変数のフレーム潜在分布をパラメータ化する1つまたは複数の値を判定してもよい。方法は、物体潜在変数についての物体潜在分布からのサンプリングによって、物体潜在変数のセットにおける各物体潜在変数の値を判定する。方法はまた、フレーム潜在変数についてのフレーム潜在分布からのサンプリングによって、フレーム潜在変数のセットにおける各フレーム潜在変数の値を判定してもよい。
【0010】
方法は、物体潜在変数の判定された値を処理して(かつ判定されたフレーム潜在変数の判定された値を処理して)、画像フレームの復号されたシーケンスを生成する。潜在変数のセットから画像を生成することのできる多くのタイプのデコーダがあり、これらのうちのいずれを使用してもよい。例示的なデコーダについては後述する。
【0011】
方法は、次いで、少なくとも自己アテンションニューラルネットワークパラメータの値を調整して、i)T個の画像フレームのシーケンスと画像フレームの復号されたシーケンスとの差の尺度、ii)物体潜在分布の各々と以前の物体潜在分布との差に応じて、目的関数を最適化することによって、システムを訓練することを含んでもよい。目的関数が判定された場合、iii)フレーム潜在分布の各々と以前のフレーム潜在分布との差に応じて最適化されてもよい。以前の物体潜在分布と以前のフレーム潜在分布は、同じ分布、たとえば、単位ガウス分布であってもよい。
【0012】
上述の方法の実装形態は、訓練されたビデオ物体表示ニューラルネットワークシステムを提供する。いくつかの適用例では、訓練後、システムのエンコーダ部分、すなわち、ビデオシーケンス入力から、場合によっては、物体潜在分布および(場合によっては)フレーム潜在分布からサンプリングを行うように構成された部分を含む(他の実装形態では、たとえば、これらの分布の平均から情報が導出されることがある)、これらの分布を判定するように構成された部分までのシステムの部分のみが必要とされる場合がある。いくつかの適用例では、訓練後、後述のように、たとえば、2D画像または3D画像のビデオシーケンスを生成するために、システムの訓練されたデコーダ部分のみが必要とされる場合がある。
【0013】
訓練されたシステムの実装形態は、物体潜在変数のセットにおける物体情報を提供する。たとえば、実装形態では、これらは実質的に解きほぐされてもよく、すなわち、それぞれに異なる物体潜在変数は、シーン内の物体のそれぞれに異なる変動要因ならびにサイズ、色、たとえば各次元における位置、および動きなどの物体の特性に対応する。同様に、実装形態では、それぞれに異なるフレーム潜在変数は、たとえば各次元における視点位置などのビデオシーケンスのフレームのそれぞれに異なるグローバル特性を解きほぐしてもよい。方法およびシステムのさらなる利点については後述する。
【0014】
実装形態では、各空間エンコーディングは、特徴マップ、すなわち、それぞれの領域の視覚的特徴のマップまたは画像フレームの「パッチ」を含む。画像フレームを処理して空間エンコーディングのセットを生成することは、複数の特徴抽出ニューラルネットワークパラメータを有する特徴抽出ニューラルネットワーク、たとえば、畳み込みニューラルネットワークを使用して、画像フレームの各領域についての特徴マップを生成してもよい。システムを訓練するステップは、特徴抽出ニューラルネットワークパラメータの値を調整することを含んでもよい。
【0015】
実装形態では、物体潜在変数(および場合によっては、フレーム潜在変数)の判定された値は、複数の画像フレームデコーダニューラルネットワークパラメータを有する画像フレームデコーダニューラルネットワークを使用して処理されて、画像フレームの復号されたシーケンスを生成する。その場合、システムを訓練するステップは、画像フレームデコーダニューラルネットワークパラメータの値を調整することを含む。
【0016】
いくつかの実装形態では、画像フレームの復号されたシーケンスは、連続する復号された画像フレーム時間ステップの各時間ステップについての画像フレームを含む。画像フレームの復号されたシーケンスを生成する場合、画像フレームデコーダニューラルネットワークを使用して、各復号された画像フレームピクセルおよび各復号された画像フレーム時間ステップについて、物体潜在変数の各々についてのピクセル分布のパラメータを生成する。具体的には、画像フレームデコーダニューラルネットワークは、物体の判定された値(および場合によっては、フレーム潜在変数)、ならびにピクセルの位置を指定する情報および時間ステップを指定する情報を処理して、物体潜在変数の各々についてピクセル分布(μ)のパラメータを判定する。次いで物体潜在変数の各々についてのピクセル分布が組み合わされて、結合ピクセル分布を判定する。次いで、これがサンプリングされてピクセルおよび時間ステップの値を判定する。たとえば、一実装形態では、(画像フレームを復号するための)フレーム潜在変数が物体潜在変数の各々と連結されて、入力、より具体的には入力のセットを画像フレームデコーダニューラルネットワークに提供する。
【0017】
画像フレームの復号されたシーケンスを生成するステップは、物体潜在変数の各々、各ピクセル、および各時間ステップについて混合重みを判定することを含んでもよい。その場合、物体潜在変数の各々についてのピクセル分布が、場合によっては正規化されたそれぞれの混合重みに従って組み合わされてもよい。そのような実装形態では、各物体潜在変数についてのピクセル当たりの混合重みは、物体潜在変数に対応する物体についてのソフトセグメンテーションマスクを提供し、たとえば、各画像フレームをその画像フレームにおける異なる物体を表す領域にセグメント化する。
【0018】
画像フレームのシーケンスと画像フレームの復号されたシーケンスとの差の任意の適切な尺度、たとえば、交差エントロピー損失、二乗誤差損失、またはフーバー損失を使用してもよい。分布間の差については任意の適切な尺度、たとえば、KLダイバージェンスもしくはイェンセン-シャノンダイバージェンスまたは分布間の距離の別の尺度が使用されてもよい。
【0019】
いくつかの実装形態では、方法は、ビデオシーケンスにおける1つもしくは複数の物体または1つもしくは複数の物体についての物体特性を定義するか、あるいは視点位置または向き、たとえばポーズを定義する条件付け入力を取得するステップを含んでもよい。条件付け入力は、訓練の間に自己アテンションニューラルネットワークおよび画像フレームデコーダニューラルネットワークに提供されてもよい。このようにして、システムは、たとえば、生成されたビデオ画像シーケンスに含める物体または物体の特性を定義する条件付け入力を条件とするビデオ画像シーケンス、または生成されたビデオシーケンスについての任意に変化する視点を生成するように訓練されてもよい。
【0020】
前述のように、自己アテンション層は、トランスフォーマニューラルネットワーク層であってもよい。トランスフォーマニューラルネットワークアーキテクチャのコンピュータバージョンへの適用は、arXiv:2010.11929に記載されている。
【0021】
実装形態では、アテンションニューラルネットワークを使用してS×T個の空間エンコーディングのグループを処理するステップは、画像フレームのそれぞれの領域および画像フレーム時間を定義するS×T個の空間エンコーディングの各々に位置情報を付加することを含んでもよい。位置情報は、たとえば、位置埋め込み、すなわち、画像フレーム領域および時間の埋め込みを含んでもよい。埋め込みは、空間エンコーディングと同じ次元性のベクトルを含んでもよく、埋め込みは、それぞれの空間エンコーディングに付加されてもよい。埋め込みは、学習されてもまたは事前に定義されてもよい。
【0022】
実装形態では、アテンションニューラルネットワークを使用してS×T個の空間エンコーディングのグループを処理するステップは、1つもしくは複数の自己アテンション層のうちの1つを使用してS×T個の空間エンコーディングのグループを含む層入力を処理して、空間エンコーディングの各々についてのクエリおよびキー値対を生成することを含む。その場合、自己アテンション機構を使用して、たとえば、クエリの各々をキー、より具体的にはキー値対の各々に適用して変換された空間エンコーディングのグループを判定してもよい。自己アテンションは、マスクされた自己アテンションを含んでもよく、その場合、クエリのすべてが適用され得るとは限らない。自己アテンション機構は、マルチヘッドアテンション機構であってもよい。実装形態では、自己アテンションニューラルネットワークパラメータは、クエリおよびキー値対を生成するために層入力に適用される学習された変換のパラメータを備える。
【0023】
一般に、アテンション機構は、クエリおよびキー値対のセットを出力にマップし、クエリ、キー、および値はすべてベクトルである。出力は、値の加重和として算出され、各値に割り当てられる重みは、対応するキーを有するクエリの互換性関数によって算出される。適用される厳密な自己アテンション機構は、アテンションニューラルネットワークの構成に依存する。たとえば、各アテンション層は、ドット積アテンション機構、たとえば、スケーリングされたドット積アテンション機構を適用することができる。スケーリングされたドット積アテンションでは、所与のクエリについて、アテンション層は、キーのすべてを用いてクエリのドット積を計算し、ドット積の各々をスケールファクタ、たとえば、クエリおよびキーの次元の平方根によって除算し、次いでスケーリングされたドット積にわたってソフトマックス関数を適用して値に対する重みを取得する。アテンション層は次いで、これらの重みに従って値の加重和を計算する。
【0024】
いくつかの実装形態では、アテンションニューラルネットワークを使用してS×T個の空間エンコーディングのグループを処理するステップは、アテンションニューラルネットワークの第1の自己アテンション層への層入力としてS×T個の空間エンコーディングのグループを提供して、第1の自己アテンション層出力を生成するステップと、第1の自己アテンション層出力をアテンションニューラルネットワークの第2の自己アテンション層に提供して、変換された空間エンコーディングのグループを生成するステップとを含む。実装形態では、このことは、空間エンコーディングの数をS×T個の空間エンコーディングからK×T個の空間エンコーディングに減らすステップであって、K<Sが、物体潜在変数の数である、ステップを含む。したがって、実装形態では、物体潜在変数よりも多くの特徴マップがあってもよく、または物体潜在変数と特徴マップの数は同じであってもよい。そのように数を減らすことは、たとえば、(パッチをタイル化したものの)水平方向および/または垂直方向にプールし、場合によっては正規化することによって、第1の自己アテンション層の後または第2の自己アテンション層の後に行われてもよい。
【0025】
別の態様では、コンピュータ実装ビデオ処理ニューラルネットワークシステムであって、連続する時間の各時間において1つのT個の画像フレームのシーケンスを含むビデオシーケンスを受信し、画像フレームの各々を処理してT個の画像フレームの各々についてS個の空間エンコーディングのセットを生成し、それによって、ビデオシーケンスについてのS×T個の空間エンコーディングのグループを取得するように構成された(訓練された)特徴抽出ニューラルネットワークを備える、コンピュータ実装ビデオ処理ニューラルネットワークシステムが提供される。各空間エンコーディングは、画像フレームのそれぞれの領域のエンコーディングを含んでもよい。
【0026】
コンピュータ実装ビデオ処理ニューラルネットワークシステムはまた、各々が層入力に対して自己アテンション機構を適用するように構成された、1つまたは複数の自己アテンション層を備える(訓練された)自己アテンションニューラルネットワークを備える。実装形態では、自己アテンションニューラルネットワークは、S×T個の空間エンコーディングのグループを含む層入力に対して自己アテンション機構を適用して、各々が画像フレーム時間および画像フレーム領域に対応する、変換された空間エンコーディングのグループを生成することによって、アテンションニューラルネットワークを使用してS×T個の空間エンコーディングのグループを処理するように構成される。層入力に対して自己アテンション機構を適用することは、それぞれに異なる画像フレームの空間エンコーディングに対して自己アテンション機構を適用することを含む。
【0027】
ビデオ処理ニューラルネットワークシステムは、物体潜在変数のセットにおける各物体潜在変数について、画像フレームの時間にわたって変換された空間エンコーディングのグループを集約することによって、物体潜在変数の物体潜在分布をパラメータ化する1つもしくは複数の値を判定し、場合によっては、物体潜在変数についての物体潜在分布からのサンプリングによって、物体潜在変数のセットにおける各物体潜在変数の値を判定するように構成される。
【0028】
ビデオ処理ニューラルネットワークシステムはまた、フレーム潜在変数のセットにおける各フレーム潜在変数について、画像フレームの領域にわたって変換された空間エンコーディングのグループを集約することによって、フレーム潜在変数のフレーム潜在分布をパラメータ化する1つもしくは複数の値を判定し、場合によっては、フレーム潜在変数についてのフレーム潜在分布からのサンプリングによって、フレーム潜在変数のセットにおける各フレーム潜在変数の値を判定するように構成される。
【0029】
ビデオ処理ニューラルネットワークシステムはまた、i)物体潜在分布をパラメータ化する値、すなわち、物体潜在変数もしくは物体潜在分布をパラメータ化する値から、ビデオシーケンスに示される1つもしくは複数の物体の1つもしくは複数の特性を判定するか、ii)フレーム潜在分布をパラメータ化する値、すなわち、フレーム潜在変数もしくはフレーム潜在分布をパラメータ化する値からビデオシーケンスについての視点の位置もしくは向きを判定するか、またはその両方を行うように構成される。
【0030】
別の態様では、コンピュータ実装ビデオ生成ニューラルネットワークシステムであって、物体潜在変数についてのそれぞれの以前の物体潜在分布からのサンプリングを行うことによって物体潜在変数のセットにおける各物体潜在変数の値を判定する(かつ場合によっては、フレーム潜在変数についてのそれぞれの以前のフレーム潜在分布からのサンプリングを行うことによってフレーム潜在変数のセットにおける各フレーム潜在変数の値を判定する)ように構成された、コンピュータ実装ビデオ生成ニューラルネットワークシステムが提供される。
【0031】
システムは、物体潜在変数の判定された値(および場合によっては、フレーム潜在変数の判定された値)を処理して連続する時間ステップにおける生成された画像フレームのシーケンスを含むビデオシーケンスを生成する(訓練された)画像フレームデコーダニューラルネットワークを備える。画像フレームデコーダニューラルネットワークは、各生成された画像フレームの各ピクセルおよび各生成された画像フレーム時間ステップについて、物体潜在変数の判定された値(および場合によっては、フレーム潜在変数の判定された値)、ピクセルの位置を指定する情報、および時間ステップを指定する情報を処理して、ピクセルおよび時間ステップについて、物体潜在変数の各々についてのピクセル分布のパラメータを判定し、物体潜在変数の各々についてのピクセル分布を組み合わせて結合ピクセル分布を判定し、結合ピクセル分布からのサンプリングを行ってピクセルおよび時間ステップの値を判定するように構成される。
【0032】
以下の利点のうちの1つまたは複数を実現するように本明細書において説明する主題の特定の実施形態を実装することができる。
【0033】
ビデオ物体表現ニューラルネットワークシステム、具体的には、特徴抽出ニューラルネットワークおよび自己アテンションニューラルネットワークを含むシステムのエンコーダ部分は、3Dシーンのビデオシーケンスを処理し、複数の物体を同時に解きほぐして識別し、すなわち、特徴付けることができる。システムは、このことを、視点、たとえば、カメラポーズが視点またはカメラポーズに関する情報を明示的に与えられずに変化するときでも行うことができる。システムの実装形態は、多数の物体および複雑な背景を有するシーンを処理することができる。
【0034】
したがって、システムは、多くのタスクについて重要な、アロセントリックな表現、すなわち、物体潜在変数またはその分布のセットを判定することができる。たとえば、視点を認識しないシステムは、視点からの物体の距離および物体のサイズを一緒くたにすることがあり、システムの実施形態はこの問題を解消することができる。
【0035】
システムの実施形態では、物体潜在変数またはその分布のセットは、カメラポーズに関してシーン内の物体の安定した表現を提供する。システムの実装形態では、このことは、静的な、すなわち、実質的に時不変の物体属性の、カメラポーズなどのビデオシーケンスのグローバルまたは動的特性からの分離を課す因数分解された潜在空間と組み合わせて、ビデオシーケンスのそれぞれに異なる画像フレームにわたって時空間上のアテンションを使用して実現される。このことはまた、システムが、物体軌跡要約などの静的物体運動特性を判定するのを可能にする。
【0036】
システムはまた、フレーム潜在変数またはその分布のセットにおける視点などのグローバルな、場合によっては時間変のシーン特性の表現を判定する。視点を判定する能力は、システムを使用して、たとえば、カメラまたは他のビデオキャプチャデバイスを搭載したモバイル機械的エージェントの位置を判定するのを可能にする。
【0037】
システムのいくつかの実装形態はまた、いくつかの先行するシステムよりも単純なアーキテクチャを有し、これらの先行するシステムは、より複雑なアーキテクチャを有するが、機能が本システムよりも劣る。
【0038】
システムの実装形態を使用して、たとえば、既存のシーンのビデオシーケンスをあたかも特定の視点からのシーンのように生成するか、または1つもしくは複数の物体を含む新しいシーンもしくは修正されたシーンのビデオシーケンスを生成することもできる。このことは、たとえば、既存のシーンから潜在変数の値を判定するか、またはこれらの値を以前の分布からサンプリングし、次いで値をビデオ物体表現ニューラルネットワークシステム、具体的にはシステムのデコーダ部分に提供することによって行うことができる。これを、たとえば、視点内挿もしくは外挿、またはたとえばいつロボットなどの機械的エージェントを制御してタスクを実行するかの計画に使用することができる。以前に訓練された特定のシーンについて上記のことを行うことのできるいくつかの先行するシステムとは異なり、システムの実施形態は、それぞれに異なるシーンに対して訓練することができ、次いで新しい以前に見ていないシーンについて上記のことを行うことができる。
【0039】
たとえば、訓練されていないビデオ物体表現ニューラルネットワークシステムまたは訓練されたビデオ物体表現ニューラルネットワークシステムのエンコーダを、エージェントが動作する環境からの画像とともに、またはそのような画像の代わりに、エージェントを制御してタスクを実行する強化学習システムにおいて使用して、強化学習システムがより高速にかつより効果的に学習することを可能にすることができる。あるいは訓練されていないビデオ物体表現ニューラルネットワークシステムまたは訓練されたビデオ物体表現ニューラルネットワークシステムのデコーダを、モデルベースの強化学習システムにおいて使用して、エージェントを制御するためのアクション選択ポリシーを学習する際に環境の将来の状態を予測することができる。
【0040】
本明細書の主題の1つもしくは複数の実施形態の詳細は、添付の図面および以下の説明に記載されている。主題の他の特徴、態様、および利点は、説明、図面、および特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【0041】
【
図1】ビデオ物体表現ニューラルネットワークシステムを示す図である。
【
図2】ビデオ物体表現ニューラルネットワークシステムのエンコーダニューラルネットワークを示す図である。
【
図3】潜在変数をピクセル値に復号するように構成されたビデオ物体表現ニューラルネットワークシステムの画像フレームデコーダニューラルネットワークを示す図である。
【
図4】ビデオ物体表現ニューラルネットワークシステムのデコーダによって実行される復号プロセスの概略図である。
【
図5】システムを使用してビデオ物体ニューラルネットワークを訓練するための例示的なプロセスの流れ図である。
【
図6】ビデオ物体表現ニューラルネットワークシステムの訓練されたエンコーダ部分を使用して物体特性を取得するためのプロセスの流れ図である。
【
図7】ビデオ物体表現ニューラルネットワークシステムの訓練されたデコーダ部分を使用して画像のシーケンスを生成するためのプロセスの流れ図である。
【
図8】ビデオ物体表現ニューラルネットワークシステムおよび2つの他のニューラルネットワークモデルによって実行されるビュー合成タスクの比較を示す図である。
【発明を実施するための形態】
【0042】
様々な図面における同様の参照番号および名称は、同様の要素を示す。
【0043】
図1は、1つまたは複数の位置における1つまたは複数のコンピュータによって実装されてもよいビデオ物体表現ニューラルネットワークシステム100を概略的に示す。ビデオ物体表現ニューラルネットワークシステム100は、画像(フレーム、寸法H×Wピクセル)の入力シーケンスから潜在変数を推論するように訓練された推論ネットワーク(エンコーダ102)と、エンコーダ102によって生成された潜在変数を復号してピクセル値(すなわち、画像)を生成するように訓練された生成モデル(デコーダ120)とを備える。エンコーダ102は、安定した物体追跡を可能にする空間時間アテンションベースの推論を使用する。デコーダ120は、所与のシーケンスの物体潜在変数を異なるシーケンスのフレーム潜在変数と組み合わせて、同じシーンコンテンツ(すなわち、物体およびその特性、相対再配置、およびセグメント化割当て)の一貫したレンダリングを全体的に異なる視点から生成することができる。
【0044】
具体的には、エンコーダ102は、入力画像シーケンスを処理し、画像シーケンスにおいて示されるコンテンツを表すK個の物体(またはスロット)潜在変数
【0045】
【0046】
のセットを生成するように訓練される。実装形態では、物体潜在変数は、入力104におけるすべてのフレームにわたって不変である。すなわち、物体潜在変数の分布は、経時的に一定であり、シーケンス全体にわたって情報を要約することが期待される。
【0047】
エンコーダ102はまた、入力シーケンスにおいて各フレームtについてフレーム潜在変数を含むT個のフレーム潜在変数
【0048】
【0049】
のセットを出力する。フレーム潜在変数は、入力画像シーケンスにわたる時変グローバルコンテンツ/ビューコンテンツを表す。重要なことには、エンコーダ102は、シーンシーケンスを教師なしで物体潜在変数およびフレーム潜在変数に分解し因数分解する。
【0050】
潜在空間をK個の物体潜在変数およびT個のフレーム潜在変数に因数分解することによって、ビデオシーケンスを表すのに必要な潜在変数の数は、K*TからK+Tに低減させることができる。潜在変数の前提は、物体潜在変数、フレーム潜在変数、および特徴次元間の独立を仮定することができ、たとえば、p(O,F)=ΠkN(ok|O,I)ΠtN(ft|0,I)として定義されてもよく、ここで、N(0,I)は単位ガウスを示す。
【0051】
エンコーダ102は、T個の画像フレームx1~xt(各々が寸法H×Wピクセルを有する)のシーケンスXを入力104として受信する。シーケンスは、複数の視点から得られたシーンの画像のシーケンスであってもよい。上述のように、入力104が処理されて、対応する物体(またはスロット)潜在変数Oおよびフレーム潜在変数Fが判定される。ガウス近似事後確率q(O,F|X)はエンコーダ104εφ(X)の出力としてパラメータ化される(φは、エンコーダのパラメータを示す)。エンコーダ104は、たとえば、入力シーケンス104を仮定すると、すべての潜在変数について対数スケール上の平均および分散(たとえば、標準偏差)を定義する値を出力する。
【0052】
より詳細には、フレーム104のシーケンスが処理されて、T個の画像フレームの各々についてS個の空間エンコーディングのセットを含む出力107が取得される。出力107におけるS個の空間エンコーディングの各々は、特定の画像フレームxに関連付けられ、画像フレームのそれぞれの領域のエンコーディングである。Sは、H×Wに等しくてもよい。すなわち、各領域は個々のピクセルであってもよい。
【0053】
たとえば、フレーム104のシーケンスを処理してT個の画像フレームの各々についてS個の空間エンコーディングのセットを生成することは、特徴抽出ニューラルネットワーク106によって画像フレームの各々を処理することを含んでもよく、特徴抽出ニューラルネットワーク106は、複数の特徴抽出ニューラルネットワークパラメータを有し、画像フレームを入力として受信し、その画像フレームについてのS個の空間エンコーディングのセットを出力として提供するように訓練される。たとえば、特徴抽出ニューラルネットワーク106は、各時間ステップにおいてS個の空間特徴マップを出力するように訓練された1つまたは複数の畳み込みニューラルネットワーク層を有する畳み込みニューラルネットワークを備えてもよい。各特徴マップは、C個のチャネルを含んでもよい。Sは、物体潜在変数Kの数よりも大きくてもよい。
【0054】
S×T個の空間エンコーディングの出力107は、1つまたは複数の自己アテンション層を含む自己アテンションニューラルネットワーク108への入力としてもたらされる。アテンションニューラルネットワーク108は、自己アテンション機構を適用してK個の変換された空間エンコーディングのグループを含む出力109を生成することによって、S×T個の空間エンコーディングのグループを処理するように訓練される。たとえば、S×T個の空間エンコーディングのグループを、層入力としての1つまたは複数の自己アテンション層の第1の層への入力として与え、その層によって処理して空間エンコーディングの各々についてのクエリおよびキー値対を生成してもよい。自己アテンション機構は次いで、クエリをキー値対に適用して、変換された空間エンコーディングのグループを判定してもよい。自己アテンションニューラルネットワークパラメータは、クエリおよびキー値対を生成するために層入力に適用される学習された変換のパラメータであることが諒解されよう。
【0055】
各変換された空間エンコーディングは、画像フレーム時間tおよび画像フレーム領域に対応する。アテンションニューラルネットワーク108の出力109は
【0056】
【0057】
と示されてもよい。
【0058】
出力109は、潜在分布生成器110に提供される。潜在分布生成器110は、別個の軸に沿って出力109を集約してT個のフレーム事後確率パラメータおよびK個の物体事後確率パラメータを取得するように構成される。具体的には、K個の物体潜在変数Oのセットにおける各物体潜在変数について、物体潜在変数の物体潜在分布をパラメータ化する1つまたは複数の値が、画像フレームの時間にわたってアテンションニューラルネットワーク108の出力109を集約することによって判定される。同様に、T個のフレーム潜在変数Fのセットにおける各フレーム潜在変数について、フレーム潜在変数のフレーム潜在分布をパラメータ化する1つまたは複数の値が、画像フレームの領域にわたってアテンションニューラルネットワーク108の出力109を集約することによって判定される。
【0059】
分布生成器は、多層パーセプトロン(MLP)などの1つまたは複数のニューラルネットワークを備えてもよい。たとえば、第1のMLPmlpOは、出力109を処理して、画像の時間にわたって集約された出力109を入力として受信し、物体潜在分布
【0060】
【0061】
を出力するように訓練され得る。同様に、第2のMLPmlpfは、出力109を処理して、画像の領域にわたって集約された出力109を入力として受信し、フレーム潜在分布
【0062】
【0063】
を出力するように訓練され得る。
【0064】
潜在分布生成器110は、物体潜在変数についての物体潜在分布からのサンプリングによって、物体潜在変数のセットにおける各物体潜在変数の値を判定し、K個の物体潜在変数
【0065】
【0066】
のセットを含む出力112を生成するように構成される。ここで、
【0067】
【0068】
は物体潜在平均を示し、
【0069】
【0070】
は物体潜在標準偏差を示す。潜在分布生成器110はまた、フレーム潜在変数についてのフレーム潜在分布からのサンプリングによって、フレーム潜在変数のセットにおける各フレーム潜在変数の値を判定し、T個のフレーム潜在変数
【0071】
【0072】
のセットを含む出力114を生成するように構成される。ここで、
【0073】
【0074】
はフレーム潜在平均を示し、
【0075】
【0076】
はフレーム潜在標準偏差を示す。
【0077】
アテンションニューラルネットワーク108は、第1の1つまたは複数の自己アテンション層T1と第2の1つまたは複数の自己アテンション層T2とを備えてもよい。第1の1つまたは複数の自己アテンション層T1および第2の1つまたは複数の自己アテンション層T2は、トランスフォーマニューラルネットワークサブシステムを備えてもよい。一般に、トランスフォーマネットワークサブシステムは、連続する自己アテンションニューラルネットワーク層を有することを特徴とするサブシステムであってもよい。自己アテンションニューラルネットワーク層は、入力の各要素についてアテンション層入力を有し、アテンション層入力に対してアテンション機構を適用して、入力の各要素についてアテンション層出力を生成するように構成される。使用されてもよい多数の異なるアテンション機構がある。
【0078】
一般に、アテンション層は、現在の入力シーケンスにおける各入力位置において学習されたクエリ線形変換を各隠れ状態に適用して、各入力位置についてのそれぞれのクエリを生成し、学習されたキー線形変換を(i)各入力位置における各隠れ状態、ならびに(ii)エピソードメモリおよび圧縮メモリ内の各スロットにおける各隠れ状態に適用して、各入力位置および各メモリスロットについてのそれぞれのキーを生成し、学習された値線形変換を(i)各入力位置における各隠れ状態、ならびに(ii)エピソードメモリおよび圧縮メモリ内の各スロットにおける各隠れ状態に適用して、各入力位置および各メモリスロットについてのそれぞれの値を生成するように構成される。その場合、アテンション層は、これらのクエリ、キー、および値を使用して上述のアテンション機構を適用して、層入力シーケンスについての出力シーケンスを判定する。出力シーケンスは一般に、各入力位置における各隠れ状態入力についてそれぞれの注意されるベクトルを含む。一般に、クエリ、キー、および値はすべてベクトルである。本明細書では、「学習された」という用語は、システムの訓練の間に、たとえば、目的関数の勾配の誤差逆伝播によって、動作または値が調整されたことを意味する。
【0079】
いくつかの実装形態では、アテンション層が異なる位置におけるそれぞれに異なる表現部分空間からの情報に共同で注意するのを可能にするために、アテンション層はマルチヘッドアテンションを使用する。
【0080】
マルチヘッドアテンションを実装するために、アテンション層は、h個の異なるアテンション機構を並列に適用する。言い換えれば、アテンション層は、h個の異なるアテンション副層を含み、同じアテンション層内の各アテンション副層が、同じ元のクエリ、元のキー、および元の値を受信する。
【0081】
各アテンション副層は、学習された線形変換を使用して元のクエリ、キー、および値を変換し、次いで、変換されたクエリ、キー、および値にアテンション機構を適用するように構成される。各アテンション副層は一般に、同じアテンション層における各他のアテンション副層から異なる変換を学習することになる。
【0082】
具体的には、各アテンション副層は、学習されたクエリ線形変換を各元のクエリに適用して各元のクエリについて層固有のクエリを生成し、学習されたキー線形変換を各元のキーに適用して各元のキーについて層固有のキーを生成し、学習された値線形変換を各元の値に適用して各元の値について層固有の値を生成するように構成される。その場合、アテンション副層は、これらの層固有のクエリ、キー、および値を使用して上述のアテンション機構を適用して、アテンション副層についての初期出力を生成する。
【0083】
T1は、S×T個の空間エンコーディングを入力として受信し、S×T個の変換された空間エンコーディングを出力してもよい。S×T個の空間エンコーディングの各々は、S×T個の空間エンコーディングのうちのすべての他の空間エンコーディングに注意する。S×TがKよりも大きい場合、S×T個の変換された空間エンコーディングがK×T個の変換された空間エンコーディングに低減されてもよい。たとえば、T1からのS×T個の変換された空間エンコーディング出力が、出力に対してプーリング演算を実行するプーリング層に入力されてもよい。T1の出力(または低減された出力)がT2への入力として提供され、T2は出力109に対して訓練される。T2の出力は、T2に入力されるスロットと同じ数のスロットを含んでもよい。たとえば、T1の出力がプーリングの前にS個のスロットを含み、プーリングの後にK個のスロットを含む場合、T2の出力は、K個のスロットを含んでもよい。
【0084】
T1およびT2の各々は、絶対的な位置埋め込みを使用してもよい。位置埋め込みは、3次元であり、各スロットの空間時間位置を示してもよい。代替実装形態では、T1およびT2は、相対位置埋め込みを使用してもよい。
【0085】
デコーダ120は、複数のデコーダニューラルネットワークパラメータを備え、物体潜在変数Oおよびフレーム潜在変数Fを含む入力を処理し、生成された画像シーケンスを出力として生成するように訓練される。
【0086】
画像は、デコーダ120に「問い合わせる」ことによって復号/生成される。デコーダ120は、物体潜在変数およびフレーム潜在変数(たとえば、サンプリングされた潜在変数112、114)を含む入力122を受信し、入力122を処理して、1つまたは複数の時間ステップについての画像フレームの復号されたシーケンスを含む出力124を生成する。たとえば、出力124は、連続する復号された画像フレーム時間ステップの各時間ステップについての画像フレームを含んでもよい。
【0087】
潜在変数のセットから画像を生成することのできる多数のタイプのデコーダがあり、これらのデコーダのうちのいずれが使用されてもよい。一例では、デコーダ120は、ニューラルネットワークであり、多層パーセプトロンまたは畳み込みニューラルネットワークであってもよい。入力122は、物体潜在変数およびフレーム潜在変数に加えて、生成すべき画像の領域および復号中の時間ステップをさらに含んでもよい。
【0088】
復号される領域は、たとえば個々のピクセルであってもよい。画像フレームのシーケンスを復号することは、各復号される画像フレームの各ピクセルおよび各復号される画像フレーム時間ステップについて、デコーダが、物体潜在変数の値、フレーム潜在変数の値、ピクセルの位置を指定する情報、および時間ステップを指定する情報を含む入力を処理することを含んでもよい。デコーダは、ピクセルおよび時間ステップについて、入力における物体潜在変数の各々のピクセル分布のパラメータを判定する。デコーダは、さらに物体潜在変数の各々についてのピクセル分布を組み合わせて結合ピクセル分布を判定してもよく、結合ピクセル分布からのサンプリングを行ってピクセルおよび時間ステップの値を判定してもよい。
【0089】
たとえば、各ピクセルは、K個のコンポーネントを有するガウス混合モデルとしてモデル化されてもよい。すべての領域およびすべてのフレームが独立していると仮定される場合、任意のRGBピクセルxt,i(1≦i≦HW)についての混合重みが、どの物体kがそのピクセルを「説明する」かをキャプチャしてもよい。対応する混合重み
【0090】
【0091】
およびピクセル再構成平均μk,t,iは、デコーダ120を使用して特定の時間ステップtおよび特定のピクセル位置liにおけるあらゆるスロットkについて計算されてもよい。
【0092】
【0093】
この場合、デコーダ120を個々のピクセルに作用するように制約することによって、有利には、完全な画像ではなくピクセルのサブセットを訓練ターゲットとして使用するので、メモリおよび計算が節約され得る。ピクセルが復号された後、たとえば、K個のスロットにわたってマスクロジットのソフトマックスを取ることによって混合重み
【0094】
【0095】
が取得され得る
【0096】
【0097】
。
【0098】
【0099】
数式(2)は、全ピクセル尤度を指定し、ここで、σxはスカラハイパーパラメータである。
【0100】
時間tについて入力124を生成する際に、
図4に概略的に示すように、復号中の時間ステップについて、物体潜在変数Oがフレーム潜在変数f
tと連結されてもよい。
図4は、時間tについて単一の画像フレームを復号するプロセスを概略的に示す。
図4では、フレーム潜在変数f
tがフレーム潜在変数
O1 . . . kの各々と連結される。連結された潜在変数が各位置liについてサンプリングされて、各ピクセルがレンダリングされ、ピクセル混合モデルが生成される。物体潜在変数と連結されたフレーム潜在変数は、物体潜在変数が推論された入力シーケンスと同じ入力シーケンスから推論されてもよい。代替として、フレーム潜在変数は、異なる入力シーケンスから得られてもよい。このようにして、1つの入力シーケンスからのグローバル/ビューコンテンツ(照明およびカメラポーズなど)が異なる入力シーケンスに転送されてもよい。
【0101】
例示的な実装形態では、システム100を使用して新規の表現を生成してもよい。たとえば、システム100は、ビデオシーケンス104における1つもしくは複数の物体または1つもしくは複数の物体についての物体特性を定義し得る条件付け入力を条件とするビデオ画像シーケンスを生成するように訓練されてもよい。たとえば、条件付け入力は、生成されたビデオ画像シーケンス124に含める物体を定義してもよく、かつ/または物体の特性を定義してもよい。代替または追加として、条件付け入力は、静的なまたは変化する視点位置または向きを定義してもよい。前提条件は、シーンにおける物体について学習されてもよい。たとえば、ニューラルネットワーク(たとえば、回帰型ニューラルネットワーク)を使用して、シーンにおける物体および連続するフレーム潜在について前提条件を学習してもよい。
【0102】
追加として、上述の例示的な実装形態は、物体潜在変数とフレーム潜在変数の両方を判定するが、物体潜在変数とフレーム潜在変数の両方を判定および/または出力することは必要とされないことを理解されたい。たとえば、エンコーダ102およびデコーダ120は、フレーム潜在変数を符号化/推論するのではなく、グランドトゥルース視点/カメラポーズに直接条件付けられてもよい。すなわち、ニューラルネットワーク100は、完全に教師なしで動作するのではなく、「ビュー教師あり」であってもよい。そのようなビュー教師あり手法の他のビュー教師ありモデルとの比較については、
図7に示されており、以下においてより詳細に説明される。ビュー教師ありシステムでは、復号の間、デコーダには新規の視点(すなわち、訓練中にはシステムに与えられなかった視点)が与えられて、見えない視点からのビューを生成してもよい。
【0103】
図5は、ビデオ物体表現ニューラルネットワークシステムを訓練するための例示的な方法の流れ図であり、このビデオ物体表現ニューラルネットワークシステムは、ビデオ物体表現ニューラルネットワークシステム100に従って構成されてもよい。
【0104】
第1のステップ502において、ビデオシーケンス(ビデオシーケンス104など)が取得される。ビデオシーケンスは、連続する時間tの各々において1つのT個の画像フレームのシーケンスを含む。ステップ504において、(たとえば、特徴抽出ネットワーク106によって)ビデオシーケンスにおける各画像フレームが処理され、T個の画像フレームの各々についてS個の空間エンコーディングのセットが生成され、それによって、ビデオシーケンスについてのS×T個の空間エンコーディングのグループが生成される。
【0105】
ステップ506において、自己アテンションニューラルネットワークにより、S×T個の空間エンコーディングのグループを含む層入力(層入力107など)に対して(たとえば、自己アテンションネットワーク108によって)自己アテンション機構を適用して、変換された空間エンコーディングのグループを含む出力(出力109など)を生成することによって、S×T個の空間エンコーディングのグループが処理される。各変換された空間エンコーディングは、取得されたビデオシーケンスにおける画像フレームおよび画像フレーム領域に対応する。層入力に対して自己アテンション機構を適用することは、取得されたビデオシーケンスのそれぞれに異なる画像フレームの空間エンコーディングに対して自己アテンション機構を適用することを含む。
【0106】
ステップ508において、物体潜在変数Oのセットの各物体潜在変数について、画像フレームの時間にわたって変換された空間エンコーディングのグループを集約することによって、物体潜在変数の物体潜在分布をパラメータ化する1つまたは複数の値が判定される。
【0107】
ビデオ物体表現ニューラルネットワークシステムがフレーム潜在変数を推論する場合、任意のステップ510において、フレーム潜在変数Fのセットにおける各フレーム潜在変数について、画像フレームの領域にわたって変換された空間エンコーディングのグループを集約することによって、フレーム潜在変数のフレーム潜在分布をパラメータ化する1つまたは複数の値が判定されてもよい。代替として、上述のように、エンコーダは代わりに、直接視点を条件としてもよい。
【0108】
ステップ512において、物体潜在変数についての物体潜在分布からのサンプリングによって、物体潜在変数のセットにおける各物体潜在変数の値が判定される。
【0109】
ビデオ物体表現ニューラルネットワークシステムがフレーム潜在変数を推論する場合、任意のステップ514において、フレーム潜在変数についてのフレーム潜在分布からのサンプリングによって、フレーム潜在変数のセットにおける各フレーム潜在変数の値が判定されてもよい。代替として、上述のように、エンコーダは、フレーム潜在変数を推論しなくてもよく、その場合、フレーム潜在分布は推論されない。
【0110】
ステップ516において、画像フレームの復号されたシーケンスが生成される。すなわち、物体潜在変数の判定された値(および適宜フレーム潜在変数の任意の判定された値)が(たとえば、デコーダ120によって)処理されて、画像フレームの復号されたシーケンス(たとえば、出力124)が生成される。
【0111】
実装形態では、システムは、画像フレームデコーダニューラルネットワーク、自己アテンションニューラルネットワーク、および特徴抽出ニューラルネットワークを介して目的関数の勾配を誤差逆伝播させることによって訓練される。サンプリングステップを介した誤差逆伝播は、いわゆるリパラメタライゼーショントリック(re-parameterization trick)(Kingmaら、arXiv1312.6114)を伴ってもよい。
【0112】
ステップ518において、システムは、少なくとも自己アテンションニューラルネットワークパラメータの値をi)T個の画像フレームのシーケンスと画像フレームの復号されたシーケンスとの差の尺度、ii)物体潜在分布の各々と以前の物体潜在分布との差、および場合によっては(すなわち、フレーム潜在変数が生成される場合)iii)フレーム潜在分布の各々と以前のフレーム潜在分布との差に応じて、目的関数を最適化するように調整することによって訓練される。
【0113】
訓練は誤差逆伝播を含んでもよい。具体的には、訓練は、画像フレームの復号されたシーケンスを生成するデコーダニューラルネットワーク(たとえば、出力124を生成するデコーダ120)および自己アテンションニューラルネットワーク(たとえば、自己アテンションネットワーク108)を介して目的関数の勾配を誤差逆伝播させることを含んでもよい。目的関数の勾配は、空間エンコーディングのセットを生成する特徴抽出ニューラルネットワーク(たとえば、特徴抽出ネットワーク106)を介してさらに誤差逆伝播されてもよい。しかし、システム100におけるネットワーク(たとえば、特徴抽出ニューラルネットワークなど)を別々に訓練してもよいことが諒解されよう。
【0114】
目的関数(最小化する)は、負の下限であってもよく、たとえば、数式(3)において定義されるような証拠の下限(ELBO)であってもよい。
【0115】
【0116】
上式において、α、βo、およびβfは、それぞれの重みであり、qはエンコーダ102を表し、pはデコーダ120を表し、DKLは、カルバックライブラーダイバージェンスなどの分布の差のメトリックである。
【0117】
すなわち、データ対数尤度が復号されたピクセル(TdHdWd)の数によって正規化されて、すべての入力ピクセルよりも少ない数のピクセルを復号することが可能になる。有利には、このことは、隣接するピクセル間で一般的な相関に起因して学習信号を低減させることなくデコーダのサイズをスケーリングする助けになる。1/TdHdWdだけ正規化すると、いくつのピクセルを復号するかの選択にかかわらず学習ダイナミクスを一貫させるのが容易になることがわかっている。αを1に設定してもよいが、たとえば、βoおよびβfのスケールが小さすぎて数値的に安定しない場合に調整してもよい。例示的な実装形態は、βo=βfを使用している。
【0118】
ステップ518においてシステムを訓練することはまた、特徴抽出ニューラルネットワーク106などの特徴抽出ニューラルネットワークの特徴抽出ニューラルネットワークパラメータの値を調整することを含んでもよい。ステップ518においてシステムを訓練することは、または代替として、デコーダニューラルネットワーク120などのデコーダニューラルネットワークのデコーダニューラルネットワークパラメータの値を調整することを含んでもよい。
【0119】
訓練後、システムのデコーダ部分またはエンコーダ部分のいずれかが独立に使用されてもよい。たとえば、システムのエンコーダ部分を使用して、物体潜在変数、または物体潜在分布をパラメータ化する値、たとえば、分布の平均から、ビデオシーケンスに示される1つまたは複数の物体の1つまたは複数の特性を取得してもよい。物体のサイズ、色、触感、1D、2D、もしくは3Dにおける位置、または動きなどの特性を取得してもよい。同様に、訓練後、ビデオ物体表現ニューラルネットワークシステム、より具体的には、エンコーダ部分のみを使用して、フレーム潜在変数またはフレーム潜在分布をパラメータ化する値から、ビデオシーケンスのフレームの1つまたは複数のグローバル特性、たとえば、ビデオシーケンスについての(変化する)視点の位置または向き、たとえば、ポーズを取得してもよい。
【0120】
図6は、ビデオシーケンスに示される1つまたは複数の物体の1つまたは複数の特性を取得するための例示的なプロセスを示すフローチャートである。ステップ602において、ビデオシーケンス(ビデオシーケンス104など)が取得される。ビデオシーケンスは、連続する時間tの各々において1つのT個の画像フレームのシーケンスを含む。
【0121】
ステップ604において、たとえば、訓練された特徴抽出ネットワーク106によってビデオシーケンスにおける各画像フレームが処理されて、T個の画像フレームの各々についてのS個の空間エンコーディングのセットが生成され、それによって、ビデオシーケンスについてのS×T個の空間エンコーディングのグループが生成される。
【0122】
ステップ606において、訓練された自己アテンションニューラルネットワークにより、S×T個の空間エンコーディングのグループを含む層入力(層入力107など)に対して(たとえば、自己アテンションネットワーク108によって)自己アテンション機構を適用して、変換された空間エンコーディングのグループを含む出力(出力109など)を生成することによって、S×T個の空間エンコーディングのグループが処理される。各変換された空間エンコーディングは、取得されたビデオシーケンスにおける画像フレームおよび画像フレーム領域に対応する。層入力に対して自己アテンション機構を適用することは、取得されたビデオシーケンスの異なる画像フレームの空間エンコーディングに対して自己アテンション機構を適用することを含む。
【0123】
ステップ608において、物体潜在変数Oのセットにおける各物体潜在変数について、画像フレームの時間にわたって変換された空間エンコーディングのグループを集約することによって、物体潜在変数の物体潜在分布をパラメータ化する1つまたは複数の値が判定される。
【0124】
ステップ610において、物体潜在変数についての物体潜在分布からのサンプリングによって、物体潜在変数のセットにおける各物体潜在変数の値が判定される。
【0125】
ステップ612において、物体潜在変数のセットにおける各物体潜在変数についての判定された値を使用してビデオシーケンスに示された1つまたは複数の物体の1つまたは複数の特性が取得される。
【0126】
ビデオ物体表現ニューラルネットワークシステムがフレーム潜在変数を推論する場合、任意のステップ614において、フレーム潜在変数についてのフレーム潜在分布からのサンプリングによって、フレーム潜在変数のセットにおける各フレーム潜在変数の値が判定されてもよい。代替として、上述のように、エンコーダはフレーム潜在変数を推論しなくてもよく、その場合、フレーム潜在分布は推論されない。
【0127】
図6は、物体潜在変数の判定に関して表されているが、この方法が、代替または追加として、フレーム潜在変数を判定してビデオシーケンスのフレームの1つまたは複数のグローバル特性を判定することを含んでもよいことが諒解されよう。
【0128】
別の例では、ビデオシーケンス入力から物体(および場合によっては、フレーム)潜在分布を判定するように構成された部分までのシステムの部分である、システムのデコーダ部分のみが必要とされる場合がある。エンコーダ部分は、場合によっては、これらの分布からサンプリングを行うように構成された部分を含んでもよい(他の実装形態では、たとえば、これらの分布の平均から情報が導出されてもよい)。いくつかの適用例では、訓練後、たとえば、2Dまたは3D画像のビデオシーケンスを生成するために、システムの訓練されたデコーダ部分のみが必要とされることがある。
図7は、訓練されたビデオ生成ニューラルネットワークシステムを使用してビデオシーケンスを生成するための例示的なプロセスを示す流れ図である。ステップ702において、物体潜在変数のセットにおける各物体潜在変数の値が、物体潜在変数についてのそれぞれの以前の物体潜在分布からのサンプリングによって判定される。ステップ702の後、各生成された画像フレームの各ピクセルおよび各生成された画像フレーム時間ステップについて、ステップ704、706、および708が実行される。ステップ704において、訓練されたデコーダニューラルネットワークが、物体潜在変数の判定された値、ピクセルの位置を指定する情報、および時間ステップを指定する情報を処理して、ピクセルおよび時間ステップについて、物体潜在変数の各々についてのピクセル分布のパラメータを判定する。ステップ706において、訓練されたデコーダニューラルネットワークは、物体潜在変数の各々についてのピクセル分布を組み合わせて結合ピクセル分布を判定する。ステップ706における処理は、物体潜在変数の判定された値、ピクセルの位置を指定する情報、および時間ステップを指定する情報を処理して、ピクセルおよび時間ステップについて、物体潜在変数の各々についての混合重みを判定し、それぞれの混合重みによって重み付けされた各物体潜在変数についてのピクセル分布を組み合わせて、結合ピクセル分布を判定することをさらに含んでもよい。ステップ708において、訓練されたデコーダニューラルネットワークは、結合ピクセル分布からのサンプリングを行って時間ステップにおけるピクセルの値を判定する。
【0129】
ビュー教師ありビデオ物体表現ニューラルネットワークの一例を実験的に同様のモデルGQN(Eslami SMAら、「Neural scene representation and rendering.」、Science.、2018年6月15日、360(6394)、1204~1210頁、doi:10.1126/science.aar6170. PMID:29903970)およびNeRF(arXiv:2003.08934)と比較した。
【0130】
図8は、ビデオ物体表現ニューラルネットワークのビュー教師ありバージョン(
図8ではSIMONeと示されている)NeRF-VAEとGQNとの間のシーン表現およびビュー内挿機能の比較を示す。すべてのモデルは、フレームの所与のシーケンスから手順に従って生成された「プレイルーム」データセットを部分的に観測する(モデルに供給された16個の入力フレームのうちの4つが視覚化されている)。部屋の中の円形軌跡上に新規のビューが復号され、ヨーが[-π,π]において線形に離隔されている。NeRF-VAEがほとんどの物体構造を保持しておらず、シーン内のほぼすべての物体がぼやけているのがわかる。しかし、NeRFは、生成された部屋の形状を理解し、壁の色を推論することができる。GQNは、より詳細な再構成を行うが、特定のビューを過学習しており、円滑に内挿していない。GQNはコンテンツを幻視している。一方、SIMONeは、微細な物体構造の鮮明な再構成を行っている。SIMONeは、物体を遠くから観測するときでも、またはすぐ近くで観測するときでも、物体を正しくまったく新規のビューに配置し定寸する。これによって、SIMONeは、多様な例にわたってシーン構造をキャプチャすることが優先されるときにNeRF-VAEおよびGQN方式モデルに対する有力な選択肢となる。SIMONeはまたシーンをセグメント化する。
【0131】
入力シーケンスを処理して物体潜在変数のみまたはフレーム潜在変数のみを判定して出力するビデオ物体表現ニューラルネットワークが設けられてもよいことが諒解されよう。
【0132】
別の実験では、教師なしビデオ物体表現ニューラルネットワーク(物体潜在変数とフレーム潜在変数の両方を推論する)を他の視点無意識教師なし手法と比較した。Table 1(表1)は、
図1を参照しながら説明したビデオ物体表現ニューラルネットワーク(Table 2(表2)ではSIMONeと示されている)の(前景物体についての調整済みランド指数に関する)セグメント化性能を、MONet(arXiv:1901.11390)、スロットアテンション(SA)(arXiv:2006.15055)、およびビデオモデル(S-IODINE)と比較したものを示す。静的(S)ARI-Fスコアおよびビデオ(S)ARI-Fスコアを別々に計算した。静的ARI-Fについては、静止画像ごとにモデルを評価した。ビデオARI-Fについては、物体の全軌跡を単一のクラスと見なして、空間および時間にわたってモデルを評価した。したがって、ビデオARI-Fは、物体を安定して追跡できないモデルにペナルティを科す。このことは特にスロットアテンションに当てはまる。その理由は、スロットアテンションは、シーケンスにおける各フレームについて任意の順序で物体を出力する傾向があるからである。
【0133】
【0134】
Table 2(表2)は、システム100用の例示的な2つのあり得るアーキテクチャを示す。Table 1(表1)に示されているアーキテクチャが限定を目的としたものではなく、あり得るアーキテクチャの例示として与えられているにすぎないことが諒解されよう。Table 1(表1)において、cはチャネルの数であり、kはカーネルサイズであり、sはストライドであり、Pos. MPLは、位置エンコーディングに適用される多層パーセプトロンである。MLP([m, n])は、それぞれ各層においてm単位およびn単位を有する2層MLPを指し、GRUはゲート付き回帰型ユニットである。
【0135】
【0136】
実験では、物体潜在変数およびフレーム潜在変数を使用してより優れたピクセル再構成を可能にするそれぞれに異なる方法を調査した。初期実験では、サンプリングされた物体潜在変数Okおよびフレーム潜在変数ftを、デコーダ(実験では、畳み込みデコーダ)に提供する前に、すべてのピクセルおよび時点にわたって空間的にコピーしタイリングした。しかし、独立したサンプルを採って、畳み込みデコーダスタックを適用する前にデコーダの第1段階をシードすることが可能であることが判明した。加えて、適宜経時的に独立してサンプリングを行うと有利であることがわかった。要するに、(すべてのピクセルI=64・64および時間フレームTについて独立に)サンプルOk,i,t~q(Ok|X)を採り、(すべてのスロットKおよびすべてのピクセルI=64・64について独立に)fk,i,t~q(ft|X)を採った。これによって、特に訓練の早期において性能が向上することがわかった。
【0137】
理論によって拘束されることは望むものではないが、上記のことは、シーケンスにおけるすべての空間/時間にわたって同じサンプルOkおよびftをコピーすることに伴う勾配バイアスの低減に起因し得る。複数の独立したサンプルを採ることはレギュラライザとして働く。
【0138】
(訓練された)ビデオ物体表現ニューラルネットワークシステム、より具体的には、エンコーダ部分のみを使用して、物体潜在変数、または物体潜在分布をパラメータ化する値、たとえば、分布の平均から、ビデオシーケンスに示されている1つまたは複数の物体の1つまたは複数の特性を取得してもよい。物体のサイズ、色、触感、1D、2D、または3Dにおける位置、動きなどの特性を取得してもよい。同様に、(訓練された)ビデオ物体表現ニューラルネットワークシステム、より具体的には、エンコーダ部分のみを使用して、フレーム潜在変数またはフレーム潜在分布をパラメータ化する値から、ビデオシーケンスのフレームの1つまたは複数のグローバル特性、たとえば、ビデオシーケンスの特定のフレームにおけるポーズを取得してもよい。
【0139】
(訓練された)ビデオ物体表現ニューラルネットワークシステム、より具体的には、エンコーダ部分のみを、判定された潜在変数を用いて画像分類に使用してもよい。たとえば、判定された物体潜在変数または物体潜在分布をパラメータ化する値のうちの1つまたは複数を1つまたは複数の分類器ニューラルネットワーク層への入力として提供してもよい。多くの画像分類器があり、任意の適切なモデルが使用されてもよい。より一般的には、ビデオ物体表現ニューラルネットワークシステムは、エンティティを特徴付ける任意の適切なニューラルネットワーク出力を生成するように構成することができる。たとえば、ニューラルネットワーク出力は、(たとえば、あり得る範疇のセットにおける各範疇についてのスコアを定義する)分類出力、回帰出力、シーケンス出力(すなわち、出力要素のシーケンスを含む)、セグメント化出力、またはそれらの組合せとすることができる。
【0140】
(訓練されたシステムの)判定された潜在変数は、たとえば、ネットワーク入力に対する機械学習タスクを実行する際に使用される、別のシステムへの入力を提供することができる。例示的なタスクには、特徴ベースの検索、クラスタ化、準同一場面検出、検証、特徴点マッチング、ドメイン適応、ビデオベースの弱教師あり学習、およびビデオについて、たとえば、ビデオフレームにわたる物体追跡、ビデオに示されているエンティティによって実行されるジェスチャのジェスチャ認識を含めてもよい。
【0141】
(訓練された)ビデオ物体表現ニューラルネットワークシステム、より具体的にはデコーダ部分のみを使用して、新しい画像フレームの復号されたシーケンスを含む新しいビデオシーケンスを生成してもよい。このことは、物体潜在変数についての以前の物体潜在分布からのサンプリングによって、物体潜在変数のセットにおける各物体潜在変数の値を判定し、フレーム潜在変数についての以前のフレーム潜在分布(以前の物体潜在分布と同じであってもよい)からのサンプリングによって、フレーム潜在変数のセットにおける各フレーム潜在変数の値を判定し、具体的には上述のような画像フレームデコーダニューラルネットワークを使用して判定された値を処理して、新しい画像フレームの復号されたシーケンスを生成することによって実現されてもよい。場合によっては、画像フレームデコーダニューラルネットワークは、前述のような画像フレームデコーダニューラルネットワークへの条件付け入力を条件としてもよく、すなわち、そのような条件付け入力に応じて画像フレームを生成してもよい。
【0142】
ビデオ物体表現ニューラルネットワークシステムの(訓練された)エンコーダ部分を使用して、物体潜在変数およびフレーム潜在変数のセットの値を判定してもよく、次いで、これらの値のうちの1つまたは複数を修正してビデオ物体表現ニューラルネットワークのデコーダに提供して、入力ビデオシーケンスの修正バージョンを生成してもよい。
【0143】
いくつかの実装形態では、訓練後、ビデオ物体表現ニューラルネットワークシステム、より具体的にはエンコーダ部分のみを使用して、エージェントを制御して、環境と対話しつつ特定のタスクを実行してもよい。エージェントは、ロボットまたは自動走行車などの機械的エージェントであってもよく、環境は実世界環境であってもよい。そのような使用方法は、たとえば、連続する時間ステップについて、たとえばビデオシーケンスの連続する画像フレームを取得することによって、環境の現在の状態を特徴付け、観測ビデオシーケンスを含む観測情報を取得することを含んでもよい。次いで、訓練されたビデオ物体表現ニューラルネットワークシステムを使用して、観測ビデオシーケンスを処理して物体潜在分布をパラメータ化する値およびフレーム潜在分布をパラメータ化する値、ならびに場合によっては、物体潜在変数およびフレーム潜在変数を取得してもよい。次いで、制御システムを使用して上記の値を処理して制御出力を生成し、制御システムはそれによって、観測情報からのデータを処理してもよい。観測情報は、潜在変数またはその分布に加えて制御システムに提供されてもよい。制御システムは、たとえば、強化学習システムにおいて、アクション選択ポリシーニューラルネットワークを備えてもよく、制御出力は、アクション選択ポリシー出力を含んでもよい。次いで、エージェントによって実行されるアクションが、観測情報に応じて選択されてもよい。アクションは、制御出力を使用してエージェントによって実施されてもよく、またはエージェントがアクションを実施するための制御出力が提供されてもよい。
【0144】
このことは、エージェントがアクションを実行するためのアクションデータ、および/または制御信号もしくは電子制御データ、たとえば、モータ制御データなどのデータを提供することを含んでもよい。すなわち、制御出力は、アクションデータ、制御信号などを含んでもよい。たとえば、制御出力は、機械的エージェント、たとえばロボットの物理的挙動を制御するための制御信号、たとえば、ロボットの関節用のトルクもしくは上位制御コマンド、または自動走行車を制御するための制御信号、たとえば、車両の要素を制御するためのトルクもしくは上位制御コマンドを含んでもよい。選択されるアクションは、たとえば、ロボットの1つまたは複数の関節または別の機械的エージェントの部品についての位置、速度、または力/トルク/加速度データを定義してもよい。
【0145】
本明細書では、システムおよびコンピュータプログラムコンポーネントに関連して「構成される」という用語を使用する。1つまたは複数のコンピュータのシステムを特定の動作またはアクションを実行するように構成することは、動作時に、そのような動作またはアクションをシステムに実行させるソフトウェア、ファームウェア、ハードウェア、またはそれらの組合せがシステム上にインストールされていることを意味する。1つまたは複数のコンピュータプログラムを特定の動作またはアクションを実行するように構成することは、1つまたは複数のプログラムが、データ処理装置によって実行されたときに、その装置にそのような動作またはアクションを実行させる命令を含むことを意味する。
【0146】
本明細書に記載された主題および機能動作の実施形態は、本明細書において開示された構造およびその構造均等物を含む、デジタル電子回路、有形に具体化されたコンピュータソフトウェアまたはファームウェア、コンピュータハードウェア、またはそれらのうちの1つまたは複数の組合せにおいて実装することができる。本明細書に記載された主題の実施形態は、1つまたは複数のコンピュータプログラム、すなわち、データ処理装置によって実行されるように、またはデータ処理装置の動作を制御するために、有形の非一時的記憶媒体上に符号化されたコンピュータプログラム命令の1つまたは複数のモジュールとして実装されてもよい。コンピュータ記憶媒体は、機械可読記憶デバイス、機械可読記憶基板、ランダムもしくはシリアルアクセスメモリデバイス、またはそれらのうちの1つまたは複数の組合せとすることができる。代替または追加として、人工的に生成された伝播信号、たとえば、データ処理装置によって実行されるように適切な受信機装置に送信される情報を符号化するように生成された、機械によって生成された電気信号、光信号、または電磁信号上に、プログラム命令を符号化することができる。
【0147】
「データ処理装置」という用語は、データ処理ハードウェアを指し、一例として、プログラム可能なプロセッサ、コンピュータ、または複数のプロセッサもしくはコンピュータを含む、データを処理するためのすべての種類の装置、デバイス、および機械を包含する。装置は、専用論理回路、たとえば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)とするか、またはそのような回路をさらに含むことができる。装置は、ハードウェアに加えて、コンピュータプログラム用の実行環境を作成するコード、たとえば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはそれらのうちの1つもしくは複数の組合せを構成するコードを任意に含むことができる。
【0148】
コンピュータプログラムは、プログラム、ソフトウェア、ソフトウェアアプリケーション、アプリ、モジュール、ソフトウェアモジュール、スクリプト、またはコードと呼ばれるかまたは記述されることがあり、コンパイル型もしくはインタプリタ型言語、または宣言型もしくは手続き型言語を含む、任意の形態のプログラミング言語で書くことができる。コンピュータプログラムは、スタンドアロンプログラム、またはモジュール、コンポーネント、サブルーチン、もしくはコンピューティング環境において使用するのに適した他のユニットを含む、任意の形態に展開することができる。プログラムは、ファイルシステムにおけるファイルに対応してもよいが、そうする必要はない。プログラムは、他のプログラムまたはデータを保持するファイルの一部に記憶することができ、たとえば、マークアップ言語ドキュメント、当該のプログラム専用の単一のファイル、または複数の協調ファイル、たとえば、1つまたは複数のモジュール、サブプログラム、またはコードの一部を記憶するファイルに記憶された1つまたは複数のスクリプトとすることができる。コンピュータプログラムは、1つの場所に位置するかまたは複数の場所にわたって分散され、データ通信ネットワークによって相互接続された1つのコンピュータまたは複数のコンピュータ上で実行されるように展開することができる。
【0149】
本明細書では、「データベース」という用語は、広義にデータの任意の集合を指すために使用され、このデータは、任意の特定の方法で構造化されなくてもよく、またはまったく構造化されなくてもよく、記憶デバイス上で1つまたは複数の位置に記憶することができる。したがって、たとえば、インデックスデータベースは、データの複数の集合を含むことができ、各集合が異なるように編成されアクセスされてもよい。
【0150】
同様に、本明細書では、「エンジン」という用語は、広義に、1つまたは複数の特定の機能を実行するようにプログラムされたソフトウェアベースのシステム、サブシステム、またはプロセスを指すために使用される。一般に、エンジンは、1つまたは複数のコンピュータ上で1つまたは複数の位置にインストールされた1つまたは複数のソフトウェアモジュールまたはコンポーネントとして実装される。場合によっては、1つまたは複数のコンピュータが特定のエンジン専用に使用され、他の場合には、複数のエンジンをインストールして、同じコンピュータ上で実行させることができる。
【0151】
本明細書に記載されたプロセスおよび論理フローは、1つまたは複数のコンピュータプログラムを実行して、入力データに作用して出力を生成することによって機能を実施する1つまたは複数のプログラム可能なコンピュータによって実施することができる。プロセスおよび論理フローはまた、専用論理回路、たとえば、FPGAもしくはASIC、または専用論理回路と1つまたは複数のプログラムされたコンピュータの組合せによって実行することができる。
【0152】
コンピュータプログラムを実行するのに適したコンピュータは、汎用マイクロプロセッサもしくは専用マイクロプロセッサまたはその両方、あるいは任意の他の種類の中央演算処理装置に基づくことができる。一般に、中央演算処理装置は、読取り専用メモリもしくはランダムアクセスメモリまたはその両方から命令およびデータを受信する。コンピュータの基本的な要素は、命令を実施または実行するための中央演算処理装置、ならび命令およびデータを記憶するための1つまたは複数のメモリデバイスである。中央演算処理装置およびメモリは、専用論理回路によって補完するか、または専用論理回路に組み込むことができる。一般に、コンピュータはまた、データを記憶するための1つもしくは複数の大容量記憶デバイス、たとえば、磁気ディスク、光磁気ディスク、もしくは光ディスクを含み、または、そのような大容量記憶デバイスからデータを受信し、もしくはそのような大容量記憶デバイスにデータを転送するように、もしくは、その両方を行うように、動作可能に結合される。しかし、コンピュータはそのようなデバイスを有さなくてもよい。さらに、コンピュータは、別のデバイス、たとえば、携帯電話、携帯情報端末(PDA)、モバイルオーディオまたはビデオプレーヤ、ゲームコンソール、全地球測位システム(GPS)受信機、または携帯記憶デバイス、たとえば、ユニバーサルシリアルバス(USB)フラッシュドライブに埋め込むことができ、これらはほんの一部の例にすぎない。
【0153】
コンピュータプログラム命令およびデータを記憶するのに適したコンピュータ可読媒体は、一例として、半導体メモリデバイス、たとえば、EPROM、EEPROM、およびフラッシュメモリデバイス、磁気ディスク、たとえば、内部ハードディスクまたはリムーバブルディスク、光磁気ディスク、ならびにDC ROMディスクおよびDVD-ROMディスクを含む、すべての形態の不揮発性メモリ、媒体、およびメモリデバイスを含む。
【0154】
ユーザとの対話を可能にするために、本明細書に記載された主題の実施形態は、ユーザに情報を表示するためのディスプレイデバイス、たとえば、CRT(陰極線管)またはLCD(液晶ディスプレイ)モニタと、ユーザがコンピュータに入力を提供するのを可能にする、キーボードおよびポインティングデバイス、たとえば、マウスまたはトラックボールとを有するコンピュータ上に実装することができる。他の種類のデバイスを使用して、ユーザとの対話を可能にすることもでき、たとえば、ユーザに提供されるフィードバックは、任意の形態の感覚フィードバック、たとえば、視覚フィードバック、聴覚フィードバック、または触覚フィードバックとすることができ、ユーザからの入力は、音響入力、音声入力、または触覚入力を含む任意の形態で受信することができる。加えて、コンピュータは、ドキュメントを送信し、ユーザによって使用されるデバイスからドキュメントを受信し、たとえば、ウェブブラウザから受信された要求に応答してユーザのデバイス上のウェブブラウザにウェブページを送信することによってユーザと対話することができる。さらに、コンピュータは、テキストメッセージまたは他の形態のメッセージをパーソナルデバイス、たとえば、メッセージングアプリケーションを実行するスマートフォンに送信し、代わりにユーザから応答メッセージを受信することによってユーザと対話することができる。
【0155】
機械学習モデルを実装するためのデータ処理装置はまた、たとえば、機械学習訓練または予測の共通する計算集約部分、すなわち、推論、作業負荷を処理するための専用ハードウェアアクセラレータユニットを含むことができる。
【0156】
機械学習モデルは、機械学習フレームワーク、たとえば、TensorFlowフレームワーク、Microsoft Cognitive Toolkitフレームワーク、Apache Singaフレームワーク、またはApache MXNetフレームワークを使用して実装し展開することができる。
【0157】
本明細書に記載された主題の実施形態は、バックエンドコンポーネントを含むコンピューティングシステムにおいて、たとえばデータサーバとして実装するか、またはミドルウェアコンポーネントを含むコンピューティングシステム、たとえばアプリケーションサーバ、またはフロントエンドコンポーネントを含むコンピューティングシステム、たとえば、ユーザが本明細書に記載された主題の実装形態と対話するのを可能にするグラフィカルユーザインターフェース、ウェブブラウザ、もしくはアプリを有するクライアントコンピュータ、または1つもしくは複数のそのようなバックエンド、ミドルウェア、またはフロントエンドコンポーネントの任意の組合せにおいて実装することができる。システムのコンポーネントは、任意の形態のデジタルデータ通信またはデジタルデータ通信の任意の媒体、たとえば、通信ネットワークによって相互接続することができる。通信ネットワークの例には、ローカルエリアネットワーク(LAN)およびワイドエリアネットワーク(WAN)、たとえば、インターネットが含まれる。
【0158】
コンピューティングシステムは、クライアントおよびサーバを含むことができる。クライアントおよびサーバは一般に、互いに離れており、通常、通信ネットワークを介して対話する。クライアントとサーバの関係は、それぞれのコンピュータ上で実行され、互いにクライアント-サーバ関係を有するコンピュータプログラムによって生じる。いくつかの実施形態では、サーバが、たとえば、クライアントとして働くデバイスと対話するユーザへのデータを表示し、そのようなユーザからのユーザ入力を受信することを目的として、データ、たとえば、HTMLページを、ユーザデバイスに送信する。ユーザデバイスにおいて生成されたデータ、たとえば、ユーザ対話の結果は、デバイスからサーバにおいて受信することができる。
【0159】
本明細書は、多数の特定の実装詳細を含むが、これらは、本発明の範囲または請求され得るものの範囲に対する制限として解釈すべきではなく、むしろ特定の発明の特定の実施形態に固有であり得る特徴の説明として解釈すべきである。本明細書において別々の実施形態の文脈に記載されたいくつかの特徴を単一の実施形態において組み合わせて実装することもできる。逆に、単一の実施形態の文脈に記載された様々な特徴を複数の実施形態において別々に実装するか、または任意の適切なサブコンビネーションにおいて実装することもできる。さらに、上記では、特徴が、いくつかの組合せにおいて作用するものとして記載され、場合によっては、最初からそのように請求されることがあるが、場合によっては、請求された組合せの1つまたは複数の特徴を組合せから削除することができ、請求された組合せをサブコンビネーションまたはサブコンビネーションの変形例に移行させてもよい。
【0160】
同様に、動作が、特定の順序で図面に示され特許請求の範囲に記載されているが、このことは、所望の結果を実現するために、そのような動作を示された特定の順序で実行する必要があるかまたは順番どおりに実行する必要があると理解すべきではなく、また、すべての例示された動作を実行する必要があると理解すべきではない。いくつかの状況では、マルチタスキングおよび並列処理が有利である場合がある。さらに、上述の実施形態における様々なシステムモジュールおよびコンポーネントの分離は、すべての実施形態においてそのような分離が必要になると理解すべきではなく、一般に、説明されたプログラムコンポーネントおよびシステムを単一のソフトウェア製品として一体化するかまたは複数のソフトウェア製品としてパッケージングすることができると理解すべきである。
【0161】
主題の特定の実施形態について説明した。他の実施形態は以下の特許請求の範囲の範囲内である。たとえば、特許請求の範囲に記載されたアクションは、異なる順序で実行することができ、依然として所望の結果を実現することができる。一例として、添付の図面に示されているプロセスは、所望の結果を実現するために、必ずしも示された特定の順序を必要とせず、また、順番どおりに行う必要もない。場合によっては、マルチタスキングおよび並列処理が有利である場合がある。
【符号の説明】
【0162】
100 ビデオ物体表現ニューラルネットワークシステム
102 エンコーダ
104 入力、エンコーダ、入力シーケンス、フレーム、ビデオシーケンス
106 特徴抽出ニューラルネットワーク
107 出力
108 自己アテンションニューラルネットワーク
109 出力
110 潜在分布生成器
112 出力、サンプリングされた潜在変数
114 出力、サンプリングされた潜在変数
120 デコーダ、デコーダニューラルネットワーク
122 入力
124 出力、入力、ビデオ画像シーケンス
T1、T2 自己アテンション層