(57)【要約】      （修正有）【課題】オートエンコーダを学習するための方法、装置、データ構造及びプログラムを提供する。【解決手段】方法は、画像のデータセットを提供することを含む。各画像は、それぞれのオブジェクト表現を含む。本方法はまた、データセットに基づいてオートエンコーダを学習することを含む。学習は、再構成損失の最小化を含む。再構成損失は、各画像について距離にペナルティを課す項を含む。ペナルティが課される距離は、各画像にオートエンコーダを適用した結果と、各画像のオブジェクト表現に変換群の少なくとも一部を適用した結果の集合との距離である。【選択図】図１
2019003615.tif 000002
【特許請求の範囲】
【請求項１】
各画像がそれぞれのオブジェクト表現を含む、画像のデータセットを提供することと、
前記データセットに基づいてオートエンコーダ（
【数７４】
2019003615.tif 000076
）を学習することであって、前記学習が、再構成損失（
【数７５】
2019003615.tif 000077
）の最小化を含み、前記再構成損失が、各画像（ｘi）について、当該画像（ｘi）に前記オートエンコーダを適用した結果（
【数７６】
2019003615.tif 000078
）と、当該画像（ｘi）のオブジェクト表現に変換（ｈ）の群（
【数７７】
2019003615.tif 000079
）の少なくとも一部を適用した結果（
【数７８】
2019003615.tif 000080
）の集合との距離（
【数７９】
2019003615.tif 000081
）にペナルティを課す項（
【数８０】
2019003615.tif 000082
）を含むような、学習することと
を含むことを特徴とする、コンピュータによって実施される、オートエンコーダを学習するための方法。
【請求項２】
前記オートエンコーダは、前記変換群の少なくとも一部に関して不変である
ことを特徴とする請求項１に記載の方法。
【請求項３】
前記オートエンコーダは、前記変換群の前記少なくとも一部のそれぞれを入力画像のオブジェクト表現に適用するように構成された変換成分と、前記変換成分から得られる結果に適用されるように構成された集約成分（６０）と、符号化成分（ｆｗ）と、復号成分（ｇW´）とを含む
ことを特徴とする請求項２に記載の方法。
【請求項４】
前記符号化成分は、前記変換成分の各結果（５１〜５４）に並列に適用されるように構成されている
ことを特徴とする請求項３に記載の方法。
【請求項５】
前記集約成分は、前記符号化成分の結果（ｚi）に適用されるように構成されている
ことを特徴とする請求項４に記載の方法。
【請求項６】
前記復号成分は、前記集約成分の結果（ｚ）に適用されるように構成されている
ことを特徴とする請求項３、４、または５に記載の方法。
【請求項７】
前記符号化成分、および／または、前記復号成分は、畳み込みニューラルネットワークを含む
ことを特徴とする請求項３〜６のいずれか１つに記載の方法。
【請求項８】
前記集約成分が適用されるように構成された対象である第１の成分から得られる結果は、同じサイズのベクトルであり、前記集約成分は、各座標（ｌ）について、前記集約成分が適用されるように構成された対象である前記ベクトルの前記座標の値のうち、最大値（
【数８１】
2019003615.tif 000083
）に等しい値（ｚl）を有する同じサイズのベクトルを出力する
ことを特徴とする請求項３〜７のいずれか１つに記載の方法。
【請求項９】
前記画像は表面占有３Ｄモデルであり、前記変換群は平行移動を含む
ことを特徴とする請求項１〜８のいずれか１つに記載の方法。
【請求項１０】
前記オブジェクト表現は、それぞれ、同じオブジェクトクラスのインスタンスの表現であり、前記データセットの各画像は無向フレームを有し、各オブジェクト表現は、前記無向フレーム内で整列し、前記変換群は、前記無向フレームにおける１つの整列から前記無向フレームにおける別の整列へのすべての回転を含む
ことを特徴とする請求項１〜９のいずれか１つに記載の方法。
【請求項１１】
エンコーダ、デコーダ、および／または、請求項１〜１０のいずれか１つに記載の方法で学習可能なオートエンコーダの全体、および／または、請求項１〜１０のいずれか１つに記載の方法を実行するための命令を含むコンピュータプログラムを含む
ことを特徴とするデータ構造。
【請求項１２】
請求項１１に記載のデータ構造を記録したデータ記憶媒体を備える装置。
【請求項１３】
前記データ記憶媒体に接続されたプロセッサをさらに備えている
ことを特徴とする請求項１２に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータプログラムおよび及びシステムの分野に関し、より具体的には、オートエンコーダを学習するための方法、装置、データ構造、およびプログラムに関する。
【背景技術】
【０００２】
オブジェクトの設計、エンジニアリング、製造のため、多数のシステムおよびプログラムが市場に提供されている。ＣＡＤは、コンピュータ支援設計（Ｃｏｍｐｕｔｅｒ−Ａｉｄｅｄ  Ｄｅｓｉｇｎ）の略語であり、例えば、オブジェクトを設計するためのソフトウェア・ソリューションに関する。ＣＡＥは、コンピュータ支援エンジニアリング（Ｃｏｍｐｕｔｅｒ−Ａｉｄｅｄ  Ｅｎｇｉｎｅｅｒｉｎｇ）の略語であり、例えば、将来の製品の物理的挙動をシミュレーションするためのソフトウェア・ソリューションに関する。ＣＡＭは、コンピュータ支援製造（Ｃｏｍｐｕｔｅｒ−Ａｉｄｅｄ  Ｍａｎｕｆａｃｔｕｒｉｎｇ）の略語であり、例えば、製造工程および動作を定義するためのソフトウェア・ソリューションに関する。このようなコンピュータ支援設計システムにおいて、グラフィカル・ユーザ・インターフェースは、技術の効率に関して、重要な役割を果たす。これらの技術は、製品ライフサイクル管理（Ｐｒｏｄｕｃｔ  Ｌｉｆｅｃｙｃｌｅ  Ｍａｎａｇｅｍｅｎｔ：  ＰＬＭ）システムに組み込むことができる。ＰＬＭとは、企業が、拡張エンタープライズの概念全体にわたって、製品データを共有し、共通の工程を適用し、構想に始まり製品寿命の終わりに至る製品開発のための企業知識を活用するのを支援するビジネス戦略を指す。ダッソー・システムズが提供するＰＬＭソリューション（製品名ＣＡＴＩＡ、ＥＮＯＶＩＡ、ＤＥＬＭＩＡ）は、製品エンジニアリング知識を体系化するエンジニアリング・ハブ、製造エンジニアリング知識を管理する製造ハブ、およびエンジニアリング・ハブと製造ハブの両方に対するエンタープライズ統合と接続を可能にするエンタープライズ・ハブを提供する。全てのシステムは、製品、工程、リソースを結ぶオープンなオブジェクトモデルを提供し、最適化された製品定義、製造準備、生産およびサービスを推進する、動的な知識ベースの製品作成および意思決定支援を可能にする。
【０００３】
こうした文脈および他の文脈において、機械学習、特にオートエンコーダ、および／または、多様体学習の重要性が増している。
【０００４】
以下の論文が、本分野に関連し、以下で参照されている。
［１］：“Ｓｔａｃｋｅｄ  Ｄｅｎｏｉｓｉｎｇ  Ａｕｔｏｅｎｃｏｄｅｒｓ：Ｌｅａｒｎｉｎｇ  Ｕｓｅｆｕｌ  Ｒｅｐｒｅｓｅｎｔａｔｉｏｎｓ  ｉｎ  ａ  Ｄｅｅｐ  Ｎｅｔｗｏｒｋ  ｗｉｔｈ  ａ  Ｌｏｃａｌ  Ｄｅｎｏｉｓｉｎｇ  Ｃｒｉｔｅｒｉｏｎ”，Ｐ．Ｖｉｎｃｅｎｔ，Ｈ．Ｌａｒｃｏｈｅｌｌｅ，Ｉ．Ｌａｊｏｉｅ，Ｙ．Ｂｅｎｇｉｏ，Ｐ．Ｍａｎｚａｇｏｌ，ｉｎ  Ｔｈｅ  Ｊｏｕｒｎａｌ  ｏｆ  Ｍａｃｈｉｎｅ  Ｌｅａｒｎｉｎｇ  Ｒｅｓｅａｒｃｈ，２０１０．
［２］：“Ｒｅｄｕｃｉｎｇ  ｔｈｅ  Ｄｉｍｅｎｓｉｏｎａｌｉｔｙ  ｏｆ  Ｄａｔａ  ｗｉｔｈ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋｓ”，Ｇ．Ｅ．Ｈｉｎｔｏｎ，Ｒ．Ｒ．Ｓａｌａｋｈｕｔｄｉｎｏｖ，ｉｎ  Ｓｃｉｅｎｃｅ，２００６．
［３］：“Ｇｅｎｅｒａｌｉｚｅｄ  Ｄｅｎｏｉｓｉｎｇ  Ａｕｔｏ−Ｅｎｃｏｄｅｒｓ  ａｓ  Ｇｅｎｅｒａｔｉｖｅ  Ｍｏｄｅｌｓ”，Ｙ．Ｂｅｎｇｉｏ，Ｌ．Ｙａｏ，Ｇ．Ａｌａｉｎ，Ｐ．Ｖｉｎｃｅｎｔ，ｉｎ  Ａｄｖａｎｃｅｓ  ｉｎ  Ｎｅｕｒａｌ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｐｒｏｃｅｓｓｉｎｇ  Ｓｙｓｔｅｍｓ，２０１３．
［４］：“Ｌｅａｒｎｉｎｇ  Ｄｅｅｐ  Ａｒｃｈｉｔｅｃｔｕｒｅｓ  ｆｏｒ  ＡＩ”，Ｙ．Ｂｅｎｇｉｏ，ｉｎ  Ｆｏｕｎｄａｔｉｏｎｓ  ａｎｄ  Ｔｒｅｎｄｓ  ｉｎ  Ｍａｃｈｉｎｅ  Ｌｅａｒｎｉｎｇ，２００９．
［５］：“Ｅｘｔｒａｃｔｉｎｇ  ａｎｄ  Ｃｏｍｐｏｓｉｎｇ  Ｒｏｂｕｓｔ  Ｆｅａｔｕｒｅｓ  ｗｉｔｈ  Ｄｅｎｏｉｓｉｎｇ  Ａｕｔｏｅｎｃｏｄｅｒｓ”，Ｐ．Ｖｉｎｃｅｎｔ，Ｈ．Ｌａｒｏｃｈｅｌｌｅ，Ｙ．Ｂｅｎｇｉｏ，Ｐ．Ｍａｎｚａｇｏｌ，Ｗ．Ｃｏｈｅｎ，Ａ．ＭｃＣａｌｌｕｍ，Ｓ．Ｒｏｗｅｉｓ，ｉｎ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｍａｃｈｉｎｅ  Ｌｅａｒｎｉｎｇ，２００８．
［６］：“Ｇｒｅｅｄｙ  Ｌａｙｅｒ−Ｗｉｓｅ  Ｔｒａｉｎｉｎｇ  ｏｆ  Ｄｅｅｐ  Ｎｅｔｗｏｒｋｓ”，Ｙ．Ｂｅｎｇｉｏ，Ｐ．Ｌａｍｂｌｉｎ，Ｄ．Ｐｏｐｏｖｉｃｉ，Ｈ．Ｌａｒｃｏｈｅｌｌｅ，Ｂ．Ｓｃｈoｌｋｏｐｆ，Ｊ．Ｐｌａｔｔ，Ｔ．Ｈｏｆｆｍａｎ，ｉｎ  Ｎｅｕｒａｌ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｐｒｏｃｅｓｓｉｎｇ  Ｓｙｓｔｅｍｓ，２００７．
［７］：“Ａｕｔｏ−Ｅｎｃｏｄｉｎｇ  Ｖａｒｉａｔｉｏｎａｌ  Ｂａｙｅｓ”，Ｄ．Ｋｉｎｇｍａ，Ｍ．Ｗｅｌｌｉｎｇ，ｉｎ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｌｅａｒｎｉｎｇ  Ｒｅｐｒｅｓｅｎｔａｔｉｏｎｓ，２０１４．
［８］：“Ｓｔｏｃｈａｓｔｉｃ  Ｂａｃｋｐｒｏｐａｇａｔｉｏｎ  ａｎｄ  Ａｐｐｒｏｘｉｍａｔｅ  Ｉｎｆｅｒｅｎｃｅ  ｉｎ  Ｄｅｅｐ  Ｇｅｎｅｒａｔｉｖｅ  Ｍｏｄｅｌｓ”，Ｄ．Ｒｅｚｅｎｄｅ，Ｓ．Ｍｏｈａｍｅｄ，Ｄ．Ｗｉｅｒｓｔｒａ，ｉｎ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｍａｃｈｉｎｅ  Ｌｅａｒｎｉｎｇ，２０１４．
［９］：“Ｇｅｎｅｒａｔｉｖｅ  Ａｄｖｅｒｓａｒｉａｌ  Ｎｅｔｓ”，Ｉ．Ｇｏｏｄｆｅｌｌｏｗ，Ｊ．Ｐｏｕｇｅｔ−Ａｂａｄｉｅ，Ｍ．Ｍｉｒｚａ，Ｂ．Ｘｕ，Ｄ．Ｗａｒｄｅ−Ｆａｒｌｅｙ，Ｓ．Ｏｚａｉｒ，Ａ．Ｃｏｕｒｖｉｌｌｅ，Ｙ．Ｂｅｎｇｉｏ，ｉｎ  Ａｄｖａｎｃｅｓ  ｉｎ  Ｎｅｕｒａｌ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｐｒｏｃｅｓｓｉｎｇ  Ｓｙｓｔｅｍｓ，２０１４．
［１０］：“Ａ  Ｆａｓｔ  Ｌｅａｒｎｉｎｇ  Ａｌｇｏｒｉｔｈｍ  ｆｏｒ  Ｄｅｅｐ  Ｂｅｌｉｅｆ  Ｎｅｔｓ”，Ｇ．Ｈｉｎｔｏｎ，Ｓ．Ｏｓｉｎｄｅｒｏ，Ｙ．Ｔｈｅ，ｉｎ  Ｎｅｕｒａｌ  Ｃｏｍｐｕｔａｔｉｏｎ，２００６．
【０００５】
例えば、同じクラスのサンプルを表す画像のデータセット、例えば、椅子の２Ｄ画像のデータセット、または自動車の３Ｄモデルのデータセットが与えられると、オートエンコーダの学習（［１，２］で説明）は、このデータセットの元の入力空間と、潜在空間と呼ばれることの多い低次元空間との間の、マッピング（エンコーダ）を学習することを目的とする。さらに、オートエンコーダは、潜在空間から元の入力空間への逆マッピング（デコーダ）も学習する。オートエンコーダの学習の質は、オートエンコーダが入力をエンコードし、次いで、エンコードした入力を、所定の距離に応じて、入力に近い出力にデコードする能力として測定される。
【０００６】
こうした文脈において、オートエンコーダを学習するための改善された解決策が依然として必要とされている。
【発明の概要】
【０００７】
したがって、コンピュータによって実施される、オートエンコーダを学習するための方法が提供される。本方法は、画像のデータセットを提供することを含む。各画像は、それぞれのオブジェクト表現を含む。本方法はまた、前記データセットに基づいて前記オートエンコーダを学習することを含む。前記学習は、再構成損失の最小化を含む。前記再構成損失は、各画像について距離にペナルティを課す項を含む。前記ペナルティが課される距離は、各画像に前記オートエンコーダを適用した結果と、各画像のオブジェクト表現に変換群の少なくとも一部を適用した結果の集合との距離である。
【０００８】
本方法は、以下のうち１つまたは複数を含んでいてもよい。
・前記オートエンコーダは、変換群の少なくとも一部に関して不変である。
・前記オートエンコーダは、前記変換群の前記少なくとも一部のそれぞれを入力画像のオブジェクト表現に適用するように構成された変換成分と、前記変換成分から得られる結果に適用されるように構成された集約成分と、符号化成分と、復号成分と、を含む。
・前記符号化成分は、前記変換成分の各結果に並列に適用されるように構成されている。
・前記集約成分は、前記符号化成分の結果に適用されるように構成されている。
・前記復号成分は、前記集約成分の結果に適用されるように構成されている。
・前記符号化成分、および／または、前記復号成分は、畳み込みニューラルネットワークを含む。
・前記集約成分が適用されるように構成された対象である第１の成分から得られる結果は、同じサイズのベクトルであり、前記集約成分は、各座標について、前記集約成分が適用されるように構成された対象である前記ベクトルの前記座標の値のうち、最大値に等しい値を有する同じサイズのベクトルを出力する。
・前記画像は表面占有（ｓｕｒｆａｃｅ  ｏｃｃｕｐａｎｃｙ）３Ｄモデルであり、前記変換群は平行移動を含む。かつ／あるいは、
・前記オブジェクト表現は、それぞれ、同じオブジェクトクラスのインスタンスの表現であり、前記データセットの各画像は無向フレームを有し、各オブジェクト表現は、前記無向フレーム内で整列（ａｌｉｇｎｅｄ）し、前記変換群は、前記無向フレームにおける１つの整列（ａｌｉｇｎｍｅｎｔ）から前記無向フレームにおける別の整列への全ての回転を含む。
【０００９】
さらには、エンコーダ、デコーダ、および／または、本方法により学習可能なオートエンコーダの全体を含む情報が提供される。前記オートエンコーダの全体は、前記オートエンコーダそれ自体からなる。前記オートエンコーダは、画像空間に属する任意の入力を、例えば潜在空間に属するベクトルに符号化するように構成されたエンコーダと、前記潜在空間に属する任意のベクトルを、前記画像空間に属する出力に復号するように構成されたデコーダとを備える。提供されるこのような情報は、任意の方法で用いることができる。
【００１０】
さらには、本方法、および／または、本プロセスを実行するための命令を含むコンピュータプログラムが提供される。
【００１１】
さらには、前記情報、および／または、前記プログラムを含むデータ構造が提供される。
【００１２】
さらには、前記データ構造を記録したコンピュータ読み取り可能な記憶媒体が提供される。
【００１３】
さらには、前記データ構造を記録したコンピュータ読み取り可能なデータ記憶媒体を備える装置が提供される。前記装置は、非一時的なコンピュータ読み取り可能な媒体を構成してもよい。あるいは、前記装置は、前記データ記憶媒体に接続されたプロセッサを備えていてもよい。前記装置は、このように、システムを構成していてもよい。前記システムは、さらに、前記プロセッサに接続されたグラフィカル・ユーザ・インターフェースを備えていてもよい。
【図面の簡単な説明】
【００１４】
【図１】本方法の一例のフローチャートを示す。
【図２】本システムのグラフィカル・ユーザ・インターフェースの一例を示す。
【図３】本システムの一例を示す。
【図４】本方法を説明するための図である。
【図５】本方法を説明するための図である。
【図６】本方法を説明するための図である。
【発明を実施するための形態】
【００１５】
図１は、オートエンコーダを学習するための方法の一例を示す。
そのような学習において古典的であるように、本方法は、画像のデータセットを提供すること（Ｓ１０）と、当該データセットに基づいてオートエンコーダを学習すること（Ｓ２０）とを含む。学習は、再構成損失の最小化を含む。最小化は、どのような方法で行ってもよく、正確な最小化、または疑似最小化を構成してもよい。再構成損失は、データセットのそれぞれの画像について、データセットのそれぞれの画像の距離にペナルティを課す項を含むか、またはそれらからなる。距離は、各画像について、同じ距離関数の値であってもよい。
【００１６】
ここで、本方法の場合、各画像は、オブジェクト表現を含む。そして、再構成損失においてペナルティが課される距離は、所与の各画像について、当該所与の画像にオートエンコーダを適用した結果と、当該所与の画像のオブジェクト表現に変換群の少なくとも一部を適用した結果の集合との距離である。距離は、画像タイプの要素と、それぞれ画像タイプのエレメントの集合との、任意の距離であってもよい。距離は、画像距離、すなわち画像タイプの２つの要素間の距離を実現することができる。距離は、例えば、それぞれが、当該所与の画像と、当該所与の画像のオブジェクト表現に変換群の少なくとも一部を適用した結果の集合のうちのそれぞれ１つとの距離である、画像距離の最小値であってもよい。
【００１７】
画像のオブジェクト表現に対し変換を適用することは、結果の画像が同じフォーマットとなるように画像を処理することに相当し、オブジェクト表現は、結果として得られる画像において、変換に応じて修正されている。変換群は、画像のオブジェクト表現に適用可能な任意の演算の集合である。集合は代数群を構成してもよい。変換群、および／または、当該群の少なくとも一部は、データセットの全ての画像について同じ集合であってもよい。変換群は、例えば、１つまたは複数（例えば全て）の平行移動、１つまたは複数（例えば全て）の回転、１つまたは複数（例えば全て）の剛体運動、１つまたは複数（例えば全て）の等長写像、および、１つまたは複数（例えば全て）の伸張またはスケーリング変換、またはそれらの任意の組み合わせのような１つまたは複数の非等長写像変換などを含む、またはそれらからなる、ジオメトリ的変換を含んでいるか、あるいは、それらからなっていてもよい。
【００１８】
このような方法は、オートエンコーダの学習を改善する。
【００１９】
特に、本方法によって学習されたオートエンコーダは、変換群に対するオブジェクト表現の変動性に関して、比較的正確である。実際、各画像に対して、オブジェクト表現の変換に無関係なペナルティ項を（変換群における提供された部分に応じて）用いることによって、学習は、例えば向き付けではなくジオメトリ的再構成のような、再構成の他の側面に集中することができる。再構成損失の特定の距離ペナルティ項のおかげで、学習は、オートエンコーダが、変換群の前記少なくとも一部のうちのいずれか１つに応じて、それぞれの画像のオブジェクト表現を自由に変換できるようなものとなる。言い換えれば、オートエンコーダは、再構成損失の前記項に影響を及ぼすような修正を加えることなく、入力画像において表されたオブジェクトに対し変換群の前記少なくとも一部のうちのいずれか１つを適用することによって各入力画像を修正することが許可されている。このような自由度により、最小化に新たな可能性が提供される。これにより、自由度を提供しない従来技術の再構成損失、例えば再構成損失においてペナルティが課される唯一の距離がデータセットの各画像にオートエンコーダを適用した結果と、その画像そのまま、すなわち何の変換もしていない画像との距離であるような従来技術の再構成損失と比較して、最終的に学習されるオートエンコーダが改善される。
【００２０】
変換群は予め決定されていてもよく、また（上述のように）前記変換群に無関係なオートエンコーダを学習する目的に対応してもよい。このため、本方法によって学習されたオートエンコーダを、「商」オートエンコーダと呼び、再構成損失を「商」損失と呼ぶことがある。
【００２１】
ここで、変換群は有限または無限であってもよい。変換群が有限の場合、全ての変換が最小化に考慮されてもよい（すなわち、群の上記少なくとも一部が、群全体からなる）。全ての場合、および、特に群が無限の場合、その厳密な部分が考慮されてもよい。全ての場合において、上記群の一部は、群からのサンプリング、例えば、定期的なサンプリング（例えば、群に定義された確率尺度、例えば、特に、回転群のようなリー群の場合には、均一な尺度に従ったサンプリング）であってもよい。サンプリングは、比較的、密なサンプリングであってもよい。これにより学習がロバストになる。
【００２２】
本方法において考えられている画像は、例えばシーン上における物理的信号の空間的分布を表すデータ構造であり、例えば、分布は、区分的に連続している。空間的分布は、任意の次元、例えば、２Ｄまたは３Ｄであってもよい。空間的分布は、任意の形状であってもよく、例えば不規則または規則的である可能性のあるグリッドを形成し、それによってピクセルを定義してもよい。物理的信号は、任意の信号であってもよく、例えば、色、グレーレベル、深さ、表面または体積占有率であって、画像が、２Ｄまたは３ＤのＲＧＢ／グレースケール／深度画像、または３Ｄ表面／体積占有モデルであってもよい。画像は、設計された３Ｄモデル化オブジェクトのような合成画像、あるいは写真のような自然画像であってもよい。提供される画像、および／または、オートエンコーダが適用される画像は、全て、例えば上記の例のタイプのうちの同じタイプであってもよい。
【００２３】
本方法において考えられている画像は、モデル化オブジェクトである。モデル化オブジェクトは、例えばデータベースに格納されたデータによって定義される任意のオブジェクトである。さらには、「モデル化オブジェクト」という表現は、データそのものも指す。システムの種類に応じて、異なる種類のデータによってモデル化オブジェクトが定義されてもよい。実際、システムは、ＣＡＤシステム、ＣＡＥシステム、ＣＡＭシステム、ＰＤＭシステム、および／またはＰＬＭシステムのうちの任意の組み合わせであってもよい。それら異なるシステムにおいて、モデル化オブジェクトは、対応するデータによって定義される。したがって、ＣＡＤオブジェクト、ＰＬＭオブジェクト、ＰＤＭオブジェクト、ＣＡＥオブジェクト、ＣＡＭオブジェクト、ＣＡＤデータ、ＰＬＭデータ、ＰＤＭデータ、ＣＡＭデータ、ＣＡＥデータについて言及することがある。しかしながら、モデル化オブジェクトは、これらのシステムの任意の組み合わせに対応するデータによって定義されてもよいため、これらのシステムは、互いに排他的なものではない。したがって、システムは、ＣＡＤ兼ＰＬＭシステムであってもよい。
【００２４】
ＣＡＤシステムは、少なくとも、ＣＡＴＩＡのようなモデル化オブジェクトのグラフィック表現に基づくモデル化オブジェクトの設計に適した任意のシステムをも意味する。この場合、モデル化オブジェクトを定義するデータは、モデル化オブジェクトを表現可能にするデータを含む。ＣＡＤシステムは、例えば、辺や線を用い、また、場合により面（ｆａｃｅｓ  ｏｒ  ｓｕｒｆａｃｅｓ）を用いて、ＣＡＤモデル化オブジェクトの表現を提供してもよい。線、辺、あるいは面は、例えば、非一様有理Ｂスプライン（ＮＵＲＢＳ）など、様々な様式で表現されてもよい。具体的には、ＣＡＤファイルは仕様を含み、その仕様に基づきジオメトリが生成可能であり、よって表現が生成可能となる。モデル化オブジェクトの仕様は１つまたは複数のＣＡＤファイルに格納されていてもよい。ＣＡＤシステムでモデル化オブジェクトを表現するファイルの典型的なサイズは、一部分あたり１メガバイトの範囲である。また、モデル化オブジェクトは、典型的には、数千の部分の集合体であってもよい。
【００２５】
ＣＡＤの文脈において、モデル化オブジェクトは、典型的には、３Ｄモデル化オブジェクト、例えば、一つの部品や部品の集合体などの製品、あるいは製品の集合体を表現するものであってもよい。「３Ｄモデル化オブジェクト」は、３Ｄ表現が可能なデータによってモデル化される任意のオブジェクトを意味する。３Ｄ表現は、その部品を全ての角度から見ることを可能にする。たとえば、３Ｄで表現された３Ｄモデル化オブジェクトは、その軸のうちの任意の軸、あるいは、その表現が表示された画面中の任意の軸を中心に、処理して回転させることが可能である。これは、特に、３Ｄモデル化されていない２Ｄアイコンについては除外される。３Ｄ表現の表示は、設計を容易にする（すなわち、設計者が作業を達成するスピードを統計的に速める）。製品の設計は製造工程の一部であるから、これによって当該産業における製造工程が迅速化する。
【００２６】
データセットの３Ｄモデル化オブジェクトは、ＣＡＤソフトウェア・ソリューションやＣＡＤシステム等を用いた仮想的デザインの完了後に実世界において製造される製品、すなわち（例えば機械）部品や、部品の集合体（あるいは同様に部品の集合体。なぜなら部品の集合体は本方法の観点では一つの部品としてみることができ、また、本方法は集合体における各部品に独立して適用することができるからである）など、より一般的には任意の剛体の集合体（例えば移動機構）などの製品のジオメトリを表現してもよい。ＣＡＤソフトウェア・ソリューションは、航空宇宙、建築、建設、消費財、ハイテク機器、産業機器、輸送、海洋、および／または海洋石油／ガス生産、または交通を含む、限定されることのない様々な産業分野において製品の設計を可能にする。本方法により設計された３Ｄモデル化オブジェクトは、このように、地上車両の部品（例えば、自動車および軽トラック機器、レーシングカー、オートバイ、トラックおよびモーター機器、トラック、バス、電車を含む）、航空車両の部品（例えば、航空機体機器、航空宇宙機器、推進機器、防衛製品、航空路線機器、宇宙機器を含む）、海軍車両の部品（例えば、海軍用機器、商業用船舶、オフショア機器、ヨットおよび作業船、船舶用機器を含む）、一般的な機械部品（例えば、工業用製造機械、大型移動機械または機器、設置機器、産業機器製品、加工金属製品、タイヤ製造製品を含む）、または電気機械部品または電子部品（例えば、家電、セキュリティおよび／または制御および／または計装製品、コンピューティングおよび通信機器、半導体、医療装置および設備を含む）、消費者製品（例えば、家具、家庭用および庭用製品、レジャー用品、ファッション用品、耐久消費財小売用品、織物類小売用品を含む）、包装（例えば、食品および飲料およびたばこ、美容およびパーソナルケア、家庭用製品包装を含む）などのように、任意の機械部品であり得る工業製品を表してもよい。
【００２７】
データセットは、画像を含み、あるいはそれらからなり、オブジェクト表現は、それぞれ、同じオブジェクトクラスのインスタンスの表現である。「オブジェクトクラス」という表現は、画像としてインスタンス化が可能なエンティティ（すなわちオブジェクト）の任意のクラスを指す。オブジェクトクラスのオブジェクト、言い換えれば、クラスのインスタンスが、画像として表現されている場合、オブジェクトクラスが画像としてインスタンス化されていると言う。
【００２８】
本方法によって提供されるデータセットは、同じクラスの非整列オブジェクト表現を有する画像が含まれていてもよい。データセットは、学習に直接（すなわち、そのまま）入力されてもよい。言い換えれば、本方法は、オブジェクト表現を整列させるための前処理を排除してもよい。また、オートエンコーダは、同じクラスのオブジェクト表現を有する画像が入力されたとき（画像は、整列されて、あるいは全て整列はされずに入力される）、全ての出力を、整列させるか、あるいは実質的に整列させるように構成されていてもよい。
【００２９】
本方法において考えられているフレーム（または「基準フレーム」または「基礎」）は、直交フレーム（すなわち、３つの直交方向を定義する）であってもよい。この方法において考えられているフレームは、原点を有していてもよいし、あるいは原点を有していなくてもよい。本方法おいて考えられているフレームは、有向であっても無向であってもよい。
【００３０】
画像は、原点、および／または、向きを有する、フレームを有していてもよい。画像のフレームは、例えば本方法によって、画像をどのように処理するかを決定する。２Ｄ矩形画像は例えば（ｘ，ｙ）フレームを有し、３Ｄ画像は例えば（ｘ，ｙ，ｚ）フレームを有する。画像は、フレーム、または当該フレームを間接的に定義する向きを有していてもよく、それによって決定することができる。画像のフレームと画像との関係（すなわち、相対的な位置決め）は、データセットの全ての画像について同じであってもよい。
【００３１】
クラスの各オブジェクトは、（例えば、一意、かつ／または、自然な）無向フレーム、を有していてもよく、よって、自然な無向フレームの異なる向きに対応するいくつかの自然な有向フレームを有することができる。言い換えれば、クラスは、そのような、所定の無向および／または有向フレームによって定義することができる。例えば、車のクラス、あるいは椅子のクラスは、自然な有向フレームを有し、ｚ軸は上下方向に対応し、ｘ軸はオブジェクト上、またはその内部に座ったときの左右方向に対応し、ｙ軸は、オブジェクト上、またはその内部に座ったときの前後方向に対応する。画像内のオブジェクト表現のフレームは仮想フレームを指し、オブジェクトのフレームが画像内でどのように表現されるかに対応する。
【００３２】
画像のオブジェクト表現は、オブジェクト表現の無向フレームが画像の無向フレームと等しい場合、画像の無向フレームと整列していると言うことができる。異なる画像のオブジェクト表現は、画像の有向フレームが整列しているとき、オブジェクト表現の有向フレームも整列している場合、整列していると言うことができる。
【００３３】
一般に、任意の学習を、非整列モデルに対して行うことができる。しかし、モデルが単独で回転変動性を学習できるようにするために専用のデータを必要とするため、従来技術では、速度と品質の点で、学習のパフォーマンスが低下する。さらに、従来技術では、オートエンコーダの所与のアーキテクチャに対して、固有の形状に加えて回転の概念を符号化しなければならないため、潜在的なベクトルは、モデルが整列していないとき、それらのジオメトリ的形状をあまり表現できない。
【００３４】
本方法とは異なる解決策として、データセットを前処理して画像を同時整列（ｃｏ−ａｌｉｇｎ）させることが考えられる。それについて、ここで、以下の論文を参照して説明する。
［１１］：“Ａｌｉｇｎｍｅｎｔ  ｏｆ  ３Ｄ  ｍｏｄｅｌｓ”，Ｍ．Ｃｈａｏｕｃｈ，Ａ．Ｖｅｒｒｏｕｓｔ−Ｂｌｏｎｄｅｔ，ｉｎ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｓｈａｐｅ  Ｍｏｄｅｌｉｎｇ  ａｎｄ  Ａｐｐｌｉｃａｔｉｏｎｓ，２００８．
［１２］：“Ａｕｔｏｃｏｒｒｅｌａｔｉｏｎ  Ｄｅｓｃｒｉｐｔｏｒ  ｆｏｒ  Ｅｆｆｉｃｉｅｎｔ  Ｃｏ‐Ａｌｉｇｎｍｅｎｔ  ｏｆ  ３Ｄ  Ｓｈａｐｅ  Ｃｏｌｌｅｃｔｉｏｎｓ”，Ｍ．Ａｖｅｒｋｉｏｕ，Ｖ．Ｋｉｍ，Ｎ．Ｍｉｔｒａ，ｉｎ  Ｃｏｍｐｕｔｅｒ  Ｇｒａｐｈｉｃｓ  Ｆｏｒｕｍ，２０１６．
［１３］：“Ｃｏ−ｒｅｇｉｓｔｒａｔｉｏｎ  ｏｆ  Ｓｕｒｆａｃｅｓ  ｂｙ  ３Ｄ  Ｌｅａｓｔ  Ｓｑｕａｒｅｓ  Ｍａｔｃｈｉｎｇ”，Ｄ．Ａｋｃａ，ｉｎ  Ｐｈｏｔｏｇｒａｍｍｅｔｒｉｃ  Ｅｎｇｉｎｅｅｒｉｎｇ  ａｎｄ  Ｒｅｍｏｔｅ  Ｓｅｎｓｉｎｇ，２０１０．
［１４］：“Ｒｅｇｉｓｔｒａｔｉｏｎ  ｏｆ  ３Ｄ  Ｐｏｉｎｔ  Ｃｌｏｕｄｓ  ａｎｄ  Ｍｅｓｈｅｓ：Ａ  Ｓｕｒｖｅｙ  Ｆｒｏｍ  Ｒｉｇｉｄ  ｔｏ  Ｎｏｎ−Ｒｉｇｉｄ”，Ｇ．Ｔａｍ，Ｚ．Ｃｈｅｎｇ，Ｙ．Ｌａｉ，Ｆ．Ｌａｎｇｂｅｉｎ，Ｙ．Ｌｉｕ，Ａ．Ｄａｖｉｄ  Ｍａｒｓｈａｌｌ，Ｒ．Ｍａｒｔｉｎ，Ｘ．Ｓｕｎ，Ｐ．Ｒｏｓｉｎ，ｉｎ  ＩＥＥＥ  Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  Ｖｉｓｕａｌｉｚａｔｉｏｎ  ａｎｄ  Ｃｏｍｐｕｔｅｒ  Ｇｒａｐｈｉｃｓ，２０１３．
［１５］：“Ａ  Ｓｅｇｍｅｎｔａｔｉｏｎ  Ｔｒａｎｓｆｅｒ  Ａｐｐｒｏａｃｈ  ｆｏｒ  Ｒｉｇｉｄ  Ｍｏｄｅｌｓ”，Ｅ．Ｅｌｇｈｏｕｌ，Ａ．Ｖｅｒｒｏｕｓｔ−Ｂｌｏｎｄｅｔ，Ｍ．Ｃｈａｏｕｃｈ，ｉｎ  Ｊｏｕｒｎａｌ  ｏｆ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｓｃｉｅｎｃｅ  ａｎｄ  Ｅｎｇｉｎｅｅｒｉｎｇ，２０１５．
［１６］：“Ｃｏｎｓｉｓｔｅｎｔ  Ｓｅｇｍｅｎｔａｔｉｏｎ  ｏｆ  ３Ｄ  Ｍｏｄｅｌｓ”，Ａ．Ｇｏｌｏｖｉｎｓｋｉｙ，Ｔ．Ｆｕｎｋｈｏｕｓｅｒ，ｉｎ  Ｃｏｍｐｕｔｅｒ  ａｎｄ  Ｇｒａｐｈｉｃｓ，２００９．
［１７］：“Ｊｏｉｎｔ  Ｓｈａｐｅ  Ｓｅｇｍｅｎｔａｔｉｏｎ  ｗｉｔｈ  Ｌｉｎｅａｒ  Ｐｒｏｇｒａｍｍｉｎｇ”，Ｑ．Ｈｕａｎｇ，Ｖ．Ｋｏｌｔｕｎ，Ｌ．Ｇｕｉｂａｓ，ｉｎ  ＳＩＧＧＲＡＰＨ  Ａｓｉａ，２０１１．
［１８］：“Ａｃｔｉｖｅ  Ｃｏ−Ａｎａｌｙｓｉｓ  ｏｆ  ａ  Ｓｅｔ  ｏｆ  Ｓｈａｐｅｓ”，Ｙ．Ｗａｎｇ，Ｓ．Ａｓａｆｉ，Ｏ．Ｖａｎ  Ｋａｉｃｋ，Ｈ．Ｚｈａｎｇ，Ｄ．Ｃｏｈｅｎ−Ｏｒ，Ｂ．Ｃｈｅｎ，ｉｎ  ＳＩＧＧＲＡＰＨ  Ａｓｉａ，２０１２．
［１９］：“Ｌｅａｒｎｉｎｇ  Ｐａｒｔ−ｂａｓｅｄ  Ｔｅｍｐｌａｔｅｓ  ｆｒｏｍ  Ｌａｒｇｅ  Ｃｏｌｌｅｃｔｉｏｎｓ  ｏｆ  ３Ｄ  Ｓｈａｐｅｓ”，Ｖ．Ｋｉｍ，Ｗ．Ｌｉ，Ｎ．Ｍｉｔｒａ，Ｓ．Ｃｈａｕｄｈｕｒｉ，Ｓ．ＤｉＶｅｒｄｉ，Ｔ．Ｆｕｎｋｈｏｕｓｅｒ，ｉｎ  ＳＩＧＧＲＡＰＨ，２０１３．
【００３５】
同時整列（ｃｏ−ａｌｉｇｎｍｅｎｔ）は、同じフレーム内で画像（例えば、３Ｄモデル）のデータセットを整列させることからなる。同時整列は、固定的位置合わせ（ｒｉｇｉｄ  ｃｏ−ｒｅｇｉｓｔｒａｔｉｏｎ）と呼ばれることがある。３Ｄモデルを同時整列させるための多くの技術が存在し、それらは時に対称性と相関分析に基づき［１１，１２］、時に連続エネルギーの最小化に基づく［１３，１４］。同時セグメント化は、３Ｄモデルの各セグメントが、他のモデルのそれぞれにおいて、対応するセグメントを有するように、３Ｄモデルのデータセットをセグメント化することからなる。この問題に取り組むために、例えば、グラフクラスタリングを用いたり［１６］、線形プログラミングを用いたりするなど［１７］、多くの方法が開発されている。同時整列および同時セグメント化は［１５，１９］で行われているように、同時分析フレームワークにおいて同時に実行することもできる。
【００３６】
しかし、既存の方法には多くの欠点がある。あるものは手動での監視を必要とし［１８］、形について変動性が低いものもある。また正確な特徴量を算出するのに非常にクリーンなメッシュも必要とする方法もある。また、いくつかの方法は、１つの基準メッシュに関して各要素のペアワイズマッチングを行うことにより、全てのデータセットの整列について算出するが、データセット全体を一度に活用して一貫したフレームを算出することができない。さらには、データセットを整列させたときに、新しい３Ｄモデルを同時整列させる高速な方法はない。最後に、何らかのエラーが発生した場合、畳み込み学習では、可能性のある全ての回転についてデータの拡大を伴いつつ、学習することなしには、整列における誤りを訂正することができない。同様の欠点が、同時セグメント化法にも当てはまる。
【００３７】
本方法では、オブジェクト表現を整列させるためのそのようなあらゆる前処理を排除することができるので、本方法は上記欠点を示さない。
【００３８】
本方法によって学習したオートエンコーダは、例えば、元の空間で現実的な非線形補間を行い、データ内の有意な特徴を抽出し、かつ／またはデータをコンパクトな表現に圧縮するために、任意のアプリケーションで用いることができる。
【００３９】
本オートエンコーダは、２つのフィードフォワード・ディープ・ニューラル・ネットワーク（［４］）を合成したものを含んでいてもよく、これらは、重みＷおよびＷ´でパラメータ化した
【数１】
2019003615.tif 000003
および
【数２】
2019003615.tif 000004
で表すことができる。ここで、
【数３】
2019003615.tif 000005
であり、ｐは潜在空間の次元、ｍは元の入力空間の次元である。ｆWはエンコーダ、ｇW´はデコーダと呼ばれる。ｚ＝ｆ（ｘ）は、潜在（または隠れ）ベクトルと呼ばれる。
【数４】
2019003615.tif 000006
を画像の入力データセットとし、ここでｎはサンプルの数である。
【００４０】
従来技術の学習方法では、再構成損失
【数５】
2019003615.tif 000007
を最適化してオートエンコーダ
【数６】
2019003615.tif 000008
を学習できる。ここで
【数７】
2019003615.tif 000009
は入力サンプルと再構成されたサンプルとをオートエンコーダによって比較した距離であり、例えば、
【数８】
2019003615.tif 000010
は、Ｌ２ノルムとすることができる。本方法は、この原則に従って実行されるが、上述したように、また以下でさらに詳述するように、再構成損失に関わるペナルティ項の定義が異なる。
【００４１】
例では、各サンプルｘi＋ηにランダムノイズを適用し、オートエンコーダをトレーニングしてクリーンバージョンｘiを再構成することにより、学習プロセスをよりロバストにすることができる。そのような場合、本方法で学習したこのバージョンのオートエンコーダを、「ノイズ除去オートエンコーダ」と呼ぶことがある（［５］で説明）。
【００４２】
例では、本方法は、［６］で説明されているように、貪欲かつ層ごとの方法で（ｇｒｅｅｄｙ  ｌａｙｅｒ−ｗｉｓｅ  ｆａｓｈｉｏｎ）、アーキテクチャを事前にトレーニングしてもよく、これは「積層オートエンコーダ」と呼ばれるバージョンである。
【００４３】
ｆWとｇW´に対し、多くのアーキテクチャを用いることができる。画像や３Ｄ形状など、空間的に構造化されたデータに対しては、畳み込みニューラルネットワーク（ＣＮＮ）が非常に強力であることが証明されており、実装可能である。
【００４４】
データの次元性を低下させるエンコーダｆについては、特に問題はない。しかし、本方法では、畳み込みデコーダｇW´も構築する。そのための簡単な方法は、以下の通りである。中間空間表現Ｉについては、本方法は、信号Ｉをアップサンプリングし（アップ・プーリングと呼ばれることもある工程）、次いで、それに対して古典的な畳み込みを適用してもよい。この動作は、「アップ・コンボリューション」あるいは「転置畳み込み」と呼ばれることがある。
【００４５】
例では、本方法によって学習したオートエンコーダは、生成モデルを形成してもよい（［３］で説明）。生成モデルは、データの分布を学習する確率モデルである。このように、オートエンコーダは、学習したデータ分布をサンプリングすることによって、データセットから学習した内容に基づいて、新たな現実的モデルあるいは画像を合成するのに用いることもできる。
【００４６】
そのため、オートエンコーダは、例えば、変分オートエンコーダを形成してもよい（［７，８］で説明）。［３］と比較すると、変分オートエンコーダにおけるサンプリング工程は、より効率的である。変分オートエンコーダモデルのエンコーダを
【数９】
2019003615.tif 000011
デコーダモデルを
【数１０】
2019003615.tif 000012
とし、ここでｚは潜在ベクトルである。変分オートエンコーダは、ｐ（ｚ）に対し事前分布を行い（ｉｍｐｏｓｅｓ  ａ  ｐｒｉｏｒ）、次いで、ｐ（ｘ）の尤度を最大化するため、
【数１１】
2019003615.tif 000013
を可能な限り
【数１２】
2019003615.tif 000014
に近づけようとする。
【００４７】
本方法は、ガウスモデルを用いてもよく、したがって、変分オートエンコーダは、深層潜在ガウスモデル（ｄｅｅｐ  ｌａｔｅｎｔ  Ｇａｕｓｓｉａｎ  ｍｏｄｅｌ）に類似している。実際、変分オートエンコーダで最適化する最終的な損失は、オートエンコーダの伝統的な再構成損失と、
【数１３】
2019003615.tif 000015
を
【数１４】
2019003615.tif 000016
に近づける潜在空間上の正規化項（潜在損失と呼ばれる）である。
【００４８】
したがって、本方法によって学習したオートエンコーダは、従来のオートエンコーダ、または変分オートエンコーダを形成してもよい。
あるいは、本方法は、Ｇｅｎｅｒａｔｉｖｅ  Ａｄｖｅｒｓａｒｉａｌ  Ｎｅｔｗｏｒｋ（［９］で説明）、またはＤｅｅｐ  Ｂｅｌｉｅｆ  Ｎｅｔｗｏｒｋ（［１０］で説明）のような、他の任意の生成モデルを形成してもよい。
【００４９】
「コンピュータにより実施される」とは、すなわち、ステップ（あるいは略全てのステップ）が少なくとも１つのコンピュータ、または類似の任意のシステムによって実行されることを意味する。よってステップは、コンピュータにより、完全に自動的に、あるいは半自動的に実行される可能性がある。例えば、少なくともいくつかのステップは、ユーザとコンピュータの対話を通じて始動されてもよい。求められるユーザとコンピュータの対話レベルは、想定される自動性のレベルに応じたものであって、ユーザの要望を実装する必要性との間でバランスをとるものとしてもよい。例えば、このレベルは、ユーザが設定し、かつ／あるいは、予め定義されていてもよい。
【００５０】
方法のコンピュータによる実施の典型的な例は、この目的に適したシステムを用いて本方法を実行することである。当該システムは、本方法を実行するための命令を含むコンピュータプログラムを記録したメモリに接続されたプロセッサ、および、グラフィカル・ユーザ・インターフェース（ＧＵＩ）を備えていてもよい。メモリは、データベースを記憶していてもよい。メモリは、そのような記憶に適した任意のハードウェアであり、場合により、物理的に区別可能ないくつかの部分（例えば、プログラム用に１つ、場合によりデータベース用に１つ）を含む。
【００５１】
図２は本システムのＧＵＩの一例を示し、本システムは、本方法を起動する前に、３Ｄモデル化オブジェクト２０００である画像を設計し、かつ／あるいは、その画像をデータセットに追加し、かつ／あるいは、そのような画像を、本方法によって学習したオートエンコーダによって出力された再構成体として表示し、またはオートエンコーダまたはその一部をその画像に適用する前の画像を表示するのに用いることができるＣＡＤシステムである。
【００５２】
ＧＵＩ２１００は、標準的なメニューバー２１１０，２１２０、ならびに底部および側面のツールバー２１４０，２１５０を有する典型的なＣＡＤのようなインターフェースであってもよい。このようなメニューバーおよびツールバーは、ユーザが選択可能なアイコンのセットを含み、各アイコンは、当技術分野で知られているように、１つまたは複数の操作または機能に関連付けられている。これらのアイコンのいくつかは、ＧＵＩ２１００に表示された３Ｄモデル化オブジェクト２０００の編集および／または作業に適合したソフトウェアツールに関連付けられている。ソフトウェアツールはワークベンチに分類することができる。各ワークベンチは、ソフトウェアツールのサブセットを含む。特に、ワークベンチの１つは、モデル化製品２０００のジオメトリ的特徴を編集するのに適した編集ワークベンチである。操作中、設計者は、例えば、オブジェクト２０００の一部を予め選択し、次いで、適切なアイコンを選択することによって、操作を開始する（例えば、寸法、色などを変更する）か、ジオメトリ的制約を編集することができる。例えば、典型的なＣＡＤ操作は、スクリーン上に表示された３Ｄモデル化オブジェクトのパンチングまたは折り畳みのモデリングである。ＧＵＩは、例えば、表示された製品２０００に関連するデータ２５００を表示してもよい。図の例では、「特徴ツリー」として表示されたデータ２５００およびそれらの３Ｄ表現２０００は、ブレーキキャリパおよびディスクを含むブレーキ部品に関するものである。ＧＵＩは、編集された製品の動作のシミュレーションを起動するため、または表示された製品２０００の様々な属性を描画するために、例えばオブジェクトの３Ｄ定位を容易にするための様々なタイプのグラフィックツール２１３０，２０７０，２０８０をさらに示してもよい。カーソル２０６０は、ユーザがグラフィックツールを用いて対話操作ができるように、触覚装置によって制御されてもよい。
【００５３】
図３は、本システムの一例を示すものであって、当該システムは、クライアントコンピュータシステム、例えばユーザのワークステーションである。
【００５４】
本例のクライアントコンピュータは、内部通信バス１０００に接続された中央演算処理装置（ＣＰＵ）１０１０、および同じくバスに接続されたランダムアクセスメモリ（ＲＡＭ）１０７０とを備える。クライアントコンピュータは、さらに、バスに接続されたビデオランダムアクセスメモリ１１００と関連付けられたグラフィックス処理装置（ＧＰＵ）１１１０を備える。ビデオＲＡＭ１１００は、当該技術分野において、フレームバッファとしても知られる。大容量記憶装置コントローラ１０２０は、ハードドライブ１０３０などの大容量記憶装置へのアクセスを管理する。コンピュータプログラムの命令及びデータを具体的に実現するのに適した大容量メモリ装置は、例として、ＥＰＲＯＭ、ＥＥＰＲＯＭ及びフラッシュメモリ装置のような半導体メモリ装置、内蔵ハードディスクやリムーバブルディスクなどの磁気ディスク、光磁気ディスク、およびＣＤ−ＲＯＭディスク１０４０を含む、全ての形式の不揮発性メモリを含む。前述のいずれも、特別に設計されたＡＳＩＣ（特定用途向け集積回路）によって補完されてもよいし、組み入れられてもよい。ネットワークアダプタ１０５０は、ネットワーク１０６０へのアクセスを管理する。クライアントコンピュータはまた、カーソル制御装置、キーボードなどの触覚装置１０９０を含んでいてもよい。カーソル制御装置は、ユーザがディスプレイ１０８０上の任意の所望の位置にカーソルを選択的に位置させることを可能にするために、クライアントコンピュータ内で使用される。さらに、カーソル制御装置は、ユーザが様々なコマンドを選択し、制御信号を入力することを可能にする。カーソル制御装置は、システムに制御信号を入力するための多数の信号生成装置を含む。典型的には、カーソル制御装置はマウスであってもよく、マウスのボタンは信号を生成するために使用される。あるいは、または追加的に、クライアントコンピュータシステムは、感知パッドおよび／または感知スクリーンを備えてもよい。
【００５５】
コンピュータプログラムは、コンピュータによって実行可能な命令を含んでいてもよく、命令は、上記システムに本方法を実行させるための手段を含む。プログラムは、システムのメモリを含む任意のデータ記憶媒体に記録可能であってもよい。プログラムは、例えば、デジタル電子回路、またはコンピュータハードウェア、ファームウェア、ソフトウェア、またはそれらの組み合わせで実装されてもよい。プログラムは、例えばプログラマブルプロセッサによる実行のための機械読み取り可能な記憶装置に具体的に実現された製品のような装置として実装されてもよい。方法ステップは、プログラム可能なプロセッサが命令のプログラムを実行し、入力データを操作して出力を生成することによって方法の機能を実行することによって実行されてもよい。したがって、プロセッサは、データ記憶システム、少なくとも１つの入力デバイス、および少なくとも１つの出力デバイスからデータおよび命令を受信し、また、それらにデータおよび命令を送信するようにプログラム可能であってもよく、またそのように接続されていてもよい。アプリケーションプログラムは、高水準の手続き型またはオブジェクト指向のプログラミング言語で、または必要に応じてアセンブリ言語または機械語で実装されていてもよい。いずれの場合も、言語はコンパイラ型言語またはインタープリタ型言語であってもよい。プログラムは、フルインストールプログラムまたは更新プログラムであってもよい。いずれの場合も、プログラムをシステムに適用すると、本方法を実行するための命令が得られる。
【００５６】
ここで、本方法について、特に簡単で効率的な異なる例を参照して、さらに詳細に説明する。これらの例において、参照される画像は３Ｄモデルである。しかしながら、以下の説明は、任意のタイプの画像に当てはまる。また、以下の説明は、非変分オートエンコーダに着目しているが、すでに指摘したように、変分オートエンコーダに拡張するのは簡単である。なぜなら、損失に正則化項を追加し、単一の３Ｄモデルの代わりにガウス分布のパラメータを出力するためにアーキテクチャを変換するだけでよいからである。
【００５７】
ここで第１の態様の例について説明する。
【数１５】
2019003615.tif 000017
を、Ｓ１０で提供され得る３Ｄモデルのデータセットとする。各３Ｄモデルは、例えば、ボクセルグリッド内の占有体積または距離フィールドとして表すことができ、これは、
【数１６】
2019003615.tif 000018
を意味し、ここで、ｍは、ボクセルの数である。
【００５８】
本方法は、説明のみを目的として図４に示した、３２×３２×３２の入力サイズに適合させた畳み込みオートエンコーダのような、任意の所定のオートエンコーダアーキテクチャに基づいてＳ２０を実行してもよい。
【００５９】
従来技術の設定で最小化するエネルギーは
【数１７】
2019003615.tif 000019
であってもよく、ここで、ノルムは通常、Ｌ２またはＬ１ノルムである。ここで、学習をより包括的かつロバストにするために、まず、ノルムを包括的メトリック
【数１８】
2019003615.tif 000020
で置き換えることを考える。ここで、ｄは、特に３Ｄモデルが単純（すなわち非表面）占有グリッドまたは距離フィールドである場合には、通常のノルムから帰納することができるが、ｄはまた、特に３Ｄモデルが表面占有グリッドである場合、特定の距離関数（ワッサースタイン距離など）でもあり得る。
【００６０】
第１の態様の例の核となるのは、所与の変換群
【数１９】
2019003615.tif 000021
の動作における距離を除算することである。すなわち、本方法では、上式において、ｄ（ｘ，ｙ）を
【数２０】
2019003615.tif 000022
で置き換えてもよく、これにより、Ｓ２０において、以下の商損失が最小化される：
【数２１】
2019003615.tif 000023
【００６１】
また、本方法では、Ｓ２０で最小化した商損失に、変換ｈにペナルティを課す正則化項ρを加えて、最終的な損失を得てもよい。
【数２２】
2019003615.tif 000024
【００６２】
正規化項は、例えば、変換の程度、または変換の特性（例えば、伸張の程度）にペナルティを課してもよい。
【００６３】
ここで第２の態様の例について説明する。これらの第２の態様の例は、第１の態様の例と組み合わせてもよい。
【００６４】
これらの例において、オートエンコーダは、変換群の少なくとも一部に関して不変である。これは、オートエンコーダが、（変換群の少なくとも一部のいずれか１つに基づいて）画像を修正したものが入力された場合でも、同じ結果を出力することを意味する。オートエンコーダが不変である部分は、再構成損失に関係する距離についてオートエンコーダの適用が考慮される部分と同じであってもよいし、異なっていてもよい。前者の部分は、例えば、後者の部分よりも密度が低く、かつ／あるいは、後者の部分に含まれていてもよい。
【００６５】
そのような場合、学習は、オブジェクト表現の最初の構成に重きを置かないことを認められており、それによって、オートエンコーダがさらに改善されるように、他の側面（グローバル形状など）に集中することができる。
【００６６】
さらに、上記エネルギーを最小化することは、実際には困難である可能性があり、最小化は、悪い極小値に張り付く可能性がある。実際、ｇは、同じフレーム内の全ての３Ｄモデルを再構成することができるとき、その能力を、毎回、３Ｄボリューム内の同じ場所における空間ジオメトリ的特徴を再構成することに専ら費やすことができるため、より優れたデコーダである。それにもかかわらず、潜在ベクトルｆ（ｘi）は、ｘiの最初の向きを依然としてメモリに保持する。なぜなら、例えば２つの入力ｘとｙの向きだけが異なる場合、ｆ（ｘ）とｆ（ｙ）とが異なる可能性があるためである。よって、本方法は、潜在ベクトルが最初の向きを忘れるようにしてもよい。
【００６７】
そのための具体的な構成は、オートエンコーダが、前記変換群の少なくとも一部のそれぞれを入力画像のオブジェクト表現に適用するように構成されているという事実により定義される変換成分と、第１の成分から得られる（すなわちそこから発生する）結果に適用されるように構成されているという事実により定義される集約成分（例えば集約ビュー・プーリング）とを含むときである。このような構成により、オートエンコーダは最初の構成を忘れることができる。
【００６８】
このような例は、以下のフレームワークを動作させてもよい。従来のオートエンコーダまたは変分オートエンコーダが与えられた場合、フレームワークはエンコーダの最後に集約ビュー・プーリングを追加し、再構成損失に現れるノルムを商損失で置き換えてもよい。したがって、フレームワークは、従来のオートエンコーダまたは変分オートエンコーダを、商オートエンコーダ、すなわち、群の動作によりモデルの商空間内で直接学習を行うオートエンコーダに変換する。例えば、回転群を用いる場合、オートエンコーダは、入力モデルの列とは関係なく、モデルの固有の形状の変動性を学習してもよい。
【００６９】
したがって、本方法は、同時分析技術を用いた３Ｄデータセットの前処理と、畳み込み学習技術を用いた３Ｄ学習との、橋渡しをすることができる。本方法は、整列していない３Ｄモデルを効率的に学習するために、オートエンコーダまたは変分オートエンコーダの改良を提供し、これらオートエンコーダは、３Ｄデータ専用であってもよい。本方法は、３Ｄモデルのより良い表現をもたらし、非同時整列３Ｄデータセットに対してより効率的である。
【００７０】
本方法は、オートエンコーダの出力を整列させることができるため、３Ｄデータセット全体を自動的に同時に整列させることもできる。さらに、既存の方法とは異なり、例において、オートエンコーダは、データセットに存在しなかった任意の新しいモデルをリアルタイムで同時に整列させるために適用してもよい。最後に、本フレームワークは、簡単に拡張して、モデルを同時セグメント化したり他のタイプの同時分析を実行したりするようにできる。
【００７１】
ここで、集約成分の例についてさらに説明する。
【００７２】
上記損失は
【数２３】
2019003615.tif 000025
と書き直すことができ、ここでＤqは商距離であり、
【数２４】
2019003615.tif 000026
は、ｘiの軌道（群の動作のもとでのｘiの等価クラス）であって、すなわち、
【数２５】
2019003615.tif 000027
である。ここから分かるように、式にｘiが介在しているため、このような損失は入力画像の構成に依存する。
【００７３】
この依存性を解消するため、本方法では、ネットワークのエンコーダｆに集約ビュー・プーリングのような集約成分を追加することができる。すなわち、オートエンコーダの各入力ｘについて、本方法では、幾つかの変換
【数２６】
2019003615.tif 000028
をサンプリングすることにより
【数２７】
2019003615.tif 000029
を離散化し、変換した全ての入力
【数２８】
2019003615.tif 000030
を同じネットワークｆに渡してもよく、また、各潜在ベクトル
【数２９】
2019003615.tif 000031
について、本方法では、例えば、各次元における要素ごとの最大値、すなわち
【数３０】
2019003615.tif 000032
をとることによって、集約潜在ベクトルｚを生成してもよい。集約ビュー・プーリングは、より一般的には、次元ｐのＬ個の潜在ベクトルに適用される関数であってもよく、これは任意の関数
【数３１】
2019003615.tif 000033
である可能性があり、ここで
【数３２】
2019003615.tif 000034
は、置換に対して不変であり、すなわち、任意の
【数３３】
2019003615.tif 000035
について
【数３４】
2019003615.tif 000036
であり、また
【数３５】
2019003615.tif 000037
は、
【数３６】
2019003615.tif 000038
から
【数３７】
2019003615.tif 000039
への全射関数であり、また、任意の
【数３８】
2019003615.tif 000040
について
【数３９】
2019003615.tif 000041
である。
【００７４】
このような工程を集約ビュー・プーリングと呼ぶ。これにより、潜在ベクトルは、変換群
【数４０】
2019003615.tif 000042
を法とする形状ｘを捕捉することが可能になり、局所極小値に対してはるかにロバストになる。すなわち、ここではｆは入力ｘi全体ではなく
【数４１】
2019003615.tif 000043
のみに依存し、すなわち、
【数４２】
2019003615.tif 000044
の変換とは関係なく、例えば
【数４３】
2019003615.tif 000045
が回転群の場合、元のフレームとは関係なく、ｘiに依存する。
【００７５】
したがって、Ｓ２０で最小化された再構成損失は、最初の構成とは無関係であってもよく、以下のように書くことができる。
【数４４】
2019003615.tif 000046
ここでρは任意の正則化項である。
【００７６】
このような再構成損失は、Ｓ２０において、任意の方法、例えば、確率的勾配降下法やアダム最適化法（［２０］：“Ａｄａｍ：Ａ  Ｍｅｔｈｏｄ  ｆｏｒ  Ｓｔｏｃｈａｓｔｉｃ  Ｏｐｔｉｍｉｚａｔｉｏｎ”，Ｄ．Ｋｉｎｇｍａ，Ｊ．Ｂａ，ｉｎ  Ｉｎｔｅｒｎａｔｉｏｎ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｌｅａｒｎｉｎｇ  Ｒｅｐｒｅｓｅｎｔａｔｉｏｎｓ，２０１５）などの古典的な確率的方法を用いて最小化してもよい。
【００７７】
ここで、上記の例に沿った、特に良好な結果を提供する具体的なアーキテクチャについて説明する。図５は、椅子の表現を含む入力画像５１についてこのアーキテクチャの例を示す。
【００７８】
本アーキテクチャにおいて、符号化成分ｆｗは、変換成分（図示せず）の各結果５１〜５４に並列に適用されるように構成されている。図に示す例では、画像は３Ｄモデル化オブジェクトであるが、その２Ｄ投影によって表され、変換群
【数４５】
2019003615.tif 000047
は回転を含む。変換成分は、この例では、画像の２Ｄ投影に直交し、その中心にある軸について、０°の回転（すなわち同一）、９０°の回転、１８０°の回転、および２７０°の回転のうち１つを適用するように構成されている。図には示されていないが、変換成分が適用されるように構成された群
【数４６】
2019003615.tif 000048
の部分は、より大きくてもよく、これは、図に示されている線に加えて、結果に対応する線を追加することを意味する。
【００７９】
ここで、ｆｗは、各結果５１〜５４に並列に適用される。言い換えれば、ｆｗは、変換成分によって出力された結果５１〜５４の数に等しい回数だけインスタンス化される。次いで、ｆｗのすべてのインスタンスの重みが学習（Ｓ２０）中に共有されてもよい。
ｆｗは、図４の例同様、ＣＮＮであり、これにより潜在ベクトルｚiが得られる。しかしながら、他のタイプのエンコーダを実装することもできる。このアーキテクチャのオートエンコーダは、変換成分から得られた結果、すなわち、図４の例におけるエンコーダｆｗから出力された潜在ベクトルｚiに適用されるように構成された、集約ビュー・プーリング６０をさらに含む。
【００８０】
ベクトルｚiは同じサイズであり、本例ではサイズ１２８である（しかし他の任意のサイズが考えられる）。集約ビュー・プーリング６０は、同一サイズ１２８のベクトルｚを出力する。ｚの各座標ｌは
【数４７】
2019003615.tif 000049
に等しい値ｚlを有している。先に述べたような他の任意の集約成分を実装してもよい。
【００８１】
この時点で、入力画像５１における椅子の最初の向きは忘れられている。ある意味では、集約ビュー・プーリング６０は、そのような向きを忘れるように構成された決定性ニューロンを有する層として見ることができる。これにより、変換成分によって適用された群
【数４８】
2019003615.tif 000050
の部分に関してオートエンコーダが不変であり、したがって、学習を他の側面に集中させることが可能になる。
【００８２】
本アーキテクチャのオートエンコーダはさらに、ｚに適用され、例えば、結果５１〜５４と同じタイプの画像を出力するように構成された復号成分ｇW´を備える。ｇW´は、図４の例と同様、ＣＮＮである。しかしながら、他のタイプのデコーダを実装することもできる。
【００８３】
ここで、本方法の異なる応用例（場合によってはその組み合わせ）について説明する。これら応用例では、本方法の上記の例のいずれを実装してもよい。
【００８４】
第１の応用例では、画像は表面占有３Ｄモデルであり、変換群は平行移動を含む。これにより、表面占有３Ｄモデルの場合の学習において、特に悪い結果をもたらす可能性のある望ましくない小さなシフトに関してロバストなオートエンコーダを得ることができる。
【００８５】
本方法は、例えば同時整列した３Ｄモデル、例えば椅子のデータセットから始めて、各椅子は表面占有グリッドとしてモデル化してもよい。特に、いくつかのモデルが開いている場合は、それらを単純にボクセル化することができない。解決策は、Ｌ２ノルムのような、ｄの標準ノルムを用いて古典的オートエンコーダを学習することである。しかし、オートエンコーダの出力のわずかなずれは、距離ｄについて非常に大きな再構成誤差をもたらす。したがって、よりロバストなオートエンコーダを学習するための１つの方法は、２７個の小さな平行移動
【数４９】
2019003615.tif 000051
からなる群の動作で除算したオートエンコーダを適用し、ヌルペナルティρを用いることである。これにより、損失は、再構成されたモデルのずれに対してはるかにロバストになる。
【００８６】
第２の応用例では、オブジェクト表現は、それぞれ、同じオブジェクトクラスのインスタンスの表現である。データセットの各画像は、（例えば１つの）無向フレームを有する。各オブジェクト表現は、無向フレーム内で整列している。このような場合、変換群は、無向フレームにおける１つの整列から無向フレームにおける別の整列への全ての回転を含む。これにより、各画像において整列されているがＳ１０では同じ向きで提供されていないオブジェクトに関して、ロバストなオートエンコーダを得ることができる。そのような場合、ある列から他の列までのすべての回転の群を考慮することによって、オートエンコーダは、オブジェクト表現を再整列させ、それにより、その形状をより正確に学習することが可能になる。
【００８７】
本方法では、例えば、３Ｄモデル、例えば椅子のデータセットで開始し、各椅子の主軸がそのフレームの軸上に整列するようにしつつ、当該椅子が同一フレーム内で一貫して整列しないようにしてもよい。次いで、本方法では、可能性のある２４個の回転を考慮して各モデルを一貫して整列させてもよい。
【００８８】
３Ｄモデルの同時整列とともに、効率的な学習を実現するために、上記の原則を用いてもよい。本方法では、これら２４個の回転からなる群の動作によって除算したオートエンコーダを、ヌルペナルティρと共に適用してもよい。
【００８９】
その場合、
【数５０】
2019003615.tif 000052
が有限の２４個の回転における最小値となり、非常に扱いやすい。もちろん本方法では、学習の前に、最初のデータセット上で、回転した２４個のモデル
【数５１】
2019003615.tif 000053
を予め算出してもよい。
【００９０】
一度オートエンコーダを学習すると、データセットの任意のモデルや、以前には見られなかった任意の新しいモデルを容易に同時整列させることができるようになる。また、本方法では、
【数５２】
2019003615.tif 000054
を算出してもよく、また、本方法では、入力に対して、変換
【数５３】
2019003615.tif 000055
を適用してもよい。
【００９１】
図６は、回転群を有する椅子の３Ｄモデルのデータセットに対する本方法の一実行例を示す。図６は、データセットの１２個の画像のデータを示し、第１の列は、データセットの画像（第１または最初の向きのもの）を表現し、第２の列は、椅子を再構成したもの（本方法によって学習したオートエンコーダを適用した後のもの）を表し、第３の列は、変換成分によって得られた向きのうち、再構成したものに最も近い椅子の向きを表す。これらからわかるように、オートエンコーダは、データセットのすべての椅子を整列させる。
【００９２】
本方法の異なる例について説明した。しかし、本方法はそれらに限定されない。ここで、上記説明とは異なる、可能な拡張について説明する。
上述の応用例は、すべての３Ｄ回転の群を用いることで、完全に非整列の３Ｄモデルに拡張することができる。
【００９３】
本方法は、他の変換に適用してもよい。例えば、本方法は、同時整列されたデータセットで動作してもよい。そして、本方法では、３Ｄモデルを非固定的に整列させることを学習するために、大きな変形に対して高いペナルティ項ρを用いて、３Ｄモデル上の変形関数を拡張することを考慮してもよい。１つの基準モデルがセグメント化されている場合、本方法は、この非固定的変形によって除算されたオートエンコーダを用いて、セグメントを他の任意のモデルに転送してもよい。
【００９４】
どちらの場合も、変換群
【数５４】
2019003615.tif 000056
は無限である。本方法はエンコーダへの入力として有限数の変換しか用いないため、このことが集約ビュー・プーリングに問題となることはない。しかしながら、損失の最小化がより複雑になる可能性がある。２つの解決策が可能である。
【００９５】
第１の解決策は、先に説明したように、変換群を離散化することである。
【００９６】
第２の解決策は、
【数５５】
2019003615.tif 000057
を最小化する変換ｈを見つけるために、複数の開始点を持つ連続最適化（勾配降下法やニュートン法）を行うことである。
【００９７】
弱い仮定の下では、下限は実際、最小値であり、
【数５６】
2019003615.tif 000058
に達する。表記を簡略化するため、
【数５７】
2019003615.tif 000059
をハイパー・パラメータとする。本方法は、
【数５８】
2019003615.tif 000060
の勾配を算出して損失を最小化可能であってもよく、これには
【数５９】
2019003615.tif 000061
の導関数を算出する必要がある。実際には、
【数６０】
2019003615.tif 000062
であり、ここで、
【数６１】
2019003615.tif 000063
である。よってｐのヤコビ行列
【数６２】
2019003615.tif 000064
は、
【数６３】
2019003615.tif 000065
のヤコビ行列
【数６４】
2019003615.tif 000066
を用いてもよい。なぜなら、
【数６５】
2019003615.tif 000067
が成り立つからである。
【数６６】
2019003615.tif 000068
の定義上、
【数６７】
2019003615.tif 000069
である。ここで
【数６８】
2019003615.tif 000070
とする。いくつかの変数の隠関数定理により、
【数６９】
2019003615.tif 000071
であり、ここで、
【数７０】
2019003615.tif 000072
は、固定されたｗについてのｈに関するｑのヤコビ行列であり、
【数７１】
2019003615.tif 000073
は、固定されたｈについてのｗに関するｑのヤコビ行列である。
【００９８】
このように、本方法は、損失の勾配を算出することができる。
【００９９】
速度が問題である場合には、本方法では、導関数の算出において、
【数７２】
2019003615.tif 000074
の変化に対するｗの変化の影響を無視することもでき、これにより
【数７３】
2019003615.tif 000075
へと単純化される。
【図１】
2019003615.tif 000084
【図２】
2019003615.tif 000085
【図３】
2019003615.tif 000086
【図４】
2019003615.tif 000087
【図５】
2019003615.tif 000088
【図６】
2019003615.tif 000089
【外国語明細書】
2019003615.tif 000090
2019003615.tif 000091
2019003615.tif 000092
2019003615.tif 000093
2019003615.tif 000094
2019003615.tif 000095
2019003615.tif 000096
2019003615.tif 000097
2019003615.tif 000098
2019003615.tif 000099
2019003615.tif 000100
2019003615.tif 000101
2019003615.tif 000102
2019003615.tif 000103
2019003615.tif 000104
2019003615.tif 000105
2019003615.tif 000106
2019003615.tif 000107
2019003615.tif 000108
2019003615.tif 000109
2019003615.tif 000110
2019003615.tif 000111
2019003615.tif 000112
2019003615.tif 000113
2019003615.tif 000114
2019003615.tif 000115
2019003615.tif 000116
2019003615.tif 000117
【図】１
2019003615.tif 000118
【図】２
2019003615.tif 000119
【図】３
2019003615.tif 000120
【図】４
2019003615.tif 000121
【図】５
2019003615.tif 000122
【図】６
2019003615.tif 000123