(57)【要約】本開示の第１の実施例に基づき、画像比較方法が開示される。前述の画像比較方法は、事前に学習されたネットワーク関数が相互関連性を持つ第１画像データ及び第２画像データを受信する段階と、前述の受信された第１画像データ及び第２画像データに基づき、第２画像データのアノマリー関連情報を決定する段階と、前述のネットワーク関数によって決定されたアノマリー関連情報を出力する段階と、を含む。
2020536337.tif 000002
【特許請求の範囲】
【請求項１】
事前に学習されたネットワーク関数が相互関連性を持つ第１画像データ及び第２画像データを受信する段階と、
前記受信された第１画像データ及び第２画像データに基づき、第２画像データのアノマリー関連情報を決定する段階と、
前記ネットワーク関数によって決定されたアノマリー関連情報を出力する段階と、を含む、
画像比較方法。
【請求項２】
請求項１において、
前記ネットワーク関数は、
前記第１画像データが入力される第１サブネットワークと、
前記第２画像データが入力される第２サブネットワークとを含む、
画像比較方法。
【請求項３】
請求項２において、
前記ネットワーク関数は、
前記第１サブネットワークと前記第２サブネットワークとのうち、少なくとも１つと直列（ｉｎ  ｓｅｒｉｅｓ）で繋がる比較モジュールをさらに含む、
画像比較方法。
【請求項４】
請求項３において、
前記第１サブネットワーク、前記第２サブネットワーク、前記比較モジュールのうち、少なくとも１つはディープニューラルネットワーク（Ｄｅｅｐ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ；ＤＮＮ）構造を含む、
画像比較方法。
【請求項５】
請求項４において、
前記第１サブネットワークと前記第２サブネットワークとのうち、少なくとも１つは、
前記ディープニューラルネットワーク構造のうち、畳み込みニューラルネットワーク（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ；ＣＮＮ）構造を含む、
画像比較方法。
【請求項６】
請求項４において、
前記比較モジュールは、
前記ディープニューラルネットワーク構造のうち、逆畳み込みニューラルネットワーク（Ｄｅｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）構造を含む、
画像比較方法。
【請求項７】
請求項４において、
前記比較モジュールは、
前記第１サブネットワークと前記第２サブネットワークとのうち、少なくとも１つのサブネットワークとＵ−ネットワーク（Ｕ−Ｎｅｔ）構造の少なくとも一部分を構成する、
画像比較方法。
【請求項８】
請求項３において、
前記第１サブネットワークと前記第２サブネットワークとは、
同じ重み（ｗｅｉｇｈｔ）を持つリンクを少なくとも一つ以上共有する、
画像比較方法。
【請求項９】
請求項８において、
前記第１サブネットワークと前記第２サブネットワークとは、
シャムネットワーク（Ｓｉａｍｅｓｅ  Ｎｅｔｗｏｒｋ）の少なくとも一部分を構成する、
画像比較方法。
【請求項１０】
請求項３において、
前記アノマリー関連情報を決定する段階は、
前記第１サブネットワークの少なくとも１つのレイヤー及び前記第２サブネットワークの少なくとも１つのレイヤーに基づき、少なくとも１つのレイヤー比較情報を生成する段階と、
前記生成されたレイヤー比較情報に基づき、前記アノマリー関連情報を演算する段階とを含む、
画像比較方法。
【請求項１１】
請求項１０において、
前記アノマリー関連情報を演算する段階は、
前記生成されたレイヤー比較情報を前記比較モジュールの対応するレイヤーに提供する段階を含む、
画像比較方法。
【請求項１２】
請求項１１において、
前記対応するレイヤーは、
前記レイヤー比較情報を生成する際ベースとなった前記第１サブネットワークのレイヤー又は前記第２サブネットワークのレイヤーの位置によって決まる、
画像比較方法。
【請求項１３】
請求項１において、
前記第１画像データは、アノマリーデータを含まない正常な状態の画像データだけを含むマスター画像であり、
前記第２画像データは、スレーブ画像である、
画像比較方法。
【請求項１４】
請求項１３において、
前記アノマリー関連情報は、前記第２画像データの中でアノマリーが存在するピクセルの位置情報関連データを含む、
画像比較方法。
【請求項１５】
請求項１において、
前記第１画像データと第２画像データは大きさが同じである、
画像比較方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像プロセシングに関し、より具体的にはディープラーニングに基づく画像比較に関するものである。
【背景技術】
【０００２】
ディープラーニング（深層学習、ｄｅｅｐ  ｌｅａｒｎｉｎｇ）は、多数の非線形変換手法の組み合わせによって高レベルの抽象化（ａｂｓｔｒａｃｔｏｎ、多量のデータや複雑な資料の中から特徴や核心的な内容、または機能を要約する作業）を行う機械学習（ｍａｃｈｉｎｅ  ｌｅａｒｎｉｎｇ）アルゴリズムの集合と定義することができ、人間の思考方式をコンピューターに教える機械学習の一分野である。ディープラーニングは、機械から創られた知能という意味の人工知能とともに産業全般において利用されている。
【０００３】
大韓民国特許出願公開公報１０−２０１７−００８３８０５号は、草書体や草体で作成された文字の神経網を利用した判別方法を開示している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】大韓民国特許出願公開公報１０−２０１７−００８３８０５号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本開示は、前述の背景技術に対応して案出されたものであり、ディープラーニングに基づく画像プロセシングソリューションを提供するためのものである。
【課題を解決するための手段】
【０００６】
前述のような課題を実現するための本開示の第１の実施例に基づき、画像比較方法が開示される。
【０００７】
前述の画像比較方法は、事前に学習されたネットワーク関数が相互関連性を持つ第１画像データ及び第２画像データを受信する段階と、前述の受信された第１画像データ及び第２画像データに基づき、第２画像データのアノマリー関連情報を決定する段階と、前述のネットワーク関数によって決定されたアノマリー関連情報を出力する段階とを含む。
【０００８】
画像比較方法の代替実施例において、前述のネットワーク関数は、前述の第１画像データが入力される第１サブネットワークと、前述の第２画像データが入力される第２サブネットワークとを含むことができる。
【０００９】
画像比較方法の代替実施例において、前述のネットワーク関数は、前述の第１サブネットワークと前述の第２サブネットワークとのうち、少なくとも１つと直列（ｉｎ  ｓｅｒｉｅｓ）で繋がる比較モジュールをさらに含むことができる。
【００１０】
画像比較方法の代替実施例において、前述の第１サブネットワーク、前述の第２サブネットワーク、前述の比較モジュールのうち、少なくとも１つはディープニューラルネットワーク（Ｄｅｅｐ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ；ＤＮＮ）構造を含むことができる。
【００１１】
画像比較方法の代替実施例において、前述の第１サブネットワークと前述の第２サブネットワークとのうち、少なくとも１つは、前述のディープニューラルネットワーク構造の中に畳み込みニューラルネットワーク（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ；ＣＮＮ）構造を含むことができる。
【００１２】
画像比較方法の代替実施例において、前述の比較モジュールは、前述のディープニューラルネットワーク構造のうち、逆畳み込みニューラルネットワーク（Ｄｅｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）構造を含むことができる。
【００１３】
画像比較方法の代替実施例において、前述の比較モジュールは、前述の第１サブネットワークと前述の第２サブネットワークとのうち、少なくとも１つのサブネットワークとＵ−ネットワーク（Ｕ−Ｎｅｔ）構造の少なくとも一部分を構成することができる。
【００１４】
画像比較方法の代替実施例において、前述の第１サブネットワークと前述の第２サブネットワークとは、同じ重み（ｗｅｉｇｈｔ）を持つリンクを少なくとも一つ以上共有することが可能である。
【００１５】
画像比較方法の代替実施例において、前述の第１サブネットワークと前述の第２サブネットワークとは、シャムネットワーク（Ｓｉａｍｅｓｅ  Ｎｅｔｗｏｒｋ）の少なくとも一部分を構成することができる。
【００１６】
画像比較方法の代替実施例において、前述のアノマリー情報を決定する段階は、前述の第１サブネットワークの少なくとも１つのレイヤー及び前述の第２サブネットワークの少なくとも１つのレイヤーに基づき、少なくとも１つのレイヤー比較情報を生成する段階と、前述の生成されたレイヤー比較情報に基づき、前述のアノマリー関連情報を演算する段階とを含むことができる。
【００１７】
画像比較方法の代替実施例において、前述のアノマリー関連情報を演算する段階は、前述の生成されたレイヤー比較情報を前述の比較モジュールの対応するレイヤーに提供する段階を含むことができる。
【００１８】
画像比較方法の代替実施例において、前述の対応するレイヤーは、前述のレイヤー比較情報を生成する際ベースとなった前述の第１サブネットワークのレイヤー又は前述の第２サブネットワークのレイヤーの位置に基づき、決まることが可能である。
【００１９】
画像比較方法の代替実施例において、前述の第１画像データは、アノマリーデータを含まない正常な状態の画像データだけを含むマスター画像であり、前述の第２画像データは、スレーブ画像になり得る。
【００２０】
画像比較方法の代替実施例において、前述のアノマリー関連情報は、前述の第２画像データの中でアノマリーが存在するピクセルの位置情報関連データを含むことができる。
【００２１】
画像比較方法の代替実施例において、前述の第１画像データと第２画像データとは大きさが同じであることがあり得る。
【発明の効果】
【００２２】
本開示はディープラーニングに基づく画像プロセシングソリューションを提供することができる。
【図面の簡単な説明】
【００２３】
【図１】本開示の第１の実施例に基づき、画像比較方法を遂行するコンピューティング装置のブロック構成図である。
【図２】本開示の第１の実施例に基づき、人工ニューラルネットワークの一部を示す概略図である。
【図３】本開示の第１の実施例に基づき、畳み込みニューラルネットワーク（ｃｏｎｖｏｌｕｔｉｏｎａｌ  ｎｅｒｕａｌ  ｎｅｔｗｏｒｋ）を示す概略図である。
【図４】本開示の第１の実施例に基づき、シャムネットワーク（Ｓｉａｍｅｓｅ  Ｎｅｔｗｏｒｋ）を示す図面である。
【図５】本開示の第１の実施例に基づき、画像比較方法を簡略化して示す概念図である。
【図６】本開示の第１の実施例に基づき、画像比較方法を実現するためのニューラルネットワーク構成を示す例示図である。
【図７】本開示の第１の実施例に基づき、画像比較方法を実現するためのニューラルネットワークの学習データの例示である。
【図８】本開示の第１の実施例に基づき、画像比較方法を実現するためのニューラルネットワーク学習方式を示す概念図である。
【図９】本開示の第２の実施例に基づき、画像比較方法を実現するためのニューラルネットワーク学習方式を示す概念図である。
【図１０】本開示の第３の実施例に基づき、画像比較方法を実現するためのニューラルネットワーク学習方式を示す概念図である。
【図１１】本開示の第１の実施例に基づき、画像比較方法を実現するためのネットワーク構成を示す図面である。
【図１２】本開示の第１の実施例に基づき、画像比較方法を実現するためのＵネットワーク（Ｕ  ｎｅｔｗｏｒｋ）の例示図である。
【図１３】本開示の第２の実施例に基づき、画像比較方法を実現するためのシャムネットワーク（Ｓｉａｍｅｓｅ  Ｎｅｔｗｏｒｋ）の例示図である。
【図１４】本開示の第１の実施例に基づき、画像比較方法を実現するための手段を図示したブロック構成図である。
【図１５】本開示の第１の実施例に基づき、画像比較方法を実現するためのモジュールを図示したブロック構成図である。
【図１６】本開示の第１の実施例に基づき、画像比較方法を実現するためのロジックを図示したブロック構成図である。
【図１７】本開示の第１の実施例に基づき、画像比較方法を実現するための回路を図示したブロック構成図である。
【図１８】本開示の第１の実施例に基づくコンピューティング装置のブロック構成図（ｂｌｏｃｋ  ｄｉａｇｒａｍ）である。
【発明を実施するための形態】
【００２４】
以下、多様な実施例について図面を参照して説明する。本明細書において、多様な説明が本開示に対する理解を深めるために示される。しかしこれらの実施例は、このような具体的な説明がなくても実行できることは確かである。他の例において、公知の構造及び装置は実施例の説明を容易にするためにブロックダイアグラムの形で提供される。
【００２５】
本明細書において、用語「コンポーネント」、「モジュール」、「システム」等はコンピューター関連エンティティ、ハードウェア、ファームウェア、ソフトウェア、ソフトウェアとハードウェアの組み合わせ、又はソフトウェアの実行を指す。例えば、コンポーネントはプロセッサー上で実行される処理過程（ｐｒｏｃｅｄｕｒｅ）、プロセッサー、オブジェクト、実行スレッド、プログラム、及び/又はコンピューターになり得るが、これらによって制限されるものではない。例えば、コンピューティング装置で実行されるアプリケーションやコンピューティング装置は、いずれもコンポーネントになり得る。一つ以上のコンポーネントはプロセッサー及び/又は実行スレッドの中に常駐することができ、一コンポーネントは一つのコンピューターの中でローカル化されることができ、又は２つ以上のコンピューターに配分されることもできる。また、このようなコンポーネントは、その内部に保存された多様なデータ構造を持つ多様なコンピューター可読媒体により実行されることができる。コンポーネントは例えば一つ以上のデータパケットを持つ信号（例えば、ローカルシステム、分散システムで他のコンポーネントと相互作用する一つのコンポーネントから発信するデータ及び/又は信号によって他のシステムとインターネットのようなネットワークを通じて伝送されるデータ）によってローカル及び/又は遠隔処理等を通じて通信することができる。
【００２６】
尚、述語としての"含む・含める"及び/又は修飾語としての"含む・含まれる"という用語は、当該特徴及び/又は構成要素が存在することを意味するが、一つ以上の他の特徴、構成要素及び/又はこれらのグループの存在又は追加を排除しないものと理解すべきである。また、別途特定されていなかったり単数の形を示すことが文脈上明確ではない場合、本明細書と請求範囲において単数は一般的に「１つ又はそれ以上」を意味するものと解釈すべきである。
【００２７】
ここに示された実施例に関する説明は、本開示の技術分野における通常の知識を持つ者が本開示を利用したり又は実施できるように提供される。こうした実施例に対する多様な変形は、本開示の技術分野における通常の知識を持つ者には明確に分かることであり、ここに定義された一般的な原理は、本開示の範囲を逸脱することなく他の実施例に適用されることができる。従って、本開示はここに示された実施例に限定されるものではなく、ここに示された原理及び新規な特徴と一貫する最広義の範囲で解釈されるべきである。
【実施例１】
【００２８】
図１は、本開示の第１の実施例に基づき、画像比較方法を遂行するコンピューティング装置のブロック構成図を示すものである。図１に示すコンピューティング装置（１００）の構成は簡略化した例示に過ぎず、本開示の第１の実施例においてコンピューティング装置（１００）は、コンピューティング装置（１００）のコンピューティング環境を実装するための他の構成が含まれることができる。
【００２９】
コンピューティング装置（１００）は、プロセッサー（１１０）、メモリー（１３０）、ネットワークモジュール（１５０）、カメラモジュール（１７０）を含むことができる。
【００３０】
プロセッサー（１１０）は、一つ以上のコアで構成されることができ、コンピューティング装置の中央処理装置（ＣＰＵ：ｃｅｎｔｒａｌ  ｐｒｏｃｅｓｓｉｎｇ  ｕｎｉｔ）、汎用グラフィック処理装置（ＧＰＧＰＵ：ｇｅｎｅｒａｌ  ｐｕｒｐｏｓｅ  ｇｒａｐｈｉｃｓ  ｐｒｏｃｅｓｓｉｎｇ  ｕｎｉｔ）、テンサー処理装置（ＴＰＵ：ｔｅｎｓｏｒ  ｐｒｏｃｅｓｓｉｎｇ  ｕｎｉｔ）等のデータ分析、ディープラーニングのためのプロセッサーを含むことができる。プロセッサー（１１０）は、メモリー（１３０）に保存されたコンピュータープログラムを読み取り、本開示の第１の実施例に基づく画像比較方法を遂行することができる。本開示の第１の実施例に基づき、プロセッサー（１１０）は、神経網の学習のための計算を遂行することができる。プロセッサー（１１０）は、ディープラーニング（ＤＮ：ｄｅｅｐ  ｌｅａｒｎｉｎｇ）において学習のための入力データの処理、入力データにおける特徴（ｆｅａｔｕｒｅ）抽出、誤差計算、逆伝播（ｂａｃｋｐｒｏｐａｇａｔｉｏｎ）を利用した神経網の重み更新等の神経網の学習のための計算を遂行することができる。プロセッサー（１１０）のＣＰＵ、ＧＰＧＰＵ、ＴＰＵのうち、少なくとも一つがネットワーク関数の学習を処理することができる。例えば、ＣＰＵとＧＰＧＰＵとが共にネットワーク関数の学習、ネットワーク関数を利用したデータ分類を処理することができる。また、本開示の第１の実施例において複数のコンピューティング装置のプロセッサーを一緒に使ってネットワーク関数の学習、ネットワーク関数を利用したデータ分類を処理することができる。また、本開示の第１の実施例に基づくコンピューティング装置で実行されるコンピュータープログラムは、ＣＰＵ、ＧＰＧＰＵ又はＴＰＵで実行可能なプログラムになり得る。
【００３１】
本開示の第１の実施例においてコンピューティング装置（１００）は、ＣＰＵ、ＧＰＧＰＵ、ＴＰＵのうち、少なくとも一つを利用してネットワーク関数を分散して処理することができる。また本開示の第１の実施例においてコンピューティング装置（１００）は、他のコンピューティング装置と共にネットワーク関数を分散して処理することができる。
【００３２】
本開示の第１の実施例においてネットワーク関数を利用して処理される画像は、コンピューティング装置（１００）の保存媒体に保存された画像、コンピューティング装置（１００）のカメラモジュール（１７０）によって撮影された画像及び/又はネットワークモジュール（１５０）によって画像データベース等他のコンピューティング装置から伝送された画像になり得る。また本開示の第１の実施例においてネットワーク関数を利用して処理される画像は、コンピューター可読保存媒体（例えば、フラッシュメモリー等を含むことができるが本開示はこれに制限されない）に保存された画像になり得る。コンピューティング装置（１００）は、入出力インターフェース（未図示）を通じてコンピューター可読保存媒体に保存された画像ファイルの入力を受けることができる。
【００３３】
メモリー（１３０）は、本開示の第１の実施例に基づく画像比較方法を遂行するためのコンピュータープログラムを保存でき、保存されたコンピュータープログラムはプロセッサー（１１０）によって読み取られ駆動することができる。
【００３４】
ネットワークモジュール（１５０）は、本開示の第１の実施例に基づく画像比較方法を遂行するためのデータ等を他のコンピューティング装置やサーバー等と送受信することができる。ネットワークモジュール（１５０）は、画像データ等本開示の実施例に必要なデータを他のコンピューティング装置やサーバー等と送受信することができる。例えば、ネットワークモジュール（１５０）は、学習画像データベース等から学習画像データを受信することができる。また、ネットワークモジュール（１５０）は、複数のコンピューティング装置の通信を可能にし複数のコンピューティング装置の各々でネットワーク関数の学習が分散遂行されるようにすることができ、ネットワーク関数を使ったデータ分類を分散処理できるようにすることができる。
【００３５】
カメラモジュール（１７０）は、本開示の第１の実施例に基づく画像比較方法を遂行するために検査対処物を撮影して画像データを生成するようにすることができる。本開示の第１の実施例においてコンピューティング装置（１００）は、一つ以上のカメラモジュール（１７０）を含むことができる。
【００３６】
図２は、本開示の第１の実施例に基づき、人工神経網の一部を示す概略図である。
【００３７】
本明細書を通して、神経網、ネットワーク関数、ニューラルネットワーク（ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ）は、同じ意味を持つ用語として使われることができる。神経網は一般的に「ノード」と称されることのできる相互連結された計算単位の集合によって構成されることができる。こうした「ノード」は、「ニューロン（ｎｅｕｒｏｎ）」と称されることもある。神経網は少なくとも一つ以上のノードを含めて構成される。神経網を構成するノード（又はニューロン）は、一つ以上の「リンク」によって相互連結されることができる。
【００３８】
神経網の中でリンクを通じて繋がった一つ以上のノードは、相対的に入力ノードと出力ノードの関係を形成することができる。入力ノードと出力ノードの概念は、相対的なものであり、一つのノードに対して出力ノードである任意のノードは、他のノードとの関係においては入力ノードになり得るが、その逆のことも成り立つ。前述のように、入力ノード対出力ノードの関係は、リンクを中心として成り立つことができる。一つの入力ノードに一つ以上の出力ノードがリンクを通じて繋がることができ、その逆のことも成り立つ。
【００３９】
一つのリンクを通じて繋がった入力ノードと出力ノードの関係において、出力ノードは入力ノードに入力されたデータに基づきその値が決まることが可能である。ここで入力ノードと出力ノードとを相互連結するノードは、重み（ｗｅｉｇｈｔ）を持つことができる。重みは可変的なものになり得るが、神経網が所望の機能を遂行するために、ユーザー又はアルゴリズムによって変わり得る。例えば、一つの出力ノードに一つ以上の入力ノードがそれぞれのリンクによって相互連結されている場合、出力ノードは前述の出力ノードと繋がった入力ノードに入力された値及び個々の入力ノードに対応するリンクに設定された重みに基づき、出力ノードの値を決定することができる。
【００４０】
前述のように、神経網は一つ以上のノードが一つ以上のリンクを通じて相互連結され神経網の中で入力ノードと出力ノードの関係を形成する。神経網の中でノードとリンクとの数及びノードとリンクとの間の関連性、個々のリンクにそれぞれ付与された重みの値によって、神経網の特性が決まることが可能である。例えば、同数のノードとリンクが存在し、リンク間の重みの値が相違する２つの神経網が存在する場合、この２つの神経網は相違するものと認識されることができる。
【００４１】
図２に示すように、神経網は一つ以上のノードを含めて構成されることができる。神経網を構成するノードのうち一部は、最初入力ノードからの距離に基づき、一つのレイヤー（ｌａｙｅｒ）を構成することができる。例えば、最初入力ノードからの距離がｎである複数のノードの集合は、ｎレイヤーを構成することができる。最初入力ノードからの距離は、最初入力ノードから当該ノードに到達するまで通らなければならないリンクの最低限の数によって定義されることができる。しかし、こうしたレイヤーの定義は説明のために任意に取り上げたものであり、神経網の中でレイヤーの番号は、前述のものと相違する方法で定義されることができる。例えば、複数のノードのレイヤーは、最終出力ノードからの距離によって定義されることも可能である。
【００４２】
最初入力ノードは、神経網の中のノードのうち他のノードとの関係においてリンクを介さずデータが直接入力される一つ以上のノードを意味することができる。又は、神経網ネットワークの中で、リンクをベースとしたノード間の関係において、リンクで繋がった他の入力ノードを持たないノードを意味することができる。これと類似した例として、最終出力ノードは、神経網の中のノードのうち他のノードとの関係において、出力ノードを持たない一つ以上のノードを意味することができる。また、ヒドンノードは、最初入力ノード及び最終出力ノードではない神経網を構成するノードを意味することができる。図２の図示では、出力ノードは省略されている。本開示の第１の実施例に基づく神経網は、入力レイヤーのノードが出力レイヤーに近いヒドンレイヤーのノードより多いことが可能であり、入力レイヤーからヒドンレイヤーへ進むにつれノードの数が減少していく形の神経網になり得る。
【００４３】
ディープニューラルネットワーク（ＤＮＮ：ｄｅｅｐ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ、深層神経網）は、入力レイヤーと出力レイヤーの他、複数のヒドンレイヤーを含む神経網を意味することができる。ディープニューラルネットワークを利用するとデータの潜在的な構造（ｌａｔｅｎｔ  ｓｔｒｕｃｔｕｒｅｓ）を把握することができる。つまり、写真、文章、ビデオ、音声、音楽の潜在的な構造（例えば、どんな物体が写真に写っているか、文章の内容と感情がどうであるか、音声の内容と感情がどうであるか等）を把握することができる。ディープニューラルネットワークは、畳み込みニューラルネットワーク（ＣＮＮ：ｃｏｎｖｏｌｕｔｉｏｎａｌ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ）、リカレントニューラルネットワーク（ＲＮＮ：ｒｅｃｕｒｒｅｎｔ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ）、制限ボルツマンマシン（ＲＢＭ：ｒｅｓｔｒｉｃｔｅｄ  ｂｏｌｔｚｍａｎｎ  ｍａｃｈｉｎｅ）、深層信頼ネットワーク（ＤＢＮ：ｄｅｅｐ  ｂｅｌｉｅｆ  ｎｅｔｗｏｒｋ）、Ｑネットワーク、Ｕネットワーク、シャムネットワーク等を含むことができる。
【００４４】
図３に示す畳み込みニューラルネットワーク（ＣＮＮ：ｃｏｎｖｏｌｕｔｉｏｎａｌ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ）は、ディープニューラルネットワークの一種であり、畳み込みレイヤーを含む神経網を含む。畳み込みニューラルネットワークは、最低限の前処理（ｐｒｅｐｒｏｃｅｓｓ）を使うように設計された多層パーセプトロン（ｍｕｌｔｉｌａｙｅｒ  ｐｅｒｃｅｐｔｏｒｎｓ）の一種である。ＣＮＮは一つ又は複数の畳み込みレイヤーと、これと結合した人工神経網階層により構成されることができ、さらに重みとプーリングレイヤー（ｐｏｏｌｉｎｇ  ｌａｙｅｒ）を追加して活用することができる。こうした構造のおかげでＣＮＮは、２次元構造の入力データを十分に活用することができる。畳み込みニューラルネットワークは、画像からオブジェクトを認識するために使われることができる。畳み込みニューラルネットワークは、画像データを次元を持つ行列で表し処理することができる。例えばＲＧＢ（ｒｅｄ−ｇｒｅｅｎ−ｂｌｕｅ）でエンコードされた画像データの場合、Ｒ、Ｇ、Ｂの色相別にそれぞれ２次元（例えば、２次元画像である場合）行列で表すことができる。つまり、画像データの各ピクセルの色相値が行列の成分になり得るが、行列の大きさは画像の大きさと同じ大きさになり得る。従って画像データは、３つの２次元行列で（３次元のデータアレー）表すことができる。
【００４５】
畳み込みニューラルネットワークにおいて、畳み込みフィルターを移動しながら、畳み込みフィルターと画像の各位置での行列成分同士で掛け算することで、畳み込み過程（畳み込みレイヤーの入出力）を遂行することができる。畳み込みフィルターはｎ＊ｎの形の行列で構成されることがで、一般的に画像の全体ピクセルの数より小さい固定された形のフィルターで構成されることができる。つまり、ｍ＊ｍの画像を畳み込みレイヤー（例えば、畳み込みフィルターのサイズがｎ＊ｎである畳み込みレイヤー）に入力させる場合、画像の各ピクセルを含むｎ＊ｎのピクセルを表す行列が畳み込みフィルターと成分積（つまり、行列の各成分同士の積）になり得る。畳み込みフィルターとの乗算によって画像から畳み込みフィルターとマッチされる成分が抽出されることができる。例えば、画像から上下直線成分を抽出するための３＊３畳み込みフィルターは［［０、１、０］、［０、１、０］、［０、１、０］］のように構成されることができ、こうした畳み込みフィルターが入力画像に適用されると画像から畳み込みフィルターとマッチする上下直線成分が抽出され出力されることができる。畳み込みレイヤーは、画像を示す個々のチャンネルに対する個々の行列（つまり、Ｒ、Ｇ、Ｂコーティング画像の場合、Ｒ、Ｇ、Ｂ色相）に畳み込みフィルターを適用することができる。畳み込みレイヤーは、入力画像に畳み込みフィルターを適用して入力画像から畳み込みフィルターとマッチされる特徴を抽出することができる。畳み込みフィルターのフィルター値（つまり、行列の各成分の値）は、畳み込みニューラルネットワークの学習過程において逆伝播（ｂａｃｋｐｒｏｐａｇａｔｉｏｎ）によって更新されることができる。
【００４６】
畳み込みレイヤーの出力には、サブサンプリングレイヤーが繋がり、畳み込みレイヤーの出力を単純化してメモリー使用量と演算量を減らすことができる。例えば、２＊２マックスプーリングフィルターを持つプーリングレイヤーに畳み込みレイヤーの出力を入力させる場合、画像の各ピクセルから２＊２パッチごとに各パッチに含まれる最大値を出力して画像を圧縮することができる。前述のプーリングは、パッチから最小値を出力したり、パッチの平均値を出力する方式であることもあり、任意のプーリング方式が本開示に含まれることができる。
【００４７】
畳み込みニューラルネットワークは、一つ以上の畳み込みレイヤー、サブサンプリングレイヤーを含むことができる。畳み込みニューラルネットワークは、畳み込みの過程とサブサンプリングの過程（例えば、前述のマックスプーリング等）を繰り返し遂行して画像から特徴を抽出することができる。畳み込みの過程とサブサンプリングの過程を繰り返すことで、ニューラルネットワークは、画像のグローバルな特徴を抽出することができる。
【００４８】
畳み込みレイヤーやサブサンプリングレイヤーの出力は、全結合レイヤー（ｆｕｌｌｙ  ｃｏｎｎｅｃｔｅｄ  ｌａｙｅｒ）に入力されることができる。全結合レイヤーは、一つのレイヤーにあるすべてのニューロンと隣り合っているレイヤーにあるすべてのニューロンが繋がるレイヤーである。全結合レイヤーは、ニューラルネットワークにおいて各レイヤーのすべてのノードが他のレイヤーのすべてのノードに繋がっている構造を意味することができる。
【００４９】
本開示の第１の実施例において、画像データのセグメンテーション（ｓｅｇｍｅｎｔａｔｉｏｎ）を遂行するためにニューラルネットワークは、逆畳み込みニューラルネットワーク（ＤＣＮＮ:Ｄｅｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）を含むことができる。逆畳み込みニューラルネットワークは、畳み込みニューラルネットワークを逆方向に計算させたのと類似した動作を遂行し、畳み込みニューラルネットワークで抽出された特徴を原本データに係る特徴マップに出力することができる。
【００５０】
図４は、本開示の第１の実施例に基づき、シャムネットワーク（Ｓｉａｍｅｓｅ  Ｎｅｔｗｏｒｋ）を示す図面である。
【００５１】
シャムネットワーク（２００）（Ｓｉａｍｅｓｅ  Ｎｅｔｗｏｒｋ）は、カテゴリ別学習データ（ｔｒａｉｎｇ  ｄａｔａ）が十分ではない認識器に使用できるニューラルネットワークである。シャムネットワークは、データにおける類似性測定を学習することができる。シャムネットワークは、図４に示すように少なくとも部分的に重みを共有する２つ以上のニューラルネットワーク（２１０、２３０）（サブネットワーク）とニューラルネットワークからの出力が入力される比較モジュール（２５０）とを含むことができる。シャムネットワーク（２００）には少なくとも２つの画像が入力されることができる。シャムネットワーク（２００）は、入力される２つの画像の類似度を判断した結果を出力することができる。画像処理のためにシャムネットワークは、画像の入力を受ける２つの畳み込みニューラルネットワークを含むことができる。シャムネットワークにおいて、画像の入力を受ける２つの畳み込みニューラルネットワークは、重みの少なくとも一部を共有することが可能である。シャムネットワークに含まれたサブネットワークは、重み共有モジュール（２２０）によって重みを共有でき、サブネットワークが重みを共有することにより、シャムネットワークは入力された２つのデータに対して共通の重みで特徴を抽出し比較することができる。
【００５２】
シャムネットワーク構造は、入力データの類似性を測定できる学習が可能なネットワーク構造であり、カテゴリが多く、トレーニングのためのデータが十分ではない場合に使われることができる。入力データ類似性測定の学習方法は、ターゲット空間での単純距離が入力空間で意味論的距離（ｓｅｍａｎｔｉｃ  ｄｉｓｔａｎｃｅ）に隣接するように入力パターンをターゲット空間に紐づける関数を探す過程を含むことができる。
【００５３】
シャムネットワークの入力データ類似性測定の学習方法は、サブネットワークの重みｗを持つ関数ＧＷ（Ｘ）で重みｗを演算する過程を含むことができる。具体的に、サブネットワークの関数ＧＷ（Ｘ）で入力データＸ１、Ｘ２が互いに同じカテゴリである場合は類似度関数ＥＷ（Ｘ１−Ｘ２）＝||ＧＷ（Ｘ１）−ＧＷ（Ｘ２）||の値が小さくなり、入力データＸ１、Ｘ２が異なるカテゴリである場合は類似度関数の値が大きくなるようにする重みｗを演算する過程を含むことができる。サブネットワークの重みｗは、重み共有モジュール（２２０）によってそれぞれ共有されることができる。シャムネットワーク構造は、サブネットワークが共有された重みを持つ関数ＧＷ（Ｘ）によって個々の入力データを処理することができる。
【００５４】
２つの畳み込みニューラルネットワークは、相互対応するノード同士で重みを共有することが可能である。畳み込みニューラルネットワークから出力された特徴は、比較モジュール（２５０）にて互いに類似度が比較されることができる。このとき比較は、両畳み込みニューラルネットワークから出力された特徴の数学的距離に基づいて遂行されることができる。両画像を比較する方式でシャムネットワーク（２００）は、学習データが十分ではない場合にも画像データからオブジェクト等を認識でき、画像データの回転、変形等に敏感でなく一般的な（ｇｅｎｅｒａｌ）認識性能を持つことができる。
【００５５】
ニューラルネットワークは、教師あり学習（ｓｕｐｅｒｖｉｓｅｄ  ｌｅａｒｎｉｎｇ）、教師なし学習（ｕｎｓｕｐｅｒｖｉｓｅｄ  ｌｅａｒｎｉｎｇ）、半教師あり学習（ｓｅｍｉ  ｓｕｐｅｒｖｉｓｅｄ  ｌｅａｒｎｉｎｇ）のうち、少なくとも１つの方式で学習されることができる。ニューラルネットワークの学習は出力の誤りを最小化するためのものである。ニューラルネットワークの学習において、繰り返し学習データをニューラルネットワークに入力させ学習データに対するニューラルネットワークの出力とターゲットのエラーを計算し、エラーを減らすための方向でニューラルネットワークのエラーをニューラルネットワークの出力レイヤーから入力レイヤー方向へ逆伝播（ｂａｃｋｐｒｏｐａｇａｔｉｏｎ）し、ニューラルネットワークの各ノードの重みをアップデートする過程が行われる。教師あり学習の場合は個々の学習データに正解がラベリングされている学習データを使い（つまり、ラベリングされた学習データ）、教師なし学習の場合は、個々の学習データに正解がラベリングされていないことがある。つまり、例えばデータ分類に関する教師あり学習における学習データは、学習データそれぞれにカテゴリがラベリングされたデータになり得る。ラベリングされた学習データがニューラルネットワークに入力され、ニューラルネットワークの出力（カテゴリ）と学習データのラベルを比較して誤差（ｅｒｒｏｒ）が計算されることができる。計算された誤差はニューラルネットワークから逆方向（つまり、出力レイヤーから入力レイヤーに向かう方向）へ逆伝播され、逆伝播によってニューラルネットワークの各レイヤーの各ノードに紐づいた重みが更新されることができる。更新される各ノードに紐づいた重みは、学習率（ｌｅａｒｉｎｇ  ｒａｔｅ）によって変化量が決まることがある。入力データに対するニューラルネットワークの計算とエラーの逆伝播は、学習サイクル（ｅｐｏｃｈ）を構成することができる。学習率は、ニューラルネットワークの学習サイクルの反復回数によって変わるように適用されることができる。例えば、ニューラルネットワークの学習初期は、高い学習率を使いニューラルネットワークが速く一定レベルの性能を確保するようにして効率を高め、学習後期は、低い学習率を使い精度を高めることができる。
【００５６】
ニューラルネットワークの学習において、一般的に学習データは実データ（つまり、学習されたニューラルネットワークを利用して処理しようとするデータ）の部分集合になり得るが、従って、学習データに対する誤差は減少するものの実データに対しては誤差が増加する学習サイクルが存在し得る。過剰適合（ｏｖｅｒ  ｆｉｔｔｉｎｇ）は、このように学習データにおいて、過剰に学習したことにより実データに対する誤差が増加する現象である。例えば、黄色い猫を見て猫について学習したニューラルネットワークが黄色以外の色の猫を見たときは猫であることを認識できない現象が過剰適合の一種になり得る。過剰適合はマシンラーニングアルゴリズムの誤差を増加させる原因として作用することがある。こうした過剰適合を防ぐために多様な最適化方法が使われることができる。過剰適合を防ぐためには学習データを増やしたり、正則化（ｒｅｇｕｌａｉｚａｔｉｏｎ）、学習の過程においてネットワークのノードの一部を省略するドロップアウト（ｄｒｏｐ  ｏｕｔ）等の方法が適用されることができる。
【００５７】
図５は、本開示の第１の実施例に基づき、画像比較方法を簡略化して示す概念図である。
【００５８】
本開示の画像比較方法は、コンピューティング装置（１００）の一つ以上のプロセッサー（１１０）によって遂行されることができる。本開示のコンピューティング装置（１００）の一つ以上のプロセッサー（１１０）は、本開示のニューラルネットワークの演算プロセスを遂行することができる。本開示の画像比較方法のすべての演算プロセス（つまり、ニューラルネットワーク学習、特徴抽出、特徴比較等）は、コンピューティング装置（１００）のプロセッサーによって遂行されることができる。つまり、ニューラルネットワークからデータを処理するという表現はコンピューティング装置（１００）のプロセッサー（１１０）がニューラルネットワークを実行してデータを処理する過程を意味することができる。
【００５９】
本開示の画像比較方法においてコンピューティング装置（１００）は、ニューラルネットワーク（２００）にマスター画像（３１０）とスレーブ画像（３３０）を入力し、ニューラルネットワーク（２００）で計算した２つの画像の類似度計算の結果に基づき、結果を出力することができる。
【００６０】
本開示のニューラルネットワークは、データの分類のために使われることができる。例えば、本開示のニューラルネットワークは、アノマリー検出（Ａｎｏｍａｌｙ  Ｄｅｔｅｃｔｉｏｎ）に使われることができる。
【００６１】
アノマリーデータは、データの正常パターンからずれている異常データを意味することができる。データは否定形パターンを持つことがあり、アノマリーデータは、このような否定形パターンからずれているデータを意味することがある。例えば、生産工程において、生産製品の画像に関するデータは、正常製品という否定形パターンを持つことがあり、アノマリーデータは、正常製品という否定形パターンからずれているデータ（つまり、例えば、不良製品の画像等）になり得る。本開示における正常データ、否定形パターン、アノマリーデータに関する記載は例示に過ぎず、本開示はこれらに制限されない。
【００６２】
より具体的に、本開示のニューラルネットワークは、生産工程においてアノマリー製品と正常製品を分類するために使われることができる。また本開示のニューラルネットワークは、画像セグメンテーション（ｉｍａｇｅ  ｓｅｇｍａｎｔａｔｉｏｎ）のために使われることができる。画像セグメンテーションは、画像の一部を他の一部と区分されるよう分離する過程を意味することができる。画像セグメンテーションは、例えば、画像から抽出されたエッジ、色相等に基づき、画像の一部を他の一部と区分されるように分離する過程を含むことができる。また、画像セグメンテーションは、画像からアノマリー部分の位置情報を抽出して画像の他の部分からアノマリーデータの位置を識別する過程になり得る。また画像セグメンテーションは、他の一部と区分された画像の一部を視覚化して表示する過程も含むことができる。例えば、本開示のニューラルネットワークは、画像でアノマリー部分を表示するために使われることができる。
【００６３】
マスター画像（３１０）は、入力データのアノマリー（ａｎｏｍａｌｙ）の判断のベースとなる画像である。スレーブ画像（３３０）は、アノマリーの判断対象となる画像である。本開示においてアノマリーデータは、データの正常パターンからずれている異常データになり得る。マスター画像（３１０）は、アノマリーデータを含まない正常な状態の画像データだけを含む画像になり得る。スレーブ画像（３３０）は、正常パターンになることもあり、異常データになることもあり、ニューラルネットワークがこれを判断する対象となる画像になり得る。例えば、マスター画像（３１０）は、正常製品の画像になり、スレーブ画像（３３０）は、検査対象となる製品の画像になり得る。
【００６４】
ニューラルネットワーク（２００）に入力される画像は、大きさが同じであることが可能である。また、ニューラルネットワークに入力される画像は、ニューラルネットワークの処理を容易にし、パッチを重ねることで分類の精度を高めるために、一定の大きさのパッチ（ｐａｔｃｈ）に分離されることができる。例えば、マスター画像（３１０）とスレーブ画像（３３０）は、それぞれ２５６＊２５６ピクセルの大きさを持つ画像になり得るが、これらはそれぞれニューラルネットワーク（２００）のサブネットワークに入力されるために３２＊３２ピクセルの大きさを持つパッチに分離されることができる。画像におけるパッチ抽出は、画像の各ピクセルに対して遂行されることができ、個々のパッチは、重なり合う部分を持つことができる。例えば、画像の左上端のピクセルから３２＊３２ピクセルのパッチが抽出され、当該ピクセルで右側の隣接したピクセルから３２＊３２ピクセルのパッチを抽出する場合、各パッチは重なり合う部分を持つことができる。
【００６５】
コンピューティング装置（１００）は、ニューラルネットワーク（２００）に入力されたマスター画像（３１０）とスレーブ画像（３３０）からそれぞれ特徴を抽出することができる。コンピューティング装置（１００）は、個々の特徴を比較してマスター画像（３１０）とスレーブ画像（３３０）の類似度を判断することができる。コンピューティング装置（１００）は、マスター画像（３１０）の特徴とスレーブ画像（３３０）の特徴との間の数学的距離を求めて類似度を判断することができる。例えば、コンピューティング装置（１００）は、マスター画像（３１０）とスレーブ画像（３３０）の類似度が予め決められた臨界値以下である場合、スレーブ画像（３３０）をアノマリーデータを含む画像であると判断することができる。また、コンピューティング装置（１００）は、マスター画像（３１０）の特徴とスレーブ画像（３３０）の特徴とをディープニューラルネットワークで比較し、２つの画像で実際どのピクセルが相違しているかをピクセル単位で表すピクセルバイピクセルセグメンテーション出力（ｐｉｘｅｌ  ｂｙ  ｐｉｘｅｌ  ｓｅｇｍｅｎｔａｔｉｏｎ  ｏｕｔｐｕｔ）を生成することもできる。コンピューティング装置（１００）は、任意の比較アルゴリズムでサブネットワークの出力を相互比較することができる。コンピューティング装置（１００）は、両特徴の差異を単純比較するだけでなく、両特徴の比較にニューラルネットワークを使用して両特徴の差異の度合い、差異のある部分のピクセルの位置等を出力することができる。
【００６６】
図６は、本開示の第１の実施例に基づき、画像比較方法を実現するための神経網構成を示す例示図である。
【００６７】
図６は、図５の概略図をより具体化して示す例示図である。
【００６８】
マスター画像（３１０）とスレーブ画像（３３０）は、それぞれニューラルネットワーク（２００）のサブネットワーク（２１０、２３０）に入力されることができる。コンピューティング装置（１００）は、個々のサブネットワーク（２１０、２３０）を利用して入力された画像をそれぞれ演算し、入力された画像の特徴をそれぞれ抽出することができる。サブネットワーク（２１０、２３０）は、シャムネットワークの少なくとも一部を構成することができる。サブネットワーク（２１０、２３０）は、互いに、重みの少なくとも一部を共有して、比較モジュール（２５０）がマスター画像（３１０）及びスレーブ画像（３３０）に対して共通の重みで特徴を抽出して比較するようにすることができる。ここでサブネットワーク（２１０、２３０）は、ディープニューラルネットワーク構造を含むことができる。例えばネットワーク（２１０、２３０）のうち少なくとも１つは、畳み込みニューラルネットワーク構造を持つことができるが、本開示はこれらに制限されない。
【００６９】
比較モジュール（２５０）は、畳み込みニューラルネットワークや任意の比較アルゴリズム構造を持つことができる。本開示の画像比較方法がスレーブ画像（３３０）に存在するアノマリー部分のピクセルの位置情報を出力する場合、比較モジュール（２５０）は、ディープニューラルネットワーク構造を持つことができる。本開示の比較方法がスレーブ画像（３３０）にアノマリー部分が存在するか否かを出力する場合、比較モジュール（２５０）は、数学的比較アルゴリズムで構成されることができる。
【００７０】
比較モジュール（２５０）は、個々のサブネットワーク（２１０、２３０）と直列（ｉｎ  ｓｅｒｉｅｓ）で連結されることができる。ここで直列は、サブネットワークの出力の少なくとも一部が比較モジュール（２５０）の入力になったり、サブネットワークの一部が比較モジュール（２５０）と重なることがあり得ることを意味することができる。比較モジュール（２５０）は、複数の画像、画像の特徴を比較できる構成を持つことができ、比較モジュール（２５０）は、個々のサブネットワークから出力された特徴を相互比較して比較情報を生成することができる。比較モジュール（２５０）は、２つの特徴の数学的距離を比較する関数の形を取ることもあり、ディープニューラルネットワークで構成され２つの特徴の類似性を判断する構成にもなり得る。比較モジュール（２５０）がディープニューラルネットワークで構成される場合、比較モジュール（２５０）は、第１サブネットワーク（２１０）及び第２サブネットワーク（２３０）から受信されたデータから画像の類似性に関連する特徴を計算することができる。比較モジュール（２５０）は、任意のデータ比較アルゴリズムでサブネットワークから抽出された特徴を相互比較することができ、本開示は比較アルゴリズムに制限されない。比較モジュール（２５０）は、ディープニューラルネットワーク構造を持つことができ、そのうち逆畳み込みニューラルネットワーク構造を含むことができる。
【００７１】
比較モジュール（２５０）の比較結果に基づき、ニューラルネットワーク（２００）は、アノマリー関連情報を出力することができる。アノマリー関連情報は、画像がアノマリーデータを含むか否か、又は、アノマリーデータを含む場合、アノマリーが存在するピクセルの位置情報を含むことができる。図７のラベリング画像（４５０）は、アノマリーが存在するピクセルの位置情報を視覚化して示す画像である。画像でアノマリーが存在するピクセルの位置情報は、画像でアノマリーが存在する部分に重なった形状で表示され視覚化されることができる。第２の実施例において、アノマリーが存在するピクセルの位置情報は、アノマリーが存在するデータ領域の輪郭線を特定できる情報を含むことができる。本開示は、画像でアノマリーが存在する部分を表示するための任意の方法を含む。
【００７２】
図７は、本開示の第１の実施例に基づき、画像比較方法を実現するためのニューラルネットワークの学習データの例示である。
【００７３】
本開示の第１の実施例の画像比較方法を実現するためのニューラルネットワークの学習データ（４００）は、正常画像（４１０）、対象画像（４３０）、ラベリング画像（４５０）を含むことができる。正常画像（４１０）は、入力データのアノマリーの判断のベースとなる画像であり、アノマリーデータを含まない正常な状態の画像データだけを含む画像になり得る。正常画像（４１０）は、学習後ニューラルネットワークのマスター画像（３１０）に対応することができる。つまり、例えば、正常画像（４１０）は、正常製品の否定形パターンだけを持つアノマリーのない画像になり得る。対象画像（４３０）は、アノマリー判断の対象となる画像であって、アノマリーデータを含むことのできる画像になり得る。対象画像（４３０）は、学習後ニューラルネットワークのスレーブ画像（３３０）に対応することができる。ラベリング画像（４５０）は、対象画像（４３０）においてアノマリーが存在するピクセルをラベリングした画像である。図７に示す画像は、繊維加工分野に関する製品の画像であるが、本開示はこれに制限されない。
【００７４】
図８乃至１０は、本開示の画像比較方法を実現するためのニューラルネットワーク学習方式を示す概念図である。
【００７５】
図８に示すように、本開示の実施例においてニューラルネットワーク（２００）は、正常画像（４１０）及び対象画像（４３０）を学習データ（４２０）（つまり、異常の存在有無がラベリングされたデータ）で学習し、入力データがアノマリーデータを含むか否かを判断するように学習されることができる。ここで対象画像（４３０）は、アノマリーの存在有無がラベリングされた画像になり得る。つまり、図８の学習方式において、正常画像（４１０）及び対象画像（４３０）はニューラルネットワーク（２００）に入力され、ニューラルネットワーク（２００）は対象画像（４３０）からアノマリーデータが存在するか否かに関する出力（３５１）を出力することができる。コンピューティング装置（１００）は、ニューラルネットワークの出力と対象画像（４３０）にラベリングされたアノマリーデータの存在有無に係る情報を比較して誤差を求め、誤差を逆伝播してニューラルネットワーク（２００）がスレーブ画像（３３０）にアノマリーデータが存在するか否かを分類するよう学習させることができる。つまり、コンピューティング装置（１００）は、アノマリーデータの存在有無がラベリングされた学習データ（４２０）を利用し、アノマリーデータの存在有無に関する出力（３５１）を出力するようにニューラルネットワーク（２００）を学習させることができる。
【００７６】
図９に示すように、本開示の第２の実施例においてニューラルネットワーク（２００）は、正常画像（４１０）及びラベリング画像（４５０）を学習データ（４４０）（つまり、正常データとアノマリーが存在するピクセルがラベリングされた異常画像）で学習し、入力データでアノマリーが存在するピクセルの位置情報関連出力（３５３）を出力するように学習されることができる。ここでラベリング画像（４５０）は、前述のように画像にアノマリーが存在するピクセルの位置情報がラベリングされたデータになり得る。つまり、図９に示す学習方式において、正常画像（４１０）及びラベリング画像（４５０）がニューラルネットワーク（２００）に入力され、ニューラルネットワーク（２００）は、ラベリング画像（４５０）でアノマリーが存在するピクセルの位置情報関連データを出力することができる。コンピューティング装置（１００）は、ニューラルネットワークの出力とラベリング画像（４５０）にラベリングされたアノマリーが存在するピクセルの位置情報関連データを比較して誤差を求め、誤差を逆伝播してニューラルネットワーク（２００）をスレーブ画像（３３０）でアノマリーが存在するピクセルの位置情報関連データを出力するように学習させることができる。つまり、コンピューティング装置（１００）は、画像データにおいてアノマリーが存在するピクセルの位置情報がラベリングされた学習データ（４４０）を利用し、画像データでアノマリーが存在するピクセルの位置情報に関する出力（３５３）を出力するようにニューラルネットワーク（２００）を学習させることができる。
【００７７】
図１０に示すように、本開示の第３の実施例においてニューラルネットワーク（２００）は、正常画像（４１０）及び対象画像（４３０）を学習データ（４２０）で学習して、入力データからアノマリーが存在するピクセルの位置情報関連出力（３５３）を出力するように学習されることができる。つまり図１０に示す学習方式において正常画像（４１０）及び対象画像（４３０）がニューラルネットワーク（２００）に入力され、ニューラルネットワーク（２００）は、対象画像（４３０）でアノマリーが存在するピクセルの位置情報関連データを出力することができる。コンピューティング装置（１００）は、ニューラルネットワークの出力とターゲット（例えば、対象画像（４３０）にラベリングされたアノマリーの存在有無）を比較して誤差を求め、誤差を逆伝播してニューラルネットワーク（２００）がスレーブ画像（３３０）でアノマリーが存在するピクセルの位置情報関連データを出力するように学習させることができる。つまり、コンピューティング装置（１００）は、アノマリーデータの存在有無がラベリングされた学習データ（４２０）を利用し、画像データでアノマリーが存在するピクセルの位置情報に関する出力（３５３）を出力するようにニューラルネットワーク（２００）を学習させることができる。
【００７８】
図１１は、図６のニューラルネットワーク（２００）の構造をより詳しく示す図面である。
【００７９】
図１１は、本開示の画像比較方法を実現するためのシャムネットワークを図示した図面である。シャムネットワーク（２００）は、図６のニューラルネットワーク（２００）を構成することができる。サブネットワーク（２１０、２３０）のうち、少なくとも１つは畳み込みニューラルネットワーク構造を含むことができる。サブネットワーク（２１０、２３０）は、重み共有モジュール（２２０）によって一つ以上の重みを相互共有することが可能である。重み共有モジュール（２２０）は、２つのサブネットワーク（２１０、２３０）が一つ以上の重みを共有できるようにサブネットワーク（２１０、２３０）を連結する構造になり得る。比較モジュール（２５０）は、畳み込みネットワーク構造を含むことができる。サブネットワーク（２１０、２３０）は、互いに重みの少なくとも一部を共有することが可能である。従ってサブネットワーク（２１０、２３０）は、マスター画像（３１０）とスレーブ画像（３３０）に対し共通の重みに基づいて特徴を抽出して比較モジュール（２５０）が比較するようにすることができる。
【００８０】
比較モジュール（２５０）は、各サブネットワークのうち少なくとも１つとUネットワーク構造の少なくとも一部分を構成することができる。Ｕネットワーク（５００）については図１２を参照しながら説明する。サブネットワーク（２１０、２３０）の全部又は一部と比較モジュール（２５０）の全部又は一部がＵネットワークを構成することができる。そしてサブネットワーク（２１０、２３０）と比較モジュール（２５０）の組み合わせがＵネットワークの一部になり得る。
【００８１】
Ｕネットワーク（５００）は、画像セグメンテーションを遂行できるディープニューラルネットワーク構造になり得る。図１２に示すＵネットワークの左の部分は、入力データの次元を減少させることのできるディープニューラルネットワーク構造を持ち、右の部分は入力データの次元を増加させることのできるディープニューラルネットワーク構造を持つことができる。より具体的にＵネットワーク（５００）の次元減少ネットワーク（５１０）は、畳み込みニューラルネットワーク構造を持つことができ、次元増加ネットワーク（５３０）は、逆畳み込みニューラルネットワーク構造を持つことができる。図１２の図示において、長方形で表示されている部分は、Ｕネットワークの個々のレイヤーになり得る。図１２の図示において、各レイヤーの５０１部分の数字は、各レイヤーの例示的なチャンネルの数になり得る。図１２の図示において、各レイヤーの５０３部分の数字は、各レイヤーで処理される画像の例示的なピクセルの数を意味することができ、図１２に示すＵネットワークの演算の矢印方向に沿って進むと画像の例示的なピクセルの数が一度減少してから増加することから、画像の次元が一度減少してから再び増加することを確認することができる。図１２に示す矢印５１１は、画像に畳み込みフィルターを適用させる畳み込み動作を意味することができる。例えば、矢印５１１は、３＊３畳み込みフィルターを画像に適用する畳み込み動作になり得るが、本開示はこれらに制限されない。図１２に示す矢印５１３は、次元減少した画像の次元を増加させるために必要な情報を、次元減少ネットワーク（５１０）から、対応する次元増加ネットワーク（５３０）に伝送する動作を意味することができる。図１２に示す矢印５１５は、画像のピクセルを減少させるためのプーリング動作を意味することができる。例えば、矢印５１５は最大値を抽出するマックスプーリング（ｍａｘ  ｐｏｏｌｉｎｇ）になり得るが、本開示はこれに制限されない。図１２に示す矢印５１７は、画像の次元を増加させる畳み込み動作を意味することができる。例えば、矢印５１７は、２＊２畳み込みフィルターを利用した畳み込み動作になり得るが、本開示はこれらに制限されない。図１２に示す矢印５１９は、完全連結レイヤーに出力を伝達するための畳み込み動作を意味することができる。例えば、矢印５１９は、１＊１畳み込みフィルターを利用した畳み込み動作になり得る。図１２の図示において、次元増加ネットワーク（５３０）に含まれた斜線が引かれた長方形は、画像の次元増加のための情報が次元減少ネットワーク（５１０）の対応するレイヤーから伝達されたことを意味することができる。
【００８２】
Ｕネットワーク（５００）は、画像セグメンテーションのために画像の次元を減少させる過程において次元増加のための情報（例えば、ピクセルの位置情報、高レベル特徴等）が画像次元を増加させる過程に伝達されることができるようにする構造（図１２の図示において矢印５１３）を持つことができる。つまり、Ｕネットワークの次元減少ネットワーク（５１０）における各レイヤーは、次元増加ネットワーク（５３０）における対応するレイヤーに特徴の位置情報を伝達することができる。これにより、画像の次元を一度減少させてからまた次元を増加させる過程において、失われ得るピクセルの位置情報を復元することができる。従って、ピクセルの位置情報が画像次元を増加させる過程において復旧されることができるため、Ｕネットワークは、ピクセルの位置情報が必ず必要な画像セグメンテーションに使われることができる。具体的に、図１２に示す例示のように、Ｕネットワーク（５００）の次元減少ネットワーク（５１０）において第１レイヤー（入力に最も近いレイヤー）は、次元増加ネットワーク（５３０）の最後のレイヤー（出力と最も近いレイヤー）に情報を伝達することができる。伝達される情報は次元増加ネットワーク（５３０）において次元減少した画像の次元を増加させるために必要な情報を含むことができる。伝達される情報は、例えば、特徴、特徴の位置情報、各特徴が抽出されたピクセルの位置情報、原本画像のピクセル位置情報等になり得るが、本開示はこれらに制限されない。そして、Ｕネットワークの次元減少ネットワークにおいて第２レイヤー（入力から２番目のレイヤー）は、次元増加ネットワーク（５３０）の最後から2番目のレイヤー（出力から２番目のレイヤー）に情報を伝達することができる。こうした過程で、Ｕネットワークの各サブネットワーク（次元増加ネットワーク（５３０）、次元減少ネットワーク（５１０））は、レイヤーの位置に基づいて決まる、対応するレイヤーに情報を伝達することができる。
【００８３】
比較モジュール（２５０）は次元増加ネットワークを含めてサブネットワーク（２１０、２３０）のうち、少なくとも１つとＵネットワーク構造の少なくとも一部分を構成することができる。図１３は、本開示の画像比較方法を実現するためのシャムネットワークの例示図であり、サブネットワーク（２１０、２３０）が比較モジュール（２５０）とＵネットワーク構造を構成することを示す図面である。図１３の例示において、１グループの長方形は、ニューラルネットワークの１レイヤーを表すことができる。図１３に構成されたニューラルネットワークは、単純化した例示に過ぎず、レイヤーの数、画像の大きさ等は変更されることができ、本開示は図１３の記載に制限されない。
【００８４】
図１３において点線の左側は、Ｕネットワークの入力データの次元を減少させる次元減少ネットワーク（５１０）であり、点線の右側は入力データの次元を復元する次元増加ネットワーク（５３０）を構成することができる。
【００８５】
図１３の例示において、マスター画像（３１０）は、第１サブネットワーク（２１０）に入力され、スレーブ画像（３３０）は、第２サブネットワーク（２３０）に入力されることができる。第１サブネットワーク（２１０）は、マスター画像（３１０）から特徴を抽出し、第２サブネットワーク（２３０）は、スレーブ画像（３３０）から特徴を抽出することができる。このとき、第１及び第２サブネットワーク（２３０）は、互いに重みを共有することが可能である。第１及び第２サブネットワーク（２３０）の各レイヤーの特徴は、相互比較されることができる。図１３に示す矢印２５５は、第１及び第２サブネットワークからデータを取り出す動作を意味することができる。例えば、矢印２５５は、第１及び第２サブネットワークで計算されたデータを比較する動作を意味することができる。また例えば、矢印２５５は、マスター画像の特徴とスレーブ画像の特徴との差異計算、又は、マスター画像の特徴とスレーブ画像の特徴のディープニューラルネットワーク比較器動作を意味することができる。第１及び第２サブネットワーク（２３０）のそれぞれのレイヤーから抽出された特徴は、比較モジュール（２５０）によってそれぞれ比較されることができる。プロセッサー（１１０）は、第１及び第２サブネットワーク（２３０）の各レイヤーから抽出された特徴をそれぞれ比較してレイヤー比較情報を生成することができる。レイヤー比較情報は、マスター画像の特徴とスレーブ画像の特徴との差異に関する情報を含むことができる。プロセッサー（１１０）は、レイヤー比較情報に基づき、アノマリー関連情報を演算することができる。このためにプロセッサー（１１０）は、生成されたレイヤー比較情報、特徴情報を比較モジュール（２５０）の対応するレイヤーに提供することができる。提供される情報は、特徴、特徴の位置情報、各特徴が抽出されたピクセルの位置情報、原本画像のピクセル位置情報、レイヤー比較情報等になり得る。対応するレイヤーは、レイヤー比較情報を生成する際ベースとなった第１サブネットワークのレイヤー又は第２サブネットワークのレイヤーの位置に基づいて決まる。より具体的に、第１及び２サブネットワークの入力レイヤーに近いレイヤーは、比較モジュール（２５０）の出力に近いレイヤーと対応する。図１３に示された長方形に示すパターンは、相互対応するレイヤーであることを意味することができる。つまり、図１３に示す第１及び第２サブネットワークの第１レイヤー（２１１、２３１）は、比較モジュール（２５０）の第３レイヤーと対応することができる。つまり、第１及び第２サブネットワークの入力レイヤーをベースとしたレイヤーの位置と、比較モジュール（２５０）の出力レイヤーをベースとしたレイヤーの位置が相互対応することができる。つまり、図１３に示す第１レイヤー比較情報（２５１）は、比較モジュール（２５０）の次元増加ネットワーク（５３０）の第３レイヤー（２５３）に伝達されることができる。図１３に示す矢印２５７は、第１及び第２サブネットワークから取り出した情報を次元増加ネットワーク（５３０）に属する、対応するレイヤーに伝達する動作を意味することができる。また矢印２５７は、減少した画像の次元を増加させるための情報の伝達を意味することができる。レイヤー比較情報、特徴情報の伝達及び連結を意味し、これは図１２のＵネットワークについて図示された矢印５１３に類似した動作である。図１３のシャムネットワークは、シャムネットワークのサブネットワーク（サブネットワーク及び比較モジュール）が、Ｕネットワーク構造を成し、こうしたレイヤー比較情報（２５１）が、次元増加ネットワーク（５３０）側に伝達され画像の次元を一度減少させてからまた次元を増加させる過程において、失われ得るピクセルの位置情報を復元することができる。従って、本開示の画像比較方法は、図１３にようなニューラルネットワーク構造を持つことにより、アノマリー部分に対する画像セグメンテーションを遂行することができる。
【００８６】
本開示においてニューラルネットワーク（２００）は、マスター画像（３１０）とスレーブ画像（３３０）との差異に基づき、スレーブ画像（３３０）にアノマリーデータが含まれるか否かを分類することができる。また、本開示においてニューラルネットワーク（２００）は、マスター画像（３１０）とスレーブ画像（３３０）との差異とレイヤー比較情報に基づき、スレーブ画像（３３０）に存在するアノマリー部分のピクセルを表示することができる。
【００８７】
シャムネットワークを応用したニューラルネットワークを使うことにより、本開示の第１の実施例の画像比較方法は、マスター画像とスレーブ画像が一部相違する場合（２つの画像が相当類似しているが、一部アノマリーが存在し細かいところの一部が相違している場合等）と、相当相違している場合（レンズの歪曲、照明の変化、テクスチャーの相違等によって２つの画像が相当部分相違しているが、アノマリーは存在せず細かい所は類似している場合等）をすべて学習して分類することができる。本開示の画像比較方法は、マスター画像とスレーブ画像とが同じドメインに属する場合、細かい所の差異によってスレーブ画像にアノマリーデータが存在するか否かを判断することができる。具体的にマスター画像とスレーブ画像がすべて花柄を含む織物に関する画像である場合（同一の柄、同一のテクスチャーの場合）、２つの画像で差異が発生する部分がアノマリーデータになり得る。また、本開示の画像比較方法は、マスター画像とスレーブ画像とが異なるドメインに属する場合にも、細かい所を比較してスレーブ画像にアノマリーデータが存在するか否かを判断することができる。具体的に、マスター画像は花柄を含む織物に関する画像であり、スレーブ画像は星柄を含む革に関する画像である場合（柄、テクスチャーが相違する場合）、２つの画像でドメインが相違していることにより発生する大きな差異部分は無視して、細かい所を調べてスレーブ画像にアノマリーデータが存在するか否かを判断することができる。従って本開示の画像比較方法は、画像データの回転、変形、レンズの歪曲による誤差、ドメインの変更等があっても一般的な認識性能を持つことができるため、ドメイン別に学習データを確保してドメイン別に学習を遂行しなければならない既存のニューラルネットワークの限界を克服したのと同様の効果を持つ。
【００８８】
図１４は、本開示の第１の実施例に基づき、画像比較方法を実現するための手段を図示したブロック構成図である。
【００８９】
本開示の第１の実施例に基づき、画像比較方法は、次のような手段によって実現することができる。
【００９０】
本開示の第１の実施例に基づき、画像比較方法は、事前に学習されたネットワーク関数が相互関連性を持つ第１画像データ及び第２画像データを受信するための手段（６１０）と、前述の受信された第１画像データ及び第２画像データに基づき、第２画像データのアノマリー関連情報を決定するための手段（６３０）と、前述のネットワーク関数によって決定されたアノマリー関連情報を出力するための手段（６５０）とによって実現することができる。
【００９１】
代替実施例において、前述のネットワーク関数は、前述の第１画像データが入力される第１サブネットワークと前述の第２画像データが入力される第２サブネットワークとを含むことができる。
【００９２】
代替実施例において、前述のネットワーク関数は、前述の第１サブネットワークと前述の第２サブネットワークとのうち、少なくとも１つと直列（ｉｎ  ｓｅｒｉｅｓ）で繋がる比較モジュールをさらに含むことができる。
【００９３】
代替実施例において、前述の第１サブネットワーク、前述の第２サブネットワーク、前述の比較モジュールのうち、少なくとも１つはディープニューラルネットワーク（Ｄｅｅｐ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ；ＤＮＮ）構造を含むことができる。
【００９４】
代替実施例において、前述の第１サブネットワークと前述の第２サブネットワークとのうち、少なくとも１つは、前述のディープニューラルネットワーク構造のうち、畳み込みニューラルネットワーク（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ；ＣＮＮ）構造を含むことができる。
【００９５】
代替実施例において、前述の比較モジュールは、前述のディープニューラルネットワーク構造のうち、逆畳み込みニューラルネットワーク（Ｄｅｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）構造を含むことができる。
【００９６】
代替実施例において、前述の比較モジュールは、前述の第１サブネットワークと前述の第２サブネットワークとのうち、少なくとも１つのサブネットワークとＵ−ネットワーク（Ｕ−Ｎｅｔ）構造の少なくとも一部分を構成することができる。
【００９７】
代替実施例において、前述の第１サブネットワークと前述の第２サブネットワークとは、同じ重み（ｗｅｉｇｈｔ）を持つリンクを少なくとも一つ以上共有することが可能である。
代替実施例において、前述の第１サブネットワークと前述の第２サブネットワークは、シャムネットワーク（Ｓｉａｍｅｓｅ  Ｎｅｔｗｏｒｋ）の少なくとも一部分を構成することができる。
【００９８】
代替実施例において、アノマリー関連情報を決定するための手段（６３０）は、前述の第１サブネットワークの少なくとも１つのレイヤー及び前述の第２サブネットワークの少なくとも１つのレイヤーに基づき、少なくとも１つのレイヤー比較情報を生成するための手段と、前述の生成されたレイヤー比較情報に基づき、前述のアノマリー関連情報を演算するための手段とを含むことができる。
【００９９】
代替実施例において、アノマリー関連情報を演算するための手段は、前述の生成されたレイヤー比較情報を前述の比較モジュールの対応するレイヤーに提供するための手段を含むことができる。
【０１００】
代替実施例において、前述の対応するレイヤーは、前述のレイヤー比較情報を生成する際ベースとなった前述の第１サブネットワークのレイヤー又は前述の第２サブネットワークのレイヤーの位置に基づき、決まることが可能である。
【０１０１】
代替実施例において、前述の第１画像データは、アノマリーデータを含まない正常な状態の画像データだけを含むマスター画像であり、前述の第２画像データは、スレーブ画像になり得る。
【０１０２】
代替実施例において、前述のアノマリー関連情報は、前述の第２画像データの中でアノマリーが存在するピクセルの位置情報関連データを含むことができる。
【０１０３】
代替実施例において、前述の第１画像データと第２画像データとは大きさが同じであることがあり得る。
【０１０４】
図１５は、本開示の第１の実施例に基づき、画像比較方法を実現するためのモジュールを図示したブロック構成図である。
【０１０５】
本開示の第１の実施例に基づき、画像比較方法は、次のようなモジュールによって実現することができる。
【０１０６】
本開示の第１の実施例に基づき、画像比較方法は、事前に学習されたネットワーク関数が相互関連性を持つ第１画像データ及び第２画像データを受信するためのモジュール（７１０）と、前述の受信された第１画像データ及び第２画像データに基づき、第２画像データのアノマリー関連情報を決定するためのモジュール（７３０）と、前述のネットワーク関数によって決定されたアノマリー関連情報を出力するためのモジュール（７５０）とによって実現することができる。
【０１０７】
代替実施例において、アノマリー関連情報を決定するためのモジュール（７３０）は、前述の第１サブネットワークの少なくとも１つのレイヤー及び前述の第２サブネットワークの少なくとも１つのレイヤーに基づき、少なくとも１つのレイヤー比較情報を生成するためのモジュールと、前述の生成されたレイヤー比較情報に基づき、前述のアノマリー関連情報を演算するためのモジュールとを含むことができる。
【０１０８】
代替実施例において、アノマリー関連情報を演算するためのモジュールは、前述の生成されたレイヤー比較情報を前述の比較モジュールの対応するレイヤーに提供するためのモジュールを含むことができる。
【０１０９】
図１６は、本開示の第１の実施例に基づき、画像比較方法を実現するためのロジックを図示したブロック構成図である。
【０１１０】
本開示の第１の実施例に基づき、画像比較方法は、次のようなロジックによって実現することができる。
【０１１１】
本開示の第１の実施例による画像比較方法は、事前に学習されたネットワーク関数が相互関連性を持つ第１画像データ及び第２画像データを受信するためのロジック（８１０）と、前述の受信された第１画像データ及び第２画像データに基づき、第２画像データのアノマリー関連情報を決定するためのロジック（８３０）と、前述のネットワーク関数によって決定されたアノマリー関連情報を出力するためのロジック（８５０）とによって実現することができる。
【０１１２】
代替実施例において、アノマリー関連情報を決定するためのロジック（８３０）は、前述の第１サブネットワークの少なくとも１つのレイヤー及び前述の第２サブネットワークの少なくとも１つのレイヤーに基づき、少なくとも１つのレイヤー比較情報を生成するためのロジックと、前述の生成されたレイヤー比較情報に基づき、前述のアノマリー関連情報を演算するためのロジックとを含むことができる。
【０１１３】
代替実施例において、アノマリー関連情報を演算するためのロジックは、前述の生成されたレイヤー比較情報を前述の比較モジュールの対応するレイヤーに提供するためのロジックを含むことができる。
【０１１４】
図１７は、本開示の第１の実施例に基づき、画像比較方法を実現するための回路を図示したブロック構成図である。
【０１１５】
本開示の第１の実施例に基づき、画像比較方法は、次のような回路によって実現することができる。
【０１１６】
本開示の第１の実施例による画像比較方法は、事前に学習されたネットワーク関数が相互関連性を持つ第１画像データ及び第２画像データを受信するための回路（９１０）と、前述の受信された第１画像データ及び第２画像データに基づき、第２画像データのアノマリー関連情報を決定するための回路（９３０）と、前述のネットワーク関数によって決定されたアノマリー関連情報を出力するための回路（９５０）によって実現することができる。
【０１１７】
代替実施例において、アノマリー関連情報を決定するための回路（９３０）は、前述の第１サブネットワークの少なくとも１つのレイヤー及び前述の第２サブネットワークの少なくとも１つのレイヤーに基づき、少なくとも１つのレイヤー比較情報を生成するための回路と、前述の生成されたレイヤー比較情報に基づき、前述のアノマリー関連情報を演算するための回路とを含むことができる。
【０１１８】
代替実施例において、アノマリー関連情報を演算するためのモジュールは、前述の生成されたレイヤー比較情報を前述の比較モジュールの対応するレイヤーに提供するための回路を含むことができる。
【０１１９】
当業者は、さらにここに開示された実施例について説明された多様な例示的論理的ブロック、構成、モジュール、回路、手段、ロジック、及びアルゴリズム段階が、電子ハードウェア、コンピューターソフトウェア、又はこの２つの組み合わせによって実装されることができることを認識すべきである。ハードウェア及びソフトウェアの相互互換性を明確に例示するために、多様な例示的コンポーネント、ブロック、構成、手段、ロジック、モジュール、回路、及び段階はこれらの機能性の側面で一般的に上記で説明された。このような機能性がハードウェアとして又はソフトウェアとして実装されるかについては、全般的なシステムに付与されている特定アプリケーション（ａｐｐｌｉｃａｔｉｏｎ）及び設計上の制限によるものである。熟練した技術者は、個々の特定アプリケーションのために多様な方法で説明された機能性を実装することができるが、このような実装の決定が本開示の内容領域を逸脱するものと解釈されてはならない。
【０１２０】
図１８は、本開示の第１の実施例に基づくコンピューティング装置のブロック構成図（ｂｌｏｃｋ  ｄｉａｇｒａｍ）である。
【０１２１】
図１８は、本開示の実施例が実装されることのできる例示的なコンピューティング環境に対する簡略で一般的な概略図を図示するものである。
【０１２２】
本開示が一般的に一つ以上のコンピューター上で実行されることのできるコンピューター実行可能な命令と関連づけられて前述されているが、当業者なら本開示がその他のプログラムモジュールと結合されて及び/又はハードウェアとソフトウェアとの組み合わせとして実装されることができることは容易に理解できる。
【０１２３】
一般的に、プログラムモジュールは、特定のタスクを遂行したり特定の抽象データパターンを具現化するルーティン、プログラム、コンポーネント、データ構造、その他等を含む。また、当業者なら本開示の方法がシングル−プロセッサー又はマルチプロセッサーコンピューターシステム、ミニコンピューター、メインフレームコンピューターはもちろん、パーソナルコンピューター、ハンドヘルドコンピューティング装置、マイクロプロセッサー搭載又はプログラム可能な家電製品、その他等（これらはそれぞれ一つ以上の関連する装置と繋がって動作できる）をはじめとする他のコンピューターシステム構成によって実施されることができることを容易に理解できるだろう。
【０１２４】
本開示の説明された実施例は、またあるタスクが通信ネットワークを通じて繋がっている遠隔処理装置によって遂行される分散コンピューティング環境において実施されることができる。分散コンピューティング環境において、プログラムモジュールはローカル及び遠隔メモリー保存装置両方に位置することができる。
【０１２５】
コンピューターは通常多様なコンピューター可読媒体を含む。コンピューターによってアクセス可能な媒体は、どんなものであれコンピューター可読媒体になり得るが、こうしたコンピューター可読媒体は、揮発性及び非揮発性媒体、一時的（ｔｒａｎｓｉｔｏｒｙ）及び非一時的（ｎｏｎ−ｔｒａｎｓｉｔｏｒｙ）媒体、移動式及び非移動式媒体を含む。制限ではなく例として、コンピューター可読媒体は、コンピューター可読保存媒体及びコンピューター可読伝送媒体を含むことができる。コンピューター可読保存媒体は、コンピューター可読命令、データ構造、プログラムモジュール又はその他のデータのような情報を保存する任意の方法又は技術で実装される揮発性及び非揮発性媒体、一時的及び非一時的媒体、移動式及び非移動式媒体を含む。コンピューター保存媒体はＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリー又はその他のメモリー技術、ＣＤ−ＲＯＭ、ＤＶＤ（ｄｉｇｉｔａｌ  ｖｉｄｅｏ  ｄｉｓｋ）又はその他の光ディスク保存装置、磁気カセット、磁気テープ、磁気ディスク保存装置又はその他の磁気保存装置、又はコンピューターによってアクセスされることができ必要な情報を保存するとき使用できる任意のその他の媒体を含むが、これに限定されない。
【０１２６】
コンピューター可読伝送媒体は通常搬送波（ｃａｒｒｉｅｒ  ｗａｖｅ）又はその他の伝送メカニズム（ｔｒａｎｓｐｏｒｔ  ｍｅｃｈａｎｉｓｍ）のような被変調データ信号（ｍｏｄｕｌａｔｅｄ  ｄａｔａ  ｓｉｇｎａｌ）にコンピューター可読命令、データ構造、プログラムモジュール又はその他のデータ等を実装しすべての情報伝達媒体を含む。「被変調データ信号」という用語は、信号の中で情報をエンコードするようにその信号の特性のうち一つ以上を設定又は変更させた信号を意味する。制限ではなく例として、コンピューター可読伝送媒体は、有線ネットワーク又は直接配線接続（ｄｉｒｅｃｔ−ｗｉｒｅｄ  ｃｏｎｎｅｃｔｉｏｎ）のような有線媒体、さらに音響、ＲＦ、赤外線、その他の無線媒体のような無線媒体を含む。上述の媒体のうち、任意のものの組み合わせもまたコンピューター可読伝送媒体の範囲内に含まれるものとする。
【０１２７】
コンピューター（１１０２）を含む本開示の色々な側面を具現化する例示的な環境（１１００）が示されており、コンピューター（１１０２）は、処理装置（１１０４）、システムメモリー（１１０６）及びシステムバス（１１０８）を含む。システムバス（１１０８）は、システムメモリー（１１０６）（これに限定されない）をはじめとするシステムコンポーネントを処理装置（１１０４）に連結させる。処理装置（１１０４）は、多様な商用プロセッサーのうち、任意のプロセッサーになり得る。デュエルプロセッサー及びその他のマルチプロセッサーアーキテクチャもまた処理装置（１１０４）として利用されることができる。
【０１２８】
システムバス（１１０８）は、メモリーバス、周辺装置バス、及び多様な商用バスアーキテクチャのうち、任意のものを使用するローカルバスにさらに相互連結されることのできるいくつかのパターンのバス構造のうち任意のものになり得る。システムメモリー（１１０６）は、読み取り専用メモリー（ＲＯＭ）（１１１０）及びランダムアクセスメモリー（ＲＡＭ）（１１１２）を含む。基本入/出力システム（ＢＩＯＳ）は、ＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ等の非揮発性メモリー（１１１０）に保存され、このＢＩＯＳは始動中のようなときにコンピューター（１１０２）内の構成要素間で情報を伝送することをサポートする基本的なルーティンを含む。ＲＡＭ（１１１２）は、またデータをキャッシュするための静的ＲＡＭ等の高速ＲＡＭを含むことができる。
【０１２９】
コンピューター（１１０２）は、また内蔵型ハードディスクドライブ（ＨＤＤ）（１１１４）（例えば、ＥＩＤＥ、ＳＡＴＡ）―この内蔵型ハードディスクドライブ（１１１４）は、また適切なシャシ（図示は省略）の中に設置され外付け型として構成されることができる―、磁気フロッピーディスクドライブ（ＦＤＤ）（１１１６）（例えば、移動式ディスケット（１１１８）から読み取ったりそこに書き込むためのものである）及び光ディスクドライブ（１１２０）（例えば、ＣＤ−ＲＯＭディスク（１１２２）を読み取ったりＤＶＤ等その他の高容量光媒体から読み取ったりそこに書き込むためのものである）を含む。ハードディスクドライブ（１１１４）、磁気ディスクドライブ（１１１６）及び光ディスクドライブ（１１２０）は、それぞれハードディスクドライブインターフェース（１１２４）、磁気ディスクドライブインターフェース（１１２６）及び光ドライブインターフェース（１１２８）によってシステムバス（１１０８）に連結されることができる。外付け型ドライブを実装するためのインターフェース（１１２４）は、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）とＩＥＥＥ１３９４インターフェース技術とのうち少なくとも一つ又は両方を含む。
【０１３０】
これらドライブ及びこれらに関連するコンピューター可読媒体は、データ、データ構造、コンピューター実行可能な命令、その他等の非揮発性保存を提供する。コンピューター（１１０２）の場合、ドライブ及び媒体は任意のデータを適切なデジタル形式で保存するものに対応する。前述におけるコンピューター可読媒体に対する説明がＨＤＤ、移動式磁気ディスク、及びＣＤ又はＤＶＤ等の移動式光媒体について触れているが、当業者ならジップドライブ（ｚｉｐ  ｄｒｉｖｅ）、磁気カセット、フラッシュメモリーカード、カートリッジ、その他等のコンピューターによって読み取り可能な他の類の媒体もまた例示的な運営環境において使用されることができ、また任意のこうした媒体が本開示の方法を遂行するためのコンピューター実行可能な命令を含むことができることは容易に理解できるものである。
【０１３１】
運営体制（１１３０）、一つ以上のアプリケーションプログラム（１１３２）、その他のプログラムモジュール（１１３４）及びプログラムデータ（１１３６）をはじめとする多数のプログラムモジュールがドライブ及びＲＡＭ（１１１２）に保存されることができる。運営体制、アプリケーション、モジュール及び/又はデータの全部又はその一部分がまたＲＡＭ（１１１２）にキャッシュされることができる。本開示が、商業的に利用可能な多様な運営体制又は複数の運営体制の組み合わせによって実装されることができることは容易に理解できることである。
【０１３２】
ユーザーは一つ以上の有線/無線入力装置、例えば、キーボード（１１３８）及びマウス（１１４０）等のポインティング装置を通じてコンピューター（１１０２）に命令及び情報を入力することができる。その他の入力装置（図示は省略）としては、マイク、ＩＲリモコン、ジョイスティック、ゲームパッド、スタイラスペン、タッチスクリーン、その他等があり得る。これら及びその他の入力装置は、システムバス（１１０８）に繋がっている入力装置インターフェース（１１４２）を通じて処理装置（１１０４）に接続されることが多いが、並列ポート、ＩＥＥＥ１３９４直列ポート、ゲームポート、ＵＳBポート、ＩＲインターフェース、その他等のその他のインターフェースによって接続されることもできる。
【０１３３】
モニター（１１４４）、又は、他の種類のディスプレイ装置も、ビデオアダプター（１１４６）等のインターフェースを通じてシステムバス（１１０８）に繋がる。モニター（１１４４）に加えて、コンピューターは一般的にスピーカー、プリンター、その他等のその他の周辺出力装置（図示は省略）を含む。
【０１３４】
コンピューター（１１０２）は、有線及び/又は無線通信を通じた遠隔コンピューター（複数である場合を含む）（１１４８）等の一つ以上の遠隔コンピューターへの論理的連結を利用し、ネットワーク化された環境で動作することができる。遠隔コンピューター（複数である場合を含む）（１１４８）は、ワークステーション、コンピューティングディバイスコンピューター、ルーター、パーソナルコンピューター、携帯用コンピューター、マイクロプロセッサー搭載の娯楽機器、フィギュア装置又はその他の通常のネットワークノードになり得るが、一般的にコンピューター（１１０２）について記述された構成要素のうち、多数又はその全部を含むが、簡略にするため、メモリー保存装置（１１５０）のみ図示されている。図示されている論理的連結は、近距離通信網（ＬＡＮ）（１１５２）及び/又はより大きいネットワーク、例えば、遠距離通信網（ＷＡＮ）（１１５４）への有線/無線の接続を含む。こうしたＬＡＮ及びＷＡＮネットワーキング環境は、オフィスや会社では一般的なものであり、イントラネット等の全社的コンピューターネットワーク（ｅｎｔｅｒｐｒｉｓｅ−ｗｉｄｅ  ｃｏｍｐｕｔｅｒ  ｎｅｔｗｏｒｋ）を容易にし、これらすべてはグローバルコンピューターネットワーク、例えば、インターネットに接続することができる。
【０１３５】
ＬＡＮネットワーキング環境において使用されるとき、コンピューター（１１０２）は、有線及び/又は無線通信ネットワークインターフェース又はアダプター（１１５６）を通じてローカルネットワーク（１１５２）に接続する。アダプター（１１５６）は、ＬＡＮ（１１５２）への有線又は無線通信を容易にすることができ、このＬＡＮ（１１５２）には、また無線アダプター（１１５６）と通信するためにそれに設置されている無線アクセスポイントが含まれている。ＷＡＮネットワーキング環境において使用されるとき、コンピューター（１１０２）は、モデム（１１５８）を含むことができたり、ＷＡＮ（１１５４）上の通信コンピューティングディバイスと接続したり、又はインターネットを通じる等、ＷＡＮ（１１５４）を通じて通信を設定するその他の手段を持つ。内蔵型又は外付け型及び有線又は無線装置になり得るモデム（１１５８）は、直列ポートインターフェース（１１４２）を通じてシステムバス（１１０８）に繋がる。ネットワーク化された環境において、コンピューター（１１０２）に対し説明されたプログラムモジュール又は、その一部分が遠隔メモリー・保存装置（１１５０）に保存されることができる。図示されたネットワーク連結が例示的なものでありコンピューター間で通信リンクを設定するその他の手段が使われることができることは容易に理解できる。
【０１３６】
コンピューター（１１０２）は、無線通信に配置され動作する任意の無線装置又は個体、例えば、プリンター、スキャナー、デスクトップ及び/又は携帯用コンピューター、ＰＤＡ（ｐｏｒｔａｂｌｅ  ｄａｔａ  ａｓｓｉｓｔａｎｔ）、通信衛生、無線検出可能なタグと関連する任意の装備又は場所、及び電話と通信をする動作をする。これは少なくともＷｉ−Ｆｉ（登録商標）及びブルートゥース（登録商標）無線技術を含む。従って、通信は、従来のネットワークのように予め定義された構造か、単純に少なくとも２つの装置間のアドホック通信（ａｄｈｏｃ  ｃｏｍｍｕｎｉｃａｔｉｏｎ）になり得る。
【０１３７】
Ｗｉ−Ｆｉ（Ｗｉｒｅｌｅｓｓ  Ｆｉｄｅｌｉｔｙ）は、有線でなくてもインターネット等に接続できるようにする。Ｗｉ−Ｆｉは、こうした装置、例えば、コンピューターが室内外で、つまり基地局の通話圏内のどこからでもデータを伝送及び受信できるようにするセル電話のような無線技術である。Ｗｉ−Ｆｉネットワークは、安全で信頼性があり高速である無線接続を提供するためにＩＥＥＥ８０２．１１（ａ、ｂ、ｇ、その他）という無線技術を利用する。コンピューターを互いに、インターネットや有線ネットワーク（ＩＥＥＥ８０２．３又はイーサネットを使用する）に接続させるためにＷｉ−Ｆｉが使われることができる。Ｗｉ−Ｆｉネットワークは、非認可２．４及び５ＧＨｚ無線帯域で、例えば、１１Ｍｂｐｓ（８０２．１１ａ）又は５４Mｂps（８０２．１１ｂ）データレートで動作したり、両帯域（デュエル帯域）を含む製品で動作することができる。
【０１３８】
本開示の技術分野における通常の知識を持つ者は、情報及び信号が任意の多様な異なる技術及び技法を利用して表現されることができるということを理解できるだろう。例えば、前述の説明で参考になり得るデータ、支持、命令、情報、信号、ビット、シンボル及びチップは、電圧、電流、電磁気波、磁場等又は粒子、光学場又は粒子、又はこれらの任意の結合によって表現されることができる。
【０１３９】
本開示の技術分野における通常の知識を持つ者は、ここに開示された実施例に関連して説明された多様な例示的な論理ブロック、モジュール、プロセッサー、手段、回路及びアルゴリズム段階が電子ハードウェア、（便宜を図るため、ここでは「ソフトウェア」と称される）多様な形態のプログラム又は設計コード又はこれらすべての結合によって実現することができるということを理解できるだろう。ハードウェア及びソフトウェアのこうした相互互換性を明確に説明するために、多様な例示的なコンポーネント、ブロック、モジュール、回路及び段階がこれらの機能と関連して一般的に説明された。このような機能がハードウェア又はソフトウェアとして実装されるか否かは、特定のアプリケーション及び全体システムに対して課される設計上の制約によって左右される。本開示の技術分野における通常の知識を持つ者は個々の特定のアプリケーションに対して多様な方式によって説明された機能を実装することができるが、こうした実装の決定は、本開示の範囲を逸脱するものと解釈されてはならない。
【０１４０】
ここに示された多様な実施例は、方法、装置、又は標準プログラミング及び/又はエンジニアリング技術を使用した製造物品（ａｒｔｉｃｌｅ）によって具現化ことができる。用語「製造物品」は、任意のコンピューター可読装置からアクセス可能なコンピュータープログラム、キャリア、又は媒体（ｍｅｄｉａ）を含む。例えば、コンピューター可読媒体は、磁気保存装置（例えば、ハードディスク、フロッピーディスク、磁気ストリップ等）、光学ディスク（例えば、ＣＤ、ＤＶＤ等）、スマートカード、及びフラッシュメモリー装置（例えば、ＥＥＰＲＯＭ、カード、スティック、キードライブ等）を含むが、これらに制限されるものではない。また、ここに示される多様な保存媒体は、情報を保存するための一つ以上の装置及び/又は他の機械可読媒体を含む。
【０１４１】
示されたプロセスにおける段階の特定の順番又は階層ー構造は、例示的なアプローチの一例であることを理解するようにする。設計上の優先順位に基づき、本開示の範囲の中でプロセスにおける段階の特定の順番又は階層ー構造が再配列されることができることを理解するようにする。添付の方法請求項は、サンプル順番として多様な段階のエレメントを提供しているが、示された特定の順番又は階層ー構造に限定されることを意味するわけではない。
【０１４２】
示された実施例に関する説明は、任意の本開示の技術分野における通常の知識を持つ者が、本開示を利用したり又は実施できるように提供される。こうした実施例に対する多様な変形は、本開示の技術分野における通常の知識を持つ者には明確に分かり得ることであり、ここに定義された一般的な原理は、本開示の範囲を逸脱することなく他の実施例に適用されることができる。従って、本開示はここに示された実施例に限定されるものではなく、ここに示された原理及び新規な特徴と一貫する最広義の範囲で解釈されるべきである。
【０１４３】
前述のように発明の実施のための最善の形態において関連内容を記述した。
【産業上の利用可能性】
【０１４４】
本開示は、コンピューティング装置を利用して入力画像を比較する分野において活用される人工神経網のトレーニングに使われることができる。
【図１】
2020536337.tif 000003
【図２】
2020536337.tif 000004
【図３】
2020536337.tif 000005
【図４】
2020536337.tif 000006
【図５】
2020536337.tif 000007
【図６】
2020536337.tif 000008
【図７】
2020536337.tif 000009
【図８】
2020536337.tif 000010
【図９】
2020536337.tif 000011
【図１０】
2020536337.tif 000012
【図１１】
2020536337.tif 000013
【図１２】
2020536337.tif 000014
【図１３】
2020536337.tif 000015
【図１４】
2020536337.tif 000016
【図１５】
2020536337.tif 000017
【図１６】
2020536337.tif 000018
【図１７】
2020536337.tif 000019
【図１８】
2020536337.tif 000020
【手続補正書】
【提出日】令和2年4月3日(2020.4.3)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピューティング装置の一つ以上のプロセッサーにおいて実行される画像比較方法であって、
前記プロセッサーが事前に学習されたネットワーク関数を利用して相互関連性を持つ第１画像データ及び第２画像データを演算する段階と、
前記プロセッサーが前記第１画像データ及び前記第２画像データに基づき、前記第２画像データのアノマリー関連情報を決定する段階と、
前記プロセッサーが前記ネットワーク関数を利用して決定されたアノマリー関連情報を出力する段階と、を含む、
画像比較方法。
【請求項２】
請求項１において、
前記ネットワーク関数は、
前記第１画像データが入力される第１サブネットワークと、
前記第２画像データが入力される第２サブネットワークとを含む、
画像比較方法。
【請求項３】
請求項２において、
前記ネットワーク関数は、
前記第１サブネットワークと前記第２サブネットワークとのうち、少なくとも１つと直列（ｉｎ  ｓｅｒｉｅｓ）で繋がる比較モジュールをさらに含む、
画像比較方法。
【請求項４】
請求項３において、
前記第１サブネットワーク、前記第２サブネットワーク、前記比較モジュールのうち、少なくとも１つはディープニューラルネットワーク（Ｄｅｅｐ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ；ＤＮＮ）構造を含む、
画像比較方法。
【請求項５】
請求項４において、
前記第１サブネットワークと前記第２サブネットワークとのうち、少なくとも１つは、
前記ディープニューラルネットワーク構造のうち、畳み込みニューラルネットワーク（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ；ＣＮＮ）構造を含む、
画像比較方法。
【請求項６】
請求項４において、
前記比較モジュールは、
前記ディープニューラルネットワーク構造のうち、逆畳み込みニューラルネットワーク（Ｄｅｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）構造を含む、
画像比較方法。
【請求項７】
請求項４において、
前記比較モジュールは、
前記第１サブネットワークと前記第２サブネットワークとのうち、少なくとも１つのサブネットワークとＵ−ネットワーク（Ｕ−Ｎｅｔ）構造の少なくとも一部分を構成する、
画像比較方法。
【請求項８】
請求項３において、
前記第１サブネットワークと前記第２サブネットワークとは、
同じ重み（ｗｅｉｇｈｔ）を持つリンクを少なくとも一つ以上共有する、
画像比較方法。
【請求項９】
請求項８において、
前記第１サブネットワークと前記第２サブネットワークとは、
シャムネットワーク（Ｓｉａｍｅｓｅ  Ｎｅｔｗｏｒｋ）の少なくとも一部分を構成する、
画像比較方法。
【請求項１０】
請求項３において、
前記プロセッサーが前記アノマリー関連情報を決定する段階は、
前記プロセッサーが前記第１サブネットワークの少なくとも１つのレイヤー及び前記第２サブネットワークの少なくとも１つのレイヤーに基づき、少なくとも１つのレイヤー比較情報を生成する段階と、
前記プロセッサーが前記生成されたレイヤー比較情報に基づき、前記アノマリー関連情報を演算する段階とを含む、
画像比較方法。
【請求項１１】
請求項１０において、
前記プロセッサーが前記アノマリー関連情報を演算する段階は、
前記プロセッサーが前記生成されたレイヤー比較情報を前記比較モジュールの対応するレイヤーに提供する段階を含む、
画像比較方法。
【請求項１２】
請求項１１において、
前記対応するレイヤーは、
前記レイヤー比較情報を生成する際ベースとなった前記第１サブネットワークのレイヤー又は前記第２サブネットワークのレイヤーの位置によって決まる、
画像比較方法。
【請求項１３】
請求項１において、
前記第１画像データは、アノマリーデータを含まない正常な状態の画像データだけを含むマスター画像であり、
前記第２画像データは、スレーブ画像である、
画像比較方法。
【請求項１４】
請求項１３において、
前記アノマリー関連情報は、前記第２画像データの中でアノマリーが存在するピクセルの位置情報関連データを含む、
画像比較方法。
【請求項１５】
請求項１において、
前記第１画像データと第２画像データは大きさが同じである、
画像比較方法。
【請求項１６】
コンピューティング装置であって、
一つ以上のプロセッサーと、
前記一つ以上のプロセッサーにおいて実行可能な命令を保存するメモリーとを含み、
前記一つ以上のプロセッサーは、
事前に学習されたネットワーク関数を利用して相互関連性を持つ第１画像データ及び第２画像データを演算し、
前記第１画像データ及び前記第２画像データに基づき、前記第２画像データのアノマリー関連情報を決定し、さらに
前記ネットワーク関数を利用して決定されたアノマリー関連情報を出力する、
コンピューティング装置。  
【請求項１７】
エンコードされた命令を含むコンピューター可読保存媒体に保存されたコンピュータープログラムであって、前記コンピュータープログラムはコンピューターシステムの一つ以上のプロセッサーによって実行される場合、前記一つ以上のプロセッサーに画像比較のための動作を実行するようにさせ、前記動作は、
前記プロセッサーが事前に学習されたネットワーク関数を利用して相互関連性を持つ第１画像データ及び第２画像データを演算する動作と、
前記プロセッサーが前記第１画像データ及び前記第２画像データに基づき、前記第２画像データのアノマリー関連情報を決定する動作と、
前記プロセッサーが前記ネットワーク関数を利用して決定されたアノマリー関連情報を出力する動作と、
を含む、コンピューター可読保存媒体に保存されたコンピュータープログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００６
【補正方法】変更
【補正の内容】
【０００６】
前述のような課題を実現するための本開示の第１の実施例に基づき、コンピューティング装置における一つ以上のプロセッサーにおいて実行される画像比較方法が開示される。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
前述の画像比較方法は、前述のプロセッサーが事前に学習されたネットワーク関数を利用して相互関連性を持つ第１画像データ及び第２画像データを演算する段階と、前述のプロセッサーが前述の第１画像データ及び前述の第２画像データに基づき、前述の第２画像データのアノマリー関連情報を決定する段階と、前述のプロセッサーが前述のネットワーク関数を利用して決定されたアノマリー関連情報を出力する段階とを含む。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００１６
【補正方法】変更
【補正の内容】
【００１６】
画像比較方法の代替実施例において、前述のプロセッサーが前述のアノマリー情報を決定する段階は、前述のプロセッサーが前述の第１サブネットワークの少なくとも１つのレイヤー及び前述の第２サブネットワークの少なくとも１つのレイヤーに基づき、少なくとも１つのレイヤー比較情報を生成する段階と、前述のプロセッサーが前述の生成されたレイヤー比較情報に基づき、前述のアノマリー関連情報を演算する段階とを含むことができる。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００１７
【補正方法】変更
【補正の内容】
【００１７】
画像比較方法の代替実施例において、前述のプロセッサーが前述のアノマリー関連情報を演算する段階は、前述のプロセッサーが前述の生成されたレイヤー比較情報を前述の比較モジュールの対応するレイヤーに提供する段階を含むことができる。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００２１
【補正方法】変更
【補正の内容】
【００２１】
画像比較方法の代替実施例において、前述の第１画像データと第２画像データとは大きさが同じであることがあり得る。
前述のような課題を実現するための本開示の第１の実施例に基づき、コンピューティング装置が開示される。前述のコンピューティング装置は一つ以上のプロセッサーと、前述の一つ以上のプロセッサーにおいて実行可能な命令を保存するメモリーとを含み、前述の一つ以上のプロセッサーは、事前に学習されたネットワーク関数を利用して相互関連性を持つ第１画像データと第２画像データとを演算し、前述の第１画像データ及び前述の第２画像データに基づき、前述の第２画像データのアノマリー関連情報を決定し、さらに前述のネットワーク関数を利用して決定されたアノマリー関連情報を出力することができる。
前述のような課題を実現するための本開示の第１の実施例に基づき、エンコードされた命令を含むコンピューター可読保存媒体に保存されたコンピュータープログラムが開示される。前述のコンピュータープログラムはコンピューターシステムの一つ以上のプロセッサーによって実行される場合、前述の一つ以上のプロセッサーに画像比較のための動作を実行するようにさせ、前述の動作は、前述のプロセッサーが事前に学習されたネットワーク関数を利用して相互関連性を持つ第１画像データ及び第２画像データを演算する動作と、前述のプロセッサーが前述の第１画像データ及び前述の第２画像データに基づき、前述の第２画像データのアノマリー関連情報を決定する動作と、前述のプロセッサーが前述のネットワーク関数を利用して決定されたアノマリー関連情報を出力する動作とを含むことができる。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００３０
【補正方法】変更
【補正の内容】
【００３０】
プロセッサー（１１０）は、一つ以上のコアで構成されることができ、コンピューティング装置の中央処理装置（ＣＰＵ：ｃｅｎｔｒａｌ  ｐｒｏｃｅｓｓｉｎｇ  ｕｎｉｔ）、汎用グラフィック処理装置（ＧＰＧＰＵ：ｇｅｎｅｒａｌ  ｐｕｒｐｏｓｅ  ｇｒａｐｈｉｃｓ  ｐｒｏｃｅｓｓｉｎｇ  ｕｎｉｔ）、テンサー処理装置（ＴＰＵ：ｔｅｎｓｏｒ  ｐｒｏｃｅｓｓｉｎｇ  ｕｎｉｔ）等のデータ分析、ディープラーニングのためのプロセッサーを含むことができる。プロセッサー（１１０）は、メモリー（１３０）に保存されたコンピュータープログラムを読み取り、本開示の第１の実施例に基づく画像比較方法を遂行することができる。本開示の第１の実施例に基づき、プロセッサー（１１０）は、神経網の学習のための計算を遂行することができる。プロセッサー（１１０）は、ディープラーニング（ＤＬ：ｄｅｅｐ  ｌｅａｒｎｉｎｇ）において学習のための入力データの処理、入力データにおける特徴（ｆｅａｔｕｒｅ）抽出、誤差計算、逆伝播（ｂａｃｋｐｒｏｐａｇａｔｉｏｎ）を利用した神経網の重み更新等の神経網の学習のための計算を遂行することができる。プロセッサー（１１０）のＣＰＵ、ＧＰＧＰＵ、ＴＰＵのうち、少なくとも一つがネットワーク関数の学習を処理することができる。例えば、ＣＰＵとＧＰＧＰＵとが共にネットワーク関数の学習、ネットワーク関数を利用したデータ分類を処理することができる。また、本開示の第１の実施例において複数のコンピューティング装置のプロセッサーを一緒に使ってネットワーク関数の学習、ネットワーク関数を利用したデータ分類を処理することができる。また、本開示の第１の実施例に基づくコンピューティング装置で実行されるコンピュータープログラムは、ＣＰＵ、ＧＰＧＰＵ又はＴＰＵで実行可能なプログラムになり得る。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００４４
【補正方法】変更
【補正の内容】
【００４４】
図３に示す畳み込みニューラルネットワーク（ＣＮＮ：ｃｏｎｖｏｌｕｔｉｏｎａｌ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ）は、ディープニューラルネットワークの一種であり、畳み込みレイヤーを含む神経網を含む。畳み込みニューラルネットワークは、最低限の前処理（ｐｒｅｐｒｏｃｅｓｓ）を使うように設計された多層パーセプトロン（ｍｕｌｔｉｌａｙｅｒ  ｐｅｒｃｅｐｔｒｏｎｓ）の一種である。ＣＮＮは一つ又は複数の畳み込みレイヤーと、これと結合した人工神経網階層により構成されることができ、さらに重みとプーリングレイヤー（ｐｏｏｌｉｎｇ  ｌａｙｅｒ）を追加して活用することができる。こうした構造のおかげでＣＮＮは、２次元構造の入力データを十分に活用することができる。畳み込みニューラルネットワークは、画像からオブジェクトを認識するために使われることができる。畳み込みニューラルネットワークは、画像データを次元を持つ行列で表し処理することができる。例えばＲＧＢ（ｒｅｄ−ｇｒｅｅｎ−ｂｌｕｅ）でエンコードされた画像データの場合、Ｒ、Ｇ、Ｂの色相別にそれぞれ２次元（例えば、２次元画像である場合）行列で表すことができる。つまり、画像データの各ピクセルの色相値が行列の成分になり得るが、行列の大きさは画像の大きさと同じ大きさになり得る。従って画像データは、３つの２次元行列で（３次元のデータアレー）表すことができる。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００５１
【補正方法】変更
【補正の内容】
【００５１】
シャムネットワーク（２００）（Ｓｉａｍｅｓｅ  Ｎｅｔｗｏｒｋ）は、カテゴリ別学習データ（ｔｒａｉｎｉｎｇ  ｄａｔａ）が十分ではない認識器に使用できるニューラルネットワークである。シャムネットワークは、データにおける類似性測定を学習することができる。シャムネットワークは、図４に示すように少なくとも部分的に重みを共有する２つ以上のニューラルネットワーク（２１０、２３０）（サブネットワーク）とニューラルネットワークからの出力が入力される比較モジュール（２５０）とを含むことができる。シャムネットワーク（２００）には少なくとも２つの画像が入力されることができる。シャムネットワーク（２００）は、入力される２つの画像の類似度を判断した結果を出力することができる。画像処理のためにシャムネットワークは、画像の入力を受ける２つの畳み込みニューラルネットワークを含むことができる。シャムネットワークにおいて、画像の入力を受ける２つの畳み込みニューラルネットワークは、重みの少なくとも一部を共有することが可能である。シャムネットワークに含まれたサブネットワークは、重み共有モジュール（２２０）によって重みを共有でき、サブネットワークが重みを共有することにより、シャムネットワークは入力された２つのデータに対して共通の重みで特徴を抽出し比較することができる。
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】００５６
【補正方法】変更
【補正の内容】
【００５６】
ニューラルネットワークの学習において、一般的に学習データは実データ（つまり、学習されたニューラルネットワークを利用して処理しようとするデータ）の部分集合になり得るが、従って、学習データに対する誤差は減少するものの実データに対しては誤差が増加する学習サイクルが存在し得る。過剰適合（ｏｖｅｒ  ｆｉｔｔｉｎｇ）は、このように学習データにおいて、過剰に学習したことにより実データに対する誤差が増加する現象である。例えば、黄色い猫を見て猫について学習したニューラルネットワークが黄色以外の色の猫を見たときは猫であることを認識できない現象が過剰適合の一種になり得る。過剰適合はマシンラーニングアルゴリズムの誤差を増加させる原因として作用することがある。こうした過剰適合を防ぐために多様な最適化方法が使われることができる。過剰適合を防ぐためには学習データを増やしたり、正則化（ｒｅｇｕｌａｒｉｚａｔｉｏｎ）、学習の過程においてネットワークのノードの一部を省略するドロップアウト（ｄｒｏｐ  ｏｕｔ）等の方法が適用されることができる。
【国際調査報告】
2020536337.tif 000021
2020536337.tif 000022
2020536337.tif 000023
2020536337.tif 000024