(57)【要約】  画像処理ニューラルネットワークシステムを使用して画像を処理するためのコンピュータ記憶媒体上に符号化されるコンピュータプログラムを含む、方法、システム、および装置が開示される。システムのうちの1つは、1つまたは複数のコンピュータによって実装される共有エンコーダニューラルネットワークであって、ターゲットドメインから入力画像を受信し、ターゲットドメインからの画像とターゲットドメインと異なるソースドメインからの画像との間で共有される入力画像の特徴についての共有特徴表現を生成するために入力画像を処理するように構成される共有エンコーダニューラルネットワークと、1つまたは複数のコンピュータによって実装される分類器ニューラルネットワークであって、共有特徴表現を受信し、入力画像を特徴づける入力画像についてのネットワーク出力を生成するために共有特徴表現を処理するように構成される分類器ニューラルネットワークとを含む。【特許請求の範囲】
【請求項１】
システムであって、
1つまたは複数のコンピュータによって実装される共有エンコーダニューラルネットワークであって、
ターゲットドメインから入力画像を受信し、
前記ターゲットドメインからの画像と、前記ターゲットドメインと異なるソースドメインからの画像との間で共有される前記入力画像の特徴の共有特徴表現を生成するために前記入力画像を処理する
ように構成される、共有エンコーダニューラルネットワークと、
前記1つまたは複数のコンピュータによって実装される分類器ニューラルネットワークであって、
前記共有特徴表現を受信し、
前記入力画像を特徴づける前記入力画像についてのネットワーク出力を生成するために前記共有特徴表現を処理する
ように構成される、分類器ニューラルネットワークと
を備える、システム。
【請求項２】
前記ターゲットドメインからの画像が、前記ソースドメインからの画像からの画像と異なる低レベル画像統計量を有する、請求項1に記載のシステム。
【請求項３】
前記ネットワーク出力がオブジェクトの分類出力である、請求項1または2に記載のシステム。
【請求項４】
前記ネットワーク出力が姿勢推定出力である、請求項1または2に記載のシステム。
【請求項５】
分類器ニューラルネットワークが、前記ソースドメインからのラベルあり画像についてトレーニングされている、請求項1から4のいずれか一項に記載のシステム。
【請求項６】
前記ソースドメインからの入力画像についての共有特徴表現に類似した、前記ターゲットドメインからの入力画像についての共有特徴表現を生成するために、前記共有エンコーダニューラルネットワークがトレーニングされている、請求項1から5のいずれか一項に記載のシステム。
【請求項７】
前記ターゲットドメインに特有のプライベートターゲットエンコーダニューラルネットワークにより生成される前記ターゲットドメインからの同じ入力画像についてのプライベート特徴表現と異なる前記ターゲットドメインからの前記入力画像についての共有特徴表現を生成するために、前記共有エンコーダニューラルネットワークがトレーニングされている、請求項6に記載のシステム。
【請求項８】
前記ソースドメインに特有の、プライベートソースエンコーダニューラルネットワークにより生成される前記ソースドメインからの同じ入力画像についてのプライベート特徴表現と異なる前記ソースドメインからの前記入力画像についての共有特徴表現を生成するために、前記共有エンコーダニューラルネットワークがトレーニングされている、請求項7に記載のシステム。
【請求項９】
前記プライベートターゲットエンコーダニューラルネットワークにより生成される前記同じ入力画像についてのプライベート特徴表現と組み合わされるとき、共有デコーダニューラルネットワークによって前記入力画像を正確に再構築するために使用することができる前記ターゲットドメインからの前記入力画像についての共有特徴表現を生成するために、前記共有エンコーダニューラルネットワークがトレーニングされている、請求項8に記載のシステム。
【請求項１０】
前記プライベートソースエンコーダニューラルネットワークにより生成される前記同じ入力画像についてのプライベート特徴表現と組み合わされるとき、前記共有デコーダニューラルネットワークによる前記入力画像を正確に再構築するために使用することができる前記ソースドメインからの前記入力画像についての共有特徴表現を生成するために、前記共有エンコーダニューラルネットワークがトレーニングされている、請求項9に記載のシステム。
【請求項１１】
前記共有エンコーダニューラルネットワーク、前記プライベートソースエンコーダニューラルネットワーク、および前記プライベートターゲットエンコーダニューラルネットワークが、同じアーキテクチャだが異なるパラメータ値を有する畳込みニューラルネットワークである、請求項10に記載のシステム。
【請求項１２】
前記分類器ニューラルネットワークが全結合ニューラルネットワークである、請求項1から11のいずれか一項に記載のシステム。
【請求項１３】
1つまたは複数のコンピュータによって実行されると、前記1つまたは複数のコンピュータに請求項1から12のいずれか一項に記載のシステムを実装させる命令で符号化された、コンピュータ記憶媒体。
【請求項１４】
1つまたは複数のコンピュータによって実施される方法であって、
ターゲットドメインから入力画像を受信するステップと、
共有エンコーダニューラルネットワークを使用して前記ターゲットドメインからの前記入力画像を処理するステップであって、前記共有エンコーダニューラルネットワークが、
前記ターゲットドメインから前記入力画像を受信し、
前記ターゲットドメインからの画像と、前記ターゲットドメインと異なるソースドメインからの画像との間で共有される前記入力画像の特徴の共有特徴表現を生成するために前記入力画像を処理する
ように構成される、ステップと、
分類器ニューラルネットワークを使用して前記ターゲットドメインからの前記入力画像を処理するステップであって、前記分類器ニューラルネットワークが、
前記共有特徴表現を受信し、
前記入力画像を特徴づける前記入力画像についてのネットワーク出力を生成するために前記共有特徴表現を処理する
ように構成される、ステップと
を含む、方法。
【請求項１５】
前記ターゲットドメインからの画像が、前記ソースドメインからの画像からの画像と異なる低レベル画像統計量を有する、請求項14に記載の方法。
【請求項１６】
前記ネットワーク出力がオブジェクトの分類出力である、請求項14または15に記載の方法。
【請求項１７】
前記ネットワーク出力が姿勢推定出力である、請求項14または15に記載の方法。
【請求項１８】
前記分類器ニューラルネットワークが、前記ソースドメインからのラベルあり画像についてトレーニングされている、請求項14から17のいずれか一項に記載の方法。
【請求項１９】
前記ソースドメインからの入力画像についての共有特徴表現に類似した、前記ターゲットドメインからの入力画像についての共有特徴表現を生成するために、前記共有エンコーダニューラルネットワークがトレーニングされている、請求項14から18のいずれか一項に記載の方法。
【請求項２０】
前記ターゲットドメインに特有のプライベートターゲットエンコーダニューラルネットワークにより生成される前記ターゲットドメインからの同じ入力画像についてのプライベート特徴表現と異なる前記ターゲットドメインからの前記入力画像についての共有特徴表現を生成するために、前記共有エンコーダニューラルネットワークがトレーニングされている、請求項19に記載の方法。
【請求項２１】
前記ソースドメインに特有のプライベートソースエンコーダニューラルネットワークにより生成される前記ソースドメインからの同じ入力画像についてのプライベート特徴表現と異なる前記ソースドメインからの前記入力画像についての共有特徴表現を生成するために、前記共有エンコーダニューラルネットワークがトレーニングされている、請求項20に記載の方法。
【請求項２２】
前記プライベートターゲットエンコーダニューラルネットワークにより生成される前記同じ入力画像についてのプライベート特徴表現と組み合わされると、共有デコーダニューラルネットワークによって前記入力画像を正確に再構築するために使用することができる前記ターゲットドメインからの前記入力画像についての共有特徴表現を生成するために、前記共有エンコーダニューラルネットワークがトレーニングされている、請求項21に記載の方法。
【請求項２３】
前記プライベートソースエンコーダニューラルネットワークにより生成される前記同じ入力画像についてのプライベート特徴表現と組み合わされると、前記共有デコーダニューラルネットワークによる前記入力画像を正確に再構築するために使用することができる前記ソースドメインからの前記入力画像についての共有特徴表現を生成するために前記共有エンコーダニューラルネットワークがトレーニングされている、請求項22に記載の方法。
【請求項２４】
前記共有エンコーダニューラルネットワーク、前記プライベートソースエンコーダニューラルネットワーク、および前記プライベートターゲットエンコーダニューラルネットワークが、同じアーキテクチャだが異なるパラメータ値を有する畳込みニューラルネットワークである、請求項23に記載の方法。
【請求項２５】
前記分類器ニューラルネットワークが全結合ニューラルネットワークである、請求項14から24のいずれか一項に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書は、出力を生成するためにニューラルネットワークの層を通して画像データを処理することに関する。
【背景技術】
【０００２】
ニューラルネットワークは、受信した入力についての出力を予測するために、非線形ユニットの1つまたは複数の層を採用する機械学習モデルである。いくつかのニューラルネットワークは、出力層に加えて、1つまたは複数の隠れ層を含む。各隠れ層の出力は、ネットワーク中の次の層、すなわち次の隠れ層または出力層への入力として使用される。ネットワークの各層は、パラメータのそれぞれのセットの現在の値にしたがって受信した入力から出力を生成する。
【発明の概要】
【課題を解決するための手段】
【０００３】
一般的に、本明細書は、1つまたは複数のコンピュータによって実装され、画像を特徴づけるターゲットドメインからの画像についてのネットワーク出力を生成する画像処理ニューラルネットワークを記載する。特に、画像処理ニューラルネットワークシステムは、ターゲットドメインから入力画像を受信し、ターゲットドメインからの画像と、ターゲットドメインと異なるソースドメインからの画像との間で共有される入力画像の特徴の共有特徴表現を生成するために画像を処理する。画像処理ニューラルネットワークシステムは、次いで共有特徴表現から入力画像を特徴づけるネットワーク出力を生成する。
【０００４】
1つまたは複数のコンピュータのシステムにとって、特定の動作または行為を実施するように構成されるということは、動作において、システムに動作または行為を実施させるソフトウェア、ファームウェア、ハードウェア、またはそれらの組合せをシステムがシステム上にインストールしていることを意味する。1つまたは複数のコンピュータプログラムにとって、特定の動作または行為を実施するように構成されるということは、データ処理装置によって実行されると装置に動作または行為を実施させる命令を1つまたは複数のコンピュータプログラムが含むことを意味する。
【０００５】
本明細書に記載される主題の特定の実施形態は、以下の利点のうちの1つまたは複数を実現するように実装することができる。本明細書に記載されるようなニューラルネットワークシステムは、教師なしのドメイン適応シナリオの範囲における現況技術よりも優れており、トレーニング期間のドメイン適応プロセスの解釈を可能にするプライベートな表現および共有される表現の視覚化物を追加で作ることができる。ニューラルネットワークシステムは、トレーニングとテストの期間のデータ分布が異なるシナリオにおいて、ドメインで変わらない表現を学習することができる。
【０００６】
本明細書の主題の1つまたは複数の実施形態の詳細は、添付図面および下の説明中に示される。本主題の他の特徴、態様、および利点は、説明、図面、および特許請求の範囲から明らかとなろう。
【図面の簡単な説明】
【０００７】
【図１】例示的な画像処理ニューラルネットワークシステムを示す図である。
【図２】例示的なニューラルネットワークトレーニングシステムを示す図である。
【図３】ターゲットドメインからの画像についてのネットワーク出力を生成するための例示的なプロセスの流れ図である。
【図４】共有エンコーダニューラルネットワークおよび分類器ニューラルネットワークに、繰り返してトレーニングを実施するための例示的なプロセスの流れ図である。
【発明を実施するための形態】
【０００８】
様々な図面における同様の参照番号および記号は、同様の要素を示す。
【０００９】
本明細書は、1つまたは複数の場所における1つまたは複数のコンピュータ上のコンピュータプログラムとして実装される画像処理ニューラルネットワークシステムを記載する。
【００１０】
画像処理ニューラルネットワークシステムは、ネットワーク画像を特徴づける各入力画像についてのそれぞれのネットワーク出力を生成するためにターゲットドメインからの入力画像を処理する。
【００１１】
画像処理ニューラルネットワークシステムは、様々な方法のいずれかでターゲットドメインからの受信画像を特徴づけるネットワーク出力を生成するように構成することができる。
【００１２】
例えば、画像処理ニューラルネットワークシステムは、ターゲットドメインからの入力画像を1つまたは複数のオブジェクトカテゴリーからのオブジェクトの画像を含むとして分類する、すなわち入力画像がオブジェクトカテゴリーに属するオブジェクトの画像を含む可能性を表す1つまたは複数のオブジェクトカテゴリーの各々についてのそれぞれのスコアを含む、入力画像についての分類出力を生成するように構成することができる。
【００１３】
別の例として、画像処理ニューラルネットワークシステムは、入力画像中のオブジェクトの姿勢を推定するように構成することができる。一般的に、オブジェクトの姿勢は、入力画像中のオブジェクトの位置と方位の組合せである。例えば、システムは、ネットワーク出力としてオブジェクトの所定の数のボディの結合部の各々の画像中の推定配置を含む姿勢ベクトルを生成することができる。
【００１４】
別の例として、画像処理ニューラルネットワークシステムは、入力画像をその各々がカテゴリーのセットのうちの異なるカテゴリーに属する複数の領域へと分割するように構成することができる。例えば、システムは、ネットワーク出力として、例えば入力画像の各画素について、画素が属するカテゴリーを識別するデータ、例えばベクトルまたは行列を生成することができる。
【００１５】
図1は、例示的な画像処理ニューラルネットワークシステム100を示す。画像処理ニューラルネットワークシステム100は、下で記載されるシステム、構成要素、および技法を実装できる1つまたは複数の場所における1つまたは複数のコンピュータ上にコンピュータプログラムとして実装されるシステムの例である。
【００１６】
画像処理ニューラルネットワークシステム100は、ターゲットドメイン画像102を入力として受信し、ネットワーク出力122を生成するためにターゲットドメイン画像102を処理する。上で記載したように、画像処理ニューラルネットワークシステム100は、受信した入力画像について様々な種類のネットワーク出力を生成するように構成することができる。
【００１７】
画像処理ニューラルネットワークシステム100は、共有エンコーダニューラルネットワーク110および分類器ニューラルネットワーク120を含む。
【００１８】
共有エンコーダニューラルネットワーク110は、トレーニングを通して、ターゲットドメイン画像102を受信し、ターゲットドメイン画像102についての共有特徴表現112を生成するためにターゲットドメイン画像102を処理するように構成されるニューラルネットワーク、例えば畳込みニューラルネットワークである。共有特徴表現112は、数値のベクトルであり、ターゲットドメインからの画像とソースドメインからの画像との間で共有されるターゲットドメイン画像102の特徴の表現である。
【００１９】
一般的に、ソースドメインは、ターゲットドメインと異なる。特に、ソースドメインからの画像中の画素値の分布は、ターゲットドメインからの画像中の画素値の分布と異なる。
【００２０】
いくつかの場合では、ソースドメインとターゲットドメインは、高レベル画像統計量よりも、主に低レベル画像統計量の分布の点で異なる。分布における低レベルの差異の例としては、ノイズ、解像度、照明、および色に起因して生じるものが挙げられる。一方、高レベルの差異は、クラスの数、オブジェクトのタイプ、および3D位置などの幾何学的な相違に関係する差異が挙げられる場合がある。
【００２１】
一例では、ソースドメインは、現実世界の環境をシミュレーションする仮想環境の画像であってもよく、ターゲットドメインは、現実世界の環境の画像であってもよい。例えば、ソースドメイン画像は、ロボットもしくは他の機械のエージェント、または自動もしくは半自動車両によって相互作用されるべき現実世界の環境をシミュレーションする仮想環境の画像であってもよく、一方ターゲットドメイン画像は、機械のエージェントまたは車両によって取り込まれるような現実世界の環境の画像であってもよい。したがって、ソースドメイン画像は、特に、現実世界の環境でまれに生じる、または発生するのが困難もしくは危険なエッジケースでより拡張的となる場合がある。本明細書に記載されるように、ラベルありソースドメイン画像だけを使用してターゲットドメイン画像についての正確なネットワーク出力を生成するようにシステムをトレーニングすることによって、ある種の状況がシミュレーションしたバージョンでだけ起きる場合であってさえ現実世界の環境におけるエージェントまたは車両の性能を改善する場合がある。
【００２２】
別の例では、ソースドメインとターゲットドメインが両方とも現実の世界の画像だが測光上の差異があってもよく、例えば一方のドメインが屋内画像であってもよく、他方のドメインが同様のオブジェクトの屋外画像であってもよい。
【００２３】
別の例では、ソースドメインおよびターゲットドメインが、同様のオブジェクトの画像の異なる集合から選択された画像であってもよい。例えば、ソースドメインが精選(curate)された画像集合からの画像であってもよく、ターゲットドメインが例えばインターネット画像といった精選されないデータセットからの画像であってもよい。
【００２４】
いくつかの場合では、ソースドメインは、ラベルあり画像が容易に利用可能なドメインであってもよく、一方ターゲットドメインについてのラベルあり画像データを取得することが、コンピュータ的に高価である、または困難もしくは実行不可能である。
【００２５】
分類器ニューラルネットワーク120は、共有特徴表現112を受信し、ターゲットドメイン画像102についてのネットワーク出力122を生成するために共有特徴表現112を処理するトレーニングを通して構成されるニューラルネットワーク、例えば全結合ニューラルネットワークである。
【００２６】
共有特徴表現112およびネットワーク出力122を生成するために共有エンコーダニューラルネットワーク110および分類器ニューラルネットワーク120をトレーニングすることが、図2および図4を参照して、下でより詳細に記載される。
【００２７】
図2は、例示的なニューラルネットワークトレーニングシステム200を示す。ニューラルネットワークトレーニングシステム200は、下で記載されるシステム、構成要素、および技法を実装できる1つまたは複数の場所における1つまたは複数のコンピュータ上のコンピュータプログラムとして実装されるシステムの例である。
【００２８】
ニューラルネットワークトレーニングシステム200は、ターゲットドメインから受信した画像についてのネットワーク出力を生成するために共有エンコーダニューラルネットワーク110および分類器ニューラルネットワーク120をトレーニングする。
【００２９】
特に、ニューラルネットワークトレーニングシステム200は、共有エンコーダニューラルネットワーク110をソースドメインからのラベルあり画像およびターゲットドメインからのラベルなし画像についてトレーニングし、分類器ニューラルネットワーク120をソースドメインからのラベルあり画像についてだけトレーニングする。ラベルあり画像は、既知のネットワーク出力、すなわち画像についての分類器ニューラルネットワーク120により生成されるべきネットワーク出力が、トレーニング期間にニューラルネットワークトレーニングシステム200に対して利用可能な画像であり、ラベルなし画像は、既知のネットワーク出力がトレーニング期間にニューラルネットワークトレーニングシステム200に対して利用可能でない画像である。
【００３０】
共有エンコーダニューラルネットワーク110および分類器ニューラルネットワーク120をトレーニングするために、ニューラルネットワークトレーニングシステム200はまた、プライベートターゲットエンコーダニューラルネットワーク210、プライベートソースエンコーダニューラルネットワーク220、および共有デコーダニューラルネットワーク230を含む。
【００３１】
プライベートターゲットエンコーダニューラルネットワーク210は、ターゲットドメインに特有であり、ターゲットドメインから画像を受信し、各受信画像について画像のプライベート特徴表現を生成するように構成される。
【００３２】
プライベートソースエンコーダニューラルネットワーク220は、ソースドメインに特有であり、ソースドメインから画像を受信し、各受信画像について画像のプライベート特徴表現を生成するように構成される。
【００３３】
いくつかの実装形態では、プライベートターゲットエンコーダニューラルネットワーク210、プライベートソースエンコーダニューラルネットワーク220、および共有エンコーダニューラルネットワーク110は、同じニューラルネットワークアーキテクチャを有する、例えばすべてが、同じネットワークアーキテクチャを有する畳込みニューラルネットワークである。いくつかの他の実装形態では、プライベートターゲットエンコーダニューラルネットワーク210およびプライベートソースエンコーダニューラルネットワーク220は、共有エンコーダニューラルネットワーク110のものと異なるアーキテクチャを有する畳込みニューラルネットワークである。
【００３４】
共有デコーダニューラルネットワーク230は、画像の組み合わせた特徴表現を受信し、画像の再構築物を生成するために組み合わせた特徴表現を処理するように構成される。いくつかの実装形態では、共有デコーダニューラルネットワーク230は、逆畳込み(deconvolution)ニューラルネットワークである。
【００３５】
画像の組み合わせた特徴表現は、画像の共有特徴表現と画像のプライベート特徴表現の組合せ、例えば連結、合計、または平均である。すなわち、画像がソースドメインからのものである場合、組み合わせた特徴表現は、プライベートソースエンコーダニューラルネットワーク220により画像について生成されるプライベート特徴表現と、共有エンコーダニューラルネットワーク110により画像について生成される共有特徴表現との組合せである。画像がターゲットドメインからのものである場合、組み合わせた特徴表現は、プライベートターゲットエンコーダニューラルネットワーク210により画像について生成されるプライベート特徴表現と、共有エンコーダニューラルネットワーク110により画像について生成される共有特徴表現との組合せである。
【００３６】
トレーニング期間に、ニューラルネットワークトレーニングシステム200は、共有エンコーダニューラルネットワーク110、分類器ニューラルネットワーク120、プライベートターゲットエンコーダニューラルネットワーク210、プライベートソースエンコーダニューラルネットワーク220、および共有デコーダニューラルネットワーク230のパラメータの値を調整し、ネットワークの各々のパラメータのトレーニングした値を決定する。
【００３７】
特に、ニューラルネットワークトレーニングシステム200は、共有エンコーダニューラルネットワーク110をトレーニングして、(i)ソースドメインからの入力画像についての共有特徴表現に類似した、ターゲットドメインからの入力画像についての共有特徴表現を生成し、一方(ii)プライベートターゲットエンコーダニューラルネットワーク210により生成されるターゲットドメインからの同じ入力画像についてのプライベート特徴表現と異なるターゲットドメインからのその入力画像についての共有特徴表現を生成し、(iii)プライベートソースエンコーダニューラルネットワーク220により生成されるソースドメインからの同じ入力画像についてのプライベート特徴表現と異なるソースドメインからのその入力画像についての共有特徴表現を生成する。
【００３８】
加えて、ニューラルネットワークトレーニングシステム200は、共有エンコーダニューラルネットワーク110をトレーニングして、プライベートターゲットエンコーダニューラルネットワーク210により生成される同じ入力画像についてのプライベート特徴表現と組み合わされると、共有デコーダニューラルネットワーク230によってその入力画像を正確に再構築するために使用することができるターゲットドメインからのその入力画像についての共有特徴表現を生成し、プライベートソースエンコーダニューラルネットワーク220により生成される同じ入力画像についてのプライベート特徴表現と組み合わされると、共有デコーダニューラルネットワーク230によってその入力画像を正確に再構築するために使用することができるソースドメインからのその入力画像についての共有特徴表現を生成する。
【００３９】
さらに、トレーニングの部分として、ニューラルネットワークトレーニングシステム200は、分類器ニューラルネットワーク120をトレーニングして、ソースドメインからのラベルあり画像についての正確なネットワーク出力を生成する。
【００４０】
ネットワークの各々のパラメータのトレーニングした値を決定するために、共有エンコーダニューラルネットワーク110、分類器ニューラルネットワーク120、プライベートターゲットエンコーダニューラルネットワーク210、プライベートソースエンコーダニューラルネットワーク220、および共有デコーダニューラルネットワーク230をトレーニングすることが、図4を参照して下でより詳細に記載される。
【００４１】
いくつかの実装形態では、一度トレーニングすると、ターゲットドメイン画像をソースドメイン中の画像へと変換するために、共有エンコーダニューラルネットワーク110および共有デコーダニューラルネットワーク230を使用することができる。例えば、共有される表現を生成するために、共有エンコーダニューラルネットワーク110を使用してターゲットドメイン画像を処理することができる。共有される表現は、次いでプレースホルダ、またはプライベートソースエンコーダニューラルネットワーク220により生成される画像について生成される所望のプライベート特徴表現と組み合わされて、組み合わせた表現を生成することができる。組み合わせた表現は、次いで共有デコーダニューラルネットワーク230によって処理されて、入力ターゲットドメイン画像と同じ特徴を有するソースドメイン画像を生成することができる。
【００４２】
図3は、ターゲットドメインからの画像についてのネットワーク出力を生成するための例示的なプロセス300の流れ図である。便宜上、プロセス300は、1つまたは複数の場所に配置される1つまたは複数のコンピュータのシステムによって実施されるように記載することになる。例えば、適切にプログラムされた画像処理ニューラルネットワークシステム、例えば図1の画像処理ニューラルネットワークシステム100は、プロセス300を実施することができる。
【００４３】
システムは、ターゲットドメインから画像を受信する(ステップ302)。
【００４４】
システムは、共有エンコーダニューラルネットワークを使用してターゲットドメイン画像を処理する(ステップ304)。上で記載したように、共有エンコーダニューラルネットワークは、トレーニングを通して、ターゲットドメイン画像を受信し、ターゲットドメインからの画像とソースドメインからの画像との間で共有されるターゲットドメイン画像の特徴についての共有特徴表現を生成するように構成される。
【００４５】
システムは、分類器ニューラルネットワークを使用して共有特徴表現を処理する(ステップ306)。上で記載したように、分類器ニューラルネットワークは、トレーニングを通して、共有特徴表現を受信し、ターゲットドメイン画像についてのネットワーク出力を生成するために共有特徴表現を処理するように構成される。
【００４６】
図4は、共有エンコーダニューラルネットワークおよび分類器ニューラルネットワークに、繰り返しトレーニングを実施するための例示的なプロセス400の流れ図である。便宜上、プロセス400は、1つまたは複数の場所に配置される1つまたは複数のコンピュータのシステムによって実施されるように記載することになる。例えば、適切にプログラムされたニューラルネットワークトレーニングシステム、例えば図1のニューラルネットワークトレーニングシステム200は、プロセス400を実施することができる。
【００４７】
システムは、ラベルありトレーニングソースドメイン画像およびラベルなしトレーニングターゲットドメイン画像を受信する(ステップ402)。
【００４８】
システムは、共有エンコーダニューラルネットワークのパラメータの現在の値にしたがう共有エンコーダニューラルネットワークを使用して各トレーニングソースドメイン画像および各トレーニングターゲットドメイン画像を処理し、画像の各々についてそれぞれの共有特徴表現を生成する(ステップ404)。
【００４９】
システムは、プライベートターゲットエンコーダニューラルネットワークのパラメータの現在の値にしたがうプライベートターゲットエンコーダニューラルネットワークを使用して各トレーニングターゲットドメイン画像を処理し、各トレーニングターゲットドメイン画像についてそれぞれのプライベート特徴表現を生成する(ステップ406)。
【００５０】
システムは、プライベートソースエンコーダニューラルネットワークのパラメータの現在の値にしたがうプライベートソースエンコーダニューラルネットワークを使用して各トレーニングソースドメイン画像を処理し、各トレーニングソースドメイン画像について、それぞれのプライベート特徴表現を生成する(ステップ408)。
【００５１】
各トレーニングソースドメイン画像について、システムは、分類器ニューラルネットワークのパラメータの現在の値にしたがう分類器ニューラルネットワークを使用してトレーニングソースドメイン画像について、共有特徴表現を処理し、トレーニングソースドメイン画像についてのネットワーク出力を生成する(ステップ410)。
【００５２】
システムは、例えば図2を参照して上で記載したように、各トレーニングソースドメイン画像および各トレーニングターゲットドメイン画像についてのそれぞれの組み合わせた表現を生成する(ステップ412)。
【００５３】
システムは、共有デコーダニューラルネットワークのパラメータの現在の値にしたがう共有デコーダニューラルネットワークを使用してトレーニング画像の各々について組み合わせた表現を処理し、対応するトレーニング画像の再構築物を生成する(ステップ414)。
【００５４】
システムは、プライベートターゲットエンコーダニューラルネットワーク、共有エンコーダニューラルネットワーク、プライベートソースエンコーダニューラルネットワーク、共有デコーダニューラルネットワーク、および分類器ニューラルネットワークのパラメータの現在の値を調整し、ニューラルネットワークにより生成される出力からもたらされる損失を減少させる(ステップ416)。
【００５５】
特に、システムは、例えば運動量を有する確率勾配といった機械学習トレーニング技法を繰り返し実施して、分類損失、再構築損失、差異損失、および類似損失に依存する損失を最小化する。例えば、損失Lは、
L = Ltask + αLrecon + βLdifference + γLsimilarity
を満足してもよく、ここでLtaskは分類損失、Lreconは再構築損失、Ldifferenceは差異損失、Lsimilarityは類似損失であり、α、β、およびγは損失項の相互作用を制御する重みである。
【００５６】
分類損失は、分類器ニューラルネットワークを、また逆伝播によって共有エンコーダニューラルネットワークをトレーニングし、ソースドメイン画像についての正確なネットワーク出力を生成する、すなわちトレーニングソースドメイン画像についての既知のネットワーク出力と一致するネットワーク出力を生成する。例えば、分類損失は
【数１】
2019523504.tif 000002
を満足してもよく、ここでNsはラベルありトレーニングソースドメイン画像の合計数であり、
【数２】
2019523504.tif 000003
は、i番目のトレーニングソースドメイン画像についての分類器ニューラルネットワークにより生成されたネットワーク出力であり、
【数３】
2019523504.tif 000004
は、i番目のトレーニングソースドメイン画像についての既知のネットワーク出力である。
【００５７】
再構築損失は、共有デコーダニューラルネットワークを、また逆伝播によってエンコーダニューラルネットワークの各々をトレーニングし、入力画像の正確な再構築物を生成する、すなわちトレーニング画像と一致するトレーニング画像の再構築物を生成する。例えば、再構築損失は、
【数４】
2019523504.tif 000005
を満足するスケール不変性平均2乗誤差損失であってもよく、ここでNtはトレーニングターゲットドメイン画像の合計数であり、
【数５】
2019523504.tif 000006
は、i番目のトレーニングソースドメイン画像であり、
【数６】
2019523504.tif 000007
は共有デコーダニューラルネットワークにより生成されるi番目のトレーニングソースドメイン画像の再構築物であり、
【数７】
2019523504.tif 000008
はi番目のトレーニングターゲットドメイン画像であり、
【数８】
2019523504.tif 000009
は共有デコーダニューラルネットワークにより生成されるi番目のトレーニングターゲットドメイン画像の再構築物であり、Lsi_mseは画像と
【数９】
2019523504.tif 000010
を満足する画像の再構築物との間のスケール不変性平均2乗誤差であり、ここで、
【数１０】
2019523504.tif 000011
は、2乗したL2ノルムであり、kは入力x中の画素の数であり、lkは長さkの画素のベクトルである。したがって、スケール不変性平均2乗誤差は、画素のペアの間、すなわち所与のトレーニング画像中の画素とトレーニング画像の再構築物中の対応する画素との間の差異にペナルティを課す。このスケール不変性平均2乗誤差損失を最小化することによって、システムは、共有デコーダニューラルネットワークをトレーニングし、入力の絶対値の色または強度についてモデル化電力を費やすことなく、モデル化されるオブジェクトの全体形状を再生する。
【００５８】
差異損失は、共有エンコーダニューラルネットワークをトレーニングして、(i)プライベートターゲットエンコーダニューラルネットワークにより生成されるターゲットドメインからの同じ入力画像についてのプライベート特徴表現と異なるターゲットドメインからのその入力画像についての共有特徴表現を生成し、(ii)プライベートソースエンコーダニューラルネットワークにより生成されるソースドメインからの同じ入力画像についてのプライベート特徴表現と異なるソースドメインからのその入力画像についての共有特徴表現を生成する。例えば、差異損失は、
【数１１】
2019523504.tif 000012
を満足してもよく、ここで、
【数１２】
2019523504.tif 000013
はトレーニングソースドメイン画像の共有特徴表現である行を有する行列であり、
【数１３】
2019523504.tif 000014
はトレーニングターゲットドメイン画像の共有特徴表現である行を有する行列であり、
【数１４】
2019523504.tif 000015
はトレーニングソースドメイン画像のプライベート特徴表現である行を有する行列であり、
【数１５】
2019523504.tif 000016
はトレーニングターゲットドメイン画像のプライベート特徴表現である行を有する行列であり、
【数１６】
2019523504.tif 000017
は2乗したフロベニウスノルムである。
【００５９】
類似損失は、共有エンコーダニューラルネットワークをトレーニングし、ソースドメインからの入力画像についての共有特徴表現に類似したターゲットドメインからの入力画像についての共有特徴表現を生成する。
【００６０】
例えば、いくつかの場合では、類似損失は、ドメイン分類器ニューラルネットワークがエンコードされる表現のドメインを確実に予測できないような、共有される表現を生成するために共有エンコーダニューラルネットワークをトレーニングするドメイン敵対性類似損失であってもよい。例えば、ドメイン敵対性類似損失
【数１７】
2019523504.tif 000018
は、
【数１８】
2019523504.tif 000019
を満足してもよい。ここでdiは、i番目のトレーニング画像がターゲットドメインからかまたはソースドメインからかを識別する変数の値であり、
【数１９】
2019523504.tif 000020
は、i番目のトレーニング画像についての共有特徴表現を処理することによって、ドメイン分類器ニューラルネットワークによって予測されるような変数の予測値である。システムは、ドメイン分類器ニューラルネットワークのパラメータに関してのこの損失を最大化し、共有エンコーダニューラルネットワークのパラメータに関しての損失を最小化すること、すなわちドメイン分類器ニューラルネットワークの入力層として勾配反転層を含むことおよび全体損失を最小化することができる。
【００６１】
別の例として、いくつかの他の場合では、類似損失は、サンプルペアの間のカーネルベースの距離関数である最大平均差異損失であってもよい。例えば、最大平均差異損失
【数２０】
2019523504.tif 000021
は、
【数２１】
2019523504.tif 000022
を満足してもよい。ここで、k(・,・)はPSDカーネル関数であり、
【００６２】
【数２２】
2019523504.tif 000023
【００６３】
はトレーニングソースドメイン画像の共有特徴表現であり、
【００６４】
【数２３】
2019523504.tif 000024
【００６５】
はトレーニングターゲットドメイン画像の共有特徴表現である。いくつかの場合では、PSDカーネル関数は、複数の異なるRBFカーネルの線形結合であってもよい。
【００６６】
システムは、ラベルありトレーニングソースドメイン画像およびラベルなしトレーニングターゲットドメイン画像の異なるバッチにプロセス400を繰り返して実施して、ニューラルネットワークのパラメータの値を繰り返し調節することによってニューラルネットワークをトレーニングし、ニューラルネットワークのパラメータのトレーニングした値を決定することができる。
【００６７】
本明細書に記載される主題および機能的動作の実施形態は、本明細書に開示される構造物およびそれらの構造的な等価物を含む、デジタル電子回路、有形に具体化されたコンピュータソフトウェアもしくはファームウェア、コンピュータハードウェア、またはそれらのうちの1つもしくは複数の組合せで実装することができる。本明細書に記載される主題の実施形態は、1つまたは複数のコンピュータプログラムとして、すなわちデータ処理装置が実行するため、またはデータ処理装置の動作を制御するために有形の非一時的なプログラムキャリア上に符号化されるコンピュータプログラム命令の1つまたは複数のモジュールとして実装することができる。代替または追加として、プログラム命令は、データ処理装置が実行するため、好適なレシーバ装置へ伝送するために情報を符号化するために生成される、例えば機械生成される電気、光、または電磁気信号といった人工的に生成される伝播信号上に符号化することができる。コンピュータ記憶媒体は、機械可読記憶デバイス、機械可読記憶基板、ランダムもしくはシリアルアクセスメモリデバイス、またはそれらのうちの1つもしくは複数の組合せとすることができる。
【００６８】
「データ処理装置」という用語は、例として、プログラム可能プロセッサ、コンピュータ、または複数のプロセッサもしくはコンピュータを含む、データを処理するためのすべての種類の装置、デバイス、および機械を包含する。装置は、例えばFPGA(フィールドプログラム可能ゲートアレイ)またはASIC(特定用途向け集積回路)といった、専用論理回路を含むことができる。本装置はまた、ハードウェアに加えて、対象のコンピュータプログラムのための実行環境を作成するコード、例えばプロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはそれらのうちの1つもしくは複数の組合せを構成するコードを含むことができる。
【００６９】
(プログラム、ソフトウェア、ソフトウェアアプリケーション、モジュール、ソフトウェアモジュール、スクリプト、もしくはコードと呼ぶことまたは記載してもよい)コンピュータプログラムは、コンパイル型もしくはインタープリタ型言語、または宣言型もしくは手順型言語を含む任意の形式のプログラミング言語で書くことができ、スタンドアロン型プログラム、またはモジュール、構成要素、サブルーチン、もしくは計算環境で使用するのに好適な他のユニットを含む任意の形式で配備することができる。コンピュータプログラムは、ファイルシステム中のファイルに対応してもよいが、対応する必要はない。プログラムは、例えばマークアップ言語文書中に記憶される1つもしくは複数のスクリプトといった他のプログラムもしくはデータを保持するファイルの一部に、対象のプログラム専用の単一ファイルに、または例えば1つもしくは複数のモジュール、サブプログラム、もしくはコードの部分を記憶するファイルといった複数の協調したファイルに記憶することができる。コンピュータプログラムは、1つのコンピュータ上で、または1つの場所に配置されるもしくは複数の場所にわたって分散されて通信ネットワークにより相互接続される複数のコンピュータ上で実行されるように配備することができる。
【００７０】
本明細書に記載されるプロセスおよび論理フローは、入力データ上で動作して出力を生成することにより機能を実施する、1つまたは複数のコンピュータプログラムを実行する1つまたは複数のプログラム可能コンピュータによって実施することができる。プロセスおよび論理フローはまた、例えばFPGA(フィールドプログラム可能ゲートアレイ)またはASIC(特定用途向け集積回路)といった専用論理回路が実施することができ、例えばFPGA(フィールドプログラム可能ゲートアレイ)またはASIC(特定用途向け集積回路)といった専用論理回路として装置を実装することができる。
【００７１】
コンピュータプログラムの実行に好適なコンピュータは、例として汎用マイクロプロセッサもしくは専用マイクロプロセッサもしくはその両方、または任意の他の種類の中央処理装置を含み、基づくことができる。一般的に、中央処理装置は、読取り専用メモリまたはランダムアクセスメモリまたはその両方から命令およびデータを受信することになる。コンピュータの本質的な要素は、命令を実施または実行するための中央処理装置、ならびに命令およびデータを記憶するための1つまたは複数のメモリデバイスである。一般的に、コンピュータは、例えば磁気、光磁気、もしくは光ディスクといったデータを記憶するための1つもしくは複数の大容量記憶デバイスを含む、または大容量記憶デバイスからデータを受信する、もしくはデータを送信する、もしくは送受信するように動作可能に結合されることにもなる。しかし、コンピュータは、そのようなデバイスを有する必要はない。さらに、コンピュータは、例えばほんのいくつかの例を挙げればモバイル電話、携帯情報端末(PDA)、モバイル音声プ層もしくはモバイルビデオプ層、ゲーム機、全地球測位システム(GPS)レシーバ、または例えばユニバーサルシリアルバス(USB)フラッシュドライブといったポータブル記憶デバイスなどの別のデバイス中に組み込むことができる。コンピュータプログラム命令およびデータを記憶するのに好適なコンピュータ可読媒体としては、例として例えばEPROM、EEPROM、およびフラッシュメモリデバイスといった半導体メモリデバイス、例えば内蔵ハードディスクまたはリムーバブルディスクといった磁気ディスク、光磁気ディスク、ならびにCD ROMおよびDVD-ROMディスクを含む、不揮発性メモリ、媒体、およびメモリデバイスのすべての形式が挙げられる。プロセッサおよびメモリは、専用論理回路によって補うこと、または専用論理回路に内蔵することができる。
【００７２】
ユーザとの相互接続を実現するため、本明細書に記載される主題の実施形態は、ユーザに情報を表示するための例えばCRT(陰極線管)またはLCD(液晶ディスプレイ)モニタといった表示デバイス、ならびにユーザがコンピュータに入力を提供できるキーボードおよび例えばマウスまたはトラックボールといったポインティングデバイスを有するコンピュータ上に実装することができる。ユーザとの相互作用を実現するため、他の種類のデバイスを同様に使用することができる。例えば、ユーザへ提供されるフィードバックは、例えば視覚フィードバック、音響フィードバック、または触覚フィードバックといった任意の形式の感覚フィードバックとすることができ、ユーザからの入力は、音響、音声、または触覚入力を含む任意の形式で受信することができる。加えて、コンピュータは、ユーザに使用されるデバイスに文書を送信すること、およびデバイスから文書を受信することによって、例えばウェブブラウザから受信した要求に応答してユーザのクライアントデバイス上のウェブブラウザにウェブページを送信することによって、ユーザと相互作用することができる。
【００７３】
本明細書に記載される主題の実施形態は、例えばデータサーバとしてバックエンド構成要素を含む、または例えばアプリケーションサーバといった中間構成要素を含む、または本明細書に記載される主題の実装形態とユーザが相互作用できる、例えばグラフィカルユーザインターフェースもしくはウェブブラウザを有するクライアントコンピュータといったフロントエンド構成要素、または1つもしくは複数のそのようなバックエンド構成要素、中間構成要素、もしくはフロントエンド構成要素の任意の組合せを含むコンピューティングシステムに実装することができる。システムの構成要素は、例えば通信ネットワークといった、デジタルデータ通信の任意の形式もしくは媒体によって相互接続することができる。通信ネットワークの例としては、ローカルエリアネットワーク("LAN")およびワイドエリアネットワーク("WAN")、例えばインターネットが挙げられる。
【００７４】
コンピューティングシステムは、クライアントおよびサーバを含むことができる。クライアントとサーバは、一般的に互いに離れており、典型的には通信ネットワークを通して相互作用する。クライアントとサーバの関係は、それぞれのコンピュータ上で走り、互いにクライアント−サーバの関係を有するコンピュータプログラムによって生じる。
【００７５】
本明細書は多くの特定の実装上の詳細を含むが、これらは、任意の発明または特許請求されてもよいものの範囲についての限定と解釈するべきでなく、むしろ特定の発明の特定の実施形態に固有であってもよい特徴の記載として解釈するべきである。別個の実施形態の文脈で、本明細書で記載されるある種の特徴は、単一の実施形態中で組み合わせて実装することもできる。逆に、単一の実施形態の文脈で記載される様々な特徴は、複数の実施形態で別個に、または任意の好適な下位の組合せで実装することもできる。さらに、特徴が、ある種の組合せで機能すると上で記載され、そのように最初に特許請求される場合であっても、特許請求される組合せからの1つまたは複数の特徴は、いくつかの場合では、組合せから削除することができ、特許請求される組合せは、下位の組合せまたは下位の組合せの変形に向けることができる。
【００７６】
同様に、動作が特定の順番で図面に描かれているが、これらは、望ましい結果を達成するために、そのような動作が示された特定の順番で、もしくは連続した順番で実施されるべきであること、またはすべての図示された動作が実施されることを要求していると理解するべきでない。特定の状況では、マルチタスクおよび並列処理が有利な場合がある。さらに、上で記載した実施形態中の様々なシステムモジュールおよび構成要素の区切りは、すべての実施形態でそのような区切りを必要としていると理解するべきでなく、記載したプログラム構成要素およびシステムは、一般的に、単一のソフトウェア製品に一緒に統合すること、または複数のソフトウェア製品へとパッケージすることができると理解するべきである。
【００７７】
本主題の特定の実施形態を記載してきた。他の実施形態は、以下の請求項の範囲内である。例えば、請求項に記述した行為を、異なる順番で実施して、依然として望ましい結果を達成することができる。一例として、添付図面に描かれているプロセスは、望ましい結果を達成するため、必ずしも示された特定の順番、または連続した順番を必要としていない。ある種の実装形態では、マルチタスクおよび並列処理が有利な場合がある。
【符号の説明】
【００７８】
100  画像処理ニューラルネットワークシステム
102  ターゲットドメイン画像
110  共有エンコーダニューラルネットワーク
112  共有特徴表現
120  分類器ニューラルネットワーク
122  ネットワーク出力
200  ニューラルネットワークトレーニングシステム
210  プライベートターゲットエンコーダニューラルネットワーク
220  プライベートソースエンコーダニューラルネットワーク
230  共有デコーダニューラルネットワーク
300  プロセス
400  プロセス
【図１】
2019523504.tif 000025
【図２】
2019523504.tif 000026
【図３】
2019523504.tif 000027
【図４】
2019523504.tif 000028
【国際調査報告】
2019523504.tif 000029
2019523504.tif 000030