(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-11
(45)【発行日】2024-10-22
(54)【発明の名称】対照学習を用いたビデオドメイン適応
(51)【国際特許分類】
G06N 3/0895 20230101AFI20241015BHJP
G06N 3/096 20230101ALI20241015BHJP
【FI】
G06N3/0895
G06N3/096
(21)【出願番号】P 2023526672
(86)(22)【出願日】2021-11-09
(86)【国際出願番号】 US2021058622
(87)【国際公開番号】W WO2022103753
(87)【国際公開日】2022-05-19
【審査請求日】2023-05-01
(32)【優先日】2021-11-08
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2020-11-10
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2020-11-13
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2020-11-16
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】504080663
【氏名又は名称】エヌイーシー ラボラトリーズ アメリカ インク
【氏名又は名称原語表記】NEC Laboratories America, Inc.
(74)【代理人】
【識別番号】100123788
【氏名又は名称】宮崎 昭夫
(74)【代理人】
【識別番号】100127454
【氏名又は名称】緒方 雅昭
(72)【発明者】
【氏名】ツァイ、 イ-シューアン
(72)【発明者】
【氏名】ユ、 シアン
(72)【発明者】
【氏名】ズオン、 ビンビン
(72)【発明者】
【氏名】チャンドラカー、 マンモハン
(72)【発明者】
【氏名】キム、 ドンヒュン
【審査官】渡辺 順哉
(56)【参考文献】
【文献】国際公開第2020/091856(WO,A1)
【文献】中国特許出願公開第111598124(CN,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/00-99/00
(57)【特許請求の範囲】
【請求項1】
コンピュータで実施されるビデオ方法であって、
第1のドメインにおけるラベル付けされた第1の訓練データセット及び第2のドメインにおけるラベル付けされていない第2の訓練データセットから、第1のモダリティ及び第2のモダリティの特徴を抽出するステップ(204/206)と、
クロスドメイン正則化部及びクロスモダリティ正則化部を含む損失関数の最適化を含む、前記抽出された特徴に対する対照学習を用いて、ビデオ分析モデルを訓練するステップ(218)と、
を有
し、
前記ビデオ分析モデルを訓練するステップは、前記ラベル付けされていない訓練データセットのための疑似ラベルを生成することを含み、
前記クロスドメイン正則化部は、前記第1の訓練データセットからの第1の訓練データと前記第2の訓練データセットからの第2の訓練データとを比較し、前記第2の訓練データは、第1の訓練データのラベルと一致する擬似ラベルを有し、
前記クロスモダリティ正則化部は、同じドメインにおける異なるキュータイプの特徴を比較するコンピュータで実施される方法。
【請求項2】
前記疑似ラベルは、前記ビデオ分析モデルによって生成される、請求項
1に記載コンピュータで実施される方法。
【請求項3】
前記異なるキュータイプは、外観特徴及びモーション特徴を含む、請求項
1に記載のコンピュータで実施される方法。
【請求項4】
前記第1のドメインは第1の視点から得られたビデオに関連し、前記第2のドメインは第2の異なる視点から得られたビデオに関連する、請求項1に記載のコンピュータで実施される方法。
【請求項5】
V
sをソースドメインにおけるビデオのセットとし、V
tをターゲットドメインにおけるビデオのセットとし、Y
sを前記ソースビデオのラベルとし、
【数1】
を前記ターゲットビデオの疑似ラベルとし、
【数2】
を前記ソースビデオのクロスエントロピー損失とし、
【数3】
を前記ソースビデオのクロスモダリティ損失項とし、
【数4】
を前記ターゲットビデオのクロスモダリティ損失項とし、
【数5】
をクロスドメイン損失項とし、λをバランスパラメータとしたとき、
前記損失関数が、
【数6】
で表される、請求項1に記載のコンピュータで実施される方法。
【請求項6】
前記クロスドメイン損失項は、
【数7】
で表され、
【数8】
は、ポジティブサンプルのための、同じモダリティ及び異なるドメインの特徴間の類似度であり、
【数9】
は、ネガティブサンプルのための、同じモダリティ及び異なるドメインの特徴間の類似度である、請求項
5に記載のコンピュータで実施される方法。
【請求項7】
前記ソースビデオのクロスモダリティ損失項は、
【数10】
で表され、
【数11】
は、ポジティブサンプルのための、異なるモダリティ及び同じドメインの特徴間の類似度であり、
【数12】
は、ネガティブサンプルのための、異なるモダリティ及び同じドメインの特徴間の類似度である、請求項
5に記載のコンピュータで実施される方法。
【請求項8】
コンピュータで実施されるビデオ方法であって、
第1の視点から得られたビデオに関連する、第1のドメインにおけるラベル付けされた第1の訓練データセット、並びに第2の異なる視点から得られたビデオに関連する、第2のドメインにおけるラベル付けされていない第2の訓練データセットから、第1のモダリティ及び第2のモダリティの特徴を抽出するステップ(204/206)と、
前記抽出された特徴に対する対照学習を用いて、ビデオ分析モデルを訓練するステップ(218)と、
前記ビデオ分析モデルを用いて、前記ラベル付けされていない訓練データセットの疑似ラベルを生成するステップ(208)と、
同じドメインにおける異なるキュータイプの特徴を比較する、クロスドメイン正則化部及びクロスモダリティ正則化部を含む損失関数を最適化(218)するステップと、
を有
し、
前記ビデオ分析モデルを訓練するステップは、前記ラベル付けされていない訓練データセットのための疑似ラベルを生成することを含み、
前記クロスドメイン正則化部は、前記第1の訓練データセットからの第1の訓練データと前記第2の訓練データセットからの第2の訓練データとを比較し、前記第2の訓練データは、第1の訓練データのラベルと一致する擬似ラベルを有し、
前記クロスモダリティ正則化部は、同じドメインにおける異なるキュータイプの特徴を比較するコンピュータで実施される方法。
【請求項9】
ハードウェアプロセッサ(410)と、
前記ハードウェアプロセッサで実行されると、前記ハードウェアプロセッサに、
第1のドメインにおけるラベル付けされた第1の訓練データセット及び第2のドメインにおけるラベル付けされていない第2の訓練データセットから、第1のモダリティ及び第2のモダリティの特徴を抽出するステップ(204/206)と、
クロスドメイン正則化部及びクロスモダリティ正則化部を含む損失関数の最適化を含む、前記抽出された特徴に対する対照学習を用いて、ビデオ分析モデルを訓練するステップ(218)と、
を実行させるコンピュータプログラムを格納するメモリ(430)と、
を有
し、
前記コンピュータプログラムは、前記ハードウェアプロセッサに、さらに前記ラベル付けされていない訓練データセットのための疑似ラベルを生成させ、
前記クロスドメイン正則化部は、前記第1の訓練データセットからの第1の訓練データと前記第2の訓練データセットからの第2の訓練データとを比較し、前記第2の訓練データは、第1の訓練データのラベルと一致する擬似ラベルを有し、
前記クロスモダリティ正則化部は、同じドメインにおける異なるキュータイプの特徴を比較するビデオシステム。
【請求項10】
前記疑似ラベルは、ビデオ分析モデルによって生成される、請求項
9に記載のシステム。
【請求項11】
前記異なるキュータイプは、外観特徴及びモーション特徴を含む、請求項
9に記載のシステム。
【請求項12】
V
sをソースドメインにおけるビデオのセットとし、V
tをターゲットドメインにおけるビデオのセットとし、Y
sを前記ソースビデオのラベルとし、
【数13】
を前記ターゲットビデオの疑似ラベルとし、
【数14】
を前記ソースビデオのクロスエントロピー損失とし、
【数15】
を前記ソースビデオのクロスモダリティ損失項とし、
【数16】
を前記ターゲットビデオのクロスモダリティ損失項とし、
【数17】
をクロスドメイン損失項とし、λをバランスパラメータとしたとき、
前記損失関数が、
【数18】
で表される、請求項
9に記載のシステム。
【請求項13】
前記クロスドメイン損失項は、
【数19】
で表され、
【数20】
は、ポジティブサンプルのための、同じモダリティ及び異なるドメインの特徴間の類似度であり、
【数21】
は、ネガティブサンプルのための、同じモダリティ及び異なるドメインの特徴間の類似度である、請求項
12に記載のシステム。
【請求項14】
前記ソースビデオのクロスモダリティ損失項は、
【数22】
で表され、
【数23】
は、ポジティブサンプルのための、異なるモダリティ及び同じドメインの特徴間の類似度であり、
【数24】
は、ネガティブサンプルのための、異なるモダリティ及び同じドメインの特徴間の類似度である、請求項
12に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
この出願は、2021年11月8日に出願された米国特許出願第17/521,057号、2020年11月10日に出願された米国特許仮出願第63/111,766号、2020年11月13日に出願された米国特許仮出願第63/113,464号及び2020年11月16日に出願された米国特許仮出願第63/114,120号を基礎とする優先権を主張し、それぞれの開示の全てをここに取り込む。
【0002】
本発明は、ビデオデータ分析に関し、より詳細には、ビデオドメイン間の情報転移に関する。
【背景技術】
【0003】
ビデオには、ラベル付けされた訓練データで訓練された機械学習システムを利用してラベル付けされる場合がある。訓練データは、第1のドメインに応じてラベル付けされる。但し、このような訓練されたモデルを別のラベルの無いドメインに適用すると、ドメインの違いによりパフォーマンスが低下することがある。
【発明の概要】
【0004】
ビデオ方法は、第1のドメインにおけるラベル付けされた第1の訓練データセット及び第2のドメインにおけるラベル付けされていない第2の訓練データセットから、第1のモダリティ及び第2のモダリティの特徴を抽出することを含む。ビデオ分析モデルは、クロスドメイン正則化部及びクロスモダリティ正則化部を含む損失関数の最適化を含む、抽出された特徴に対する対照学習を用いて訓練される。
【0005】
ビデオ方法は、第1の視点から得られたビデオに関連する、第1のドメインにおけるラベル付けされた第1の訓練データセット、並びに第2の異なる視点から得られたビデオに関連する、第2のドメインにおけるラベル付けされていない第2の訓練データセットから、第1のモダリティ及び第2のモダリティの特徴を抽出することを含む。ビデオ分析モデルは、抽出された特徴に対する対照学習を用いて訓練される。ビデオ分析モデルを訓練することは、ビデオ分析モデルを用いて、ラベル付けされていない訓練データセットの疑似ラベルを生成し、同じドメインにおける異なるキュータイプの特徴を比較する、クロスドメイン正則化部及びクロスモダリティ正則化部を含む損失関数を最適化することを含む。
【0006】
ビデオシステムは、ハードウェアプロセッサと、コンピュータプログラムを格納するメモリとを含む。ハードウェアプロセッサによって実行されると、コンピュータプログラムは、ハードウェアプロセッサに、第1のドメインにおけるラベル付けされた第1の訓練データセット及び第2のドメインにおけるラベル付けされていない第2の訓練データセットから、第1のモダリティ及び第2のモダリティの特徴を抽出させ、クロスドメイン正則化部及びクロスモダリティ正則化部を含む損失関数の最適化を含む、抽出された特徴に対する対照学習を用いて、ビデオ分析モデルを訓練させる。
【0007】
これら及び他の特徴並びに利点は、以下の典型的な実施形態の詳細な説明を添付の図面と併せて読むことで明らかになるであろう。
【0008】
本開示では、後述するように、以下の図面を参照しながら好ましい実施形態について詳細に説明する。
【図面の簡単な説明】
【0009】
【
図1】
図1は、本発明の一実施形態による、様々なドメインで得られたシーンのビデオを比較する図である。
【0010】
【
図2】
図2は、本発明の一実施形態による、ラベル付けされた訓練データとラベル付けされていない訓練データとの組み合わせを用いてビデオ分析モデルを訓練するための方法のブロック/フロー図である。
【0011】
【
図3】
図3は、本発明の一実施形態による、ラベル付けされた訓練データとラベル付けされていない訓練データとの組み合わせを用いて訓練されたモデルを用いてビデオ情報を分析して応答するための方法のブロック/フロー図である。
【0012】
【
図4】
図4は、本発明の一実施形態による、ビデオ分析モデルを訓練することが可能であり、訓練されたモデルを用いてビデオ分析を実行できるコンピューティング装置のブロック図である。
【0013】
【
図5】
図5は、本発明の一実施形態による、ラベル付けされた訓練データとラベル付けされていない訓練データとの組み合わせを用いてビデオ分析モデルを訓練するためのコンピュータプログラムのブロック図である。
【0014】
【
図6】
図6は、本発明の一実施形態による、ニューラルネットワークのアーキテクチャを示す図である。
【0015】
【
図7】
図7は、本発明の一実施形態による、深層ニューラルネットワークのアーキテクチャを示す図である。
【発明を実施するための形態】
【0016】
第1のドメインにおけるラベル付けされたソース訓練データからの情報は、ラベル付けされていない第2のドメインにおける訓練データに転移できる。第2のドメインにおいて手間を要するアノテーションを行うことなく、両方のドメインでダウンストリームビデオ分析を実行できる。このようにして、第1のドメインにおける訓練ドメインの既存のコーパス(例えば、三人称視点ビデオ)を用いて、訓練データの取得及びアノテーションの付与が簡単ではない、一人称視点ビデオ、無人航空ビデオ及び無人地上車両等のドメインにおいてビデオ分析システムを訓練できる。この情報転移は、教師無しの対照学習を用いて実行できる。
【0017】
ビデオ分析は、ビデオフレームを連続的かつ動的に取得する際に複雑な背景情報を処理する。例えば、カメラの動き、体の動き及び多様な背景により、ビデオ分析が複雑になることがある。その結果、ビデオ分析のための効果的な特徴表現を学習することが困難になる。あるドメインから別のドメインに変更すると、背景の挙動及び外観が大幅に変わり、訓練された機械学習システムが新しいドメインを処理するのが困難になる。但し、ドメイン適応における情報転移の特徴表現を強化するために、ビデオから複数のキューを抽出できる。
【0018】
ここで
図1を参照すると、
図1には、異なるビジュアルドメインの比較例が示されている。単一のシーン102が、3つの異なる場所から視認されている。一人称視点106では、人104が自身の視点からビデオ情報を収集する。これは、例えばウェアラブルビデオカメラまたは携帯型の電子装置を用いて実行できる。一人称視点106は、シーン102の周囲の意図的な移動によるか、人の体の無意識の動きによるかに関係なく、人104の動きにより影響を受ける。
【0019】
三人称視点110では、固定ビデオカメラ108(例えば、セキュリティカメラ)が高い位置からビデオデータを取得できる。これにより、三人称視点110にシーン102の斜視図を与えることが可能になり、上から及び横からの視界を提供する。さらに、ビデオカメラ108は所定の位置で固定されるため、三人称視点110は、シーン102に対する動きを含まなくてもよい。
【0020】
上から見下ろす視点114では、航空カメラを有人または無人の航空機112に取り付ければよく、上からのシーン102の視界を提供する。航空機112は、シーン102から大きく離れていてもよく、シーン102に対して動いていてもよい。
【0021】
これらの場合のそれぞれにおいて、ビデオデータが取得される方法、並びにビデオカメラの位置及び方向は、取得されるシーン102に関する実質的に異なる情報をもたらす。そのため、1つのドメインで取得されたデータで訓練された機械学習システムは、第2のドメインのデータが全く同じシーンから取得されたものであっても、第2のドメインで取得されたビデオデータを認識しないことがある。
【0022】
取得されたビデオコンテンツは、例えば、ロウ(raw)画像及びオプティカルフローからそれぞれ抽出された外観キュー及びモーションキューを用いてアノテーションが付与される。これらのキューは、シーン102内の被写体による動作を認識する等、ビデオに関する情報を抽出するために利用できる。複数のキューは、教師なし対照学習を用いてブリッジされていてもよい。そのため、キューは、まず第1のドメインでビデオデータから学習され、次にビデオ分析タスクの全体的なパフォーマンスを向上させるために互いに関連付けられる。
【0023】
与えられたビデオにおいて、外観キューまたはモーションキューのいずれかがビデオ分析タスクからの同じ出力につながる可能性がある。すなわち、例えば、動作認識は外観または動きに基づくことができる。これらの2つのキューから抽出された特徴は、特徴をジョイント潜在空間に投影するときに類似する。例えば、ビデオにおける動作が「ランニング」である場合、外観キューも「ランニング」特徴にマッピングすべきである。例えば、外観キューがバスケットボールコートに片足をおく人を示す場合、モーションキューは人の動きを認識する。対照的に、このビデオを別の異なるビデオと比較すると、コンテンツまたは動作クラスが異なり、外観キューまたはモーションキューから抽出される特徴も異なる。そのため、与えられたビデオにおいて、外観キューとモーションキューは共有潜在空間における同様の特徴にマッピングされるはずであるが、これらの特徴は別のビデオに見られる特徴とは大きく異なる場合がある。この特性は、対照学習のための教師なしオブジェクティブとして使用できる。
【0024】
対照学習では、ミニバッチ内でポジティブサンプルとネガティブサンプルを選択し、ドメイン全体またはキュータイプ全体で特徴を対比できる。本明細書において、
【数1】
は、ソースビデオの外観及びモーション特徴を表し、
【数2】
は、ターゲットビデオの外観及びモーション特徴を表す。そのため、クロスタイプの特徴は
【数3】
であり、クロスドメインの特徴は
【数4】
である。これらのキュータイプは、本明細書ではモダリティとも呼ぶ。そのため、2つの異なるタイプの特徴を比較することをクロスモダリティ比較と呼ぶことがある。
【0025】
2種類の対照損失関数(contrastive loss function)を使用できる。第1の対照損失関数は、各タイプを1つの視点と見なすクロスタイプ損失を含む。ソースドメインとターゲットドメインの両方のビデオ特徴は、特徴が同じビデオから抽出されたか否かに基づいて対比される。そのため、与えられたビデオにおいて、1つのポジティブペアはFa及びFmになる。
【0026】
第2の対照損失関数は、異なるドメインからの各タイプの特徴を対比するクロスドメイン損失である。ターゲットドメインでは動作ラベルを使用できないため、疑似ラベルが生成され、ターゲットビデオ用のポジティブサンプルとネガティブサンプルが決定される。ラベルは、訓練中のモデルによって生成される。例えば、外観及びモーション分類器の予測が与えられた場合、それらの予測を平均して最終的な予測を提供できる。場合によっては、疑似ラベルプロセスを開始する前に幾つかの訓練エポックを実行し、分類器が使用される前に何らかの訓練を受けることができる。
【0027】
そのため、ソースビデオV
s及び動作ラベルY
sを含むソースデータセットが与えられると、動作認識モデルは、V
sのドメインとは異なるドメインであるターゲットビデオV
tにラベル付けするように訓練される。例えば、ニューラルネットワークのアーキテクチャを用いて実施される、2ストリーム機械学習モデルを使用できる。このモデルは、ビデオの画像の外観及びフロー情報を入力として受け取り、外観特徴F
a及びモーション特徴F
mを出力して4つの異なる特徴空間
【数5】
を形成する。
【0028】
2つの対照損失関数を用いて特徴を正則化できる。第1に、各タイプのビデオを視点として扱い、ソースビデオまたはターゲットビデオから外観及びフロー特徴を抽出する。複数の視点は、特徴が同じビデオに由来するか否かに基づいて対比され、同じビデオのクロスタイプ特徴を、異なるビデオから抽出された特徴よりも、埋め込み空間において互いに近づける。第2に、異なるドメインにあるが同じタイプ
【数6】
の特徴の場合、ビデオが同じ動作ラベルを共有するか否かに基づいて特徴を対比する。
【0029】
各キュータイプは、それ自体の特徴特性を維持し、特に動作認識のようなビデオ分析タスクの場合、互いに補完し合うことができる。したがって、特徴
【数7】
は直接対比することができない。これは、特徴表現に悪影響を及ぼし、認識精度を低下させる。2つの異なるソースビデオi及びjからのソース特徴
【数8】
が与えられると、プロジェクションヘッドが適用可能であり。損失関数は次のように記述できる。
【数9】
ここで、
【数10】
は、以下の温度パラメータτ及びプロジェクションヘッドh(・)
【数11】
を伴う特徴
【数12】
との間のポジティブ/ネガティブペアの類似度の値を表す。
【0030】
クロスタイプ対応を学習するために、同様の損失関数
【数13】
を用いることが可能であり、ポジティブサンプルは異なるタイプからのみ選択される。ターゲットビデオの場合、別の損失関数
【数14】
で同じプロジェクションヘッドh(・)を使用できる。ここで、φ
tは次のように定義できる。
【数15】
【0031】
ソースドメイン及びターゲットドメインのそれぞれにおいて、
【数16】
を組み合わせることで、ラベル付けされていないターゲットビデオの特徴正則化として機能する埋め込み空間において、同じビデオにおける異なるタイプの特徴が、より近くに共に配置される。
【0032】
クロスタイプ正則化に加えて、4つの特徴空間の間の相互作用が、クロスドメインサンプルの対照学習オブジェクティブを用いてさらに利用される。外観キューを例にとると、特徴
【数17】
を使用できる。ポジティブサンプルは、ドメイン間で同じラベルが付与されたビデオを見つけることで決定できる。但し、ターゲットドメインのビデオにはラベルが提供されないため、予測スコアに基づいて疑似ラベルが生成される。正則化の目的のために、しきい値のスコアを超えるラベルをターゲットビデオに適用できる。ソースビデオとターゲットビデオにおいて、同じラベルを有するサンプルを選択できる。
【0033】
両方のタイプを組み合わせたソース及びターゲット特徴が与えられると、損失関数は次のように定義される。
【数18】
ここで、
【数19】
は、ソースビデオセットs
iに関して、疑似ラベルで決定されるポジティブ/ネガティブのターゲットビデオセットを示す。項
【数20】
は、特徴
【数21】
間の類似度の値である。
【0034】
クロスドメイン特徴正則化に関して、追加のプロジェクションヘッドを用いても、モデルのパフォーマンスに影響はなく、省略してもよい。この目的関数は、埋め込み空間内で同じラベルを有する特徴を互いに近づける。
【0035】
上記の損失関数は、次のように組み込むことができる。
【数22】
ここで、
【数23】
はソースビデオV
sの動作ラベルY
sのクロスエントロピー損失である。
【数24】
はビデオV
tの一連の疑似ラベルであり、λはクロスモダリティ損失とクロスドメイン損失のバランスを取るための重みである。上記のように、
【数25】
は、同じ損失形式を用いて実施できるが、ドメイン毎に異なるプロジェクションヘッドを使用する。一方、
【数26】
は、2つのドメインから同時にビデオを取得し、外観特徴及びモーション特徴に関して同じ形式である。
【0036】
訓練の繰り返し毎にビデオセットV
s及びV
tから全ての特徴を計算するのではなく、特徴をそれぞれのメモリ
【数27】
に格納できる。バッチにおける特徴が与えられると、ポジティブ及びネガティブ特徴に関して、例えば、
【数28】
が
【数29】
に置き換えられる等、ポジティブ及びネガティブ特徴が引き出される。メモリバンク特徴は、繰り返し毎の最後にバッチにおける特徴で更新される。例えば、次のようなモーメンタム更新を使用できる。
【数30】
ここで、δは、例えば0.5等のモーメンタム項である。他のメモリも同様に更新できる。モーメンタムの更新により、訓練ダイナミクスの平滑性が促進される。訓練プロセス中に、ビデオクリップ内の連続するフレームがランダムにサンプリングされる場合がある。これらのメモリを用いることで、モデルは特徴学習の時間的な平滑性を促進する。
【0037】
ここで
図2を参照すると、
図2には、対照訓練を用いてビデオ分析モデルを訓練する方法が示されている。ブロック202は、入力ビデオを受け取り、ビデオからモーション情報を生成する。例えば、ブロック202は、ビデオフレーム内のオブジェクトを識別し、検出したオブジェクトの位置を、前または後のフレームにおける類似のオブジェクトと比較する。場合によっては、このモーション情報は、ビデオセットの一部として提供される。ビデオには、ラベル付けされたソースビデオとラベル付けされていないターゲットビデオが含まれる。
【0038】
ブロック204は、例えば外観特徴抽出モデルを用いて、ソース及びターゲットビデオから外観特徴を抽出する。ブロック206は、例えばモーション特徴抽出モデルを用いて、ソース及びターゲットビデオからモーション特徴を抽出する。外観及びモーション特徴が具体的に示しているが、代わりに任意の適切な特徴セットを使用できることを理解されたい。
【0039】
ブロック208は、ターゲットビデオ用の疑似ラベルを生成する。これにより、同様のラベルを有する異なるドメインのビデオとの比較に使用できるラベルが提供される。ブロック210は、ソースビデオのモーション損失を決定し、ブロック212は、ターゲットビデオのモーション損失を決定する。ブロック214は、クロスドメイン損失を決定し、異なるドメインのビデオの同様の特徴を対比する。ブロック216は、クロスエントロピー損失を決定する。ブロック218は、ソースモーション損失、ターゲットモーション損失、ドメイン損失及びクロスエントロピー損失の組み合わせにより、外観畳み込みニューラルネットワーク(CNN)及びモーションCNNのモデルパラメータを更新する。
【0040】
ここで
図3を参照すると、
図3には、ビデオ分析を実行する方法が示されている。ブロック302は、訓練データのセットを用いてモデルを訓練する。訓練データのセットには、第1のドメインからのラベル付けされたデータと、第2のドメインからのラベル付けされていないデータとが含まれる。上記で詳細に説明したように、訓練では、モデルを訓練してビデオを潜在空間に埋め込むために対照学習を用いる。ここでは、異なるドメインからの同様にラベル付けされたビデオが互いに近くに配置され、与えられた視点と異なる視点が互いに近くに配置される。このようにして、ラベル付けされていないドメインからの訓練データを、時間を要するデータのラベル付けプロセス無しで使用できる。
【0041】
ランタイム中、ブロック304は、訓練されたモデルを用いて新しいデータを分析する。例えば、新しいビデオデータが提供され、そのビデオデータにラベルが付与される。ブロック306は、決定されたラベルに基づいて応答動作を実行する。例えば、動作認識を監視及びセキュリティアプリケーションに用いて、人が許可されていない場所に行ったり、関わる権限がないものに触れたりした場合など、異常な活動を認識できる。動作認識は、身振りでスマートホーム装置を制御できるスマートホームアプリケーションにも使用できる。動作認識は、患者と治療機器との相互作用や薬の使用を監視できるヘルスケアアプリケーションにも使用できる。動作認識は、選手の行動を認識して自動的に分析できるスポーツ分析アプリケーションにも使用できる。
【0042】
図4は、本発明の一実施形態による例示的なコンピューティング装置400を示すブロック図である。コンピューティング装置400は、屋内シーンのトップダウン型のパラメトリック表現を識別し、シーンを用いたナビゲーションを提供するように構成されている。
【0043】
コンピューティング装置400は、コンピュータ、サーバ、ラックベースのサーバ、ブレードサーバ、ワークステーション、デスクトップコンピュータ、ラップトップコンピュータ、ノートブックコンピュータ、タブレットコンピュータ、モバイルコンピューティング装置、ウェアラブルコンピューティング装置、ネットワークアプライアンス、Webアプライアンス、分散コンピューティングシステム、プロセッサベースのシステム及び/または家庭用電化製品を含むがこれらに限定されない、本明細書に記載された機能を実行できる任意のタイプの計算装置またはコンピュータ装置で具現化される。追加または代替として、コンピューティング装置400は、1つまたは複数の計算スレッド、メモリスレッドまたは他のラック、スレッド、計算シャーシ、あるいは物理的に分散されたコンピューティング装置の他のコンポーネントで具現化されてもよい。
【0044】
図4で示すように、コンピューティング装置400は、プロセッサ410、入出力サブシステム420、メモリ430、データ記憶装置440、通信サブシステム450及び/またはサーバまたは同様の計算で一般的に見られる他のコンポーネント及び装置を例示的に含む。コンピューティング装置400は、他の実施形態において、サーバコンピュータに一般的に見られるコンポーネント(例えば、様々な入力/出力装置)等、他のコンポーネントまたは追加のコンポーネントを含んでいてもよい。さらに、いくつかの実施形態において、例示的な構成要素のうちの1つまたは複数を、別の構成要素に組み込むか、または別の構成要素の一部を形成してもよい。例えば、メモリ430またはその一部は、いくつかの実施形態において、プロセッサ410に組み込まれていてもよい。
【0045】
プロセッサ410は、本明細書に記載の機能を実行できる任意のタイプのプロセッサで具現化してもよい。プロセッサ410は、単一のプロセッサ、複数のプロセッサ、中央処理装置(CPU)、グラフィックス処理装置(GPU)、シングルまたはマルチコアプロセッサ、デジタル信号プロセッサ、マイクロコントローラまたは他のプロセッサまたは処理/制御回路で具現化してもよい。
【0046】
メモリ430は、本明細書に記載の機能を実行できる任意のタイプの揮発性または不揮発性メモリまたはデータ記憶装置で具現化してもよい。動作中、メモリ430は、オペレーティングシステム、アプリケーション、プログラム、ライブラリ及びドライバ等、コンピューティング装置400の動作中に使用される様々なデータ及びソフトウェアを格納できる。メモリ430は、I/Oサブシステム420を介してプロセッサ410に通信可能に接続され、これはプロセッサ410、メモリ430及びコンピューティング装置400の他のコンポーネントとの入出力動作を容易にする回路及び/またはコンポーネントで具現化される。例えば、I/Oサブシステム420は、メモリコントローラハブ、入力/出力制御ハブ、プラットフォームコントローラハブ、統合制御回路、ファームウェア装置、通信リンク(例えば、ポイントツーポイントリンク、バスリンク、ワイヤ、ケーブル、ライトガイド、プリント回路基板トレース等)及び/または入出力操作を容易にするその他のコンポーネント及びサブシステムで具現化されてもよく、あるいは含んでいてもよい。いくつかの実施形態において、I/Oサブシステム420は、システムオンチップ(SOC)の一部を形成してもよく、プロセッサ410、メモリ430及びコンピューティング装置400の他の構成要素と共に、単一の集積回路チップに組み込まれていてもよい。
【0047】
データ記憶装置440は、例えば、メモリ装置及び回路、メモリカード、ハードディスクドライブ、ソリッドステートドライブまたはその他のデータ記憶装置等、データの短期または長期の記憶のために構成された任意のタイプの装置または複数の装置で具現化できる。データ記憶装置440は、例えばラベル付けされた及びラベル付けされていない訓練データを用いてビデオ分析モデルを訓練するためのプログラムコード440Aと、訓練されたモデルを用いてビデオ分析を実行するためのプログラムコード440Bとを格納できる。コンピューティング装置400の通信サブシステム450は、ネットワークを介してコンピューティング装置400と他のリモート装置との間の通信を可能にする、任意のネットワークインタフェースコントローラまたは他の通信回路、装置、若しくはそれらの集合で具現化される。通信サブシステム450は、任意の1つまたは複数の通信技術(例えば、有線または無線通信)及び関連するプロトコル(例えば、イーサネット、InfiniBand(登録商標)、Bluetooth(登録商標)、Wi-Fi(登録商標)、WiMAXなど)を用いて、そのような通信を行うように構成される。
【0048】
示されるように、コンピューティング装置400は、1つまたは複数の周辺装置460を含んでいてもよい。周辺装置460は、任意の数の追加の入力/出力装置、インタフェース装置及び/または他の周辺装置を含んでいてもよい。例えば、幾つかの実施形態において、周辺装置460は、ディスプレイ、タッチスクリーン、グラフィック回路、キーボード、マウス、スピーカシステム、マイクロフォン、ネットワークインタフェース及び/または他の入出力装置、インタフェース装置、ビデオキャプチャ装置及び/または周辺機器を含んでいてもよい。
【0049】
もちろん、コンピューティング装置400は、当業者であれば容易に思いつくような他の要素(図示せず)を含むことも、特定の要素を省略することもできる。例えば、当業者には容易に理解されるように、特定の実施に応じて、様々な他のセンサ、入力装置及び/または出力装置をコンピューティング装置400に含んでいてもよい。例えば、様々なタイプの無線及び/または有線入力及び/または出力装置を利用できる。さらに、様々な構成の追加のプロセッサ、コントローラ、メモリ等を利用することもできる。処理システム400のこれら及び他の変形例は、本明細書で提供される本発明の教示を考慮すれば、当業者に容易に考えられる。
【0050】
ハードウェアプロセッササブシステムのこれら及び他の変形例も、本発明の実施形態により考えられる。
【0051】
ここで
図5を参照すると、
図5には、モデル訓練440Aに関する追加の詳細が示されている。モデルは、入力ビデオの外観特徴を処理する外観CNN502と、入力ビデオのモーション特徴を処理するモーションCNN504とを含む。対照学習510は、第1のドメインにおけるラベル付けされた訓練データ506と、第2のドメインにおけるラベル付けされていない訓練データ508とを用いて、外観CNN502及びモーションCNN504を訓練する。
【0052】
モデルは、人工ニューラルネットワークのアーキテクチャを用いて実施される。CNNは、入力に対するスライディング「ウィンドウ」を用いて情報を処理する。CNN層の各ニューロンには、各ウィンドウ位置に適用されるそれぞれの「フィルタ」がある。各フィルタは、例えば入力内のそれぞれのパターンを処理するように訓練される。CNNは、画像の様々な領域を通過するときに、個々の画素間の局所的な関係が、フィルタによって取得される画像の処理に特に役に立つ。CNN層のニューロンの出力には、それぞれのフィルタがスライディングウィンドウの値の各セットと一致したか否かを表す値のセットが含まれる。
【0053】
ここで
図6を参照すると、
図6には、例示的なニューラルネットワークのアーキテクチャが示されている。階層型のニューラルネットワークでは、複数のノードが層形式で配置される。単純なニューラルネットワークは、ソースノード622の入力層620と、出力ノードとしても機能する1つまたは複数の計算ノード632を備える単一の計算層630とを有する。計算層630には、入力例を分類できると考えられるカテゴリ毎に1つのノード632がある。入力層620は、入力データ610におけるデータ値612の数に等しい数のソースノード622を有する。入力データ610のデータ値612は、列ベクトルとして表すことができる。計算層の各計算ノード630は、入力ノード620に供給される入力データ610から重み値の線形結合を生成し、総和に対して微分可能な非線形な活性化関数を適用する。単純なニューラルネットワークは、線形に分離可能な例(パターン等)の分類を実行できる。
【0054】
ここで
図7を参照すると、
図7には、深層ニューラルネットワークのアーキテクチャが示されている。多層パーセプトロンとも呼ばれる深層ニューラルネットワークは、ソースノード622の入力層620と、1つまたは複数の計算ノード632を含む1つまたは複数の計算層630と、出力層640とを有する。出力層640には、入力例を分類できるカテゴリ毎に1つの出力ノード642がある。入力層620は、入力データ610におけるデータ値612の数に等しい数のソースノード622を有する。計算層630の計算ノード632は、ソースノード622と出力ノード642との間にあり、直接観察されないため、隠れ層とも称される。計算層の各ノード632、642は、前段の層のノードから出力された値から重み値の線形結合を生成し、総和に対して微分可能な非線形な活性化関数を適用する。前段の各ノードからの値に適用される重みは、例えば、w
1、w
2、w
n-1、w
nで表すことができる。出力層は、入力データに対するネットワーク全体の応答を提供する。深層ニューラルネットワークは、計算層の各ノードを前段の層の全ての他のノードと接続する、全結合としてもよい。ノード間のリンクが欠落している場合、ネットワークは部分的に接続されていると見なされる。
【0055】
深層ニューラルネットワークの訓練には、各ノードの重みが固定され、入力がネットワークを経由して伝搬する順方向フェーズと、エラー値がネットワークを経由して逆方向に伝搬する逆方向フェーズの2つのフェーズを含む。
【0056】
1つまたは複数の計算(隠れ)層630における計算ノード632は、特徴空間を生成する入力データ612に対して非線形変換を実行する。クラスまたはカテゴリの特徴空間は、オリジナルのデータ空間よりも簡単に分離できる。
【0057】
図6及び
図7のニューラルネットワークのアーキテクチャは、例えば、
図5で示されたモデルのいずれかを実施するために用いられる。ニューラルネットワークを訓練するために、訓練データを訓練セットとテストセットに分けることができる。訓練データには、入力と既知の出力のペアが含まれる。訓練中、訓練セットの入力は、フィードフォワード伝搬を用いてニューラルネットワークに供給される。各入力の後、ニューラルネットワークの出力が、それぞれの既知の出力と比較される。ニューラルネットワークの出力とその特定の入力に関連付けられている既知の出力との不一致を用いてエラー値が生成される。エラー値はニューラルネットワークを通して逆伝播され、その後、ニューラルネットワークの重み値が更新される。このプロセスは、訓練セットにおける上記ペアが無くなるまで継続する。
【0058】
本明細書に記載する実施形態は、全てハードウェアで実現してもよく、全てソフトウェアで実現してもよく、ハードウェアとソフトウェアの両方の要素を含んでいてもよい。好ましい実施形態において、本発明は、ファームウェア、常駐ソフトウェア、マイクロコード等を含むが、これらに限定されないソフトウェアでも実現可能である。
【0059】
実施形態には、コンピュータ若しくは任意の命令実行システムによって使用される、または関連して使用されるプログラムコードを提供する、コンピュータで使用可能な、またはコンピュータで読み取り可能な媒体からアクセスできる、コンピュータプログラム製品を含んでもいてよい。コンピュータで使用可能な、またはコンピュータで読み取り可能な媒体には、命令実行システム、機器、若しくは装置によって使用される、または関連して使用されるプログラムを格納、伝達、伝搬または転移する任意の機器を含んでいてもよい。該媒体は、磁気媒体、光学媒体、電子媒体、電磁気媒体、赤外線媒体または半導体システム(または機器もしくは装置)、あるいは伝搬媒体であってもよい。該媒体には、半導体または固体メモリ、磁気テープ、取り外し可能なコンピュータディスケット、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、リジッド磁気ディスク及び光ディスク等のコンピュータで読み取り可能な媒体を含んでいてもよい。
【0060】
各コンピュータプログラムは、汎用または特別な目的を持つプログラム可能なコンピュータで読み取ることができる、機械で読み取り可能なストレージメディアまたは装置(例えば、プログラムメモリまたは磁気ディスク)に格納される。該コンピュータプログラムは、ストレージメディアまたは装置から本明細書に記載された手順を実行するコンピュータで読み出される、該コンピュータの設定及び制御動作のためのものである。本発明のシステムには、本明細書に記載した機能を実行する、特定の及び事前に定義された方法をコンピュータに動作させるように構成されたコンピュータプログラムを含む、コンピュータで読み取り可能なストレージメディアも考慮される。
【0061】
プログラムコードを格納及び/または実行するのに適したデータ処理システムは、システムバスを介してメモリ要素に直接または間接的に接続された少なくとも1つのプロセッサを備えていてもよい。このメモリ要素には、処理の実行中にバルクメモリ装置からコードが検索される回数を減らすために、プログラムコードの実際の実行中に用いられるローカルなメモリ、バルクメモリ装置及び少なくともいくつかのプログラムコードを一時的に記憶するキャッシュメモリを備えていてもよい。入出力またはI/O装置(限定されるものではないが、キーボード、ディスプレイ、ポインティング装置等を含む)は、直接またはI/Oコントローラを介してシステムに接続されてもよい。
【0062】
ネットワークアダプタは、データ処理システムが、プライベートネットワークまたは公衆ネットワークを介して、他のデータ処理システムまたはリモートプリンタもしくはメモリ装置に接続されることを可能にするために、上記システムと接続されていてもよい。モデム、ケーブルモデム及びイーサネット(登録商標)カードは、現在利用可能なタイプのネットワークアダプタのほんの一例である。
【0063】
本明細書で用いる「ハードウェアプロセッササブシステム」または「ハードウェアプロセッサ」という用語は、1つ以上の特定のタスクを実行するために協働するプロセッサ、メモリ、ソフトウェアまたはそれらの組み合わせを指すことができる。有用な実施形態において、ハードウェアプロセッササブシステムは、1つまたは複数のデータ処理要素(例えば、論理回路、処理回路、命令実行装置等)を含むことができる。1つまたは複数のデータ処理要素は、中央処理装置、グラフィックス処理装置及び/または個別のプロセッサまたはコンピューティング要素ベースのコントローラ(例えば、論理ゲート等)を含めることができる。ハードウェアプロセッササブシステムは、1つ以上のオンボードメモリ(例えば、キャッシュ、専用メモリアレイ、読み出し専用メモリ等)を含むことができる。任意の実施形態において、ハードウェアプロセッササブシステムは、オンボードまたはオフボードとすることができる、またはハードウェアプロセッササブシステム(例えば、ROM、RAM、基本入出力システム(BIOS)等)で用いるための専用の1つ以上のメモリを含むことができる。
【0064】
任意の実施形態において、ハードウェアプロセッササブシステムは、1つ以上のソフトウェア要素を含み実行できる。1つ以上のソフトウェア要素は、特定の結果を達成するためにオペレーティングシステム及び/または1つ以上のアプリケーション及び/または特定のコードを含むことができる。
【0065】
他の実施形態において、ハードウェアプロセッササブシステムは、指定された結果を達成するために1つまたは複数の電子処理機能を実行する専用回路を含むことができる。そのような回路は、1つまたは複数の特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)及び/またはプログラマブルロジックアレイ(PLA)を含むことができる。
【0066】
ハードウェアプロセッササブシステムのこれら及び他の変形例もまた、本発明の実施形態によって考えられる。
【0067】
本明細書では本発明の「一実施形態」または「一実施形態」、ならびにその他の変形形態に言及し、実施形態に関連して説明した特定の機能、構成、特徴などが、本発明の少なくとも1つの実施形態に含まれることを意味する。したがって、「一実施形態において」または「一実施形態において」という語句の出現、並びに本明細書全体を通して様々な場所に出現する任意の他の変形形態は、必ずしも全てが同じ実施形態を参照しているわけではない。しかしながら、本明細書で提供される本発明の教示を前提として、1つまたは複数の実施形態の特徴を組み合わせることができることを理解されたい。
【0068】
例えば、「A/B」、「A及び/またはB」、並びに「A及びBのうちの少なくとも1つ」の場合における「/」、「及び/または」、並びに「うちの少なくとも1つ」のうちのいずれかの使用は、第1に挙げた選択肢(A)のみの選択、第2に挙げた選択肢(B)のみの選択、または両方の選択肢(A及びB)の選択を含むことを意図したものと理解すべきである。さらに例を挙げれば、「A、B及び/またはC」、並びに「A、B及びCのうちの少なくとも1つ」の場合、このような表現法は、第1に挙げた選択肢(A)のみの選択、第2に挙げた選択肢(B)のみの選択、第3に挙げた選択肢(C)のみの選択、第1及び第2に挙げた選択肢(A及びB)のみの選択、第1及び第3に挙げた選択肢(A及びC)のみの選択、第2及び第3に挙げた選択肢(B及びC)のみの選択、または3つの選択肢全て(A及びB及びC)の選択を含むことを意図したものである。上述した例は、当業者に容易に明らかとなるように、列挙される多数の項目に応じて拡大適用される。
【0069】
上記は、あらゆる観点において説明的かつ典型的であって限定的でないものと理解されるべきであり、本明細書で開示する本発明の範囲は、詳細な説明から決定されるべきではなく、特許法で認められた最大限の広さに基づいて解釈される特許請求の範囲から決定されるべきである。本明細書中に図示及び記載されている実施形態は、本発明の原理を説明するものにすぎず、本発明の範囲及び主旨から逸脱することなく当業者は様々な変更を実施することができることを理解されたい。当業者は、本発明の範囲及び精神から逸脱することなく、様々な他の特徴の組み合わせを実施できる。以上、本発明の態様について、特許法で要求される細部及び詳細な事項と共に説明したが、特許証で保護されることを要求する特許請求の範囲は、添付の特許請求の範囲に示されている。