JP2015141541A - Image recognition apparatus, image recognition method and program - Google Patents

Image recognition apparatus, image recognition method and program Download PDF

Info

Publication number
JP2015141541A
JP2015141541A JP2014013829A JP2014013829A JP2015141541A JP 2015141541 A JP2015141541 A JP 2015141541A JP 2014013829 A JP2014013829 A JP 2014013829A JP 2014013829 A JP2014013829 A JP 2014013829A JP 2015141541 A JP2015141541 A JP 2015141541A
Authority
JP
Japan
Prior art keywords
pattern
mask
image recognition
original
recognition apparatus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2014013829A
Other languages
Japanese (ja)
Inventor
合原 一幸
Kazuyuki Aihara
一幸 合原
鈴木 秀幸
Hideyuki Suzuki
秀幸 鈴木
貴樹 牧野
Takaki MAKINO
貴樹 牧野
牧人 奥
Makito Oku
牧人 奥
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Japan Science and Technology Agency
Original Assignee
Japan Science and Technology Agency
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Japan Science and Technology Agency filed Critical Japan Science and Technology Agency
Priority to JP2014013829A priority Critical patent/JP2015141541A/en
Publication of JP2015141541A publication Critical patent/JP2015141541A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide an image recognition apparatus capable of preventing occurrence of interference or reduction of storage capacity by removing a correlation between patterns of images while partially holding sparse of image patterns to be stored in an associated storage model, an image recognition method and a program.SOLUTION: An image recognition method includes a logical operation step in which, on the basis of a source pattern of a plurality of designated images, a mask pattern is generated that is a binary pattern being random in an allocation probability for suppressing inversion of high appearance frequency in the source pattern among random patterns. By calculating exclusive OR or negative exclusive OR of the source pattern and the mask pattern, a masked pattern is generated which suppressing the bit inversion in a value of the high appearance frequency. The masked pattern corresponding to the mask pattern is learnt as a connection pattern by an associated storage model using a neural network.

Description

本発明は、画像認識装置、画像認識方法、および、プログラムに関する。   The present invention relates to an image recognition apparatus, an image recognition method, and a program.

従来、ニューラルネットワークにおける連想記憶モデルとして、自己連想記憶モデルや系列連想記憶モデル等が開発されている。   Conventionally, self-associative memory models, sequence associative memory models, and the like have been developed as associative memory models in neural networks.

例えば、特許文献1では、記憶層で、自己増殖型ニューラルネットワークを用いて、入力ベクトルのパターンに対応するノードを接続したサブネットワークを構成して、入力ベクトルのサブクラスとして学習し、連想層で、記憶層にて保持された連想のキーとなるキーベクトルのキークラスと、そのキーベクトルから想起される連想クラスとの間に関連を張り、入力されたキーベクトルから、そのキークラス又は連想クラスに対応するノードの重みを想起結果として出力することが開示されている。   For example, in Patent Document 1, a self-propagating neural network is used in the storage layer to form a subnetwork in which nodes corresponding to the pattern of the input vector are connected, and learning is performed as a subclass of the input vector. An association is established between the key class of the key vector that is the key of the association held in the storage layer and the association class that is recalled from the key vector, and the input key vector is changed to the key class or association class. It is disclosed that the weight of a corresponding node is output as a recall result.

また、非特許文献1には、カラー画像を二値データに変換し、あるビットを反転させてリバーシブル符号を生成し、ニューラルネットワークに記憶させることにより、復号化した際に、あるビット表現と反転表現が同じ整数値となるよう調整することが開示されている。   In Non-Patent Document 1, a color image is converted into binary data, a bit is inverted, a reversible code is generated, and stored in a neural network, so that it is inverted with a bit expression when decoded. It is disclosed to adjust the representation to be the same integer value.

特開2011−86132号公報JP 2011-86132 A

Oku, Makito, Aihara, Kazuyuki, “Associative dynamics of color images in a large−scale chaotic neural network”, Nonlinear Theory and Its Applications, IEICE, Volume 2, Issue 4, pp. 508−521 (2011).“Oku, Makito, Aihara, Kazuyuki,“ Associative dynamics of color images in a large-scale I l e and p e n e i n e i n e t e n e i n e i n e i n e i t e n e i t e n e i t e n e i ” 508-521 (2011).

しかしながら、従来の連想記憶モデルにおいては、マスクパターンによって元画像パターンを乱雑化し、連想記憶モデルに記憶させる際に、乱雑化されたパターンがスパース性を失うため、連想記憶モデルが本来有する、スパース性による記憶容量増加の効果を得られないという問題点を有していた。   However, in the conventional associative memory model, when the original image pattern is messed up by the mask pattern and stored in the associative memory model, the sparseness of the associative memory model is inherent in the associative memory model. There is a problem that the effect of increasing the storage capacity due to cannot be obtained.

本発明は、上記問題点に鑑みてなされたもので、連想記憶モデルに記憶させる画像パターンのスパース性を一部保持したまま画像のパターン間の相関を取り除き、干渉の発生や記憶容量の低下を防ぐことができる、画像認識装置、画像認識方法、および、プログラムを提供することを目的とする。   The present invention has been made in view of the above problems, and removes the correlation between image patterns while retaining a part of the sparsity of the image patterns stored in the associative memory model, thereby reducing the occurrence of interference and reducing the storage capacity. An object of the present invention is to provide an image recognition apparatus, an image recognition method, and a program that can be prevented.

このような目的を達成するため、本発明の画像認識装置は、少なくとも記憶部と制御部を備えた画像認識装置であって、上記制御部は、指定された複数の画像の元パターンに基づいて、二値のうち上記元パターンにおいて出現頻度が高いビットの反転を抑制する割当確率でランダムな二値パターンであるマスクパターンを生成するマスク生成手段と、上記元パターンと上記マスクパターンとの排他的論理和または否定排他的論理和を求めることにより、上記出現頻度が高い値のビット反転を抑制した被マスクパターンを生成する論理演算手段と、上記マスクパターンに対応付けた上記被マスクパターンを連結パターンとして、ニューラルネットワークを用いた連想記憶モデルにて学習させる学習手段と、を備えたことを特徴とする。   In order to achieve such an object, an image recognition device of the present invention is an image recognition device including at least a storage unit and a control unit, and the control unit is based on a plurality of designated original patterns of images. A mask generating means for generating a mask pattern that is a random binary pattern with an allocation probability that suppresses inversion of a bit that has a high appearance frequency in the original pattern, and the original pattern and the mask pattern are exclusive A logical operation means for generating a masked pattern in which bit inversion of a value having a high appearance frequency is suppressed by obtaining a logical sum or a negative exclusive logical sum, and a concatenated pattern of the masked pattern associated with the mask pattern And learning means for learning with an associative memory model using a neural network.

また、本発明の画像認識装置は、上記記載の画像認識装置において、上記マスク生成手段は、上記元パターンの発火率が0または1に近いほど上記割当確率を小さく設定すること、を特徴とする。   The image recognition apparatus according to the present invention is characterized in that, in the image recognition apparatus described above, the mask generation unit sets the allocation probability to be smaller as the firing rate of the original pattern is closer to 0 or 1. .

また、本発明の画像認識装置は、上記記載の画像認識装置において、上記マスク生成手段は、以下の式に基づいて上記割当確率を求めること、を特徴とする。
Moreover, the image recognition apparatus of the present invention is characterized in that, in the above-described image recognition apparatus, the mask generation means obtains the allocation probability based on the following equation.

また、本発明の画像認識装置は、上記記載の画像認識装置において、上記マスク生成手段は、上記元パターンの発火率が0または1に近いほど、また、上記複数の元パターン間の相関が小さいほど、上記割当確率を小さく設定すること、を特徴とする。   In the image recognition apparatus according to the present invention, in the image recognition apparatus described above, the mask generation unit has a smaller correlation between the plurality of original patterns as the firing rate of the original pattern is closer to 0 or 1. As described above, the allocation probability is set to be small.

また、本発明の画像認識装置は、上記記載の画像認識装置において、上記論理演算手段は、上記複数の画像のうち上記元パターン中の任意の数のビットごとに共通した上記マスクパターンを設定して、上記被マスクパターンを作成すること、を特徴とする。   In the image recognition apparatus of the present invention, in the image recognition apparatus described above, the logic operation unit sets the mask pattern common to any number of bits in the original pattern among the plurality of images. And creating the mask pattern.

また、本発明の画像認識装置は、上記記載の画像認識装置において、上記論理演算手段は、上記複数の画像による長さNの上記元パターンを、先頭からL−1個ずつのブロック単位に区切り、ブロック毎に値が異なる上記マスクパターンを設定して、LN/(L−1)の長さの上記連結パターンを生成すること、を特徴とする。   The image recognition apparatus according to the present invention is the image recognition apparatus described above, wherein the logical operation means divides the original pattern of length N by the plurality of images into L-1 blocks from the beginning. The mask pattern having a different value for each block is set, and the connected pattern having a length of LN / (L-1) is generated.

また、本発明の画像認識装置は、上記記載の画像認識装置において、上記マスク生成手段は、上記ブロック毎に値が異なる上記マスクパターンを設定するために、上記割当確率pから、以下の式に基づいて、上記ブロック内のビット列を反転させる振り分け確率gを求めること、を特徴とする。
In the image recognition apparatus according to the present invention, in the image recognition apparatus described above, the mask generation means sets the mask pattern having a different value for each block from the allocation probability p to the following equation: Based on this, the distribution probability g for inverting the bit string in the block is obtained.

また、本発明の画像認識装置は、上記記載の画像認識装置において、上記論理演算手段は、上記画像の一次元二値データを上記元パターンとして、同じまたは短い長さの上記元パターンに基づく上記割当確率の上記ランダムな二値データを上記マスクパターンとして、両データの対応する値同士の排他的論理和または否定排他的論理和を求めることにより上記被マスクパターンを生成すること、を特徴とする。   The image recognition apparatus according to the present invention is the image recognition apparatus described above, wherein the logical operation means uses the one-dimensional binary data of the image as the original pattern and is based on the original pattern having the same or short length. Using the random binary data of the allocation probability as the mask pattern, and generating the masked pattern by obtaining an exclusive OR or a negative exclusive OR of corresponding values of both data. .

また、本発明の画像認識装置は、上記記載の画像認識装置において、上記学習手段は、上記マスクパターンを上記記憶部に格納し、上記論理演算手段は、指定された、手がかり画像である照合パターンに対して、上記記憶部に記憶された複数の上記マスクパターンの一つを用いて上記排他的論理和または上記否定排他的論理和を求めることにより、マスク化照合パターンを生成し、上記制御部は、上記マスク化照合パターンを上記連想記憶モデルに導入して収束するまで状態更新を繰り返し、収束状態のエネルギー関数の値が閾値以下の結果を得られない場合は、別の上記マスクパターンによるマスク化照合パターンを試行することにより、元パターンを探索する想起手段、を更に備えたことを特徴とする。   In the image recognition apparatus according to the present invention, in the image recognition apparatus described above, the learning unit stores the mask pattern in the storage unit, and the logical operation unit is a matching pattern that is a designated clue image. On the other hand, a masked collation pattern is generated by obtaining the exclusive OR or the negative exclusive OR using one of the plurality of mask patterns stored in the storage unit, and the control unit Repeats the state update until the masked matching pattern is introduced into the associative memory model and converges, and if the result of the energy function in the converged state is less than the threshold value, a mask with another mask pattern is used. Recollection means for searching for an original pattern by trying a normalized collation pattern is further provided.

また、本発明は画像認識方法に関するものであり、本発明の画像認識方法は、少なくとも記憶部と制御部を備えたコンピュータにおいて実行される画像認識方法であって、上記制御部において、指定された複数の画像の元パターンに基づいて、二値のうち上記元パターンにおいて出現頻度が高いビットの反転を抑制する割当確率でランダムな二値パターンであるマスクパターンを生成するマスク生成ステップと、上記元パターンと上記マスクパターンとの排他的論理和または否定排他的論理和を求めることにより、上記出現頻度が高い値のビット反転を抑制した被マスクパターンを生成する論理演算ステップと、上記マスクパターンに対応付けた上記被マスクパターンを連結パターンとして、ニューラルネットワークを用いた連想記憶モデルにて学習させる学習ステップと、を含むことを特徴とする。   The present invention also relates to an image recognition method. The image recognition method of the present invention is an image recognition method executed in a computer having at least a storage unit and a control unit, and is designated by the control unit. A mask generation step for generating a mask pattern that is a random binary pattern with an allocation probability that suppresses inversion of a bit having a high appearance frequency in the original pattern based on the original pattern of a plurality of images; Corresponding to the mask pattern, a logical operation step for generating a masked pattern in which bit inversion of the value having a high appearance frequency is suppressed by calculating an exclusive OR or a negative exclusive OR of the pattern and the mask pattern Associative memory model using a neural network with the masked pattern attached as a connected pattern Characterized in that it comprises a learning step of learning Te.

また、本発明はプログラムに関するものであり、本発明のプログラムは、少なくとも記憶部と制御部を備えたコンピュータに実行させるためのプログラムであって、上記制御部において、指定された複数の画像の元パターンに基づいて、二値のうち上記元パターンにおいて出現頻度が高いビットの反転を抑制する割当確率でランダムな二値パターンであるマスクパターンを生成するマスク生成ステップと、上記元パターンと上記マスクパターンとの排他的論理和または否定排他的論理和を求めることにより、上記出現頻度が高い値のビット反転を抑制した被マスクパターンを生成する論理演算ステップと、上記マスクパターンに対応付けた上記被マスクパターンを連結パターンとして、ニューラルネットワークを用いた連想記憶モデルにて学習させる学習ステップと、を実行させることを特徴とする。   The present invention also relates to a program. The program of the present invention is a program for causing a computer including at least a storage unit and a control unit to execute the program. A mask generation step of generating a mask pattern that is a random binary pattern with an allocation probability that suppresses inversion of a bit having a high appearance frequency in the original pattern among the binary values based on the pattern, and the original pattern and the mask pattern A logical operation step of generating a masked pattern in which bit inversion of a value having a high appearance frequency is suppressed by obtaining an exclusive OR or a negative exclusive OR, and the masked mask associated with the mask pattern Learning with an associative memory model using neural networks, with patterns as connected patterns A learning step of, characterized in that for the execution.

また、本発明は記録媒体に関するものであり、上記記載のプログラムを記録したことを特徴とする。   The present invention also relates to a recording medium, wherein the program described above is recorded.

この発明によれば、指定された複数の画像の元パターンに基づいて、二値のうち上記元パターンにおいて出現頻度が高いビットの反転を抑制する割当確率でランダムな二値パターンであるマスクパターンを生成し、元パターンとマスクパターンとの排他的論理和または否定排他的論理和を求めることにより、出現頻度が高い値のビット反転を抑制した被マスクパターンを生成し、マスクパターンに対応付けた被マスクパターンを連結パターンとして、ニューラルネットワークを用いた連想記憶モデルにて学習させる。これにより、元の画像はマスクパターンによって乱雑化され、画像のパターン間の相関が小さくなるので、干渉の発生を防ぎ記憶容量の低下を抑えることができるという効果を奏する。また、上記の乱雑化を行うとともに、マスクパターンを元パターンに基づいて作成する際に、元パターンが有するスパース性を一部保持するようにランダムなマスクパターンを作成するので、連想記憶モデルが本来有する、スパース性による記憶容量増加の効果が得られる。また、重みが極端な値を取らないのでハードウェアの実装に都合がよい。   According to the present invention, based on the original patterns of a plurality of designated images, a mask pattern that is a random binary pattern with an allocation probability that suppresses inversion of bits that frequently occur in the original pattern among the binary values. Generating a masked pattern in which bit inversion of a value having a high appearance frequency is suppressed by obtaining an exclusive OR or a negative exclusive OR of the original pattern and the mask pattern, and generating a mask pattern associated with the mask pattern. A mask pattern is used as a connection pattern, and learning is performed using an associative memory model using a neural network. As a result, the original image is messed up by the mask pattern, and the correlation between the image patterns is reduced, so that the occurrence of interference can be prevented and the reduction in storage capacity can be suppressed. In addition to performing the above randomization, when creating a mask pattern based on the original pattern, a random mask pattern is created so as to retain a part of the sparsity of the original pattern. The effect of increasing the storage capacity due to sparsity can be obtained. Also, since the weight does not take an extreme value, it is convenient for hardware implementation.

また、本発明によれば、マスクパターンを元パターンに基づいて作成する際に、元パターンの発火率が0または1に近いほど割当確率を小さく設定するので、スパース性が大きいほど乱雑化を抑えることにより、乱雑化によるパターン間の相関低下という効果を得つつ、適切にスパース性を保持することができるという効果を奏する。   Also, according to the present invention, when creating a mask pattern based on the original pattern, the allocation probability is set to be smaller as the firing rate of the original pattern is closer to 0 or 1, so that the greater the sparsity, the less the randomness. Thus, there is an effect that the sparsity can be appropriately maintained while obtaining the effect of decreasing the correlation between patterns due to randomization.

また、本発明によれば、マスクパターンを元パターンに基づいて作成する際に、以下の式に基づいて割当確率を求めるので、元パターンの発火率に基づいて簡単な計算で適切な割当確率を算出することができるという効果を奏する。
Further, according to the present invention, when creating a mask pattern based on the original pattern, the allocation probability is obtained based on the following formula, so that an appropriate allocation probability can be obtained by simple calculation based on the firing rate of the original pattern. There is an effect that it can be calculated.

また、本発明によれば、マスクパターンを元パターンに基づいて作成する際に、元パターンの発火率が0または1に近いほど、また、複数の元パターン間の相関が小さいほど、割当確率を小さく設定するので、パターン間の相関が大きく、スパース性が小さい場合には、乱雑化による記憶容量の増加を優先しつつ、パターン間の相関が小さく、スパース性が大きい場合には、スパース性の維持による記憶容量の増加を優先することで、記憶容量の増加を図ることができるという効果を奏する。   Further, according to the present invention, when the mask pattern is created based on the original pattern, the allocation probability becomes smaller as the firing rate of the original pattern is closer to 0 or 1, and as the correlation between the plurality of original patterns is smaller. Since the correlation between patterns is large and sparsity is small, priority is given to increase in storage capacity due to randomization, while when the correlation between patterns is small and sparsity is large, the sparsity By giving priority to the increase in the storage capacity due to the maintenance, it is possible to increase the storage capacity.

また、本発明によれば、複数の画像の元パターン中の任意の数のビットごとに共通したマスクパターンを設定して、被マスクパターンを作成するので、マスクパターンの部分が増えることによる連結パターンの延長を抑えることができ、記憶容量の低下を抑えることができるという効果を奏する。   Further, according to the present invention, a mask pattern is created by setting a common mask pattern for each arbitrary number of bits in the original pattern of a plurality of images. It is possible to suppress the extension of the storage capacity and to suppress the decrease in the storage capacity.

また、本発明によれば、複数の画像による長さNの元パターンを、先頭からL−1個ずつのブロック単位に区切り、ブロック毎に値が異なるマスクパターンを設定して、LN/(L−1)の長さの連結パターンを生成する。これにより、本発明は、マスクパターンをブロック単位で設定して、連結パターンの延長を抑えることができ、記憶容量の低下を抑えることができるという効果を奏する。   Further, according to the present invention, an original pattern of length N by a plurality of images is divided into L-1 blocks from the beginning, and mask patterns having different values for each block are set, and LN / (L -1) is generated. As a result, the present invention has the effect that the mask pattern can be set in units of blocks, the extension of the connection pattern can be suppressed, and the reduction in storage capacity can be suppressed.

また、本発明によれば、ブロック毎に値が異なるマスクパターンを設定するために、割当確率pから、以下の式に基づいて、ブロック内のビット列を反転させる振り分け確率gを求めることにより、ビットを反転させるブロックを割当確率から適切に求めることができるという効果を奏する。
Further, according to the present invention, in order to set a mask pattern having a different value for each block, a distribution probability g for inverting the bit string in the block is obtained from the allocation probability p based on the following expression, There is an effect that it is possible to appropriately obtain a block that inverts from the allocation probability.

また、本発明によれば、画像の一次元二値データを元パターンとして、同じまたは短い長さの元パターンに基づく割当確率のランダムな二値データをマスクパターンとして、両データの対応する値同士の排他的論理和または否定排他的論理和を求めることにより被マスクパターンを生成するので、簡単な計算で元画像間の相関を小さくすることができるという効果を奏する。   In addition, according to the present invention, the corresponding values of both data are obtained by using one-dimensional binary data of an image as an original pattern and random binary data of an allocation probability based on the same or short original pattern as a mask pattern. Since the masked pattern is generated by obtaining the exclusive OR or the negative exclusive OR, there is an effect that the correlation between the original images can be reduced by a simple calculation.

また、本発明によれば、指定された、手がかり画像である照合パターンに対して、記憶部に記憶された複数のマスクパターンの一つを用いて排他的論理和または否定排他的論理和を求めることにより、マスク化照合パターンを生成し、マスク化照合パターンを連想記憶モデルに導入して収束するまで状態更新を繰り返し、収束状態のエネルギー関数の値が閾値以下の結果を得られるまで、別のマスクパターンによるマスク化照合パターンを試行して、元パターンを探索する。これにより、本発明は、マスクパターンが分からない場合であっても、照合パターンから対応する正解パターン候補を探し出すことができるという効果を奏する。   Further, according to the present invention, an exclusive OR or a negative exclusive OR is obtained for one of the specified mask patterns stored in the storage unit with respect to a matching pattern that is a cue image. To generate a masked collation pattern, repeat the state update until the masked collation pattern is introduced into the associative memory model and converge, and another result is obtained until the energy function value of the convergence state is equal to or less than the threshold value. The masked collation pattern by the mask pattern is tried to search for the original pattern. Thereby, even if it is a case where a mask pattern is not known, this invention has an effect that the corresponding correct pattern candidate can be searched from a collation pattern.

図1は、連想記憶モデルの記銘段階を模式的に示した図である。FIG. 1 is a diagram schematically showing the memorizing stage of the associative memory model. 図2は、連想記憶モデルの想起段階を模式的に示す図である。FIG. 2 is a diagram schematically showing the recall stage of the associative memory model. 図3は、互いに相関が小さいパターンを記憶させる場合を模式的に示した図である。FIG. 3 is a diagram schematically showing a case where patterns having a small correlation with each other are stored. 図4は、互いに相関が大きいパターンを記憶させる場合を模式的に示した図である。FIG. 4 is a diagram schematically showing a case where patterns having a large correlation with each other are stored. 図5は、元パターンとマスクパターンと被マスクパターンと連結パターンの関係を示す図である。FIG. 5 is a diagram illustrating a relationship among the original pattern, the mask pattern, the mask pattern, and the connection pattern. 図6は、XNOR演算およびXOR演算の一例を示す図である。FIG. 6 is a diagram illustrating an example of the XNOR operation and the XOR operation. 図7は、連結パターンの一例を示す図である。FIG. 7 is a diagram illustrating an example of a connection pattern. 図8は、ブロック単位に異なるマスクパターンrを設定した連結パターンの一例を示す図である。Figure 8 is a diagram showing an example of connection pattern of the specified mask pattern r k different for each block. 図9は、スパースなパターンとスパースでないパターンを模式的に示す図である。FIG. 9 is a diagram schematically showing a sparse pattern and a non-sparse pattern. 図10は、本実施の形態によりスパース性を一部保持したまま乱雑化させて被マスクパターンを生成する処理を模式的に示した図である。FIG. 10 is a diagram schematically showing a process of generating a mask pattern by randomizing while maintaining a part of sparsity according to the present embodiment. 図11は、ビット「1」が少数派の場合のXOR演算の一例を示す図である。FIG. 11 is a diagram illustrating an example of the XOR operation when the bit “1” is a minority group. 図12は、ビット「0」が少数派の場合のXNOR演算の一例を示す図である。FIG. 12 is a diagram illustrating an example of an XNOR operation when the bit “0” is a minority. 図13は、ビット「1」が少数派の場合のブロック処理の一例を示す図である。FIG. 13 is a diagram illustrating an example of block processing when the bit “1” is a minority group. 図14は、ビット「0」が少数派の場合のブロック処理の一例を示す図である。FIG. 14 is a diagram illustrating an example of block processing when the bit “0” is a minority. 図15は、本実施の形態が適用される画像認識装置100の一例を示すブロック図である。FIG. 15 is a block diagram illustrating an example of the image recognition apparatus 100 to which the present exemplary embodiment is applied. 図16は、元パターンの発火率fと相関bに対して、最適な割当確率pを示したグラフである。FIG. 16 is a graph showing the optimal allocation probability p with respect to the firing rate f and correlation b of the original pattern. 図17は、元パターンの発火率fと相関bに対して最適な割当確率pを設定した場合の記憶容量を示した図である。FIG. 17 is a diagram showing the storage capacity when the optimal allocation probability p is set for the firing rate f and correlation b of the original pattern. 図18は、本実施の形態における画像認識装置100の基本処理の一例を示すフローチャートである。FIG. 18 is a flowchart illustrating an example of basic processing of the image recognition apparatus 100 in the present embodiment. 図19は、本実施の形態における画像認識装置100の学習処理の一例を示すフローチャートである。FIG. 19 is a flowchart illustrating an example of learning processing of the image recognition apparatus 100 according to the present embodiment. 図20は、本実施の形態における画像認識装置100の想起処理の一例を示すフローチャートである。FIG. 20 is a flowchart illustrating an example of the recall process of the image recognition apparatus 100 according to the present embodiment. 図21は、本実施の形態における画像認識装置100の系列連想記憶モデルを用いた想起処理の一例を示すフローチャートである。FIG. 21 is a flowchart illustrating an example of the recall process using the series associative memory model of the image recognition apparatus 100 according to the present embodiment.

以下に、本発明にかかる画像認識装置、画像認識方法、および、プログラムの実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。例えば、本実施の形態に示す連想記憶モデルに限らず、様々な連想記憶モデルに本発明を適用してもよい。また、以下の実施の形態では、連想記憶モデルとして自己連想記憶モデルを例に説明する場合があるが、これに限られず、系列連想記憶モデル等に適用してもよい。また、連想記憶モデルは、ニューラルネットワークの動態は確率論的であっても決定論的であってもよい。また、本実施の形態において、ニューラルネットワークの結合が密な場合(例えば、全ての神経細胞ユニットが互いに結合しているネットワーク)を例にして説明することがあるが、これに限られず、結合が疎なニューラルネットワークを用いてもよい。   Embodiments of an image recognition apparatus, an image recognition method, and a program according to the present invention will be described below in detail with reference to the drawings. Note that the present invention is not limited to the embodiments. For example, the present invention may be applied to various associative memory models as well as the associative memory model shown in the present embodiment. In the following embodiments, a self-associative memory model may be described as an example of an associative memory model. However, the present invention is not limited to this and may be applied to a sequence associative memory model. In the associative memory model, the dynamics of the neural network may be either stochastic or deterministic. In the present embodiment, there is a case where the neural network is tightly coupled (for example, a network in which all nerve cell units are coupled to each other). However, the present invention is not limited to this, and the coupling is not limited to this. A sparse neural network may be used.

[本発明の実施の形態の概要]
以下、本発明の実施の形態の概要について図1〜図14を参照して説明し、その後、本実施の形態の構成および処理等について詳細に説明する。ここで、図1は、連想記憶モデルの記銘段階を模式的に示した図である。
[Outline of Embodiment of the Present Invention]
Hereinafter, an outline of an embodiment of the present invention will be described with reference to FIGS. 1 to 14, and then the configuration, processing, and the like of the present embodiment will be described in detail. Here, FIG. 1 is a diagram schematically showing the memorizing stage of the associative memory model.

連想記憶モデルとは、神経回路網(ニューラルネットワーク)モデルの一種である。連想記憶モデルの一種である、ホップフィールド・ネットワークは、1982年にHopfieldによって提唱されたニューラルネットワークの一モデルである。一例として図1に示すように、神経細胞(ニューロン)ユニットが結合されたニューラルネットワークを構築しておき、神経細胞ユニット間で相互作用させる。神経細胞ユニット間の結合の強さは重み(結合係数)として表現され、学習により強度が増減する。   An associative memory model is a kind of neural network model. The Hopfield network, which is a type of associative memory model, is a model of a neural network proposed by Hopfield in 1982. As an example, as shown in FIG. 1, a neural network in which nerve cell (neuron) units are coupled is constructed and interacts between nerve cell units. The strength of connection between nerve cell units is expressed as a weight (connection coefficient), and the strength increases or decreases by learning.

図1では、ニューラルネットワークに、4つのパターンの二値画像を記憶させる記銘段階が模式的に示されている。自己連想記憶モデルの記銘段階では、複数の記憶パターンを記憶させて、想起段階では、その中から1つのパターンを想起させるものである。ネットワークにおける各神経細胞ユニットは、結合する他の神経細胞ユニットからの入力の総和によって、発火するか否かが決まる。自己連想記憶モデルにおける記憶パターンとは、神経細胞ユニットの活動状態(典型的には、発火状態と休止状態の二種類)の並び方のことである。ホップフィールドのモデルでは、記銘段階で、シナプス結合の重みを特定の学習則(Hebb則等)に従い定めることで、記憶パターンは、ニューラルネットワークに記憶される。また、想起段階で、ネットワークの状態を表すエネルギー関数が状態更新則に従って単調に減少し、極小値状態に至るまで繰り返し更新処理が実行される。図2は、連想記憶モデルの想起段階を模式的に示す図である。   FIG. 1 schematically shows an inscription stage for storing a binary image of four patterns in a neural network. In the memorization stage of the self-associative memory model, a plurality of memory patterns are stored, and in the recall stage, one pattern is recalled. Whether or not each neuron unit in the network is fired is determined by the sum of inputs from other neuron units to be connected. The memory pattern in the auto-associative memory model is a way of arranging the activity states of neuronal cell units (typically, two types of firing state and resting state). In the Hopfield model, the memory pattern is stored in the neural network by determining the weight of the synapse connection according to a specific learning rule (such as the Hebb rule) at the inscription stage. Further, at the recall stage, the energy function representing the network state monotonously decreases according to the state update rule, and the update process is repeatedly executed until a minimum value state is reached. FIG. 2 is a diagram schematically showing the recall stage of the associative memory model.

図2に示すように、自己連想記憶モデルの想起段階では、手がかりとなる照合パターンから、ニューラルネットワークに記憶された元のパターンを探索し、想起されたパターンを得る。より具体的には、記憶パターンを取り出す際には、まず、ニューラルネットワークに手がかりとなる初期パターンを与え、次に、ニューラルネットワークの状態を特定の規則に従い複数回更新することにより、所望の記憶パターンを得る。なお、手がかりパターンは、元のパターンそのものでなくともよく、求めたいパターンの一部を乱したものであってもよい。すなわち、自己連想記憶モデルでは、入力として与えた手がかりパターンと最も似ている記憶済みのパターンが得られる。   As shown in FIG. 2, in the recall stage of the self-associative memory model, the original pattern stored in the neural network is searched from the collation pattern serving as a clue to obtain the recalled pattern. More specifically, when retrieving a memory pattern, first, an initial pattern as a clue is given to the neural network, and then a desired memory pattern is updated by updating the state of the neural network a plurality of times according to a specific rule. Get. Note that the clue pattern does not have to be the original pattern itself, but may be a part of the pattern desired to be obtained. That is, in the self-associative memory model, a stored pattern that is most similar to the cue pattern given as an input is obtained.

ネットワークにおけるニューロンの数(神経細胞ユニット数)Nが増えるほど記憶できるパターン数は増えるが、パターン間の相関によって記憶できるパターンの数に限界がある。自己連想記憶モデルが覚えられるパターン数を記憶容量と呼ぶ。理論的な記憶容量の上限として、標準的な学習則や状態更新則を用いた場合には、ニューラルネットワークおよび記憶パターンの大きさNに対して、およそ0.14N程度であることが知られているが、実際には、記憶パターンの相関に大きく影響される。ここで、図3は、互いに相関が小さいパターンを記憶させる場合を、図4は、互いに相関が大きいパターンを記憶させる場合を模式的に示した図である。   The number of patterns that can be stored increases as the number of neurons (number of neuronal cell units) N in the network increases, but the number of patterns that can be stored is limited by the correlation between patterns. The number of patterns in which the self-associative memory model can be remembered is called memory capacity. It is known that when a standard learning rule or state update rule is used as the upper limit of the theoretical storage capacity, it is about 0.14 N with respect to the size N of the neural network and the storage pattern. However, in reality, it is greatly influenced by the correlation of the storage patterns. Here, FIG. 3 is a diagram schematically showing a case where patterns having a small correlation are stored, and FIG. 4 is a diagram schematically showing a case where patterns having a high correlation are stored.

図3に示すように、記憶パターンがランダムなパターンであって、互いに相関が小さい場合は、理論的な限界に近い0.14Nの記憶容量が得られる。さらに、記憶パターンが無相関かつスパースである場合(各ビットの値の出現頻度が二値のいずれか一方に大きく偏っている場合)には記憶容量がより増加することが一般に知られている。しかしながら、図4に示すように、記憶パターンがスパースである場合もそうでない場合も、互いに似通ったパターンを記憶させる場合、記憶パターン間の相関が大きいために、互いに干渉して、一般に記憶容量は著しく低下してしまう。   As shown in FIG. 3, when the storage pattern is a random pattern and the correlation is small, a storage capacity of 0.14N close to the theoretical limit can be obtained. Furthermore, it is generally known that the storage capacity is further increased when the storage pattern is uncorrelated and sparse (when the appearance frequency of each bit value is greatly biased to one of the binary values). However, as shown in FIG. 4, whether the storage pattern is sparse or not, when similar patterns are stored, the correlation between the storage patterns is large, so that the storage capacity generally increases. It will drop significantly.

従来、この記憶容量の低下の問題に対して、(1)擬似逆行列を用いたり逐次的に重みを調節したりすることによって学習則を改善する方法、(2)末尾にビットを足したりビットの一部を変更したりすることによってパターン自体に変更を加える方法等が提案されている。しかし、従来の手法はいずれも計算負荷が大きいため、神経回路網および記憶パターンの大きさNが大きい場合には適用することが困難であった。   Conventionally, (1) a method of improving a learning rule by using a pseudo inverse matrix or sequentially adjusting weights, and (2) adding a bit to the end or a bit against the problem of a decrease in storage capacity. A method of changing a pattern itself by changing a part of the pattern has been proposed. However, since all of the conventional methods have a large calculation load, it is difficult to apply when the size N of the neural network and the storage pattern is large.

そこで、本願の発明者らが鋭意検討を行い、以下の新手法を開発するに至った。一例として、新手法は、(1)記憶パターン(元パターン)に対してマスクパターンを用意し、(2)記憶パターンとマスクパターンのXNOR演算またはXOR演算により被マスクパターンを生成し、(3)マスクパターンと被マスクパターンを連結した連結パターンを神経回路網に記憶させることを基本的な要素としている。このようにマスクパターンを用いて乱雑化することにより、記憶させるパターンを擬似的に直交化して、相関による記憶容量の低下を抑えることができる。ここで、図5は、元パターンとマスクパターンと被マスクパターンと連結パターンの関係を示す図である。   Therefore, the inventors of the present application have made extensive studies and have developed the following new method. As an example, the new method (1) prepares a mask pattern for a storage pattern (original pattern), (2) generates a masked pattern by XNOR operation or XOR operation of the storage pattern and the mask pattern, and (3) The basic element is to store a connected pattern obtained by connecting a mask pattern and a mask pattern in a neural network. In this way, by using the mask pattern for randomization, the pattern to be stored can be pseudo-orthogonalized, and the reduction in storage capacity due to correlation can be suppressed. Here, FIG. 5 is a diagram illustrating the relationship among the original pattern, the mask pattern, the mask pattern, and the connection pattern.

二値の信号列を乱雑化する目的でXOR演算あるいはXNOR演算を行う。図5に示すように、原理としては、元の信号列(元パターン)と、それをマスクするための(擬似)乱数列(ランダムマスク)を用意し、両者のXOR演算ないしXNOR演算を行うことで、乱雑な信号列(被マスクパターン)が得られる。これにより、記憶パターンが乱雑化して相関が小さくなり、パターン間の干渉を低減して、記憶容量の低下を防ぐことができる。   An XOR operation or XNOR operation is performed for the purpose of randomizing the binary signal sequence. As shown in FIG. 5, as a principle, an original signal sequence (original pattern) and a (pseudo) random number sequence (random mask) for masking it are prepared, and XOR operation or XNOR operation of both is performed. Thus, a messy signal sequence (masked pattern) is obtained. As a result, the storage pattern becomes confused and the correlation becomes small, interference between patterns can be reduced, and a reduction in storage capacity can be prevented.

より具体的には、本発明の実施の形態は、(1)ランダムな二値パターン(ランダムマスク)のマスクパターンを生成する。   More specifically, the embodiment of the present invention generates a mask pattern of (1) a random binary pattern (random mask).

そして、本実施の形態は、(2)指定された複数の画像の元パターンとマスクパターンとの排他的論理和(XOR)または否定排他的論理和(XNOR)を求めることにより被マスクパターンを生成する。なお、マスクパターンや1番目の連結パターンは記憶部に格納してもよい。一例として、本実施の形態は、画像の一次元二値データを元パターンとして、同じまたは短い長さのランダムな二値データをマスクパターンとして、両データの対応する値同士の排他的論理和(XOR)または否定排他的論理和(XNOR)を求めることにより被マスクパターンを生成する。ここで、図6は、XNOR演算およびXOR演算の一例を示す図である。   In this embodiment, (2) a masked pattern is generated by obtaining an exclusive OR (XOR) or a negative exclusive OR (XNOR) of the original pattern of a plurality of designated images and the mask pattern. To do. The mask pattern and the first connection pattern may be stored in the storage unit. As an example, the present embodiment uses an exclusive OR of values corresponding to both data using one-dimensional binary data of an image as an original pattern and random binary data of the same or short length as a mask pattern. XOR) or negative exclusive OR (XNOR) is obtained to generate a masked pattern. Here, FIG. 6 is a diagram illustrating an example of the XNOR operation and the XOR operation.

元パターン(Input1)とマスクパターン(Input2)として{0,1}の二値データを用いる場合、図6(a)に示すXNOR演算を行い、被マスクパターンの値(Output)を得る。なお、二値データは、いずれの2つの値であってもよく、一例として、元パターン(Original)とマスクパターン(Mask)として{1,−1}の二値データを用いる場合、図6(b)に示すXNOR演算を行い、被マスクパターンの値(Masked)を得てもよい。この場合のXNOR演算は、元パターンrとマスクパターンξを掛け合わせたものr×ξに相当する。 When binary data of {0, 1} is used as the original pattern (Input1) and the mask pattern (Input2), the XNOR operation shown in FIG. 6A is performed to obtain the masked pattern value (Output). The binary data may be any two values. For example, when binary data of {1, −1} is used as the original pattern (Original) and the mask pattern (Mask), FIG. The XNOR operation shown in b) may be performed to obtain the masked pattern value (Masked). The XNOR calculation in this case corresponds to the product of the original pattern r i and the mask pattern ξ i multiplied by r i × ξ i .

一方のXOR演算では、元パターン(Input1)とマスクパターン(Input2)が{0,1}の二値データを用いる場合、図6(c)に示すXOR演算を行い、被マスクパターンの値(Output)を得る。この場合も、二値データは、いずれの2つの値であってもよく、一例として、元パターン(Original)とマスクパターン(Mask)が{1,−1}の二値データを用いる場合、図6(d)に示すXOR演算を行い、被マスクパターンの値(Masked)を得てもよい。この場合のXOR演算は、元パターンrとマスクパターンξを掛け合わせ符号を入れ替えたもの−r×ξに相当する。 In one XOR operation, when binary data whose original pattern (Input1) and mask pattern (Input2) are {0, 1} is used, the XOR operation shown in FIG. 6C is performed, and the value of the masked pattern (Output) ) Also in this case, the binary data may be any two values. As an example, when binary data having an original pattern (Original) and a mask pattern (Mask) of {1, -1} is used, The value of the masked pattern (Masked) may be obtained by performing the XOR operation shown in FIG. The XOR operation in this case corresponds to a value obtained by multiplying the original pattern r i and the mask pattern ξ i and exchanging the signs, −r i × ξ i .

つづいて、記銘段階では、本実施の形態は、(3)マスクパターンに対応付けた被マスクパターンを連結パターンとして、ニューラルネットワークを用いた連想記憶モデルにて学習させる。なお、連結パターン中のビットの並べ方は、いずれの順序であってもよい。また、連結パターンは、元パターンの情報を完全に保持している。なぜなら、マスクパターンと被マスクパターンのペアに対して再度、同じ論理演算(XNOR/XOR)を行うと、元のパターンが復元できるからである。ここで、図7は、連結パターンの一例を示す図である。   Subsequently, in the memorizing stage, the present embodiment (3) learns by using an associative memory model using a neural network with a mask pattern associated with the mask pattern as a connected pattern. The order of bits in the connection pattern may be any order. Moreover, the connection pattern completely holds the information of the original pattern. This is because the original pattern can be restored by performing the same logical operation (XNOR / XOR) on the mask pattern / masked pattern pair again. Here, FIG. 7 is a diagram illustrating an example of a connection pattern.

一例として図7に示すように、本実施の形態は、一つ一つの元パターンξに対して異なるマスクパターンrを用いてXOR/XNOR演算を行った被マスクパターンrξと、マスクパターンrを交互に並べて連結パターンとして記銘させてもよい(kはブロック番号)。この場合、元パターンの長さがNとすると、2Nの長さの連結パターンが生成されることとなる。そのため、必要なニューロン数(神経細胞ユニット数)は倍増する。 As shown in FIG. 7 as an example, the present embodiment, and the object to be mask pattern r k xi] k performing the XOR / XNOR operation using the mask pattern r k different for each one of the original pattern xi] k, may be allowed to memorization as connection pattern of the mask pattern r k alternately arranged (k is the block number). In this case, if the length of the original pattern is N, a connected pattern having a length of 2N is generated. Therefore, the number of necessary neurons (number of nerve cell units) doubles.

そこで、複数の元パターンをブロック単位で区切って、ブロック単位ごとに異なるマスクパターン(ランダムマスク等)を設定して、連結パターンの長さを抑えてもよい。すなわち、マスクパターンのビット数を元パターンよりも少なく用意し、同一の要素(マスク)を複数回のXNOR演算に続けて使用することで、連結パターンの長さを2Nより短くしてもよい。ここで、図8は、ブロック単位に異なるマスクパターンrを設定した連結パターンの一例を示す図である。図8に示すように、本実施の形態は、複数の画像の元パターンを、先頭からL−1個ずつのブロック単位(マスクパターンを入れて長さLのブロック)に区切り、ブロック毎に値が異なるマスクパターンを設定して、LN/(L−1)の長さの連結パターンを生成してもよい。図7の場合は、必要なニューロン数(神経細胞ユニット数)が2倍となるが、図8に示すようにブロック長をLとすることによりL/(L−1)倍に抑えられる。 Therefore, a plurality of original patterns may be divided in units of blocks, and different mask patterns (such as random masks) may be set for each block unit to reduce the length of the connection pattern. That is, the length of the connected pattern may be made shorter than 2N by preparing a smaller number of bits of the mask pattern than the original pattern and using the same element (mask) following a plurality of XNOR operations. Here, FIG. 8 is a diagram showing an example of connection pattern of the specified mask pattern r k different for each block. As shown in FIG. 8, in this embodiment, the original pattern of a plurality of images is divided into L-1 block units (blocks of length L including a mask pattern) from the top, and a value is obtained for each block. May be set to generate a connected pattern having a length of LN / (L-1). In the case of FIG. 7, the number of necessary neurons (number of neuronal cell units) is doubled, but by setting the block length to L as shown in FIG. 8, the number can be suppressed to L / (L-1) times.

なお、記銘段階に続く想起段階では、通常、手がかりとなる入力パターンから、ニューラルネットワークに記憶された元のパターンを探索し、想起されたパターンを得るが、本実施の形態を適用した場合には、照合パターンに対応するマスクパターンが未知である。そのため、本実施の形態では、手がかり画像である照合パターンに対して、試行により記憶部に記憶された複数のマスクパターンの一つを用いて、排他的論理和(XOR)または否定排他的論理和(XNOR)を求めることにより、マスク化照合パターンを生成し、このマスク化照合パターンを用いて、元のパターンを導出してもよい。すなわち、マスク化照合パターンを連想記憶モデルに導入して収束するまで状態更新を繰り返し、収束状態のエネルギー関数の値が閾値以下の結果を得られた場合に、想起結果のパターンを得てもよい。なお、エネルギー関数の値が閾値以下にならない場合は、別のマスクパターンによるマスク化照合パターンを試行する。   In the recall stage following the memorization stage, the original pattern stored in the neural network is usually searched from the input pattern as a clue to obtain the recalled pattern. The mask pattern corresponding to the matching pattern is unknown. Therefore, in the present embodiment, an exclusive OR (XOR) or a negative exclusive OR is used for a matching pattern that is a clue image by using one of a plurality of mask patterns stored in the storage unit by trial. By obtaining (XNOR), a masked matching pattern may be generated, and the original pattern may be derived using this masked matching pattern. In other words, when a masked matching pattern is introduced into the associative memory model and state update is repeated until convergence, a pattern of recall results may be obtained when the energy function value in the convergence state is less than or equal to the threshold value. . If the value of the energy function does not fall below the threshold value, a masked collation pattern using another mask pattern is tried.

以上は、元パターンがスパースではなく、したがってスパース性を考慮せずにマスクパターンを生成して、元パターンの乱雑化を行う態様を示したものである。ここで、本実施の形態は、元パターンがスパースである場合は、元パターンの値に応じてマスクパターンを調整することにより、元パターンのスパース性が一部保持されるように制御する。ここで、図9は、スパースなパターンとスパースでないパターンを模式的に示す図である。   The above shows an aspect in which the original pattern is not sparse, and therefore the mask pattern is generated without considering the sparsity and the original pattern is randomized. Here, in the present embodiment, when the original pattern is sparse, the mask pattern is adjusted according to the value of the original pattern, thereby controlling the sparseness of the original pattern to be partially retained. Here, FIG. 9 is a diagram schematically showing a sparse pattern and a non-sparse pattern.

図9左図に示すように、各ビットの出現頻度が二値のいずれか一方に大きく偏っているものは、スパースなパターンと呼ばれている。一方、図9右図に示すように、各ビットの出現頻度が概ね均等であるものは、スパースでないパターンと呼ばれている。   As shown in the left diagram of FIG. 9, a pattern in which the appearance frequency of each bit is greatly biased to one of binary values is called a sparse pattern. On the other hand, as shown in the right diagram of FIG. 9, patterns in which the appearance frequency of each bit is almost equal are called non-sparse patterns.

スパースなパターンの場合、一般に、連想記憶モデルの記憶容量が大きくなることが知られている。しかしながら、上述のように元パターンのスパース性を考慮しないでマスクパターンを生成して元パターンの乱雑化を行った場合には、相関の低下は見込めるものの、スパース性が保持されないので、本来のスパース性による記憶容量の増加分は失われてしまう結果となる。   In the case of a sparse pattern, it is generally known that the storage capacity of an associative memory model increases. However, when the mask pattern is generated without considering the sparsity of the original pattern as described above and the original pattern is messed up, the correlation can be lowered, but the sparsity is not maintained, so that the original sparse As a result, the increase in the storage capacity due to the characteristics is lost.

そこで、本願の発明者らは、鋭意検討により、元パターンのスパース性を保持しつつ、元パターン間の相関も低下させる本発明を完成するに至った。一例として、本願で提案する新手法は、(1)記憶パターン(元パターン)において二値のうち出現頻度が高いビットの反転を抑制する割当確率でランダムなマスクパターンを用意し、(2)記憶パターンとマスクパターンのXNOR演算またはXOR演算により、出現頻度が高い値のビット反転を抑制した被マスクパターンを生成し、(3)マスクパターンと被マスクパターンを連結した連結パターンを神経回路網に記憶させることを基本的な要素とする。ここで、図10は、本実施の形態によりスパース性を一部保持したまま乱雑化させて被マスクパターンを生成する処理を模式的に示した図である。図10に示すように、本実施の形態は、元パターンがスパースならば、スパースな被マスクパターンを得られるように処理を行う。このように、元パターンに応じてマスクパターンを調整することで、少数派のビットについては乱雑化により擬似的な直交化を行いつつ、多数派のビットの反転を抑制して、スパース性を一部維持することにより、一層の記憶容量の増加を図ることができる。   Therefore, the inventors of the present application have completed the present invention through intensive studies to maintain the sparsity of the original pattern and reduce the correlation between the original patterns. As an example, the new method proposed in the present application provides (1) a random mask pattern with an allocation probability that suppresses inversion of a bit having a high appearance frequency among binary values in a storage pattern (original pattern), and (2) storage Generate a masked pattern that suppresses bit inversion of frequently occurring values by XNOR operation or XOR operation of the pattern and mask pattern, and (3) store the connected pattern in which the mask pattern and the masked pattern are connected in the neural network Is a basic element. Here, FIG. 10 is a diagram schematically showing a process of generating a mask pattern by randomizing while maintaining a part of sparsity according to the present embodiment. As shown in FIG. 10, in the present embodiment, if the original pattern is sparse, processing is performed so that a sparse masked pattern can be obtained. In this way, by adjusting the mask pattern according to the original pattern, the minority bits are pseudo-orthogonalized by randomization, while suppressing the inversion of the majority bits, thereby maintaining sparseness. By maintaining the storage unit, it is possible to further increase the storage capacity.

より具体的な元パターンに基づくマスクパターンの調整方法の一例について説明する。ここで、図11は、ビット「1」が少数派の場合のXOR演算の一例を示す図であり、図12は、ビット「0」が少数派の場合のXNOR演算の一例を示す図である。   An example of a mask pattern adjustment method based on a more specific original pattern will be described. FIG. 11 is a diagram illustrating an example of the XOR operation when the bit “1” is the minority group, and FIG. 12 is a diagram illustrating an example of the XNOR operation when the bit “0” is the minority group. .

一例として、図11および図12に示すように、少数派の元ビット(Original bit)に対しては、乱雑化により相関を低下させるために、割当確率を等確率(1/2)としてランダムなマスクビット(Mask bit)を生成してもよい。一方、図11および図12に示すように、多数派の元ビットに対しては、スパース性を保持する目的で、多数派ビットの反転割合が小さくなるような割当確率でマスクビットを生成する。図の例では、元ビットが多数派ならば、割当確率pで元ビットを逆にし(反転させ)、確率(1−p)で元ビットと同じに維持する。   As an example, as shown in FIG. 11 and FIG. 12, for the original bits of the minority (original bit), the allocation probability is randomized as an equal probability (1/2) in order to reduce the correlation due to randomization. Mask bits may be generated. On the other hand, as shown in FIGS. 11 and 12, mask bits are generated with an allocation probability such that the inversion ratio of the majority bits is small for the majority of the original bits in order to maintain sparsity. In the example of the figure, if the original bit is the majority, the original bit is reversed (inverted) with the allocation probability p, and is kept the same as the original bit with the probability (1-p).

そして、図11に示すように、「1」が少数派の場合、本実施の形態は、元ビットとマスクビットのXOR演算を行うことで、多数派ビット「0」を割当確率pで反転させる。   As shown in FIG. 11, when “1” is a minority, this embodiment inverts the majority bit “0” with an allocation probability p by performing an XOR operation of the original bit and the mask bit. .

一方、図12に示すように、「0」が少数派の場合、本実施の形態は、元ビットとマスクビットのXNOR演算を行うことで、多数派ビット「1」を割当確率pで反転させる。   On the other hand, as shown in FIG. 12, when “0” is a minority, the present embodiment inverts the majority bit “1” with an allocation probability p by performing an XNOR operation of the original bit and the mask bit. .

以上のように、本実施の形態は、出現頻度が高い多数派ビットの反転を抑制した被マスクビット(Masked bit)を得る。被マスクパターンが得られた後の処理は、上述と同様であり、本実施の形態は、生成した連結パターンを連想記憶モデルにて学習させる。   As described above, the present embodiment obtains masked bits (masked bits) in which inversion of majority bits having a high appearance frequency is suppressed. The processing after the masked pattern is obtained is the same as described above, and in the present embodiment, the generated connected pattern is learned by the associative memory model.

なお、スパース性を考慮して、ブロック単位でマスク化を行う場合は、本実施の形態は、次のように処理を行ってもよい。スパース性を考慮して、ブロック単位ごとに異なるマスクパターン(ランダムマスク等)を設定して連結パターンを得る方法の一例について、図13および図14を参照して説明する。ここで、図13は、ビット「1」が少数派の場合のブロック処理の一例を示す図であり、図14は、ビット「0」が少数派の場合のブロック処理の一例を示す図である。   In addition, when masking is performed in units of blocks in consideration of sparsity, the present embodiment may perform processing as follows. In consideration of sparsity, an example of a method for obtaining a concatenated pattern by setting a different mask pattern (random mask or the like) for each block will be described with reference to FIGS. 13 and 14. FIG. Here, FIG. 13 is a diagram illustrating an example of block processing when the bit “1” is a minority group, and FIG. 14 is a diagram illustrating an example of block processing when the bit “0” is a minority group. .

上述のように、マスクパターンのビット数を元パターンよりも少なく用意し、ブロック単位で、同一の要素(マスク)を複数回の論理演算に続けて使用することで、連結パターンの長さを2Nより短くすることができる。スパース性を考慮する場合、一例として図13に示すように、ブロック単位で反転させる振り分け確率gを設定して、ブロック毎に異なるマスクパターンrを設定した連結パターンを生成する。 As described above, the number of bits of the mask pattern is prepared to be smaller than that of the original pattern, and the same element (mask) is continuously used for a plurality of logical operations in units of blocks, so that the length of the connected pattern is 2N. It can be made shorter. When considering sparsity, as shown in FIG. 13 as an example, by setting the distribution probability g of reversing block by block, to produce a connection pattern of the specified mask pattern r k different for each block.

すなわち、図13に示すように、本実施の形態は、複数の画像の元パターンを、先頭からL−1個ずつのブロック単位(マスクパターンを入れて長さLのブロック)に区切る。その際、ブロック単位で反転させるか否かを決定する振り分け確率gを、以下の式により割当確率pから算出してもよい。
That is, as shown in FIG. 13, in the present embodiment, the original pattern of a plurality of images is divided into L-1 block units (blocks having a length of L with a mask pattern) from the beginning. At that time, a distribution probability g for determining whether or not to invert the block unit may be calculated from the allocation probability p by the following equation.

以上が本実施の形態の概要である。なお、上記においては、自己連想記憶モデルを例にして説明したが、系列連想記憶モデルを用いる場合、同様に本実施の形態を適用することができる。なお、系列連想記憶モデルは、自己連想記憶モデルの亜種であり、記憶パターンの系列を記憶し、神経回路網の状態を繰り返し更新することで、記憶したパターンを順番どおりに想起するものである。系列連想記憶モデルを用いる場合、理論的な記憶容量の上限は自己連想記憶モデルの場合とは異なるが、パターン間の相関により記憶容量が低下することに変わりはない。   The above is the outline of the present embodiment. In the above description, the self-associative memory model has been described as an example. However, when the sequence associative memory model is used, the present embodiment can be similarly applied. The sequence associative memory model is a variant of the self-associative memory model, which stores a sequence of memory patterns and repeatedly updates the state of the neural network to recall the stored patterns in order. . When the sequence associative memory model is used, the theoretical upper limit of the memory capacity is different from that of the self-associative memory model, but the memory capacity is still lowered due to the correlation between patterns.

上述のように擬似的に直交化させる手法は、(1)必要な計算が簡単な論理演算(XNOR/XOR)だけなので、計算負荷が小さく実装も簡単であるというメリットがある。また、(2)個々のパターンを独立に処理することができ、パターン同士の関連性を考慮しなくてよいため、計算が簡単でパターンの追加記憶も容易に行えるというメリットがある。さらに、(3)標準的な学習則(シフトを考慮したヘブ学習則等)をそのまま適用することができ、その結果得られたシナプス結合の重みが極端な値を取らないため、ハードウェアでの実装に都合がよいというメリットがある。また、(4)神経回路網に記憶されるパターン同士が十分離れ、それらの距離もほぼ均等になるため、どの記憶パターンも安定して想起できる等のメリットがある。   As described above, the pseudo-orthogonalization method has the advantage that (1) only necessary logical operations (XNOR / XOR) are simple calculations, so that the calculation load is small and the implementation is simple. Further, (2) each pattern can be processed independently, and there is no need to consider the relationship between the patterns. Therefore, there is an advantage that the calculation is simple and the additional storage of the pattern can be easily performed. Furthermore, (3) standard learning rules (such as Hebb learning rules that take shifts into account) can be applied as they are, and the resulting synaptic connection weights do not take extreme values. There is an advantage that it is convenient for implementation. Further, (4) since the patterns stored in the neural network are sufficiently separated from each other and their distances are substantially equal, there is an advantage that any stored pattern can be recalled stably.

加えて、元パターンのスパース性を一部維持できるように、出現頻度が高い多数派のビットのビット反転を抑制した被マスクパターンを生成することにより、スパース性による記憶容量の増加を図ることができる、というメリットも得られる。   In addition, it is possible to increase the storage capacity due to the sparsity by generating a masked pattern that suppresses bit inversion of a majority bit having a high appearance frequency so that a part of the sparsity of the original pattern can be maintained. The advantage of being able to do it is also obtained.

[画像認識装置の構成]
次に、本画像認識装置の構成について図15を参照して説明する。図15は、本実施の形態が適用される本画像認識装置100の一例を示すブロック図であり、該構成のうち本実施の形態に関係する部分のみを概念的に示している。
[Configuration of image recognition device]
Next, the configuration of the image recognition apparatus will be described with reference to FIG. FIG. 15 is a block diagram showing an example of the image recognition apparatus 100 to which the present embodiment is applied, and conceptually shows only the portion related to the present embodiment in the configuration.

図15に示すように、本実施の形態における画像認識装置100は、概略的に、制御部102と記憶部106を少なくとも備え、本実施の形態において、更に、入出力制御インターフェース部108と通信制御インターフェース部104を備える。ここで、制御部102は、画像認識装置100の全体を統括的に制御するCPU等である。また、通信制御インターフェース部104は、通信回線等に接続されるルータ等の通信装置(図示せず)に接続されるインターフェースであり、入出力制御インターフェース部108は、入力部112や出力部114に接続されるインターフェースである。また、記憶部106は、各種のデータベースやテーブルなどを格納する装置である。これら画像認識装置100の各部は任意の通信路を介して通信可能に接続されている。更に、この画像認識装置100は、ルータ等の通信装置および専用線等の有線または無線の通信回線を介して、ネットワーク300に通信可能に接続されている。   As shown in FIG. 15, the image recognition apparatus 100 according to the present embodiment schematically includes at least a control unit 102 and a storage unit 106, and further includes an input / output control interface unit 108 and communication control in the present embodiment. An interface unit 104 is provided. Here, the control unit 102 is a CPU or the like that comprehensively controls the entire image recognition apparatus 100. The communication control interface unit 104 is an interface connected to a communication device (not shown) such as a router connected to a communication line or the like, and the input / output control interface unit 108 is connected to the input unit 112 or the output unit 114. The interface to be connected. The storage unit 106 is a device that stores various databases and tables. Each unit of the image recognition apparatus 100 is connected to be communicable via an arbitrary communication path. Further, the image recognition apparatus 100 is communicably connected to the network 300 via a communication device such as a router and a wired or wireless communication line such as a dedicated line.

記憶部106に格納される各種のデータベースやテーブル(マスク保存部106a、ニューロンファイル106b等)は、固定ディスク装置等のストレージ手段である。例えば、記憶部106は、各種処理に用いる各種のプログラム、テーブル、ファイル、データベース、および、ウェブページ等を格納する。   Various databases and tables (mask storage unit 106a, neuron file 106b, etc.) stored in the storage unit 106 are storage means such as a fixed disk device. For example, the storage unit 106 stores various programs, tables, files, databases, web pages, and the like used for various processes.

これら記憶部106の各構成要素のうち、マスク保存部106aは、マスクパターンや1番目の連結パターン等を記憶するマスク記憶手段である。例えば、マスク保存部106aは、マスク生成部102aにより生成されたマスクパターンを格納してもよい。より具体的には、マスク保存部106aは、マスク生成部102aによりマスクパターンとして生成された乱数列rμ(μ=1,2,・・・,P)を記憶してもよい。 Of these components of the storage unit 106, the mask storage unit 106a is a mask storage unit that stores a mask pattern, a first connection pattern, and the like. For example, the mask storage unit 106a may store the mask pattern generated by the mask generation unit 102a. More specifically, the mask storage unit 106a may store a random number sequence r μ (μ = 1, 2,..., P) generated as a mask pattern by the mask generation unit 102a.

また、ニューロンファイル106bは、神経細胞ユニットを識別するインデックスに対応付けて、神経細胞ユニット間のパラメータや神経細胞ユニット毎のパラメータ(係数値等)などニューラルネットワークに関するデータを記憶する神経回路網記憶手段である。一例として、ニューロンファイル106bに記憶されるニューラルネットワークの情報は、神経細胞ユニットiと神経細胞ユニットjの間における重みJij、時刻t(t=1,2,3,...)における、神経回路網の状態x(t)、再構成パターンy(t)、エネルギー関数E(t)、神経細胞ユニットの内部ポテンシャルh(t)等の値である。なお、ニューロンファイル106bには、予めこれらパラメータのt=0の場合で数値が与えられていない場合、初期パラメータが記憶されてもよい。後述する学習部102cおよび想起部102dにより状態更新(t→t+1)が行われる毎に、上述の値が更新されてもよい。 The neuron file 106b is a neural network storage unit that stores data relating to a neural network such as parameters between nerve cell units and parameters (coefficient values, etc.) for each nerve cell unit in association with an index for identifying the nerve cell unit. It is. As an example, the neural network information stored in the neuron file 106b is the nerve at the weight J ij between the neuron unit i and the neuron unit j at time t (t = 1, 2, 3,...). These are values such as the state x (t) of the network, the reconstruction pattern y (t), the energy function E (t), and the internal potential h (t) of the nerve cell unit. The neuron file 106b may store initial parameters when numerical values are not given in advance when these parameters t = 0. The above-mentioned value may be updated every time state update (t → t + 1) is performed by the learning unit 102c and the recall unit 102d described later.

また、入出力制御インターフェース部108は、入力部112や出力部114の制御を行う。ここで、出力部114としては、モニタ(家庭用テレビを含む)の他、スピーカを用いることができる(なお、以下においては出力部114をモニタとして記載する場合がある)。また、入力部112としては、キーボード、マウス、およびマイク等を用いることができる。   The input / output control interface unit 108 controls the input unit 112 and the output unit 114. Here, as the output unit 114, in addition to a monitor (including a home television), a speaker can be used (hereinafter, the output unit 114 may be described as a monitor). As the input unit 112, a keyboard, a mouse, a microphone, and the like can be used.

また、図15において、制御部102は、OS(Operating System)等の制御プログラムや、各種の処理手順等を規定したプログラム、および、所要データを格納するための内部メモリを有する。そして、制御部102は、これらのプログラム等により、種々の処理を実行するための情報処理を行う。制御部102は、機能概念的に、マスク生成部102a、論理演算部102b、学習部102c、および、想起部102dを備える。   In FIG. 15, the control unit 102 has an internal memory for storing a control program such as an OS (Operating System), a program defining various processing procedures, and necessary data. And the control part 102 performs the information processing for performing various processes by these programs. The control unit 102 includes a mask generation unit 102a, a logical operation unit 102b, a learning unit 102c, and a recall unit 102d in terms of functional concept.

このうち、マスク生成部102aは、マスクパターンを生成するマスク生成手段である。本実施の形態において、マスク生成部102aは、元パターンに基づいて、二値のうち元パターンにおいて出現頻度が高いビットの反転を抑制する割当確率で、ランダムな二値パターンであるマスクパターンを生成する。一例として、マスク生成部102aは、乱数表等を用いて、乱数列を生成し、これを用いて元パターンに基づくランダムマスクを生成してもよい。また、マスク生成部102aは、元パターンの各々のビットあるいは予め定められた個数毎にまとめられた各々のビット集合に対し、ビットないしビット集合の合計値に応じて各々異なる確率でランダムに二値のマスクパターンのビットを生成してもよい。   Among these, the mask generation unit 102a is a mask generation unit that generates a mask pattern. In the present embodiment, the mask generation unit 102a generates a mask pattern that is a random binary pattern with an allocation probability that suppresses inversion of bits that frequently appear in the original pattern, based on the original pattern. To do. As an example, the mask generation unit 102a may generate a random number sequence using a random number table or the like, and use this to generate a random mask based on the original pattern. In addition, the mask generation unit 102a randomly binarizes each bit set of the original pattern or each bit set grouped in a predetermined number with different probabilities depending on the bit or the total value of the bit sets. The bits of the mask pattern may be generated.

マスク生成部102aは、一例として、元パターンの発火率が0または1に近いほど、多数派ビットを反転させる割当確率を小さく設定してもよい。さらに、マスク生成部102aは、元パターンの発火率が0または1に近いほど、また、元パターン間の相関が小さいほど、多数派ビットを反転させる割当確率を小さく設定してもよい。ここで、マスク生成部102aは、割当確率を、元パターンの発火率や相関等に基づいて、予め記憶部106に記憶された対応表やグラフ等を参照して設定してもよく、その都度、計算により算出して設定してもよい。   For example, the mask generation unit 102a may set the allocation probability to invert the majority bit as the firing rate of the original pattern is close to 0 or 1. Furthermore, the mask generation unit 102a may set the allocation probability for inverting majority bits as the firing rate of the original pattern is close to 0 or 1, and as the correlation between the original patterns is smaller. Here, the mask generation unit 102a may set the allocation probability with reference to a correspondence table, a graph, or the like stored in advance in the storage unit 106 based on the firing rate or correlation of the original pattern. It may be calculated and set by calculation.

まず、割当確率pの決め方として、予め記憶部106に対応表やグラフ等を記憶させておく例について説明する。図16は、元パターンの発火率fと相関bに対して、最適な割当確率pを示したグラフである。また、図17は、元パターンの発火率fと相関bに対して最適な割当確率pを設定した場合の記憶容量を示した図である。   First, an example in which a correspondence table, a graph, and the like are stored in advance in the storage unit 106 will be described as a method for determining the allocation probability p. FIG. 16 is a graph showing the optimal allocation probability p with respect to the firing rate f and correlation b of the original pattern. FIG. 17 is a diagram showing the storage capacity when the optimum allocation probability p is set for the firing rate f and correlation b of the original pattern.

1つ目の方法は、元パターンの発火率と相関の値を事前に計算しておき、予め記憶部106に記憶させた、各発火率と相関の値ごとに最適な割当確率pの値の表を参照して、割当確率pの値を指定する方法である。各発火率と相関の値ごとに最適なpの値は、人工的に生成した元パターンに対して予め計算しておく。   In the first method, the firing rate and correlation value of the original pattern are calculated in advance, and the optimal allocation probability p value is stored for each firing rate and correlation value stored in the storage unit 106 in advance. This is a method of specifying the value of the allocation probability p with reference to the table. The optimum value of p for each firing rate and correlation value is calculated in advance for the artificially generated original pattern.

特定の発火率fと相関bの値を持つような人工パターンは、公知の方法で生成することができる(例えば、公知論文[1]:M. Oku, T. Makino, and K. Aihara, “Pseudo−orthogonalization of memory patterns for associative memory”, IEEE Trans. Neural Netw. Learn. Syst., vol. 24, pp. 1877−1887, 2013.参照)。一例として、公知論文[1]では、指定された平均値a=2f−1と相関bに対して、まず最初に基準となるパターン{η ,η ,...,η }を以下の式に従い生成する。
An artificial pattern having a specific firing rate f and a correlation b value can be generated by a known method (for example, a known paper [1]: M. Oku, T. Makino, and K. Aihara, “ Pseudo-orthogonalization of memory patterns for associative memory ", IEEE Trans. Neural Net. Learn. Syst., Vol. 24, pp. 1877-1887). As an example, in the known paper [1], for a specified average value a = 2f−1 and correlation b, first, a reference pattern {η 0 1 , η 0 2 ,. . . , Η 0 N } is generated according to the following equation.

つづいて、生成した基準パターンを用いて、人工パターン{ημ ,ημ ,...,ημ }(μ=1,2,・・・,P)を以下の式に従って生成する。
Subsequently, using the generated reference pattern, the artificial patterns {η μ 1 , η μ 2 ,. . . , Η μ N } (μ = 1, 2,..., P) is generated according to the following equation.

以上により、指定された平均値aと相関bを持つ人工パターンが得られる。この人工パターンを用いて、さまざまな値の割当確率pを使って連結パターンに変換し、連想記憶モデルに記憶させ、その記憶容量を計測することを繰り返し行う。   Thus, an artificial pattern having the designated average value a and correlation b is obtained. Using this artificial pattern, it is repeatedly converted into a connected pattern using allocation probabilities p of various values, stored in an associative memory model, and measuring its storage capacity.

そして、最も記憶容量の平均値が高くなるpの値を、各平均値と相関の値に対して表にまとめた例が、図16である。図16では、人工的に生成したパターンに対して求めた、最適なpの値をグレースケールで表現したものである。横軸は人工パターンの発火率f=(1+a)=2を表し、縦軸は相関bを表している。今回の例では、人工パターンの長さは1000で、各点ごとに10回の試行平均を行った。また、発火率fと相関bは0.025刻み、割当確率pは0.05刻みで条件を変えて計測を行った。   FIG. 16 shows an example in which the values of p at which the average value of the storage capacity becomes the highest are summarized in a table for each average value and correlation value. In FIG. 16, the optimum value of p obtained for the artificially generated pattern is expressed in gray scale. The horizontal axis represents the firing rate f = (1 + a) = 2 of the artificial pattern, and the vertical axis represents the correlation b. In this example, the length of the artificial pattern was 1000, and 10 trial averages were performed for each point. Further, the firing rate f and the correlation b were measured in increments of 0.025, and the allocation probability p was measured in increments of 0.05, changing the conditions.

図16に示すように、発火率fが小さいほど、また、相関bが小さいほど、最適な割当確率pの値が小さくなる傾向があることが分かった。ここで、図17は、図16によって指定される、最適な割当確率pを用いた場合の連想記憶モデルの臨界負荷率(記憶容量を連結パターンの長さN´で割ったもの)を示したものである。パターンがスパースでは無い場合は臨界負荷率が0.14を超えられないが、図17に示すように、本実施の形態の手法を用いて適切な割当確率pを設定することにより、臨界負荷率が0.14を超えることができることが確認された。特に、発火率fと相関bが小さい部分では、スパース性の増加が顕著に生じていることが分かった。   As shown in FIG. 16, it was found that the smaller the firing rate f and the smaller the correlation b, the smaller the value of the optimum allocation probability p. Here, FIG. 17 shows the critical load factor (the storage capacity divided by the length N ′ of the connection pattern) of the associative memory model when the optimum allocation probability p specified by FIG. 16 is used. Is. If the pattern is not sparse, the critical load factor cannot exceed 0.14. However, as shown in FIG. 17, by setting an appropriate allocation probability p using the method of the present embodiment, the critical load factor is set. It was confirmed that can exceed 0.14. In particular, it was found that the increase in sparsity occurred remarkably in the portion where the ignition rate f and the correlation b were small.

なお、上述の例では、人工的に生成した元パターンに高次相関等を与えていないので、考慮されていない高次相関などの要因により、元パターンに対して真に最適なp値は、上記の事前に計算した表のp値とずれる可能性がある。その場合であっても、スパース性を全く考慮せずに処理を行うよりも、記憶容量は増加するが、真の最適値を得るために、高次相関の度合が異なる元パターンを人工的に生成して、高次相関による影響を加味した最適なp値を示す表を作成して、記憶部106に記憶させてもよい。   In the above example, since the high-order correlation or the like is not given to the artificially generated original pattern, the p-value that is truly optimal for the original pattern due to factors such as high-order correlation that is not considered is There is a possibility of deviating from the p value of the table calculated in advance. Even in this case, the storage capacity is increased compared to processing without considering sparseness at all, but in order to obtain a true optimum value, original patterns having different degrees of higher-order correlation are artificially created. A table indicating the optimum p value generated by taking into account the influence of higher-order correlation may be created and stored in the storage unit 106.

以上が予め適切な割当確率pを計算して記憶部106に対応表等を記憶させる場合の例である。つづいて、その都度、計算により適切な割当確率pを求める手法について説明する。もう一つの割当確率pの決め方は、元パターンの発火率fを計算し、変換後の連結パターンの発火率fがそれと同じになるようにpを決めるというものである。例えば、「1」が少数派と「0」が少数派の場合それぞれに応じて、以下の式により割当確率pを計算してもよい。
The above is an example in which an appropriate allocation probability p is calculated in advance and a correspondence table or the like is stored in the storage unit 106. Next, a method for obtaining an appropriate allocation probability p by calculation each time will be described. Another method of determining the allocation probability p is to calculate the firing rate f of the original pattern and determine p so that the firing rate f of the connected pattern after conversion is the same. For example, according to the case where “1” is a minority and “0” is a minority, the allocation probability p may be calculated by the following equation.

この方法は一つ目の方法と比べて記憶容量が小さくなるが、表を使わないため実装が簡単という利点がある。   This method has a smaller storage capacity than the first method, but has the advantage of being easy to implement because no table is used.

ここで、マスク生成部102aは、ブロック毎に値が異なるマスクパターンを設定するために、割当確率pから、以下の式に基づいて、ブロック内のビット列を反転させる振り分け確率gを求めてもよい。
Here, in order to set a mask pattern having a different value for each block, the mask generation unit 102a may obtain a distribution probability g for inverting the bit string in the block from the allocation probability p based on the following expression. .

再び図15に戻り、論理演算部102bは、マスク生成部102aにより生成されたマスクパターン(ランダムマスク等)と、元パターンとの論理演算(XNOR/XOR)を行うことにより、出現頻度が高い値のビット反転を抑制した被マスクパターンを生成する論理演算手段である。例えば、論理演算部102bは、図6,図11〜図14を用いて上述したようにXNOR演算またはXOR演算を行う。   Returning again to FIG. 15, the logical operation unit 102 b performs a logical operation (XNOR / XOR) between the mask pattern (random mask or the like) generated by the mask generation unit 102 a and the original pattern, thereby increasing the appearance frequency. This is a logical operation means for generating a masked pattern in which bit inversion is suppressed. For example, the logical operation unit 102b performs an XNOR operation or an XOR operation as described above with reference to FIGS.

ここで、論理演算部102bは、複数の画像の元パターン中の任意の数のビットごとにブロック化して、ブロック単位で共通したマスクパターン(ランダムマスク等)を設定して、被マスクパターンを作成してもよい。より具体的には、論理演算部102bは、複数の画像による長さNの元パターンを、先頭からL−1個ずつのブロック単位に区切り(ただし、NはL−1で割り切れるものとする。)、ブロック毎に値が異なるマスクパターンを設定して、LN/(L−1)の長さの連結パターンを生成してもよい。なお、論理演算部102bは、想起段階において、マスク保存部106aから1つのマスクパターンを取り出して、照合パターンとの論理演算(XNOR/XOR)を行い、マスク化照合パターンを生成してもよい。そして、もし想起部102dにおいて、取り出したマスクパターンを用いたマスク化照合パターンで想起が失敗した場合は、別のマスクパターンを取り出して、新たなマスク化照合パターンを生成する。   Here, the logical operation unit 102b creates a mask pattern by setting a common mask pattern (random mask, etc.) in units of blocks by making a block for each arbitrary number of bits in the original pattern of a plurality of images. May be. More specifically, the logical operation unit 102b divides an original pattern of length N by a plurality of images into L-1 blocks from the beginning (where N is divisible by L-1). ), A mask pattern having a different value for each block may be set to generate a concatenated pattern having a length of LN / (L−1). In the recall stage, the logical operation unit 102b may extract one mask pattern from the mask storage unit 106a and perform a logical operation (XNOR / XOR) with the verification pattern to generate a masked verification pattern. If the recall unit 102d fails to recall the masked collation pattern using the extracted mask pattern, another mask pattern is extracted and a new masked collation pattern is generated.

また、学習部102cは、ニューラルネットワークを用いた連想記憶モデルにて連結パターンを学習させる学習手段である。一方、想起部102dは、ニューラルネットワークを用いた連想記憶モデルにて手がかりとなる照合パターンから元パターンを探索する想起手段である。なお、本実施の形態において、学習部102cは、想起部102dによる自己連想記憶モデルの想起段階のために、用いたマスクパターンをマスク保存部106aに格納してもよい。想起段階では、想起部102dは、マスク保存部106aに格納されたマスクパターンを試行錯誤的に一つ選んで、照合マスクとの論理演算を行うことでマスク化照合パターンを得ることができる。また、系列連想記憶モデルの場合、学習部102cは、1番目の連結パターンのみをマスク保存部106aに格納してもよい。想起段階では、想起部102dは、マスク保存部106aに記憶された連結パターンをニューラルネットワークの初期状態に設定して、状態更新する毎に復号化を行い出力させることで、元パターンを得てもよい。   The learning unit 102c is learning means for learning a connection pattern using an associative memory model using a neural network. On the other hand, the recall unit 102d is a recall unit that searches for an original pattern from a matching pattern that is a clue in an associative memory model using a neural network. In the present embodiment, the learning unit 102c may store the used mask pattern in the mask storage unit 106a for the recalling stage of the self-associative memory model by the recalling unit 102d. In the recall stage, the recall unit 102d can obtain a masked collation pattern by selecting one mask pattern stored in the mask storage unit 106a by trial and error and performing a logical operation with the collation mask. In the case of a sequence associative memory model, the learning unit 102c may store only the first connection pattern in the mask storage unit 106a. At the recall stage, the recall unit 102d sets the connection pattern stored in the mask storage unit 106a to the initial state of the neural network, and decodes and outputs it every time the state is updated. Good.

ここで、数式による説明を行う。記憶させたい元のパターンを{ξμ ,ξμ ,...,ξμ }と表す。μはパターン番号で、1からPまでの整数値を取る。ξμ は、μ番目の元パターンのi番目の値を表し、本実施の形態では1か−1のいずれかの値を取る。これに対し、マスクパターンは、{rμ ,rμ ,...,rμ }と表す。本実施の形態において、rμ は、μ番目のマスクパターンのi番目の値を示し、ランダムに1か−1の値を取る。記憶パターンのある値ξμ と、それに対応するマスクパターンの値rμ との間で、XNOR演算をした結果はξμ μ となる(XOR演算の場合は−ξμ μ )。 Here, explanation will be given using mathematical formulas. The original pattern to be stored is {ξ μ 1 , ξ μ 2 ,. . . , Ξ μ N }. μ is a pattern number and takes an integer value from 1 to P. ξ μ i represents the i-th value of the μ-th original pattern, and takes a value of 1 or −1 in the present embodiment. On the other hand, the mask pattern is {r μ 1 , r μ 2 ,. . . , R μ N }. In this embodiment, r μ i indicates the i-th value of the μ-th mask pattern, and takes a value of 1 or −1 at random. The result of the XNOR operation between a value ξ μ i having a stored pattern and the value r μ i of the corresponding mask pattern is ξ μ i r μ i (in the case of XOR operation, −ξ μ i r μ i ).

ブロック長L=2の場合、マスクパターン{rμ ,rμ ,...,rμ }と被マスクパターン{ξμ μ ,ξμ μ ,...,ξμ μ }から1つずつ交互に取ってきて繋げたもの{rμ ,ξμ μ ,rμ ,ξμ μ ,...,rμ ,ξμ μ }が、学習部102cの制御によりニューラルネットワークに記憶させる長さ2Nの連結パターンである。ここで、記号を置き換えて、連結パターン{ημ ,ημ ,...,ημ N´}と表す。ただし、N´=2Nである。 When the block length L = 2, the mask pattern {r μ 1 , r μ 2 ,. . . , R μ N } and the masked pattern {ξ μ 1 r μ 1 , ξ μ 2 r μ 2 ,. . . , Xi] mu N one by one from r mu N} that connecting fetches alternately {r μ 1, ξ μ 1 r μ 1, r μ 2, ξ μ 2 r μ 2,. . . , R μ N , ξ μ N r μ N } is a connection pattern of length 2N to be stored in the neural network under the control of the learning unit 102c. Here, the symbols are replaced, and the connected patterns {η μ 1 , η μ 2 ,. . . , Η μ N ′ }. However, N ′ = 2N.

ブロック長L=2以上の場合、μ番目の元パターンのk番目のブロックを{ξμ k,1,ξμ k,2,...,ξμ k,L−1}と表す。これに対応するマスクパターンの値をrμ とし、論理演算(XNOR/XOR)および連結操作を行うことで、長さLのブロック{rμ ,rμ ξμ k,1,rμ ξμ k,2,...,rμ ξμ k,L−1}を得る。これをブロック順に並べたものを連結パターンとしてもよい。この場合、N´=LN/(L−1)となる。なお、上記の連結パターンの並び順は一例であり、連結パターンにおいて被マスクパターンとマスクパターンの並び順は任意である。 When the block length L = 2 or more, the k-th block of the μ-th original pattern is represented by {ξ μ k, 1 , ξ μ k, 2 ,. . . , Ξ μ k, L−1 }. The value of the mask pattern corresponding to this is set to r μ k , and a logical operation (XNOR / XOR) and a concatenation operation are performed, so that a block of length L {r μ k , r μ k ξ μ k, 1 , r μ k ξ μ k, 2 ,. . . , R μ k ξ μ k, L−1 }. It is good also considering what arranged this in block order as a connection pattern. In this case, N ′ = LN / (L−1). Note that the arrangement order of the above connection patterns is an example, and the arrangement order of the mask pattern and the mask pattern in the connection pattern is arbitrary.

学習部102cによる連結パターンの学習には、一例として、標準的なヘブ学習則(シフト分の補正を含む)を用いてもよい。自己連想記憶モデルの場合、j番目の神経細胞ユニットからi番目の神経細胞ユニットへのシナプス結合の強度をJijと表し、i≠jの場合について、学習部102cは、以下の式に従い値を定める。なお、i=jの場合は、Jii=0とする。
For example, a standard Hebb learning rule (including correction for shift) may be used for learning the connection pattern by the learning unit 102c. In the case of the auto-associative memory model, the strength of the synapse connection from the j-th neuron unit to the i-th neuron unit is represented as J ij, and in the case of i ≠ j, the learning unit 102c calculates a value according to the following equation: Determine. If i = j, J ii = 0.

一方、系列連想記憶モデルの場合、学習部102cは、以下の式に従い値を定める。ただし、ημ+1 =η とする。
On the other hand, in the case of a sequence associative memory model, the learning unit 102c determines a value according to the following equation. However, it is assumed that η μ + 1 i = η 1 i .

なお、上記二式において、aはημ の平均であり、より具体的には、以下の式で表される。
In the above two formulas, a is an average of η μ i and more specifically is represented by the following formula.

ニューラルネットワークの時刻tにおける状態を{x(t),x(t),...,xN´(t)}と表す。x(t)は、i番目の神経細胞ユニットの活動状態を表し、1(発火状態)か−1(休止状態)のいずれかの値を取る。ニューラルネットワークの状態更新には、同期更新と非同期更新、決定論的更新と確率的更新のそれぞれの組み合わせにより、4通りが考えられるが、スパースパターンに対しては同期更新かつ、決定論的更新と確率的更新のいずれかを組み合せてもよい。最も単純な同期更新と決定論的更新を組み合せる方式では、自己連想記憶モデルの場合も、系列連想記憶モデルの場合も、学習部102cおよび想起部102dは、以下の式に従って状態更新を行ってもよい。ここで、sgn(h)は、h≧0のとき1を、h<0のとき−1を返す関数である。
The state of the neural network at time t is expressed as {x 1 (t), x 2 (t),. . . , X N ′ (t)}. x i (t) represents the active state of the i-th neuron unit and takes a value of 1 (firing state) or −1 (resting state). There are four ways to update the state of a neural network, depending on the combination of synchronous update and asynchronous update, deterministic update and probabilistic update. For sparse patterns, synchronous update and deterministic update are possible. Any of the probabilistic updates may be combined. In the method of combining the simplest synchronous update and deterministic update, the learning unit 102c and the recall unit 102d perform state updating according to the following formulas in both the case of the self-associative memory model and the sequence associative memory model. Also good. Here, sgn (h) is a function that returns 1 when h ≧ 0 and −1 when h <0.

ここで、G(t)は、適応的な閾値と呼ばれ、ニューラルネットワークの神経細胞のうち、常に決まった数だけが発火するように調節する役割を果たす。G(t)は、公知の計算方法により求めることができる(例えば、公知論文[2]:M. Okada, “Notions of associative memory and sparse coding”, Neural Networks, vol.9, pp.1429−1458, 1996参照)。この公知文献[2]では、連想記憶モデルにおいてスパースなパターンを記憶パターンとして用いる場合における、学習則や更新則の決め方や記憶容量などの性質について纏めて開示されている。   Here, G (t) is called an adaptive threshold and plays a role of adjusting so that only a fixed number of neurons in the neural network always fire. G (t) can be obtained by a known calculation method (for example, a known paper [2]: M. Okada, “Notions of associative memory and sparse coding”, Neural Networks, vol. 9, pp. 1429-1458. , 1996). In this publicly known document [2], characteristics such as how to determine a learning rule and an update rule, and storage capacity when a sparse pattern is used as a storage pattern in an associative memory model are disclosed.

具体的なG(t)の計算法を説明すると、学習部102cは、まず連結パターンの平均を以下の式によって求める。
A specific G (t) calculation method will be described. First, the learning unit 102c obtains an average of the connection patterns by the following equation.

つづいて、学習部102cは、上記のaの値を用いて、適応的閾値G(t)を以下の式によって計算する。
Subsequently, the learning unit 102c calculates the adaptive threshold G (t) by the following formula using the value of a described above.

一例として、学習部102cおよび想起部102dは、ニューラルネットワークの状態が収束するまで状態更新を繰返す。系列連携記憶モデルの場合は、ニューラルネットワークの状態は収束しないため、予め定められた回数だけ状態更新を繰返す。   As an example, the learning unit 102c and the recall unit 102d repeat the state update until the state of the neural network converges. In the case of the sequence linkage storage model, the state of the neural network does not converge, so the state update is repeated a predetermined number of times.

一例として、想起部102dは、初期パターンをニューラルネットワークに設定して、エネルギー関数の値が収束するまで状態更新を繰り返すことによって、対応する元パターンを探索する。例えば、想起部102dは、マスク化照合パターンとマスクパターンを連結した連結パターンを初期パターンとして設定してもよい。   As an example, the recall unit 102d searches for a corresponding original pattern by setting an initial pattern in a neural network and repeating state updating until the value of the energy function converges. For example, the recalling unit 102d may set a connection pattern obtained by connecting the masked matching pattern and the mask pattern as the initial pattern.

なお、想起部102dは、収束状態で閾値以下のエネルギー関数の値を得られない場合は、偽アトラクタにトラップされて想起が失敗したとして、別のマスクパターン(例えば、μ→μ+1)を用いたマスク化照合パターンで試行することにより、元パターンを探索する。すなわち、正しいマスクパターンを用いて変換しないと、ニューラルネットワークの状態が偽アトラクタに高い確率でトラップされる性質を利用して、想起部102dは、正しいマスクパターンを探し出す。一方、正しいマスクパターンを用いて変換すれば、収束状態におけるニューラルネットワークのエネルギー関数の値は、十分低くなるので、その場合に想起成功とみなして、想起部102dは、状態を復号化し、元パターンの出力を得る。ここで、想起部102dは、以下の式を用いて、ニューラルネットワークの状態を復号してもよい。なお、再構成パターンを{y(t),y(t),...,y(t)}と表す。

(t)=x2k−1(t)x2k(t)
Note that the recall unit 102d uses another mask pattern (for example, μ → μ + 1), assuming that the recall failed due to being trapped by a false attractor when the energy function value below the threshold value cannot be obtained in the convergence state. The original pattern is searched by trying with the masked matching pattern. That is, if the correct mask pattern is not used for conversion, the recalling unit 102d searches for the correct mask pattern by utilizing the property that the state of the neural network is trapped by the false attractor with a high probability. On the other hand, if conversion is performed using the correct mask pattern, the value of the energy function of the neural network in the converged state is sufficiently low. In this case, the recalling unit 102d regards the recall as successful, and decodes the state to obtain the original pattern. Get the output of Here, the recalling unit 102d may decode the state of the neural network using the following equation. Note that the reconstruction pattern is expressed as {y 1 (t), y 2 (t),. . . , Y N (t)}.

y k (t) = x 2k−1 (t) x 2k (t)

なお、系列連想記憶モデルの場合は、学習部102cは、1番目の連結パターンのみをニューラルネットワークとは別にマスク保存部106aに格納してもよい。そして、想起部102dは、マスク保存部106aに格納された1番目の連結パターンをニューラルネットワークの初期状態に設定し、神経回路網の状態を更新する毎に復号化を行い出力させることで、元パターンの系列を取り出すことができる。   In the case of the sequence associative memory model, the learning unit 102c may store only the first connection pattern in the mask storage unit 106a separately from the neural network. Then, the recalling unit 102d sets the first connection pattern stored in the mask storage unit 106a to the initial state of the neural network, and performs decoding and outputting each time the state of the neural network is updated, thereby generating the original A series of patterns can be extracted.

以上が、本実施の形態における画像認識装置100の構成の一例である。なお、画像認識装置100は、ネットワーク300を介して外部システム200に接続されてもよい。この場合、通信制御インターフェース部104は、画像認識装置100とネットワーク300(またはルータ等の通信装置)との間における通信制御を行う。すなわち、通信制御インターフェース部104は、他の端末と通信回線を介してデータを通信する機能を有する。また、ネットワーク300は、画像認識装置100と外部システム200とを相互に接続する機能を有し、例えば、インターネット等である。   The above is an example of the configuration of the image recognition apparatus 100 in the present embodiment. Note that the image recognition apparatus 100 may be connected to the external system 200 via the network 300. In this case, the communication control interface unit 104 performs communication control between the image recognition device 100 and the network 300 (or a communication device such as a router). That is, the communication control interface unit 104 has a function of communicating data with other terminals via a communication line. The network 300 has a function of connecting the image recognition apparatus 100 and the external system 200 to each other, for example, the Internet.

また、外部システム200は、ネットワーク300を介して、画像認識装置100と相互に接続され、各種パラメータに関する外部データベースや、接続されたコンピュータ(情報処理装置)に画像認識方法を実行させるためのプログラム等を提供する機能を有する。   The external system 200 is mutually connected to the image recognition apparatus 100 via the network 300, an external database regarding various parameters, a program for causing the connected computer (information processing apparatus) to execute an image recognition method, and the like. It has a function to provide.

ここで、外部システム200は、WEBサーバやASPサーバ等として構成していてもよい。また、外部システム200のハードウェア構成は、一般に市販されるワークステーション、パーソナルコンピュータ等の情報処理装置およびその付属装置により構成していてもよい。また、外部システム200の各機能は、外部システム200のハードウェア構成中のCPU、ディスク装置、メモリ装置、入力装置、出力装置、通信制御装置等およびそれらを制御するプログラム等により実現される。   Here, the external system 200 may be configured as a WEB server, an ASP server, or the like. Further, the hardware configuration of the external system 200 may be configured by an information processing apparatus such as a commercially available workstation or a personal computer and its attached devices. Each function of the external system 200 is realized by a CPU, a disk device, a memory device, an input device, an output device, a communication control device, and the like in the hardware configuration of the external system 200 and a program for controlling them.

以上で、本実施の形態の構成の説明を終える。   This is the end of the description of the configuration of the present embodiment.

[画像認識装置100の処理]
次に、このように構成された本実施の形態における画像認識装置100の処理の一例について、以下に図18を参照して詳細に説明する。図18は、本実施の形態における画像認識装置100の基本処理の一例を示すフローチャートである。
[Processing of Image Recognition Device 100]
Next, an example of processing of the image recognition apparatus 100 according to the present embodiment configured as described above will be described in detail with reference to FIG. FIG. 18 is a flowchart illustrating an example of basic processing of the image recognition apparatus 100 in the present embodiment.

図18に示すように、まず、マスク生成部102aは、元パターンに基づいてランダムな二値パターンであるランダムマスクを生成する(ステップSA−1)。一例として、マスク生成部102aは、乱数表等を用いて、乱数列を生成し、これを用いて元パターンに基づくランダムマスクを生成してもよい。   As shown in FIG. 18, first, the mask generation unit 102a generates a random mask that is a random binary pattern based on the original pattern (step SA-1). As an example, the mask generation unit 102a may generate a random number sequence using a random number table or the like, and use this to generate a random mask based on the original pattern.

そして、論理演算部102bは、マスク生成部102aにより生成されたマスクパターン(ランダムマスク)と元パターンとの論理演算(XNOR演算またはXOR演算)を行うことにより被マスクパターンを生成する(ステップSA−2)。ここで、論理演算部102bは、複数の画像の元パターン中の任意の数のビットごとにブロック化して、ブロック単位で共通したランダムマスクを設定して、被マスクパターンを作成してもよい。   Then, the logic operation unit 102b generates a masked pattern by performing a logic operation (XNOR operation or XOR operation) between the mask pattern (random mask) generated by the mask generation unit 102a and the original pattern (step SA- 2). Here, the logical operation unit 102b may create a masked pattern by making a block for each arbitrary number of bits in the original pattern of a plurality of images and setting a common random mask in units of blocks.

そして、学習部102cは、ニューラルネットワークを用いた連想記憶モデルにて連結パターンを学習させる(ステップSA−3)。なお、学習部102cは、自己連想記憶モデルの想起段階のために、マスクパターンをマスク保存部106aに格納してもよく、系列連想記憶モデルの想起段階のために、1番目の連結パターンのみをマスク保存部106aに格納してもよい。   And the learning part 102c is made to learn a connection pattern by the associative memory model using a neural network (step SA-3). Note that the learning unit 102c may store a mask pattern in the mask storage unit 106a for the recall stage of the self-associative memory model, and only the first connected pattern for the recall stage of the sequence associative memory model. You may store in the mask preservation | save part 106a.

そして、想起部102dは、手がかりパターンに基づいて、初期状態のニューラルネットワークに連結パターンを設定して、エネルギー関数の値が収束するまで状態更新を繰り返すことによって、対応する元パターンを探索する(ステップSA−4)。なお、自己連想記憶モデルの場合、想起部102dは、論理演算部102bの処理により、マスク保存部106aから1つのマスクパターンを取り出して、照合パターンとの論理演算(XNOR/XOR)を行い、マスク化照合パターンを生成して初期状態の連結パターンとして設定する。想起部102dは、取り出したマスクパターンを用いたマスク化照合パターンで想起が失敗した場合は、別のマスクパターンを取り出して、新たなマスク化照合パターンを生成する。想起部102dは、エネルギー関数の値が収束するまで状態更新を行い、収束状態でエネルギー関数の値が所定の閾値以下の場合に、想起が成功したとして、その状態からパターンを復号し、復号化したパターンを出力部114等に出力する。一方、系列連想記憶モデルの場合、想起部102dは、マスク保存部106aから1番目の連結パターンを取り出してニューラルネットワークの初期状態に設定し、神経回路網の状態を更新する毎に復号化を行い出力させることで、元パターンの系列を取り出すことができる。   Then, the recalling unit 102d searches for the corresponding original pattern by setting the connection pattern in the initial state neural network based on the clue pattern and repeating the state update until the energy function value converges (step) SA-4). In the case of the self-associative memory model, the recollection unit 102d extracts one mask pattern from the mask storage unit 106a by the processing of the logical operation unit 102b, performs logical operation (XNOR / XOR) with the matching pattern, Generate a collation pattern and set it as the initial connection pattern. The recalling unit 102d retrieves another mask pattern and generates a new masked collation pattern when the recall fails with the masked collation pattern using the extracted mask pattern. The recalling unit 102d updates the state until the energy function value converges, and when the energy function value is equal to or less than a predetermined threshold in the converged state, the recall is successful and the pattern is decoded from the state. The pattern is output to the output unit 114 or the like. On the other hand, in the case of the sequence associative memory model, the recall unit 102d extracts the first connection pattern from the mask storage unit 106a, sets it as the initial state of the neural network, and performs decoding every time the state of the neural network is updated. By outputting, the original pattern series can be extracted.

以上が、本実施形態における画像認識装置100の基本処理の一例である。   The above is an example of the basic processing of the image recognition apparatus 100 in the present embodiment.

[学習処理]
つぎに、画像認識装置100の基本処理をより具体化した学習処理の一例について以下に図19を参照して説明する。ここで、図19は、本実施の形態における画像認識装置100の学習処理の一例を示すフローチャートである。
[Learning process]
Next, an example of a learning process that further embodies the basic process of the image recognition apparatus 100 will be described below with reference to FIG. Here, FIG. 19 is a flowchart illustrating an example of learning processing of the image recognition apparatus 100 according to the present embodiment.

図19に示すように、学習部102cは、利用者に入力部112を介して、パターンの長さN、パターン数P、ブロック長Lを入力させる(ステップSB−1)。なお、学習部102cは、入力部112を介して入力された画像群からN,P,L,pの値を計算により求めてもよい。   As illustrated in FIG. 19, the learning unit 102c causes the user to input the pattern length N, the number of patterns P, and the block length L via the input unit 112 (step SB-1). Note that the learning unit 102c may obtain the values of N, P, L, and p from the image group input via the input unit 112 by calculation.

そして、学習部102cは、ニューロンファイル106bに記憶された全ての結合係数Jijを0に初期化する(ステップSB−2)。 Then, the learning unit 102c, all coupling coefficients J ij stored in neurons file 106b is initialized to 0 (step SB-2).

そして、学習部102cは、パターン番号kに1を代入する(ステップSB−3)。   Then, the learning unit 102c substitutes 1 for the pattern number k (step SB-3).

そして、マスク生成部102aは、少数派ビットについては、1と−1の出現確率Prob(r μ=±1)を1/2として、マスク用の乱数列rμ(μ=1,2,・・・,P)を生成し、多数派ビットについては、ビットの反転を指定する値(1または−1)の出現確率(すなわち割当確率)を1/2より小さく設定して、マスク用の乱数列を生成する(ステップSB−4)。一例として、マスク生成部102aは、元パターンの発火率が0または1に近いほど割当確率を小さく設定してもよく、さらに元パターン間の相関が小さいほど、割当確率を小さく設定してもよい。なお、マスク生成部102aは、発火率や相関等に対応して予め計算され記憶部106に記憶された対応表やグラフ(図16等)を参照して、適切な割当確率pを設定してもよく、指定された元パターンの発火率や相関等に基づいて計算により割当確率pを求め、設定してもよい。一例として、マスク生成部102aは、以下の式に基づいて発火率fから割当確率pを求めてもよい。
Then, for the minority bit, the mask generation unit 102a sets the appearance probability Prob (r i μ = ± 1) of 1 and −1 to ½, and uses the mask random number sequence r μ (μ = 1, 2, .., P), and for the majority bit, the appearance probability (that is, the allocation probability) of the value (1 or -1) designating bit inversion is set to be smaller than 1/2, A random number sequence is generated (step SB-4). As an example, the mask generation unit 102a may set the allocation probability to be smaller as the firing rate of the original pattern is closer to 0 or 1, and may further set the allocation probability to be lower as the correlation between the original patterns is smaller. . Note that the mask generation unit 102a sets an appropriate allocation probability p with reference to a correspondence table or a graph (FIG. 16, etc.) calculated in advance and stored in the storage unit 106 in correspondence with the firing rate, correlation, and the like. Alternatively, the allocation probability p may be obtained and set by calculation based on the firing rate or correlation of the designated original pattern. As an example, the mask generation unit 102a may obtain the allocation probability p from the firing rate f based on the following equation.

そして、論理演算部102bは、XORまたはXNORの論理演算により、k番目の入力パターンをマスクでランダム化させる(ステップSB−5)。   Then, the logical operation unit 102b randomizes the kth input pattern with a mask by XOR or XNOR logical operation (step SB-5).

そして、学習部102cは、ヘブ学習則等に従い、ランダム化させたパターンをニューラルネットワークに記憶させる学習処理を行う(ステップSB−6)。   And the learning part 102c performs the learning process which memorize | stores the randomized pattern in a neural network according to a Hebb learning rule etc. (step SB-6).

そして、学習部102cは、パターン番号kがパターン数Pに達していない場合(ステップSB−7,No)、kをインクリメント(k→k+1)し(ステップSB−8)、上述したステップSB−4〜SB−7の処理を繰返す。   When the pattern number k has not reached the number of patterns P (No at Step SB-7), the learning unit 102c increments k (k → k + 1) (Step SB-8), and the above-described Step SB-4 Repeat the process of SB-7.

一方、パターン番号kがパターン数Pに達した場合(ステップSB−7,Yes)、結合係数の行列Jをニューロンファイル106bに出力し(ステップSB−9)、学習処理を終える。   On the other hand, when the pattern number k reaches the number of patterns P (step SB-7, Yes), the matrix J of coupling coefficients is output to the neuron file 106b (step SB-9), and the learning process is finished.

[想起処理(自己連想記憶モデル)]
つづいて、画像認識装置100の基本処理をより具体化した想起処理の一例について以下に図20を参照して説明する。ここで、図20は、本実施の形態における画像認識装置100の自己連想記憶モデルを用いた想起処理の一例を示すフローチャートである。
[Recall processing (self-associative memory model)]
Next, an example of a recall process that more specifically embodies the basic process of the image recognition apparatus 100 will be described below with reference to FIG. Here, FIG. 20 is a flowchart illustrating an example of a recall process using the self-associative memory model of the image recognition apparatus 100 according to the present embodiment.

図20に示すように、まず、想起部102dは、利用者に入力部112等を介して、手がかりとなる画像データである照合パターンを入力させるよう制御する(ステップSC−1)。   As shown in FIG. 20, first, the recall unit 102d controls the user to input a collation pattern, which is image data serving as a clue, via the input unit 112 or the like (step SC-1).

そして、想起部102dは、マスク番号kに1を代入する(ステップSC−2)。   Then, the recall unit 102d substitutes 1 for the mask number k (step SC-2).

そして、想起部102dは、マスク保存部106aからk番目のマスクを取得する(ステップSC−3)。   Then, the recalling unit 102d acquires the kth mask from the mask storage unit 106a (step SC-3).

そして、論理演算部102bは、ステップSB−5で用いた論理演算により、入力された照合パターンをk番目のマスクでランダム化させる(ステップSC−4)。   Then, the logical operation unit 102b randomizes the input collation pattern with the kth mask by the logical operation used in Step SB-5 (Step SC-4).

そして、想起部102dは、ランダム化パターンをニューラルネットワークの初期状態に設定する(ステップSC−5)。   Then, the recalling unit 102d sets the randomized pattern to the initial state of the neural network (step SC-5).

そして、想起部102dは、ニューラルネットワークの状態更新を行う(ステップSC−6)。   Then, the recall unit 102d updates the state of the neural network (step SC-6).

そして、想起部102dは、ニューラルネットワークの状態が収束したか否かを判定する(ステップSC−7)。例えば、想起部102dは、状態変数x(t)が更新しても同じ値となった場合や、数回の状態更新の周期で同じパターンの値を繰返す場合に、収束したと判定してもよい。   Then, the recalling unit 102d determines whether or not the state of the neural network has converged (step SC-7). For example, the recalling unit 102d may determine that the state has converged when the state variable x (t) becomes the same value even when it is updated, or when the value of the same pattern is repeated at several state update cycles. Good.

ニューラルネットワークの状態が収束していない場合(ステップSC−7,No)、想起部102dは、ステップSC−6に処理を戻し、更に状態更新を行う(時刻t→t+1)。   When the state of the neural network has not converged (step SC-7, No), the recalling unit 102d returns the process to step SC-6 and further updates the state (time t → t + 1).

一方、ニューラルネットワークの状態が収束したと判定した場合(ステップSC−7,Yes)、想起部102dは、エネルギー関数E(t)の値に基づいて、想起が成功したか否かを判定する(ステップSC−8)。例えば、想起部102dは、エネルギー関数E(t)の値が所定の閾値以下である場合に、想起成功と判定してもよい。想起が成功した場合(ステップSC−8,Yes)、想起部102dは、ニューラルネットワークの状態x(t)を復号化して、再構成パターンを出力部114に出力する(ステップSC−9)。   On the other hand, when it is determined that the state of the neural network has converged (step SC-7, Yes), the recalling unit 102d determines whether the recall is successful based on the value of the energy function E (t) ( Step SC-8). For example, the recall unit 102d may determine that recall is successful when the value of the energy function E (t) is equal to or less than a predetermined threshold. When the recall is successful (step SC-8, Yes), the recall unit 102d decodes the state x (t) of the neural network and outputs the reconstructed pattern to the output unit 114 (step SC-9).

一方、想起が成功しなかった場合(ステップSC−8,No)、想起部102dは、パターン番号kがパターン数Pに達したか否かを判定し(ステップSC−10)、k=Pでない場合は(SC−10,No)、kをインクリメント(k→k+1)し(ステップSC−11)、上述したステップSC−3〜SC−8の処理を繰返す。想起が成功しないまま(ステップSC−8,No)、パターン番号kがパターン数Pに達した場合は(ステップSC−10,Yes)、想起部102dは、想起失敗のエラーを出力し(ステップSC−12)、想起処理を終える。   On the other hand, if the recall is not successful (step SC-8, No), the recall unit 102d determines whether the pattern number k has reached the number of patterns P (step SC-10), and k is not equal to P. In the case (SC-10, No), k is incremented (k → k + 1) (step SC-11), and the above-described steps SC-3 to SC-8 are repeated. If the recall is not successful (step SC-8, No), and the pattern number k has reached the number of patterns P (step SC-10, Yes), the recall unit 102d outputs a recall failure error (step SC). -12) Finishing the recall process.

[想起処理(系列連想記憶モデル)]
つづいて、画像認識装置100の基本処理をより具体化した想起処理の一例について以下に図21を参照して説明する。ここで、図21は、本実施の形態における画像認識装置100の系列連想記憶モデルを用いた想起処理の一例を示すフローチャートである。
[Recollection processing (series associative memory model)]
Next, an example of a recall process that more specifically embodies the basic process of the image recognition apparatus 100 will be described below with reference to FIG. Here, FIG. 21 is a flowchart illustrating an example of the recall process using the sequence associative memory model of the image recognition apparatus 100 according to the present embodiment.

図21に示すように、想起部102dは、利用者に入力部112等を介して、状態更新させる最大ステップ数Tの値を入力させるよう制御する(ステップSD−1)。   As shown in FIG. 21, the recalling unit 102d controls the user to input the value of the maximum number of steps T for updating the state via the input unit 112 or the like (step SD-1).

そして、想起部102dは、マスク保存部106aからk=1番目のマスクを取得する(ステップSD−2)。   Then, the recall unit 102d acquires the k = 1st mask from the mask storage unit 106a (step SD-2).

そして、想起部102dは、ニューラルネットワークを初期化して、初期状態に設定する(ステップSD−3)。   Then, the recall unit 102d initializes the neural network and sets it to an initial state (step SD-3).

そして、想起部102dは、時刻tに0を代入する(ステップSD−4)。   Then, the recalling unit 102d substitutes 0 for the time t (step SD-4).

そして、想起部102dは、ニューラルネットワークの状態を更新する(ステップSD−5)。   Then, the recall unit 102d updates the state of the neural network (step SD-5).

そして、想起部102dは、ニューラルネットワークの状態を復号化して、出力として再構成パターンを計算する(ステップSD−6)。   Then, the recalling unit 102d decodes the state of the neural network and calculates a reconstruction pattern as an output (step SD-6).

そして、想起部102dは、更新したステップ数である時刻tが、所定の最大ステップ数Tに到達したか否かを判定する(ステップSD−7)。   Then, the recalling unit 102d determines whether or not the time t, which is the updated number of steps, has reached a predetermined maximum number of steps T (step SD-7).

所定のステップ数Tに到達していない場合は(ステップSD−7,No)、想起部102dは、tをインクリメント(t→t+1)し(ステップSD−8)、上述したステップSD−5〜SD−7の処理を繰返す。   When the predetermined number of steps T has not been reached (step SD-7, No), the recalling unit 102d increments t (t → t + 1) (step SD-8), and steps SD-5 to SD described above. Repeat the process of -7.

一方、所定のステップ数Tに達した場合は(ステップSD−7,Yes)、想起部102dは、そのときのニューラルネットワークの状態を復号化して再構成パターンを取得し出力部114に出力し、想起処理を終える。   On the other hand, when the predetermined number of steps T is reached (step SD-7, Yes), the recalling unit 102d decodes the state of the neural network at that time, acquires a reconstruction pattern, and outputs it to the output unit 114. Finish the recall process.

以上のように、画像系列の最初の画像に対応する連結パターンをニューラルネットワークの初期値に定め、状態更新則を順次適用し、各更新ステップでニューラルネットワークの状態から再構成パターンを計算して出力することにより、元の画像系列と非常に近い画像が順番どおりに出力される。   As described above, the connection pattern corresponding to the first image in the image sequence is defined as the initial value of the neural network, the state update rules are applied sequentially, and the reconstructed pattern is calculated from the state of the neural network at each update step and output. By doing so, images very close to the original image series are output in order.

以上で、本実施の形態の説明を終える。   This is the end of the description of the present embodiment.

[他の実施の形態]
さて、これまで本発明の実施の形態について説明したが、本発明は、上述した実施の形態以外にも、特許請求の範囲に記載した技術的思想の範囲内において種々の異なる実施の形態にて実施されてよいものである。
[Other embodiments]
Although the embodiments of the present invention have been described so far, the present invention is not limited to the above-described embodiments, but can be applied to various different embodiments within the scope of the technical idea described in the claims. It may be implemented.

また、画像認識装置100がスタンドアローンの形態で処理を行う場合を一例に説明したが、画像認識装置100は、クライアント端末からの要求に応じて処理を行い、その処理結果を当該クライアント端末に返却するようにしてもよい。   Moreover, although the case where the image recognition apparatus 100 performs processing in a stand-alone form has been described as an example, the image recognition apparatus 100 performs processing in response to a request from the client terminal, and returns the processing result to the client terminal. You may make it do.

また、実施の形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。   In addition, among the processes described in the embodiment, all or part of the processes described as being automatically performed can be performed manually, or the processes described as being performed manually can be performed. All or a part can be automatically performed by a known method.

このほか、上記文献中や図面中で示した処理手順、制御手順、具体的名称、各処理の登録データや検索条件等のパラメータを含む情報、画面例、データベース構成については、特記する場合を除いて任意に変更することができる。   In addition, unless otherwise specified, the processing procedures, control procedures, specific names, information including registration data for each processing, parameters such as search conditions, screen examples, and database configurations shown in the above documents and drawings Can be changed arbitrarily.

また、画像認識装置100に関して、図示の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。   Further, regarding the image recognition apparatus 100, each illustrated component is functionally conceptual, and does not necessarily need to be physically configured as illustrated.

例えば、画像認識装置100の各装置が備える処理機能、特に制御部102にて行われる各処理機能については、その全部または任意の一部を、CPU(Central Processing Unit)および当該CPUにて解釈実行されるプログラムにて実現してもよく、また、ワイヤードロジックによるハードウェアとして実現してもよい。なお、プログラムは、後述する記録媒体に記録されており、必要に応じて画像認識装置100に機械的に読み取られる。すなわち、ROMまたはHDなどの記憶部106などには、OS(Operating System)として協働してCPUに命令を与え、各種処理を行うためのコンピュータプログラムが記録されている。このコンピュータプログラムは、RAMにロードされることによって実行され、CPUと協働して制御部を構成する。   For example, the processing functions provided in each device of the image recognition device 100, in particular, the processing functions performed by the control unit 102, all or any part thereof are interpreted and executed by a CPU (Central Processing Unit) and the CPU. It may be realized by a program to be executed, or may be realized as hardware by wired logic. The program is recorded on a recording medium to be described later, and is mechanically read by the image recognition apparatus 100 as necessary. That is, in the storage unit 106 such as a ROM or an HD, a computer program for performing various processes by giving instructions to the CPU in cooperation with an OS (Operating System) is recorded. This computer program is executed by being loaded into the RAM, and constitutes a control unit in cooperation with the CPU.

また、このコンピュータプログラムは、画像認識装置100に対して任意のネットワーク300を介して接続されたアプリケーションプログラムサーバに記憶されていてもよく、必要に応じてその全部または一部をダウンロードすることも可能である。   The computer program may be stored in an application program server connected to the image recognition apparatus 100 via an arbitrary network 300, and may be downloaded in whole or in part as necessary. It is.

また、本発明に係るプログラムを、コンピュータ読み取り可能な記録媒体に格納してもよく、また、プログラム製品として構成することもできる。ここで、この「記録媒体」とは、メモリーカード、USBメモリ、SDカード、フレキシブルディスク、光磁気ディスク、ROM、EPROM、EEPROM、CD−ROM、MO、DVD、および、Blu−ray(登録商標)Disc等の任意の「可搬用の物理媒体」を含むものとする。   In addition, the program according to the present invention may be stored in a computer-readable recording medium, and may be configured as a program product. Here, the “recording medium” means a memory card, USB memory, SD card, flexible disk, magneto-optical disk, ROM, EPROM, EEPROM, CD-ROM, MO, DVD, and Blu-ray (registered trademark). It includes any “portable physical medium” such as Disc.

また、「プログラム」とは、任意の言語や記述方法にて記述されたデータ処理方法であり、ソースコードやバイナリコード等の形式を問わない。なお、「プログラム」は必ずしも単一的に構成されるものに限られず、複数のモジュールやライブラリとして分散構成されるものや、OS(Operating System)に代表される別個のプログラムと協働してその機能を達成するものをも含む。なお、実施の形態に示した各装置において記録媒体を読み取るための具体的な構成、読み取り手順、あるいは、読み取り後のインストール手順等については、周知の構成や手順を用いることができる。   The “program” is a data processing method described in an arbitrary language or description method, and may be in any format such as source code or binary code. The “program” is not necessarily limited to a single configuration, but is distributed in the form of a plurality of modules and libraries, or in cooperation with a separate program represented by an OS (Operating System). Including those that achieve the function. Note that a well-known configuration and procedure can be used for a specific configuration for reading a recording medium, a reading procedure, an installation procedure after reading, and the like in each device described in the embodiment.

記憶部106に格納される各種のデータベース等(マスク保存部106a、ニューロンファイル106b等)は、RAM、ROM等のメモリ装置、ハードディスク等の固定ディスク装置、フレキシブルディスク、および、光ディスク等のストレージ手段であり、各種処理やウェブサイト提供に用いる各種のプログラム、テーブル、データベース、および、ウェブページ用ファイル等を格納する。   Various databases (mask storage unit 106a, neuron file 106b, etc.) stored in the storage unit 106 are storage means such as a memory device such as RAM and ROM, a fixed disk device such as a hard disk, a flexible disk, and an optical disk. Yes, it stores various programs, tables, databases, web page files, etc. used for various processes and website provision.

また、画像認識装置100は、既知のパーソナルコンピュータ、ワークステーション等の情報処理装置として構成してもよく、また、該情報処理装置に任意の周辺装置を接続して構成してもよい。また、画像認識装置100は、該情報処理装置に本発明の方法を実現させるソフトウェア(プログラム、データ等を含む)を実装することにより実現してもよい。   The image recognition apparatus 100 may be configured as an information processing apparatus such as a known personal computer or workstation, or may be configured by connecting any peripheral device to the information processing apparatus. The image recognition apparatus 100 may be realized by installing software (including programs, data, and the like) that causes the information processing apparatus to realize the method of the present invention.

更に、装置の分散・統合の具体的形態は図示するものに限られず、その全部または一部を、各種の付加等に応じて、または、機能負荷に応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。すなわち、上述した実施形態を任意に組み合わせて実施してもよく、実施形態を選択的に実施してもよい。   Furthermore, the specific form of distribution / integration of the devices is not limited to that shown in the figure, and all or a part of them may be functional or physical in arbitrary units according to various additions or according to functional loads. Can be distributed and integrated. That is, the above-described embodiments may be arbitrarily combined and may be selectively implemented.

以上詳述に説明したように、本発明によれば、連想記憶モデルに記憶させる画像のパターン間の相関を取り除き、干渉の発生や記憶容量の低下を防ぐことができる、画像認識装置、画像認識方法、および、プログラムを提供することができ、特に画像認識や画像処理などの様々な分野において極めて有用である。   As described above in detail, according to the present invention, an image recognition apparatus and an image recognition that can eliminate the correlation between image patterns to be stored in the associative memory model and prevent occurrence of interference and a decrease in storage capacity. A method and a program can be provided, and it is extremely useful in various fields such as image recognition and image processing.

100 画像認識装置
102 制御部
102a マスク生成部
102b 論理演算部
102c 学習部
102d 想起部
104 通信制御インターフェース部
106 記憶部
106a マスク保存部
106b ニューロンファイル
108 入出力制御インターフェース部
112 入力部
114 出力部
200 外部システム
300 ネットワーク
DESCRIPTION OF SYMBOLS 100 Image recognition apparatus 102 Control part 102a Mask production | generation part 102b Logic operation part 102c Learning part 102d Recollection part 104 Communication control interface part 106 Storage part 106a Mask preservation | save part 106b Neuron file 108 Input / output control interface part 112 Input part 114 Output part 200 External System 300 network

Claims (11)

少なくとも記憶部と制御部を備えた画像認識装置であって、
上記制御部は、
指定された複数の画像の元パターンに基づいて、二値のうち上記元パターンにおいて出現頻度が高いビットの反転を抑制する割当確率でランダムな二値パターンであるマスクパターンを生成するマスク生成手段と、
上記元パターンと上記マスクパターンとの排他的論理和または否定排他的論理和を求めることにより、上記出現頻度が高い値のビット反転を抑制した被マスクパターンを生成する論理演算手段と、
上記マスクパターンに対応付けた上記被マスクパターンを連結パターンとして、ニューラルネットワークを用いた連想記憶モデルにて学習させる学習手段と、
を備えたことを特徴とする画像認識装置。
An image recognition device having at least a storage unit and a control unit,
The control unit
Mask generating means for generating a mask pattern that is a random binary pattern with an allocation probability that suppresses inversion of a bit having a high appearance frequency in the original pattern among the binary based on the specified original pattern of a plurality of images; ,
A logical operation means for generating a masked pattern in which bit inversion of the value having a high appearance frequency is suppressed by obtaining an exclusive OR or a negative exclusive OR of the original pattern and the mask pattern;
Learning means for learning with an associative memory model using a neural network, with the masked pattern associated with the mask pattern as a connected pattern;
An image recognition apparatus comprising:
請求項1に記載の画像認識装置において、
上記マスク生成手段は、
上記元パターンの発火率が0または1に近いほど上記割当確率を小さく設定すること、
を特徴とする画像認識装置。
The image recognition apparatus according to claim 1,
The mask generation means includes
Setting the allocation probability to be smaller as the firing rate of the original pattern is closer to 0 or 1;
An image recognition apparatus.
請求項2に記載の画像認識装置において、
上記マスク生成手段は、
以下の式に基づいて上記割当確率を求めること、
を特徴とする画像認識装置。
The image recognition apparatus according to claim 2,
The mask generation means includes
Obtaining the allocation probability based on the following equation:
An image recognition apparatus.
請求項2または3に記載の画像認識装置において、
上記マスク生成手段は、
上記元パターンの発火率が0または1に近いほど、また、上記複数の元パターン間の相関が小さいほど、上記割当確率を小さく設定すること、
を特徴とする画像認識装置。
The image recognition apparatus according to claim 2 or 3,
The mask generation means includes
Setting the allocation probability to be smaller as the firing rate of the original pattern is closer to 0 or 1, and as the correlation between the plurality of original patterns is smaller,
An image recognition apparatus.
請求項1乃至4のいずれか一つに記載の画像認識装置において、
上記論理演算手段は、
上記複数の画像のうち上記元パターン中の任意の数のビットごとに共通した上記マスクパターンを設定して、上記被マスクパターンを作成すること、
を特徴とする画像認識装置。
The image recognition device according to any one of claims 1 to 4,
The logical operation means is
Setting the mask pattern common to any number of bits in the original pattern among the plurality of images to create the masked pattern,
An image recognition apparatus.
請求項5に記載の画像認識装置において、
上記論理演算手段は、
上記複数の画像による長さNの上記元パターンを、先頭からL−1個ずつのブロック単位に区切り、ブロック毎に値が異なる上記マスクパターンを設定して、LN/(L−1)の長さの上記連結パターンを生成すること、
を特徴とする画像認識装置。
The image recognition apparatus according to claim 5.
The logical operation means is
The original pattern of length N by the plurality of images is divided into L-1 blocks from the beginning, the mask pattern having a different value for each block is set, and the length of LN / (L-1) Generating the above connection pattern;
An image recognition apparatus.
請求項6に記載の画像認識装置において、
上記マスク生成手段は、
上記ブロック毎に値が異なる上記マスクパターンを設定するために、上記割当確率pから、以下の式に基づいて、上記ブロック内のビット列を反転させる振り分け確率gを求めること、
を特徴とする画像認識装置。
The image recognition device according to claim 6.
The mask generation means includes
In order to set the mask pattern having a different value for each block, a distribution probability g for inverting the bit string in the block is determined from the allocation probability p based on the following equation:
An image recognition apparatus.
請求項1乃至7のいずれか一つに記載の画像認識装置において、
上記論理演算手段は、
上記画像の一次元二値データを上記元パターンとして、同じまたは短い長さの上記元パターンに基づく上記割当確率の上記ランダムな二値データを上記マスクパターンとして、両データの対応する値同士の排他的論理和または否定排他的論理和を求めることにより上記被マスクパターンを生成すること、
を特徴とする画像認識装置。
The image recognition apparatus according to any one of claims 1 to 7,
The logical operation means is
Using the one-dimensional binary data of the image as the original pattern and the random binary data of the allocation probability based on the original pattern of the same or short length as the mask pattern, the corresponding values of both data are mutually exclusive Generating the masked pattern by obtaining a logical OR or a negative exclusive OR,
An image recognition apparatus.
請求項1乃至8のいずれか一つに記載の画像認識装置において、
上記学習手段は、
上記マスクパターンを上記記憶部に格納し、
上記論理演算手段は、
指定された、手がかり画像である照合パターンに対して、上記記憶部に記憶された複数の上記マスクパターンの一つを用いて上記排他的論理和または上記否定排他的論理和を求めることにより、マスク化照合パターンを生成し、
上記制御部は、
上記マスク化照合パターンを上記連想記憶モデルに導入して収束するまで状態更新を繰り返し、収束状態のエネルギー関数の値が閾値以下の結果を得られない場合は、別の上記マスクパターンによるマスク化照合パターンを試行することにより、元パターンを探索する想起手段、
を更に備えたことを特徴とする画像認識装置。
The image recognition apparatus according to any one of claims 1 to 8,
The learning means is
Storing the mask pattern in the storage unit;
The logical operation means is
A mask is obtained by obtaining the exclusive OR or the negative exclusive OR using one of a plurality of the mask patterns stored in the storage unit with respect to the specified collation pattern which is a clue image. Generate a collation pattern,
The control unit
If the masked matching pattern is introduced into the associative memory model and state update is repeated until convergence, and if the result of the energy function in the converged state is less than the threshold value, masked matching with another mask pattern Recalling means to search the original pattern by trying the pattern,
An image recognition apparatus further comprising:
少なくとも記憶部と制御部を備えたコンピュータにおいて実行される画像認識方法であって、
上記制御部において、
指定された複数の画像の元パターンに基づいて、二値のうち上記元パターンにおいて出現頻度が高いビットの反転を抑制する割当確率でランダムな二値パターンであるマスクパターンを生成するマスク生成ステップと、
上記元パターンと上記マスクパターンとの排他的論理和または否定排他的論理和を求めることにより、上記出現頻度が高い値のビット反転を抑制した被マスクパターンを生成する論理演算ステップと、
上記マスクパターンに対応付けた上記被マスクパターンを連結パターンとして、ニューラルネットワークを用いた連想記憶モデルにて学習させる学習ステップと、
を含むことを特徴とする画像認識方法。
An image recognition method executed in a computer including at least a storage unit and a control unit,
In the control unit,
A mask generation step for generating a mask pattern that is a random binary pattern with an allocation probability that suppresses inversion of a bit having a high appearance frequency in the original pattern among the binary values based on the specified original pattern of the plurality of images; ,
A logical operation step of generating a masked pattern in which bit inversion of the value having a high appearance frequency is suppressed by obtaining an exclusive OR or a negative exclusive OR of the original pattern and the mask pattern;
A learning step of learning with an associative memory model using a neural network, with the masked pattern associated with the mask pattern as a connected pattern,
An image recognition method comprising:
少なくとも記憶部と制御部を備えたコンピュータに実行させるためのプログラムであって、
上記制御部において、
指定された複数の画像の元パターンに基づいて、二値のうち上記元パターンにおいて出現頻度が高いビットの反転を抑制する割当確率でランダムな二値パターンであるマスクパターンを生成するマスク生成ステップと、
上記元パターンと上記マスクパターンとの排他的論理和または否定排他的論理和を求めることにより、上記出現頻度が高い値のビット反転を抑制した被マスクパターンを生成する論理演算ステップと、
上記マスクパターンに対応付けた上記被マスクパターンを連結パターンとして、ニューラルネットワークを用いた連想記憶モデルにて学習させる学習ステップと、
を実行させるためのプログラム。
A program for causing a computer including at least a storage unit and a control unit to be executed,
In the control unit,
A mask generation step for generating a mask pattern that is a random binary pattern with an allocation probability that suppresses inversion of a bit having a high appearance frequency in the original pattern among the binary values based on the specified original pattern of the plurality of images; ,
A logical operation step of generating a masked pattern in which bit inversion of the value having a high appearance frequency is suppressed by obtaining an exclusive OR or a negative exclusive OR of the original pattern and the mask pattern;
A learning step of learning with an associative memory model using a neural network, with the masked pattern associated with the mask pattern as a connected pattern,
A program for running
JP2014013829A 2014-01-28 2014-01-28 Image recognition apparatus, image recognition method and program Pending JP2015141541A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014013829A JP2015141541A (en) 2014-01-28 2014-01-28 Image recognition apparatus, image recognition method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014013829A JP2015141541A (en) 2014-01-28 2014-01-28 Image recognition apparatus, image recognition method and program

Publications (1)

Publication Number Publication Date
JP2015141541A true JP2015141541A (en) 2015-08-03

Family

ID=53771852

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014013829A Pending JP2015141541A (en) 2014-01-28 2014-01-28 Image recognition apparatus, image recognition method and program

Country Status (1)

Country Link
JP (1) JP2015141541A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106997463A (en) * 2017-03-29 2017-08-01 浙江师范大学 A kind of guideboard recognition methods based on compressed sensing domain and convolutional neural networks
CN112466078A (en) * 2020-10-30 2021-03-09 重庆电子工程职业学院 Intelligent security system
WO2021070440A1 (en) * 2019-10-08 2021-04-15 ソニーセミコンダクタソリューションズ株式会社 Sensing device, signal processing system, and control method for sensing device

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106997463A (en) * 2017-03-29 2017-08-01 浙江师范大学 A kind of guideboard recognition methods based on compressed sensing domain and convolutional neural networks
WO2021070440A1 (en) * 2019-10-08 2021-04-15 ソニーセミコンダクタソリューションズ株式会社 Sensing device, signal processing system, and control method for sensing device
CN112466078A (en) * 2020-10-30 2021-03-09 重庆电子工程职业学院 Intelligent security system

Similar Documents

Publication Publication Date Title
Gu et al. Self-organizing map-based weight design for decomposition-based many-objective evolutionary algorithm
Schuman et al. Evolutionary optimization for neuromorphic systems
Gorgolis et al. Hyperparameter optimization of LSTM network models through genetic algorithm
Lin et al. Network pruning using adaptive exemplar filters
Rohekar et al. Constructing deep neural networks by Bayesian network structure learning
Cossu et al. Continual learning with gated incremental memories for sequential data processing
Philipp et al. Nonparametric neural networks
Sachan Knowledge graph embedding compression
JP2015141541A (en) Image recognition apparatus, image recognition method and program
JP2015095042A (en) Image recognition device, image recognition method, and program
Baykal et al. A theoretical view on sparsely activated networks
JP7131616B2 (en) Time-series data processor
CN110009048B (en) Method and equipment for constructing neural network model
Choubey et al. Approaches for handling premature convergence in CFG induction using GA
Templier et al. A geometric encoding for neural network evolution
CN112200314A (en) Method and system for fast training HTM space pool based on microcolumn self recommendation
CN109684185B (en) Heuristic traversal-based big data processing capacity test method for supercomputer
WO2019244804A1 (en) Processing device, method, and program
Al-Bundi et al. Crowding Optimization Method to Improve Fractal Image Compressions Based Iterated Function
Chen et al. Compressing fully connected layers using Kronecker tensor decomposition
Rossi et al. Learning to infer structures of network games
Zemouri An evolutionary building algorithm for deep neural networks
JP2015095041A (en) Image recognition device, image recognition method, and program
McDonald et al. Sparse super-regular networks
Chandra et al. A memetic framework for cooperative coevolution of recurrent neural networks