TOP > 国内特許検索 > 特徴量変換モジュール、パターン識別装置、パターン識別方法、およびプログラム > 明細書

明細書 :特徴量変換モジュール、パターン識別装置、パターン識別方法、およびプログラム

発行国 日本国特許庁(JP)
公報種別 再公表特許(A1)
発行日 平成30年12月27日(2018.12.27)
発明の名称または考案の名称 特徴量変換モジュール、パターン識別装置、パターン識別方法、およびプログラム
国際特許分類 G06T   7/00        (2017.01)
G06G   7/60        (2006.01)
G03H   1/22        (2006.01)
G03H   1/04        (2006.01)
FI G06T 7/00 300M
G06T 7/00 350C
G06G 7/60
G03H 1/22
G03H 1/04
国際予備審査の請求 未請求
全頁数 37
出願番号 特願2018-500181 (P2018-500181)
国際出願番号 PCT/JP2017/005600
国際公開番号 WO2017/141997
国際出願日 平成29年2月15日(2017.2.15)
国際公開日 平成29年8月24日(2017.8.24)
優先権出願番号 2016025892
優先日 平成28年2月15日(2016.2.15)
優先権主張国 日本国(JP)
指定国 AP(BW , GH , GM , KE , LR , LS , MW , MZ , NA , RW , SD , SL , ST , SZ , TZ , UG , ZM , ZW) , EA(AM , AZ , BY , KG , KZ , RU , TJ , TM) , EP(AL , AT , BE , BG , CH , CY , CZ , DE , DK , EE , ES , FI , FR , GB , GR , HR , HU , IE , IS , IT , LT , LU , LV , MC , MK , MT , NL , NO , PL , PT , RO , RS , SE , SI , SK , SM , TR) , OA(BF , BJ , CF , CG , CI , CM , GA , GN , GQ , GW , KM , ML , MR , NE , SN , TD , TG) , AE , AG , AL , AM , AO , AT , AU , AZ , BA , BB , BG , BH , BN , BR , BW , BY , BZ , CA , CH , CL , CN , CO , CR , CU , CZ , DE , DJ , DK , DM , DO , DZ , EC , EE , EG , ES , FI , GB , GD , GE , GH , GM , GT , HN , HR , HU , ID , IL , IN , IR , IS , JP , KE , KG , KH , KN , KP , KR , KW , KZ , LA , LC , LK , LR , LS , LU , LY , MA , MD , ME , MG , MK , MN , MW , MX , MY , MZ , NA , NG , NI , NO , NZ , OM , PA , PE , PG , PH , PL , PT , QA , RO , RS , RU , RW , SA , SC , SD , SE , SG , SK , SL , SM , ST , SV , SY , TH , TJ , TM , TN , TR , TT , TZ
発明者または考案者 【氏名】渡邉 恵理子
【氏名】藤吉 弘亘
【氏名】谷口 泰史
【氏名】池田 佳奈美
【氏名】脇田 英
【氏名】鈴木 秀典
出願人 【識別番号】504133110
【氏名又は名称】国立大学法人電気通信大学
個別代理人の代理人 【識別番号】100106909、【弁理士】、【氏名又は名称】棚井 澄雄
【識別番号】100175824、【弁理士】、【氏名又は名称】小林 淳一
【識別番号】100169764、【弁理士】、【氏名又は名称】清水 雄一郎
審査請求 未請求
テーマコード 2K008
5L096
Fターム 2K008AA02
2K008BB00
2K008CC00
2K008HH01
2K008HH06
2K008HH13
2K008HH14
2K008HH17
2K008HH18
2K008HH26
2K008HH28
5L096EA39
5L096FA34
5L096GA51
5L096HA11
5L096JA03
5L096JA11
5L096KA04
5L096KA15
5L096MA07
要約 本発明を適用した特徴量変換モジュール(特徴量変換手段)(500)は、学習データ入力部(510)と、光演算制約条件を満たす第二の次元数を有する重みとバイアスとを因子にもつ式からなる関数より構成された学習モデルに、前記学習データ入力部に入力された学習データを入力し、前記第二の次元数を有する中間層を設定する中間層設定部(520)と、出力算出部(530)と、誤差算出部(540)と、判定部(550)と、重みバイアス変更部(560)と、学習モデル出力部(570)と、制御部(580)と、を備えている。
特許請求の範囲 【請求項1】
ニューラルネットワークにおける学習によって学習データの特徴量を変換する特徴量変換モジュールであって、
任意の第一の次元数および任意の特徴量を有する学習データが入力される学習データ入力部と、
所定の光演算制約条件を満たす第二の次元数を有する重みとバイアスとを因子にもつ式からなる関数より構成された学習モデルに、前記学習データ入力部に入力された前記学習データを入力し、前記第二の次元数を有する中間層を設定する中間層設定部と、
前記中間層設定部で設定された前記中間層から前記第一の次元数を有する出力層を計算し、前記ニューラルネットワークの出力を算出する出力算出部と、
前記出力算出部によって算出された前記ニューラルネットワークの出力と前記学習データとの誤差を算出する誤差算出部と、
前記誤差算出部によって算出された前記誤差が所定の条件を満たすか否かを判定する判定部と、
前記誤差に基づいて前記重みと前記バイアスとをそれぞれ変更し、変更後の前記重みと前記バイアスとを得る重みバイアス変更部と、
前記変更後の前記重みと前記バイアスとを因子にもつ式からなる関数によって構成された学習モデルを出力する学習モデル出力部と、
前記判定部において前記誤差が所定の条件を満たすと判定された場合には、前記出力部から前記変更後の前記重みと前記バイアスとを因子にもつ式からなる関数によって構成された学習モデルを出力させ、前記判定部において前記誤差が所定の条件を満たさないと判定された場合には、前記出力算出部において前記学習モデルの前記式に含まれる前記重みと前記バイアスを前記重みバイアス変更部で得られた前記変更後の前記重みと前記バイアスにそれぞれ変更し、前記ニューラルネットワークの出力を算出させる制御部と、
を備え、
前記光演算制約条件は、前記ニューラルネットワークの出力を用いて行う光演算における所定の量子化数、前記光演算に用いられる光相関器の光学パラメータ、および所定のエネルギー数によって決まることを特徴とする特徴量変換モジュール。
【請求項2】
前記光相関器は、前記ニューラルネットワークの出力に基づく光演算用データを表示する表示素子と、前記演算用データが反映された光を集光するレンズと、を備え、
前記光学パラメータには、前記表示素子のピクセルピッチおよび前記レンズの半径が含まれることを特徴とする請求項1に記載の特徴量変換モジュール。
【請求項3】
前記光相関器は、前記表示素子に表示された前記光演算用データが反映された光のビーム径を縮小し、該ビーム径が縮小された光を前記レンズに向けて出射する縮小光学系をさらに備え、
前記光学パラメータには、前記縮小光学系の縮小倍率が含まれることを特徴とする請求項2に記載の特徴量変換モジュール。
【請求項4】
前記第二の次元数は、以下の(1)式を満たすことを特徴とする前記請求項3に記載の特徴量変換モジュール。
【数1】
JP2017141997A1_000015t.gif
なお、上述の(1)式において、zは前記第二の次元数、aは前記表示素子のピクセルピッチ[mm]、rは前記レンズの半径[mm]、bは前記縮小光学系の縮小倍率を示す。
【請求項5】
請求項1から請求項4のいずれかに記載の特徴量変換モジュールと、
クラスラベルの付加された学習用データを入カとし、光演算用制約条件を備えた前記学習用データの識別精度を最大化するような特徴抽出器を学習する学習手段と、
前記特徴抽出器より抽出された特徴量を特徴抽出器に変換する光演算用データ変換部と、
光演算用データを記憶する光記憶部と、複数の光演算用データ聞における類似度を算出することによって光相関機能を提供する類似度計算部による光演算手段と、
識別対象データの辞書となる登録用データを入力とし、前記学習手段により得られた特徴抽出器を用いて抽出した特徴量を、前記光演算用データ変換部において光演算用に光演算用特徴量として変換し、前記光演算手段における光記憶部に登録する登録手段と、
識別対象データを入力とし、前記学習手段で生成された特徴抽出器より抽出した特徴量と前記登録手段において光記憶部に登録した特徴量聞の類似度を前記光演算手段における類似度計算部において算出し、出力部より識別結果を出力する識別手段と、
を備えることを特徴とするパターン識別装置。
【請求項6】
クラスラベルの付加された学習用データを入カとし、光演算用制約条件を備えた前記学習用データの識別精度を最大化するような特徴抽出器を学習する学習手段と、
前記特徴抽出器より抽出された特徴量を特徴抽出器に変換する光演算用データ変換部と光演算用データを記憶する光記憶部と、複数の光演算用データ聞における類似度を算出することによって光相関機能を提供する類似度計算部による光演算手段と、
識別対象データの辞書となる登録用データを入力とし、前記学習手段により得られた特徴抽出器を用いて抽出した特徴量を、前記光演算用データ変換部において光演算用に光演算用特徴量として変換し、前記光演算手段における光記憶部に登録する登録手段と、
識別対象データを入力とし、前記学習手段で生成された特徴抽出器より抽出した特徴量と前記登録手段において光記憶部に登録した特徴量聞の類似度を前記光演算手段における類似度計算部において算出し、出力部より識別結果を出力する識別手段と、
を備えることを特徴とするパターン識別装置。
【請求項7】
前記学習手段において、特徴抽出器の生成における学習の過程において、学習後に生成される特徴抽出器による出力がバイナリ近似された特徴量となるように、前記特徴抽出器生成部における活性化関数にステップ関数、もしくはシグモイド関数で近似したステップ関数のような特徴量の各次元の値を0から1の値の範囲に分布させる関数を適用することを特徴とする請求項5または請求項6に記載のパターン識別装置。
【請求項8】
前記学習手段において、特徴抽出器の生成における学習の過程において、学習後に生成される特徴抽出器による出力がバイナリ近似された特徴量となりかっ、特徴量のもつ表現力がフロート値のような多値である場合と比較しでも劣らない特徴量となるように、前記特徴抽出器生成部の学習により更新が行われるパラメータ部分の数を、多値の特徴量を抽出する特徴抽出器を生成する場合と比較し、大きな数とすることを特徴とする請求項5から請求項7のいずれか1項に記載のパターン識別装置。
【請求項9】
前記学習手段における特徴抽出器生成部の学習の結果得られた特徴抽出器から得られる0から1の範囲に各次元の特徴量が分布するバイナリ近似された特徴量を、前記光演算用データ変換部において特定の闇値でバイナリ化することを特徴とする請求項5から請求項8のいずれか1項に記載のパターン識別装置。
【請求項10】
前記学習手段における特徴抽出器生成部の光演算制約付加部において、前記学習手段より得られた特徴量抽出器に対して、入力データを与え抽出した特徴量を線形識別器による最適化をおこなった重みベクトルをバイナリ化する手法を備えたことを特徴とする請求項5または請求項6に記載のパターン識別装置。
【請求項11】
前記学習手段における特徴抽出器生成部の光演算制約付加部において、前記学習手段より得られた特徴量抽出器に対して、入力データを与え抽出した特徴量を、複数閥値において、それぞれの闇値と各次元の特徴量値の大小関係を利用してバイナリ化する手法を備えることを特徴とする請求項10に記載のパターン識別装置。
【請求項12】
前記光記憶部はホログラフィック記録媒体であることを特徴とする請求項5から請求項11のいずれか1項に記載のパターン識別装置。
【請求項13】
前記光記憶部におけるホログラブイツク記録媒体は円盤状に形成され、前記ホログラフィック記録媒体を回転させつつ、前記識別対象データ照射することを特徴とする請求項5から請求項12のいずれか1項に記載のパターン識別装置。
【請求項14】
前記光演算手段において、光演算用データ変換部の特徴抽出を、光演算で行うことを特徴とする請求項5から請求項13のいずれか1項に記載のパターン識別装置。
【請求項15】
入力されたデータを何らかのクラスに識別するパターン識別装置のパターン識別方法において、前記パターン識別装置によるクラスラベルの付加された学習用データを入力とし、光演算用制約条件を備えた前記学習用データの識別精度を最大化するような特徴抽出器を学習する学習ステップと、
前記特徴抽出器より抽出された特徴量を特徴抽出器に変換する光演算用データ変換部と光演算用データを記憶する光記憶部と、複数の光演算用データ聞における類似度を算出することによって光相関機能を提供する類似度計算部による光演算ステップと、識別対象データの辞書となる登録用データを入力とし、前記学習ステップにより得られた特徴抽出器を用いて抽出した特徴量を、前記光演算用データ変換部において光演算用に光演算用特徴量として変換し、前記光演算ステップにおける光記憶部に登録する登録ステップと、
識別対象データを入力とし、前記学習ステップで生成された特徴抽出器より抽出した特徴量と前記登録ステップにおいて光記憶部に登録した特徴量問の類似度を前記光演算ステップにおける類似度計算部において算出し、出力部より認識結果を出力する識別ステップと、
を含むパターン識別方法。
【請求項16】
コンピュータを、クラスラベルの付加された学習用データを入力とし、光演算用制約条件を備えた前記学習用データの識別精度を最大化するような特徴抽出器を学習する学習ステップと、
前記特徴抽出器より抽出された特徴量を特徴抽出器に変換する光演算用データ変換部と光演算用データを記憶する光記憶部と、複数の光演算用データ聞における類似度を算出することによって光相関機能を提供する類似度計算部による光演算ステップと、
識別対象データの辞書となる登録用データを入力とし、前記学習ステップにより得られた特徴抽出器を用いて抽出した特徴量を、前記光演算用データ変換部において光演算用に光演算用特徴量として変換し、前記光演算ステップにおける光記憶部に登録する登録ステップと、
識別対象データを入力とし、前記学習ステップで生成された特徴抽出器より抽出した特徴量と前記登録ステップにおいて光記憶部に登録した特徴量聞の類似度を前記光演算ステップにおける類似度計算部において算出し、出カ部より識別結果を出力する識別ステップとして機能させるプログラム。
発明の詳細な説明 【技術分野】
【0001】
本発明は、任意の多次元ベクトルの特徴量変換モジュール、前述の多次元ベクトルに関するパターン識別学習装置、パターン識別装置、光演算用データ生成装置、光記憶装置、パターン識別学習処理方法とパターン識別処理方法、光演算用データ生成方法およびパターン識別学習プログラム、並びにそれらを記録した記憶装置に関するものである。本願は、2016年2月15日に、日本に出願された特願2016-025892号に基づき優先権を主張し、その内容をここに援用する。
【背景技術】
【0002】
近年、大規模データ群から新たな知見・知識を得ることを目的とした研究開発が注目されている。コンビュータービジョンにおける機械学習では、学習器の構築によって二次元画像からの物体認識・照合・検出を実現する。物体認識・照合・検出における精度を高めるためには、学習用の良質かつ膨大なデータ群および学習のための高速演算処理技術が必要とされ、汎用プロセッサの動作周波数の向上が求められる。しかしながら、半導体製造プロセスの微細化に伴う回路の発熱などの問題があるため、汎用プロセッサの動作周波数のさらなる向上は困難になっている。そこで、プロセッサコアや演算器を並列化して学習器の性能向上を図る技術や、得意な部分を専用プロセッサで担わせるなど、既存の技術と新たなコンピューティング技術とを効率的に組み合わせた融合システムに関する研究開発が行われている。
【0003】
例えば、多次元ベクトルの内積演算を高速に実現する処理として、光演算処理が挙げられる(非特許文献1参照)。光演算処理は汎用性に乏しいが、特定のアルゴリズムにおいては、アナログ特性による並列高速演算と、情報の大容量記憶に秀でている。例えば特許文献1や非特許文献1には、前述のように並列高速演算と情報の大容量記憶との両立を実現可能なホログラフィック光ディスクを用いた光相関システムが開示されている。
【先行技術文献】
【0004】

【特許文献1】日本国特開2008-282374号公報
【0005】

【非特許文献1】K. Ikeda and E. Watanabe, “High-speed optical correlator with coaxial holographic system" Jpn. J. Appl. Phys. 54,09ME02 (2015).
【発明の概要】
【発明が解決しようとする課題】
【0006】
上述したように、大量の映像や画像などの多次元ベクトルのパターン識別を高速かつ高精度かつ省エネルギーで実現するためには、多次元ベクトル同士の内積演算の高速化、および多次元ベクトル同士の内積演算結果を保存しておく記憶装置の効率化が求められる。特許文献1や非特許文献1に開示されている光演算処理に基づくパターン識別では、多次元ベクトル同士の内積演算が高速に行われるが、これらの光演算処理に基づくパターン識別の適用範囲は特定の画像照合に限られており、汎用的な物体認識・照合・検出への適用が難しいという問題があった。また、汎用的な物体認識・照合・検出への適用を可能にすると共に、任意の学習データから光演算処理に適した学習モデルを円滑に作成可能なモジュールが望まれていた。
【0007】
上記事情に鑑み、本発明では、任意の学習データから光演算処理に適した学習モデルを円滑に作成し、光演算処理を用いて、超大規模データからの特定の画像照合に限定されず、任意の多次元パターンに関する識別を超高速に実現することを目的とする。
【課題を解決するための手段】
【0008】
本発明は、上記課題を解決するため、以下の手段を採用する。
【0009】
本発明に係る特徴量変換モジュールは、ニューラルネットワークにおける学習によって学習データの特徴量を変換する特徴量変換モジュールであって、任意の第一の次元数および任意の特徴量を有する学習データが入力される学習データ入力部と、所定の光演算制約条件を満たす第二の次元数を有する重みとバイアスとを因子にもつ式からなる関数より構成された学習モデルに、前記学習データ入力部に入力された前記学習データを入力し、前記第二の次元数を有する中間層を設定する中間層設定部と、前記中間層設定部で設定された前記中間層から前記第一の次元数を有する出力層を計算し、前記ニューラルネットワークの出力を算出する出力算出部と、前記出力算出部によって算出された前記ニューラルネットワークの出力と前記学習データとの誤差を算出する誤差算出部と、前記誤差算出部によって算出された前記誤差が所定の条件を満たすか否かを判定する判定部と、前記誤差に基づいて前記重みと前記バイアスとをそれぞれ変更し、変更後の前記重みと前記バイアスとを得る重みバイアス変更部と、前記変更後の前記重みと前記バイアスとを因子にもつ式からなる関数によって構成された学習モデルを出力する学習モデル出力部と、前記判定部において前記誤差が所定の条件を満たすと判定された場合には、前記出力部から前記変更後の前記重みと前記バイアスとを因子にもつ式からなる関数によって構成された学習モデルを出力させ、前記判定部において前記誤差が所定の条件を満たさないと判定された場合には、前記出力算出部において前記学習モデルの前記式に含まれる前記重みと前記バイアスを前記重みバイアス変更部で得られた前記変更後の前記重みと前記バイアスにそれぞれ変更し、前記ニューラルネットワークの出力を算出させる制御部と、を備え、前記光演算制約条件は、前記ニューラルネットワークの出力を用いて行う光演算における所定の量子化数、前記光演算に用いられる光相関器の光学パラメータ、および所定のエネルギー数によって決まることを特徴とする。
本明細書では、出力算出部により得られたニューラルネットワークの出力に対して学習データとの誤差を算出し、誤差が所定の条件を満たすようになるまで重み・バイアス変更部によって学習モデルを更新する行程を学習と呼ぶ。
【0010】
本発明に係るパターン識別装置は、上述の特徴量変換モジュールと、クラスラベルの付加された学習用データを入カとし、光演算用制約条件を備えた前記学習用データの識別精度を最大化するような特徴抽出器を学習する学習手段と、前記特徴抽出器より抽出された特徴量を特徴抽出器に変換する光演算用データ変換部と、光演算用データを記憶する光記憶部と、複数の光演算用データ聞における類似度を算出することによって光相関機能を提供する類似度計算部による光演算手段と、識別対象データの辞書となる登録用データを入力とし、前記学習手段により得られた特徴抽出器を用いて抽出した特徴量を、前記光演算用データ変換部において光演算用に光演算用特徴量として変換し、前記光演算手段における光記憶部に登録する登録手段と、識別対象データを入力とし、前記学習手段で生成された特徴抽出器より抽出した特徴量と前記登録手段において光記憶部に登録した特徴量聞の類似度を前記光演算手段における類似度計算部において算出し、出力部より識別結果を出力する識別手段と、を備えることを特徴とする。
【0011】
本発明に係るパターン識別装置は、クラスラベルの付加された学習用データを入カとし、光演算用制約条件を備えた前記学習用データの識別精度を最大化するような特徴抽出器を学習する学習手段と、前記特徴抽出器より抽出された特徴量を特徴抽出器に変換する光演算用データ変換部と、光演算用データを記憶する光記憶部と、複数の光演算用データ聞における類似度を算出することによって光相闘機能を提供する類似度計算部による光演算手段と、識別対象データの辞書となる登録用データを入力とし、前記学習手段により得られた特徴抽出器を用いて抽出した特徴量を、前記光演算用データ変換部において光演算用に光演算用特徴量として変換し、前記光演算手段における光記憶部に登録する登録手段と、識別対象データを入力とし、前記学習手段で生成された特徴抽出器より抽出した特徴量と前記登録手段において光記憶部に登録した特徴量聞の類似度を前記光演算手段における類似度計算部において算出し、出力部より識別結果を出力する識別手段と、を備えることを特徴とする。
【発明の効果】
【0012】
本発明によれば、超大規模データを学習データとして該学習データから光演算処理に適した学習モデルを円滑に作成し、超大規模データからの任意の多次元パターンに関する識別を超高速に実現することができる。また、識別の高速性および省エネルギー化により、光演算の効率を高めることができる。
【図面の簡単な説明】
【0013】
【図1】本発明に係るパターン識別装置の構成例を示すブロック図である。
【図2】本発明に係るパターン識別方法の学習処理、登録処理、識別処理のそれぞれの処理のフローチャートである。
【図3】本発明の実施例1に係る学習手段100の実装例である。
【図4】図3に示す学習済み学習手段のフィードフォワード処理により得られた特徴量の値分布である。
【図5】図3に示す学習済み学習手段のフィードフォワード処理により得られた特徴量を用いた識別精度を示す図である。
【図6】図1の光演算処理によるk近傍識別器をスケッチベース3次元照合に適用した場合の、本発明の実施例1における光演算による類似度計算結果を示す図である。
【図7】図1の光演算処理によるk近傍識別器をスケッチベース3次元照合に適用した場合の、本発明の実施例1における光演算による多クラス識別結果を示す図である。
【図8】図1の光演算処理によるk近傍識別器をスケッチベース3次元照合に適用した場合の、本発明の実施例1における光相関演算によるk近傍法による識別結果を示す図である。
【図9】図1に示す光演算手段300におけるフローチャートである。
【図10】図1に示す光演算用データ変換部310における変換の一例を示す模式図である。
【図11】図1に示す光演算用特徴ベクトル光記録部320と類似度計算330に用いる光学手段の一例を示す概略図である。
【図12】本発明の実施例2に係る光演算処理による線形識別器のフローチャートである。
【図13】本発明の実施例2に係る特徴抽出学習部121の実装例を示す図である。
【図14】本発明の実施例2に係る光演算用データ変換部122の実装例を示す図である。
【図15】本発明の実施例2に係る光演算用データ変換部310の実装例を示す図である。
【図16】本発明の実施例2に係る線形識別器においてB-HOG特徴量を使ったときの識別関数の出力結果である。
【図17】本発明に係る特徴量変換モジュールおよび該特徴量変換モジュールを備えたパターン識別装置の構成例を示すブロック図である。
【図18】本発明に係るパターン識別方法の学習処理、特徴量変換処理、登録処理、識別処理のそれぞれの処理のフローチャートである。
【図19】本発明の実施例3におけるネットワーク構造の一例を示す図である。
【図20】本発明の実施例3における光演算用特徴変換部から出力される光演算用データの値分布を示す図である。
【図21】本発明の実施例3における識別精度を示す図である。
【図22】本発明の実施例3に係る内積演算結果例を示すグラフである。
【図23】本発明の実施例3に係る光相関器の構成の一例を示すグラフである。
【発明を実施するための形態】
【0014】
以下本発明の実施形態および実施例を、図面を参照して説明するが、本発明は下記の例に限定されるものではない。

【0015】
図1は、本発明のパターン識別装置を示すブロック図である。
図2は、パターン認識の流れを概略的に示すフローチャートである。

【0016】
本発明に係るパターン識別装置1は、学習処理を行う学習手段100、光記憶部に特徴抽出部、光演算用データ生成部を介してデータ登録処理を行う登録手段200、光演算用データ変換部310、光演算用特徴ベクトル光記憶部320を保持し、類似度計算330を行う光演算手段300、および識別対象データから特徴量を抽出する特徴抽出部220、光演算用データ変換部310を介して類似度計算330を行う識別処理を行う識別手段400から構成されている。

【0017】
学習手段100では、予め用意されたクラスラベルの付加された学習データが学習データ入力部110から入力され、特徴抽出器生成部120に伝送され、特徴抽出部121と光演算用制約付加部122を介し、学習用データの識別精度を最大化するように学習される。特徴抽出器生成部120により生成された特徴抽出部121は、登録手段200、識別手段400、光演算手段300に組み込まれる。

【0018】
登録手段200では、識別対象データの辞書となる登録用データが入力部210から入力される。また、登録手段200では、学習手段100により得られた特徴抽出器を用いて抽出した特徴量は光演算用に光演算用特徴量として変換され、光演算手段300において光演算用特徴ベクトル光記憶部320に登録される。

【0019】
光演算手段300は、光演算用データ変換部310と光演算用データを記憶する光記憶部320と、複数の光演算対応データ間における類似度を算出する類似度計算部330により構成され、光相関演算による類似度計算結果を出力する機能を有する。

【0020】
光演算用データ変換部310では、電子データを光データに変換する処理が行われる。光演算用データに変換する際、データは空間光変調デバイスに表示され、レーザ光などを照射することによりデータの電子・光変換を行われる。そのため空間光変調器のデバイス仕様に依存するデータ変換が行われる。空間光変調器としては、液晶空間光変調器やデジタルマイクロミラーデバイスなどが用いられる。高速応答に対応する空間光変調器は2値であることが多いため、バイナリ変換が行われる。

【0021】
識別手段400では、識別対象データ入力部410において、識別対象データが入力され、学習手段100で生成した特徴抽出部220により特徴量が抽出され、抽出された特徴量が光演算用データ変換部310に伝送される。登録手段200において、光記憶部320に登録した特徴量間の類似度は光演算手段300における類似度計算部330において算出される。その後、出力部420により識別結果が出力される。
【実施例1】
【0022】
光演算処理によるk近傍識別法の一実施例に図1のブロック図をもとに説明する。
【実施例1】
【0023】
実施例における光演算処理によるk近傍識別法は、学習手段100、登録手段200、光演算手段300、識別手段400により構成されている。
【実施例1】
【0024】
学習手段100は、登録手段200及び識別手段400において用いる特徴抽出部を生成するための手段である。
【実施例1】
【0025】
具体的には、学習手段100は、学習データ入力部110、学習データ入力部110より取得したデータから特徴量を抽出する特徴抽出器生成部120、特徴抽出器生成部120より得られた特徴量をもとに識別判定を行う識別部130、識別部130による識別結果を評価する学習系評価部140、特徴抽出器生成部120において光相関用に適用可能な特徴量にデータを変換する光演算制約付加部122と学習の進行状態を評価するための検証用データを入力するための検証データ入力部(図示略)から構成されている。
【実施例1】
【0026】
学習手段100における学習用データ入力部110では、学習用データと識別において教師となる情報がセットとして入力される。
【実施例1】
【0027】
学習手段100における特徴量抽出部120は、複数の特徴量抽出層からなる。各々の特徴量抽出層では、それぞれ学習用データに対する畳み込み、次元削減、全結合の処理が行われる。
【実施例1】
【0028】
学習手段100における識別部130では、得られる特徴量次元が識別対象クラス分の次元となる全結合層となることが好ましい。
【実施例1】
【0029】
学習手段100における学習系評価部140では、識別部130において得られた識別結果の出力と教師となる情報との正誤の判定が行われる。もし、識別結果が誤っていた場合は、正解との誤差を求める。
【実施例1】
【0030】
学習手段100における特徴抽出部121では、学習系評価部140において求めた誤差を最小化するように特徴抽出部における重みの更新を行う。
【実施例1】
【0031】
ここで、光演算手段300における光演算で扱うデータは、バイナリデータとする。多値データから抽出した特徴量は多値であり、この特徴量をバイナリ化する変換においては、一般に、情報量が損なわれることが知られている。この情報量の欠損は、光演算による識別性能に影響を及ぼす可能性が高い。したがって、学習手段100における特徴抽出部121および光演算用制約付加部122では、あらかじめ最終的に特徴抽出部121から出力できる特徴量がバイナリデータ変換処理を施されても、限りなく情報量を維持できるような学習を行うように設計する。
【実施例1】
【0032】
具体的には、特徴抽出部121で得られる各特徴量抽出層の少なくとも最終層の1つ入力側に近い層、もしくはそれより入力側に近い複数の層における活性化関数をシグモイド関数で近似したステップ関数とすることで、最終的に特徴量抽出器生成部120から出力される特徴量の各次元の値は限りなく0もしくは1に近い値、つまりバイナリ近似特徴量となるように学習をすすめることができる。
【実施例1】
【0033】
ここで、バイナリ近似特徴量となるように学習をすすめる手法について詳細に説明する。
【実施例1】
【0034】
図3は、図1の光演算処理における学習手段100の実装例である。
【実施例1】
【0035】
学習手段100における特徴抽出部121及び光演算用制約付加部122の実装は、畳込み層を、maxプーリングをはさんで3層重ねた後、全結合層を4層重ねて最終出力層をクラス数と同じ10ユニットとした。
【実施例1】
【0036】
実装の特徴的な点は、最終出力層fc(n) の1つ手前の層fc(n-l)で活性化関数にstep関数を用いて、さらにそのユニット数を20,000とし、fc(n-2)層よりも圧倒的に多くしている点である。
【実施例1】
【0037】
前記学習器実装における特徴は、光相関用のバイナリデータに落としこむことを目的として、活性化関数をステップ関数とした。活性化関数としてデータを限りなくバイナリ化するステップ関数では、多値データを'恒等的に反映するRelu (Rectified linear unit)関数に比べて表現力が落ちることを懸念し、前記懸念事項を補う目的でfc(n-1)層におけるユニット数をfc(n-2)よりも増やした。
【実施例1】
【0038】
前述の実装における活性化関数にステップ関数を適用した点の詳細について説明する。前記ステップ関数は、シグモイド関数におけるネイピア数の指数kを実数倍することで近似的にステップ関数に近づけることで代替した。本実験では、学習の収束具合の観測よりk=100とした(次に示す式(2)参照)。
【実施例1】
【0039】
【数1】
JP2017141997A1_000003t.gif
【実施例1】
【0040】
一方で、以上のフィードフォワードにおける活性化関数で用いた近似ステップ関数の微分は式(3)で表せる。
【実施例1】
【0041】
【数2】
JP2017141997A1_000004t.gif
【実施例1】
【0042】
つまり、誤差逆伝播における重みの更新式は、式(4)となり、実数倍部分が更新重みに直接関与するため、学習による重みベクトルの移動が極端に大きくなってしまい、学習が進まないことを確認した。
【実施例1】
【0043】
【数3】
JP2017141997A1_000005t.gif
【実施例1】
【0044】
したがって、実際の誤差逆伝播では、この実数倍部分を取り除いて重み更新を行った。また、上述したように前述の実装における最終出力層fc(n)の1つ手前の層fc(n-1)において、そのユニット数を20,000とした。
【実施例1】
【0045】
ユニット数の実装は、活性化関数としてシグモイド関数で近似したステップ関数を適用するだけでは、情報量として十分なバイナリ近似特徴量を抽出することはできないためである。
【実施例1】
【0046】
具体的には、多値データでは、特徴量の各次元における表現数は無限であるのに対して、バイナリ特徴量の各次元における表現数は0と1のみであることによる。
【実施例1】
【0047】
そこで、各特徴量抽出層の少なくとも最終層もしくは、シグモイド関数で近似したステップ関数を適用しているその他の複数層におけるユニット数を激的に増やすこととした。
【実施例1】
【0048】
前記ユニット数の増加の実装は、バイナリ特徴量の次元を増やすことになり、結果として次元数の増加は、バイナリ特徴量のもつ表現量を増加させることになる。
【実施例1】
【0049】
一般にデジタル処理においては、特徴量の次元数を増やすことは計算量の増加につながるため避けられるが、光演算においては、各次元データを直接光として取り出し並列的に処理できるため特徴量の次元数の増加は問題にならない。
【実施例1】
【0050】
登録手段200は、登録用データを光演算用データへと変換し、光演算用特徴ベクトル光記憶部320に記憶するための手段である。登録手段200及び識別手段400における特徴抽出部220では、学習手段100で学習した特徴量を取り出し特徴量抽出器として転移利用する。前述の特徴量抽出器を備えた特徴抽出部220に登録用入力データ部210に入力されたデータを入力し、フィードフォワード処理により学習手段の最終出力層の1層手間の層から得られた出力を特徴量として抽出する。
【実施例1】
【0051】
図3の学習済み学習手段を特徴抽出器として利用し、特定のスケッチ入力に対するフィードフォワード処理により得られた特徴量の値分布について図4に示す。
【実施例1】
【0052】
図4は、横軸で特徴量の各次元、縦軸で各次元の特徴量の大きさを示している。図4から分かる通り、特徴量の大きさは0から1の範囲に分布し、全次元の90%近くは、限りなく0もしくは1に近似していることを確認した。本実装では、図4に示す特徴量を中間点0.5で闘値処理を施し、バイナリ化した。
【実施例1】
【0053】
次に、光演算手段300における光演算用データ変換部310では、特徴抽出部220で得られたバイナリ特徴量に対し、0は黒、1は白として色変換を行なった上でデータの画像化を行った。
【実施例1】
【0054】
図10(a)は要素数が12のときの色変換を行った後の座標変換例であり、図10(b)は登録用データを図10(c)は識別対象データをそれぞれ実際に変換した例である。中心から外側に向かってスパイラル状に配置することで光演算用データを生成する。
【実施例1】
【0055】
光演算手段300における光演算用特徴ベクトル光記憶部320では、光演算用データ変換部310で生成した光演算用データをホログラムとして記憶する。
【実施例1】
【0056】
図11は、図1に示す光演算用特徴ベクトル光記録部320と類似度計算部330に用いる概略光学手段の一例を示す図である。
【実施例1】
【0057】
ホログラム記録用光源341から出射された光は、ピーム形成光学手段342によって十分に広がった平行光に形成される。例えばビームエキスパンダーなどが含まれる。平行光は波長板343によって位相差を与えられ、ミラー344によって折り返され、波長板346によって位相差を与えられ、偏光ビームスプリッタ347で折り返されたのちに空間光変調素子348に入射する。この時、光演算用データ変換部310で生成した記録するデータにホログラム作成のための参照光となる画像をデータに付加したデータを空間光変調素子に入力する。
【実施例1】
【0058】
入射した光は空間光変調素子によって白ピクセルのみ位相差が与えられ、白ピクセルの光のみが偏光ビームスプリッタ347を通過し、レンズ349とレンズ353によって像はリレーされ、アクチュエータ355に搭載された対物レンズによってフーリエ変換され、ホログラム記録媒体356にデータが記録される。ここで、用いる空間光変調素子によっては、不図示の1/4波長板を組み合わせることで白ピクセルのみを通過させてもよい。
【実施例1】
【0059】
ここで、ディスクを回転する機構とした場合、記録時や照合時とは異なる波長を持つサーボ用の光源364を保持し、ミラー366で折り返し、波長板367で位相差を与え、ダイクロイックピームスプリッタ354によって折り返され、アクチュエータ355によってホログラム記録媒体に照射された光が記録媒体の反射面から戻り、偏光ビームスプリッタ365によって折り返され、光受光素子368によって検出され、その強度によってアクチュエータ上の対物レンズの位置を動かす、フォーカスやトラッキングのサーボ機能を付加する。
【実施例1】
【0060】
ここで、光演算用データをホログラムとして記憶する媒体は、ホログラフィック光ディスクに限定されない。例えば、前述の媒体には多角形のものも含まれ、媒質の材質にはフォトポリマー、結晶、液晶なども含まれる。
【実施例1】
【0061】
次に、識別手段400では、識別対象データ入力部410より入力されたデータと、登録手段200において光演算用特徴ベクトル光記憶部320に記憶されたデータとの相関照合により識別を行う。
【実施例1】
【0062】
識別手段400における特徴抽出においても、登録手段200で用いたものと同じ特徴抽出部220を用いて、識別対象データ入力部410より入力されたデータの特徴量を抽出する。
【実施例1】
【0063】
識別手段400における光演算用データ変換部310においても、登録手段200で用いたものと同じ光演算用データ変換部310を用いて、特徴抽出部220より抽出した特徴量を光演算用データへと変換する。
【実施例1】
【0064】
識別手段400における類似度計算部330では、識別対象データ入力部410で入力したデータから特徴抽出部220で得た特徴量を光演算用データ変換部310で光演算用データ化したデータと、登録手段200において登録用データを記憶した前記光演算用特徴ベクトル光記憶部320に記憶されたデータとの間で類似度を算出する。
【実施例1】
【0065】
図11に示した光学手段例においては、照合用光源357から出射された光はピーム形成光学手段358によって十分に広がった平行光に形成される。平行光は波長板359によって位相差を与えられ、偏光ピームスプリッタ345によって折り返され、波長板346によって位相差を与えられ、偏光ビームスプリッタ347で折り返されたのちに空間光変調素子348に入射する。
【実施例1】
【0066】
この時、識別対象データ入力部410から入力されたデータから光演算用データ変換部310で生成したデータを空間光変調素子に入力する。白ピクセルの光のみが偏光ビームスプリッタ347を通過し、レンズ349とレンズ353によって像はリレーされ、アクチュエータ355に搭載された対物レンズによってフーリエ変換され、データが記録されたホログラム記録媒体356に照射される。ディスクの鏡面で反射された光は、偏光ビームスプリッタ350によって折り返され、レンズ360とミラー361、レンズ362を通過し、光受光素子363によって光強度が検出される。
【実施例1】
【0067】
類似度計算部330で求めた類似度は、類似性が高いものほど大きな光強度、類似性が低いものほど小さな光強度として、識別手段400における出力部420より出力される。
【実施例1】
【0068】
識別手段400における出力部420より出力された光強度の大きい方からk個の記憶データに属するクラスの多数決投票により得られる結果を識別結果として用いると、本手法は、デジタルにおいてk近傍法を実装したことと同義である。
【実施例1】
【0069】
図1の光演算処理によるk近傍識別器をスケッチベース3次元照合に適用して実験を行った。
【実施例1】
【0070】
具体的な実験手法は、学習データを3次元モデルの概形データとスケッチデータの一定の割合での混合データとし、クラス数10クラスの識別用学習器を学習手段100に基づいて生成し、スケッチデータを検証データとして学習を進め、得られた学習済み学習手段の特徴抽出部を特徴抽出器として用いた。前述の特徴抽出器に3次元モデルの概形データを入力し、抽出した光演算用特徴ベクトルを光演算手段300の光演算用特徴ベクトル光記憶部320に記憶した。
【実施例1】
【0071】
ここで、識別対象データとなるスケッチデータを識別手段400の識別対象データ入力部410より入力し、得られた光記憶用特徴ベクトルを、光演算用特徴ベクトル光記憶部320に記憶された特徴ベクトルとの聞で類似度計算を行う、その出力結果を前記出力部420から得た。得られた出力は、前述したとおり類似性が高いものほど大きな光強度、類似性が低いものほど小さな光強度の出力となる。
【実施例1】
【0072】
したがって、出力された光強度の大きい方からk個記憶データの属するクラスの多数決投票により得られる結果を識別し、さらにk個の3次元モデルデータを、入力したスケッチデータに対して類似形状をもつ3次元モデル照合結果とした。
【実施例1】
【0073】
図5では、得られた特徴量の識別精度を示している。図5より、学習手段における識別精度は、テストデータで約86%となった。その学習手段の学習済み特徴抽出部を特徴抽出器として利用して得た特徴量をバイナリ化した特徴量によるk近傍法の識別精度はテストデータで約87%となっており、本学習手段で得られた特徴量はパイナリ化しでもその表現力を維持できる特徴量となっていることを確認した。
【実施例1】
【0074】
また、実際のデジタルk近傍におけるスケッチベース3次元モデルデータの照合では、t r e eクラスのスケッチ2種類(スケッチデータA、スケッチデータB) を入力したとき、スケッチデータAに対して類似形状をもつ3次元モデルの照合結果は、スケッチデータAに類似した形状をもつ3次元モデルとなっていた。
【実施例1】
【0075】
一方で、スケッチデータBに対して類似形状をもつ3次元モデルの照合結果は、スケッチデータBには、あまり類似していないがtreeクラスに属する3次元モデルとなっていた。このとき、スケッチデータAとk近傍の距離とスケッチデータBとk近傍の距離は、前者の方が小さく後者の方が大きかった。つまり、本学習手段で得られた特徴量は、類似形状の表現量をもつバイナリ化特徴量となっていることを確認した。
【実施例1】
【0076】
図6は、図1の光演算処理によるk近傍識別器をスケッチベース3次元照合に適用したとき、イスクラスの記憶部にポジティブデータであるイスのスケッチを識別対象データとして入力した場合と、ネガティブデータであるイス以外のスケッチを識別対象データとして入力した場合の光演算による類似度計算結果を縦軸の光強度で示した図である。
【実施例1】
【0077】
図6から、わかるようにポジティブクラスの識別対象データを入カとした場合光強度が大きくなる一方で、ネガティブクラスの識別対象データを入カとした場合、光強度が小さくなることが確認でき、光演算による類似度計算が可能であることを示している。
【実施例1】
【0078】
図7は、図1の光演算処理によるk近傍識別器をスケッチベース3次元照合に適用した場合の、光演算による多クラス識別結果を示した図である。
【実施例1】
【0079】
図7(a),(b) において左側はタイヤクラスの3次元モデル概形データより抽出した光演算用特徴ベクトルを記憶した部分、右側はギタークラスの3次元モデル概形データより抽出した光演算用特徴ベクトルを記憶した部分である。
【実施例1】
【0080】
図7(a),(b) からわかるように、ギターのスケッチデータを識別対象データとして入力した場合、記憶部の右側と類似度が高いが、左側とは類似度が小さいことがわかる。また、タイヤのスケッチデータを識別対象データとして入力した場合、記憶部の左側と類似度が高いが、右側とは類似度が小さいことがわかる。このことから、多識別にも光演算による類似度計算が適用可能であることを確認した。
【実施例1】
【0081】
図8は、図1の光演算処理によるk近傍識別器をスケッチベース3次元照合に適用した場合の、光相関演算によるk近傍法による3次元モデル照合結果を示した図である。
【実施例1】
【0082】
前述したように、光相関演算では、類似性が高いものほど大きな光強度、類似性が低いものほど小さな光強度として、識別手段400における出力部420より出力される。識別手段400における出力部420より出力された光強度の大きい方からk個記憶データの属するクラスの多数決投票により得られる結果を識別結果として用いると、本手法は、デジタルにおいてk近傍法を実装したことと同義である。つまり、本光演算によるk近傍法によるスケッチベースで類似形状をもつ3次元モデルデータ照合の結果を示した図が図8である。
【実施例1】
【0083】
図8はk=5として、5近傍識別を行った結果を示す。
図8より、スケッチベース3次元モデルデータの照合部分に光演算を適用した場合でも、入力したスケッチデータに対して、精度よく類似形状をもつ3次元モデル照合が可能であることを確認した。
【実施例1】
【0084】
次に、図2をもとに本実施例に関わる光演算処理によるk近傍識別器のフローチャートを説明する。説明及び各ステップを「S」と略記する。
【実施例1】
【0085】
前述の光演算処理によるk近傍識別器のフローチャートは、学習処理、登録処理、識別処理からなる。
【実施例1】
【0086】
学習処理においては、はじめにS101において教師ラベルと学習データとをセットにして入力する。次に、S102において、S101で入力されたデータに対して前処理を施す。具体的には、学習データ全ての配列値を学習データの各配列値のなかでの最大値で割ることで値を正規化する。
【実施例1】
【0087】
S102の前処理により正規化されたデータを用いて、S103において特徴量抽出を行う。S103で得られた特徴量を、S104において識別関数にかけることで識別結果を取得し、識別結果をもとに重みベクトルの最適化を行う。学習が終了したと判断されるまで、S101,S102,S103およびS104を一定回数繰り返す。
【実施例1】
【0088】
登録処理においては、まず、S201において教師ラベルとセットとして登録用データを入力する。そして、S202においてS102と同様の前処理を施す。
【実施例1】
【0089】
S203では、学習処理において重みベクトルを最適化した学習済みの特徴抽出部を取り出し特徴抽出器として利用することで、S202の前処理で得られたデータより特徴量を抽出する。抽出した特徴量に対して、S204において闘値処理を施し、特徴量をバイナリ化することでバイナリ特徴量を得る。得られたバイナリ特徴量を、0を黒、1を白のピクセル値として光演算用データ化し、S205においてホログラムに記憶する。
【実施例1】
【0090】
識別処理においては、まず、S301においてラベルのない識別したい対象となるデータを入力する。次に、S302においてS102と同様の前処理を施す。S303においても、S203と同様に、学習処理により重みベクトルを最適化した学習済みの特徴抽出部を取り出し特徴抽出器として利用することで、S302の前処理で得られたデータより特徴量を抽出する。
【実施例1】
【0091】
抽出した特徴量に対して、S304において闘値処理を施し特徴量を光演算用データ変換することでバイナリ特徴量を得る。得られたバイナリ特徴量を用いてS305において、登録手段200におけるS205においてホログラムに記憶したバイナリ特徴量との類似度を光演算により算出する。光演算により得られた類似度をもとにS306において識別判定を行う。
【実施例1】
【0092】
次に、図9をもとに光演算手段300におけるフローチャートを説明する。
【実施例1】
【0093】
図9(a) は登録手段200における光演算手段300のフローチャートである。S401において特徴抽出部によって得られた特徴量を入力し、S402においてバイナリ変換を施す。S403においては、得られた特徴量を空間光変調器や光学系に合わせてアドレス再配置を行う。
【実施例1】
【0094】
S403で得られたパターンに対して、S404において参照光を付加し、S405において空間光変調素子へ表示し、S406において光照射する。このS401からS406までのステップが登録手段200および光演算用データ変換処理310である。
【実施例1】
【0095】
S406ののちは、光演算用特徴量記憶処理320であり、S406で照射した光が記録媒体に到達し、登録用データから生成された特徴量が登録される。登録用のデータすべてに対して記憶処理が終了したと判断されるまで、S401,S402,S403,S404,S405およびS406を繰り返す。
【実施例1】
【0096】
図9(b)は識別手段400における光演算手段300のフローチャートである。S501において特徴抽出部によって得られた特徴量を入力し、S502においてバイナリ変換を施す。S503においては、得られた特徴量を空間光変調器や光学系に合わせてアドレス再配置を行う。
【実施例1】
【0097】
S503で得られたパターンをS504において空間光変調素子へ表示し、S505において光照射する。このS501からS505までのステップが識別手段400における光演算用データ変換部310の処理である。
【実施例1】
【0098】
S505の後は、類似度計算部330で処理を行い、S505で照射した光がS407で登録用データの特徴量が記憶されている記録媒体に到達し、照合が実施され、S506において照合結果として光強度が受光され、S507において類似度が判定される。
【実施例2】
【0099】
光演算処理による線形識別器による識別法の実施例2について図1の構成図をもとに説明する。
【実施例2】
【0100】
実施例1における光演算処理による線形識別器は、学習手段100、登録手段200、光演算手段300、識別手段400により構成され、図12は各手段のフローチャートである。
【実施例2】
【0101】
学習手段100は、登録手段200及び識別手段400において用いる特徴抽出部121及び光演算用制約付加部122を構築するための手段である。
【実施例2】
【0102】
具体的には、学習手段100は、学習データ入力部110、前記学習データ入力部110より取得したデータから特徴量を抽出する抽出器を生成する特徴抽出器生成部120、特徴抽出器生成部120より得られた特徴抽出器から抽出される特徴量をもとに識別判定を行う識別部130、識別部130による識別結果を評価する学習系評価部140、学習系評価部140による評価をもとに特徴抽出部の重みの更新を行う特徴抽出部121、特徴抽出部120において光演算に適用可能な特徴量にデータを変換する光演算用制約付加部122と学習の進行状態を評価するための検証用データを入力するための検証データ入力部150からなる手段である。
【実施例2】
【0103】
学習手段100における学習用データ入力部110では、学習用データと識別において正解となる情報をセットして入力する。また、特徴抽出器生成部120は、複数の特徴量抽出層からなる。各特徴量抽出層は、それぞれ学習用データに対する畳み込み、次元削減、全結合の処理を行う。
【実施例2】
【0104】
学習手段100における識別部130では、得られる特徴量次元が識別対象クラス数分の次元となる全結合層となることが好ましい。また、学習系評価部140では、識別部130において得られた識別結果の正誤の判定を行う。もし、識別が誤っていた場合は、正解との誤差を求める。さらに、学習手段100における特徴抽出部121では、学習系評価部140において求めた誤差を最小化するように特徴抽出部における重みの更新を行う。
【実施例2】
【0105】
学習手段100における光演算用制約付加部122では、学習データ入力部110から入力した学習用データに特徴抽出部121を適用したデータと識別において正解となる情報をセットして入力し、入力されたデータを適切なクラスに分類する最適な重みベクトルを求める。また求めた前述の重みベクトルを複数のバイナリベクトルと実数係数に分解する。
【実施例2】
【0106】
ここで、光演算手段300における光演算で扱うデータは実施例2では、パイナリデータである。多値データから抽出した特徴量は多値であり、これをバイナリ化する変換においては、データ表現力が落ちるので情報量を損なってしまうことが知られている。この情報量の欠損は、光演算による識別性能に影響をおよぼす可能性が高い。したがって、学習手段100における前記特徴抽出部121において情報量を保持する特徴量を設計する、または複数の関値を設定しバイナリ化を行うことでデータ次元数を多値のものより増やし、データの表現力を向上させバイナリデータ変換処理を施されても、情報量を維持できるようにした。
【実施例2】
【0107】
具体的には、特徴量抽出部121では多値データによる特徴量を得られるように学習を進め、特徴量抽出学習部で得られた多値データによる特徴量を闇値よってバイナリ化し、それを闘値数分繰り返すことで表現力の高いバイナリ特徴量を得る。
【実施例2】
【0108】
ここで、多値データの特徴量を得る手法、得られた特徴量を2値化する手法について説明する。
【実施例2】
【0109】
図13および図14は、図1の学習手段100の特徴量抽出部121の実装例を示す図である。
【実施例2】
【0110】
学習手段100における特徴量抽出部121の実装は、畳込み層を、マックスプーリング処理を挟んで1層、全結合層を2層重ねて最終出力層をクラス数と同じ2ユニットとした。
【実施例2】
【0111】
前述の実装における活性化関数にはReLU(Rectified Linear Unit) 関数を用いた。
【実施例2】
【0112】
前述の実装の各層の重みを最適化し、畳込み層の出力によって多値による特徴量を算出することができる。ただし、特徴抽出する際には光学演算による畳み込みを行った。これは畳み込み処理は光学計算によって置き換え可能であるからである。
【実施例2】
【0113】
前述のように算出した特徴量を図14に示すバイナリ処理によって光演算用にデータ変換する。多値データの中で闇値より大きいものを1、そうでないものを0とすることでバイナリ化し、前記のバイナリ化を複数の闘値により行う。
【実施例2】
【0114】
前述のように算出されるバイナリ化特徴量から識別関数の最適な重みベクトルを算出する学習手段100における光演算制約付加部122では、最適化アルゴリズムとして線形SVM(Support Vector Machine) を用いた。
【実施例2】
【0115】
重みベクトルを算出することで得られる識別関数は式(5)となる。ここでωが重みベクトル、xが識別対象データである。
【実施例2】
【0116】
【数4】
JP2017141997A1_000006t.gif
【実施例2】
【0117】
次に、光演算手段300における光演算用データ変換部320では、前記光演算制約付加部122で生成した重みベクトルを図15に示した分解アルゴリズムによってバイナリベクトルと実数係数に分解し、バイナリベクトルを前記光演算用データ変換部に入力し。0は黒、1は白として色変換を行い中心から外側に向かつてスパイラル状に配置することで光演算用データをホログラム光メモリ上に記憶する。
【実施例2】
【0118】
図15に示した分解アルゴリズムでは、多値の重みベクトルの内正の数を1、負の数を0に対応させてバイナリ化し、元の多値の重みベクトルとバイナリ化したベクトルが同じ大きさになるように実数係数を求め、求めた実数係数とバイナリベクトルの積を再び正負によってバイナリ化する。以上を繰り返すことにより多値の重みベクトルをバイナリベクトルと実数係数に分解する。
【実施例2】
【0119】
バイナリベクトルと実数係数に分解すると、識別関数は式(6)のように変形される。
【実施例2】
【0120】
【数5】
JP2017141997A1_000007t.gif
【実施例2】
【0121】
光演算手段300における光演算用特徴ベクトル光記憶部320では、光演算用データ変換部310で生成した光演算用データをホログラム光メモリ上に記憶する。
【実施例2】
【0122】
次に、識別手段400では、識別対象データ入力部410より入力されたデータと、登録手段200において光演算用特徴ベクトル光記憶部320に記憶されたデータとの類似度照合により識別を行う。
【実施例2】
【0123】
識別手段400における特徴抽出においては、特徴抽出部220を用いて、識別対象データ入力部410より入力されたデータの特徴量を抽出する。
【実施例2】
【0124】
実施例2における前記特徴抽出部220は前記学習手段100の特徴抽出器生成部120の特徴抽出部121を用いる。
【実施例2】
【0125】
識別手段400における光演算用データ変換部310においては、特徴抽出部220によって得られたバイナリベクトルを0は黒、1は白として色変換を行い、中心から外側に向かってスパイラル状に配置することで光演算用データへ変換する。
【実施例2】
【0126】
識別手段400における類似度計算部330では、前述の識別対象データ入力部410で入力したデータから特徴抽出部220で得た特徴量を光演算用データ変換部330で光演算用データ化したデータと、登録手段200において登録用データを記憶した前記光演算用特徴ベクトル光記憶部320に記憶されたデータとの聞で類似度を算出する。
【実施例2】
【0127】
前記類似度計算部330で求めた類似度は、類似度が高いものほど大きな光強度、類似度が低いものほど小さな光強度として、識別手段400における出力部420に出力される。
【実施例2】
【0128】
得られた出力に対して、前記光演算用データ変換部で得られる実数係数を付加し、式(7)の計算をすることで、識別関数の出力を得る。ここで、βは実数係数、bは光演算用特徴ベクトル光記憶部320に記憶されたバイナリベクトル、xは識別対象データ入力部410から入力された識別対象データに対して特徴抽出部220の処理を施したベクトルである。
【実施例2】
【0129】
【数6】
JP2017141997A1_000008t.gif
【実施例2】
【0130】
次に図12に示したフローチャートについて説明する。説明及び各ステップを「S」と略記する。
【実施例2】
【0131】
前述の光演算処理における線形識別器による識別法は学習処理、学習処理における光演算制約付加部、登録処理、識別処理からなる。
【実施例2】
【0132】
学習処理においては、はじめにS101おいて教師ラベルとセットとして学習データを入力する。次に、S102において、S101で入力されたデ}タに対して前処理を施す。具体的には、学習データ全ての配列値を学習データの各配列値のなかでの最大値で割ることによる値の正規化と、グレースケール化である。
【実施例2】
【0133】
S102の前処理により正規化されたデータを用いて、S103において特徴量抽出を行う。S103で得られた特徴量を、S104において識別関数にかけることで識別結果を取得し、識別結果をもとに重みベクトルの最適化を行う。学習が終了したと判断されるまで、S101,102,S103およびS104を一定回数繰り返す。
【実施例2】
【0134】
光演算制約付加部においてはS201において教師ラベルとセットとして学習データを入力する。次に、S202において、S201で入力されたデータに対して前処理を施す。具体的には、学習データ全ての配列値を学習データの各配列値のなかでの最大値で割ることによる値の正規化と、グレースケール化である。
【実施例2】
【0135】
S202の前処理により正規化されたデータを用いて、S204においてバイナリ化を行い、S205において線形SVMにより識別関数の重みベクトルを、入力データをクラス毎に分類できるように最適化する。
【実施例2】
【0136】
S205の学習によって求めた重みベクトルを前記パイナリ分解手法によって複数のバイナリベクトルと複数の実数係数に分解する。
【実施例2】
【0137】
登録処理においては、まず、S301において光演算制約付加部のS206で得られたバイナリベクトルを登録用データとして入力する。
【実施例2】
【0138】
S302,S303,S204では、光演算制約付加部のS206で得られたバイナリベクトルベクトルを、0を黒、1を白のピクセル値として光演算用データ化し、S205においてホログラムに記憶する。
【実施例2】
【0139】
識別処理においては、まず、S401においてラベルのない識別したい対象となるデータを入力する。次に、S402においてS102と同様の前処理を施す。S403においても、S203と同様に、学習処理により重みベクトルを最適化した学習済みの特徴抽出部を取り出し入力データ対して適用することで特徴量を抽出する。
【実施例2】
【0140】
S404では抽出した特徴量に対して、S204と同様の処理により特徴量をバイナリ化することでバイナリ特徴量を取得し、得られたパイナリ特徴量に対してS304と同様の処理により、光演算用データに変換する。得られたバイナリ特徴量を用いてS405において、登録処理におけるS305においてホログラムに記憶したバイナリ特徴量との類似度を光演算により算出する。光演算により得られた類似度をもとにS406において識別判定を行う。
【実施例2】
【0141】
学習手段100の前記特徴抽出部121においてCNN(Convolutional Neural Network)の学習によって得られる特徴量をバイナリ化したものではなく、B-HOG特徴量を使い人検出の実験を行った。B-HOG特徴量はHOG特徴量から得られる勾配ヒストグラムを関値により正負で2値化し、さらに情報の欠損を防ぐためにHOG特徴量の各ブロック内でXORの共起表現を付加したものである。
【実施例2】
【0142】
具体的な実験方法は、人画像とそれ以外の画像からなる学習データから学習手段に100に基づき、B-HOG特徴量を算出し、その特徴量から識別関数を生成する。学習手段100の光演算制約付加部122で得られるバイナリベクトルを光演算手段300の光演算用データ変換部に入力し、光演算用特徴ベクトル光記憶部320に記憶した。ここで、識別対象データとなる画像を識別手段400の識別対象データ入力部410より入力し、得られた光記憶用特徴ベクトルを、光演算用特徴ベクトノレ光記憶部320に記憶されたバイナリベクトルとの問で類似度計算を行う。その出力結果を前記出力部420から得た。得られた出力は、前述した通り類似度が高いものほど大きな光強度、類似度が低いものほど小さな光強度の出力となる。得られた出力に対して光演算用制約付加部122の分解手法により得られる実数係数を付加し、識別関数の出力を計算する。得られた出力を闘値判定することにより、識別結果が得られる。
【実施例2】
【0143】
学習手段110においてB-HOG特徴量を使った識別関数の識別精度は約92%となった。
【実施例2】
【0144】
識別手段400の出力部420の出力から計算した識別関数の出カは図16となった。図16から闇値判定することで、人とそれ以外の画像データを判別可能であることが確認できる。
【実施例3】
【0145】
本発明に係る実施例3(すなわち、光演算処理によるパターン認識手法の一実施例)について図17の構成図をもとに説明する。
【実施例3】
【0146】
実施例3における光演算処理によるパターン認識装置2は、図17に示すように、学習手段100、特徴量変換手段(特徴量変換モジュール)500、登録手段200、光演算手段300、識別手段400により構成され、図18は前述の各手段のフローチャートである。
【実施例3】
【0147】
学習手段100は、光相関用データ変換部の変換関数を決定することを目的とする手段である。具体的には、学習手段100は、学習データ入力部110、学習データ入力部110より取得したデータを変換する特徴抽出器生成部120、特徴抽出器生成部120より得られた変換後データをもとに判定を行う識別部130、識別部130による判定結果を評価する学習系評価部140と学習の進行状態を評価するための検証用データを入力するための検証データ入力部150からなる。また様々な学術機関が配布しているディープラーニングを電子計算機上で実行するためのソフトウェアには、学習済みの重みやバイアスを出力したり、読み込んで利用したりできるような機能が搭載されており、学習手段100を経ずに学習済み特徴量抽出器を用いることもできる。
【実施例3】
【0148】
特徴量変換手段500は、ニューラルネットワーク(単に、「ネットワーク」という場合がある)における学習によって学習データの特徴量を変換する特徴量変換モジュールであって、任意の第一の次元数および任意の特徴量を有する学習データが入力される学習データ入力部510と、所定の光演算制約条件を満たす第二の次元数を有する重みとバイアスとを因子にもつ多項式(式)からなる非線形関数(関数)より構成された学習モデルに、学習データ入力部510に入力された学習データを入力し、第二の次元数を有する中間層を設定する中間層設定部520と、中間層設定部520で設定された中間層から第一の次元数を有する出力層を計算し、ニューラルネットワークの出力を算出する出力算出部530と、出力算出部530によって算出されたニューラルネットワークの出力と学習データとの誤差を算出する誤差算出部540と、誤差算出部540によって算出された誤差が所定の条件を満たすか否かを判定する判定部550と、誤差に基づいて重みとバイアスとをそれぞれ変更し、変更後の重みとバイアスとを得る重みバイアス変更部560と、変更後の重みとバイアスとを因子にもつ多項式からなる非線形関数によって構成された学習モデルを出力する学習モデル出力部570と、を備えている。また、特徴量変換手段500は、判定部550において誤差が所定の条件を満たすと判定された場合には、学習モデル出力部570から変更後の重みとバイアスとを因子にもつ式からなる関数によって構成された学習モデルを出力させ、判定部550において誤差が所定の条件を満たさないと判定された場合には、出力算出部530において学習モデルの多項式に含まれる重みとバイアスを重みバイアス変更部560で得られた変更後の重みとバイアスにそれぞれ変更し、ニューラルネットワークの出力を算出させる制御部580を備えている。
【実施例3】
【0149】
前述の光演算制約条件は、ニューラルネットワークの出力を用いて行う光演算における所定の量子化数、光演算に用いられる光相関器の光学パラメータ、および所定のエネルギー数によって決まる。
【実施例3】
【0150】
具体的には、光演算制約条件としては、
(1)量子化数が制限されている
(2)次元数が光相関システム(光相関器)に最適な値を満たしている
(3)エネルギー量が一定である
(4)特徴量の情報を失わない
が挙げられる。本実施例では、(1)についてはバイナリデータによって量子数が2に制限されている。また、(3)についてはホワイトレート一定と等価としている。
【実施例3】
【0151】
上述の制約条件(2)については、図23に示すように、光源602、ビーム径拡大レンズ系604、ミラー606、空間光変調器(表示素子)608、偏光ビームスプリッタ612、縮小光学系614、対物レンズ(レンズ)616が配置された光相関器600では、式(1)を満たすことが好ましい。ただし、縮小光学系614は省略可能である。
【数7】
JP2017141997A1_000009t.gif
【実施例3】
【0152】
なお、(1)式において、zは第二の次元数、aは空間光変調器608のピクセルピッチ[mm]、rはレンズ対物レンズ616の半径[mm]、bは縮小光学系614の縮小倍率を示す。
【実施例3】
【0153】
学習データ入力部510においては、制御部が、特徴情報を持つ任意の次元数(第一の次元数)nを持つデータを、教師情報として入力する。ニューラルネットワークの層は1つでもよいし、複数層で構成してもよい。各層は、それぞれ学習データに対する畳み込み、次元削減、全結合の処理を行う。
【実施例3】
【0154】
中間層設定部520は、教師情報を受け取り、初期ネットワーク格納部に格納されているニューラルネットワークに対し、以下の設定を行う。まず、教師情報と同じ次元数nを入力層と出力層に設定する。加えて、上述の制約条件(2)を満たすために中間層に対して光相関演算に適した次元数(第二の次元数、すなわち式(1)におけるz)mを設定する。本実施例では、図19に示すような入力層、中間層、出力層の三つの層からなるネットワークを用いた。
【実施例3】
【0155】
ネットワーク初期設定部では前記初期ネットワーク格納部に格納されている重みw,w´とバイアスb,b´に対して任意の値を初期値として設定する。ここで、中間層の活性化関数として光相関システム用活性化関数yを設定し、教師情報の値域と同じ値域を出力として持つ活性化関数を出力層の活性化関数gとして設定する。
【実施例3】
【0156】
光相関用活性化関数は制約条件1を満たすためにシグモイド関数のネイピア数の指数k
を実数倍することで、近似的にステップ関数に近づけている(式(8)参照)。近似的にステップ関数に近づけることで入力データの近似バイナリ化を実現している。本研究では、学習の収束具合の観測よりk=1000
としている。
【実施例3】
【0157】
【数8】
JP2017141997A1_000010t.gif
【実施例3】
【0158】
さらに、入力値オフセットcによって制約条件(3)を適用する。シグモイド関数では入力値の0を基準として、出力値が0または1へと緩やかに変化して行くが、制約条件(3)を満たすために、この活性化関数では入力値を減算するオフセットcを入力値に応じて動的に設定することで基準値を変動させ、ホワイトレートを20%に設定した。
【実施例3】
【0159】
ここで、使用する光相関器に合わせて設定するホワイトレートを変えてもよい。また、入力データ群を降順にソートしたあと入力に応じて動的に設定することによってホワイトレートを完全均一にすることも容易である。
【実施例3】
【0160】
学習を行う際に用いられる誤差逆伝播法では活性化関数の微分を計算する。前述の活性化関数を微分すると式(9)となり誤差逆伝播法における重みの更新式は式(10)となる。式(10)では、実数倍部分が更新重みに直接関与する。このことは学習による重みの更新が極端に大きくなることに繋がり、学習が進まない。そのため、この実数倍部分を取り除いた式(11)を活性化関数fにおける重みの更新式として用いた。
【実施例3】
【0161】
【数9】
JP2017141997A1_000011t.gif
【実施例3】
【0162】
【数10】
JP2017141997A1_000012t.gif
【実施例3】
【0163】
【数11】
JP2017141997A1_000013t.gif
【実施例3】
【0164】
ネットワーク初期化部で初期化されたネットワークを受け取ったネットワーク出力算出部では、教師情報を入力層に通し、中間層、出力層へと伝播させる。入力層のユニットの出力が中間層のユニットへ伝播する際には、ユニットの出力に対して第一の重みwがかけられ、第一のバイアスbが加算され、さらにこの結果を活性化関数fに入力し、活性化関数fの出力が中間層のユニットの出力とする。つまり、第一の重みw=[w11,w12,…,wmn-1,wmn]、第一のバイアスb=[b,b,…,bm-1,b]とすると、中間層の出力は式(12)で表される。
【実施例3】
【0165】
【数12】
JP2017141997A1_000014t.gif
【実施例3】
【0166】
中間層のユニットの出力が出力層へ伝播する際には、中間層のユニットの出力に対して第二の重みw´がかけられ、バイアスb´が加算され、さらにこの結果を入力値の値域と同じ値域を持つ活性化関数gに入力し、この活性化関数gの出力が出力層のユニットの出力、つまりネットワークの出力となる。
【実施例3】
【0167】
誤差算出部540は、出力算出部530からネットワークの出力と学習データ入力部510から受け取った教師情報を用いて、ネットワークの出力と教師情報とが同じ値となるように2つの間の誤差を計算する。
【実施例3】
【0168】
判定部550は、誤差算出部540から誤差を受け取り、誤差の変化がほぼなくなったか、または処理が指定回数だけ繰り返されたかを判定する。前述のいずれも満たさない場合にはネットワークと誤差を重みバイアス変更部560に渡す。いずれかを満たす場合には、ネットワークから出力層と第二の重みw´とバイアスb´を取り除き、入力層と第一の重みwとバイアスbと中間層のみを残し、光相関演算用データ変換器として出力する。
【実施例3】
【0169】
重みバイアス変更部560は、判定部550からネットワークと誤差を受け取り、誤差を元に重みw,w´、バイアスb,b´を変更し、変更したネットワークを再度、出力算出部530に渡す。
【実施例3】
【0170】
実際には、判定部550における判定に基づき、制御部580によって、重みバイアス変更部560と出力算出部530とのやりとりがなされる。
【実施例3】
【0171】
中間層の次元数や活性化関数に対して光演算制約条件を加えた上で教師情報とネットワークの出力が同じとなるように学習を行わせることで、上述の制約条件(1)-(3)を満たしつつも、制約条件4の情報損失を防止する条件を満たしたデータを中間層から出力可能な変換器を特徴抽出部と光相関用データ変換部の間に組み込んだ。
【実施例3】
【0172】
登録手段200は、まず特徴抽出部へ登録用データを入力することで特徴量抽出を行い、次にこの特徴量を特徴量変換手段へ入力し、その後光演算用データ変換部へ入力し光演算用データへと変換、そして光演算用データを光記憶部に記録するための手段である。
【実施例3】
【0173】
識別手段400は、まず特徴抽出部へ識別対象データを入力することで特徴量抽出を行い、この特徴量を特徴量変換モジュールへ変換した後、光演算用データ変換部へ入力し光演算用データへと変換、そして前記登録手段において光演算用特徴ベクトル記憶部に記憶されたデータとの相関照合を類似度計算部により行い、識別を行うための手段である。
【実施例3】
【0174】
識別手段400においては、登録手段200で用いたものと同じ特徴抽出部、特徴量変換モジュール及び、光演算用データ変換部を用いて、識別対象データ入力部より入力されたデータの特徴量を抽出し、光演算用データへ変換した。また類似度計算部で求めた類似度は、類似性が高いものほど大きな光強度を示し、逆に類似性が低いものほど小さい光強度として出力部へ出力される。
【実施例3】
【0175】
次に図18に示したフローチャートについて説明する。説明及び書くステップを「S」と略記する。
【実施例3】
【0176】
光演算処理によるパターン認識手法における識別は、よりよい特徴量抽出のための学習処理、特徴量に光相関制約条件を付加した上で変換する特徴量変換手段、登録処理、識別処理からなる。前述のように様々な学術機関が配布しているディープラーニングを電子計算機上で実行するためのソフトウェアには、学習済みの重みやバイアスを出力したり、読み込んで利用したりできるような機能が搭載されており、前述の学習手段を経ずに学習済み特徴量抽出器を用いることも可能である。このため、学習処理はあってもなくてもよい。
【実施例3】
【0177】
学習処理100においては、S102の前処理により正規化されたデータを用いて、S103において特徴量抽出を行なう。S103で得られた特徴量を、S104において識別関数にかけることで識別結果を取得し、識別結果をもとに特徴抽出器の最適化を行なう。学習が終了したと判断されるまで、S101,102,S103およびS104を一定回数繰り返す。
【実施例3】
【0178】
特徴量変換手段においては、光制約を付加するための学習をおこなう。S201において特徴量抽出器で特徴抽出済みのデータを入力する。次に、S202において、S201で入力されたデータに対してS202において符号化を施す。その後S203において複合し、S201で入力したデータとS203で複合したデータの差分を用いてS204にて特徴量変換器を最適化する。
【実施例3】
【0179】
登録処理においては、まず、S301において登録データを入力し、S102と同様の前処理を施す。S303において学習処理1または予め用意してあった特徴抽出器を用いて特徴量抽出した後、S305にて特徴量変換手段で作成した特徴量変換器を用いて光演算制約付加しS304で得られたバイナリベクトルを登録用データとして変換する。得られた登録用データをS306においてホログラムに記憶する。
【実施例3】
【0180】
識別処理においては、まず、S401において識別したい対象となるデータを入力する。次に、S402においてS102と同様の前処理を施す。S403においても、S203と同様に、学習処理1により最適化した学習済みの特徴量抽出器または予め用意した特徴量抽出器を取り出し入力データ対して適用することで特徴量を抽出する。
【実施例3】
【0181】
S404では抽出した特徴量に対して、S305と同様の処理により特徴量をバイナリ化することでバイナリ特徴量を取得し、得られた特徴量に対してS304と同様に、光演算用データに変換する。得られたバイナリ特徴量を用いてS406において、登録処理におけるS306においてホログラムに記憶したバイナリ特徴量との類似度を光演算により算出する。光演算により得られた類似度をもとにS407において識別判定を行う。
【実施例3】
【0182】
本実施例では、光演算処理によるパターン認識をスケッチベースの商品画像検索システムに適用して実験を行った。
【実施例3】
【0183】
具体的な実験手法は、特徴抽出部にスケッチによる商品画像検索を行う学習済みCNNネットワークを用い、更に光演算用特徴変換部の符号化部における中間の全結合層のユニット数を、2560次元で表現可能な入力データに対して40000ユニットにすることで2560次元のままバイナリ化するよりも15倍以上の表現力を持たせた。
【実施例3】
【0184】
データセットとして椅子の商品画像とスケッチ画像の97ペア用いた。ここでペアと記したのは、スケッチ画像が商品画像を基に描かれたものであり、商品画像とスケッチの一対一の対応がついているためである。
【実施例3】
【0185】
ここで、登録手段においては、椅子の商品画像を特徴抽出部に入力することで特徴量を抽出し、特徴量変換モジュールを通した後に、前述の特徴量を光演算用特徴変換部により光演算用データへ変換し、この光演算用データを光演算手段の光演算用特徴ベクトル記憶部に記憶した。
【実施例3】
【0186】
実験における識別手段においては、椅子のスケッチを特徴抽出部に入力することで特徴量を抽出し、この特徴量を光演算用特徴変換部により光演算用データへ変換、この変換した椅子のスケッチの光演算用データと、前記光演算用特徴ベクトル記憶部に記憶した椅子の商品画像の光演算用データとの間で類似度計算を行い、その出力結果を出力部より得た。
【実施例3】
【0187】
ここで特定の椅子のスケッチを入力した際に、特徴抽出部で抽出された多値特徴量の値分布及び、光演算用特徴変換部から出力される光演算用データの値分布を図20に示す。
【実施例3】
【0188】
図20(a)は特徴抽出部より抽出された多値特徴量の値分布であり、図20(b)が光演算用特徴変換部から出力された光演算用データの値分布である。どちらも横軸が特徴量の大きさを、縦軸がその特徴量の大きさの出現回数を示している。特徴抽出部により抽出された-2.5から2までの広い値域を持つ特徴量は、光演算用特徴変換部により値域が0から1へ制限され、更に限りなく0または1に近似していることを確認した。
【実施例3】
【0189】
ここで、データセットにおいて商品画像とスケッチの一対一の対応が存在することを利用して、スケッチ画像を入力した際の出力のうち上位K番以内に対応する商品画像がデータセット全体で何割存在するかを示すacc@Kを評価指標として導入した。この評価指標を基に、光演算用特徴変換の評価を行った。
【実施例3】
【0190】
図21に識別精度を示す。図21に示す結果より、光演算処理によるパターン認識においては、表現力を維持可能な特徴量となっていることがわかる。
【実施例3】
【0191】
図22に、横軸はデータベースのインデックス、縦軸は内積値の大きさである。図22に示す結果より、スケッチ画像に対応した商品画像の相関度が大きく表れ、それ以外は抑制されていることを確認した。
【実施例3】
【0192】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲内に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【0193】
100 学習手段
110 学習データ入力部
120 特徴抽出器生成部
121 特徴抽出部
122 光演算用制約付加部
130 識別部
140 学習系評価部
150 検証データ入力部
200 登録手段
210 登録用データ入力部
300 光演算手段
310 光演算用データ変換部
320 光演算用特徴ベクトノレ光記憶部
330 類似度計算部
500 特徴量変換手段(特徴量変換モジュール)
510 学習データ入力部
520 中間層設定部
530 出力算出部
540 誤差算出部
550 判定部
560 重みバイアス変更部
570 学習モデル出力部
580 制御部
図面
【図1】
0
【図2】
1
【図3】
2
【図4】
3
【図5】
4
【図6】
5
【図7】
6
【図8】
7
【図9】
8
【図10】
9
【図11】
10
【図12】
11
【図13】
12
【図14】
13
【図15】
14
【図16】
15
【図17】
16
【図18】
17
【図19】
18
【図20】
19
【図21】
20
【図22】
21
【図23】
22