(57)【要約】      （修正有）【課題】   中間層と出力層との間の結合数を少なく留めつつもニューラルネットワークの最適化処理が可能であり、ひいては少ない演算量でも精度の高いパターン教示が可能となるパターン教示システムを提供する。【解決手段】  パターン教示システム１は、信号の入力和と第一の閾値との比較結果に基づいて自身の信号出力を変化させる複数の第一種ユニット１０を有する中間層４０を有する。入力層３０に被識別パターンの入力信号Ｉｉと、前回の被識別パターンにかかる出力信号Ｏｉに基づくフィードバック信号ＦＢｉを入力し、各被識別パターンの入力毎に、出力層５０をなす第二種ユニット１１の出力信号Ｏｉと教示信号Ｔｉとの一致状態が改善されるように、出力側結合調整手段２１により、第二種ユニット１１と中間信号ｍｉを出力する第一種ユニット１０との結合を組合せ変更し、入力層３０と第一種ユニット１０との結合の重みを調整する形で、学習処理を行なう。【選択図】  図１
2005284833.tif 000002
【特許請求の範囲】
【請求項１】
複数の信号が各々並列入力結合可能とされ、かつ、該信号の入力和に対する第一の閾値を有してなり、該入力和と前記第一の閾値との比較結果に基づいて自身の信号出力を変化させる複数の第一種ユニットを有する中間層と、
前記中間層の前段に位置し、被識別パターンをなす複数の入力信号を、前記中間層の最前段に位置する第一種ユニットの列に入力するパターン入力部を有した入力層と、
前記中間層の最終段に位置する第一種ユニットの出力を中間信号として、該中間信号が並列入力結合可能とされ、かつ、該中間信号の入力和に対する、前記第一の閾値よりも低い第二の閾値を有してなり、該入力和と前記第二の閾値との比較結果に基づいて出力信号を変化させる複数の第二種ユニットを有する出力層と、
複数の前記第二種ユニットの出力信号の集合を出力パターンとして、該出力パターンを構成する前記出力信号に一義的に対応した教師信号よりなる教示パターンを設定する教師信号設定手段と、
複数の前記中間信号を、複数の前記第二種ユニットに対し、任意の組合せにて入力結合設定する出力側結合設定手段と、
前記出力パターンをなす各出力信号と、対応する教師信号との一致状態を照合し、その照合結果に基づいて、前記出力パターンと前記教示パターンとの一致状態が改善されるように、各前記第二種ユニットに対する前記第一種ユニットの結合の組合せを変更する出力側結合調整手段と、
複数の前記第二種ユニットの出力のフィードバック信号を前記入力層に返すフィードバック手段とを有し、
前記入力層において前記パターン入力部は、前記被識別パターンをなす複数の前記入力信号とともに、前記フィードバック信号を前記中間層の最前段に位置する第一種ユニットの列に入力するものであり、
前記入力層に２種以上の被識別パターンを順次繰り返して入力し、各被識別パターンの入力毎に、前記出力層をなす前記第二種ユニットの出力信号と前記教師信号との一致状態が改善されるように、前記出力側結合調整手段により、前記第二種ユニットと前記中間信号を出力する第一種ユニットとの結合の組合せ変更する学習処理を反復して行なうようにしたことを特徴とするパターン教示システム。
【請求項２】
前記出力側結合調整手段は、前記第二種ユニットの出力信号と前記教示信号との一致状態が予め定められたレベルに到達すれば、複数の前記第一種ユニットと複数の前記第二種ユニットとの間に未結合の組合せが残されていても、これを残す形で前記学習処理の反復を打ち切る請求項１記載のパターン教示システム。
【請求項３】
前記出力側結合調整手段は、複数の前記中間信号に重み付与することなく、複数の前記第二種ユニットとの結合の組合せのみを変更する請求項１又は２に記載のパターン教示システム。
【請求項４】
前記第一種ユニット及び前記第二種ユニットは、いずれもアクティブ出力と非アクティブ出力とのいずれかを二値出力するものであり、
また、前記被識別パターンと前記教示パターンとは、アクティブ状態と非アクティブ状態とのいずれかに設定される二値信号の集合よりなる請求項１ないし３のいずれか１項に記載のパターン教示システム。
【請求項５】
前記出力側結合調整手段は、前記第二種ユニットの出力が非アクティブであり、対応する教師信号がアクティブである場合、当該第二種ユニットに対し前記第一種ユニットとの新規な結合を形成する請求項４記載のパターン教示システム。
【請求項６】
前記出力側結合調整手段は、前記第二種ユニットに対し前記第一種ユニットとの新規な結合を形成するに際し、出力がアクティブとなっている既存の第一種ユニットがある場合は該既存の第一種ユニットとの結合を形成し、ない場合は、新たな第一種ユニットを作成して当該作成した第一種ユニットとの結合を形成するものである請求項５記載のパターン教示システム。
【請求項７】
前記第一種ユニットの出力状態と、該第一種ユニットの結合先となる第二種ユニットへの教師信号の内容とに基づいて、前記第二種ユニットの出力信号と、これに対応する教師信号との一致状態を反映した学習判定情報を、複数の第一種ユニット毎に作成する学習判定情報作成手段を有し、
前記出力側結合調整手段は、前記学習判定情報の内容に基づいて、対応する第二種ユニットの出力信号と教師信号との一致状態が改善されるように、前記第二種ユニットと前記第一種ユニットとの結合の組合せ設定を調整する請求項１ないし６のいずれか１項に記載のパターン教示システム。
【請求項８】
前記パターン入力部からの複数の前記入力信号と、各前記第一種ユニットからのフィードバック信号とを、前記中間層の最前段側に位置する複数の第一種ユニットに任意の組合せにて分配結合設定する入力側結合設定手段と、
前記出力パターンと前記教示パターンとの一致状態が改善されるように、各前記第一種ユニットに対する前記入力信号及び前記フィードバック信号の結合の重み及び／又は組合せを変更する入力側結合調整手段と、を有する請求項１ないし７のいずれか１項に記載のパターン教示システム。
【請求項９】
請求項４の要件を有し、
前記入力側結合調整手段は、前記新たな第一種ユニットの作成時において前記被識別パターンの前記入力信号及び前記フィードバック信号のうちアクティブ状態となっているもののみを選択する形で各前記第一種ユニットに分配入力するものであり、さらに前記出力側結合調整手段により前記第二種ユニットと前記第一種ユニットとの結合の組合せ設定を調整する主学習処理を反復して行なったとき、前記第二種ユニットの出力信号と前記教師信号との一致状態が、前記主学習処理の後予め定められた条件を充足するようには改善されなかった場合には、既に終了している学習処理により肯定結合となっている入力を肯定アクティブ入力とし、現在結合設定のない入力信号を否定反転してアクティブとした否定アクティブ入力を加えた形にて各前記第一種ユニットに分配入力するものであり、
前記出力側結合調整手段は、前記否定アクティブ入力が加わった後、さらに、前記第二種ユニットと前記第一種ユニットとの結合の組合せ設定を調整する補助学習処理を行なう請求項８記載のパターン教示システム。
【請求項１０】
前記第一種ユニットは、前記入力信号及び前記フィードバック信号が重み付与された形で並列入力結合可能とされ、前記第一の閾値は、該入力信号の重み入力和に対して設定されるものであり、さらに、
前記第一種ユニットに結合される前記入力信号及び前記フィードバック信号の重み値を設定する重み設定手段と、
前記学習判定情報の内容に基づいて、対応する第二種ユニットの出力信号と教師信号との一致状態が改善されるように、前記第二種ユニットに結合されている前記第一種ユニットへの前記入力信号及び前記フィードバック信号の重み値を調整する重み調整手段と、
を有した請求項７ないし９のいずれか１項に記載のパターン教示システム。
【請求項１１】
請求項５に記載の要件を備え、
前記重み調整手段は、前記学習判定情報が前記判定一致状態となっている前記第一種ユニットに対しては前記入力信号及び前記フィードバック信号のうちアクティブとなっているものとの重みを増加させ、前記判定不一致状態となっている前記第一種ユニットに対しては前記入力信号及び前記フィードバック信号のうちアクティブとなっているものとの重みを減少させる処理を行なう請求項１０記載のパターン教示システム。
【請求項１２】
前記重み調整手段は、前記学習判定情報が前記中立状態となっている前記第一種ユニットに対しては前記入力信号及び前記フィードバック信号の重み増減処理を行なわない請求項１１記載のパターン教示システム。
【請求項１３】
コンピュータを、請求項１ないし１２のいずれかに記載のパターン教示システムの各手段として機能させることを特徴とするコンピュータプログラム。
【請求項１４】
請求項１ないし１２のいずれかに記載のパターン教示システムの前記入力層に２種以上の前記被識別パターンを順次繰り返して入力し、各被識別パターンの入力毎に、前記出力層をなす前記第二種ユニットの出力信号と前記教師信号との一致状態が改善されるように、前記出力側結合調整手段により、前記第二種ユニットと前記中間信号を出力する第一種ユニットとの結合の組合せ変更する学習処理を反復して行なうことにより得られることを特徴とするパターン識別装置。
【請求項１５】
請求項１３記載のコンピュータプログラムの実行により、コンピュータ上にて実現される請求項１ないし１２のいずれかに記載のパターン教示システムを用いて前記学習処理を反復して行なうことにより、コンピュータ上でのソフトウェア的エミュレーションの形で実現される請求項１３記載のパターン識別装置。
【請求項１６】
請求項１０ないし１２のいずれかに記載のパターン教示システムの前記入力層に２種以上の前記被識別パターンを順次繰り返して入力し、各被識別パターンの入力毎に、前記出力層をなす前記第二種ユニットの出力信号と前記教師信号との一致状態が改善されるように、前記出力側結合調整手段により、前記第二種ユニットと前記中間信号を出力する第一種ユニットとの結合の組合せ変更し、さらに、前記学習判定情報の内容に基づいて、対応する第二種ユニットの出力信号と教師信号との一致状態が改善されるように、前記第二種ユニットに結合されている前記第一種ユニットへの前記入力信号の重み値を調整する学習処理を反復して行なう工程と、
前記入力信号を前記重み値に応じて取捨選択しつつ前記第一種ユニットを、残した入力信号に対応した二値入力端子を有する論理積ゲート回路にて置換し、さらに、該第一種ユニットからの中間出力が結合される前記第二種ユニットを、該中間出力に対応した二値入力端子を有する論理和ゲート回路にて置換する工程と、
を含むことを特徴とするパターン識別装置のデジタル論理回路設計方法。
【請求項１７】
前記入力信号のうち、前記重み値が予め定められた閾値よりも大きいもののみを二値入力として残す形で、前記第一種ユニットを論理積ゲート回路にて置換する請求項１６記載のパターン識別装置のデジタル論理回路設計方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パターン教示システムと、それを用いたパターン識別装置、コンピュータプログラム及びパターン識別装置のデジタル論理回路設計方法に関する。
【背景技術】
【０００２】
【特許文献１】特開平１−２４３１６９号公報
【特許文献２】特許第２６０６３１７号公報
【０００３】
画像や音声のパターン識別は、例えば予め実体の知れている標準パターンを用意しておき、被識別パターンがその標準パターンと一致しているかどうかを、パターンを構成する素信号（例えば、画像識別の場合は画素、音声の場合は量子化された音声波形のレベル）同士の一致確率に応じて判定する方法が知られている。しかし、この方法は、あいまいな要素を含んだ柔軟なパターンマッチングや、あるいはノイズに強いパターンマッチングを実現するために不可欠である、統計的手法の導入が面倒であり、性能的にも限界がある。近年、こうした問題を解決するために、ニューラルネットワークを用いたパターン識別手法が種々提案されている。
【０００４】
ニューラルネットワークは、生体の脳をモデルとした情報処理システムであり、その基本構成要素であるニューロンを、多入力１出力の非線形素子（以下、ニューロン型素子ともいう）とみなしてこれをネットワーク状に多数結合したものである。具体的には、ニューラルネットワークに識別すべきパターンを繰り返し与えて教示パターンと比較しながら、ニューロン型素子間の結合の強さ（結合により媒介される入力信号の重み（ウェイトあるいは荷重ともいう））を調整することにより、特定パターンの識別が可能となるように学習を行なう。
【０００５】
従来、パターン識別に広く用いられているのは、階層型ニューラルネットワークと称されるものであり、入力層と出力層との間に１段又は２段以上の中間層を介在させた構造を有する。入力層にある被識別パターンを与えると、出力層には、中間層の結合状態に応じた特有の出力パターンが現われる。そして、学習の繰り返しにより、その出力パターンと、予め用意された所望の教示パターンとの誤差が最小化されるように、中間層の結合の重みを調整する。具体的には、入力層と中間層及び中間層と出力層は、いずれも重み付きの結合によって結び付けられ、出力層側から入力層側に向けて、結合の重みを、最急降下法を用いて順次的に最適化する、バックプロパゲーション法が用いられている（特許文献１，２）。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、バックプロパゲーション法によるニューラルネットワークの最適化には、以下のような欠点がある。
(1)入力層と中間層との間、及び入力層と出力層との間で、いずれも全てのユニット間でしらみつぶし的に結合が設定され、その結合の重み調整だけでネットワークを最適化するので、計算量が膨大化しやすい。装置規模が大きくなった場合は、現実的な規模のコンピュータあるいはコンピュータネットワークでは、処理が破綻することもある。
(2)最急降下法を用いるため、局所的最適解にはまり込んだときは、誤差の真の最適化が不能となる場合がある。
(3)バックプロパゲーション法においては、一般的には、入力層と出力層に対して適当な数の中間層を用意することになるが、最終的に適正と考えられる中間層の数は予測不能なので、設定数が多すぎれば無駄な結合がたくさん残り、少なければ分離できないパターンができるなどの不具合につながる。
(4)ある入力パターンの学習結果出力を再度入力として用いる形で、ニューラルネットワークを用いたパターン学習では、より複雑なパターン学習を段階的に実行することも概念的には可能である。この場合、ニューラルネットワークブロックを複数段に結合し、中間教示信号を各結合点に与えることにより、より多段の論理を学習させるイメージとなる。しかし、この場合、上流側から下流側のブロックに順次的に信号を受け渡すことになるので、例えば局所解などの影響により正しい学習結果からの乖離が途中で生じても、乖離の少ない上流側の中間教示信号を、問題を生じている下流側のブロックに飛び越し付与することが原理的にできず、学習修正が難しい欠点がある。また、下流側の中間教示信号は必ず上流側の中間教示信号よりも次数の高い論理でなくてはいけないなど、中間教示信号の与え方にも制約が多い。
【０００７】
本発明の課題は、少なくとも演算が必要な中間層の数や、中間層と出力層との間の結合数を少なく留めつつもニューラルネットワークの最適化処理が可能であり、ひいては少ない演算量でも精度の高いパターン教示が可能となり、さらに、複雑な教示パターンの段階的な学習も容易に実行できるパターン教示システムと、それを用いたパターン識別装置、コンピュータプログラム及びパターン識別装置のデジタル論理回路設計方法とを提供することにある。
【課題を解決するための手段及び発明の効果】
【０００８】
上記の課題を解決するために本発明のパターン教示システムは、
複数の信号が各々並列入力結合可能とされ、かつ、該信号の入力和に対する第一の閾値を有してなり、該入力和と第一の閾値との比較結果に基づいて自身の信号出力を変化させる複数の第一種ユニットを有する中間層と、
中間層の前段に位置し、被識別パターンをなす複数の入力信号を、中間層の最前段に位置する第一種ユニットの列に入力するパターン入力部を有した入力層と、
中間層の最終段に位置する第一種ユニットの出力を中間信号として、該中間信号が並列入力結合可能とされ、かつ、該中間信号の入力和に対する、第一の閾値よりも低い第二の閾値を有してなり、該入力和と第二の閾値との比較結果に基づいて出力信号を変化させる複数の第二種ユニットを有する出力層と、
複数の第二種ユニットの出力信号の集合を出力パターンとして、該出力パターンを構成する出力信号に一義的に対応した教師信号よりなる教示パターンを設定する教師信号設定手段と、
複数の中間信号を、複数の第二種ユニットに対し、任意の組合せにて入力結合設定する出力側結合設定手段と、
出力パターンをなす各出力信号と、対応する教師信号との一致状態を照合し、その照合結果に基づいて、出力パターンと教示パターンとの一致状態が改善されるように、各第二種ユニットに対する第一種ユニットの結合の組合せを変更する出力側結合調整手段と、
複数の第二種ユニットの出力のフィードバック信号を入力層に返すフィードバック手段とを有し、
入力層においてパターン入力部は、被識別パターンをなす複数の入力信号とともに、フィードバック信号を中間層の最前段に位置する第一種ユニットの列に入力するものであり、
入力層に２種以上の被識別パターンを順次繰り返して入力し、各被識別パターンの入力毎に、出力層をなす第二種ユニットの出力信号と教師信号との一致状態が改善されるように、出力側結合調整手段により、第二種ユニットと中間信号を出力する第一種ユニットとの結合の組合せ変更する学習処理を反復して行なうようにしたことを特徴とする。
【０００９】
また、本発明の信号処理装置は、上記本発明のパターン教示システムの入力層に２種以上の被識別パターンを順次繰り返して入力し、各被識別パターンの入力毎に、出力層をなす第二種ユニットの出力信号と教示信号との一致状態が改善されるように、出力側結合調整手段により、第二種ユニットと中間信号を出力する第一種ユニットとの結合の組合せ変更する学習処理を反復して行なうことにより得られることを特徴とする。
【００１０】
被識別パターンが入力される第一種ユニットは、周知のニューロン型素子に比較的近い複数入力／１出力型の素子概念であり、被識別パターンを形成する複数の入力信号を分配入力したときのパターンの選択性を高めるために、入力和に対する出力閾値（第一の閾値）は比較的高い値に設定される。他方、第二種ユニットは、上記第一種ユニットとの結合の組合せ変更（あるいは組換え）により学習処理を進める本願発明特有の素子概念であり、複数入力／１出力型の素子という点では第一種ユニットと同じであるが、その入力和に対する出力閾値（第二の閾値）が、第一種ユニットの閾値（第一の閾値）よりも低く設定される。なお、入力和と出力閾値との高低関係は、アクティブレベル側を正方向として、正側にシフトしている方を「高い」側として定義する。
【００１１】
すなわち、複数のカテゴリの被識別パターンを教示する場合は、第一種ユニットへの信号の入力パターン、ひいては第一種ユニットを経由した信号の伝播パターンはカテゴリによって変化する。第二種ユニットの出力は、そのいずれのカテゴリの被識別パターンに由来する伝播パターンが到来しても、有効な識別結果を示す出力を発生させなければならない。具体例を挙げれば、ある第二種ユニットに入力として集められている（異なる第一種ユニットからの）２つの結合のうち第一のものが、カテゴリＡの被識別パターンが与えられているときに高レベルとなり、第二のものがカテゴリＢの被識別パターンが与えられているときに高レベルになったとすると、第二種ユニットは、２つの結合（入力）の少なくとも一方が高レベルのときに、出力が高レベルとなるように動作することが要求される。こうした動作を実現するために、第二種ユニットの入力和に対する出力閾値（第二の閾値）は、前記第一の閾値よりも低く設定される。
【００１２】
そして、本発明においては、出力パターンをなす各出力信号と対応する教示信号との照合結果に応じて、各第二種ユニットに対する第一種ユニットの結合の組合せを変更することにより、出力信号と教示信号との一致状態を高めるようにした。これにより、中間層と出力層との間の結合数を少なく留めつつニューラルネットワークの最適化処理が可能となる。さらに、結合の組合せ変更を繰り返し行なう形で、出力信号と教示信号との一致状態を最適化するので、最適化演算の自由度が大きく、最急降下法による結合重み調整を採用する従来のバックプロパゲーション法のように、局所的最適解にはまり込む確率も大幅に減ずることができる。
【００１３】
また、本発明においては、複数の第二種ユニットの出力のフィードバック信号を入力層に返すフィードバック手段が設けられており、中間層の最前段に位置する第一種ユニットの列には、被識別パターンをなす複数の入力信号とともに、フィードバック信号も入力される。この構成によると、先の被識別パターンに対する学習結果（つまり、第二種ユニットと第一種ユニットとの結合組合せ最適化の結果）としての出力信号を入力層にフィードバックし、これを、次の被識別パターンの入力信号と並列かつ独立した一種の中間入力信号として与える。すなわち、先の被識別パターンの学習結果出力のフィードバックを、次の被識別パターンに対するいわば中間入力信号として用いることができ、複数段のニューラルネットワークを用いることなく、多段の学習を時系列的に実現することができる。この場合、第二種ユニットは、自身の入力状態（被識別パターンの入力とフィードバック信号の入力にとの双方を含む）とは無関係に、第一種ユニットの出力と教示信号との一致／不一致を優先して、両ユニット間の結合組合せだけを最適化すればよいから、中間入力信号としてのフィードバック信号にも論理次数等に関する制約が一切生じない利点がある。
【００１４】
さらに、入力和に対する閾値が異なる二種のユニットの結合に出力側からのフィードバックが加わることで、一種のラッチ（フリップフロップ）ロジックが結合ネットワーク上に形成される。その結果、パターン上の相関が深い被識別パターンが順次入力される状況下では、次段の被識別パターン入力がなされた場合も、上記ラッチロジックに関与する出力に対しリセット的に作用する入力は比較的少なくなる。従って、例えば、それらの被識別パターン間で共通の、学習内容として正しい方向で関与するユニット間結合については、上記ラッチロジックの形成により、時系列的に順次入力される複数の被識別パターン間でいわばメモリ保持される形となる。その結果、（時系列的に）上流側の被識別パターンにかかる出力フィードバックが、上記メモリ保持効果により、間接的に複数段先の被識別パターンへのフィードバックとしても作用でき、一種の飛び越し学習効果が生ずるので、多段学習の途中で正しい学習結果から乖離する不具合が原理的に生じにくくなる。
【００１５】
なお、第二種ユニットに対する第一種ユニットの結合の組合せ変更（組替え）が可能となるには、具体的な操作として、次の２つの処理ができることが必須である。
(1)特定の第一種ユニットと特定の第二種ユニットとの間に新たな結合を形成する。
(2)特定の第一種ユニットと特定の第二種ユニットとの間にすでに形成されている結合を解除する。
【００１６】
また、必要に応じて、
(3)特定の第一種ユニットを削除する。
(4)必要に応じて第一種ユニットを新たに追加する。
の２つの操作を追加することもできる。なお、特定の第一種ユニットとある第二種ユニットとの間にすでに形成されている結合を、別の第二種ユニットとの結合に切り替えたり、ある第一種ユニットと特定の第二種ユニットとの間に既に形成されている結合を、別の第一種ユニットとの結合に切り替える操作を想定することもできるが、これらは、いずれも(1)と(2)とを組み合わせて行なうことで実現可能である。
【００１７】
なお、本発明は、コンピュータを上記本発明のパターン教示システムの各手段として機能させるコンピュータプログラムも提供する。本発明のパターン教示システムはハードウェアロジックとして構成することも可能であるが、上記本発明のコンピュータプログラムを用いて、ソフトウェア的にエミュレーションすることにより、パターン教示のために、多数の第一種ユニットと第二種ユニットとの結合最適化を行なう処理を、より簡便に行なうことができる。この場合、本発明のパターン識別装置は、上記本発明のコンピュータプログラムの実行により、コンピュータ上にて実現される本発明のパターン教示システムを用いて前記学習処理を反復して行なうことにより、コンピュータ上でのソフトウェア的エミュレーションの形で実現することができる。
【００１８】
次に、出力側結合調整手段は、具体的には、第二種ユニットの出力信号と教示信号との一致状態が予め定められたレベルに到達すれば、複数の第一種ユニットと複数の第二種ユニットとの間に未結合の組合せが残されていても、これを残す形で学習処理の反復を打ち切るものとすることができる。つまり、中間層と出力層との間の第一種ユニットと第二種ユニットとの間の結合を、全ての組合せが網羅されるように設定するのではなく、出力信号と教示信号との一致状態が最適化された時点で、中間層をなす第一種ユニットと出力層をなす第二種ユニットとの間に新たな組合せの結合を作ることなく、学習処理を終了させる。これにより、ユニット間の結合数を必要十分な数に留めつつ、十分な精度のパターン教示が可能となり、ひいては学習の結果物として得られるパターン識別装置の設計効率を大幅に高めることができる。また、識別すべきパターンの種類が増えた場合にも、ユニット間の結合数が過度に増えることがないので、同じ規模の装置でもより識別能力の高いシステムを実現できる。
【００１９】
また、フィードバック信号の安定化を考慮した場合、同一の被識別パターン（あるいは差の小さい被識別パターン）を複数回繰り返して入力することが望ましいが、この場合、出力側結合調整手段は、発火処理の反復に伴う第二種ユニットの出力状態の変化が予め定められたレベル以下となった後、次の被識別パターンを与えるようにすることが望ましい。
【００２０】
また、出力側結合調整手段は、複数の中間信号に重み付与することなく、複数の第一種ユニットとの結合の組合せのみを変更するものとして構成することができる。この構成によると、中間層と出力層との結合に重みが関与しないため、最急降下法により結合重み調整する従来のバックプロパゲーション法と比較して、ニューラルネットワーク最適化の演算負担を劇的に減ずることができる。
【００２１】
第一種ユニット及び第二種ユニットは、いずれもアクティブ出力と非アクティブ出力とのいずれかを二値出力するものであり、また、被識別パターンと教示パターンとは、アクティブ状態と非アクティブ状態とのいずれかに設定される二値信号の集合よりなる。各ユニットの出力を二値化（すなわちデジタル化）することにより、ネットワーク最適化の演算処理を一層簡略化することができる。この場合、第二種ユニットへの入力は（結合される第一種ユニットの出力がデジタル化されることで）、必然的に二値となる。前述のように、この入力に重みを付与しない場合は、その単純合計値が第二の閾値以上となっているか否かにより、第二種ユニットの出力が簡便に決定される。
【００２２】
次に、本発明のパターン教示システムには、第一種ユニットの出力状態と、該第一種ユニットの結合先となる第二種ユニットへの教示信号の内容とに基づいて、第二種ユニットの出力信号と、これに対応する教示信号との一致状態を反映した学習判定情報を、複数の第一種ユニット毎に作成する学習判定情報作成手段を設けることができる。この場合、前記の出力側結合調整手段は、学習判定情報の内容に基づいて、対応する第二種ユニットの出力信号と教示信号との一致状態が改善されるように、第二種ユニットと第一種ユニットとの結合の組合せ設定を調整するものとすることができる。
【００２３】
第二種ユニットの出力信号と教示信号とを照合する方法は、教示パターンと出力パターンとの直接比較を行なうので、照合結果を単に把握するだけであれば有効であるが、照合結果の要因特定まで行なうことは困難である。つまり、出力信号と教示信号との不一致が判明しても、その不一致に関与しているのが、どの第一種ユニットからの出力であるかを特定することが原理的に不可能である。その結果、出力信号と教示信号とを一致方向に改善するための具体的対応として、対応する第二種ユニットへの第一種ユニットの結合の組合せを試行錯誤的に変化させる非能率な方法を採用せざるを得なくなる。そこで、上記のように、第二種ユニットの出力信号と教示信号との一致状態を反映した学習判定情報を、複数の第一種ユニット毎に作成すれば、第一種ユニットの出力段階で、出力信号と教示信号との一致／不一致への関与が特定でき、関与の深い第一種ユニットをいわば狙い撃ちする形で第二種ユニットへの結合状態を調整することができる。その結果、出力信号と教示信号との一致状態の改善をより効率的かつ確実に行なうことができる。特に、第二種ユニットを、それら入力の少なくとも一つのものがアクティブのとき出力がアクティブとなるものとして構成しておくと、第一種ユニットの出力が、そのまま第二種ユニットの出力にも反映されるので、学習判定情報の内容の信頼性を高めることができる。
【００２４】
特に、第一種ユニット及び第二種ユニットの出力が二値化されており、被識別パターンと教示パターンとが二値信号の集合よりなる場合、学習判定情報作成手段は、第一種ユニットと教示信号との各出力のアクティブ／非アクティブの組合せに基づいて、学習判定情報を作成することができる。つまり、第一種ユニットと教示信号との各出力よりなる高々２ビットの学習判定情報により、出力信号と教示信号との一致状態を正確に把握することができ、情報作成処理もビットの組合せを識別するだけでよいから極めて容易である。
【００２５】
次に、本発明のパターン教示システムには、パターン入力部からの複数の入力信号と、各第二種ユニットからのフィードバック信号とを、中間層の最前段側に位置する複数の第一種ユニットに任意の組合せにて分配結合設定する入力側結合設定手段と、出力パターンと教示パターンとの一致状態が改善されるように、各第一種ユニットに対する入力信号の結合の組合せを変更する入力側結合調整手段を設けることができる。第一種ユニットに対する入力信号及びフィードバック信号の結合の重み及び／又は組合せを変更可能とすることで、より自由度の高いニューラルネットワークの最適化が可能となる。また、入力側結合調整手段は、第二種ユニットの出力信号と教示信号との一致状態が予め定められたレベルに到達すれば、複数の入力信号及びフィードバック信号と複数の第一種ユニットとの間に未結合の組合せが残されていても、これを残す形で学習処理の反復を打ち切るものとして構成できる。これにより、入力信号及びフィードバック信号と第一種ユニットとの結合数を必要十分な数に留めつつ、十分な精度のパターン教示が可能となり、ひいては学習の結果物として得られるパターン識別装置の設計効率を大幅に高めることができる。また、識別すべきパターンの種類が増えた場合にも、ユニット間の結合数が過度に増えることがないので、同じ規模の装置でもより識別能力の高いシステムを実現できる。
【００２６】
また、本発明のパターン教示システムにおいて第一種ユニットは、入力信号及びフィードバック信号が重み付与された形で並列入力結合可能とされたものとして構成できる。この場合、第一の閾値は、該入力信号及びフィードバック信号の重み入力和に対して設定される。そして、該システムの構成においては、第一種ユニットに結合される入力信号及びフィードバック信号の重み値を設定する重み設定手段と、学習判定情報の内容に基づいて、対応する第二種ユニットの出力信号と教示信号との一致状態が改善されるように、第二種ユニットに結合されている第一種ユニットへの入力信号及びフィードバック信号の重み値を調整する重み調整手段とを設けるようにする。入力信号及びフィードバック信号の重み付き和を考慮することで、パターン識別の学習効果を一層高めることができ、ひいては、多種の被識別パターンをより正確に分離・識別することができる。
【００２７】
上記構成では、入力信号及びフィードバック信号の重み付き和を用いるが、本発明においては、出力パターンと教示パターンとの一致度を高める具体的手法として、前記した通り、中間層をなす第一種ユニットと、出力層の第二種ユニットとの結合の組合せを最適化する手法を用いる。この結合最適化の過程で、必要のない第一種ユニットと第二種ユニットとの結合は順次消滅・淘汰されてゆく。そして、学習判定情報を参照することにより、出力信号と教示信号との一致に対し肯定的に結合関与している第一種ユニットを見出し、該第一種ユニットへの入力の重みのみを機械的に増加させてゆけば、種々の出力パターンと教示パターンとの一致精度を自然に高めることができる。従って、従来型のバックプロパゲーション法における最急降下法のような、複雑な数学的アルゴリズムを伴う重み付き和最適化手法は全く不要となる。
【００２８】
また、バックプロパゲーション法で用いる最急降下法では、入力側の重み分布を乱数により偏りなく設定する必要があり、例えば重み分布設定が適切でないと、出力パターンと教示パターンとの一致精度が損なわれる場合があり、局所的最適開に陥りやすい問題もある。しかし、本発明のパターン教示システムにおいては、上記のように入力信号及びフィードバック信号の重みの最適化が、ユニット間の結合最適化にいわば従属する形で進んでゆくので、ユニット間の最適結合形態が決まっていれば、最適の重み分布が、重み初期値の設定に影響されにくい利点がある。最も簡単な手法としては、被識別パターンをなす複数の入力信号及びフィードバック信号のうち、第一種ユニットに最初に結合するものの重み値を同一の初期値に設定する方法を例示できる。そして、このような簡単な重み初期値設定を行なっても、出力パターンと教示パターンとの一致精度を問題なく高めることができる。
【００２９】
入力信号及びフィードバック信号に重み付与した形で並列入力する上記のパターン教示システムの構成（以下、重み付きパターン教示システムという）では、学習処理が終了した段階で各第一種ユニットの入力に、その過程で最適された重み値が随伴したものとなる。これを用いると、学習の結果として得られるパターン識別装置の構成を、以下のようにしてデジタル論理回路に簡単に変換することができる。すなわち、本発明のパターン識別装置のデジタル論理回路設計方法は、パターン教示システムの入力層に２種以上の被識別パターンを順次繰り返して入力し、各被識別パターンの入力毎に、出力層をなす第二種ユニットの出力信号と教示信号との一致状態が改善されるように、出力側結合調整手段により、第二種ユニットと中間信号を出力する第一種ユニットとの結合の組合せ変更し、さらに、学習判定情報の内容に基づいて、対応する第二種ユニットの出力信号と教示信号との一致状態が改善されるように、第二種ユニットに結合されている第一種ユニットへの入力信号及びフィードバック信号の重み値を調整する学習処理を反復して行なう工程と、
入力信号及びフィードバック信号を重み値に応じて取捨選択しつつ第一種ユニットを、残した入力信号及びフィードバック信号に対応した二値入力端子を有する論理積ゲート回路にて置換し、さらに、該第一種ユニットからの中間出力が結合される第二種ユニットを、該中間出力に対応した二値入力端子を有する論理和ゲート回路にて置換する工程と、を含むことを特徴とする。
【００３０】
上記重み付きパターン教示システムの構成を用いると、最終的に、入力側につながる第一種ユニットへの入力の重みと、出力側につながる第一種ユニットと第二種ユニットとの結合が最適化されたパターン識別装置が得られる。この装置自体は、第一種ユニットが重み入力を伴う非線形素子であるため、論理ＩＣの組合せからなる一般のデジタル論理回路とは概念的に相違する。しかし、ニューラルネットワーク的手法により、パターン識別機能を実現するためのシステムは、最小限のユニット結合にて簡便に設計できる利点がある。本願発明のパターン教示システムを用いて結合を最適化したパターン識別装置では、重みの小さい結合はパターン識別処理への寄与が小さいことを考慮すれば、第一種ユニットは、入力信号及びフィードバック信号を重み値に応じて取捨選択すれば、残した入力信号及びフィードバック信号に対応した入力を二値入力化して扱うことにより、論理積ゲート回路により簡単に置換できる。また、第一種ユニットからの中間出力が結合される第二種ユニットは、該中間出力に対応した入力を二値入力化して扱うことにより、論理和ゲート回路にて簡単に置換できる。
【００３１】
特に後者の場合、第二種ユニットが、それら入力の少なくとも一つのものがアクティブのとき出力がアクティブとなるものとして構成されていれば（つまり、中間出力を二値として重みを付与せず、第一種ユニットとの結合組換えのみを行なう場合に相当）、該第二種ユニットは、論理和ゲート回路と機能的には全く同一であるから、具体的な置換処理を行なわず、そのままデジタル論理回路の論理和ゲート回路として流用できるので、一層設計が容易となる。このように、本願発明によると、パターン識別のための結合の最適化自体は、ニューラルネットワーク型のモデルを用いて効率的に行なうことができ、最後に論理ＩＣへの置換を行なうという、Ｑ−Ｍ（クワイン−マクラフスキ）法などの周知の論理最小化手法とは全く異なるアプローチにより、パターン識別装置の複雑な論理も非常に簡単かつ効率的に設計することができるようになる。
【発明を実施するための最良の形態】
【００３２】
以下、本発明の実施の形態を、図面を用いて説明する。
図１は、本発明のパターン教示システムの構成の一例を、等価回路的に描いたものである。対象となる被識別パターンは、画像パターンや音声パターンを例示できるが、特に限定されない。本実施形態では画像パターンの識別を例にとる。該パターン教示システム１は、階層型ニューラルネットワーク構造を有するものであり、大別して入力層３０、中間層４０及び出力層５０よりなる。
【００３３】
中間層４０は、複数の第一種ユニット１０を有する。これら第一種ユニット１０は、複数の信号が各々並列入力結合可能とされ、該信号の入力和に対する第一の閾値を有し、該入力和と第一の閾値との比較結果に基づいて自身の信号出力を変化させる。また、入力層３０は、中間層４０の前段に位置し、被識別パターンをなす複数の入力信号Ｉｉ（ｉ＝１，２,‥ｎ）を、中間層４０の最前段に位置する第一種ユニット１０の列（本実施形態では、第一種ユニット１０が一列のみなので、該列が必然的に中間層４０の最前段に位置するものとなる）に入力するパターン入力部１２を有する。
【００３４】
さらに、出力層５０は、複数の第二種ユニット１１を有する。これら第二種ユニット１１は、中間層４０の最終段に位置する第一種ユニット１０（本実施形態では、第一種ユニット１０が一列のみなので、該列が必然的に中間層４０の最終段側（兼最前段）に位置するものとなる）の出力を中間信号ｍｉ（ｉ＝１，２,‥ｘ）として、それぞれ該中間信号ｍｉが並列入力結合可能とされ、かつ、該中間信号ｍｉの入力和に対する、第一の閾値よりも低い第二の閾値を有する。そして、該入力和と第二の閾値との比較結果に基づいて出力信号を変化させる。
【００３５】
また、個々の第二種ユニット１１の出力は、フィードバック手段をなすフィードバック経路２９により、フィードバック信号ＦＢｉ（ｉ＝１，２,‥ｎ）として入力層に返されるようになっている。そして、被識別パターンをなす複数の入力信号Ｉｉとともに、これらのフィードバック信号ＦＢｉも、個別のパターン入力部１２を介して、中間層４０の最前段に位置する第一種ユニット１０の列に入力されるようになっている。そして、第一種ユニット１０の入力側に個別に設けられたパターン入力部１２内に、第一種ユニット１０の入力及び第二種ユニット１１の出力フィードバックを一定時間保持するタイマー１５が設けてある。本実施形態において、タイマー１５はＲＳラッチ回路で構成され、リセット信号Ｒｉの入力よりセット入力Ｉiが更新されるので、外部（入力側結合調整手段２３）からの該リセット信号Ｒｉの入力インターバルがタイマー保持時間を設定することとなる。
【００３６】
次に、パターン教示システム１は教示信号設定手段２４を有する。該教示信号設定手段２４は、上記複数の第二種ユニット１１の出力信号Ｏｉ（ｉ＝１，２,‥ｎ）の集合を出力パターンとして、該出力パターンを構成する出力信号に一義的に対応した教示信号Ｔｉ（ｉ＝１，２,‥ｎ）よりなる教示パターンを設定するものである。
【００３７】
また、パターン教示システム１は、出力側結合設定手段１４と、出力側結合調整手段２１とを有する。出力側結合設定手段１４は、複数の中間信号ｍｉを、複数の第二種ユニット１１に対し、任意の組合せにて入力結合設定するものである。また、出力側結合調整手段２１は、出力パターンをなす各出力信号Ｏｉと、対応する教示信号Ｔｉとの一致状態を照合し、その照合結果に基づいて、出力パターンと教示パターンとの一致状態（後述する「正解率」）が改善されるように、出力側結合設定手段１４に対し、各第二種ユニット１１に対する第一種ユニット１０の結合の組合せ変更を指令する制御部として機能する。
【００３８】
入力層３０には、２種以上の被識別パターンが順次繰り返して入力される。その入力信号Ｉｉに対する学習処理は、以下のようにして各被識別パターンの入力毎に反復して行なわれる。すなわち、ある被識別パターンが入力されると、出力側結合調整手段２１は、出力層５０をなす第二種ユニット１１の出力信号Ｏｉと教示信号Ｔｉとの一致状態が改善されるよう、第二種ユニット１１と中間信号ｍｉを出力する第一種ユニット１０との結合の組合せを変更する（つまり、結合を組替える）。このとき、前回の被識別パターンの入力に基づく個々の第二種ユニット１１の出力が、フィードバック信号ＦＢｉとして入力信号Ｉｉとともにタイマー１５により保持されて、第一種ユニット１０側に入力されることとなる。
【００３９】
具体的には、出力側結合調整手段２１は、第二種ユニット１１の出力信号Ｏｉが非アクティブであり、対応する教示信号Ｔｉがアクティブである場合、当該第二種ユニット１１に対し第一種ユニット１０との新規な結合を形成する。つまり、教示信号Ｔｉの内容からアクティブとなるべき出力信号Ｏｉが非アクティブとなっているということは、現在結合されている第一種ユニット１０からの中間出力ｍｉの中にアクティブとなっているものが全く含まれていないことを意味する。従って、別のアクティブとなっている第一種ユニット１０との結合を新たに形成することで、現在、非アクティブとなっている出力信号Ｏｉがアクティブとなる確率を上昇させることができる。以下、第一種ユニット１０及び第二種ユニット１１の出力がアクティブとなることを「発火する」ともいう。
【００４０】
なお、出力側結合調整手段２１は、第二種ユニット１１に対し第一種ユニット１０との新規な結合を形成するに際し、図１９に示すように、出力がアクティブとなっている既存の第一種ユニット１０がある場合は該既存の第一種ユニット１０との結合を形成すれば、その第二種ユニット１１を直ちに発火状態に移行させることができる。他方、出力がアクティブとなっている既存の第一種ユニット１０がない場合は、新たな第一種ユニット１０を作成して当該作成した第一種ユニット１０との結合を形成することができる。新しい第一種ユニット１０を追加使用する形で、その第一種ユニット１０との結合を作り、さらにその新しい第一種ユニット１０と入力信号Ｉｉ（ｉ＝１，２,‥ｎ）及びフィードバック信号ＦＢｉ（ｉ＝１，２,‥ｎ）とのアクティブなものと結合を作れば、結合先の第二種ユニット１１の発火確率を当然に高めることができる。なお、既存の第一種ユニット１０は学習初期では閾値が低く発火しやすくなっているため、新しい第一種ユニット１０が作られることは最低限に抑えられ、システムの肥大化が効果的に阻止される。また使用された第一種ユニット１０の数を監視することにより、教示パターンに対し第一種ユニット１０の数が不足した場合に対応が可能となる。
【００４１】
例えば、文字パターンの識別を例にとると、図２２（ａ）に示すように、互いに異なる文字のパターンを次々に入力し、各文字のパターンを分離識別するための学習処理を行なう。教示パターンは、被識別パターンに対する正しい認識結果を与えるべき標準のパターンであり、例えば文字パターンであれば、被識別パターンが「何の文字として認識されるべきか」を正しく示す標準文字パターンが教示パターンとして選ばれる。具体的には、図２２（ａ）及び（ｂ）に示すように、寸法や線の太さが違ったり、ぼやけていたり、さらには（ｃ）に示すように一部が欠けていたりするなど、同じ種別の文字パターンであっても、被識別パターンの画像情報は一定の範囲でばらつく。しかし、これらの被識別パターンみな同じ文字として識別される必要があるから、教示パターンは（ｄ）に示すような共通の標準文字パターンが使用される。換言すれば、同一文字を表すいろいろな被識別パターンを、同じ教示パターンを用いて学習させることで、被識別パターンに多少の状態の相違が生じていても、同じ文字パターンとして正しく識別することができるようになる。なお、図２２に示すように、特定の種別のパターンの識別精度を高めるには、該特定の種別のパターンを、異なる種別のパターンを挟みながら繰り返し与える形で学習反復することが効果的である。
【００４２】
入力層４０をなす第一種ユニット１０は、周知のニューロン型素子に近い複数入力／１出力型の素子として機能し、その入力和に対する出力閾値（第一の閾値）が比較的高い値に設定される。他方、出力層５０をなす第二種ユニット１１は、出力閾値（第二の閾値）が前記第一の閾値よりも低く設定され、具体的には、結合される複数の中間出力の論理和を演算して出力する機能を有する。本実施形態において、第一種ユニット１０及び第二種ユニット１１は、いずれもアクティブ出力と非アクティブ出力とのいずれかを二値出力するものであり、また、被識別パターンと教示パターンとは、アクティブ状態と非アクティブ状態とのいずれかに設定される二値信号の集合にて形成される。
【００４３】
例えば図２２に示すような複数の文字パターン（被識別パターン）を教示したい場合は、第一種ユニット１０への信号の入力パターン、ひいては第一種ユニット１０を経由した信号の伝播パターンは文字の種別（カテゴリ）によって変化する。第二種ユニット１１の出力は、そのいずれの種別（カテゴリ）の文字（被識別パターン）に由来した信号伝播パターンが到来しても、それぞれ違う文字として正しく識別された結果がその出力に反映される必要がある。ある第二種ユニット１１に結合している例えば２つの中間信号のうち第一のものが、文字「Ａ」のパターンが与えられているときにアクティブレベルとなり、第二のものが文字「Ｂ」のパターンが与えられているときにアクティブレベルになったとすると、「Ａ」「Ｂ」量文字を正しく分離識別できるためには、その第二種ユニット１１は、両結合のどちらがアクティブレベルになった場合も、出力がアクティブとなるように動作しなければならない。これが、第二種ユニット１１を、論理和演算機能を有するものとして構成する理由である。
【００４４】
本実施形態において、第二種ユニット１１に対する第一種ユニット１０の結合の組合せ変更（組替え）を行なうための、具体的な操作は以下の４種類である。
(1)特定の第一種ユニット１０と特定の第二種ユニット１１との間に新たな結合を形成する。
(2)特定の第一種ユニット１０と特定の第二種ユニット１１との間にすでに形成されている結合を解除する。
(3)特定の第一種ユニット１０を削除する。（すべての結合を解除し不使用とする）
(4)第一種ユニット１０を新たに作成する。（現在不使用のユニットに結合を作る）
【００４５】
先の被識別パターンに対する出力信号Ｏｉを、次の被識別パターンに対するフィードバック信号ＦＢｉとして、該被識別パターンの入力信号Ｉｉと並列かつ独立した一種の中間入力信号として与えることで、複数段のニューラルネットワークを用いることなく、多段の学習を時系列的に実現することができる。出力Ｏｉがフィードバックとして信号が伝播しユニットの状態が落ち着くまでの間は、各第二種ユニット１１の出力信号Ｏｉも刻々変化する。しかし、この過渡期間の出力信号Ｏｉをリアルタイムでフィードバックさせると、同じ被識別パターンの入力信号Ｉｉの入力期間中にフィードバックＦＢｉも変化することになり、出力信号Ｏｉの安定化に悪影響を及ぼす。そこで、１つの被識別パターンの入力信号Ｉｉを与える毎に、これに対応する学習結果としての出力信号Ｏｉが安定化するまでは、タイマー１５により前回の被識別パターンに対応した出力信号Ｏｉを保持するようにしているのである。従って、タイマー１５の出力信号Ｏｉ保持期間は、被識別パターンの入力更新インターバルに対応させて設定する。この場合、第二種ユニット１１の出力Ｏｉと教示信号Ｔｉとの比較シーケンスと、第一種ユニット１０の結合の組合せ変更（組替え）も上記に対応させる。また、被識別パターンの更新と連動したタイマーリセット信号Ｒｉにより、出力信号Ｏｉのタイマー保持内容も更新すればよい。
【００４６】
上記のように、入力和に対する閾値が異なる二種のユニット、つまり論理積型の第一種ユニット１０と、論理和型の第二種ユニット１１との結合に、その第二種ユニット１１の出力側からのフィードバックが加わることで、それら複数の二種のユニット１０，１１間には、フィードバック信号ＦＢの媒介により、図２５（ａ）、（ｂ）に示すような、一種のラッチ（フリップフロップ）ロジックが結合ネットワーク上に形成される。特に、多段学習に使用するような、相関の深い被識別パターンが順次入力される状況下では、次段の被識別パターン入力がなされた場合も、上記ラッチロジックに関与する出力に対しリセット的に作用する入力は比較的少なくなる。図２５では、後述するように学習効果があまり顕著でない場合に使用する否定入力ＩＢ（−）ないしＩＣ（−）が、リセット入力を形成しているが、こうしたケースは、順次入力される被識別パターン間の相関が比較的低い場合にしか生じない。
【００４７】
その結果、相関の深い被識別パターン同士については、それらの被識別パターン間で共通の、学習内容として正しい方向で関与するユニット間結合ＩＡについては、上記ラッチロジックの形成により、時系列的に順次入力される複数の被識別パターン間でいわばメモリ保持される形となる。その結果、（時系列的に）上流側の被識別パターンにかかる出力フィードバックが、上記メモリ保持効果により間接的に複数段先の被識別パターンへのフィードバックとしても作用でき、一種の飛び越し学習効果が生ずるので、多段学習の途中で正しい学習結果から乖離する不具合が原理的に生じにくくなる。
【００４８】
なお、図２５（ｂ）のように、多少遠い結合を作る２組のユニットペア１０，１１間でフィードバック信号ＦＢを持ち合う場合も多くなるが、このようなラッチロジックでは、フィードバック信号ＦＢの過渡現象により無安定バイブレータ的な発振を起す可能性もある。この場合、入力側のタイマー１５（図２）は、フィードバック信号ＦＢの安定保持にかかる時定数を拡張し、上記のような望まざる発振現象を防止する役割も果たす。
【００４９】
フィードバック信号ＦＢｉの導入により生ずる効果をまとめると、以下のようになる。図２６に示すように、ある被識別パターンまでの学習結果として、第二種ユニットＡ１＝Ｉ１・Ｉ２＋Ｉ３・Ｉ４となるような結合が作られていて、その第二種ユニットＡ１の出力をフィードバックＦＢとして、時系列的に次段となる被識別パターンの入力として使用し、その入力による学習結果として、該入力が関与する第二種ユニットＢ１につき、Ｂ１＝Ａ１・Ｉ５＋・・・・となるような教師信号が与えられたとする。すると、図からも明らかなように、Ｂ１＝Ｉ３・Ｉ４・Ａ１・Ｉ５＋・・・という結合が作られることになるが、Ｂ１から見て論理的に遠いＩ３・Ｉ４は、論理的に近いＡ１・Ｉ５に比較して教師信号に対する発火比率が低く、結果的に、Ｂ１＝Ａ１・Ｉ５＋・・・・が残ることになる。システムの高速化と軽量化のためには、学習のたびに作られるユニットおよび結合を最小限にすることが必要であるが、上記のように、時系列入力のフィードバックＦＢを取る場合も、後段の学習出力から見て論理的に遠い結合を学習により排除することができ、また上記Ｉ５のような一段以上飛び越した入力も考慮できることがわかる。
【００５０】
以下、さらに本実施形態について説明する。図１の出力側結合調整手段２１は、第二種ユニット１１の出力信号Ｏｉと教示信号Ｔｉとの一致状態が予め定められたレベルに到達したとき、具体的には、反復学習したときの出力信号Ｏｉと教示信号Ｔｉとの一致確率（本実施形態では、「正解率」と称する）が一定以上に高くなったとき、個々の出力信号Ｏｉと教示信号Ｔｉとの一致状態が最適化されたと判断し、第一種ユニット１０と第二種ユニット１１との間に、出力側結合設定手段１４において仮に未結合の組合せが残っていても、新たな組合せの結合を作ることなく学習処理の反復を打ち切る。なお、本実施形態において出力側結合調整手段２１は、複数の中間信号ｍｉに重み付与することなく、中間信号ｍｉと各第一種ユニット１１との結合の組合せのみを変更するものとして構成されている。
【００５１】
次に、パターン教示システム１には学習判定情報作成手段２２が設けられている。学習判定情報作成手段２２は、第一種ユニット１０の出力状態、つまり中間信号ｍｉの内容と、該第一種ユニット１０の結合先となる第二種ユニット１１への教示信号Ｔｉの内容とに基づいて、第二種ユニット１１の出力信号Ｏｉと、これに対応する教示信号Ｔｉとの一致状態を反映した学習判定情報を、複数の第一種ユニット１０毎に作成するものである。出力側結合調整手段２１は、該学習判定情報の内容に基づいて、対応する第二種ユニット１１の出力信号Ｏｉと教示信号Ｔｉとの、反復学習時の正解率（一致状態）が改善されるように、第二種ユニット１１と第一種ユニット１０との結合の組合せ設定を調整する。
【００５２】
本実施形態では、第二種ユニット１１が論理和演算型のものであるから、第一種ユニット１０からの二値の中間出力ｍｉが、そのまま第二種ユニット１１の出力にも反映される。学習判定情報作成手段２２は、第一種ユニット１０の中間出力ｍｉと教示信号Ｔｉとのアクティブ／非アクティブの組合せに基づく２ビットの枠内にて、学習判定情報を作成する。
【００５３】
具体的には、学習判定情報作成手段２２は学習判定情報を、次の３状態が識別可能なものとして作成する。
・判定一致状態：第一種ユニット１０の出力がアクティブであり、かつ、該第一種ユニット１０が結合する第二種ユニット１１の少なくとも１つのものの出力に対応する教示信号Ｔｉがアクティブとなっている状態（本明細書では「１」を対応させる）。第一種ユニット１０が発火していていれば、これにつながる第二種ユニット１１は（論理和演算型なので）必ず発火する。従って、そのつながっているいずれかの発火した第二種ユニット１１に対し、教示信号Ｔｉがアクティブの形で与えられていれば（以下、このような状態を「出力／教示アクティブ一致状態」といい、該状態にある第二種ユニット１１を「正解ユニット」という）、つまるところ、該正解ユニットにつながる第一種ユニット１０は、発火している状態が、正しい識別状態を反映した結合設定状態であるといえる。他方、教示信号Ｔｉが非アクティブの形で与えられている第二種ユニット１１（以下、このような状態を「出力／教示アクティブ不一致状態」といい、該状態にある第二種ユニット１１を「不正解ユニット」という）は、発火して判定一致状態の第一種ユニット１０がこれに結合している場合、正しい識別状態を反映した結合設定状態であるといえないので、後述のように、その第一種ユニット１０と第二種ユニット１１との結合を切断する等の処置が必要となる。
【００５４】
判定不一致状態：第一種ユニット１０の出力がアクティブであり、かつ、該第一種ユニット１０に結合する第二種ユニット１１のすべてのものの出力に対応する教示信号Ｔｉが非アクティブとなっている状態（本明細書では「−１」を対応させる）。判定一致状態の逆であり、結合する第二種ユニット１１の全てについて、教示信号Ｔｉが非アクティブの形で与えられていると、その第一種ユニット１０の発火状態は、誤った識別状態を反映した状態であるといえる。
中立状態：第一種ユニット１０の出力が非アクティブであることを示す（本明細書では「０」を対応させる）。第二種ユニット１１が論理和型なので、非アクティブの第一種ユニット１０は、第二種ユニット１１に結合されていてもいなくても、その出力には何ら影響を及ぼさない。
【００５５】
本実施形態では、上記のような学習判定情報の内容を参照して、出力側結合調整手段２１は、次のような具体的な結合処理を行なう。すなわち、図１８に示すように、第二種ユニット１１の出力がアクティブであり、対応する教示信号Ｔｉが非アクティブであり、かつ、学習判定情報が判定一致状態（Ｆ＝１）を示す第一種ユニット１０が第二種ユニット１１に接続されている場合は、それら第一種ユニット１０と第二種ユニット１１との結合を解除（カット）する。他方、図１９に示すように、第二種ユニット１１の出力が非アクティブであり、対応する教示信号Ｔｉがアクティブとなっている状態では、その第二種ユニット１１に結合する第一種ユニット１０にはアクティブなものが存在しない状態なので、該第二種ユニット１１と現在結合を有さない、学習判定情報が判定一致状態（Ｆ＝１）を示す第一種ユニット１０があれば該第二種ユニット１１との結合を新規に作る。さらに上記第一種ユニット１０が存在しない場合は、入力信号Ｉｉ及びフィードバック信号ＦＢiに正しく反応する第一種ユニット１０が不足している状態なので、現在全く結合を有さない新たな第一種ユニット１０との結合を作り、後述のようにさらにその第一種ユニット１０とパターン入力部１２の入力信号Ｉｉ及びフィードバック信号ＦＢiの現在アクティブなものとの結合を作る。（すなわち第一種ユニット１０を新たに作成する）
【００５６】
図１に戻り、パターン教示システム１には、パターン入力部１２からの複数の入力信号Ｉｉ及びフィードバック信号ＦＢｉを、中間層４０の最前段側に位置する複数の第一種ユニット１０（前述の通り、本実施形態では、第一種ユニット１０が一列のみなので、該列が必然的に中間層４０の最前段側に位置するものとなる）に任意の組合せにて分配結合設定する入力側結合設定手段１３と、出力パターンと教示パターンとの一致状態が改善されるように、各第一種ユニット１０に対する入力信号Ｉｉ及びフィードバック信号ＦＢｉの結合の組合せを変更する入力側結合調整手段２３とが設けられている。本実施形態においては、入力側結合調整手段２３も、第二種ユニット１１の出力信号Ｏｉと教示信号Ｔｉとの正解率（一致状態）が予め定められたレベルに到達すれば、複数の入力信号Ｉｉ及びフィードバック信号ＦＢｉと複数の第一種ユニット１０との間に未結合の組合せが残されていても、これを残す形で（入力側結合設定に係る）学習処理の反復を打ち切る。
【００５７】
また、入力側結合調整手段２３は、初期状態の第一種ユニット作成時（つまり、その第一種ユニットの学習処理の開始時）にて、被識別パターンの入力信号Ｉｉ及びフィードバック信号ＦＢｉのうちアクティブ状態となっているもの（つまり、肯定入力）のみを選択する形で各第一種ユニット１０に分配入力する。本発明者の見出した経験側によると、学習処理の反復過程において、被識別パターンを入力したときに得られる出力パターンを教示パターンと一致状態に導く上で主に寄与するのは、被識別パターンの入力信号Ｉｉ及びフィードバック信号ＦＢｉの必ずしも全てではなく、肯定入力となっているものの寄与が極めて大きいことが判明している。図１６に示すように、入力信号Ｉｉ及びフィードバック信号ＦＢｉの肯定と否定（（図面では、上線のバーを付与して否定を表しているが、明細書ではＩｉ（−）と表す）の全てについて第一種ユニット１０との結合を設定して学習処理を行なうことも可能であるが、図１７に示すように、学習処理の開始時に、その（アクティブとなっている）肯定入力のみを選び出して第一種ユニット１０との間に結合形成することにより、非アクティブ状態（否定入力）となっているものが除外される分だけ結合数が減じられ、学習処理に必要な演算を大幅に簡略化することができる。
【００５８】
この場合、否定入力を以下のように活用すれば、入力信号Ｉｉ及びフィードバック信号ＦＢｉと第一種ユニット１０との結合設定数を過度に増大させることなく、出力パターンと教示パターンとの一致度（正解率）をさらに向上させることができる。すなわち、出力側結合調整手段２１により第二種ユニット１１と第一種ユニット１０との結合の組合せ設定を調整する処理を主学習処理としたとき、該主学習処理を単に反復して行なうことにより、第二種ユニット１１の出力信号Ｏｉと教示信号Ｔｉとの一致状態が、予め定められた条件を充足するように改善された場合は、否定入力との結合導入は行なわず、肯定入力との結合の範囲内だけで、学習処理が十分なされたと判断し、処理を打ち切る。
【００５９】
しかし、主学習処理の反復の後、出力信号Ｏｉと教示信号Ｔｉとの一致状態が、上記条件を充足する程度には改善されなかった場合には、図１６に示すように、第一種ユニット作成時の入力信号Ｉｉ及びフィードバック信号ＦＢｉのうち、既に終了している学習処理により肯定結合となっている入力を肯定アクティブ入力として、該肯定アクティブ入力に、結合が比較的低い状態となっている入力信号Ｉｉ又はフィードバック信号ＦＢｉを否定反転してアクティブとした否定アクティブ入力を加えた形にて各第一種ユニット１０に分配入力する。出力側結合調整手段２１は、上記否定アクティブ入力（との結合）が加わった後、さらに、第二種ユニット１１と第一種ユニット１０との結合の組合せ設定を調整する補助学習処理を行なう。すなわち、出力信号Ｏｉと教示信号Ｔｉとの一致状態に応じて、否定アクティブ入力と第一種ユニット１０との結合を行なうかどうかを決定するので、不必要な否定アクティブ入力の結合形成が回避され、学習処理の簡略化を図ることができる。
【００６０】
なお、否定アクティブ入力との結合を導入する際には、全ての第一種ユニット１０に対し一度に設定するようにしてもよいが、教示信号Ｔｉに対し出力信号Ｏｉが不一致（あるいは正解率が所定値以下となっているもの）となっている第二種ユニット１１を探し出し、その第二種ユニット１１に結合されている第一種ユニット１０にのみ否定アクティブ入力を結合するようにしてもよい。後者の場合、否定アクティブ入力との結合数が一挙に増えることによる学習処理演算の過度の増大を回避することができる。
【００６１】
否定アクティブ入力を設定するためには、次のようにする。すなわち、図２において、入力側のタイマー（Ｒｓフリップフロップ）の否定出力（Ｑ（−））を使用し、入力側結合調整手段２３からの指令により要求される否定出力Ｑ（−）を、入力側結合設定手段１３にて選択する形で、所期の第一種ユニット１０との結合を設定するようにする。
【００６２】
図１に戻り、第一種ユニット１０は、入力信号Ｉｉ及びフィードバック信号ＦＢｉが重み付与された形で並列入力結合可能とされたものである。該第一種ユニット１０の出力閾値である第一の閾値は、該入力信号Ｉｉ及びフィードバック信号ＦＢｉの重み入力和に対して設定される。また、各第一種ユニット１０に結合される入力信号Ｉｉ及びフィードバック信号ＦＢｉの重み値を設定する重み設定手段（入力側結合設定手段１３内に組み込まれている）と、前記した（第一種ユニット１０毎の）学習判定情報の内容に基づいて、対応する第二種ユニット１１の出力信号Ｏｉと教示信号Ｔｉとの一致状態が改善されるように、該第二種ユニット１１に結合されている第一種ユニット１０への入力信号Ｉｉ及びフィードバック信号ＦＢｉの重み値を調整する重み調整手段２６（入力側結合調整手段２３内に組み込まれている）とが設けられている。
【００６３】
本実施形態のパターン教示システム１においては、出力パターンと教示パターンとの一致度を高める具体的手法として、中間層をなす第一種ユニットと、出力層の第二種ユニットとの結合の組合せを最適化する手法を用いる。この結合最適化の過程で、必要のない第一種ユニット１０と第二種ユニット１１との結合は順次消滅・淘汰されてゆく。また、各第一種ユニット１０に対する学習判定情報を参照すれば、出力信号Ｏｉと教示信号Ｔｉとの一致に対し肯定的に寄与している第一種ユニット１０を見出すことができる。重み調整手段２６は、見出された該第一種ユニット１０への入力信号Ｉｉ及びフィードバック信号ＦＢｉの重みのみを増減させるように調整を行なう（この場合、重みの値がゼロ又はこれに近い値に設定される入力信号Ｉｉ及びフィードバック信号ＦＢｉは、結合が形成されていないことと実質的に同じである）。本実施形態では、被識別パターンをなす複数の入力信号Ｉｉ及びフィードバック信号ＦＢｉのうち、各第一種ユニット１０にユニット作成時最初に結合するものの重み値を同一の初期値に設定する。
【００６４】
重み調整手段２６は、学習判定情報が前述の判定一致状態となっている第一種ユニット１０に対しては入力信号Ｉｉ及びフィードバック信号ＦＢｉのうち、現在アクティブなものとの重みを増加させ、判定不一致状態となっている第一種ユニット１０に対しては入力信号Ｉｉのうち、現在アクティブなものとの重みを減少させる処理を行なう。つまり、図１８に示すように、判定一致状態となっている第一種ユニット１０は、教示信号Ｔｉがアクティブの形で与えられている第二種ユニット１１に発火状態にて結合することが正しい設定状態であるから、結合設定されている入力信号Ｉｉ及びフィードバック信号ＦＢｉのうち現在アクティブなものとの重みを増加させることにより、該第一種ユニット１０の発火状態が支援され、出力パターンと教示パターンとの一致度を高めることができる。
【００６５】
他方、重み調整手段２６は、学習判定情報が中立状態となっている第一種ユニット１０に対しては入力信号Ｉｉ及びフィードバック信号ＦＢｉの重み増減処理を行なわないものとして構成できる。学習判定情報が中立状態となっている第一種ユニット１０は非発火であるから、いかなる第二種ユニット１１に対しても、結合形成を行なう／行なわないにかかわらず、該第二種ユニット１１の出力状態には影響を及ぼさない。このような中立状態の第一種ユニット１０は、以降の学習処理の繰り返しにおいて、当該第一種ユニット１０に対する学習判定情報が判定一致状態又は判定不一致状態のいずれに移行するかが予測できない限り、入力信号Ｉｉ及びフィードバック信号ＦＢｉの重み増減処理を無理に行なうと、出力パターンと教示パターンとの一致度向上に返って悪影響を及ぼす可能性がある。従って、中立状態の第一種ユニット１０に対する入力信号Ｉｉ及びフィードバック信号ＦＢｉとの結合状態、すなわち重みの値は、特に変更せず保留することが望ましいといえる。
【００６６】
例えば、カテゴリの異なる２つのパターン（図では「Ａ」と「Ｂ」の２つの文字パターンの場合を例にとっている）を識別しようとした場合、図２３に示すように、各第一種ユニット１０への入力の重みは、第一のパターン（例えば「Ａ」）を識別するのにアクティブとならなければならない入力の組（（ａ）：入力１，４，７の重みＷ１，Ｗ４，Ｗ７が大きくなっている）と、第二のパターン（例えば「Ａ」）を識別するのにアクティブとならなければならない入力の組（（ｂ）：入力２，５の重みＷ２，Ｗ５が大きくなっている）とが互いに相違するものとなる。学習処理を繰り返すと（例えば図２２（ｂ））、カテゴリ毎に相違する固有の入力の組が独立して重み加算され、両パターンが識別可能となるような入力の重み設定状態が自然に形成される。２つのパターンの類似度が小さければ、重みが一定以上に大きくなる入力のうち、パターン間で互いに共通するものの数が減り、パターンの識別精度は必然的高くなる。他方、類似度が極めて大きい場合は、重みの大きくなる共通入力の数が増大し、パターンの識別精度は低くなる。
【００６７】
また、図２１に示すように、同じカテゴリのパターンであっても、被識別パターンの内容に一定の幅をもたせた曖昧な識別を可能としたい場合は、同一カテゴリなら必ずアクティブとなる入力と、被識別パターンの内容によってアクティブになったりならなかったりする入力とが統計的に分布した形で生ずる。これらの入力の荷重和に対する第一種ユニット１０の出力の閾値（第一の閾値）の調整により、曖昧な識別の許容範囲を規定することができる。
【００６８】
以上、図１の等価回路によるパターン教示システム１の構成と動作の概要とを説明したが、該等価回路と同じ機能を持ったパターン教示システム１は、図３に示すように、コンピュータでのエミュレーションによって実現することもできる。このコンピュータは、ＣＰＵ２とそのワークエリアとなるＲＡＭ３（ＣＰＵ２の動作システム等を格納したＲＯＭ４を設けてもよい）、エミュレーションプログラムを格納した記憶装置５、及び入出力インターフェース６をバス７により結合したもので、被処理パターンを構成する入力信号Ｉｉ及び教示パターンをなす教示信号Ｔｉが入出力インターフェース６より入力され、図１の等価回路に従う上記パターン教示システム１の学習処理がエミュレーションプログラムの実行によりＣＰＵ２上にて行なわれ、パターン識別結果である出力パターンの出力信号Ｏｉが入出力インターフェース６より出力される。なお、該エミュレーション処理は、図４に示すように、ネットワーク接続された複数台のコンピュータ群１０１，１０２によって協働的に行なってもよい。図４のシステムでは、中間層４０をなす複数の第一種ユニット（入力層３０を含む）を分担して機能実現する、相互に通信可能な入力層／中間層用コンピュータ群１０１と、出力層５０をなす複数の第二種ユニットを分担して機能実現する、出力層用コンピュータ群１０２とがネットワークＮＷにより互いに接続され、全体として１個のパターン教示システム１を実現するためのコンピュータネットワークシステムが構築されている。
【００６９】
図１２は入力設定メモリの内容を示すものである。入力信号値Ｉｉは総数ｎが固定とされた一次元変数であり、結合設定フラグ信号値Ｃｉｊにより採用する論理と対応付けられた形で入力設定メモリに記憶される。また、入力信号Ｉｉとは別に、出力信号Ｏｉのフィードバック信号ＦＢｉも記憶されている。入力信号値ＦＢｉも総数ｎ’が固定とされた一次元変数であり、結合設定フラグ信号値Ｃｉｊにより採用する論理と対応付けられた形で入力設定メモリに記憶される。入力信号値ＦＢｉは、１回前の入力信号Ｉｉに対応する出力信号Ｏｉの内容と等価である。本明細書において、入力信号値Ｉｉ及びフィードバック信号値ＦＢｉは、肯定論理においてアクティブを「１」、非アクティブを「０」にて表す。
【００７０】
結合設定フラグＣｉｊは「１」ならば肯定結合入力（図２のＱ）が採用され、入力信号値Ｉｉ又はフィードバック信号値ＦＢｉが「１」となっているものが、そのまま結合信号値σｉの値として設定される。他方、結合設定フラグＣｉｊが「−１」ならば否定結合入力（図２のＱ（−））が採用され、入力信号値Ｉｉ又はフィードバック信号値ＦＢｉが「０」となっているものの否定反転（つまり「１」）が結合信号値σｉ（−）の値として設定される。
【００７１】
結合信号値が「１」となる入力信号値Ｉｉ又はフィードバック信号値ＦＢｉは、それぞれ、図１において、全ての第一種ユニット１０（ＭＵ１〜ＭＵｘ：ただし、後述の結合可能テーブル（図１１）に登録されていないものを除く）に分配結合される。そして、第一種ユニット作成時において入力信号値Ｉｉ又はフィードバック信号値ＦＢｉは、信号値Ｉｉが「１」となっていれば結合設定フラグＣｉｊが「１」に設定されて第一種ユニット１０に結合が形成され、信号値Ｉｉが「０」となっていれば結合設定フラグＣｉｊが「０」に設定されて第一種ユニット１０と結合が形成されない。しかし、上記のように否定結合入力（図２のＱ（−））が採用されると、結合設定フラグＣｉｊが「０」となっている結合においても、結合設定フラグＣｉｊが順次「−１」に設定されることで、否定反転（つまり、σｉ（−））された形で第一種ユニット１０との結合が形成されるようになる。
【００７２】
以下、ＲＡＭ３（図３）内に形成される、各種テーブル及びメモリの内容について説明する。出力パターンをなす第二種ユニット１１の出力信号Ｏｉは、総数ｎが固定であり、図１０に示すように、与えられる教示パターンをなす教示信号Ｔｉと対応付けられた形でメモリ５１に記憶される。
【００７３】
図１において、第一種ユニット１０は、前述の通り、学習処理中の要請に応じて随時増設ないし不使用とされるので、その総数ｘ（＝中間信号ｍｉの総数でもある）は変動する。図１１に示すように、学習処理の途上で、第一種ユニット１０／第二種ユニット１１間にて結合形成が不適切と判断された結合を登録削除したり、第一種ユニット１０の増設により、新たに結合設定可能となった組合せを新規登録したりすることができるように、第一種ユニット１０の列（ＭＵｊ）と第二種ユニット１１の列（ＯＵｉ）との全ての組合せについて、結合可能フラグＢｉｊ（Ｂｉｊ＝１なら結合可能、Ｂｉｊ＝０なら結合不能）が、第一種ユニット結合可能テーブル５２の形で設定される。第一種ユニット１０の番号ＭＵｊはデフォルト設定値ＭＵＤを有し、第二種ユニット１１毎に、対応する結合可能フラグＢｉｘの列は全て初期値が「１」（すなわち、結合可能）に設定される。また、新しい第一種ユニット１０’ＭＵｘ）が増える毎に１づつ増加設定され、これに対応して各第二種ユニット１１の列ＯＵｉに対応した結合可能フラグＢｉｘの列が、初期値「１」を有した形で追加登録される。なお、複数の入力パターンよりなる教示パターンセットの学習を終えたネットワークに対し、新たな教示パターンセットを追加学習させるときも、全て初期値を「１」にリセットする。
【００７４】
さらに、図１１の第一種ユニット出力メモリ５３には、各第一種ユニット１０（ＭＵ１，‥，ＭＵｘ）が出力する中間出力ｍｉの値と、各第一種ユニット１０の出力に対する正解率（該第一種ユニット１０が結合される第二種ユニット１１の出力信号Ｏｉと教示信号Ｔｉとの一致度を示す確率的変数である）Ｒｉと、第一種ユニット１０の発火計算における閾値Ｈｉと、学習収束済を示すフラグＧｉが、第一種ユニット１０の番号と対応付けた形で記憶される。
【００７５】
他方、結合設定の登録削除は、第一種ユニット１０（ＭＵｊ）と第二種ユニット１１（ＯＵｉ）の組合せ毎に、Ｂｉｊの値を「０」に設定することで、個別に行なうことができる。また、第一種ユニット１０（ＭＵｊ）が削除されると、その第一種ユニット１０（ＭＵｊ）と全ての第二種ユニット１１との結合が一括して削除される（すなわち、フラグＢ１ｊ，Ｂ２ｊ，‥，Ｂｎｊが一括して「０」に設定される）。第一種ユニット結合可能テーブル５２を参照することで、これに登録されていない結合（つまり、Ｂｉｊが「０」になっている結合）は、学習判定情報の作成など、該結合に関与する学習処理のステップをスキップすることができ、学習処理全体の効率化を図ることができる。
【００７６】
図１２に示すように、入力側結合設定入力信号Ｉｉ及び後述の出力信号Ｏｉに基づくフィードバック信号ＦＢｉと、第一種ユニット１０（ＭＵｊ）との実際の結合設定状態は、すべての入力信号Ｉｉと第一種ユニット１０（ＭＵｊ）との組合せ毎に、結合設定フラグＣｉｊとして、第一種ユニット入力側結合設定テーブル５３の形で設定記憶される。Ｃｉｊ＝「１」は結合が設定されていることを、Ｃｉｊ＝「−１」は否定結合が設定されていることを、Ｃｉｊ＝「０」は結合が設定されていないことをそれぞれ示す。また、図１３に示すように、入力信号Ｉｉ及びフィードバック信号ＦＢｉと第一種ユニット１０（ＭＵｊ）との個々の結合毎に設定される重み値Ｗｉｊは、重み設定メモリ５４に記憶される。さらに、図１の第一種ユニット１０（ＭＵｊ）と、第二種ユニット１１（出力信号（Ｏｉ））との結合設定状態は、すべての第一種ユニット１０（ＭＵｊ）と第二種ユニット１１（出力信号Ｏｉ）との組合せ毎に、結合設定フラグＫｉｊとして、第一種ユニット出力側結合設定テーブル５５の形で設定記憶される。Ｋｉｊ＝「１」は結合が設定されていることを、Ｋｉｊ＝「０」は結合が設定されていないことをそれぞれ示す。
【００７７】
また、図１５の学習判定メモリ５６には学習判定情報の内容が記憶される。学習判定情報は、前述の通り、個々の第一種ユニット１０の中間信号ｍｉの内容と、該第一種ユニット１０の結合される第二種ユニット１１（の出力信号Ｏｉ）に対応する各教示信号Ｔｉの内容とに基づいて、第一種ユニット１０毎に作成・記憶される。この場合、１つの第一種ユニット１０が複数の第二種ユニット１１に結合されることもありえるので、学習判定情報は、中間信号ｍｉ（第一種ユニット１０）毎に、結合されている全ての第二種ユニット１１への教示信号Ｔｉについて、要素判定情報ｆｉｊとして作成される。その内容は、前述の通り、判定一致状態に対応する「１」、判定不一致状態に対応する「−１」、中立状態に対応する「０」である。結合形成の有無は、第一種ユニット出力側結合設定テーブル５５の内容を参照すれば直ちに把握でき、結合設定されていない組合せについては、要素判定情報ｆｉｊの作成をスキップする。そして、中間信号ｍｉ（第一種ユニット１０）毎に、要素判定情報ｆｉ１，ｆｉ１，‥，ｆｉｎ（結合設定されていない組合せを除く）を用いて、該中間信号ｍｉすなわち第一種ユニット１０を代表した学習判定情報Ｆｉを作成する。本実施形態では、中間信号ｍｉ（第一種ユニット１０）毎の要素判定情報ｆｉ１，ｆｉ１，‥，ｆｉｎの少なくとも一つが「１」（判定一致状態）になっていれば、学習判定情報Ｆｉを「１」（判定一致状態）とし、ｆｉ１，ｆｉ１，‥，ｆｉｎが「１」を含まず、かつ少なくとも一つが「−１」（判定不一致状態）になっていれば、学習判定情報Ｆｉを「−１」（判定不一致状態）とする。また、要素判定情報ｆｉ１，ｆｉ１，‥，ｆｉｎの全てが「０」（中立状態）になっていれば、学習判定情報Ｆｉを「０」（中立状態）とする。
【００７８】
以下、パターン教示システム１の学習処理の更なる詳細を、図４〜図８のフローチャートにより、エミュレーションプログラムの処理の流れに沿って説明する（図１の等価回路に対する補足説明も含むので、符号は該図１のものを援用する）。図４は、主プログラムの流れを示すものである。まず、Ｓ１においては、種々のパラメータの初期化処理を行なう。具体的には、第一種ユニット１０の個々の閾値Ｈを初期化（本実施形態では０．５）、正解率Ｒｉ（初期値：全て０）、被処理パターンをなす入力信号Ｉｉ及びフィードバック信号値ＦＢｉの各第一種ユニット１０との結合の重みＷｉｊ（初期値：すべて０）などが初期化される。初期状態では、全ての結合が非設定の状態とされ、第一種ユニット作成時において入力信号Ｉｉ及びフィードバック信号値ＦＢｉはアクティブとなっているもののみ結合可能とされる。
【００７９】
第一種ユニット１０の個々の閾値Ｈの初期値を０．５前後とする理由は、以下の通りである。説明をわかりやすくするために、１つの教示パターンを与え、その時の肯定入力のアクティブな入力信号Ｉｉ及びフィードバック信号値ＦＢｉのみと結合を作る第一種ユニット１０を作成し、かつ、一つの第二種ユニット１１と結合を作った状態とし、この第一種ユニット１０の結合について考える（他には、第一種ユニット１０が作成されていないものと仮定する）。この時点での結合には、真に必要な入力と余分な入力とが混在している。この第一種ユニット１０の結合の最適化のみであれば、第二種ユニット１１に入力する第一種ユニット１０が一つであるから、単に複数の教示パターンを与え教師信号と入力信号Ｉｉの相関を取れば真に必要な入力のみが分離できることになる。ここで第一種ユニット１０の発火を考慮すると、入力がアクティブとなる数の割合は５０％であるから、閾値を0.5とすることにより、初期では第一種ユニット１０が常時発火となる可能性が高くなる。学習が進むと、真に必要な入力のみでしか発火しなくなり、発火は減少する。
【００８０】
順次教示パターンを与え、一つの第二種ユニット１１に結合された既存の第一種ユニット１０が発火し、教師信号がアクティブな場合は、それら第一種ユニット１０に結合する入力信号Ｉｉ又はフィードバック信号値ＦＢｉの中に真に必要な入力が含まれていて、かつ発火した可能性が高いので、入力信号Ｉｉ又はフィードバック信号値ＦＢｉがアクティブであった結合の重さを増やす処理を行なう。他方、第一種ユニット１０が発火し、教師信号がアクティブでない場合は、必要でない入力信号Ｉｉ又はフィードバック信号値ＦＢｉにより発火した可能性が高いので入力信号Ｉｉ又はフィードバック信号値ＦＢｉがアクティブであった結合の重さを減らす処理を行なう。
【００８１】
次に、第一種ユニット１０の追加作成を考える。順次教示パターンを与え、既存の第一種ユニット１０が発火せず教師信号がアクティブな場合は、その第一種ユニット１０がある程度学習が進んで閾値が高くなっており、入力信号Ｉｉ又はびフィードバック信号値ＦＢｉとの結合の中に教師信号が欲する真に必要な入力信号Ｉｉ又はフィードバック信号値ＦＢｉがほとんど含まれていない場合が想定される。従って、新しく第一種ユニット１０を作成し、真に必要な入力が含まれているアクティブな入力信号Ｉｉ又はフィードバック信号値ＦＢｉとの結合を作る。
【００８２】
第一種ユニット１０が一つの場合は教師信号を補正係数として使用すれば十分であるが、複数の場合は、教師信号が欲する真に必要な入力が含まれていない第一種ユニット１０にも正の学習判定信号が返るのは学習の妨げとなる。そこで閾値を徐々に上昇させ、発火した第一種ユニット１０のみが学習されるようにし、真に必要な入力信号Ｉｉとの結合が含まれている第一種ユニット１０にだけ、正の学習判定信号が返るようにすることができる。なお、一つの第一種ユニット１０の発火により正の学習判定信号が返り、他の間違って発火した第一種ユニット１０にも正の学習判定信号が返ることは、直ちには排除できないが、発火して教師信号が１であった第二種ユニット１１に結合する第一種ユニット１０の発火したもののうち、加重和Ｙの最大のもののみに正の学習判定信号を返すことにより効果的に防止できる。
【００８３】
初期の閾値を0.5としておけば、初期の結合により余分な入力信号が含まれていても、第一種ユニット１０が発火しやすくなり、学習が進んで必要な入力信号との結合が高くなるに従い、正の学習判定信号が返る率が上がる。また、それに伴い閾値を上昇させればさらに正解率も上がり必要な入力との結合数が増加する。これにより学習の進んだ段階では、第一種ユニット１０の反応は必要な入力信号のあったときのみに固定され、他のパターンの影響を受けなくできる。また、かなり近い入力信号パターンが与えられた場合も発火しなくなるので、別の第一種ユニット１０の作成を促進できる（つまり、類似のパターンの識別能力が、別ユニット作成により高められるのである）。なお、閾値の上限値は１であり、このとき第一種ユニット１０は論理積ゲートの動作に近いものとなる。
【００８４】
なお、既存第一種ユニット１０が発火せず、教師信号Ｔｉがアクティブな場合でも、既存の第一種ユニット１０に真に必要な入力信号Ｉｉ又はフィードバック信号値ＦＢｉとの結合が含まれている場合を排除できない可能性がある。この場合、同じ第一種ユニット１０が複数作られてしまうことになる。この不具合を解消するには、第一種ユニット１０の初期閾値を0.5より少し低く設定し（例えば０．４０〜０．４９程度）、第一種ユニット１０の発火を促進することが有効である。
【００８５】
図４に戻り、Ｓ２では、複数の第一種ユニット１０の最初のものを選択し（第一種ユニット番号ＮＰｍａｘ＝１）、Ｓ３では、教示反復カウンタＣＴを初期化する（ＣＴ＝１）。Ｓ４では、学習処理に使用する被識別パターンと教示パターンの番号ＮＴを初期化する（ＮＴ＝１）。
【００８６】
次に、Ｓ５において番号ＮＴの被識別パターン（入力信号Ｉｉ）と教示パターン（教示信号Ｔｉ）とをリードし、Ｓ６に進んで発火処理に移る。図６、図７Ａ、図７Ｂにその詳細を示す。図６は発火処理の全体の流れを示すもので、第二種ユニット１１の出力Ｏ１〜Ｏｎの、第一種ユニット１０の入力側へのフィードバックを考慮した流れとなっている。まず、Ｓ１０１では図２のタイマーをリセットし、Ｓ１０２で第一種ユニット１０の発火計算を行い、Ｓ１０２で第二種ユニット１１の発火計算を行なう。Ｓ１０４では、第二種ユニット１１の前回の発火計算値と今回の発火計算値との比較を行って、定められた以上の変化があればＳ１０５に進み、各第二種ユニット１１の出力を、フィードバック入力ＦＢ１〜ＦＢｎにセットする。この処理を、Ｓ１０４での第二種ユニット１１の発火計算値の変化が一定未満になるまで繰り返す。
【００８７】
図７Ａは第一種ユニットの発火計算処理の詳細を示す。まず、Ｓ２０１では、第一種ユニット１０の番号ＮＰ’を１に設定する。Ｓ２０２では、番号ＮＰ’の第一種ユニット１０に結合しているアクティブとなっている結合入力値σｉ（否定入力を採用していない場合はＩｉの値と一致し、採用している場合はＩｉ（−）と一致する）を全て集める。
【００８８】
Ｓ２０４以下は、結合入力値σｉの荷重和算出処理となる。まず、Ｓ２０４で、結合入力値σｉの番号ｉを１とし、荷重和Σ１と、荷重合計値Σ２をゼロとする初期化を行なう。Ｓ２０６では、Ｗｉ，ＮＰ’を用いて荷重和加算値Ｗｉ，ＮＰ’・σｉを計算して荷重和Σ１に加算する処理を行ない、また、Ｓ２０７では荷重値Ｗｉ，ＮＰ’を荷重合計値Σ２に加算する処理を行なう。この処理を全てのｉ（＝１，２，‥，ｎ（入力信号＋フィードバック信号で連番化したもの））について繰り返し、得られた最終的な荷重和Σ１を、荷重合計値Σ２で除することにより、正規化された荷重和Ｙを求める。このとき荷重値Ｗｉ，ＮＰ’はプラスのものだけを採用し、マイナスのものはゼロとして計算することが望ましい。また結合設定フラグＣｉｊ＝「１」のものだけについて荷重和加算値を加算することにより学習を安定させることもできる。
【００８９】
そして、Ｓ２１２では、正規化された荷重和Ｙを第一の閾値ＨＮＰ’と比較し、Ｙ≧ＨであればＳ２１３に進んで、番号ＮＰ’の第一種ユニットの出力を発火とし、Ｙ＜ＨであればＳ２１４に進んで、番号ＮＰ’の第一種ユニットの出力を非発火とする。以上の処理を、番号ＮＰ’をインクリメントしながら、全ての第一種ユニットについて繰り返し（Ｓ２１５，Ｓ２１６→Ｓ２０２）、重み演算・設定処理を終わる。上記処理の進行に伴い、テーブル５４及びメモリ１５３の内容を随時更新する。
【００９０】
次に、図７Ｂは第二種ユニット発火計算処理の詳細を示すものである。この処理の基本は、メモリ１５３の内容とテーブル５５の内容を照合することにより、ＭＵ１〜ＭＵｘのうち、出力信号Ｏｉの第二種ユニット１１と結合している第一種ユニット１０の、少なくとも一つが発火していれば、当該第二種ユニット１１の出力信号Ｏｉがアクティブ（「１」）とされる（すなわち、発火する）処理である。Ｓ２５１では、出力させるべき第二種ユニット１１の番号ｎを初期化する。次に、Ｓ２５２では、番号ｎの第二種ユニット１１への入力和を演算する。Ｋｉｎは番号ｎの第二種ユニット１１に対する番号ｉの第一種ユニット１０の結合設定フラグであり、ｍｉは番号ｉの第一種ユニット１０の出力（「０」又は「１」）であるから、番号ｎの第二種ユニット１１への入力和はＫｉｎ・ｍｉのｉについての和（Σ）により計算できる。この値が０より大きければ（つまり、番号ｎの第二種ユニット１１への入力が一つでもアクティブ（「１」）であれば）Ｓ２５３へ進み、フィードバック信号生成のために、番号ｎのタイマーフラグＴＭｎを１にセットする。そして、Ｓ２５５では番号ｎの第二種ユニット１１の出力Ｏｎを「１」にセットする。一方、Ｓ２５２で番号ｎの第二種ユニット１１への入力和が０であった場合はＳ２５４へ進み、タイマーフラグＴＭｎの値を確認する。このとき、ＴＭｎが「１」ならば、出力フィードバックのために第二種ユニット１１は発火させなければならないからＳ２５５に進む。他方、ＴＭｎが「１」でなければ出力フィードバックもアクティブでないので、番号ｎの第二種ユニット１１は不発火となり、Ｓ２５６へ進む。以下、Ｓ２５６では番号ｎをインクリメントし、Ｓ２５１〜Ｓ２５６の処理を、全ての第二種ユニット１１について完了するまで繰り返す。
【００９１】
図４に戻り、次にＳ７に進んで、学習判定情報の更新処理に移る。これも、各第一種ユニットについて求める処理となる。図８はその詳細を示すものである。まず、Ｓ３０１では、第一種ユニット１０の番号ＮＰ’を１に設定する。Ｓ３０２では、番号ＮＰ’の第一種ユニット１０が発火しているかどうかを判定する。発火していればＳ３０３に進み、既に図１５にて説明したごとく、該第一種ユニット１０が結合している第二種ユニット１１の全てについて、教示信号Ｔがアクティブ（「１」）になっているものがあるかどうかを調べ、その結果から要素判定情報ｆを定め、要素判定情報ｆが一つでも１になっていれば、Ｓ３０４に進んで、該第一種ユニット１０に対する学習判定情報ＦＮＰ’を「１」（判定一致状態）に定める。また、要素判定情報ｆが「１」を含まず、かつ少なくとも一つが「−１」になっていれば、Ｓ３０５に進んで、該第一種ユニット１０に対する学習判定情報ＦＮＰ’を「−１」（判定不一致状態）に定める。さらに、要素判定情報ｆが全て「０」になっていれば（つまり、その第一種ユニット１０が発火していなければ）、該第一種ユニット１０に対する学習判定情報ＦＮＰ’を「０」（中立状態）に定める。以上の処理を、番号ＮＰ’をインクリメントしながら、全ての第一種ユニットについて繰り返し（Ｓ３０７，Ｓ３０８→Ｓ３０２）、学習判定情報の更新処理を終わる。
【００９２】
図４に戻り、次にＳ８に進んで、現在着目している第一種ユニット１０（番号ＮＰ）の正解率ＲＮＰ’を演算する。該処理の詳細は図９に示す通りである。すなわち、番号ＮＰの第一種ユニット１０の前回の正解率ＲＮＰ’’及び閾値ＨＮＰ’’を読み出す。Ｓ４０２では、その番号ＮＰの第一種ユニット１０の学習判定情報ＦＮＰ’をリードする。そして、前回の正解率ＲＮＰ’’を、学習判定情報ＦＮＰ’を用いて、Ｓ４０３に記載の式により更新し、新しい正解率ＲＮＰ’とする。正解率ＲＮＰ’は、学習が進むにつれ学習判定情報ＦＮＰ’「１」（判定一致状態）が返ることにより上昇する。これによりその第一種ユニット１０の学習の進み具合がわかり、ひいてはすべての第一種ユニット１０の正解率Ｒをつかむことにより学習の進み具合を把握することもできる。つぎに第一種ユニット１０の閾値ＨＮＰ’を、着目している第一種ユニットの前回の閾値ＨＮＰ’’と第一種ユニットの発火時の加重和ＹＮＰ’の値とを用いて、Ｓ４０４に記載の式により更新し、新しい閾値ＨＮＰ’とする。閾値ＨＮＰ’も学習が進むにつれ学習判定情報ＦＮＰ’「１」（判定一致状態）が返ることにより上昇する、これによりある程度学習が進んで正解率が上がってきた段階での第一種ユニット１０の反応を安定化させることができる。さらに結合入力値σｉと第一種ユニット１０の番号ＮＰ’とに対応する重みＷｉ，ＮＰ’を、Ｗｉ，ＮＰ’＋ＦＮＰ’・（２σｉ−１）により更新する（Ｓ４０５の式と等価）。ＦＮＰ’の値は「１，０，−１」なので、重みＷｉ，ＮＰ’は、ＦＮＰ’＝１．σｉ＝１であれば必然的に「＋１」となり、ＦＮＰ＝−１．σｉ＝１であれば「−１」となる。なお、上記重み計算式は、図２７のように、ＦＮＰ’が１または否定入力結合済みのときのみＷｉ，ＮＰ’＋（２σｉ−１）とすることにより、学習のさらなる安定化を図ることもできる。
【００９３】
図４に戻り、次に、Ｓ９のユニット生成・結合処理へ移る。図５は、その詳細を示す。Ｓ１０１では、第二種ユニット１１の番号ＮＳを初期化する（ＮＳ＝１）。Ｓ１０２では、番号ＮＳの第二種ユニット１１が発火しているかどうかを、その第二種ユニット１１の出力信号ＯＮＳにより判定する。発火していない場合はＳ１０３に進み、教示信号ＴＮＳがアクティブかどうかを判定する。パターン一致するためには、出力信号ＯＮＳと教示信号ＴＮＳが一致していなければならない。教示信号ＴＮＳが非アクティブ（（＝「０」）ならＳ１０４に進む。その第二種ユニット１１との結合が非形成で、学習判定情報ＦＮＰ「１」の第一種ユニット１０との結合を以後作らないよう、結合可能テーブル５２（図１１）に結合非（Ｂｉｊ＝０）と登録する。これは、教示信号ＴＮＳが非アクティブ（（＝「０」）のとき、学習判定情報ＦＮＰ「１」の第一種ユニット１０は教示信号ＴＮＳとの関係がないためである。
【００９４】
また、Ｓ１０３で教示信号ＴＮＳがアクティブな場合はＳ１０５に進み、該第二種ユニット１１に非結合の第一種ユニット１０のうち、学習判定情報ＦＮＰ「１」のものが結合可能テーブルで結合可であればＳ１０６に進んで、その第一種ユニット１０との結合を形成する。また、Ｓ１０５で発火している第一種ユニットがない場合はＳ１０８に進み、新しい第一種ユニット１０（第一種ユニット番号ＮＰｍａｘ）を作成して、番号ＮＳの第二種ユニット１１に結合する。また、新しい第一種ユニット１０を結合可能テーブル５２（図１１）に登録する。また、Ｓ１１０では、学習を収束させるべき第一種ユニット１０の番号の最大値ＮＰmaxを更新する。そして、Ｓ１０７に進んで、の結合した第一種ユニット１０に対し、結合信号値σｉが「１」となっている入力信号Ｉｉ又はフィードバック信号値ＦＢｉを結合設定フラグＣｉｊ＝「１」および荷重値Ｗｉ，ＮＰ’＝１として結合設定する。このとき初期荷重値Ｗｉ，ＮＰ’は１より大きな値とすることもできる。
【００９５】
一方、Ｓ１０２において番号ＮＳの第二種ユニット１１が発火している場合はＳ１１１に進み、教示信号ＴＮＳが非アクティブならばＳ１１２に進んで、学習判定情報Ｆが「１」、すなわち、判定一致状態になっている第一種ユニット１０との結合が存在しているかどうかを調べる。結合が存在すると、番号ＮＳの第二種ユニット１１は必然的に「発火」となるが、教示信号ＴＮＳが示す内容（非アクティブ）と整合しないので該結合をカットし、さらにＳ１１４では、結合可能テーブル５２（図１１）において、その結合していた第一種ユニット１０と番号ＮＳの第二種ユニット１１との結合フラグを「０」とし、結合不能の組合せとして登録する。また、Ｓ１１１において教示信号ＴＮＳがアクティブならば正しい結合状態が実現しているので、特に結合の追加や切断の処理は行なわない。以上の処理を、番号ＮＳをインクリメントしながら、全ての第二種ユニット１１について繰り返し（Ｓ１１５，Ｓ１１６→Ｓ１０２）、ユニット生成・結合処理を終わる。上記処理の進行に伴い、テーブル５２，５３，５４の内容を随時更新する。
【００９６】
図４における以上のＳ６〜Ｓ９の流れにより、番号ＮＰの第一種ユニット１０に関する学習処理が一サイクル終了となる。例えば図２２に示すような方式にて被処理パターンと教示パターンとを変更しながら、この学習処理を複数回繰り返す。図４では、教示反復カウンタＣＴが一定数ＣＴmaxに到達するまで、番号ＮＴのインクリメントにより被処理パターンと教示パターンとを次々と変更して、Ｓ６〜Ｓ９の学習処理を繰り返すようにしている（Ｓ１０，Ｓ１１，Ｓ１２→Ｓ５）。これにより、番号ＮＰの第一種ユニット１０の正解率Ｒは次第に向上してゆく。これは、学習処理を繰り返す毎に、Ｓ９における第一種ユニット１０と第二種ユニット１１との結合設定状態と、Ｓ８での第一種ユニット１０への入力の重み設定状態とが、正解率Ｒが向上する方向に最適化されてゆくためである。図５の処理内容からも明らかなように、結合設定状態の最適化は、出力信号Ｏｉと教示信号Ｔｉとの直接比較による第二種ユニット１１レベルでのフィードバック、学習判定情報ＦＮＰ’を参照した第一種ユニット１０レベルでのフィードバック、及び前回の出力信号Ｏｉの入力層側へのフィードバックとを併用して効果的に進められてゆく。また、図９の処理内容からも明らかなように、第一種ユニット１０への入力の重み調整は、該第一種ユニット１０に集められている入力結合信号σｉへの一律的な重み加算処理が主体であり、最急降下法のごとき重み最適化のための複雑な数学的アルゴリズムは一切介在していない。
【００９７】
次に、Ｓ１３においては、番号ＮＰの第一種ユニット１０の正解率ＲＮＰをリードし、ＲＮＰの値が予め定められた閾正解率ＲＳを超えたところで、所期の学習効果が得られたと判断して、Ｓ１６（Ｓ１５の重み正規化については後述）へ進み、番号ＮＰの第一種ユニット１０の学習による最適化が収束したと判定して、各第一種ユニット１０に一対一に対応して設けられた収束済みフラグＧ（図１１）の、番号ＮＰに対応する記憶値ＧＮＰを「収束済み」（本実施形態では「１」）に設定する。
【００９８】
一方、一定数ＣＴmaxの学習処理を繰り返しても、Ｓ１４においてＲＮＰの値が閾正解率ＲＳに満たない第一種ユニット１０については、Ｓ２２に進んで、そのユニットが既に否定入力を結合済みであるかどうかを確認する。Ｎｏの場合はＳ２３に進み、図１６に示すごとく、既存の肯定アクティブの入力Ｉｉ又はフィードバックＦＢｉによる結合信号値σｉに加え、否定アクティブ入力Ｉｉ（−１）を、新たな結合信号値σｉとして付け加える。すなわち、入力信号Ｉｉ又はフィードバックＦＢｉのうち結合設定フラグＣｉｊ＝「０」になっているものを、否定反転してアクティブとし、これを結合信号値σｉとして追加する。（否定入力結合の重みは本実施形態では初期値＝１又は０）以下、Ｓ３に戻って、学習処理を位置からやり直す。このような否定入力の結合を行なっても、Ｓ１４にてＲＮＰの値が閾正解率ＲＳに満たない場合は、その第一種ユニット１０は学習効果への寄与がほとんど期待できないと判断し、Ｓ２２からＳ２６に進んで、その第一種ユニットの結合をすべて削除する。
【００９９】
上記のごとく、第一種ユニット１０の作成時に否定側入力信号を介在させないようにし、必要に応じて否定側入力信号を採用することにより、次のような利点が得られる。すなわち、本発明の方式による学習処理においては、真に必要な否定側入力信号は一般的に少ないと考えられ（つまり、多くの学習処理では肯定側入力信号だけでこと足りてしまうことが、経験的にわかっている）、敢えて初めから否定側入力信号を採用して学習を行うと、数多い否定側入力信号の影響を大きく受けて学習スピードが低下する可能性がある。そこで、学習初期に限って肯定側入力信号だけを採用すれば、学習の進行に伴い、第一種ユニット１０は発火しやすい側に傾いてゆくため、否定側入力信号を初期状態では不採用としても基本的には学習には悪影響が生じず、また、多数の否定側入力信号を採用したときの弊害も排除できる。また、第一種ユニット１０の作成時に否定側入力信号を肯定側のマイナス結合とすることは、第一種ユニット１０が発火しにくくなる側に傾くため、学習に悪影響が生ずる。
【０１００】
Ｓ２３からＳ２５の処理の代わりに、入力信号Ｉｉ又はフィードバックＦＢｉに対する荷重値Ｗｉ，ＮＰ’ のうち、マイナス側に絶対値が大きくなっているものを、否定アクティブ入力Ｉｉ（−１）として、否定反転してアクティブとし新たな結合信号値σｉとして付け加えることもできる。また、結合を作る前処理として、あらかじめ入力信号と、第二種ユニットの出力に対する教師信号との相関情報を作成し、第一種ユニットの作成時において、入力信号との結合を作る際に、単に肯定入力となっているものを機械的に採用するのでなく、教師信号とアクティブに相関している入力のみを選択して採用することにより、学習をより安定させることも可能である。
【０１０１】
第一種ユニット１０の学習判定情報ＦＮＰは、学習処理の初期段階では教示信号と出力信号との一致が確率的には同程度のため、「判定一致状態」以外の状態（つまり、判定不一致状態あるいは中立状態）になっていることもある。しかし、学習処理を繰り返すことにより、学習判定情報ＦＮＰもやがては「１」（判定一致状態）に変化し、正解率Ｒも高まってゆく。
【０１０２】
さて、図４の処理では、学習処理の繰り返しの途上で、第一種ユニット１０が増設されることを考慮して、収束済みフラグＧが「０」となっている第一種ユニット１０、つまり、非収束の第一種ユニット１０を探し出し、学習処理を繰り返す。そして、Ｓ２０において、非収束の第一種ユニット１０がテーブルからなくなれば、全ての第一種ユニット１０において、学習による最適化が収束したと判定し、全体の処理を終了する。
【０１０３】
本実施形態の学習方式と、従来のバックプロパゲーション（以下、「ＢＰ」と略記する）方式との効果の差異をまとめると、以下のようになる。ＢＰ方式における重み更新の学習式は、本実施形態の記号を使うと、Ｗｎ=Ｗｎ+ k・（Ｔｎ−Ｙｎ）・Ｉｉと表すことができる（ただし、中間ユニットではＴｎが複数のユニットからのフィードバックとなる）。また、（Ｔｎ−Ｙｎ）の部分が本方式の学習判定情報ＦＮＰに相当するが、その内容は以下のように相違する。
【０１０４】
【表１】
2005284833.tif 000003
【０１０５】
なお、図９のＳ４０５において、重みＷＮＰ’を（２Ｉｉ−１）を用いて更新しているのは、Ｉｉが０のとき（２Ｉｉ−１）は−１となるので、統計的に余分な入力の結合を消滅させることができるためである。他方、図９の処理は、図２７に示すように変更することもできる。閾値更新処理を図９のＳ４０４の演算式を用いた方式から、図２７のＳ４０４’の演算式を用いた方式に改めることにより、閾値をよりスムーズに増加させることができる。さらに、図２７のＳ４０５、Ｓ４０５１及びＳ４０５２においては、判定不一致（つまりＦ＝−１）の時の、結合値Ｗの更新回数を少なくできる。入力パターンが複雑に数多く入り混じっているような場合、判定不一致Ｆ＝−１となる確率が判定一致Ｆ＝１に比べて相当多くなってしまい、学習が収束しなくなってしまうこともありえる。そこで、上記Ｓ４０５、Ｓ４０５１及びＳ４０５２の処理は、判定一致（つまり、Ｆ＝１）の場合にのみ、Ｗ＝Ｗ＋（２Ｉ−１）が更新されるのと等価な処理結果が得られるように工夫されている。
【０１０６】
ＢＰ方式では、Ｔｎが大きく出力Ｙｎが小さいと、Ｗｎ=Ｗｎ＋ｋ・（Ｔｎ）・Ｉｉとなり、本実施形態の第一種ユニット作成に際しての、アクティブな入力信号又はフィードバック信号との結合形成時の働きと、一見類似したものとなる。しかし、ＢＰ方式において根本的に相違する点は、ユニット間の結合が存在しないとＩｉ又はＦＢｉが定義不能な点であり、これを乱数で初期化するために、真に必要な入力信号との結合を増やすことは偶然にしか起こり得ないことになる。その結果、余分な入力信号との結合も増やさざるを得なくなり、また、必要な入力信号との結合が薄い場合は、結合を増やすことが物理的に不能となる場合もある。また、重みＷｎを一律に設定すると、真に必要な入力信号との結合を増やすことはできるが、ほかのすべてのユニットとの結合も増えてしまうためユニットの分化が起らなくなる。ＢＰ方式では、このように学習の進行が初期の乱数に大きく左右されるため、ユニットがうまく分化しなくなって、局所解に陥りやすくなる欠点がある。しかしながら、本実施形態の方式では、第二種ユニットが不発火時には、必要に応じて第一種ユニットを追加作成することで、肯定側アクティブな入力信号との結合を作るようにしたので、上記のような不具合は生じない。
【０１０７】
以上のごとく、図４の処理により、個々の第一種ユニット１０の学習による最適化が収束すれば、パターン教示システム１は、以降は、ある入力パターンが与えられたとき、その入力パターンが教示したパターンと一致しているか否かを、得られる出力パターンが教示パターンと一致しているかどうかにより、簡単に識別できるようになる。すなわち、該システム１をパターン識別装置として使用できる。
【０１０８】
本発明にて採用可能な被識別パターンは例えば画像であるが、これに限定されるものではなく、例えば言語情報も被識別パターンとして採用しうる。具体的には、被識別パターンを第一言語で記述された原文パターンとし、教示パターンを、第二言語で記述された翻訳文パターンとすることにより、翻訳教示システムとして利用することも可能である。図２８及び図２９に、その適用例を示す。原文パターン１０１は第一言語である日本語で記述され、教示パターン１０２は第二言語である英語で記述されたその翻訳文パターンである。原文パターン１０１と教示パターン１０２とは、それぞれ単語ＪＰ１、ＪＰ２‥及びＥＧ１、ＥＧ２‥に分解され、単語毎に一義的に付与された単語ＩＤ＋品詞コード（活用や格変化を含む）を入力データないし教示データの形で入力する。単語ＩＤ及び品詞コードは、それぞれ一定ビット数のデータとして定義され、そのビット数に対応した数の第一種ユニット１０及び第二種ユニット１１が１組となって、単語ＩＤ及び品詞コードの入出力単位として用いられる。１つの文は複数の単語からなるので、翻訳上要求される文長に応じて、上記入出力単位となる第一種ユニット１０及び第二種ユニット１１の組が複数組用意されることになる。
【０１０９】
図２９に示すように、原文パターン１０１を上記の単語ＩＤ及び品詞コードの形で入力信号として入力し、他方、その翻訳文からなる教示パターン１０２を同様に教示信号として与え、既に詳述した機構により学習処理を行なうことができる。個々の言語はそれぞれ独自の文法体系を有するので、同じ意味の文でも単語間の対応は一義的でない。従って、従来のノイマン型コンピュータを用いた翻訳装置では、文法エンジンがいわば心臓部といえるが、言語間で異なる複雑な文法体系を完全にすり合わせるようなことは所詮は不可能であり、学習機能も人間が実際に言語を学習するロジックからは程遠く、満足できるものではなかった。しかしながら、本発明のシステムを用いれば、多数の例文を機械的に学習させることで、複雑な文法体系同士のすり合わせは、ネットワーク結合の最適化過程で無意識に学習内容に取り込まれる。これは、現実の人間の言語学習ロジックにも非常に近いものであり、学習させる例文のバリエーションさえ増やすことができれば、従来の翻訳装置をはるかに凌駕した言語学習能力を実現できる。この場合、３以上の言語を並列に学習するようなことももちろん可能であり、さらには、図２８の文例１０３のように、同一言語の方言の学習も自由自在となる利点がある。
【０１１０】
さて、以上のようなパターン教示システム１の構成を用いると、最終的には図２３に示すように、入力側につながる第一種ユニット１０への入力の重みと、出力側につながる第一種ユニット１０と第二種ユニット１１との結合が最適化されたパターン識別装置が得られることとなる。この状態では、第二種ユニット１１は論理和型の素子になっているが、第一種ユニット１０は重み入力を伴う非線形素子のままである。しかし、第一種ユニット１０を、入力信号を重み値に応じて取捨選択し、残した入力信号を二値入力化して扱うことにより、論理積ゲート回路に置換することができる。具体的には、図２０に示すように、入力信号Ｉｉ又はフィードバック信号ＦＢｉ（否定入力考慮する場合は結合信号値σｉ）のうち、重み値Ｗｉが予め定められた閾値Ｗｓよりも大きいもの（図２０では、重みＷ１，Ｗ４，Ｗ６，Ｗ８）のみを二値入力として残す形で、第一種ユニット１０を論理積ゲート回路にて置換することができる。重み値Ｗｉが予め定められた閾値Ｗｓよりも大きいか否かにより、当該重みＷｉを有した入力の取捨選択処理（以下、重み正規化処理という）、ひいてはそれによる第一種ユニット１０の論理積ゲート回路への転換処理を極めて簡単に行なうことができる。
【図面の簡単な説明】
【０１１１】
【図１】本発明のパターン教示システムを、等価回路の一例にて示す概念図。
【図２】パターン入力部の等価回路の一例を示す概念図。
【図３】図１のパターン教示システムを、コンピュータエミュレーションにて実現する例を示す図。
【図４】図３のパターン教示システムの、エミュレーションプログラムの処理の流れの一例を示すフローチャート。
【図５】図４のユニット生成・結合処理の詳細を示すフローチャート。
【図６】図４の発火処理の詳細を示すフローチャート。
【図７Ａ】第一種ユニットの発火計算処理を示すフローチャート。
【図７Ｂ】第二種ユニットの発火計算処理を示すフローチャート。
【図８】図４の学習判定更新処理の詳細を示すフローチャート。
【図９】図４の重み設定・正解率演算処理の詳細を示すフローチャート。
【図１０】教示信号と出力信号との記憶メモリの内容を示す概念図。
【図１１】第一種ユニット結合可能テーブルと、第一種ユニット出力メモリの内容を示す概念図。
【図１２】第一種ユニット入力側結合設定メモリの内容を示す概念図。
【図１３】重み設定メモリの内容を示す概念図。
【図１４】第一種ユニット出力側結合設定メモリの内容を示す概念図。
【図１５】学習判定結果メモリの内容を示す概念図。
【図１６】第一種ユニットへの入力信号の結合形態の第一例を示す模式図。
【図１７】第一種ユニットへの入力信号の結合形態の第二例を示す模式図。
【図１８】第一種ユニットと第二種ユニットとの結合組換えの第一例及び第二例を示す説明図。
【図１９】第一種ユニットと第二種ユニットとの結合組換えの第三例を示す説明図。
【図２０】第一種ユニットを論理積ゲート回路に変換する方法を示す説明図。
【図２１】被識別パターンと教示パターンとの関係を例示する説明図。
【図２２】被識別パターンと教示パターンとを繰り返し教示させるシーケンスの例をいくつか示す説明図。
【図２３】本発明のパターン教示システムによる学習処理と、入力の重み設定との関係を概念的に説明する図。
【図２４】ネットワーク接続された複数のコンピュータにより、エミュレーション型パターン教示システムを実現する例を示すブロック図。
【図２５】本発明のパターン教示システム内にて形成されるラッチロジックの等価回路図。
【図２６】本発明のパターン教示システムにおけるフィードバック形成効果の説明図。
【図２７】図４の重み設定・正解率演算処理の別例を示すフローチャート。
【図２８】本発明のパターン教示システムの、翻訳学習装置への適用例を示す第一説明図。
【図２９】同じく第二説明図。
【符号の説明】
【０１１２】
１０  第一種ユニット
１１  第二種ユニット
１２  パターン入力部
１３  入力側結合設定手段
１４  出力側結合設定手段
２１  出力側結合調整手段
２２  学習判定情報作成手段
２３  入力側結合調整手段
２４  教示信号設定手段
３０  入力層
４０  中間層
５０  出力層
Ｉｉ  入力信号
ＦＢｉ  フィードバック信号
ｍｉ  中間信号
Ｏｉ  出力信号
Ｔｉ  教示信号
【図１】
2005284833.tif 000004
【図２】
2005284833.tif 000005
【図３】
2005284833.tif 000006
【図４】
2005284833.tif 000007
【図５】
2005284833.tif 000008
【図６】
2005284833.tif 000009
【図７Ａ】
2005284833.tif 000010
【図７Ｂ】
2005284833.tif 000011
【図８】
2005284833.tif 000012
【図９】
2005284833.tif 000013
【図１０】
2005284833.tif 000014
【図１１】
2005284833.tif 000015
【図１２】
2005284833.tif 000016
【図１３】
2005284833.tif 000017
【図１４】
2005284833.tif 000018
【図１５】
2005284833.tif 000019
【図１６】
2005284833.tif 000020
【図１７】
2005284833.tif 000021
【図１８】
2005284833.tif 000022
【図１９】
2005284833.tif 000023
【図２０】
2005284833.tif 000024
【図２１】
2005284833.tif 000025
【図２２】
2005284833.tif 000026
【図２３】
2005284833.tif 000027
【図２４】
2005284833.tif 000028
【図２５】
2005284833.tif 000029
【図２６】
2005284833.tif 000030
【図２７】
2005284833.tif 000031
【図２８】
2005284833.tif 000032
【図２９】
2005284833.tif 000033