"ニューラルネットワークから構成される特徴抽出装置であって、前記ニューラルネットワークは、演算部である複数のニューロンを備え、前記複数のニューロンは、一方のニューロンから他方のニューロンへの信号の伝達の可否を決定するための属性値である発現遺伝子をそれぞれ1以上有しており、前記複数のニューロンのうち、特徴抽出の対象である対象データを分割して得られる入力データが入力された第1のニューロンは、当該入力データの値が大きいほど大きな値である第1信号値を、自身が有する前記発現遺伝子と同一の発現遺伝子を有する第2のニューロンへ出力し、前記第2のニューロンは、入力された前記第1信号値の総和に対応する値である第2信号値を前記対象データの特徴量として算出する特徴抽出装置。前記ニューラルネットワークは、複数の階層構造を有する階層型ニューラルネットワークであり、前記階層型ニューラルネットワークは、第1層の演算部である複数の第1層ニューロンと、第2層の演算部である第2層ニューロンとを備え、前記複数の第1層ニューロン及び前記第2層ニューロンは、前記複数の第1層ニューロンから前記第2層ニューロンへの信号の伝達可否を決定するための属性値である前記発現遺伝子をそれぞれ1以上有しており、前記対象データを分割して得られる各入力データが入力された前記複数の第1層ニューロンの各々は、当該入力データの値が大きいほど大きな前記第1信号値を、自身が有する前記発現遺伝子と同一の発現遺伝子を有する第2層ニューロンへ出力し、前記第2層ニューロンは、入力された前記第1信号値の総和に対応する前記第2信号値を前記対象データの特徴量として算出する請求項1に記載の特徴抽出装置。前記複数の第1層ニューロン及び前記第2層ニューロンの各々に対して、i事前に定められた属性値を示す複数の遺伝子である遺伝子レパートリーの中から1以上の前記遺伝子を選択し、ii選択された前記遺伝子を前記発現遺伝子としてそれぞれ割り当てる発現遺伝子割当部をさらに備えており、前記複数の第1層ニューロンの各々は、自身が有する前記発現遺伝子と同一の発現遺伝子を有する第2層ニューロンにだけ、前記第1信号値を出力する請求項2に記載の特徴抽出装置。前記発現遺伝子割当部は、前記発現遺伝子として割り当てるべき遺伝子を、前記遺伝子レパートリーの中からランダムに選択する請求項3に記載の特徴抽出装置。前記発現遺伝子割当部は、前記発現遺伝子として割り当てるべき遺伝子を、前記遺伝子レパートリーに含まれる遺伝子の事前に定められた組み合わせの中から選択する請求項3に記載の特徴抽出装置。前記第2層ニューロンは、入力された前記第1信号値の総和が事前に定められた範囲に含まれる場合には、事前に定められた値を前記第2信号値として出力し、含まれない場合には、前記事前に定められた値とは異なる値を前記第2信号値として出力する請求項2~5のいずれか1項に記載の特徴抽出装置。前記階層型ニューラルネットワークは、複数の前記第2層ニューロンを備え、前記特徴抽出装置は、前記複数の第2層ニューロンのうち、前記第1信号値の総和について前記複数の第2層ニューロンを降順に並べた場合の順位が事前に定められた範囲に含まれるニューロンの各々に、活動化命令を出力する比較部をさらに備えており、前記複数の第2層ニューロンのうち、a前記比較部より前記活動化命令を取得したニューロンは事前に定められた値を前記第2信号値として出力し、b前記活動化命令を取得しないニューロンは前記事前に定められた値とは異なる値を前記第2信号値として出力する請求項2~5のいずれか1項に記載の特徴抽出装置。前記複数のニューロンの各々は、A自身が有する発現遺伝子と、他のニューロンが有する発現遺伝子とで一致する発現遺伝子の数が事前に定められた閾値以上であれば、前記第1信号値を前記他のニューロンへ出力し、又は、B自身が有する発現遺伝子と、他のニューロンが有する発現遺伝子とで一致する発現遺伝子の数がより多いほど、より大きな重みを付けて、前記第1信号値を前記他のニューロンへ出力する請求項1に記載の特徴抽出装置。前記階層型ニューラルネットワークは、第3層の演算部として前記発現遺伝子を1以上有する複数の第3層ニューロンをさらに備え、前記階層型ニューラルネットワークは、複数の前記第2層ニューロンを備えており、前記複数の第2層ニューロンの各々は、前記第1信号値の総和に対応する値が事前に定められた範囲に含まれる場合には、自身が有する前記発現遺伝子と同一の発現遺伝子を有する第3層ニューロンへ、前記第2信号値を出力し、前記複数の第3層ニューロンの各々は、入力された前記第2信号値の総和に対応する値である第3信号値を前記対象データの特徴量として算出する請求項2に記載の特徴抽出装置。前記複数の第2層ニューロンのうち、前記第1信号値の総和について前記複数の第2層ニューロンを降順に並べた場合の順位が事前に定められた範囲に含まれるニューロンの各々に、活動化命令を出力する第1比較部と、前記複数の第3層ニューロンのうち、前記第2信号値の総和について前記複数の第3層ニューロンを降順に並べた場合の順位が事前に定められた範囲に含まれるニューロンの各々に、前記活動化命令を出力する第2比較部とを、さらに備えており、前記複数の第2層ニューロンのうち、a前記第1比較部より前記活動化命令を取得した第2層ニューロンは事前に定められた値を前記第2信号値として出力し、b前記活動化命令を取得しない第2層ニューロンは前記事前に定められた値とは異なる値を前記第2信号値として出力し、前記複数の第3層ニューロンのうち、a前記第2比較部より前記活動化命令を取得した第3層ニューロンは事前に定められた値を前記第3信号値として出力し、b前記活動化命令を取得しない第3層ニューロンは前記事前に定められた値とは異なる値を前記第3信号値として出力する請求項9に記載の特徴抽出装置。前記複数の第1層ニューロン、前記複数の第2層ニューロン及び前記複数の第3層ニューロンの各々に対して、i事前に定められた属性値を示す複数の遺伝子である、遺伝子レパートリーの中から1以上の前記遺伝子を選択し、ii選択された前記遺伝子を前記発現遺伝子としてそれぞれ割り当てる発現遺伝子割当部と、前記複数の第2層ニューロンの各々について、当該第2層ニューロンに入力された前記第1信号値の総和の前記複数の第2層ニューロンの中での順位が事前に定められた閾値と同順位か、より上位である場合には、当該第2層ニューロンに、活動化命令を出力する第1比較部と、前記複数の第3層ニューロンの各々について、当該第3層ニューロンに入力された前記第2信号値の総和の前記複数の第3層ニューロンの中での順位が事前に定められた閾値と同順位か、より上位である場合には、当該第3層ニューロンに、活動化命令を出力する第2比較部とをさらに備えており、前記複数の第1層ニューロンの各々は、前記特徴抽出の対象を第1層ニューロンの数に対応付けて分割して得られる前記各入力データの値を前記分割に対応付けて取得し、当該入力データの値を、自身が有する前記発現遺伝子と同一の発現遺伝子を有する第2層ニューロンに前記第1信号値として出力し、前記複数の第2層ニューロンの各々は、前記第1比較部より前記活動化命令を取得した場合には前記第2信号値として1を出力し、前記活動化命令を取得していない場合には前記第2信号値として0を出力し、前記複数の第3層ニューロンの各々は、前記第2比較部より前記活動化命令を取得した場合には前記第3信号値として1を出力し、前記活動化命令を取得していない場合には前記第3信号値として0を出力する請求項9に記載の特徴抽出装置。前記複数の第1層ニューロン、前記複数の第2層ニューロン及び前記複数の第3層ニューロンの各々に対して、i事前に定められた属性値を示す複数の遺伝子である、遺伝子レパートリーの中から1以上の前記遺伝子をそれぞれランダムに選択し、ii選択された前記遺伝子を前記発現遺伝子としてそれぞれ割り当てる発現遺伝子割当部と、前記複数の第2層ニューロンの各々について、当該第2層ニューロンに入力された前記第1信号値の総和の前記複数の第2層ニューロンの中での順位を取得し、前記複数の第2層ニューロンのうち、前記順位が事前に定められた閾値と同順位か、より下位である第2層ニューロンに、活動化命令を出力する第1比較部と、前記複数の第3層ニューロンの各々について、当該第3層ニューロンに入力された前記第2信号値の総和の、前記複数の第3層ニューロンの中での順位を取得し、前記複数の第3層ニューロンのうち、前記順位が事前に定められた閾値と同順位か、より下位である第3層ニューロンに、活動化命令を出力する第2比較部とをさらに備えており、前記複数の第1層ニューロンの各々は、前記特徴抽出の対象を第1層ニューロンの数に対応付けて分割して得られる前記各入力データの値を前記分割に対応付けて取得し、当該入力データの値を、自身が有する前記発現遺伝子と同一の発現遺伝子を有する第2層ニューロンに前記第1信号値として出力し、前記複数の第2層ニューロンの各々は、前記第1比較部より前記活動化命令を取得した場合には前記第2信号値として1を出力し、前記活動化命令を取得していない場合には、前記第2信号値として0を出力し、前記複数の第3層ニューロンの各々は、前記第2比較部より前記活動化命令を取得した場合には前記第3信号値として1を出力し、前記活動化命令を取得していない場合には、前記第3信号値として0を出力する請求項9に記載の特徴抽出装置。ニューラルネットワークを用いた特徴抽出方法であって、前記ニューラルネットワークは、演算部である複数のニューロンを備え、前記複数のニューロンは、一方のニューロンから他方のニューロンへの信号の伝達の可否を決定するための属性値である発現遺伝子をそれぞれ1以上有しており、前記複数のニューロンのうち、特徴抽出の対象である対象データを分割して得られる入力データが入力された第1のニューロンにおいて、当該入力データの値が大きいほど大きな値である第1信号値を、自身が有する前記発現遺伝子と同一の発現遺伝子を有する第2のニューロンへ出力する出力ステップと、前記第2のニューロンにおいて、入力された前記第1信号値の総和に対応する値である第2信号値を前記対象データの特徴量として算出する算出ステップとを含む特徴抽出方法。請求項13に記載の特徴抽出方法をコンピュータに実行させるプログラム。前記発現遺伝子は複数であり、前記第2のニューロンのそれぞれについて、当該第2のニューロンに入力された第1信号値の数が大きいほど、より大きくなるように、当該第2のニューロンが有する発現遺伝子の度数を決定し、決定された度数を前記複数の発現遺伝子のそれぞれごとに合計した度数の分布を示す情報である遺伝子コードを、前記対象データの特徴として出力する請求項1に記載の特徴抽出装置。しかしながら、対象データの特徴をうまく抽出できるニューラルネットワークを実現するには、一般に、学習と呼ばれる準備作業が不可欠である。ここで、学習とは、事前に答え人の名前や良不良等、認識させたい属性情報が判明している学習用データを用いて、ニューラルネットワーク内のパラメタを調整する作業である。このニューラルネットワークの学習には、大量の学習用データを事前に準備する必要がある。しかし、例えば、画像認識により工業製品の良品と不良品とを判断させる検査装置の場合、その工業製品が新商品であったり、生産ラインの立ち上げ直後である場合等、十分な数の学習用データ特に、不良品データが集まっていない場合が多い。そのため、必要な学習データを確保できず、十分な認識性能を有するニューラルネットワークを準備することができないという課題がある。そこで本発明は、事前の学習を行わなくても認識対象の特徴抽出が可能な特徴抽出装置を提供することを目的とする。本発明のある局面に係る特徴抽出装置は、ニューラルネットワークから構成される特徴抽出装置であって、前記ニューラルネットワークは、演算部である複数のニューロンを備え、前記複数のニューロンは、一方のニューロンから他方のニューロンへの信号の伝達の可否を決定するための属性値である発現遺伝子をそれぞれ1以上有しており、前記複数のニューロンのうち、特徴抽出の対象である対象データを分割して得られる入力データが入力された第1のニューロンは、当該入力データの値が大きいほど大きな値である第1信号値を、自身が有する前記発現遺伝子と同一の発現遺伝子を有する第2のニューロンへ出力し、前記第2のニューロンは、入力された前記第1信号値の総和に対応する値である第2信号値を前記対象データの特徴量として算出する。この構成によると、発現遺伝子によって第1のニューロンから第2のニューロンへの信号の信号経路が決定される。また、信号経路が決まると、第2のニューロンは、第1ニューロンから得られた入力の合計値に応じて、対象データの特徴量を出力できる。よって、事前の学習を行わなくても認識対象の特徴抽出が可能な特徴抽出装置を実現できる。より具体的には、前記ニューラルネットワークは、複数の階層構造を有する階層型ニューラルネットワークであり、前記階層型ニューラルネットワークは、第1層の演算部である複数の第1層ニューロンと、第2層の演算部である第2層ニューロンとを備え、前記複数の第1層ニューロン及び前記第2層ニューロンは、前記複数の第1層ニューロンから前記第2層ニューロンへの信号の伝達可否を決定するための属性値である前記発現遺伝子をそれぞれ1以上有しており、前記対象データを分割して得られる各入力データが入力された前記複数の第1層ニューロンの各々は、当該入力データの値が大きいほど大きな前記第1信号値を、自身が有する前記発現遺伝子と同一の発現遺伝子を有する第2層ニューロンへ出力し、前記第2層ニューロンは、入力された前記第1信号値の総和に対応する前記第2信号値を前記対象データの特徴量として算出するとしてもよい。この構成によると、発現遺伝子によって第1層のニューロンから第2層のニューロンへの信号の信号経路が決定される。また、信号経路が決まると、第2層の各々のニューロンは、対象データの特徴量を出力できる。よって、従来の階層型ニューラルネットワークでは一般に不可欠とされる、教師信号を用いた学習プロセスを行わずに、対象データの特徴量を抽出可能な特徴抽出装置を実現できる。また、前記複数の第1層ニューロン及び前記第2層ニューロンの各々に対して、i事前に定められた属性値を示す複数の遺伝子である遺伝子レパートリーの中から1以上の前記遺伝子を選択し、ii選択された前記遺伝子を前記発現遺伝子としてそれぞれ割り当てる発現遺伝子割当部をさらに備えており、前記複数の第1層ニューロンの各々は、自身が有する前記発現遺伝子と同一の発現遺伝子を有する第2層ニューロンにだけ、前記第1信号値を出力するとしてもよい。具体的には、前記発現遺伝子割当部は、前記発現遺伝子として割り当てるべき遺伝子を、前記遺伝子レパートリーの中からランダムに選択するとしてもよい。これによると、発現遺伝子割当部によって、各ニューロンへ発現遺伝子をランダムに割り当てることができる。発現遺伝子の割当をランダムとすることにより、多様な対象データに対して、安定した特徴抽出性能を発揮する特徴抽出装置とすることができる。さらに、発現遺伝子のみで信号の信号経路を形成するため、より、安定した特徴抽出性能を発揮できる。または、前記発現遺伝子割当部は、前記発現遺伝子として割り当てるべき遺伝子を、前記遺伝子レパートリーに含まれる遺伝子の事前に定められた組み合わせの中から選択するとしてもよい。これによると、事前に定められた発現遺伝子の組み合わせパターンを用いて、対象データを表現することができる。また、前記第2層ニューロンは、入力された前記第1信号値の総和が事前に定められた範囲に含まれる場合には、事前に定められた値を前記第2信号値として出力し、含まれない場合には、前記事前に定められた値とは異なる値を前記第2信号値として出力するとしてもよい。これにより、特徴抽出装置による対象データの特徴の抽出方針を、入力された値の総和を基準として選択することができる。好ましくは、前記階層型ニューラルネットワークは、複数の前記第2層ニューロンを備え、前記特徴抽出装置は、前記複数の第2層ニューロンのうち、前記第1信号値の総和について前記複数の第2層ニューロンを降順に並べた場合の順位が事前に定められた範囲に含まれるニューロンの各々に、活動化命令を出力する比較部をさらに備えており、前記複数の第2層ニューロンのうち、a前記比較部より前記活動化命令を取得したニューロンは事前に定められた値を前記第2信号値として出力し、b前記活動化命令を取得しないニューロンは前記事前に定められた値とは異なる値を前記第2信号値として出力するとしてもよい。この構成によると、比較部は、第2層に属するニューロンの各々を、入力値の総和の相対的な順位で評価し、事前の評価基準に適合するニューロンを活動化させることができる。すなわち、特徴抽出装置による対象データの特徴の抽出方針を、入力値の総和の相対的な順位により選択することができる。また、前記複数のニューロンの各々は、A自身が有する発現遺伝子と、他のニューロンが有する発現遺伝子とで一致する発現遺伝子の数が事前に定められた閾値以上であれば、前記第1信号値を前記他のニューロンへ出力し、又は、B自身が有する発現遺伝子と、他のニューロンが有する発現遺伝子とで一致する発現遺伝子の数がより多いほど、より大きな重みを付けて、前記第1信号値を前記他のニューロンへ出力するとしてもよい。また、前記階層型ニューラルネットワークは、第3層の演算部として前記発現遺伝子を1以上有する複数の第3層ニューロンをさらに備え、前記階層型ニューラルネットワークは、複数の前記第2層ニューロンを備えており、前記複数の第2層ニューロンの各々は、前記第1信号値の総和に対応する値が事前に定められた範囲に含まれる場合には、自身が有する前記発現遺伝子と同一の発現遺伝子を有する第3層ニューロンへ、前記第2信号値を出力し、前記複数の第3層ニューロンの各々は、入力された前記第2信号値の総和に対応する値である第3信号値を前記対象データの特徴量として算出するとしてもよい。また、好ましくは、前記複数の第2層ニューロンのうち、前記第1信号値の総和について前記複数の第2層ニューロンを降順に並べた場合の順位が事前に定められた範囲に含まれるニューロンの各々に、活動化命令を出力する第1比較部と、前記複数の第3層ニューロンのうち、前記第2信号値の総和について前記複数の第3層ニューロンを降順に並べた場合の順位が事前に定められた範囲に含まれるニューロンの各々に、前記活動化命令を出力する第2比較部とを、さらに備えており、前記複数の第2層ニューロンのうち、a前記第1比較部より前記活動化命令を取得した第2層ニューロンは事前に定められた値を前記第2信号値として出力し、b前記活動化命令を取得しない第2層ニューロンは前記事前に定められた値とは異なる値を前記第2信号値として出力し、前記複数の第3層ニューロンのうち、a前記第2比較部より前記活動化命令を取得した第3層ニューロンは事前に定められた値を前記第3信号値として出力し、b前記活動化命令を取得しない第3層ニューロンは前記事前に定められた値とは異なる値を前記第3信号値として出力するとしてもよい。この構成によると、2層構造では対象データの特徴を十分に抽出できない場合においても、層を増やすことにより、より正確に対処データの特徴を抽出することができる。また、前記複数の第1層ニューロン、前記複数の第2層ニューロン及び前記複数の第3層ニューロンの各々に対して、i事前に定められた属性値を示す複数の遺伝子である、遺伝子レパートリーの中から1以上の前記遺伝子を選択し、ii選択された前記遺伝子を前記発現遺伝子としてそれぞれ割り当てる発現遺伝子割当部と、前記複数の第2層ニューロンの各々について、当該第2層ニューロンに入力された前記第1信号値の総和の前記複数の第2層ニューロンの中での順位が事前に定められた閾値と同順位か、より上位である場合には、当該第2層ニューロンに、活動化命令を出力する第1比較部と、前記複数の第3層ニューロンの各々について、当該第3層ニューロンに入力された前記第2信号値の総和の前記複数の第3層ニューロンの中での順位が事前に定められた閾値と同順位か、より上位である場合には、当該第3層ニューロンに、活動化命令を出力する第2比較部とをさらに備えており、前記複数の第1層ニューロンの各々は、前記特徴抽出の対象を第1層ニューロンの数に対応付けて分割して得られる前記各入力データの値を前記分割に対応付けて取得し、当該入力データの値を、自身が有する前記発現遺伝子と同一の発現遺伝子を有する第2層ニューロンに前記第1信号値として出力し、前記複数の第2層ニューロンの各々は、前記第1比較部より前記活動化命令を取得した場合には前記第2信号値として1を出力し、前記活動化命令を取得していない場合には前記第2信号値として0を出力し、前記複数の第3層ニューロンの各々は、前記第2比較部より前記活動化命令を取得した場合には前記第3信号値として1を出力し、前記活動化命令を取得していない場合には前記第3信号値として0を出力するとしてもよい。この構成によると、第1層-第2層間の信号伝播及び、第2層-第3層間の信号伝播において、前層から伝播された入力値が相対的に大きいニューロンを選択的に活動化させることにより、対象データの特徴を抽出することができる。また、前記複数の第1層ニューロン、前記複数の第2層ニューロン及び前記複数の第3層ニューロンの各々に対して、i事前に定められた属性値を示す複数の遺伝子である、遺伝子レパートリーの中から1以上の前記遺伝子をそれぞれランダムに選択し、ii選択された前記遺伝子を前記発現遺伝子としてそれぞれ割り当てる発現遺伝子割当部と、前記複数の第2層ニューロンの各々について、当該第2層ニューロンに入力された前記第1信号値の総和の前記複数の第2層ニューロンの中での順位を取得し、前記複数の第2層ニューロンのうち、前記順位が事前に定められた閾値と同順位か、より下位である第2層ニューロンに、活動化命令を出力する第1比較部と、前記複数の第3層ニューロンの各々について、当該第3層ニューロンに入力された前記第2信号値の総和の、前記複数の第3層ニューロンの中での順位を取得し、前記複数の第3層ニューロンのうち、前記順位が事前に定められた閾値と同順位か、より下位である第3層ニューロンに、活動化命令を出力する第2比較部とをさらに備えており、前記複数の第1層ニューロンの各々は、前記特徴抽出の対象を第1層ニューロンの数に対応付けて分割して得られる前記各入力データの値を前記分割に対応付けて取得し、当該入力データの値を、自身が有する前記発現遺伝子と同一の発現遺伝子を有する第2層ニューロンに前記第1信号値として出力し、前記複数の第2層ニューロンの各々は、前記第1比較部より前記活動化命令を取得した場合には前記第2信号値として1を出力し、前記活動化命令を取得していない場合には、前記第2信号値として0を出力し、前記複数の第3層ニューロンの各々は、前記第2比較部より前記活動化命令を取得した場合には前記第3信号値として1を出力し、前記活動化命令を取得していない場合には、前記第3信号値として0を出力するとしてもよい。この構成によると、第1層-第2層間の信号伝播及び、第2層-第3層間の信号伝播において、前層から伝播された入力値が相対的に小さいニューロンを選択的に活動化させることにより、対象データがもたない特徴を抽出することができる。すなわち、前記発現遺伝子は複数であり、前記第2のニューロンのそれぞれについて、当該第2のニューロンに入力された第1信号値の数が大きいほど、より大きくなるように、当該第2のニューロンが有する発現遺伝子の度数を決定し、決定された度数を前記複数の発現遺伝子のそれぞれごとに合計した度数の分布を示す情報である遺伝子コードを、前記対象データの特徴として出力するとしてもよい。なお、本発明は、このような特徴抽出装置として実現できるだけでなく、特徴抽出装置に含まれる特徴的な手段をステップとする特徴抽出方法として実現したり、そのような特徴的なステップをコンピュータに実行させるプログラムとして実現したりすることもできる。そして、そのようなプログラムは、CD-ROM等の記録媒体及びインターネット等の伝送媒体を介して流通させることができるのは言うまでもない。さらに、本発明は、このような特徴抽出装置の機能の一部又は全てを実現する半導体集積回路LSIとして実現したり、このような特徴抽出装置を含む特徴抽出システムとして実現したりできる。以上より、本発明は、事前の学習を行わなくても認識対象の特徴抽出が可能な特徴抽出装置を提供できる。以下、本発明の実施の形態について、図面を用いて詳細に説明する。なお、以下で説明する実施の形態は、いずれも本発明の好ましい一具体例を示すものである。以下の実施の形態で示される数値、形状、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例である。したがって、これらの各形態により、本発明が限定されるものではない。本発明は、請求の範囲だけによって限定される。よって、以下の実施の形態における構成要素のうち、本発明の最上位概念を示す独立請求項に記載されていない構成要素については、本発明の課題を達成するのに必ずしも必要ではないが、より好ましい形態を構成するものとして説明される。図1は、本実施の形態に係る特徴抽出装置100を用いたパターン認識の処理の一例を示す概念図である。ここでは、画像106と画像110のどちらが、画像102により類似した画像であるかを、特徴抽出装置100を用いて認識する場合を考える。図1に示されるように、特徴抽出装置100は、例えば画像データを取得し、その特徴を示す特徴量から構成される長さ1以上のベクトルである特徴ベクトルを出力する。いま、特徴抽出装置100に画像102の画像データが入力されると、その特徴ベクトルとして、特徴ベクトル104が出力されたとする。同様に、特徴抽出装置100に、画像102と類似する画像106の画像データを入力すると、特徴ベクトル108が出力されたとする。また、特徴抽出装置100に画像102と非類似の画像110の画像データを入力すると、特徴ベクトル112が出力されたとする。この場合、ユーザは、特徴抽出装置100によって出力された特徴ベクトル同士の一致度例えば、内積を算出することにより、各画像間の類似度を知ることができる。上記の例では、特徴ベクトル104と特徴ベクトル108の内積が4であるので、画像102と画像106の類似度は4点と計算される。同様に、特徴ベクトル104と特徴ベクトル112の内積は1であるので、画像102と画像110の類似度は1点と計算される。したがって、画像106と画像110のうち、画像102により類似する画像は、画像106であると判断される。図2は、本実施の形態に係る特徴抽出装置100の構成を示すブロック図である。図2に示されるように、特徴抽出装置100は、階層型のニューラルネットワークから構成される。階層の数に上限はないが、少なくとも2層以上は必要である。図2では、説明のため、2層からなるニューラルネットワークを例に挙げて説明する。後述するように、各階層は入力データの特徴を示す特徴量を出力する演算部であるニューロンの集合である。ニューロンは活動化状態と非活動化状態のいずれかの状態をとるが、初期状態では非活動化状態である。特徴抽出装置100は、第1層309の演算部である複数の第1層ニューロン301~第1層ニューロン303と、第2層319の演算部である複数の第2層ニューロン311~第2層ニューロン313及び比較部352とを備える。全ての第1層ニューロン及び第2層ニューロンには、事前に定められた複数の遺伝子以後、遺伝子レパートリーとよぶの中から1個以上の遺伝子が事前にランダムに割り当てられている。個々のニューロンに割り当てられた遺伝子をそのニューロンの発現遺伝子と呼ぶ。発現遺伝子は、隣接する階層間例えば第1層ニューロンから第2層ニューロンへの信号の伝達可否を、後述するマッチングルールに従って決定する際に用いられる属性値である。なお、特徴抽出装置100を計算機上で実装する際には、発現遺伝子は、例えば数値や文字列、ビット列等で表現される識別子となる。なお、発現遺伝子を用いてマッチングルールに従い決定された信号経路を、以後マッチングネットワークと呼ぶ。第1層ニューロン301~303は、それぞれ、入力として、特徴抽出装置100によって特徴を抽出すべき対象データを分割して得られる入力データA~入力データCを受け取る。また、第1層ニューロン301~303の各々は、入力された入力データA~入力データCに基づき第1信号値を決定し、その値をマッチングネットワークで接続されている第2層ニューロンへ出力する。第1信号値の決定方法には、例えば、入力データを二値化する方法事前に定めた閾値以上の入力を受けた場合には1を、それ以下の入力を受けたか、又は、入力を受け取らなかった場合には0を第1信号値として出力するや、単調増加の階段関数を適用する方法、入力値をそのまま第1信号値として出力する方法などが考えられる。第1信号値の決定方法は、他の方法でもよいが、入力された入力データの値が大きいほど、第1信号値が大きくなるように決定される。第2層ニューロン311~313は、それぞれ、第1層ニューロンから取得した第1信号値の総和を算出する。次に、第2層ニューロン311~313の各々は、算出した総和を比較部352へ出力し、比較部352から比較結果を取得する。第2層ニューロン311~313の各々は、比較部352から取得した比較結果に基づき第2信号値を算出し、出力する。これが、対象データの特徴量である。また、第2層ニューロンが出力する全ての特徴量の組が、特徴ベクトルとなる。ここでは、第2層ニューロン311が第2信号値を特徴量Aとして出力し、第2層ニューロン312が第2信号値を特徴量Bとして出力し、第2層ニューロン313が第2信号値を特徴量Cとして出力しており、特徴量A、特徴量B、特徴量Cをこの順に並べたものが、対象データの特徴ベクトルとなる。なお、第1層ニューロン及び第2層ニューロンの総数は、対象データのデータ量に依存するが、およそ3個~10万個程度が目安となる。比較部352は、第2層ニューロン311~313の各々から取得した合計値総和を比較し、比較結果に応じて、活動化命令を出力するニューロンを第2層ニューロンの中から選択する。例えば、比較部352は、取得した合計値の大小により第2層ニューロン全体の中で各第2層ニューロンを順位付けし、上位10以内の第2層ニューロンに、比較結果として活動化命令を出力すること等が考えられる。活動化命令を取得し活動化状態となった第2層ニューロンは、次の層へ1を出力した後、再び非活動化状態に戻る。一方、活動化命令を取得しなかった非活動化状態の第2層ニューロンは、次の層へ0を出力すること等が考えられる。発現遺伝子割当部350は、第1層ニューロン及び第2層ニューロンの各々に対して、遺伝子レパートリーの中から、1以上の遺伝子をランダムに選択し、それぞれに割り当てる。遺伝子レパートリーには、具体的には、2個以上、100個以下程度の相異なる遺伝子が含まれる。また、1つのニューロンに割り当てられる遺伝子の数は、およそ、1~10程度である。これらは、後述するように、脳の情報処理基盤を担う局所神経回路の配線が、数十の遺伝子レパートリーの発現によって実現されているという生物学的な仮説を基盤としている。なお、各ニューロンに割り当てられる発現遺伝子の数は、互いに異なっていてもよいが、説明のため、本実施の形態では全てのニューロンに割り当てられる発現遺伝子の数は同数であるとして説明する。次に、図3及び図4を参照し、本実施の形態に係る特徴抽出装置100を構成するニューラルネットワークの特徴であるマッチングルールについて、従来のニューラルネットワークと比較して説明する。図3は、従来の階層型ニューラルネットワークにおける信号の伝播処理を説明する図である。なお、階層型ニューラルネットワークは広く知られた技術であるため、ここでは概要を述べるに留める。図3に示されるニューラルネットワークは、ニューロン201~ニューロン205の5つのニューロンを備える3層の階層型ニューラルネットワークである。一般に、階層型ニューラルネットワークは、入力層、中間層及び出力層という複数の階層で構成される。このネットワーク構造では、ニューロンがそれぞれ層状に配置され、同じ階層に属するニューロン同士は信号経路を有さない。一方、隣接する階層に属するニューロン同士は相互に信号経路を有している。この信号経路は、入力層から出力層に向けて一方通行で信号を伝播する。そのため信号の伝播は、前の層から次の層への一方向にのみ行われる。図3の例では、ニューロン201及びニューロン202が入力層第1層であり、ニューロン203及びニューロン204が中間層第2層であり、ニューロン205が出力層第3層である。ニューロンを結ぶ信号経路は、それぞれ重みを有しており、各ニューロンは、上位層から出力された値に重みを乗じた値を入力信号として取得する。また、各々のニューロンは、閾値と伝達関数とを有しており、入力信号の和から閾値を引いた値を伝達関数に入力し、伝達関数から得られる値を、次層のニューロンへ出力する。例えば、ニューロン201からニューロン203への信号経路が有する重みがW31であり、ニューロン202からニューロン203への信号経路が有する重みがW32であり、ニューロン203の閾値がW30であり、ニューロン203が有する伝達関数をfとする。いま、ニューロン201へX1が入力され、ニューロン202へX2が入力された場合、ニューロン203への入力信号の和は、S1=X1×W31X2×W32-W30となる。よって、ニューロン203は、H1=fS1を、ニューロン205へ向けて出力する。ニューロン204も、同様にして、入力信号の和S2を算出し、伝達関数の出力であるH2を、H2=fS2として求め、ニューロン205へ出力する。出力層であるニューロン205は、重みW53及びW54並びに閾値W50を用いて、ニューロン203及びニューロン204から取得した入力信号の和であるS3を、S3=H1×W53H2×W54-W50として計算する。その後、ニューロン205は伝達関数の出力であるH3を、H3=fS3として求め、H3をY1として出力する。以上の処理により、図3に示す階層型ニューラルネットワークは、対象データである入力X1及びX2の特徴ベクトルとして、Y1を出力する。ここで、Y1が期待される出力正解であればよいが、間違いであった場合には、前述の学習が必要となる。具体的には、本来期待される出力正しい特徴ベクトルをY2とすると、Y2と出力Y1との差Y2-Y1が小さくなるように、信号経路の重みを修正する。すなわち、Y2と比較して出力Y1が大きければ、出力Y1が小さくなるように信号経路の重みを小さくする。一方、Y2と比較して出力Y1が小さければ、出力Y1が大きくなるように信号経路の重みを大きくする。その後、修正後の重みをもつ階層型ニューラルネットワークに対して、新たな入力X3及びX4を入力し、得られる出力Y3が、期待される出力Y4付近の範囲に収束するまで、上記の入力→出力→学習の手順を繰り返す。以上述べたように、従来の階層型ニューラルネットワークには、1信号経路の重みや、2各ニューロンの閾値、3伝達関数の種類等、及び、4学習の際に教師信号と出力との差に乗じる学習係数など、多数のパラメタが含まれている。これらのパラメタを、多数の教師信号入力X1、X2及び、入力に対して期待される出力Y2の組を用いた学習により決定していく。その結果、教師信号以外のデータに対しても適切な特徴ベクトルを出力できるニューラルネットワークを生成できる。これに対し、本実施の形態に係る特徴抽出装置100を構成するマッチングネットワークは、必ずしも学習を必要としない。図4は、本実施の形態に係る特徴抽出装置100で使用するマッチングネットワークにおける信号の伝搬処理を説明する図である。図4に示されるように、マッチングネットワークも従来の階層型ニューラルネットワークと同様に複数の階層で構成される。また、信号経路は、入力層から出力層に向けて一方通行で信号を伝播するため、信号の伝播は、前の層から次の層への一方向にのみ行われる点も同様である。なお、図4では、簡単のため中間層を省略する。本実施の形態に係る特徴抽出装置を構成するマッチングネットワークは、信号経路に重みを有していない。マッチングネットワークは、重みに代わり、ランダムに割り当てられた発現遺伝子によって信号の出力先を決定する。図4に示されるニューロン251~ニューロン259は、ここでは、いずれも2つの発現遺伝子を有する。例えば、第1層に属するニューロン251は、1番と7番という番号で表された発現遺伝子を有し、ニューロン252は、3番と8番という番号で表された発現遺伝子を有する。どのニューロンがどの発現遺伝子を有するかは、発現遺伝子割当部350により、完全にランダムに決定される。この発現遺伝子を用いたマッチングルールによって、ニューロン間の信号経路を形成する点が、従来の階層型ニューラルネットワークと異なる点である。具体的には、ニューロン251は、1番と7番の発現遺伝子を有しているため、1番の発現遺伝子及び7番の発現遺伝子の少なくとも一方を有している第2層のニューロンへ信号を出力するする。よって、ニューロン251は、ニューロン255、ニューロン256、ニューロン257の3つのニューロンへ信号を出力する。同様に、3番と8番の発現遺伝子を有するニューロン252は、ニューロン253、ニューロン256、ニューロン258、ニューロン259の4つのニューロンへ信号を出力する。すなわち、複数のニューロンのうち、あるニューロンから、他のニューロンの各々へ信号を伝播させる際に、同じ発現遺伝子を有するニューロン間でのみ信号を伝播させる、というルールを、マッチングルールとよぶ。複数のニューロンは、階層構造を有していなくてもよい。なお、上記の階層型ニューラルネットワークにおいては、同一層内では信号経路を形成していない。より具体的には、いま、ニューロン251にX1が入力され、ニューロン252へX2が入力されたとする。ここでは、ニューロン251及びニューロン252は、入力値をそのまま出力するとする。この時、第2層に属する各ニューロンに入力された入力信号の和は、それぞれ、ニューロン253ではX2、ニューロン254では0、ニューロン255ではX1、ニューロン256ではX1X2、ニューロン257ではX1、ニューロン258ではX2、ニューロン259ではX2となる。第2層の各ニューロンは、入力された入力信号の総和に応じて、出力値を決定する。出力値の決定方法は種々のものが考えられるが、ここでは、入力信号の総和が上位50以内であるニューロンは1を出力し、他のニューロンは0を出力するとする。具体的に、X1=3、X2=1とすると、第2層に属する各ニューロンへの入力信号の和は、それぞれ、ニューロン253で1、ニューロン254で0、ニューロン255で3、ニューロン256で4、ニューロン257で3、ニューロン258で1、ニューロン259で1となる。よって、第2層に属する各ニューロンからの出力値特徴量は、それぞれ、Y1=0、Y2=0、Y3=1、Y4=1、Y5=1、Y6=0、Y7=0となる。この特徴量を並べたベクトルが特徴ベクトルとなる。よって、マッチングネットワークを用いて、入力X1及びX2に対する特徴ベクトルは、0、0、1、1、1、0、0として得られる。以上述べたように、マッチングネットワークでは、ニューロンに、その属性値として発現遺伝子をランダムに割当て、同一の発現遺伝子を有するニューロン間でのみ信号の伝播がなされる。発現遺伝子の割当は、ネットワーク生成時に決定される。よって、教師信号を用いた学習作業を行わずとも、特徴抽出が可能である。なお、上記の説明で、ニューロンは、マッチングルールに従って他のニューロンと信号経路を形成すると述べた。しかし、これは必ずしも物理的な接続関係の有無を意味するものではない。例えば、電子回路又は計算機プログラムを用いてマッチングネットワークを実装する際には、全てのニューロン間で通信可能であることを前提として、各ニューロンは、マッチングルールに従って、他のニューロンと信号を送受信すればよい。次に、マッチングネットワークで得られた特徴ベクトルが、対象データの特徴を正しく抽出したものであることを確認するために行った評価実験の説明を通じ、本実施の形態に係る特徴抽出装置100の処理をより詳細に説明する。図5は、本実施の形態に係る特徴抽出装置100を用いて行う類似画像の検索処理の概要図である。図5に示されるように、テンプレート画像552を特徴抽出装置100に入力して得られた特徴ベクトルと、複数の対象画像554の各々を特徴抽出装置100に入力して得られた各々の特徴ベクトルとの一致度スコアをベクトルの内積として算出する。このスコアが高い画像ほど、テンプレート画像552と、より類似した画像であると判断する。テンプレート画像552と、複数の対象画像554は任意の画像でよいが、今回は、1つの画像ここでは、稲の画像550を複数のブロックに分割した後、そのうちの1ブロックに対応する画像をテンプレート画像552として、それ以外のブロックに対応する画像を複数の対象画像554として使用する。図6は、本実施の形態に係る特徴抽出装置100が備える3層型マッチングネットワークの構成を示すブロック図である。なお、各構成要素のうち、図2に示された2層型のマッチングネットワークと同一のものには同一の符号をつけ、詳細な説明は省略する。第1層309に属する第1層ニューロン301~303には、対象データであるテンプレート画像552を画素単位で分割して得られる各入力データの画素値例えば、0~255の整数がそれぞれ入力される。よって後述するように、第1層ニューロンはテンプレート画像552の画素数分が必要となる。第1層ニューロン301~303は、それぞれ、マッチングルールに従って、入力された画素値を第2層へ出力する。第2層319に属する第2層ニューロン311~313は、自身に入力された入力値を合計し、合計値を比較部352へ出力する。また、比較部352から比較結果を取得し、比較結果に応じた出力値を、マッチングルールに従って第3層へ出力する。第3層329に属する第3層ニューロン321~323は、自身に入力された入力値を合計し、合計値を比較部354へ出力する。また、比較部354から比較結果を取得し、比較結果に応じた特徴量を出力する。発現遺伝子割当部350は、各ニューロンでの演算に先立ち、第1層ニューロン、第2層ニューロン及び第3層ニューロンの各々に対して、事前に定められた遺伝子レパートリーの中から、1個以上の遺伝子をランダムに選択し、それぞれに割り当て、そのニューロンの発現遺伝子とする。比較部352は、第2層319に属する第2層ニューロンの各々、入力値の合計を取得し、集計する。さらに、事前に定められた活動化の基準に従い、集計結果に基づいて、活動化命令を出力するニューロンを選択する。同様に、比較部354は、第3層329に属する第3層ニューロンの各々から、入力値の合計を取得し、集計する。また、事前に定められた活動化の基準に従い、集計結果に基づいて、活動化命令を出力するニューロンを選択する。ここで、類似画像を検索する際には、各画像に含まれる画素の共通性を特徴量に集約する必要がある。よって、第2層ニューロンの各々及び第3層ニューロンの各々は、それぞれ、直前の層からの入力値の論理積ANDを出力する必要がある。従って、比較部352及び比較部354が使用する活動化の基準として、後述するように、入力値の合計が上位10以内のニューロンであるかという基準を採用し、上位10以内のニューロンに対して、活動化命令を出力する。図7は、本実施の形態に係る特徴抽出装置100の処理の流れを示すフローチャートである。まず、特徴抽出装置100は、演算部であるマッチングネットワークを生成するS202。マッチングネットワークの生成方法については、後述する。次に、特徴抽出装置100は、生成したマッチングネットワークに対象データを入力するS204。対象データとは、例えば、テンプレート画像552及び複数の対象画像554の各々である。前述の通り、第1層309に属するニューロンの各々に、対象データを画素単位で分割して得られる入力データの画素値が対応付けて入力される。詳細は後述する。次に、第1層309に属するニューロンの各々は、前述のマッチングルールに従って、入力された画素値を第1信号値として第2層に出力するS206。次に、第2層319に属するニューロンの各々は、取得した第1信号値の合計値を算出し、その値を比較部352へ出力する。比較部352は、第2層319に属するニューロンのうち比較結果に基づいて選択されたニューロンに活動化命令を出力するS208。なお、比較部352が行う比較処理の詳細については、後述する。次に、第2層319に属するニューロンのうち、活動化命令を受けたニューロンは1を、それ以外のニューロンは0を、それぞれ第3層に属するニューロンへ第2信号値として出力するS210。ここでも、出力先はマッチングルールに従って決定される。次に、第3層329に属するニューロンの各々は、第2層から取得した第2信号値の合計値を算出し、その値を比較部354へ出力する。比較部354は、第3層329に属するニューロンのうち、比較結果に基づいて選択されたニューロンに活動化命令を出力するS212。次に、第3層329に属するニューロンのうち、活動化命令を受けたニューロンは1を、非活動化命令を受けたニューロンは0を、それぞれ特徴量として出力するS214。こうして第3層329に属する各ニューロンから出力された特徴量を、例えば左から順に並べたものを特徴ベクトルとすることで、対象データの類似度算出等、後続の処理が可能となる。なお、特徴量から特徴ベクトルを求める方法は、これに限られず、ニューロンの並び順を決定し、その順序で各ニューロンから出力された特徴量を並べることで求められる。ニューロンの並び順の決定方法としては、例えば、第3層329に属する各ニューロンに識別子をつけ、識別子を昇順あるいは降順にソートする方法が考えられる。さらに、ソート結果を1次元に並べる以外に、2次元以上の多次元ベクトルとして並べることも考えられる。以上、特徴抽出装置100が対象データから特徴量を抽出する際の全体の処理について述べた。次に、各処理の詳細について説明する。図8は、本実施の形態に係る特徴抽出装置100を構成するマッチングネットワークを行列の形式で作成する処理の一例を示すフローチャートである。具体的には、図7のステップS202に相当する。まず、発現遺伝子割当部350は、乱数を使用して発現行列を生成するS222。発現行列とは、マッチングネットワークを構成する全てのニューロンについて、どのニューロンにどの遺伝子が割り当てられているかを示す行列である。図9Aを参照して、発現行列560は、発現行列の一例を示す。発現行列の各行は、ニューロンの識別子であるニューロン番号に対応する。また、発現行列の各列は、遺伝子レパートリーに含まれる遺伝子の遺伝子番号に相当する。なお、発現遺伝子は、番号に限らずとも、例えば記号や、ビット列など、任意の情報形式で表現されうる。発現行列のセルの値が1であることは、対応するニューロン番号をもつニューロンに、対応する遺伝子番号の遺伝子が割り当てられていることを意味する。例えば、発現行列560の1行目をみると、遺伝子番号が2、4及び10のセルの値が1である。よって、ニューロン番号1のニューロンには、遺伝子番号が2、4、10の3つの遺伝子が割り当てられている。本実施の形態では、各ニューロンに対して、合計20個の相異なる遺伝子を含んだ遺伝子レパートリーの中から、3個の遺伝子をそれぞれ選択し、割り当てられるとする。つまり、各ニューロンは発現遺伝子を3個ずつ保持する。また、対象データを12ピクセル×12ピクセルの画像データとする。前述のとおり第1層に属する1ニューロンに1画素を割り当てるため、第1層のニューロン数は144ニューロンとなる。さらに、第2層を1000ニューロン、第3層を250ニューロンと定めた。総ニューロン数は、1394ニューロンとなる。発現行列は層ごとに作成するため、第1層の発現行列は144行20列、第2層の発現行列は1000行20列、第3層の発現行列は250行20列となる。発現遺伝子割当部350は、各行ニューロンに対して、発現遺伝子となる遺伝子番号として1~20までの相異なる乱数を3つ発生させ、発生した乱数と同一の遺伝子番号をもつセルに値1をセットする。それ以外のセルには、値0をセットする。この操作は、遺伝子番号1~20までの遺伝子を含む、遺伝子レパートリーの中から、3個の遺伝子を選択する処理に対応する。以上の乱数発生作業を、全ての行に対して行うことで、発現遺伝子割当部350は、各ニューロンに対して、遺伝子を3つずつランダムに割り当てる。次に、特徴抽出装置100は、生成された発現行列マッチングルールに従って、隣接する層間での結合関係すなわち、信号経路を示す、結合行列を生成するS224。3層のマッチングネットワークにおいて、結合行列は、第1層-第2層間結合行列と、第2層-第3層間結合行列の2つの行列から構成される。図9Bを参照し、結合行列562は、結合行列の一例を示す。結合行列の各列は、前層例えば、第1層-第2層間結合行列であれば、第1層に属するニューロンのニューロン番号を示す。また、結合行列の各行は、後層例えば、第1層-第2層間結合行列であれば、第2層に属するニューロンのニューロン番号を示す。よって、第1層-第2層間結合行列は、1000行144列の行列となり、第2層-第3層間結合行列は、250行1000列となる。また、セルの値が1であることは、対応する前層のニューロンから、対応する後層のニューロンに対して信号経路が形成されていることを示す。逆に、セルの値が0であることは、対応する前層のニューロンから、対応する後層のニューロンに対して信号経路が形成されていないことを示す。例えば、結合行列562において1行2列のセルの値が1である。これは、前層に属するニューロン番号8のニューロンから、後層に属するニューロン番号1のニューロンへ、信号経路が形成されていることを示す。特徴抽出装置100は、こうした結合行列を、先に生成した発現行列に基づいて生成する。すなわち、結合行列においてセルの値が1であることは、対応する前層と後層のニューロンには、同一の発現遺伝子が少なくとも1つ割り当てられていることを意味する。よって、例えば、発現行列の各列について、いずれかが前層に属し、他方が後層に属する2つのニューロンであって、両者のセルの値が1である組合せを全て検索し、検索された前層と後層の組合せに対応する結合行列のセルに値1をセットすることで、結合行列を生成できる。以後は、特徴抽出装置100は、こうして生成された結合行列を使用して処理を進める。図10は、本実施の形態に係る特徴抽出装置を構成するマッチングネットワークの第1層の処理を示すフローチャートである。具体的には、図7のステップS204及びステップS206に相当する。まず、特徴抽出装置100は、対象データを1つ取得するS232。対象データは、12画素×12画素のモノクロ画像であり、これを12行12列の行列として取得する。行列に含まれる144個の各要素は画素値に対応し、0から255までの値をとる。次に、特徴抽出装置100は、対象データを表現する12行12列の行列を変形し、144行1列の行列を生成する。これを画像行列と呼ぶ。次に、特徴抽出装置100は、ステップS224で生成した1000行144列の第1層-第2層間結合行列に対し、この画像行列を右から掛けるS234。その結果、1000行1列の行列が生成される。この行列に含まれる各列は、第2層に属する1000個のニューロンの各々が、マッチングルールに従って第1層のニューロンから受け取った入力の合計値を示す。以上の行列計算により、第1層に属するニューロンから第2層へ属するニューロンへのマッチングルールにしたがった信号の伝播を、計算機上で処理することができる。こうして計算された第2層に属する各ニューロンへの入力の合計値は、比較部352へ出力される。次に、比較部352が行う処理について、図11を参照して説明する。図11は、本実施の形態に係る比較部352が行う比較処理において用いられる活動化の基準を示す図である。これは、図7のステップS208において比較部352が行う比較処理に相当する。図11に示されるように、特徴抽出装置100は、比較部352が用いる活動化の基準を選択することにより、前層から後層への信号の伝播において、例えば、AND、OR、NAND、NOR及びXORの5つの論理演算のうちのいずれかを実行することができる。例えば、入力の合計値が上位10以内であることを活動化の基準とした場合、この基準に該当するニューロンに比較部352は活動化命令を送る。その結果、合計値が上位10以内のニューロンが活動化状態となり、1を出力する。一方、それ以外のニューロンは、非活動化状態のまま、0を出力する。その結果、より多くの前層に属するニューロンから正の入力を受けた後層が1を出力することになるため、これはAND演算に相当する。また、入力の合計値が上位70以内であることを活動化の基準とした場合、この基準に該当するニューロンに比較部352は活動化命令を送る。その結果、合計値が70以内のニューロンが活動か状態となり、1を出力する。一方、それ以外のニューロンは、非活動化状態のまま、0を出力する。その結果、前層は、AND演算と比較して少ないニューロンから正の入力を受けても後層が1を出力するため、OR演算に相当する。すなわち、前層の複数のニューロン出力の組み合わせが次層のニューロンが受ける入力の合計値を決定する。同様の考え方で、図11に示される5つの論理演算の処理が定義されるが、より詳細には、後述する。ここでは、複数の対象画像554からテンプレート画像552に類似する画像を検索することが目的であるので、比較部352、比較部354ともに、AND演算を行うための活動化の基準を使用し、入力画像に類似する画像の特徴量を算出することになる。以上、本実施の形態に係る特徴抽出装置100の処理の流れを説明した。これ以後、図7におけるステップS210のマッチングルールを用いた信号伝播は、ステップS206と同様である。また、ステップS212の比較部354による処理は、ステップS208の比較部352による処理と同様である。よって、詳細な説明は省略する。最終的に、ステップS214において、1つの対象データに対して、250個の1又は0からなる特徴ベクトルが、特徴抽出装置100から出力される。なお、こうして得られた特徴ベクトルから、類似画像を検索する手順は、先に図5に示したとおりである。すなわち、図5を参照して、テンプレート画像552及び複数の対象画像554の各々について、特徴抽出装置100を用いて特徴ベクトルを得た後、テンプレート画像552の特徴ベクトルと、複数の対象画像554の各々の特徴ベクトルとの一致度例えば、内積を算出する。得られた内積の値は類似度を示すスコアであり、内積の値が大きいほど、テンプレート画像552との類似度が高い画像であると判断できる。すなわち、本実施の形態に係る特徴抽出装置100は階層型ニューラルネットワークから構成されており、この階層型ニューラルネットワークは、第1層の演算部である複数の第1層ニューロン301~303と、第2層の演算部である第2層ニューロン311~313とを備え、複数の第1層ニューロン301~303及び第2層ニューロン311~313は、複数の第1層ニューロン301~303から第2層ニューロン311~313への信号の伝達可否を決定するための属性値である発現遺伝子をそれぞれ1以上有している。また、特徴抽出の対象である対象データを分割して得られる各入力データが入力された複数の第1層ニューロン301~303の各々は、入力データの値が大きいほど大きな値である第1信号値を、自身が有する発現遺伝子と同一の発現遺伝子を有する第2層ニューロン311~313へ出力する。また、第2層ニューロン311~313の各々は、入力された第1信号値の総和に対応する値である第2信号値を対象データの特徴量として算出する。また、本実施の形態に係る特徴抽出装置100は、複数の第1層ニューロン301~303及び第2層ニューロン311~313の各々に対して、i事前に定められた属性値を示す複数の遺伝子である、遺伝子レパートリーの中から1以上の遺伝子を選択し、ii選択された遺伝子を発現遺伝子としてそれぞれ割り当てる発現遺伝子割当部350をさらに備えてもよい。この場合、複数の第1層ニューロン301~303の各々は、自身が有する発現遺伝子と同一の発現遺伝子を有する第2層ニューロン311~313にだけ、第1信号値を出力する。なお、発現遺伝子割当部350が、ニューロンの各々に対して発現遺伝子を割り当てる方法は、前述したようなランダムな選択以外の方法であってもよい。例えば、後述する図19又は図20に示されるような、既存の画像に対応する発現遺伝子を、事前に定められた発現遺伝子の組み合わせとして定義し、定義された発現遺伝子の組み合わせを、順にニューロンに割り当ててもよい。すなわち、発現遺伝子割当部350は、発現遺伝子として割り当てるべき遺伝子を、遺伝子レパートリーの中からランダムに選択してもよく、遺伝子レパートリーに含まれる遺伝子の事前に定められた組み合わせの中から選択してもよい。また、本実施の形態に係る特徴抽出装置100において、第2層ニューロン311~313の各々は、入力された第1信号値の総和が事前に定められた範囲に含まれる場合には、事前に定められた値を第2信号値として出力し、含まれない場合には、事前に定められた値とは異なる値を第2信号値として出力してもよい。また、本実施の形態に係る特徴抽出装置100は、複数の第2層ニューロン311~313のうち、第1信号値の総和について複数の第2層ニューロン311~313を降順に並べた場合の順位が事前に定められた範囲に含まれるニューロンの各々に、活動化命令を出力する比較部352をさらに備えてもよい。この場合、複数の第2層ニューロン311~313のうち、a比較部352より活動化命令を取得したニューロンは事前に定められた値を第2信号値として出力し、b活動化命令を取得しないニューロンは事前に定められた値とは異なる値を第2信号値として出力する。また、本実施の形態に係る特徴抽出装置100において、階層型ニューラルネットワークは、第3層の演算部として発現遺伝子を1以上有する複数の第3層ニューロン321~323をさらに備えてもよい。この場合、複数の第2層ニューロン311~313の各々は、第1信号値の総和に対応する値が事前に定められた範囲に含まれる場合には、自身が有する発現遺伝子と同一の発現遺伝子を有する第3層ニューロン321~323へ、第2信号値を出力し、複数の第3層ニューロン321~323の各々は、入力された第2信号値の総和に対応する値である第3信号値を対象データの特徴量として算出する。また、本実施の形態に係る特徴抽出装置100は、複数の第2層ニューロン311~313のうち、第1信号値の総和について複数の第2層ニューロン311~313を降順に並べた場合の順位が事前に定められた範囲に含まれるニューロンの各々に、活動化命令を出力する第1比較部352と、複数の第3層ニューロン321~323のうち、第2信号値の総和について複数の第3層ニューロン321~323を降順に並べた場合の順位が事前に定められた範囲に含まれるニューロンの各々に、活動化命令を出力する第2比較部354とを、さらに備えてもよい。この場合、複数の第2層ニューロン311~313のうち、a第1比較部352より活動化命令を取得したニューロンは事前に定められた値を第2信号値として出力し、b活動化命令を取得しないニューロンは事前に定められた値とは異なる値を第2信号値として出力し、複数の第3層ニューロン321~323のうち、a第2比較部354より活動化命令を取得したニューロンは事前に定められた値を第3信号値として出力し、b活動化命令を取得しないニューロンは事前に定められた値とは異なる値を第3信号値として出力する。また、本実施の形態に係る特徴抽出装置100は、複数の第1層ニューロン301~303、第2層ニューロン311~313及び第3層ニューロン321~323の各々に対して、i事前に定められた属性値を示す複数の遺伝子である、遺伝子レパートリーの中から1以上の遺伝子をそれぞれランダムに選択し、ii選択された遺伝子を発現遺伝子としてそれぞれ割り当てる発現遺伝子割当部350と、第2層ニューロン311~313の各々について、ニューロンに入力された第1信号値の総和の第2層ニューロン311~313の中での順位が事前に定められた閾値と同順位か、より上位である場合には、当該ニューロンに、活動化命令を出力する第1比較部352と、第3層ニューロン321~323の各々について、ニューロンに入力された第2信号値の総和の第3層ニューロン321~323の中での順位が事前に定められた閾値と同順位か、より上位である場合には、当該ニューロンに、活動化命令を出力する第2比較部354とをさらに備えてもよい。この場合、第1層ニューロン301~303の各々は、特徴抽出の対象を第1層ニューロン301~303の数に対応付けて分割して得られる、各入力データの値を、分割に対応付けて取得し、当該入力データの値を、自身が有する発現遺伝子と同一の発現遺伝子を有する第2層ニューロン311~313に第1信号値として出力する。また、第2層ニューロン311~313の各々は、第1比較部352より活動化命令を取得した場合には第2信号値として1を出力し、活動化命令を取得していない場合には第2信号値として0を出力する。また、第3層ニューロン321~323の各々は、第2比較部354より活動化命令を取得した場合には第3信号値として1を出力し、活動化命令を取得していない場合には第3信号値として0を出力する。以上述べた構成によると、発現遺伝子割当部350により、各ニューロンへ発現遺伝子がランダムに割り当てられる。この発現遺伝子の値とマッチングルールとを用いて、階層型ニューラルネットワークにおける隣接層間の結合状態すなわち、マッチングネットワークが決定される。このマッチングネットワークは、隣接する層間の信号伝播に際して、比較部352及び比較部354が比較処理に用いる活動化の基準に対応して、AND、OR、NAND、NOR、XORの5つの論理演算のうちのいずれかを並列的に計算する機能を有する。並列的に計算するとは、例えば、第2層に属する各々のニューロンの出力値は、第1層に属する複数のニューロンから第2層に属する各々のニューロンへ入力された複数の値の論理演算値に相当し、この値を、第2層に属する各々のニューロンは並列的に出力することを意味する。すなわち、上記論理演算は、マッチングネットワークに入力された複数入力に対して並列的に実行される並列型論理演算である。よって、従来の2入力値に対する論理演算と区別するため、以後、AND演算を並列型AND演算と、OR演算を並列型OR演算と、NAND演算を並列型NAND演算と、NOR演算を並列型NOR演算と、XOR演算を並列型XOR演算と、それぞれ呼ぶことにする。こうして出力される特徴量の列は、対象データの特徴が抽出された特徴ベクトルとなる。その結果、従来の階層型ニューラルネットワークでは必須の教師信号を用いた学習プロセスを行わなくても、対象データの特徴量を得ることができる。その結果、得られた特徴量を並べた特徴ベクトルを用いて、類似度算出等の後続の処理を行うことができる。よって、教師信号として大量の正解データを準備する必要が無く、また、長時間に渡る学習時間も不要となる利点が生じる。さらに、学習が不要であるため、過学習により汎化性能が低下する可能性、及び、局所解に陥る可能性がなく、対象データの種類を問わず、安定した特徴抽出性能を発揮することができる。以上、マッチングネットワークを用いた特徴抽出装置100によって類似画像検索を行う処理について述べた。次に、実施の形態の変形例として、同一のマッチングネットワークを用いつつ、比較部が用いる活動化の基準を変更するだけで、非類似画像検索が可能となることを説明する。変形例図12は、実施の形態の変形例に係る特徴抽出装置100を用いて行う非類似画像の検索処理の概要図である。いま、図12に示されるように、複数の対象画像554の中から、テンプレート画像552に似ていない画像非類似画像を検索することを考える。なお、テンプレート画像552及び複数の対象画像554が、画像550を一定のブロックで分割したうちの各々であることは、前述の実施の形態の場合と同様である。また、本変形例における特徴抽出装置100の構成は、図6に示される実施の形態と同様であるため、詳細な説明は省略する。本変形例では、テンプレート画像552の特徴が抽出された特徴ベクトルを得るため、比較部352及び比較部354は、対象データがテンプレート画像552である場合には、並列型AND演算を行う。すなわち、比較部352及び比較部354は、上位10以内のニューロンに活動化命令を送る。一方、複数の対象画像554に含まれる各画像については、これら各画像が有する特徴とは異なる特徴が抽出された特徴ベクトルを得るため、比較部352及び比較部354は並列型NOR演算を行う。すなわち、対象データが複数の対象画像554の各々である場合には、比較部352及び比較部354は、下位10以内のニューロンに活動化命令を送る。最終的には、特徴抽出装置100により出力されたテンプレート画像552の特徴ベクトルと、複数の対象画像554の各々の特徴ベクトルとの内積を算出する。得られた内積の値は、非類似度を示すスコアであり、内積の値が大きいほど、テンプレート画像552との非類似度が高い画像であると判断できる。すなわち、本変形例に係る特徴抽出装置100は、複数の第1層ニューロン301~303、第2層ニューロン311~313及び第3層ニューロン321~323の各々に対して、i事前に定められた属性値を示す複数の遺伝子である、遺伝子レパートリーの中から1以上の遺伝子をそれぞれランダムに選択し、ii選択された遺伝子を発現遺伝子としてそれぞれ割り当てる発現遺伝子割当部350と、第2層ニューロン311~313の各々について、ニューロンに入力された第1信号値の総和の第2層ニューロン311~313の中での順位を取得し、第2層ニューロンのうち、順位が事前に定められた閾値と同順位か、より下位であるニューロンに、活動化命令を出力する第1比較部352と、第3層ニューロン321~323の各々について、ニューロンに入力された第2信号値の総和の第3層ニューロン321~323の中での順位を取得し、第3層ニューロン321~323のうち、順位が事前に定められた閾値と同順位か、より下位であるニューロンに、活動化命令を出力する第2比較部354とをさらに備える。この場合、第1層ニューロン301~303の各々は、特徴抽出の対象を第1層ニューロン301~303の数に対応付けて分割して得られる各入力データの値を、分割に対応付けて取得し、当該入力データの値を、自身が有する発現遺伝子と同一の発現遺伝子を有する第2層ニューロン311~313に第1信号値として出力する。また、第2層ニューロン311~313の各々は、第1比較部352より活動化命令を取得した場合には第2信号値として1を出力し、活動化命令を取得していない場合には、第2信号値として0を出力する。また、第3層ニューロン321~323の各々は、第2比較部354より活動化命令を取得した場合には第3信号値として1を出力し、活動化命令を取得していない場合には、第3信号値として0を出力する。この構成によると、第1層-第2層間の信号伝播及び、第2層-第3層間の信号伝播において、前層から伝播された入力値が相対的に小さいニューロンを選択的に活動化させることにより、対象データがもたない特徴を、特徴ベクトルとして出力することができる。図13は、本実施の形態及びその変形例に係る特徴抽出装置100を用いた、類似画像検索及び非類似画像検索の結果の一例を示す図である。図13に示される、検索結果570は、本実施の形態に係る特徴抽出装置100を用いて類似画像を検索した結果を示す。検索結果570に含まれる複数のブロックのうち、左上のブロックは、テンプレート画像552である。残り24個のブロックは、複数の対象画像554の中から検索された、類似度スコアが上位24位以内の対象画像である。また、性能比較のため、二乗誤差法により、テンプレート画像552の類似画像を複数の対象画像554から検索した結果を検索結果574に示す。二乗誤差法では、テンプレート画像552と、対象画像とで、対応する位置の画素ごとに画素値の差分の二乗値二乗誤差を算出する。その後、全画素についての二乗誤差の合計値を算出し、合計値が小さいほどテンプレート画像552に類似した画像であり、逆に、合計値が大きいほどテンプレート画像552と似ていない非類似画像であると判断する。検索結果570と検索結果574を比較すると、特徴抽出装置100を用いた場合の検索結果570は、二乗誤差法による検索結果574と比較しても、遜色なく良好な結果が得られている。この結果は、特徴抽出装置100が出力する特徴ベクトルにより、類似画像検索が可能であることを示す。また、検索結果572は、変形例に係る特徴抽出装置100を用いて非類似画像を検索した結果を示す。左上のブロックは、テンプレート画像552である。残り24個のブロックは、複数の対象画像554の中から検索された、非類似度スコアが上位24位以内の対象画像である。さらに、類似画像検索と同様に、性能比較のため、テンプレート画像552の非類似画像を複数の対象画像554から二乗誤差法により検索した結果を検索結果576に示す。検索結果572と検索結果576を比較すると、二乗誤差法による検索結果576では、テンプレート画像552の濃淡を逆にした画像が数多く検索されている。これに対し、特徴抽出装置100を用いた場合の検索結果572には、単にテンプレート画像552の濃淡を逆にした画像だけではなく、テンプレート画像552と異なる多様な画像が含まれていることがわかる。すなわち、特徴抽出装置100は、単純な画素値の逆ではなく、テンプレート画像552が持たない特徴をうまく特徴ベクトルとして抽出できていると考えられる。非類似画像の多様性をもつ検索結果572の方が、一般に、人が考えるテンプレート画像552と非類似の画像のイメージに近い検索結果に近い。この結果は、変形例に係る特徴抽出装置100が出力する特徴ベクトルにより、非類似画像検索が可能であることを示す。以上述べたように、マッチングネットワークの構成を変えることなく、比較部が比較処理に用いる活動化の基準を選択することで、マッチングネットワークが行う並列論理演算の種類を選択することができる。その結果、同一の特徴抽出装置100を用いて、対象データの特徴を抽出すること、及び、対象データの特徴とは異なる特徴を抽出することが可能となる。また、論理演算の種類によりマッチングネットワークの構成を変える必要はないため、処理内容の変更による行列の再生成処理等は不要であり、比較部が用いる活動化の基準を変更するだけでよく、処理の効率化が可能となる。なお、実施の形態及び変形例に係る特徴抽出装置100で特徴抽出が可能な対象データは、画像データに限るものではない。例えば、波形データ、数値化されたトランザクションデータ、その他センシングデータなど、離散化された数値により構成されるデータであれば、任意のデータを入力とすることができる。なお、実施の形態及び変形例に係る特徴抽出装置100が備える中間層及び出力層の出力は、0及び1の2値以外であってもよい。例えば、3層からなるマッチングネットワークで構成される特徴抽出装置100であれば、中間層である第2層及び出力層である第3層に属するニューロンの各々は、入力された信号値の総和を出力してもよい。または、中間層である第2層及び出力層である第3層に属するニューロンのうち、活動化命令を受けたニューロンのみが、入力された第2信号値の総和を出力してもよい。また、中間層である第2層及び出力層である第3層に属するニューロンの各々は、入力された信号値の総和が事前に定められた閾値以下であれば、任意の定数Aを出力し、それでなければA以外の定数Bを出力してもよい。すなわち、中間層及び出力層に属するニューロンの各々は、入力された信号値の総和に対応する値を出力する演算部であればよい。また、第1層入力層は、入力データの値をそのまま出力するのではなく、たとえば、0又は1に二値化して出力してもよい。具体的には、事前に閾値を定め、この閾値以上であれば1を、閾値未満であれば0を出力するとしてもよい。つまり、入力層に属するニューロンの各々は、入力データの値が大きいほど大きな値である第1信号値を出力する演算部であればよい。なお、実施の形態及び変形例に係る比較部352及び比較部354は、基準を満たさないニューロンを非活動化状態にするための非活動化命令を出力してもよい。例えば、各ニューロンは、活動化命令を受けて活動化状態となり、非活動化命令を受けて非活動化状態に戻ってもよい。または、特徴抽出装置100が、新しい対象データを取得する度に、すべてのニューロンに非活動化命令を出力し、非活動化状態へ初期化してもよい。さらに、活動化したニューロンは、時間の経過と共に、徐々に非活動化状態へと遷移してもよい。この場合、非活動化状態へ遷移するに従い、ニューロンの出力値を小さくすることが考えられる。なお、実施の形態及び変形例に係る中間層及び出力層に属するニューロンのうち、非活動化状態にあるニューロンは、0を出力しなくてもよい。すなわち、中間層及び出力層に属するニューロンのうち、活動化状態にあるニューロンは1を出力し、それ以外のニューロンは何もしない、としてもよい。この場合、例えば、ニューロンの出力を取得するメモリ領域として、各ニューロンの出力に対応するビット列を事前に確保し、かつ各ビットを事前に0に初期化しておくことで、非活動化状態にあるニューロンが0を出力した場合と同様のビット列を特徴ベクトルとして得ることができる。なお、実施の形態及び変形例に係る特徴抽出装置100は、比較部を備えなくてもよい。例えば、各ニューロンは、同一層内での相対的な順位ではなく、入力の合計値を絶対値による基準すなわち、事前に定められた閾値と比較することで、その出力を選択してもよい。また、比較部を備えなくても、同一層内に属する各ニューロンが相互に自身の入力の合計値を送受信しあうことで、入力の合計値の相対的な順位を取得してもよい。なお、実施の形態及び変形例に係る発現遺伝子割当部350が使用する乱数は、乱数発生器等を用いて発生させる乱数の他、計算処理により発生させる、いわゆる疑似乱数であってもよい。前述のとおり、遺伝子レパートリーに含まれる遺伝子の数は、高々100程度と少ない。よって、生成が容易である反面、周期性をもつ疑似乱数であっても、十分使用に耐える。なお、実施の形態及びその変形例に係る特徴抽出装置100は、結合行列の生成において、前層と後層で1つ以上同一の発現遺伝子があれば、信号経路を形成した。しかし、例えば、前層と後層で2つ以上の同一の発現遺伝子がある場合にのみ信号経路を形成してもよい。または、前層と後層で同一の発現遺伝子が2つ以上ある場合には、一致した発現遺伝子の数に応じた重みを、その信号経路を介して出力される信号値に乗じてもよい。なお、実施の形態及び変形例に係る比較部352及び比較部354が用いる活動化の基準は、相異なっていてもよい。例えば、第1層-第2層間の信号伝播において比較部352は並列型AND演算を実行し、第2層-第3層間の信号伝播において比較部354は並列型NOR演算を実行してもよい。より一般化して、マッチングネットワークが4層以上で構成される場合においても、各層で使用する活動化の基準は、相異なっていてもよい。なお、実施の形態及び変形例に係る比較部352及び比較部354が活動化の基準で用いる数値は、具体例である。よって、大小関係を維持していれば、これ以外の数値を使用することも可能である。なお、実施の形態及びその変形例に係る特徴抽出装置100では、すべての層で同一の遺伝子レパートリーを使用した。しかし、発現遺伝子割当部350は、層ごとに異なる遺伝子レパートリーを使用して、ニューロンに発現遺伝子を割り当ててもよい。なお、実施の形態及び変形例に係る特徴抽出装置100は、比較部を第2層と第3層に1つずつ備えているが、これは論理的に各層に対応する比較部を想定できることを示したに過ぎない。よって、特徴抽出装置100全体で1つの比較部を備え、この比較部が全ての層について比較処理を行ってもよい。なお、特徴ベクトルの類似判定は、内積でなくともよい。一般に、2つの特徴ベクトルの一致度合いを抽出する処理であればよい。例えば、2つの特徴ベクトルの差の二乗和であってもよい。また、単純に特徴ベクトルに含まれる要素のうち一致する個数を算出してもよい。なお、上記実施の形態及び変形例に係る特徴抽出装置100を構成する階層型ニューラルネットワークでは、信号は隣接する層間で、前層から後層へ一方向にのみ伝搬されるものとして説明したが、必ずしもこれに限られるものではない。必要に応じて、後層から前層へ信号を伝播してもよく、また、同一層内で他のニューロンに対して信号を伝播させてもよい。また、上記実施の形態及び変形例においては、特徴抽出装置を構成するニューラルネットワークは、階層構造を有する階層型ネットワークであることを前提として説明した。しかし、必ずしも階層構造を有していなくてもよい。例えば、相互結合型のホップフィールド型ネットワークであってもよい。本発明の本質は、マッチングルールによりニューロン間で信号を伝達することにあるからである。したがって、特徴抽出装置は、ニューラルネットワークから構成される特徴抽出装置であって、ニューラルネットワークは、演算部である複数のニューロンを備え、複数のニューロンは、一方のニューロンから他方のニューロンへの信号の伝達の可否を決定するための属性値である発現遺伝子をそれぞれ1以上有しており、複数のニューロンのうち、特徴抽出の対象である対象データを分割して得られる入力データが入力された第1のニューロンは、当該入力データの値が大きいほど大きな値である第1信号値を、自身が有する発現遺伝子と同一の発現遺伝子を有する第2のニューロンへ出力し、第2のニューロンは、入力された第1信号値の総和に対応する値である第2信号値を対象データの特徴量として算出するとしてもよい。なお、従来の人工ニューラルネットワークは、別々に学習を行った複数のネットワークを結合しても、情報処理能力を統合することはできない。これに対し、マッチングネットワークは、独立に生成されたネットワークであっても、マッチングルールに従ってお互いに結線させることにより拡張することができ、かつ、個々のネットワークにより処理された情報を統合することができる。具体的には、図12を参照して、テンプレート画像552を処理する、第2層のマッチングネットワーク並列型AND処理を実施と、複数の対象画像554を処理する、第2層のマッチングネットワーク並列型NOR処理を実施とが、それぞれ独立に生成されたネットワークであってもよい。より具体的には、ニューロンに割り当てられる発現遺伝子が、並列型AND処理を行うマッチングネットワークと、並列型NOR処理を行うマッチングネットワークとで異なっていてもよい。ただし、その際には、特徴抽出の対象データを分割して得られる各入力データに割り当てられる発現遺伝子具体的には、発現遺伝子の番号は、共通でなければならないため、入力層第1層は、共通であることが必要である。なお、図11に示される5つの並列型論理演算は、マッチングネットワークで行う演算処理の一例であり、例えば、上位10以内のニューロンは2を出力し、上位50以内のニューロンから、上位10以内のニューロンを除いたニューロンは1を出力し、上位80以内のニューロンから上位50以内のニューロンを除いたニューロンは0を出力し、残りのニューロンは-1を出力する等のルールに従って出力してもよい。なお、マッチングネットワークは、学習過程なしに特徴抽出が可能ではあるが、例えば、結合行列を重み行列とみなし、学習によりその値の変更を行ってもよい。なお、上記マッチングネットワークを用いて特徴抽出が可能な理由を考察すると、マッチングルールにより生成されたマッチングネットワークは、グラフ理論でいうスモールワールド性を有するためであると考えられる。以下、その詳細を述べる。上記マッチングルールの着想は、本願発明者らが発見した細胞接着分子群であるクラスター型プロトカドヘリンcPcdhにおいて、約60種のサブタイプが遺伝子クラスターを構成し、これらのサブタイプが神経細胞においてランダムな組合せで発現していることから得ている。この発見から、脳における情報処理が、同一のプロトカドヘリン分子種実施の形態における、発現遺伝子を発現している細胞間を連結する複数のネットワークの同時並行処理により行われているという仮説を立て、この仮説に基づくマッチングネットワークを有する、特徴抽出装置を発明した。このマッチングネットワークは、グラフ理論でいう以下の特徴を有することがシミュレーションにより明らかである。1短い頂点間距離そのネットワークに属する任意の2つのノードが、少数の中間ノードを介して接続されていれば、そのネットワークは短い頂点間距離をもつという。すなわち、任意のノード間の平均距離が小さいことを意味する。2高いクラスター性あるノードと接続されている他の2つのノードが、やはり相互に接続されている可能性が高ければ、そのネットワークのクラスター性は高いという。すなわち、3つのノードからなる三角形のネットワークが多数含まれていることを意味する。前述のマッチングネットワークは、頂点間距離が短い代表的なネットワークであるランダムネットワークとほぼ同じ頂点間距離でありながら、ランダムネットワークより遙かに高いクラスター性をもつ。高いクラスター性は、特徴抽出における組合せ抽出処理に好適である。例えば、ニューロンの数が少ない入力層と、ニューロンの数が多い中間層をつなぐマッチングネットワークは、入力層に入力された入力データの値を中間層のニューロンへ広く拡散させることができる。一方、ニューロンの数が多い中間層と、ニューロンの数が少ない出力層をつなぐマッチングネットワークは、拡散させた中間層のニューロンからの出力を、出力層へ集約することで特徴量とすることができる。したがって、有効な組合せを検出できる。また、短い頂点間距離は、多数のクラスター同士が独立しておらず、相互に接続されていることを意味する。よって、対象データの特徴は、中間層及び出力層への伝播において、偏り無く組合せを抽出し、特徴量の多様性をうむ。特に、中間層の数が多い場合に、その効果は顕著になると考えられる。その結果、例えば、図13に示した非類似画像検索の結果に示されるように、テンプレート画像552と比較し多様な観点で異なる画像の特徴ベクトルを出力することが可能となると考えられる。なお、グラフ理論の分野における、いわゆるスケールフリー性についても、各ニューロンに割り当てる発現遺伝子の数にばらつきを与えることにより、調整することが可能である。以上述べたように、実施の形態及び変形例に係る特徴抽出装置100は、スモールワールド性という特異な性質を有するマッチングネットワークを計算機上で生成し、これを用いた特徴抽出装置を実現するものである。また、マッチングネットワークの性質として、層の数を増やした場合においても、1層に入力された情報の特性が維持されやすいという特徴がある。図14は、マッチングネットワークMN及びランダムネットワークrandomのそれぞれにおいて、階層の数と情報の維持との関係を示す図である。縦軸は、個々のニューロンが持っている反応特性の顕著さを示す。この値が高いほど、個々のニューロンが1層に提示された画像の特徴によって異なる反応を返していることを意味する。これは、ニューロンごとに好みの画像があることを意味している。横軸は、階層の数を示す。図14に示されるように、ランダムネットワークにおいては、階層の数を増やすに従い、ニューロンは反応の特性を失う。このことは、あるニューロンが活動したからといって、どのような画像が提示されたのか、わからなくなってしまったことを意味する。一方、マッチングネットワークにおいては、階層の数を増やしても、ニューロンの反応特性はさほど低下しておらず、1層に提示された画像がどのような画像であったかの情報を維持していると言える。このことは、マッチングネットワークにおいては、情報は後述の遺伝子コードによって表現されていることにより可能になっている。これにより、異なる層の異なるニューロン同士を、階層間で容易に結合することができるという利点が生まれる。これは、マルチモーダルな情報処理を実現する上で、大きな利点となる。このように、層を重ねても情報が失われにくいという特性は、以下の利点が考えられる。まず、情報処理において、後続の層からの出力を再度前の層に戻した場合に性能が低下しにくいという利点が挙げられる。情報処理においては、例えば、ある層による処理結果を、しばらく保存しておき、後で使用したい場合がある。この場合、後で使用したい情報を、必要になるまで層の間で伝播させ続けておくことにより、半導体メモリ等を備えることなく、情報の一時的な記憶が実現できる。これにより、情報処理装置の小型化、低コスト化、省エネ化等が実現できる。さらに、情報処理装置にとって、ガーベージコレクション等、メモリ領域の管理を行う必要がなくなる。また、マッチングネットワークにおいては、異なるニューロンコードすなわち、活動したニューロンの番号同士を、階層間で容易に結合できる。このマッチングネットワークの性質から、以下の利点が生じる。まず、マッチングネットワークによると、多様な論理回路を容易に形成できる。例えば、図11に示すように、個々の層は論理素子を形成している。より詳細には、個々の層は、並列型論理素子といえる。これに加えて、マッチングネットワークは、図14に示すように高い情報保持能力を有する。個々の論理素子は単純な機能しか持ち得ないが、これを何段か直列並列に組み合わせることにより、複雑な論理回路を形成させることができる。具体的には、一般的なデジタル論理回路と同様に、単純なAND,NAND回路などを組み合わせることにより、比較器など複雑な回路を構成できる。このことが可能になるには、素子間で情報が安定して伝達されることが前提となる。これを保証しているのが、図14に示されるマッチングネットワークの情報保持能力である。すなわち、階層型マッチングネットワークでは各層が並列型論理素子であり、これを組み上げることにより多様な論理回路を形成できるという利点を有する。また、これは、マルチモーダルな情報処理を実現する上でも利点となる。より詳細には、作業ロボットの制御を例にとり説明する。再度図6を参照して、入力データA、入力データB、及び入力データCが、それぞれ作業ロボットの視覚、聴覚、触覚に相当するセンサにより出力されたデータであるとする。ロボットが正しく作業を行うためには、人間と同様に、視覚、聴覚、触覚など、複数のセンサにより出力されたそれぞれのデータを統合して、環境を認識する必要がある。したがって、例えば、第2層ニューロン311に、第1層ニューロン301と第1層ニューロン302とから入力があり、第2層ニューロン312に、第1層ニューロン302と第1層ニューロン303とから入力があり、第2層ニューロン313に、第1層ニューロン303と第1層ニューロン301とから入力がある場合、第2層のいずれのニューロンも、入力データA~入力データCの3つを取得していない。したがって、第2層までに含まれるいずれのニューロンも、センサから出力されたすべての情報を統合した処理を行うことはできない。しかし、第3層において、例えば第3層ニューロン321に対して、第2層ニューロン311と第2層ニューロン312とからの入力がある場合、第3層ニューロン321は、入力データA~入力データCの3つ全てを参照して処理を行うことができる。このように、第3層あるいは、第4層以降を追加することにより、ニューロンが、センサから出力されたすべての情報に基づく処理を行いうる確率を増やすことができる。したがって、階層間の結合を増やすことが可能であるというマッチングネットワークの性質は、マルチモーダルな情報処理を実現する上で、不可欠な特性といえる。以上の説明においては、マッチングネットワークの性質を、ニューロンを中心に述べた。次に、遺伝子を中心に、マッチングネットワークの性質について以下に説明する。具体的には、活動したニューロンがもっている発現遺伝子に注目する。図15A~図15Cは、異なる3つの画像が有する特徴をマッチングネットワークにより抽出した結果を示す。より詳細には、図15Aのaは、図15Aのbに示される画像をマッチングネットワークに入力して得られたニューロンコード活動したニューロンの番号を示す。一方、図15Aのcは、図15Aのbに示される画像をマッチングネットワークに入力した際に活動した遺伝子の遺伝子コードをヒストグラムとして示したグラフである。すなわち、遺伝子コードとは、要素数が遺伝子レパートリー数となるベクトルで表される、発現遺伝子の度数分布を示す情報である。ここで、発現遺伝子の度数は、複数のニューロンのそれぞれについて、当該ニューロンが他のニューロンからマッチングルールに基づき入力された信号値の数が大きいほど、当該ニューロンが有するすなわち、当該ニューロンに割り当てられた発現遺伝子の度数がより大きくなるように決定される。これは、より多くの第1信号値を取得したニューロンが持つ発現遺伝子ほど、影響がより大きくなることを意味する。図15Bのa及び図15Cのaは、それぞれ、図15Bのb及び図15Cのbに示される画像をマッチングネットワークに入力して得られたニューロンコードを示す。また、図15Bのc及び図15Cのcは、それぞれ、図15Bのb及び図15Cのbに示される画像をマッチングネットワークに入力した際に活動した遺伝子の遺伝子コードをヒストグラムとして示したグラフである。すなわち、図15Aのc、図15Bのc、及び図15Cのcとして示される遺伝子コードのヒストグラムはそれぞれ、図15Aのb、図15Bのb、及び図15Cのbとして示される画像の特徴量とみなすことができる。このように、遺伝子コードを中心にマッチングネットワークを捉え直すと、マッチングネットワークが行う情報処理は、複数の、遺伝子コードのグループと、与えられたデータとの類似度を出力する処理であると考えることができる。より詳細には、マッチングネットワークの利点の1つは、図15A~図15Cに示すように、ニューロンコードと遺伝子コードの2種類の情報コード様式を持つことである。以下、図15A~図15Cを総称して、図15とよぶ。図15は、遺伝子レパートリーが50のマッチングネットワークでの例である。図15のcにあるように、遺伝子コードは、要素数が遺伝子レパートリー数となるベクトルで表現される。個々の層からの出力として直接見えるのは図15のaのようなニューロンの活動であるが、マッチングネットワークにおいては、これは図15のcの遺伝子コード活動したニューロンが持つ遺伝子の合計と等価である。図15のaのニューロンコードは、同一の画像であっても、層により、また使用するマッチングネットワークにより、異なる値を取る。言いかえれば、活動するニューロンの番号は、同一画像でも層により異なる。一方、図15のcの遺伝子コードは、層を経ても、また異なるマッチングネットワークただし、遺伝子レパートリーは同一であるとするでも、かなり近い値を取る。つまり、遺伝子コードこそ、その画像を表現する固有の値であると言える。実際、図28に示されるように、類似画像探索において、ニューロンコードを用いても、遺伝子コードを用いても、同様な成績を得ることができている。また、図12に示すように、マッチングネットワークは高い統合性を持つが、これは共通する遺伝子コードを伝達しているからである。マッチングネットワークは、ニューロンの活動を利用して、遺伝子コードという、個々の情報ここでは画像に固有の値を伝達しているのである。したがって、マッチングネットワークの個々の層は、遺伝子コードを変換する論理素子として考えることが可能である。図12及び図13に示した非類似画像探索においては、NOR素子により遺伝子コードを全く似ていないパターンに変換して、そのような遺伝子コードを持つ画像を探索しているのである。このように、マッチングネットワークは、単なるニューロンの活動ニューロンコードを、固有のベクトル遺伝子コードに変換する能力を持つ。また、遺伝子それぞれは、図18~20に示すような、特有のパターンプロトタイプを表現している。したがって、遺伝子コードは、個々の画像がどのようなプロトタイプにどれほど似ているか、どのプロトタイプの組合せに近いのかを、明示的に表現するものである。逆に、遺伝子コードを恣意的に操作することにより、どのようなプロトタイプに近い情報を選択したいか、という逆の演算なども可能になる。このように、遺伝子コードは、このようなこれまでにない演算の可能性を持つ。すなわち、本発明に係る特徴抽出装置100は、第2のニューロンのそれぞれについて、当該第2のニューロンに入力された第1信号値の数が大きいほど、より大きくなるように、当該第2のニューロンが有する発現遺伝子の度数を決定し、決定された度数を複数の発現遺伝子のそれぞれごとに合計した度数の分布を示す情報である遺伝子コードを、対象データの特徴として出力する特徴抽出装置であると言うこともできる。より具体的には、例えば、特徴抽出装置100は、第2のニューロンのそれぞれについて、当該第2のニューロンが有する各発現遺伝子の度数を、当該第2のニューロンに入力された第1信号値の数として決定してもよい。例えば、あるニューロンが、2、4、7の番号で表される3つの発現遺伝子を有しており、このニューロンに他のニューロンから10個の信号値を入力された場合、このニューロンが有する発現遺伝子である、2、4、7の度数は、それぞれ10として決定される。この値をすべての第2ニューロンについて合計し、遺伝子ごとの度数分布とする。また、特徴抽出装置100は、第2のニューロンのそれぞれについて、当該第2のニューロンに入力された第1信号値の数が所定の閾値以上であるか否かを判定し、所定の閾値以上である第2のニューロンが有する発現遺伝子を複数の発現遺伝子のそれぞれごとに合計した度数として、遺伝子コードを決定してもよい。以下、図16~図18を参照して、より詳細に説明する。図16は、144個の第1層のニューロンそれぞれに含まれる遺伝子コードを、12区画×12区画のマトリクス状に並べた図である。1番目の区画には、8と36と43が含まれている。これは、144個の第1層のニューロンのうち、1番目のニューロンが有する遺伝子コードが、8と36と43で有ることを示す。図17Aは、図16において、遺伝子コード1が含まれる区画にのみ1を記載し、他の区画を空白として表した図である。図17Aに示される144個の区画のうち、左上の区画が第1層のニューロンのうち1番目のニューロンに対応し、右下の区画が第1層のニューロンのうち144番目のニューロンに対応する。同様に、図17Bは、図16において、遺伝子コード2が含まれる区画にのみ2を記載し、他の区画を空白として表した図である。また、図17Cは、図16において、遺伝子コード3が含まれる区画にのみ3を記載し、他の区画を空白として表した図である。このように、遺伝子コードが1~50まである場合、1~50の遺伝子コードごとに当該遺伝子コードが含まれない区間を空白として表した画像を作成すると、合計50枚の画像が作成される。さらに、得られた50枚の画像のそれぞれについて、空白以外のすなわち、遺伝子コードが記載されている区間を黒く塗りつぶしたものを、5区間×10区間のマトリクス状に並べたものを図18に示す。すなわち、図18は、あるマッチングネットワークの第1層における遺伝子コードのパターンの一覧を示す画像である。例えば、左上の区間610aは、144個のニューロンのうち、遺伝子コード1が含まれるニューロンを視覚化した画像である。また、右下の区間610bは、遺伝子コード50が含まれるニューロンを視覚化した画像である。以後、図18に示される各区間のように、特定の遺伝子コードが含まれるニューロンを視覚化した画像をプロトタイプ画像とよぶ。図18の画像を生成する際に使用したマッチングネットワークにおいては、各ニューロンへランダムに発現遺伝子を割り当てたため、各遺伝子コードを視覚化したプロトタイプ画像は、いずれもランダムな模様を示している。マッチングネットワークは、例えば、図18に示されるような50枚のプロトタイプ画像の組合せとして入力データを表現する場合において、プロトタイプ画像ごとの寄与度重みを算出する処理を行っていると考えることもできる。すなわち、マッチングネットワークが行う特徴抽出処理とは、入力データをうまく表現可能なように、既定された複数のプロトタイプ画像の組み合わせを決定する処理であるといえる。したがって、遺伝子コードはランダムに決定しなくてもよい。すなわち、発現遺伝子割当部350は、各ニューロンに対してランダムに発現遺伝子を割り当てなくてもよい。例えば、図19は、任意に選択した50個の画像に2値化処理を施した画像である。発明者の実験によると、こうして他の画像を2値化することによってプロトタイプ画像を生成し、これらのプロトタイプ画像に対応する発現遺伝子を各ニューロンに割り当てたマッチングネットワークによっても、精度良く、類似画像探索を行うことができた。さらには、図20に示されるような、人工的な模様をプロトタイプ画像として使用することもできる。以上述べた、既定のパターンの組合せとして、新たな入力を表現するマッチングネットワークの機能は、例えばマーケティングにおいてユーザの嗜好を対象としたデータマイニング等においても利用できる。以下、お茶の新商品開発の場面を想定して、具体的に説明する。ステップS1まず、既存の50種類のお茶を144人の評価者に飲んでもらい、各自に好きなお茶を5種類ずつあげてもらったとする。ここで、評価者には1~144の番号をつけておく。また、お茶には、1~50の番号をつけておく。図21Aは、144人のそれぞれが好きなお茶としてあげたお茶の番号を示す。たとえば一番左の列は、1番の評価者が、2番、5番、21番、46番、及び49番のお茶を好きなお茶としてあげたことを示す。また、一番右の列は、144番の評価者が、6番、22番、35番、41番、及び44番のお茶を好きなお茶としてあげたことを示す。ステップS2次に、同じ144人の評価者に、新商品として開発中である新しいお茶を飲んでもらい、新しいお茶が気に入ったか否かを聞く。その後、新しいお茶を気に入ったと答えた人が、ステップS1において好きだと答えた既存のお茶の番号を集計し、ヒストグラムを作成する。例えば、1番の評価者が新しいお茶を好きだと答えた場合、2番、5番、21番、46番、及び49番のお茶の度数それぞれに1が加算される。また、2番の評価者も新しいお茶が好きだと答えた場合、6番、12番、33番、34番、及び50番のお茶の度数それぞれに1が加算される。図21Bは、このようにして作成された、新しいお茶が気に入った人が好きな、既存のお茶の番号についてのヒストグラムを示す。図21Bを参照すると、新しいお茶は、36番、50番などのお茶が好きな人に好まれていることがわかる。一方、20番、21番等のお茶が好きな人には好まれてない傾向があることが予想される。遺伝子コードを中心に考えると、マッチングネットワークも、図21Bに示されるようなヒストグラムの類似度で、類比を判断していると考えられる。以下、より具体的に説明する。例えば、図22は、マッチングネットワークの第1層630に、図21Aに示された、144人の評価者の嗜好データが入力された様子を示す。すなわち、第1層630に含まれるニューロンの各々を示す各列には、各列に対応する評価者が好きだと答えたお茶の番号が含まれている。なお、評価者が144人とすると、第1層630の列の数は144となるが、ここでは説明のため、列の数を省略して記載している。図22において、第1層630と第2層632とは、好まれたお茶の番号が1つでも一致したニューロン間に結合を生成するというマッチングルールに基づき生成された結合を有している。こうしたマッチングルールにより層間の結合を生成することにより、例えば、より多くの人に好まれるお茶をマッチングネットワークにより抽出することができる。以後、図22に示されるニューロン間の結合の種別を、第1結合タイプとよぶ。また、マッチングルールとして、その他のルールを適用することも考えられる。例えば、図23においては、第1層634と第2層636とは、お茶の番号が3つ以上一致したニューロン間にのみ結合を生成するというマッチングルールに基づき生成された結合を有している。こうしたマッチングルールにより生成される層間の結合によれば、個人が共通してもっているお茶の嗜好を抽出することができる。例えば、第1層634と第2層636との間に生成された結合から、14番のお茶、22番のお茶、37番のお茶のうち、いずれかを好む人は、他のお茶も好む傾向にあることが予想される。以後、図23に示されるニューロン間の結合の種別を、第2結合タイプとよぶ。さらに、図24においては、第1層638と第2層640とは、一致したお茶の番号の数だけ、ニューロン間に結合を生成するというマッチングルールに基づき生成された結合を有している。こうしたマッチングルールにより生成される層間の結合は、前述した2つのマッチングルールの中間的な性質を有している。すなわち、多くの人が好むお茶の番号間に結合が生成される一方で、そのお茶を好む人の嗜好が共通するお茶同士には、より多くのすなわち、重みの大きな結合が生成される。以後、図24に示されるニューロン間の結合の種別を、第3結合タイプとよぶ。また、1つのマッチングネットワーク内で、異なる結合タイプを組み合わせて使用することもできる。例えば、図25に示されるマッチングネットワークにおいては、第1層642と第2層644との間の結合タイプを、第1結合タイプとし、第1層642と第2層646との間の結合タイプを、第2結合タイプとしている。さらに、第2層644及び第2層646のそれぞれと、第3層648との間の結合タイプを、第3結合タイプとしている。その結果、第2層644では、144人の評価者のうち、多くの人に好まれたお茶を抽出できる。また、第2層646では、144人の評価者のうち、一部の人に共通して好まれるお茶の組み合わせを抽出できる。そして、第3層648では、あるお茶を好む人に共通して好まれるお茶であり、かつ、多くの人に好まれるお茶の組み合わせお茶のブレンドを抽出できる。すなわち、複数の第1層ニューロンの各々は、A自身が有する発現遺伝子と、第2層ニューロンが有する発現遺伝子とで一致する発現遺伝子の数が事前に定められた閾値以上であれば、信号を第2層ニューロンへ出力し、又は、B自身が有する発現遺伝子と、第2層ニューロンが有する発現遺伝子とで一致する発現遺伝子の数がより多いほど、より大きな重みを付けて、信号を第2層ニューロンへ出力するとしてもよい。マッチングネットワークには、前述したように、層間の伝播によっても発現遺伝子の多様性が失われにくいという特性があるため、結合タイプを変更して層を追加しても、特徴抽出性能は劣化しにくい。以上述べたように、マッチングネットワークは、特徴抽出装置としての用途以外にも、未知のものをうまく近似可能な、既知のパターンの組み合わせを発見する装置としても利用できる。したがって、前述したようなマーケティングのためのデータマイニングに使用できる。また、マッチングネットワークは、例えばある画像に類似する画像、及び類似しない画像の両方の特徴をうまく抽出できる。したがって、動画像中の類似シーンをまとめるシーン抽出装置、防犯映像中の不審な移動体の自動検出装置等にも利用できる。なお、実施の形態で説明した特徴抽出装置100は、コンピュータにより実現することが可能である。図26を参照して、特徴抽出装置100は、コンピュータ34と、コンピュータ34に指示を与えるためのキーボード36及びマウス38と、コンピュータ34の演算結果等の情報を提示するためのディスプレイ32と、コンピュータ34で実行されるプログラムを読み取るためのCD-ROMCompactDisc-ReadOnlyMemory装置40及び通信モデム図示せずとを含む。特徴抽出装置100が行う処理であるプログラムは、コンピュータで読取可能な媒体であるCD-ROM42に記憶され、CD-ROM装置40で読み取られる。又は、コンピュータネットワークを通じて通信モデム52で読み取られる。図27は、特徴抽出装置100を実現するコンピュータシステムのハードウェア構成を示すブロック図である。コンピュータ34は、CPUCentralProcessingUnit44と、ROMReadOnlyMemory46と、RAMRandomAccessMemory48と、ハードディスク50と、通信モデム52と、バス54とを含む。CPU44は、CD-ROM装置40又は通信モデム52を介して読み取られたプログラムを実行する。ROM46は、コンピュータ34の動作に必要なプログラムやデータを記憶する。RAM48は、プログラム実行時のパラメタなどのデータを記憶する。ハードディスク50は、プログラムやデータなどを記憶する。通信モデム52は、コンピュータネットワークを介して他のコンピュータとの通信を行う。バス54は、CPU44、ROM46、RAM48、ハードディスク50、通信モデム52、ディスプレイ32、キーボード36、マウス38及びCD-ROM装置40を相互に接続する。さらに、上記の特徴抽出装置100を構成する構成要素の一部又は全部は、1個のシステムLSILargeScaleIntegration:大規模集積回路から構成されているとしてもよい。システムLSIは、複数の構成部を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROM、RAMなどを含んで構成されるコンピュータシステムである。RAMには、コンピュータプログラムが記憶されている。マイクロプロセッサが、コンピュータプログラムに従って動作することにより、システムLSIは、その機能を達成する。さらにまた、上記の特徴抽出装置100を構成する構成要素の一部又は全部は、脱着可能なICカード又は単体のモジュールから構成されているとしてもよい。ICカード又はモジュールは、マイクロプロセッサ、ROM、RAMなどから構成されるコンピュータシステムである。ICカード又はモジュールは、上記の超多機能LSIを含むとしてもよい。マイクロプロセッサが、コンピュータプログラムに従って動作することにより、ICカード又はモジュールは、その機能を達成する。このICカード又はこのモジュールは、耐タンパ性を有するとしてもよい。また、本発明は、上記に示す方法であるとしてもよい。また、これらの方法をコンピュータにより実現するコンピュータプログラムであるとしてもよいし、前記コンピュータプログラムからなるデジタル信号であるとしてもよい。さらに、本発明は、上記コンピュータプログラム又は上記デジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、CD-ROM、MO、DVD、DVD-ROM、DVD-RAM、BDBlu-rayDisc登録商標、USBメモリ、SDカードなどのメモリカード、半導体メモリなどに記録したものとしてもよい。また、これらの記録媒体に記録されている上記デジタル信号であるとしてもよい。また、本発明は、上記コンピュータプログラム又は上記デジタル信号を、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしてもよい。また、本発明は、マイクロプロセッサとメモリを備えたコンピュータシステムであって、上記メモリは、上記コンピュータプログラムを記憶しており、上記マイクロプロセッサは、上記コンピュータプログラムに従って動作するとしてもよい。また、上記プログラム又は上記デジタル信号を上記記録媒体に記録して移送することにより、又は上記プログラム又は上記デジタル信号を、上記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。さらに、上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて請求の範囲によって示され、請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。"