(57)【要約】【課題】連想記憶モデルに記憶させる画像のパターン間の相関を取り除き、干渉の発生や記憶容量の低下を防ぐことができる、画像認識装置、画像認識方法、および、プログラムを提供することを課題とする。【解決手段】本発明は、ランダムな二値パターンであるマスクパターンを生成し、指定された複数の画像の元パターンとマスクパターンとの排他的論理和または否定排他的論理和を求めることにより被マスクパターンを生成する論理演算ステップと、マスクパターンに対応付けた被マスクパターンを連結パターンとして、ニューラルネットワークを用いた連想記憶モデルにて学習させることを特徴とする。【選択図】図５
2015095041.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも記憶部と制御部を備えた画像認識装置であって、
上記制御部は、
ランダムな二値パターンであるマスクパターンを生成するマスク生成手段と、
指定された複数の画像の元パターンと上記マスクパターンとの排他的論理和または否定排他的論理和を求めることにより被マスクパターンを生成する論理演算手段と、
上記マスクパターンに対応付けた上記被マスクパターンを連結パターンとして、ニューラルネットワークを用いた連想記憶モデルにて学習させる学習手段と、
を備えたことを特徴とする画像認識装置。
【請求項２】
請求項１に記載の画像認識装置において、
上記論理演算手段は、
上記複数の画像のうち上記元パターン中の任意の数のビットごとに共通した上記マスクパターンを設定して、上記被マスクパターンを作成すること、
を特徴とする画像認識装置。
【請求項３】
請求項１または２に記載の画像認識装置において、
上記論理演算手段は、
上記複数の画像による長さＮの上記元パターンを、先頭からＬ−１個ずつのブロック単位に区切り、ブロック毎に値が異なる上記マスクパターンを設定して、ＬＮ／（Ｌ−１）の長さの上記連結パターンを生成すること、
を特徴とする画像認識装置。
【請求項４】
請求項１乃至３のいずれか一つに記載の画像認識装置であって、
上記論理演算手段は、
上記画像の一次元二値データを上記元パターンとして、同じまたは短い長さのランダムな二値データを上記マスクパターンとして、両データの対応する値同士の排他的論理和または否定排他的論理和を求めることにより上記被マスクパターンを生成すること、
を特徴とする画像認識装置。
【請求項５】
請求項１乃至４のいずれか一つに記載の画像認識装置において、
上記学習手段は、
上記マスクパターンを上記記憶部に格納し、
上記論理演算手段は、
指定された、手がかり画像である照合パターンに対して、上記記憶部に記憶された複数の上記マスクパターンの一つを用いて上記排他的論理和または上記否定排他的論理和を求めることにより、マスク化照合パターンを生成し、
上記制御部は、
上記マスク化照合パターンを上記連想記憶モデルに導入して収束するまで状態更新を繰り返し、収束状態のエネルギー関数の値が閾値以下の結果を得られない場合は、別の上記マスクパターンによるマスク化照合パターンを試行することにより、元パターンを探索する想起手段、
を更に備えたことを特徴とする画像認識装置。
【請求項６】
少なくとも記憶部と制御部を備えたコンピュータにおいて実行される画像認識方法であって、
上記制御部において、
ランダムな二値パターンであるマスクパターンを生成するマスク生成ステップと、
指定された複数の画像の元パターンと上記マスクパターンとの排他的論理和または否定排他的論理和を求めることにより被マスクパターンを生成する論理演算ステップと、
上記マスクパターンに対応付けた上記被マスクパターンを連結パターンとして、ニューラルネットワークを用いた連想記憶モデルにて学習させる学習ステップと、
を含むことを特徴とする画像認識方法。
【請求項７】
少なくとも記憶部と制御部を備えたコンピュータに実行させるためのプログラムであって、
上記制御部において、
ランダムな二値パターンであるマスクパターンを生成するマスク生成ステップと、
指定された複数の画像の元パターンと上記マスクパターンとの排他的論理和または否定排他的論理和を求めることにより被マスクパターンを生成する論理演算ステップと、
上記マスクパターンに対応付けた上記被マスクパターンを連結パターンとして、ニューラルネットワークを用いた連想記憶モデルにて学習させる学習ステップと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像認識装置、画像認識方法、および、プログラムに関する。
【背景技術】
【０００２】
従来、ニューラルネットワークにおける連想記憶モデルとして、自己連想記憶モデルや系列連想記憶モデル等が開発されている。
【０００３】
例えば、特許文献１では、記憶層で、自己増殖型ニューラルネットワークを用いて、入力ベクトルのパターンに対応するノードを接続したサブネットワークを構成して、入力ベクトルのサブクラスとして学習し、連想層で、記憶層にて保持された連想のキーとなるキーベクトルのキークラスと、そのキーベクトルから想起される連想クラスとの間に関連を張り、入力されたキーベクトルから、そのキークラス又は連想クラスに対応するノードの重みを想起結果として出力することが開示されている。
【０００４】
また、非特許文献１には、カラー画像を二値データに変換し、あるビットを反転させてリバーシブル符号を生成し、ニューラルネットワークに記憶させることにより、復号化した際に、あるビット表現と反転表現が同じ整数値となるよう調整することが開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−８６１３２号公報
【非特許文献】
【０００６】
【非特許文献１】Ｏｋｕ，  Ｍａｋｉｔｏ，  Ａｉｈａｒａ，  Ｋａｚｕｙｕｋｉ，  “Ａｓｓｏｃｉａｔｉｖｅ  ｄｙｎａｍｉｃｓ  ｏｆ  ｃｏｌｏｒ  ｉｍａｇｅｓ  ｉｎ  ａ  ｌａｒｇｅ−ｓｃａｌｅ  ｃｈａｏｔｉｃ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ”，  Ｎｏｎｌｉｎｅａｒ  Ｔｈｅｏｒｙ  ａｎｄ  Ｉｔｓ  Ａｐｐｌｉｃａｔｉｏｎｓ，  ＩＥＩＣＥ，  Ｖｏｌｕｍｅ  ２，  Ｉｓｓｕｅ  ４，  ｐｐ．  ５０８−５２１  （２０１１）．
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来の連想記憶モデルにおいては、連想記憶モデルに記憶させる画像のパターン間に相関があると、干渉が発生して記憶容量が低下する、という問題点を有していた。
【０００８】
本発明は、上記問題点に鑑みてなされたもので、連想記憶モデルに記憶させる画像のパターン間の相関を取り除き、干渉の発生や記憶容量の低下を防ぐことができる、画像認識装置、画像認識方法、および、プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
このような目的を達成するため、本発明の画像認識装置は、少なくとも記憶部と制御部を備えた画像認識装置であって、上記制御部は、ランダムな二値パターンであるマスクパターンを生成するマスク生成手段と、指定された複数の画像の元パターンと上記マスクパターンとの排他的論理和または否定排他的論理和を求めることにより被マスクパターンを生成する論理演算手段と、上記マスクパターンに対応付けた上記被マスクパターンを連結パターンとして、ニューラルネットワークを用いた連想記憶モデルにて学習させる学習手段と、を備えたことを特徴とする。
【００１０】
また、本発明の画像認識装置は、上記記載の画像認識装置において、上記論理演算手段は、上記複数の画像のうち上記元パターン中の任意の数のビットごとに共通した上記マスクパターンを設定して、上記被マスクパターンを作成すること、を特徴とする。
【００１１】
また、本発明の画像認識装置は、上記記載の画像認識装置において、上記論理演算手段は、上記複数の画像による長さＮの上記元パターンを、先頭からＬ−１個ずつのブロック単位に区切り、ブロック毎に値が異なる上記マスクパターンを設定して、ＬＮ／（Ｌ−１）の長さの上記連結パターンを生成すること、を特徴とする。
【００１２】
また、本発明の画像認識装置は、上記記載の画像認識装置において、上記論理演算手段は、上記画像の一次元二値データを上記元パターンとして、同じまたは短い長さのランダムな二値データを上記マスクパターンとして、両データの対応する値同士の排他的論理和または否定排他的論理和を求めることにより上記被マスクパターンを生成すること、を特徴とする。
【００１３】
また、本発明の画像認識装置は、上記記載の画像認識装置において、上記学習手段は、上記マスクパターンを上記記憶部に格納し、上記論理演算手段は、指定された、手がかり画像である照合パターンに対して、上記記憶部に記憶された複数の上記マスクパターンの一つを用いて上記排他的論理和または上記否定排他的論理和を求めることにより、マスク化照合パターンを生成し、上記制御部は、上記マスク化照合パターンを上記連想記憶モデルに導入して収束するまで状態更新を繰り返し、収束状態のエネルギー関数の値が閾値以下の結果を得られない場合は、別の上記マスクパターンによるマスク化照合パターンを試行することにより、元パターンを探索する想起手段、を更に備えたことを特徴とする。
【００１４】
また、本発明は画像認識方法に関するものであり、本発明の画像認識方法は、少なくとも記憶部と制御部を備えたコンピュータにおいて実行される画像認識方法であって、上記制御部において、ランダムな二値パターンであるマスクパターンを生成するマスク生成ステップと、指定された複数の画像の元パターンと上記マスクパターンとの排他的論理和または否定排他的論理和を求めることにより被マスクパターンを生成する論理演算ステップと、上記マスクパターンに対応付けた上記被マスクパターンを連結パターンとして、ニューラルネットワークを用いた連想記憶モデルにて学習させる学習ステップと、を含むことを特徴とする。
【００１５】
また、本発明はプログラムに関するものであり、本発明のプログラムは、少なくとも記憶部と制御部を備えたコンピュータに実行させるためのプログラムであって、上記制御部において、ランダムな二値パターンであるマスクパターンを生成するマスク生成ステップと、指定された複数の画像の元パターンと上記マスクパターンとの排他的論理和または否定排他的論理和を求めることにより被マスクパターンを生成する論理演算ステップと、上記マスクパターンに対応付けた上記被マスクパターンを連結パターンとして、ニューラルネットワークを用いた連想記憶モデルにて学習させる学習ステップと、を実行させることを特徴とする。
【００１６】
また、本発明は記録媒体に関するものであり、上記記載のプログラムを記録したことを特徴とする。
【発明の効果】
【００１７】
この発明によれば、ランダムな二値パターンであるマスクパターンを生成し、指定された複数の画像の元パターンとマスクパターンとの排他的論理和または否定排他的論理和を求めることにより被マスクパターンを生成し、マスクパターンに対応付けた被マスクパターンを連結パターンとして、ニューラルネットワークを用いた連想記憶モデルにて学習させる。これにより、元の画像はマスクパターンによって乱雑化され、画像のパターン間の相関が小さくなるので、干渉の発生を防ぎ記憶容量の低下を抑えることができるという効果を奏する。また、重みが極端な値を取らないのでハードウェアの実装に都合がよい。
【００１８】
また、本発明によれば、複数の画像の元パターン中の任意の数のビットごとに共通したマスクパターンを設定して、被マスクパターンを作成するので、マスクパターンの部分が増えることによる連結パターンの延長を抑えることができ、記憶容量の低下を抑えることができるという効果を奏する。
【００１９】
また、本発明によれば、複数の画像による長さＮの元パターンを、先頭からＬ−１個ずつのブロック単位に区切り、ブロック毎に値が異なるマスクパターンを設定して、ＬＮ／（Ｌ−１）の長さの連結パターンを生成する。これにより、本発明は、マスクパターンをブロック単位で設定して、連結パターンの延長を抑えることができ、記憶容量の低下を抑えることができるという効果を奏する。
【００２０】
また、本発明によれば、画像の一次元二値データを元パターンとして、同じまたは短い長さのランダムな二値データをマスクパターンとして、両データの対応する値同士の排他的論理和または否定排他的論理和を求めることにより被マスクパターンを生成するので、簡単な計算で元画像間の相関を小さくすることができるという効果を奏する。
【００２１】
また、本発明によれば、指定された、手がかり画像である照合パターンに対して、記憶部に記憶された複数のマスクパターンの一つを用いて排他的論理和または否定排他的論理和を求めることにより、マスク化照合パターンを生成し、マスク化照合パターンを連想記憶モデルに導入して収束するまで状態更新を繰り返し、収束状態のエネルギー関数の値が閾値以下の結果を得られるまで、別のマスクパターンによるマスク化照合パターンを試行して、元パターンを探索する。これにより、本発明は、マスクパターンが分からない場合であっても、照合パターンから対応する正解パターン候補を探し出すことができるという効果を奏する。
【図面の簡単な説明】
【００２２】
【図１】図１は、連想記憶モデルの記銘段階を模式的に示した図である。
【図２】図２は、連想記憶モデルの想起段階を模式的に示す図である。
【図３】図３は、互いに相関が小さいパターンを記憶させる場合を模式的に示した図である。
【図４】図４は、互いに相関が大きいパターンを記憶させる場合を模式的に示した図である。
【図５】図５は、元パターンとマスクパターンと被マスクパターンと連結パターンの関係を示す図である。
【図６】図６は、ＸＮＯＲ演算およびＸＯＲ演算の一例を示す図である。
【図７】図７は、連結パターンの一例を示す図である。
【図８】図８は、ブロック単位に異なるマスクパターンｒｋを設定した連結パターンの一例を示す図である。
【図９】図９は、本実施の形態が適用される本画像認識装置１００の一例を示すブロック図である。
【図１０】図１０は、本実施の形態における画像認識装置１００の基本処理の一例を示すフローチャートである。
【図１１】図１１は、本実施の形態における画像認識装置１００の学習処理の一例を示すフローチャートである。
【図１２】図１２は、本実施の形態における画像認識装置１００の想起処理の一例を示すフローチャートである。
【図１３】図１３は、本実施例により系列連想記憶モデルから再構成された連続画像を示す図である。
【発明を実施するための形態】
【００２３】
以下に、本発明にかかる画像認識装置、画像認識方法、および、プログラムの実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。例えば、本実施の形態に示す連想記憶モデルに限らず、様々な連想記憶モデルに本発明を適用してもよい。また、以下の実施の形態では、連想記憶モデルとして自己連想記憶モデルを例に説明する場合があるが、これに限られず、系列連想記憶モデル等に適用してもよい。また、連想記憶モデルは、同期的更新でも非同期的更新でもよく、ニューラルネットワークの動態は確率論的であっても決定論的であってもよい。また、本実施の形態において、ニューラルネットワークの結合が疎の場合を例にして説明することがあるが、これに限られず、結合が密なニューラルネットワーク（例えば、全ての神経細胞ユニットが互いに結合しているネットワーク）を用いてもよい。
【００２４】
［本発明の実施の形態の概要］
以下、本発明の実施の形態の概要について図１〜図８を参照して説明し、その後、本実施の形態の構成および処理等について詳細に説明する。ここで、図１は、連想記憶モデルの記銘段階を模式的に示した図である。
【００２５】
連想記憶モデルとは、神経回路網（ニューラルネットワーク）モデルの一種である。連想記憶モデルの一種である、ホップフィールド・ネットワークは、１９８２年にＨｏｐｆｉｅｌｄによって提唱されたニューラルネットワークの一モデルである。一例として図１に示すように、神経細胞（ニューロン）ユニットが結合されたニューラルネットワークを構築しておき、神経細胞ユニット間で相互作用させる。神経細胞ユニット間の結合の強さは重み（結合係数）として表現され、学習により強度が増減する。
【００２６】
図１では、ニューラルネットワークに、４つのパターンの二値画像を記憶させる記銘段階が模式的に示されている。自己連想記憶モデルの記銘段階では、複数の記憶パターンを記憶させて、想起段階では、その中から１つのパターンを想起させるものである。ネットワークにおける各神経細胞ユニットは、結合する他の神経細胞ユニットからの入力の総和によって、発火するか否かが決まる。自己連想記憶モデルにおける記憶パターンとは、神経細胞ユニットの活動状態（典型的には、発火状態と休止状態の二種類）の並び方のことである。ホップフィールドのモデルでは、記銘段階で、シナプス結合の重みを特定の学習則（Ｈｅｂｂ則等）に従い定めることで、記憶パターンは、ニューラルネットワークに記憶される。また、想起段階で、ネットワークの状態を表すエネルギー関数が状態更新則に従って単調に減少し、極小値状態に至るまで繰り返し更新処理が実行される。図２は、連想記憶モデルの想起段階を模式的に示す図である。
【００２７】
図２に示すように、自己連想記憶モデルの想起段階では、手がかりとなる照合パターンから、ニューラルネットワークに記憶された元のパターンを探索し、想起されたパターンを得る。より具体的には、記憶パターンを取り出す際には、まず、ニューラルネットワークに手がかりとなる初期パターンを与え、次に、ニューラルネットワークの状態を特定の規則に従い複数回更新することにより、所望の記憶パターンを得る。なお、手がかりパターンは、元のパターンそのものでなくともよく、求めたいパターンの一部を乱したものであってもよい。すなわち、自己連想記憶モデルでは、入力として与えた手がかりパターンと最も似ている記憶済みのパターンが得られる。
【００２８】
ネットワークにおけるニューロンの数（神経細胞ユニット数）Ｎが増えるほど記憶できるパターン数は増えるが、パターン間の相関によって記憶できるパターンの数に限界がある。自己連想記憶モデルが覚えられるパターン数を記憶容量と呼ぶ。理論的な記憶容量の上限として、標準的な学習則や状態更新則を用いた場合には、ニューラルネットワークおよび記憶パターンの大きさＮに対して、およそ０．１４Ｎ程度であることが知られているが、実際には、記憶パターンの相関に大きく影響される。ここで、図３は、互いに相関が小さいパターンを記憶させる場合を、図４は、互いに相関が大きいパターンを記憶させる場合を模式的に示した図である。
【００２９】
図３に示すように、記憶パターンがランダムなパターンであって、互いに相関が小さい場合は、理論的な限界に近い０．１４Ｎの記憶容量が得られる。しかしながら、図４に示すように、互いに似通ったパターンを記憶させる場合、記憶パターン間に相関が大きいために、互いに干渉して、一般に記憶容量は著しく低下してしまう。
【００３０】
従来、この記憶容量の低下の問題に対して、（１）擬似逆行列を用いたり逐次的に重みを調節したりすることによって学習則を改善する方法、（２）末尾にビットを足したりビットの一部を変更したりすることによってパターン自体に変更を加える方法等が提案されている。しかし、従来の手法はいずれも計算負荷が大きいため、神経回路網および記憶パターンの大きさＮが大きい場合には適用することが困難であった。
【００３１】
そこで、本願の発明者らが鋭意検討を行ったことにより本発明を開発するに至った。一例として、本願で提案する新手法は、（１）記憶パターン（元パターン）に対してマスクパターンを用意し、（２）記憶パターンとマスクパターンのＸＮＯＲ演算またはＸＯＲ演算により被マスクパターンを生成し、（３）マスクパターンと被マスクパターンを連結した連結パターンを神経回路網に記憶させることを基本的な要素としている。このようにマスクパターンを用いて乱雑化することにより、記憶させるパターンを擬似的に直交化して、相関による記憶容量の低下を抑えることができる。ここで、図５は、元パターンとマスクパターンと被マスクパターンと連結パターンの関係を示す図である。
【００３２】
二値の信号列を乱雑化する目的でＸＯＲ演算あるいはＸＮＯＲ演算を行う。図５に示すように、原理としては、元の信号列（元パターン）と、それをマスクするための（擬似）乱数列（ランダムマスク）を用意し、両者のＸＯＲ演算ないしＸＮＯＲ演算を行うことで、乱雑な信号列（被マスクパターン）が得られる。これにより、記憶パターンが乱雑化して相関が小さくなり、パターン間の干渉を低減して、記憶容量の低下を防ぐことができる。
【００３３】
より具体的には、本発明の実施の形態は、（１）ランダムな二値パターン（ランダムマスク）のマスクパターンを生成する。なお、二値の出現確率は均等に１／２であることに限らず、多少のバイアスを加えてもよい。
【００３４】
そして、本実施の形態は、（２）指定された複数の画像の元パターンとマスクパターンとの排他的論理和（ＸＯＲ）または否定排他的論理和（ＸＮＯＲ）を求めることにより被マスクパターンを生成する。なお、マスクパターンや１番目の連結パターンは記憶部に格納してもよい。一例として、本実施の形態は、画像の一次元二値データを元パターンとして、同じまたは短い長さのランダムな二値データをマスクパターンとして、両データの対応する値同士の排他的論理和（ＸＯＲ）または否定排他的論理和（ＸＮＯＲ）を求めることにより被マスクパターンを生成する。ここで、図６は、ＸＮＯＲ演算およびＸＯＲ演算の一例を示す図である。
【００３５】
元パターン（Ｉｎｐｕｔ１）とマスクパターン（Ｉｎｐｕｔ２）が｛０，１｝の二値データを用いる場合、図６（ａ）に示すＸＮＯＲ演算を行い、被マスクパターンの値（Ｏｕｔｐｕｔ）を得る。なお、二値データは、いずれの２つの値であってもよく、一例として、元パターン（Ｏｒｉｇｉｎａｌ）とマスクパターン（Ｍａｓｋ）が｛１，−１｝の二値データを用いる場合、図６（ｂ）に示すＸＮＯＲ演算を行い、被マスクパターンの値（Ｍａｓｋｅｄ）を得てもよい。この場合のＸＮＯＲ演算は、元パターンｒｉとマスクパターンξｉを掛け合わせたものｒｉ×ξｉに相当する。
【００３６】
一方のＸＯＲ演算では、元パターン（Ｉｎｐｕｔ１）とマスクパターン（Ｉｎｐｕｔ２）が｛０，１｝の二値データを用いる場合、図６（ｃ）に示すＸＯＲ演算を行い、被マスクパターンの値（Ｏｕｔｐｕｔ）を得る。この場合も、二値データは、いずれの２つの値であってもよく、一例として、元パターン（Ｏｒｉｇｉｎａｌ）とマスクパターン（Ｍａｓｋ）が｛１，−１｝の二値データを用いる場合、図６（ｄ）に示すＸＯＲ演算を行い、被マスクパターンの値（Ｍａｓｋｅｄ）を得てもよい。この場合のＸＯＲ演算は、元パターンｒｉとマスクパターンξｉを掛け合わせ符号を入れ替えたもの−ｒｉ×ξｉに相当する。
【００３７】
つづいて、記銘段階では、本実施の形態は、（３）マスクパターンに対応付けた被マスクパターンを連結パターンとして、ニューラルネットワークを用いた連想記憶モデルにて学習させる。なお、連結パターン中のビットの並べ方は、いずれの順序であってもよい。また、連結パターンは、元パターンの情報を完全に保持している。なぜなら、マスクパターンと被マスクパターンのペアに対して再度、同じ論理演算（ＸＮＯＲ／ＸＯＲ）を行うと、元のパターンが復元できるからである。ここで、図７は、連結パターンの一例を示す図である。
【００３８】
一例として図７に示すように、本実施の形態は、一つ一つの元パターンξｋに対して異なるマスクパターンｒｋを用いてＸＯＲ／ＸＮＯＲ演算を行った被マスクパターンｒｋξｋと、マスクパターンｒｋを交互に並べて連結パターンとして記銘させてもよい（ｋはブロック番号）。この場合、元パターンの長さがＮとすると、２Ｎの長さの連結パターンが生成されることとなる。そのため、必要なニューロン数（神経細胞ユニット数）は倍増する。
【００３９】
そこで、複数の元パターンをブロック単位で区切って、ブロック単位ごとに異なるマスクパターン（ランダムマスク等）を設定して、連結パターンの長さを抑えてもよい。すなわち、マスクパターンのビット数を元パターンよりも少なく用意し、同一の要素（マスク）を複数回のＸＮＯＲ演算に続けて使用することで、連結パターンの長さを２Ｎより短くしてもよい。ここで、図８は、ブロック単位に異なるマスクパターンｒｋを設定した連結パターンの一例を示す図である。図８に示すように、本実施の形態は、複数の画像の元パターンを、先頭からＬ−１個ずつのブロック単位（マスクパターンを入れて長さＬのブロック）に区切り、ブロック毎に値が異なるマスクパターンを設定して、ＬＮ／（Ｌ−１）の長さの連結パターンを生成してもよい。図７の場合は、必要なニューロン数（神経細胞ユニット数）が２倍となるが、図８に示すようにブロック長をＬとすることによりＬ／（Ｌ−１）倍に抑えられる。
【００４０】
なお、記銘段階に続く想起段階では、通常、手がかりとなる入力パターンから、ニューラルネットワークに記憶された元のパターンを探索し、想起されたパターンを得るが、本実施の形態を適用した場合には、照合パターンに対応するマスクパターンが未知である。そのため、本実施の形態では、手がかり画像である照合パターンに対して、試行により記憶部に記憶された複数のマスクパターンの一つを用いて、排他的論理和（ＸＯＲ）または否定排他的論理和（ＸＮＯＲ）を求めることにより、マスク化照合パターンを生成し、このマスク化照合パターンを用いて、元のパターンを導出してもよい。すなわち、マスク化照合パターンを連想記憶モデルに導入して収束するまで状態更新を繰り返し、収束状態のエネルギー関数の値が閾値以下の結果を得られた場合に、想起結果のパターンを得てもよい。なお、エネルギー関数の値が閾値以下にならない場合は、別のマスクパターンによるマスク化照合パターンを試行する。
【００４１】
以上が本実施の形態の概要である。なお、上記においては、自己連想記憶モデルを例にして説明したが、系列連想記憶モデルを用いる場合、同様に本実施の形態を適用することができる。なお、系列連想記憶モデルは、自己連想記憶モデルの亜種であり、記憶パターンの系列を記憶し、神経回路網の状態を繰り返し更新することで、記憶したパターンを順番どおりに想起するものである。系列連想記憶モデルを用いる場合、理論的な記憶容量の上限は０．１４Ｎではなく０．２７Ｎとなるが、パターン間の相関により記憶容量が低下することに変わりはない。
【００４２】
上述のように擬似的に直交化させる手法は、（１）必要な計算が簡単な論理演算（ＸＮＯＲ／ＸＯＲ）だけなので、計算負荷が小さく実装も簡単であるというメリットがある。また、（２）個々のパターンを独立に処理することができ、パターン同士の関連性を考慮しなくてよいため、計算が簡単でパターンの追加記憶も容易に行えるというメリットがある。さらに、（３）標準的な学習則（ヘブ学習則等）をそのまま適用することができ、その結果得られたシナプス結合の重みが極端な値を取らないため、ハードウェアでの実装に都合がよいというメリットがある。また、（４）神経回路網に記憶されるパターン同士が十分離れ、それらの距離もほぼ均等になるため、どの記憶パターンも安定して想起できる等のメリットがある。
【００４３】
［画像認識装置の構成］
次に、本画像認識装置の構成について図９を参照して説明する。図９は、本実施の形態が適用される本画像認識装置１００の一例を示すブロック図であり、該構成のうち本実施の形態に関係する部分のみを概念的に示している。
【００４４】
図９に示すように、本実施の形態における画像認識装置１００は、概略的に、制御部１０２と記憶部１０６を少なくとも備え、本実施の形態において、更に、入出力制御インターフェース部１０８と通信制御インターフェース部１０４を備える。ここで、制御部１０２は、画像認識装置１００の全体を統括的に制御するＣＰＵ等である。また、通信制御インターフェース部１０４は、通信回線等に接続されるルータ等の通信装置（図示せず）に接続されるインターフェースであり、入出力制御インターフェース部１０８は、入力部１１２や出力部１１４に接続されるインターフェースである。また、記憶部１０６は、各種のデータベースやテーブルなどを格納する装置である。これら画像認識装置１００の各部は任意の通信路を介して通信可能に接続されている。更に、この画像認識装置１００は、ルータ等の通信装置および専用線等の有線または無線の通信回線を介して、ネットワーク３００に通信可能に接続されている。
【００４５】
記憶部１０６に格納される各種のデータベースやテーブル（マスク保存部１０６ａ、ニューロンファイル１０６ｂ等）は、固定ディスク装置等のストレージ手段である。例えば、記憶部１０６は、各種処理に用いる各種のプログラム、テーブル、ファイル、データベース、および、ウェブページ等を格納する。
【００４６】
これら記憶部１０６の各構成要素のうち、マスク保存部１０６ａは、マスクパターンや１番目の連結パターン等を記憶するマスク記憶手段である。例えば、マスク保存部１０６ａは、マスク生成部１０２ａにより生成されたマスクパターンを格納してもよい。より具体的には、マスク保存部１０６ａは、マスク生成部１０２ａによりマスクパターンとして生成された乱数列ｒμ（μ＝１，２，・・・，Ｐ）を記憶してもよい。
【００４７】
また、ニューロンファイル１０６ｂは、神経細胞ユニットを識別するインデックスに対応付けて、神経細胞ユニット間のパラメータや神経細胞ユニット毎のパラメータ（係数値等）などニューラルネットワークに関するデータを記憶する神経回路網記憶手段である。一例として、ニューロンファイル１０６ｂに記憶されるニューラルネットワークの情報は、神経細胞ユニットｉと神経細胞ユニットｊの間における重みＪｉｊ、時刻ｔ（ｔ＝１，２，３，．．．）における、神経回路網の状態ｘ（ｔ）、再構成パターンｙ（ｔ）、エネルギー関数Ｅ（ｔ）、神経細胞ユニットの内部ポテンシャルｈ（ｔ）等の値である。なお、ニューロンファイル１０６ｂには、予めこれらパラメータのｔ＝０の場合で数値が与えられていない場合、初期パラメータが記憶されてもよい。後述する学習部１０２ｃおよび想起部１０２ｄにより状態更新（ｔ→ｔ＋１）が行われる毎に、上述の値が更新されてもよい。
【００４８】
また、入出力制御インターフェース部１０８は、入力部１１２や出力部１１４の制御を行う。ここで、出力部１１４としては、モニタ（家庭用テレビを含む）の他、スピーカを用いることができる（なお、以下においては出力部１１４をモニタとして記載する場合がある）。また、入力部１１２としては、キーボード、マウス、およびマイク等を用いることができる。
【００４９】
また、図９において、制御部１０２は、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）等の制御プログラムや、各種の処理手順等を規定したプログラム、および、所要データを格納するための内部メモリを有する。そして、制御部１０２は、これらのプログラム等により、種々の処理を実行するための情報処理を行う。制御部１０２は、機能概念的に、マスク生成部１０２ａ、論理演算部１０２ｂ、学習部１０２ｃ、および、想起部１０２ｄを備える。
【００５０】
このうち、マスク生成部１０２ａは、マスクパターンを生成するマスク生成手段である。本実施の形態において、マスク生成部１０２ａは、ランダムな二値パターンであるマスクパターンを生成する。一例として、マスク生成部１０２ａは、乱数表等を用いて、乱数列ｒμ（μ＝１，２，・・・，Ｐ）を生成してもよい。なお、発生させる二値（例えば、１と−１）の出現確率Ｐｒｏｂ（ｒｉμ＝±１）は、均等に１／２であることに限らず、多少のバイアス（バイアスパラメータａ）を加えて（１±ａ）／２としてもよい。
【００５１】
また、論理演算部１０２ｂは、マスク生成部１０２ａにより生成されたマスクパターン（ランダムマスク等）と、元パターンとの論理演算（ＸＮＯＲ／ＸＯＲ）を行うことにより被マスクパターンを生成する論理演算手段である。例えば、論理演算部１０２ｂは、図６を用いて上述したようにＸＮＯＲ演算またはＸＯＲ演算を行う。
【００５２】
ここで、論理演算部１０２ｂは、複数の画像の元パターン中の任意の数のビットごとにブロック化して、ブロック単位で共通したマスクパターン（ランダムマスク等）を設定して、被マスクパターンを作成してもよい。より具体的には、論理演算部１０２ｂは、複数の画像による長さＮの元パターンを、先頭からＬ−１個ずつのブロック単位に区切り（ただし、ＮはＬ−１で割り切れるものとする。）、ブロック毎に値が異なるマスクパターンを設定して、ＬＮ／（Ｌ−１）の長さの連結パターンを生成してもよい。なお、論理演算部１０２ｂは、想起段階において、マスク保存部１０６ａから１つのマスクパターンを取り出して、照合パターンとの論理演算（ＸＮＯＲ／ＸＯＲ）を行い、マスク化照合パターンを生成してもよい。そして、もし想起部１０２ｄにおいて、取り出したマスクパターンを用いたマスク化照合パターンで想起が失敗した場合は、別のマスクパターンを取り出して、新たなマスク化照合パターンを生成する。
【００５３】
また、学習部１０２ｃは、ニューラルネットワークを用いた連想記憶モデルにて連結パターンを学習させる学習手段である。一方、想起部１０２ｄは、ニューラルネットワークを用いた連想記憶モデルにて手がかりとなる照合パターンから元パターンを探索する想起手段である。なお、本実施の形態において、学習部１０２ｃは、想起部１０２ｄによる自己連想記憶モデルの想起段階のために、用いたマスクパターンをマスク保存部１０６ａに格納してもよい。想起段階では、想起部１０２ｄは、マスク保存部１０６ａに格納されたマスクパターンを試行錯誤的に一つ選んで、照合マスクとの論理演算を行うことでマスク化照合パターンを得ることができる。また、系列連想記憶モデルの場合、学習部１０２ｃは、１番目の連結パターンのみをマスク保存部１０６ａに格納してもよい。想起段階では、想起部１０２ｄは、マスク保存部１０６ａに記憶された連結パターンをニューラルネットワークの初期状態に設定して、状態更新する毎に復号化を行い出力させることで、元パターンを得てもよい。
【００５４】
ここで、数式による説明を行う。記憶させたい元のパターンを｛ξμ１，ξμ２，．．．，ξμＮ｝と表す。μはパターン番号で、１からＰまでの整数値を取る。ξμｉは、μ番目の元パターンのｉ番目の値を表し、本実施の形態では１か−１のいずれかの値を取る。これに対し、マスクパターンは、｛ｒμ１，ｒμ２，．．．，ｒμＮ｝と表す。本実施の形態において、ｒμｉは、μ番目のマスクパターンのｉ番目の値を示し、ランダムに１か−１の値を取る。記憶パターンのある値ξμｉと、それに対応するマスクパターンの値ｒμｉとの間で、ＸＮＯＲ演算をした結果はξμｉｒμｉとなる（ＸＯＲ演算の場合は−ξμｉｒμｉ）。
【００５５】
ブロック長Ｌ＝２の場合、マスクパターン｛ｒμ１，ｒμ２，．．．，ｒμＮ｝と被マスクパターン｛ξμ１ｒμ１，ξμ２ｒμ２，．．．，ξμＮｒμＮ｝から１つずつ交互の取ってきて繋げたもの｛ｒμ１，ξμ１ｒμ１，ｒμ２，ξμ２ｒμ２，．．．，ｒμＮ，ξμＮｒμＮ｝が、学習部１０２ｃの制御によりニューラルネットワークに記憶させる長さ２Ｎの連結パターンである。ここで、記号を置き換えて、連結パターン｛ημ１，ημ２，．．．，ημＮ´｝と表す。ただし、Ｎ´＝２Ｎである。
【００５６】
ブロック長Ｌ＝２以上の場合、μ番目の元パターンのｋ番目のブロックを｛ξμｋ，１，ξμｋ，２，．．．，ξμｋ，Ｌ−１｝と表す。これに対応するマスクパターンの値をｒμｋとし、論理演算（ＸＮＯＲ／ＸＯＲ）および連結操作を行うことで、長さＬのブロック｛ｒμｋ，ｒμｋξμｋ，１，ｒμｋξμｋ，２，．．．，ｒμｋξμｋ，Ｌ−１｝を得る。これをブロック順に並べたものを連結パターンとしてもよい。この場合、Ｎ´＝ＬＮ／（Ｌ−１）となる。なお、上記の連結パターンの並び順は一例であり、連結パターンにおいて被マスクパターンとマスクパターンの並び順は任意である。
【００５７】
学習部１０２ｃによる連結パターンの学習には、一例として、標準的なヘブ学習則を用いてもよい。自己連想記憶モデルの場合、ｊ番目の神経細胞ユニットからｉ番目の神経細胞ユニットへのシナプス結合の強度をＪｉｊと表し、ｉ≠ｊの場合について、学習部１０２ｃは、以下の式に従い値を定める。なお、ｉ＝ｊの場合は、Ｊｉｉ＝０とする。
【数１】
2015095041.tif 000003
【００５８】
一方、系列連想記憶モデルの場合、学習部１０２ｃは、以下の式に従い値を定める。ただし、ημ＋１ｉ＝η１ｉとする。
【数２】
2015095041.tif 000004
【００５９】
ニューラルネットワークの時刻ｔにおける状態を｛ｘ１（ｔ），ｘ２（ｔ），．．．，ｘＮ´（ｔ）｝と表す。ｘｉ（ｔ）は、ｉ番目の神経細胞ユニットの活動状態を表し、１（発火状態）か−１（休止状態）のいずれかの値を取る。ニューラルネットワークの状態更新には、同期更新と非同期更新、決定論的更新と確率的更新のそれぞれの組み合わせにより、４通りが考えられるが、いずれの組み合せを採用してもよい。最も単純な同期更新と決定論的更新を組み合せる方式では、自己連想記憶モデルの場合も、系列連想記憶モデルの場合も、学習部１０２ｃおよび想起部１０２ｄは、以下の式に従って状態更新を行ってもよい。ここで、ｓｇｎ（ｈ）は、ｈ≧０のとき１を、ｈ＜０のとき−１を返す関数である。
【数３】
2015095041.tif 000005
【００６０】
一例として、学習部１０２ｃおよび想起部１０２ｄは、ニューラルネットワークの状態が収束するまで状態更新を繰返す。系列連携記憶モデルの場合は、状態更新を１ステップ行う毎に、ニューラルネットワークの状態が変化する。
【００６１】
一例として、想起部１０２ｄは、初期パターンをニューラルネットワークに設定して、エネルギー関数の値が収束するまで状態更新を繰り返すことによって、対応する元パターンを探索する。例えば、想起部１０２ｄは、マスク化照合パターンとマスクパターンを連結した連結パターンを初期パターンとして設定してもよい。
【００６２】
なお、想起部１０２ｄは、収束状態で閾値以下のエネルギー関数の値を得られない場合は、偽アトラクタにトラップされて想起が失敗したとして、別のマスクパターン（例えば、μ→μ＋１）を用いたマスク化照合パターンで試行することにより、元パターンを探索する。すなわち、正しいマスクパターンを用いて変換しないと、ニューラルネットワークの状態が偽アトラクタに高い確率でトラップされる性質を利用して、想起部１０２ｄは、正しいマスクパターンを探し出す。一方、正しいマスクパターンを用いて変換すれば、収束状態におけるニューラルネットワークのエネルギー関数の値は、十分低くなるので、その場合に想起成功とみなして、想起部１０２ｂは、状態を復号化し、元パターンの出力を得る。ここで、想起部１０２ｄは、以下の式を用いて、ニューラルネットワークの状態を復号してもよい。なお、再構成パターンを｛ｙ１（ｔ），ｙ２（ｔ），．．．，ｙＮ（ｔ）｝と表す。
ｙｋ（ｔ）＝ｘ２ｋ−１（ｔ）ｘ２ｋ（ｔ）
【００６３】
なお、系列連想記憶モデルの場合は、学習部１０２ｃは、１番目の連結パターンのみをニューラルネットワークとは別にマスクファイル１０６ａに格納してもよい。そして、想起部１０２ｄは、マスクファイル１０６ａに格納された１番目の連結パターンをニューラルネットワークの初期状態に設定し、神経回路網の状態を更新する毎に復号化を行い出力させることで、元パターンの系列を取り出すことができる。
【００６４】
以上が、本実施の形態における画像認識装置１００の構成の一例である。なお、画像認識装置１００は、ネットワーク３００を介して外部システム２００に接続されてもよい。この場合、通信制御インターフェース部１０４は、画像認識装置１００とネットワーク３００（またはルータ等の通信装置）との間における通信制御を行う。すなわち、通信制御インターフェース部１０４は、他の端末と通信回線を介してデータを通信する機能を有する。また、ネットワーク３００は、画像認識装置１００と外部システム２００とを相互に接続する機能を有し、例えば、インターネット等である。
【００６５】
また、外部システム２００は、ネットワーク３００を介して、画像認識装置１００と相互に接続され、各種パラメータに関する外部データベースや、接続されたコンピュータ（情報処理装置）に画像認識方法を実行させるためのプログラム等を提供する機能を有する。
【００６６】
ここで、外部システム２００は、ＷＥＢサーバやＡＳＰサーバ等として構成していてもよい。また、外部システム２００のハードウェア構成は、一般に市販されるワークステーション、パーソナルコンピュータ等の情報処理装置およびその付属装置により構成していてもよい。また、外部システム２００の各機能は、外部システム２００のハードウェア構成中のＣＰＵ、ディスク装置、メモリ装置、入力装置、出力装置、通信制御装置等およびそれらを制御するプログラム等により実現される。
【００６７】
以上で、本実施の形態の構成の説明を終える。
【００６８】
［画像認識装置１００の処理］
次に、このように構成された本実施の形態における画像認識装置１００の処理の一例について、以下に図１０を参照して詳細に説明する。図１０は、本実施の形態における画像認識装置１００の基本処理の一例を示すフローチャートである。
【００６９】
図１０に示すように、まず、マスク生成部１０２ａは、ランダムな二値パターンであるランダムマスクを生成する（ステップＳＡ−１）。一例として、マスク生成部１０２ａは、乱数表等を用いて、乱数列ｒμ（μ＝１，２，・・・，Ｐ）を生成してもよい。
【００７０】
そして、論理演算部１０２ｂは、マスク生成部１０２ａにより生成されたマスクパターン（ランダムマスク）と元パターンとの論理演算（ＸＮＯＲ演算またはＸＯＲ演算）を行うことにより被マスクパターンを生成する（ステップＳＡ−２）。ここで、論理演算部１０２ｂは、複数の画像の元パターン中の任意の数のビットごとにブロック化して、ブロック単位で共通したランダムマスクを設定して、被マスクパターンを作成してもよい。
【００７１】
そして、学習部１０２ｃは、ニューラルネットワークを用いた連想記憶モデルにて連結パターンを学習させる（ステップＳＡ−３）。なお、学習部１０２ｃは、自己連想記憶モデルの想起段階のために、マスクパターンをマスク保存部１０６ａに格納してもよく、系列連想記憶モデルの想起段階のために、１番目の連結パターンのみをマスク保存部１０６ａに格納してもよい。
【００７２】
そして、想起部１０２ｄは、手がかりパターンに基づいて、初期状態のニューラルネットワークに連結パターンを設定して、エネルギー関数の値が収束するまで状態更新を繰り返すことによって、対応する元パターンを探索する（ステップＳＡ−４）。なお、自己連想記憶モデルの場合、想起部１０２ｄは、論理演算部１０２ｂの処理により、マスク保存部１０６ａから１つのマスクパターンを取り出して、照合パターンとの論理演算（ＸＮＯＲ／ＸＯＲ）を行い、マスク化照合パターンを生成して初期状態の連結パターンとして設定する。想起部１０２ｄは、取り出したマスクパターンを用いたマスク化照合パターンで想起が失敗した場合は、別のマスクパターンを取り出して、新たなマスク化照合パターンを生成する。想起部１０２ｄは、エネルギー関数の値が収束するまで状態更新を行い、収束状態でエネルギー関数の値が所定の閾値以下の場合に、想起が成功したとして、その状態からパターンを復号し、復号化したパターンを出力部１１４等に出力する。一方、系列連想記憶モデルの場合、想起部１０２ｄは、マスク保存部１０６ａから１番目の連結パターンを取り出してニューラルネットワークの初期状態に設定し、神経回路網の状態を更新する毎に復号化を行い出力させることで、元パターンの系列を取り出すことができる。
【００７３】
以上が、本実施形態における画像認識装置１００の基本処理の一例である。
【００７４】
［学習処理］
つぎに、画像認識装置１００の基本処理をより具体化した学習処理の一例について以下に図１１を参照して説明する。ここで、図１１は、本実施の形態における画像認識装置１００の学習処理の一例を示すフローチャートである。
【００７５】
図１１に示すように、学習部１０２ｃは、利用者に入力部１１２を介して、パターンの長さＮ、パターン数Ｐ、ブロック長Ｌを入力させる（ステップＳＢ−１）。なお、学習部１０２ｃは、入力部１１２を介して入力された画像群からＮ，Ｐ，Ｌの値を計算により求めてもよい。
【００７６】
そして、学習部１０２ｃは、ニューロンファイル１０６ｂに記憶された全ての結合係数Ｊｉｊを０に初期化する（ステップＳＢ−２）。
【００７７】
そして、学習部１０２ｃは、パターン番号ｋに１を代入する（ステップＳＢ−３）。
【００７８】
そして、マスク生成部１０２ａは、１と−１の出現確率Ｐｒｏｂ（ｒｉμ＝±１）を１／２として、マスクとして乱数列ｒμ（μ＝１，２，・・・，Ｐ）を生成する（ステップＳＢ−４）。
【００７９】
そして、論理演算部１０２ｂは、ＸＯＲまたはＸＮＯＲの論理演算により、ｋ番目の入力パターンをマスクでランダム化させる（ステップＳＢ−５）。
【００８０】
そして、学習部１０２ｃは、ヘブ学習則等に従い、ランダム化させたパターンをニューラルネットワークに記憶させる学習処理を行う（ステップＳＢ−６）。
【００８１】
そして、学習部１０２ｃは、パターン番号ｋがパターン数Ｐに達していない場合（ステップＳＢ−７，Ｎｏ）、ｋをインクリメント（ｋ→ｋ＋１）し（ステップＳＢ−８）、上述したステップＳＢ−４〜ＳＢ−７の処理を繰返す。
【００８２】
一方、パターン番号ｋがパターン数Ｐに達した場合（ステップＳＢ−７，Ｙｅｓ）、結合係数の行列Ｊをニューロンファイル１０６ｂに出力し（ステップＳＢ−９）、学習処理を終える。
【００８３】
［想起処理］
つづいて、画像認識装置１００の基本処理をより具体化した想起処理の一例について以下に図１２を参照して説明する。ここで、図１２は、本実施の形態における画像認識装置１００の想起処理の一例を示すフローチャートである。
【００８４】
図１２に示すように、まず、想起部１０２ｄは、利用者に入力部１１２等を介して、手がかりとなる画像データである照合パターンを入力させるよう制御する（ステップＳＣ−１）。
【００８５】
そして、想起部１０２ｄは、マスク番号ｋに１を代入する（ステップＳＣ−２）。
【００８６】
そして、想起部１０２ｄは、マスク保存部１０６ａからｋ番目のマスクを取得する（ステップＳＣ−３）。
【００８７】
そして、論理演算部１０２ｂは、ステップＳＢ−５で用いた論理演算により、入力された照合パターンをｋ番目のマスクでランダム化させる（ステップＳＣ−４）。
【００８８】
そして、想起部１０２ｄは、ランダム化パターンをニューラルネットワークの初期状態に設定する（ステップＳＣ−５）。
【００８９】
そして、想起部１０２ｄは、ニューラルネットワークの状態更新を行う（ステップＳＣ−６）。
【００９０】
そして、想起部１０２ｄは、ニューラルネットワークの状態が収束したか否かを判定する（ステップＳＣ−７）。例えば、想起部１０２ｄは、状態変数ｘ（ｔ）が更新しても同じ値となった場合や、数回の状態更新の周期で同じパターンの値を繰返す場合に、収束したと判定してもよい。
【００９１】
ニューラルネットワークの状態が収束していない場合（ステップＳＣ−７，Ｎｏ）、想起部１０２ｄは、ステップＳＣ−６に処理を戻し、更に状態更新を行う（時刻ｔ→ｔ＋１）。
【００９２】
一方、ニューラルネットワークの状態が収束したと判定した場合（ステップＳＣ−７，Ｙｅｓ）、想起部１０２ｄは、エネルギー関数Ｅ（ｔ）の値に基づいて、想起が成功したか否かを判定する（ステップＳＣ−８）。例えば、想起部１０２ｄは、エネルギー関数Ｅ（ｔ）の値が所定の閾値以下である場合に、想起成功と判定してもよい。想起が成功した場合（ステップＳＣ−８，Ｙｅｓ）、想起部１０２ｄは、ニューラルネットワークの状態ｘ（ｔ）を復号化して、再構成パターンを出力部１１４に出力する（ステップＳＣ−９）。
【００９３】
一方、想起が成功しなかった場合（ステップＳＣ−８，Ｎｏ）、想起部１０２ｄは、パターン番号ｋがパターン数Ｐに達したか否かを判定し（ステップＳＣ−１０）、ｋ＝Ｐでない場合は（ＳＣ−１０，Ｎｏ）、ｋをインクリメント（ｋ→ｋ＋１）し（ステップＳＣ−１１）、上述したステップＳＣ−３〜ＳＣ−８の処理を繰返す。想起が成功しないまま（ステップＳＣ−８，Ｎｏ）、パターン番号ｋがパターン数Ｐに達した場合は（ステップＳＣ−１０，Ｙｅｓ）、想起部１０２ｄは、想起失敗のエラーを出力し（ステップＳＣ−１２）、想起処理を終える。
【００９４】
［実施例］
つづいて、上述した実施の形態を、系列連想記憶モデルにおける動画再生に用いた実施例について、以下に図１３を参照して説明する。図１３は、本実施例により系列連想記憶モデルから再構成された連続画像を示す図である。
【００９５】
ブロック単位の処理法の実施例として、動画の記憶および再生に応用した例を説明する。ここで用いる画像系列は、公開されている画像データベースＣｏｌｕｍｂｉａ  Ｏｂｊｅｃｔ  Ｉｍａｇｅ  Ｌｉｂｒａｒｙ（ＣＯＩＬ−１００）の中にある、縦が１２８ピクセル、横が１２８ピクセルの２４ビットＲＧＢで表現された７２枚の画像である。このような連続画像は、背景が共通しており、連続的に動くために、画像間で相関が大きいため、本実施の形態の手法を用いてブロック単位で擬似的に直交化させた。
【００９６】
各画像データは、連想記憶モデルで扱えるように、長さＮ＝３９３２１６ビットの二値データに変換して使用した。これらの元データをブロック長Ｌ＝９で連結パターンに変換し、結合が疎な系列連想記憶モデルに記憶させた。結合が疎であるとは、各神経細胞ユニットが他の少数の神経細胞ユニットからのみ入力を受け取り、それ以外の神経細胞ユニットからの入力を受け取らないということである。このことは、実装上は、入力結合の無い神経細胞ユニット間の結合重みを０に設定することに相当する。本実施例では、各神経細胞ユニットが受け取る結合数を一律にＫ＝５００と定め、神経細胞ユニット毎にランダムに定めた他の５００個の神経細胞ユニットから結合を受け取るようにし、その部分についてのみ学習則を適用した。
【００９７】
画像系列の最初の画像に対応する連結パターンを神経回路網の初期値に定め、状態更新則を順次適用し、各更新ステップで神経回路網の状態から再構成パターンを計算して出力した。その結果、図１３に示すように、元の画像系列と非常に近い画像が順番どおりに出力された。
【００９８】
また、系列連想記憶モデルの性質から、最後のパターンの次の更新ステップでは最初のパターンに戻るようになっているが、出力は７２枚の画像を周期的に繰り返し、長期的に画像が崩れていくということは無かった。この実施例は、提案手法により元データが持つ相関が十分に取り除かれ、系列連想記憶モデルで記憶および想起可能なパターンに変換できたことが実証された。なお、本実施例では、実際にはカラー画像を用いたが、電子出願の様式上、図１３では白黒で表示している。本実施例の結果得られたカラー画像については、公表論文を参照することができる（Ｍａｋｉｔｏ  Ｏｋｕ，  Ｔａｋａｋｉ  Ｍａｋｉｎｏ，  ａｎｄ  Ｋａｚｕｙｕｋｉ  Ａｉｈａｒａ，  “Ｐｓｅｕｄｏ−Ｏｒｔｈｏｇｏｎａｌｉｚａｔｉｏｎ  ｏｆ  Ｍｅｍｏｒｙ  Ｐａｔｔｅｒｎｓ  ｆｏｒ  Ａｓｓｏｃｉａｔｉｖｅ  Ｍｅｍｏｒｙ”  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋｓ  ａｎｄ  Ｌｅａｒｎｉｎｇ  Ｓｙｓｔｅｍｓ，  ＩＥＥＥ  Ｔｒａｎｓａｃｔｉｏｎｓ，  ２０１３，  Ｖｏｌｕｍｅ：２４  ，  Ｉｓｓｕｅ：  １１，  ｐｐ．１８７７−１８８７）。
【００９９】
以上で、本実施の形態の説明を終える。
【０１００】
［他の実施の形態］
さて、これまで本発明の実施の形態について説明したが、本発明は、上述した実施の形態以外にも、特許請求の範囲に記載した技術的思想の範囲内において種々の異なる実施の形態にて実施されてよいものである。
【０１０１】
また、画像認識装置１００がスタンドアローンの形態で処理を行う場合を一例に説明したが、画像認識装置１００は、クライアント端末からの要求に応じて処理を行い、その処理結果を当該クライアント端末に返却するようにしてもよい。
【０１０２】
また、実施の形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。
【０１０３】
このほか、上記文献中や図面中で示した処理手順、制御手順、具体的名称、各処理の登録データや検索条件等のパラメータを含む情報、画面例、データベース構成については、特記する場合を除いて任意に変更することができる。
【０１０４】
また、画像認識装置１００に関して、図示の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。
【０１０５】
例えば、画像認識装置１００の各装置が備える処理機能、特に制御部１０２にて行われる各処理機能については、その全部または任意の一部を、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）および当該ＣＰＵにて解釈実行されるプログラムにて実現してもよく、また、ワイヤードロジックによるハードウェアとして実現してもよい。なお、プログラムは、後述する記録媒体に記録されており、必要に応じて画像認識装置１００に機械的に読み取られる。すなわち、ＲＯＭまたはＨＤなどの記憶部１０６などには、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）として協働してＣＰＵに命令を与え、各種処理を行うためのコンピュータプログラムが記録されている。このコンピュータプログラムは、ＲＡＭにロードされることによって実行され、ＣＰＵと協働して制御部を構成する。
【０１０６】
また、このコンピュータプログラムは、画像認識装置１００に対して任意のネットワーク３００を介して接続されたアプリケーションプログラムサーバに記憶されていてもよく、必要に応じてその全部または一部をダウンロードすることも可能である。
【０１０７】
また、本発明に係るプログラムを、コンピュータ読み取り可能な記録媒体に格納してもよく、また、プログラム製品として構成することもできる。ここで、この「記録媒体」とは、メモリーカード、ＵＳＢメモリ、ＳＤカード、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ、および、Ｂｌｕ−ｒａｙ  Ｄｉｓｃ等の任意の「可搬用の物理媒体」を含むものとする。
【０１０８】
また、「プログラム」とは、任意の言語や記述方法にて記述されたデータ処理方法であり、ソースコードやバイナリコード等の形式を問わない。なお、「プログラム」は必ずしも単一的に構成されるものに限られず、複数のモジュールやライブラリとして分散構成されるものや、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）に代表される別個のプログラムと協働してその機能を達成するものをも含む。なお、実施の形態に示した各装置において記録媒体を読み取るための具体的な構成、読み取り手順、あるいは、読み取り後のインストール手順等については、周知の構成や手順を用いることができる。
【０１０９】
記憶部１０６に格納される各種のデータベース等（マスク保存部１０６ａ、ニューロンファイル１０６ｂ等）は、ＲＡＭ、ＲＯＭ等のメモリ装置、ハードディスク等の固定ディスク装置、フレキシブルディスク、および、光ディスク等のストレージ手段であり、各種処理やウェブサイト提供に用いる各種のプログラム、テーブル、データベース、および、ウェブページ用ファイル等を格納する。
【０１１０】
また、画像認識装置１００は、既知のパーソナルコンピュータ、ワークステーション等の情報処理装置として構成してもよく、また、該情報処理装置に任意の周辺装置を接続して構成してもよい。また、画像認識装置１００は、該情報処理装置に本発明の方法を実現させるソフトウェア（プログラム、データ等を含む）を実装することにより実現してもよい。
【０１１１】
更に、装置の分散・統合の具体的形態は図示するものに限られず、その全部または一部を、各種の付加等に応じて、または、機能負荷に応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。すなわち、上述した実施形態を任意に組み合わせて実施してもよく、実施形態を選択的に実施してもよい。
【産業上の利用可能性】
【０１１２】
以上詳述に説明したように、本発明によれば、連想記憶モデルに記憶させる画像のパターン間の相関を取り除き、干渉の発生や記憶容量の低下を防ぐことができる、画像認識装置、画像認識方法、および、プログラムを提供することができ、特に画像認識や画像処理などの様々な分野において極めて有用である。
【符号の説明】
【０１１３】
１００  画像認識装置
１０２  制御部
１０２ａ  マスク生成部
１０２ｂ  論理演算部
１０２ｃ  学習部
１０２ｄ  想起部
１０４  通信制御インターフェース部
１０６  記憶部
１０６ａ  マスク保存部
１０６ｂ  ニューロンファイル
１０８  入出力制御インターフェース部
１１２  入力部
１１４  出力部
２００  外部システム
３００  ネットワーク
【図１】
2015095041.tif 000006
【図２】
2015095041.tif 000007
【図３】
2015095041.tif 000008
【図４】
2015095041.tif 000009
【図５】
2015095041.tif 000010
【図６】
2015095041.tif 000011
【図７】
2015095041.tif 000012
【図８】
2015095041.tif 000013
【図９】
2015095041.tif 000014
【図１０】
2015095041.tif 000015
【図１１】
2015095041.tif 000016
【図１２】
2015095041.tif 000017
【図１３】
2015095041.tif 000018