(57)【要約】   【課題】  本発明は、線形識別器を組み合わせることにより線形分離不可能なパターンを分類することが可能な多数決装置とその学習方法の提供を目的とする。  【解決手段】  本発明の多数決装置は、入力された観測データを線形分離する複数個の線形識別器と、線形識別器からの識別結果を入力し、識別結果に基づく多数決によって観測データの属するクラスを表す判定データを出力する多数決部と、教師データを入力して線形識別器の各々の識別関数の重みを修正する学習部と、を具備する。学習部は、多数決部から教師データに対応した判定データを受け取り、判定データが不正解である場合に、線形識別器の中で識別結果が不正解である線形識別器の識別関数の重みを、不正解の程度の大小関係に応じて所定の割合で修正する。【選択図】  図１
2005309920.tif 000002
【特許請求の範囲】
【請求項１】
入力された観測データを線形分離する複数個の線形識別器を含む線形識別手段と、
前記複数個の線形識別器の出力に接続され、前記複数個の線形識別器からの識別結果を入力し、識別結果に基づく多数決によって観測データの属するクラスを表す判定データを出力する多数決手段と、
教師データを入力して前記複数個の線形識別器の各々の識別関数の重みを修正する学習手段と、
を具備し、
前記学習手段は、前記多数決手段の出力に接続され、前記多数決手段から前記教師データに対応した判定データを受け取り、当該判定データが不正解である場合に、前記複数個の線形識別器の中で当該教師データに対応した識別結果が不正解である線形識別器の識別関数の重みを、不正解の程度の大小関係に応じて所定の割合で修正する、
多数決装置。
【請求項２】
前記学習手段は、前記教師データに対応した識別結果が不正解である線形識別器の中で不正解の程度の小さい方から、前記教師データに正しく応答する線形識別器の個数が過半数になるまで、線形識別器の第１の組を選択し、当該第１の組の線形識別器の識別関数の重みを第１の所定の割合で修正し、前記不正解である線形識別器の中で前記第１の組以外の線形識別器の識別関数の重みを第１の所定の割合よりも小さい割合で修正する、
請求項１記載の多数決装置。
【請求項３】
前記学習手段に接続され、前記複数個の線形識別器の各々の学習状態を監視し、学習状態が所定の条件を満たす場合、前記線形識別手段に更なる線形識別器を追加する再構成手段をさらに有する、請求項１又は２記載の多数決装置。
【請求項４】
入力された観測データを線形分離する複数個の線形識別器を含む線形識別手段と、
前記複数個の線形識別器の出力に接続され、前記複数個の線形識別器からの識別結果を入力し、識別結果に基づく多数決によって観測データの属するクラスを表す判定データを出力する多数決手段と、
教師データを入力して前記複数個の線形識別器の各々の識別関数の重みを修正する学習手段と、
を具備した多数決装置において、
学習用教師データと前記多数決手段からの前記教師データに対応した判定データが一致しない場合に、前記複数個の線形識別器の中で当該教師データに対応した識別結果が不正解である線形識別器の識別関数の重みを、不正解の程度の大小関係に応じて所定の割合で修正するステップを有する、
多数決装置の学習方法。
【請求項５】
入力された観測データを線形分離する複数個の線形識別器を含む線形識別手段と、
前記複数個の線形識別器の出力に接続され、前記複数個の線形識別器からの識別結果を入力し、識別結果に基づく多数決によって観測データの属するクラスを表す判定データを出力する多数決手段と、
教師データを入力して前記複数個の線形識別器の各々の識別関数の重みを修正する学習手段と、
を具備した多数決装置において、
前記複数個の線形識別器に学習用観測データへ入力するステップと、
前記複数個の線形識別器で各々の識別結果を算出するステップと、
前記算出された各々の識別結果を前記多数決手段へ入力するステップと、
前記多数決手段で判定データを生成するステップと、
前記判定データを前記学習手段へ入力するステップと、
前記学習手段で、前記学習用観測データに対応した教師データと前記判定データを比較するステップと、
前記教師データと前記判定データが一致しない場合に、前記複数個の線形識別器の中で前記学習用観測データに対する識別結果が不正解である線形識別器を選択するステップと、
前記選択された線形識別器の間の不正確の程度の大小関係を比較するステップと、
前記不正確の程度の大小関係に応じた所定の割合で前記選択された線形識別器の各々の識別関数の重みを修正するステップと、
を有する多数決装置の学習方法。
【請求項６】
前記識別関数の重みを修正するステップは、前記教師データに対応した識別結果が不正解である線形識別器の中で不正解の程度の小さい方から、前記教師データに正しく応答する線形識別器の個数が過半数になるまで、線形識別器の第１の組を選択し、当該第１の組の線形識別器の識別関数の重みを第１の所定の割合で修正し、前記不正解である線形識別器の中で前記第１の組以外の線形識別器の識別関数の重みを第１の所定の割合よりも小さい割合で修正する、
請求項４又は５記載の多数決装置の学習方法。
【請求項７】
前記複数個の線形識別器の各々の学習状態を監視し、学習状態が所定の条件を満たす場合、前記線形識別手段に更なる線形識別器を追加する再構成ステップをさらに有する、請求項４又は５記載の多数決装置の学習方法。
【請求項８】
入力された観測データを識別関数によって線形分離する機能と、
複数個の線形分離により得られた複数個の識別結果に基づく多数決によって観測データの属するクラスを表す判定データを生成する機能と、
学習用教師データと判定データが一致しない場合に、前記識別関数の中で、当該教師データに対応した識別結果が不正解である識別関数の重みを、不正解の程度の大小関係に応じて所定の割合で修正する機能と、
をコンピュータに実現させるためのプログラム。
【請求項９】
前記識別関数の重みを修正する機能は、前記教師データに対応した識別結果が不正解である識別関数の中で不正解の程度の小さい方から、前記教師データに正しく応答する識別関数の個数が過半数になるまで、識別関数の第１の組を選択し、当該第１の組の識別関数の重みを第１の所定の割合で修正し、前記不正解である識別関数の中で前記第１の組以外の識別関数の重みを第１の所定の割合よりも小さい割合で修正する、
請求項８記載のプログラム。
【請求項１０】
前記複数個の識別関数の重みの収束状態を監視し、重みの収束状態が所定の条件を満たす場合、更なる識別関数を追加する機能を更にコンピュータに実現させるための請求項８又は９記載のプログラム。
【請求項１１】
請求項８乃至１０のうち何れか１項記載のコンピュータ読み取り可能な記録媒体。
【請求項１２】
分類すべきクラスの数に対応した個数の、請求項１乃至３のうち何れか１項に記載された複数の多数決装置と、
前記観測データを入力した前記複数の多数決装置から出力される判定データを受け、前記観測データが属するクラスを決定するクラス分類手段と、
を有し、
前記複数の多数決装置の各々は、前記観測データが当該多数決装置に対応したクラスに属するか否かを表す判定データを出力し、
前記クラス分類手段は、前記複数の多数決装置からの判定データの中から、前記観測データが属していることを表す判定データを検出し、当該検出された判定データを出力した多数決装置に対応したクラスを前記観測データが属するクラスとして決定する、
多クラス識別装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パターン認識装置に係わり、特に、線形識別器を組み合わせたパターン認識装置とその学習方法に関する。
【背景技術】
【０００２】
従来、文字、図形、音声、画像などのパターンをクラスに分類する種々のパターン認識機械、及び、パターン認識装置としての学習機械が提案されている（非特許文献１を参照）。例えば、コンピュータに漢字の識別を行わせる場合には、漢字をメッシュ状のセルに分割してそのセルの中に漢字の一部が存在するか否かを判定するような２値符号操作に依拠していた。しかし、このようなコンピュータによるパターン認識は、人の非常に高度なパターン認識とは異なる識別方法を採用している。このような観点から、学習という機能を備えたパターン認識装置としての学習機械が研究開発されている。
【０００３】
典型的なパターン認識装置は線形識別器である。例えば、２次元上の４つのパターンを、○と×の２つのクラスに分類する場合、パターンが
○    ○
×    ×
のように分布しているならば、これらの４つのパターンは１本の直線で２つのクラスに分類することができる。このようなパターンは、「線形分離可能」である。一方、２次元上の４つのパターンが、
×    ○
○    ×
のように分布しているならば、これらの４つのパターンは１本の直線では分類できない。即ち、これらのパターンは線形分離不可能である。このように、パターン認識には、線形の場合と非線形の場合が考えられるが、多くのアプリケーションにおいて、非線形のパターン認識が要望されている。
【０００４】
線形分離不可能なパターンをクラスに分類する試みとして、ニューラルネットワークに基づくパターン認識装置が知られている（非特許文献２を参照）。ここで、ニューラルネットワークは、一般的に、入出力関係が非線形であるため、線形分離不可能なパターンの分類に適用可能であると考えられている。
【０００５】
しかし、ニューラルネットワークの学習では、ローカルミニマムの状態で収束してしまうと、氾化能力が劣ることが知られている。そこで、氾化能力を高めるために、異なる重み係数初期値を設定して学習させた複数個の学習済ニューラルネットワークを入力に対して並列に接続し、それらの２値出力信号を多数決処理することも提案されている。たとえ、並列化し多数決処理をしても、複数個の学習済ニューラルネットワークは、ローカルミニマムの状態で収束しているので、依然として高い氾化能力は得られないことが指摘されている。より高い氾化能力を得るために、それぞれ異なった多値教師信号を用いてグローバルミニマムに収束させた学習済ニューラルネットワークを入力に対して並列に接続して多数決処理することが提案されている（特許文献１を参照）。この例で注意すべきことは、各ニューラルネットワークは、個別に学習済であり、多数決処理は学習に影響を与えないことである。
【０００６】
また、このような並列ニューラルネットワーク処理システムの各ニューラルネットワークを追加学習することが提案されている（特許文献２を参照）。その場合、各ニューラルネットワークは独立に追加学習がなされている。
【０００７】
さらに、複数の予測機械を並べ、それら予測機械の出力を統合する手法が提案されている。より具体的には、この手法では、結合単位となるべき予測機械を分類器として、複数の分類器に共通の入力を与えるとともにこれら分類器の出力を線形に結合する。即ち、各分類器の出力を加重和することにより最終的な出力が構成される。このように分類器の出力を線形に結合する多数決予測機械で正確な予測結果を得るためには、一般に、入力と結果が既知である経験データを与えたときの出力が適切になるように多数決予測機械の学習を行う。しかし、経験データに対する誤り確率を小さくしても、未知データ、即ち、本当に予測したいデータに対する誤り確率が高くなる場合がある。そこで、未知データに対する誤り確率が小さくなるように、各分類器に対する重みを変化させながら、推定した誤り確率が最小となる重みを見つけて、その重みに基づいて多数決予測機械を構成する方法が提案されている（特許文献３を参照）。この方法は、分類器の出力を線形結合するときの重みを学習するものであり、分類器が入力に対してどのような予測結果を出力すべきであるかを、即ち、分類器自体を学習するものではない。
【非特許文献１】志村正道著、「パターン認識と学習機械」、昭晃堂、１９７０年
【非特許文献２】麻生英樹著、「ニューラルネットワーク情報処理」、産業図書、１９８８年
【特許文献１】特開２００１−０５１９６９
【特許文献２】特開２００２−２５９９４０
【特許文献３】特開２００１−１９５３７９
【発明の開示】
【発明が解決しようとする課題】
【０００８】
上述のように、従来技術によるニューラルネットワーク又は予測機械のような識別器と、識別器の出力を結合して多数決処理する多数決器と、を含むパターン認識装置では、各識別器と多数決器を別々に学習によって構築する必要がある。このため、パターン認識装置全体の識別能力を高めるために、各識別器をどのように学習させればよいかが明らかではなく、その結果として、線形分離不能なパターンのクラスへの分類の性能を十分に高めることが困難である。
【０００９】
したがって、本発明は、単純な構造の線形識別器を組み合わせることにより線形分離不可能なパターンを分類することが可能な多数決装置の提供を目的とする。
【００１０】
また、本発明は、この多数決装置の統一的な学習方法の提供を目的とする。
【００１１】
さらに、本発明は、上記多数決装置の学習機能をコンピュータに実現させるためのプログラムの提供を目的とする。
【００１２】
さらに、本発明は、上記多数決装置に基づいて多クラス識別を可能にする多クラス識別装置の提供を目的とする。
【課題を解決するための手段】
【００１３】
上記目的を達成するため、本発明は、複数個の線形識別器を用いて多数決をとる多数決装置を提供する。この多数決装置は線形分離不能なパターンをクラスに分類することができる。
【００１４】
また、多数決装置の多数決の結果を用いて各線形識別器を学習させる学習方法を提供する。この学習方法によれば、各線形識別器を並列に学習させることにより、多数決装置全体を学習させることができる。
【００１５】
上記本発明の多数決装置は、請求項１に記載されるように、
入力された観測データを線形分離する複数個の線形識別器を含む線形識別手段と、
前記複数個の線形識別器の出力に接続され、前記複数個の線形識別器からの識別結果を入力し、識別結果に基づく多数決によって観測データの属するクラスを表す判定データを出力する多数決手段と、
教師データを入力して前記複数個の線形識別器の各々の識別関数の重みを修正する学習手段と、
を具備する。
【００１６】
各線形識別器は、それぞれの識別関数を使用して観測データの識別結果を出力する。多数決手段は、各線形識別器からの識別結果を受け取り、それらの識別結果に関して多数決を行って、観測データをクラスに分類する。線形識別器からの識別結果を多数決処理することにより、非線形の観測データのパターンを分離できるようになる。各線形識別器は学習によって識別関数の重みが修正される。
【００１７】
また、前記学習手段は、前記多数決手段の出力に接続され、前記多数決手段から前記教師データに対応した判定データを受け取り、当該判定データが不正解である場合に、前記複数個の線形識別器の中で当該教師データに対応した識別結果が不正解である線形識別器の識別関数の重みを、不正解の程度の大小関係に応じて所定の割合で修正する。
【００１８】
即ち、線形識別器の識別関数の重みは、その線形識別器自体の識別結果の正否によって修正されるかどうかが決まるのではなく、多数決装置としての判定データが不正解であり、かつ、当該線形識別器自体の識別結果も不正解である場合に限り修正される。さらに、当該線形識別器の識別関数の重みの修正量は、識別結果が不正解であった線形識別器間で不正解の程度を相対的に評価することによって決まる。これにより、各線形識別器の学習が他の線形識別器の学習状態を考慮して進行するので、多数決装置の識別性能が高まると共に、全体的な学習効率が高まる。
【００１９】
好ましい一実施例では、請求項２に記載されているように、前記学習手段は、前記教師データに対応した識別結果が不正解である線形識別器の中で不正解の程度の小さい方から、前記教師データに正しく応答する線形識別器の個数が過半数になるまで、線形識別器の第１の組を選択し、当該第１の組の線形識別器の識別関数の重みを第１の所定の割合で修正し、前記不正解である線形識別器の中で前記第１の組以外の線形識別器の識別関数の重みを第１の所定の割合よりも小さい割合で修正する。
【００２０】
この実施例では、教師データに対する応答が不正解である線形識別器は、不正解の程度の小さい方から正しく応答する線形識別器の個数が過半数になるまでの第１の線形識別器の組と、それ以外の不正解である第２の線形識別器の組と、に分けられ、第１の組の線形識別器の識別関数の重みは、第１の所定の割合で修正し、第２の組の線形識別器の識別関数は、第１の所定の割合よりも相当量少ない第２の所定の割合で修正する。これにより、重みの収束性能が高まる。なぜならば、不正解である全ての線形識別器の識別関数の重みを同じ割合で修正すると、それらの線形識別器が同じような学習をするため、複数の線形識別器を設けて別々に学習を行う効果が低減するからである。また、不正解である線形識別器の中で不正解の程度の小さい方から正しく応答する線形識別器の個数が過半数になるまでの第１の組の線形識別器だけが学習し、第２の組の線形識別器が学習しない場合、第２の組の線形識別器の中に全く学習が進まない線形識別器が現れ得るからである。
【００２１】
さらに、本発明の多数決装置は、請求項３に記載されているように、前記学習手段に接続され、前記複数個の線形識別器の各々の学習状態を監視し、学習状態が所定の条件を満たす場合、前記線形識別手段に更なる線形識別器を追加する再構成手段を有する。
【００２２】
本発明によれば、多数決装置の線形識別器が統一的に学習するので、多数決装置の学習状態が、所定回数の学習を行っても識別関数の重みが収束しないというような条件に合致した場合に、多数決装置に線形識別器を自動的に増設し、多数決装置を再学習させることができる。これにより、識別性能のより高い多数決装置を構成することが可能である。
【００２３】
また、本発明は、上記本発明の多数決装置における学習方法を提供する。本発明の多数決装置の学習方法は、請求項４に記載されるように、
入力された観測データを線形分離する複数個の線形識別器を含む線形識別手段と、
前記複数個の線形識別器の出力に接続され、前記複数個の線形識別器からの識別結果を入力し、識別結果に基づく多数決によって観測データの属するクラスを表す判定データを出力する多数決手段と、
教師データを入力して前記複数個の線形識別器の各々の識別関数の重みを修正する学習手段と、
を具備した多数決装置において、
学習用教師データと前記多数決手段からの前記教師データに対応した判定データが一致しない場合に、前記複数個の線形識別器の中で当該教師データに対応した識別結果が不正解である線形識別器の識別関数の重みを、不正解の程度の大小関係に応じて所定の割合で修正するステップを有する、
学習方法である。これにより、本発明の多数決装置に関して説明したように、各線形識別器の学習が他の線形識別器の学習状態を考慮して進行するので、多数決装置の識別性能が高まると共に、全体的な学習効率が高まる。
【００２４】
また、一実施例によれば、本発明の多数決装置における学習方法は、請求項５に記載されるように、
入力された観測データを線形分離する複数個の線形識別器を含む線形識別手段と、
前記複数個の線形識別器の出力に接続され、前記複数個の線形識別器からの識別結果を入力し、識別結果に基づく多数決によって観測データの属するクラスを表す判定データを出力する多数決手段と、
教師データを入力して前記複数個の線形識別器の各々の識別関数の重みを修正する学習手段と、
を具備した多数決装置において、
前記複数個の線形識別器に学習用観測データへ入力するステップと、
前記複数個の線形識別器で各々の識別結果を算出するステップと、
前記算出された各々の識別結果を前記多数決手段へ入力するステップと、
前記多数決手段で判定データを生成するステップと、
前記判定データを前記学習手段へ入力するステップと、
前記学習手段で、前記学習用観測データに対応した教師データと前記判定データを比較するステップと、
前記教師データと前記判定データが一致しない場合に、前記複数個の線形識別器の中で前記学習用観測データに対する識別結果が不正解である線形識別器を選択するステップと、
前記選択された線形識別器の間の不正確の程度の大小関係を比較するステップと、
前記不正確の程度の大小関係に応じた所定の割合で前記選択された線形識別器の各々の識別関数の重みを修正するステップと、
を有する。
【００２５】
好ましい一実施例によれば、上記本発明の多数決装置の学習方法において、請求項６に記載されるように、
前記識別関数の重みを修正するステップは、前記教師データに対応した識別結果が不正解である線形識別器の中で不正解の程度の小さい方から、前記教師データに正しく応答する線形識別器の個数が過半数になるまで、線形識別器の第１の組を選択し、当該第１の組の線形識別器の識別関数の重みを第１の所定の割合で修正し、前記不正解である線形識別器の中で前記第１の組以外の線形識別器の識別関数の重みを第１の所定の割合よりも小さい割合で修正する。これにより、本発明の多数決装置に関して説明したように、重みの収束性能が高まる。
【００２６】
さらに、上記本発明の多数決装置の学習方法は、請求項７に記載されるように、
前記複数個の線形識別器の各々の学習状態を監視し、学習状態が所定の条件を満たす場合、前記線形識別手段に更なる線形識別器を追加する再構成ステップを有する。これにより、本発明の多数決装置に関して説明したように、識別性能のより高い多数決装置を構成することが可能である。
【００２７】
さらに、上記目的を達成するため、本発明のプログラムは、請求項８乃至１０に記載されているように、上記本発明の多数決装置の各機能をコンピュータに実行させ、又は、上記本発明の多数決装置の学習方法の各ステップをコンピュータに実現させる。これにより、本発明の様々な機能をコンピュータに実現させるためのプログラムを提供することができる。このプログラムは、通信回線や記録媒体を用いてコンピュータに提供することが可能である。
【００２８】
さらに、請求項１１に係る発明は、請求項８乃至１０のうちいずれか１項記載のプログラムを記録したコンピュータ読み取り可能な記録媒体を提供する。
【００２９】
線形識別器により構成された上記本発明の多数決装置は、観測データを２つのクラスに分類することができる。本発明の更なる面によれば、この多数決装置を組み合わせることによって、観測データを多クラスに分類できる多クラス識別装置が提供される。本発明の多クラス識別装置は、請求項１２に記載されているように、
分類すべきクラスの数に対応した個数の、請求項１乃至３のうち何れか１項に記載された複数の多数決装置と、
前記観測データを入力した前記複数の多数決装置から出力される判定データを受け、前記観測データが属するクラスを決定するクラス分類手段と、
を有する。前記複数の多数決装置の各々は、前記観測データが当該多数決装置に対応したクラスに属するか否かを表す判定データを出力する。前記クラス分類手段は、前記複数の多数決装置からの判定データの中から、前記観測データが属していることを表す判定データを検出し、当該検出された判定データを出力した多数決装置に対応したクラスを前記観測データが属するクラスとして決定する。これにより、線形分離不可能なパターンを多クラスに分類することが可能になる。
【発明の効果】
【００３０】
本発明によれば、簡単な線形識別器を用いて線形分離不可能なパターンをクラスに分類することができる多数決装置を提供することが可能となる。
【発明を実施するための最良の形態】
【００３１】
以下、添付図面を参照して本発明の実施の形態を詳細に説明する。
【００３２】
図１は、本発明の一実施例による多数決装置１００の略構成図である。同図に示されるように、多数決装置１００は、複数の線形識別器１１１〜１１５と、多数決部１２１と、学習部１３１と、により構成される。同図では、線形識別器の個数は５個であるが、本発明において、線形識別器の個数は何個でも構わない。典型的には、線形識別器の個数は、多数決の判定が容易に行われるように奇数個になるように設定されるが、偶数個でも構わない。以下では、特に断らない限り、線形識別器の個数は５個であるとして説明する。
【００３３】
線形識別器１１１〜１１５は、観測データを入力し、各々の識別関数を用いて、観測データを２つのクラス、例えば、クラスＡとクラスＢに分類する。
【００３４】
多数決部１２１は、各線形識別器から、ある観測データに対する分類結果（本例では、クラスＡ又はクラスＢ）を受け取り、クラスＡという分類結果が過半数を占めるときには、観測データはクラスＡに属すると判定し、クラスＢという分類結果が過半数を占めるときには、観測データはクラスＢに属すると判定する。
【００３５】
学習部１３１は、学習用教師データと、多数決部１２１からの教師データに対応した判定データが一致しない場合に、線形識別器１１１〜１１５の中で当該教師データに対応した識別結果が不正解である線形識別器の識別関数の重みを、不正解の程度の大小関係に応じて所定の割合で修正する。例えば、教師データがクラスＡ、判定データがクラスＢであり、線形識別器１１１〜１１２の分類結果がクラスＡであり、線形識別器１１３〜１１５の分類結果がクラスＢである場合、線形識別器１１３〜１１５の識別関数の重みを、それぞれの識別関数の値に応じて修正する。
【００３６】
このような多数決装置１００は、単独の線形識別器では分類できないパターン、即ち、線形分離不可能なパターンを分類することができる。説明の便宜上、２次元のパターンを考える。図２は、線形分離可能なパターンと線形分離不可能なパターンの例を説明する図である。図２（Ａ）に示されるパターンは、１本の直線でクラス○とクラス×の２つのクラスに分類できるので、線形分離可能なパターンである。一方、図２（Ｂ）に示されるパターンは、１本の直線でクラス○とクラス×の２つのクラスに分類できないので、線形分離不可能なパターンである。当業者であれば容易に理解できるように、この線形分離可能性の考え方は３次元以上に拡張することができる。
【００３７】
これに対して、図２（Ｂ）のようなパターンは、３本の直線を用いることにより、クラス○とクラス×の２つのクラスに識別することができる。図３は多数決によるクラス識別の説明図である。同図には３本の直線１、２及び３が示されている。直線１は直線１の下側を○、上側を×として分類する識別関数を表し、直線２は直線２の上側を○、下側を×として分類する識別関数を表し、直線３は直線３の上側を○、下側を×として分類する識別関数を表す。ここで、同図のパターン１（○）、パターン２（×）、パターン３（○）、パターン４（×）が、３本の直線によってどのように分類されるかを調べると、次の表１のようになることが分かる。
【００３８】
【表１】
2005309920.tif 000003
例えば、パターン１は、直線１によって×、直線２によって○、直線３によって○として分類されるので、直線１〜３の多数決によって、○として分類される。これは、パターン１のクラス○と一致しているので、パターン１は正しく分類されたことがわかる。パターン２〜４についても同様に正しく分類される。このように、線形分離不可能なパターンのクラス識別は、複数の線形識別器の多数決によって解決できる。
【００３９】
複数の線形識別器に基づく多数決装置が実際に線形分離不可能なパターンをクラス識別できるようにするためには、各線形識別器を適当に学習させることが必要である。以下では、多数決装置の学習、より具体的には、多数決装置の各線形識別器の識別関数の重みの修正について説明する。
【００４０】
本発明の一実施例による多数決装置の線形識別器は、公知の線形学習機械により構成される。線形学習機械とは、入力パターンが正しく識別されるように識別関数の重みを修正する機械である。
【００４１】
ｎ次元の入力パターンＸの各成分をｘi、重みをｗiとするとき、しきい値θによってパターンＸは２つのクラスＡとＢに次のように識別される。
【００４２】
【数１】
2005309920.tif 000004
ここで、ｘn+1＝１、ｗn+1＝θなる変数を導入すると、式（１）は
ＷＸ＞０  ならば  Ｘ∈Ａ
ＷＸ＜０  ならば  Ｘ∈Ｂ
のように表すことができる。ここで、Ｗは
Ｗ＝（ｗ1，ｗ2，・・・，ｗn，ｗn+1）
なる重みベクトルであり、Ｘは
【００４３】
【数２】
2005309920.tif 000005
なるパターンベクトルである。この線形学習機械の識別関数ｆ（ｘ）は
ｆ（ｘ）＝ＷＸ
で与えられ、入力パターンを２つのクラスに識別する超平面は
ＷＸ＝０
で与えられる。超平面は、２次元の場合は直線となり、３次元の場合は平面となる。例えば、図３において、パターン１が直線２よりも上にあるか、下にあるかによって、パターン１が属するクラスを定める。したがって、この識別関数を使ってパターンをクラス分けする問題は、入力パターンが正しく識別されるように、直線の傾き、位置を求める問題に帰着する。クラスＡ及びＢに属しているパターンを、それぞれ、ＸA及びＸBとすると、パターンが線形分離可能であるならば、クラスＡに属しているパターンＸAに対し
ＷＸ＞０  Ｘ⊂Ａ
となり、クラスＢに属しているパターンＸBに対し
ＷＸ＞０  Ｘ⊂Ｂ
となるような重みベクトルＷが存在する。
【００４４】
線形学習機械は、入力パターンが正しく識別されるように重みを修正する機械である。重みの修正方法は様々な方法を考えることができるが、本発明の一実施例では、固定増量法を用いる。図４は、線形学習機械の構造の一例の説明図である。図５は、線形学習機械の学習方法のフローチャートである。
【００４５】
ステップ５０１：重みベクトルの初期値をＷ＝（０，０，・・・，０）と設定する。ｋ＝１と設定する。
【００４６】
ステップ５０２：ｋ番目のパターンをＸkとし、その各成分をｘkiとし
【００４７】
【数３】
2005309920.tif 000006
を計算する。
【００４８】
ステップ５０３：パターンＸkがクラスＡに属するとき、即ち、ＷＸk＞０が正解領域であるとき、ステップ５０２で計算した結果が間違っているならば、ステップ５０５へ進む。
【００４９】
ステップ５０４：パターンＸkがクラスＢに属するとき、即ち、ＷＸk＜０が正解領域であるとき、ステップ５０２で計算した結果が間違っているならば、ステップ５０６へ進む。
【００５０】
ステップ５０５：ｃを正の定数として
Ｗ’＝Ｗ＋ｃＸk              （２）
のように重みＷを修正し、ステップ５０７へ進む。Ｗ’は修正後の重みベクトルを表している。
【００５１】
ステップ５０６：ｃを正の定数として
Ｗ’＝Ｗ−ｃＸk              （３）
のように重みＷを修正し、ステップ５０７へ進む。Ｗ’は修正後の重みベクトルを表している。
【００５２】
ステップ５０７：全てのパターンを処理したかどうかを判定する。未だ処理すべきパターンが残っている場合、ステップ５０８へ進む。
【００５３】
ステップ５０８：ｋを１ずつインクリメントし、ステップ５０２へ戻る。
【００５４】
以上の手順により、正しくパターンのクラス分類を行う重みベクトルＷを定める。図６は、重みベクトルの修正の説明図である。図６に示すように、パターンベクトルＸは超平面ＷＸ＝０と直交するので、式（２）及び式（３）は、重みベクトルＷを超平面と直交する方向に移動させることを表す。即ち、式（２）は超平面の負の側から正の側へ、式（３）は超平面の正の側から負の側へ向かう、重みベクトルの垂直な移動を表している。
【００５５】
本発明の一実施例による多数決装置は、線形識別器として、図４に示されるような線形学習機械を用いることによって構成される。多数決装置と、単純な線形識別器との違いは、多数決装置は、入力パターンを２つのクラスに識別するとき、ＷＸが正解領域であるか無いかの判断を多数決によって決めることである。
【００５６】
図１に示された多数決装置１００は、５個の線形識別器１１１〜１１５のそれぞれの重みベクトルＷnを修正し、重みを定める。次に、多数決機械における学習手順を説明する。図７は本発明の一実施例による多数決装置の学習方法のフローチャートである。ｍは線形識別器の番号を表す。
【００５７】
ステップ７０１：各線形識別器の重みベクトルの初期値をＷm＝（０，０，・・・，０）と設定する。ｋ＝１と設定する。
【００５８】
ステップ７０２：ｋ番目のパターンをＸkとし、その各成分をｘkiとし、重みベクトル各成分をＷmiとして
【００５９】
【数４】
2005309920.tif 000007
を計算する。
【００６０】
ステップ７０３：パターンＸkがクラスＡに属するとき、即ち、正解領域がＷmＸk＞０であるとき、ステップ７０２における計算結果がＷmＸk＜０となる線形識別器の個数が過半数であるならば、ステップ７０５へ進む。
【００６１】
ステップ７０４：パターンＸkがクラスＢに属するとき、即ち、正解領域がＷmＸk＜０であるとき、ステップ７０２における計算結果がＷmＸk＞０となる線形識別器の個数が過半数であるならば、ステップ７０６へ進む。
【００６２】
ステップ７０５：計算結果がＷmＸk＜０となる線形識別器に対して、ｃを正の定数として
Ｗm’＝Ｗm＋ｃＸk 
のように重みＷmを修正し、ステップ７０７へ進む。Ｗm’は修正後の重みベクトルを表している。
【００６３】
ステップ７０６：計算結果がＷmＸk＞０となる線形識別器に対して、ｃを正の定数として
Ｗm’＝Ｗｍ−ｃＸk 
のように重みＷmを修正し、ステップ７０７へ進む。Ｗm’は修正後の重みベクトルを表している。
【００６４】
ステップ７０７：全てのパターンを処理したかどうかを判定する。未だ処理すべきパターンが残っている場合、ステップ７０８へ進む。
【００６５】
ステップ７０８：ｋを１ずつインクリメントし、ステップ７０２へ戻る。
【００６６】
ステップ７０９：多数決装置が正しく識別していないパターンが未だ存在する場合、ステップ７１０へ進む。
【００６７】
ステップ７１０：ｋを１として、ステップ７０２へ戻る。
【００６８】
ここで注意すべきことは、本発明の一実施例によれば、ステップ７０５とステップ７０６の学習規則において、定数ｃは固定定数ではない。この定数ｃは、不正解である線形識別器のＷmＸkの計算結果が正解領域から外れている距離を、不正解である線形識別器の間で比較することによって相対的に定められる。これにより、線形識別器の修正後の重みに変化を付けることができる。もし、不正解である線形識別器を全て同じ規則に従って学習させると、ｍ個の線形識別器の中で同じように学習する線形識別器が存在する可能性がある。
【００６９】
次に、この重みの具体的な修正方法を説明する。パターンＸkがクラスＡに属するのに、識別関数の計算結果がＷmＸk＜０となる線形識別器の個数が過半数であるステップ７０５の場合、
ＷmＸk≦０
の範囲で、ＷmＸkの値が大きい順に、線形識別器に優先順位番号を付与する。ＷmＸkの値が同じである場合には、例えば、予め決められている線形識別器の番号の若い順に優先順位番号を付与する。
【００７０】
ここで、パターンＸkがクラスＡに属するのに、識別関数の計算結果がＷmＸk＜０となる線形識別器の個数がｐ個（ｐはｍの過半数）であるとする。また、ｍが偶数であるとき、ｑ＝ｍ／２＋１、ｍが奇数であるとき、ｑ＝（ｍ＋１）／２とする（即ち、ｑはｍ個のうちの最小の過半数を表す）。本実施例では、不正解である線形識別器を２つのグループに分ける。第１のグループは、優先順位番号の若い方から順番にｐ−ｑ＋１個の線形識別器であり、第２のグループは、それ以外の不正解である線形識別器、即ち、ｑ−１個の線形識別器である。第１のグループの重みは、
Ｗm’＝Ｗm＋（ｃ１）Ｘk 
に従って修正し、第２のグループの重みは、
Ｗm’＝Ｗm＋（ｃ２）Ｘk 
に従って修正する。ここで、
０＜ｃ２＜ｃ１
であり、ｃ１は、通常の線形学習機械の学習で使用するｃと一致させてもよい。
【００７１】
同様に、パターンＸkがクラスＢに属するのに、識別関数の計算結果がＷmＸk＞０となる線形識別器の個数が過半数であるステップ７０６の場合、
ＷmＸk≧０
の範囲で、ＷmＸkの値が小さい順に、線形識別器に優先順位番号を付与する。ＷmＸkの値が同じである場合には、例えば、予め決められている線形識別器の番号の若い順に優先順位番号を付与する。
【００７２】
ここで、パターンＸkがクラスＡに属するのに、識別関数の計算結果がＷmＸk＜０となる線形識別器の個数がｐ個（ｐはｍの過半数）であるとする。また、ｍが偶数であるとき、ｑ＝ｍ／２＋１、ｍが奇数であるとき、ｑ＝（ｍ＋１）／２とする（即ち、ｑはｍ個のうちの最小の過半数を表す）。本実施例では、不正解である線形識別器を２つのグループに分ける。第１のグループは、優先順位番号の若い方から順番にｐ−ｑ＋１個の線形識別器であり、第２のグループは、それ以外の不正解である線形識別器、即ち、ｑ−１個の線形識別器である。第１のグループの重みは、
Ｗm’＝Ｗm−（ｃ１）Ｘk 
に従って修正し、第２のグループの重みは、
Ｗm’＝Ｗm−（ｃ２）Ｘk 
に従って修正する。
【００７３】
本実施例の学習規則によれば、不正解である線形識別器の中で、正解に近い方の線形識別器は正解領域へ移動するように学習し、正解から遠い方の線形識別器は正解領域へ近付く方向へ少しだけ移動するように学習する。本実施例は、このような学習規則を採用することによって、より学習が容易な線形識別器を選択的に学習させることによって、多数決装置全体の学習効率を高めると共に、特定の線形識別器の学習が進行しないような状況を回避することができる。
【００７４】
上記の例では、ｃ１とｃ２の２つの定数を利用したが、本発明の学習規則はこのような例に限定されることなく、例えば、第１のグループ及び第２のグループのそれぞれのグループ内でさらに不正解の最小関係に応じて異なる定数を利用してもよい。
【００７５】
次に、３個の線形識別器、即ち、線形学習機械により構成された多数決装置の加重学習の例を説明する。本例では、多数決装置には、２値の６次元ベクトルである６個の入力パターンＸ1〜Ｘ6を与える。
Ｘ1    ０  ０  １  １  １  １  １
Ｘ2    ０  １  ０  １  ０  ０  １
Ｘ3    １  ０  ０  ０  ０  ０  １
Ｘ4    ０  １  ０  ０  ０  ０  １
Ｘ5    １  ０  ０  １  ０  ０  １
Ｘ6    ０  １  １  ０  ０  １  １
入力パターンの第７要素は、荷重ベクトルと共に、しきい値を表すものである。これらの入力パターンに対し、クラスＡ及びクラスＢは、それぞれ、以下のように設定されている。
ＣA＝｛Ｘ1，Ｘ2，Ｘ4｝
ＣB＝｛Ｘ3，Ｘ5，Ｘ6｝
荷重ベクトルの初期値として、Ｗn＝０である。荷重ベクトルと入力パターンベクトルの内積ＷnＸ1は、
Ｗ1Ｘ1＝[0 0 0 0 0 0 0] [0 0 1 1
1 1 1]T＝０
Ｗ2Ｘ1＝０
Ｗ3Ｘ1＝０
である。パターンＸ1はＣAに属しているので、Ｗ1Ｘ1、Ｗ2Ｘ1、Ｗ3Ｘ1は全て不正解である。したがって、荷重を修正する必要がある。そのため、線形学習機械に優先順位番号を付与する。内積の値が全て等しいので、機械番号の若い順に優先順位番号を付与すると、Ｗ1が（１）、Ｗ2が（２）、Ｗ3が（３）となる。ｃ１＝１及びｃ２＝０．１とすると、
Ｗ1’＝Ｗ1＋ｃ１・Ｘ1＝[0 0 1 1 1 1 1]
Ｗ2’＝Ｗ2＋ｃ１・Ｘ1＝[0 0 1 1 1 1 1]
Ｗ3’＝Ｗ3＋ｃ２・Ｘ1＝[0 0 0.1 0.1 0.1 0.1
0.1]
となる。
【００７６】
次に、パターンＸ2を多数決装置に与える。上記の修正後の荷重を用いて、ＷnＸ2の値を求めると、
Ｗ1Ｘ2＝２    Ｗ2Ｘ2＝２    Ｗ3Ｘ2＝０．２
となる。Ｘ2∈ＣAであるので、すべての場合において正解である。
【００７７】
次に、パターンＸ3を多数決装置に与える。上記の修正後の荷重を用いて、ＷnＸ3の値を求めると、
Ｗ1Ｘ3＝１    Ｗ2Ｘ3＝１    Ｗ3Ｘ3＝０．１
となる。Ｘ3∈ＣBであるので、すべての場合において不正解である。よって、荷重を修正する必要がある。ＷnＸ3の値の小さい順に線形学習機械に優先順位番号を付与するので、Ｗ3が（１）となり、Ｗ1とＷ2は機械番号の若い順になるので、Ｗ1が（２）、Ｗ3が（３）となる。荷重を修正すると、
Ｗ1’＝Ｗ1−ｃ１・Ｘ3＝[-1 0 1 1 1 1 0]
Ｗ2’＝Ｗ2−ｃ２・Ｘ3＝[-0.1 0 1 1
1 1 0.9]
Ｗ3’＝Ｗ3−ｃ１・Ｘ3＝[-1 0 0.1 0.1
0.1 0.1 -0.9]
となる。
【００７８】
次に、パターンＸ4を多数決装置に与える。上記の修正後の荷重を用いて、ＷnＸ4の値を求めると、
Ｗ1Ｘ4＝０    Ｗ2Ｘ4＝０．９    Ｗ3Ｘ4＝−０．９
となる。Ｘ4∈ＣAであるので、Ｗ2Ｘ4は正解であり、Ｗ1Ｘ4及びＷ3Ｘ4は不正解である。よって、荷重Ｗ1及びＷ3を修正する必要があるので、優先順位番号を付与すると、Ｗ1が（１）、Ｗ3が（２）となる。荷重を修正すると、
Ｗ1’＝Ｗ1＋ｃ１・Ｘ4＝[-1 1 1 1 1 1 1]
Ｗ3’＝Ｗ3＋ｃ２・Ｘ4＝[-1 0.1 0.1
0.1 0.1 0.1
-0.8]
となる。以下同様に、パターンＸ5とＸ6について荷重を修正すると、最終的に、
Ｗ1＝[-2 0.7 0.7
0 1 0.7 -0.3]
Ｗ2＝[-0.2 -0.8 -1 1.9 1 -1 0]
Ｗ3＝[-1 1.2 -0.9 0.2 0.1 -0.9 0.3]
となる。
【００７９】
この荷重Ｗ1〜Ｗ3と、入力パターンＸ1〜Ｘ6との内積をとると、次の表のようになる。
【００８０】
【表２】
2005309920.tif 000008
この識別関数の値に基づいて、クラス識別の正誤表を作成すると、次の表が得られる。
【００８１】
【表３】
2005309920.tif 000009
全てのパターンについて、過半数の識別関数が正解を与えるので、この多数決装置は、全てのパターンを正しくクラス分類することがわかる。
【００８２】
上記の本発明の一実施例による多数決装置は、学習状態に応じて線形識別器の個数を自動的に増加させるように拡張することができる。図８は、本発明の他の一実施例による多数決装置８００の略構成図である。多数決装置８００は、図１に示された多数決装置１００と類似しているが、学習部１３１に再構成部８４１が接続されている点で相違する。図８において、図１に示された構成要素と同一又は類似した構成要素には、同じ名前と参照番号が付与されている。
【００８３】
再構成部８４１は、学習部１３１に接続され、複数個の線形識別器１１１〜１１５の各々の学習状態を監視し、学習状態が所定の条件を満たす場合、例えば、学習用入力パターンを正しく識別できるようになる前に学習回数が所定の回数に到達した場合、更なる線形識別器を追加する。例えば、本例のように５個の線形識別器が使用されている場合、再構成部８４１は、さらに２個の線形識別器を追加して、線形識別器の再学習を始動する。
【００８４】
上記の線形識別器により構成された多数決装置は、観測データを２つのクラスに分類することができる。本発明の更なる一実施例によれば、この多数決装置を組み合わせることによって、観測データを多クラスに分類できる多クラス識別装置が提供される。図９は本発明の更なる一実施例による多クラス識別装置９００の略構成図である。
【００８５】
多クラス識別装置９００は、分類すべきクラスの数Ｍに対応した個数の多数決装置９１１〜９１Ｍと、観測データを入力した複数の多数決装置９１１〜９１Ｍから出力される判定データを受け、観測データが属するクラスを決定するクラス分類部９１２と、を有する。
【００８６】
各多数決装置は、観測データが当該多数決装置に対応したクラスに属するか否かを表す判定データを出力する。この判定データは、例えば、クラスに属していることを表す＋１と、クラスに属していないことを表す−１のような離散値でもよい。クラス分類部９２１は、複数の多数決装置からの判定データの中から、例えば、他の判定データよりも大きい判定データを検出し、その判定データを出力している多数決装置に対応したクラスを観測データが属するクラスとして決定する。これにより、線形分離不可能なパターンを多クラスに分類することが可能になる。
【実施例１】
【００８７】
以下では、本発明の種々の実施例を説明する。
【００８８】
実施例１は、本発明の多数決装置を文字認識に適用した例である。パターンの特徴の抽出方法としてメッシュ法を用いる。メッシュ法とは、文字の一部が各桝目にかかっているかどうかを、１と０に対応させる方法である。１つの桝目は４つの小さな桝目に分かれる。
【００８９】
図１０は実施例１における入力パターンの説明図である。実施例１では、入力パターンとして、図１０（ａ）に示されるように、クラスＡのパターンの○の部分にある決まったルールを与え、クラスＢのパターンの×の部分にクラスＡのルールとは異なるルールを与える。例えば、糸偏の漢字と木偏の漢字が混在し、クラスＡを糸偏の漢字、クラスＢを木偏の漢字であるとするとき、糸偏の部分と木偏の部分に異なるルールを与える。このような条件の下で、クラスＡとクラスＢを識別できる荷重を決める。実施例１では、３６次元パターンで１つの文字を表現する。
【００９０】
また、同じクラスの文字を抽出するときに、それらが同じ場所にあるとは限らない。例えば、図１０（ｂ）に示されるように、文字の特徴が別々の部分に現れることがある。例えば、「言」を含む文字である「読」と「警」は、「言」の存在する場所が異なる。しかし、「読」と「警」は同じ「言」を含んでいるので１つのクラスに分類する。
【００９１】
一般に、観測できるパターンにはノイズが含まれる。例えば、「涙」と「漢」という２つの文字は、さんずい偏を使っている点で共通している。しかし、例えば、これらの文字が行書体で書かれていた場合、さんずい偏の形は異なっているであろう。また、複数の人間が同じ文字を書いた場合に、文字の形は必ずしも一致しない。このように観測パターンには、ノイズと呼ばれる不規則的な変形成分が含まれる。実施例１では、ノイズを含む場合でも同じ文字が同じクラスとして識別できるかどうかを実験した。
【００９２】
入力パターンの各成分は１と０によって構成される。桝目の一部分にルールを与える。それ以外の部分には乱数を与える。また、入力パターンのクラスの比率は、クラスＡとクラスＢが１：１となるように設定する。多数決装置は、図１又は図９に示されるような多数決装置を使用する。多数決装置の各線形識別器である線形学習機械の荷重は、ｃ＝ｃ１＝１の割合で修正する。
【００９３】
実施例１では、実験１〜実験４の４通りの実験を行った。
【００９４】
（実験１）
図１０（ａ）に示されたような○と×を識別する実験を行った。パターン数は、２０、４０、６０、８０、１００である。最初、単独の線形学習機械で実験を行い、識別できないものがあれば、ｎ＝３（線形識別器が３個）の多数決装置で実行するという、引き継ぎ型のシステムを用いて、収束する個数を調べた。
【００９５】
（実験２）
「涙」と「漢」のような同じクラスにおいてルールを与える場所を変えた。また、一方のクラスだけではなく、両方のクラスにおいてルールを与える場所を変えて実験１と同じ条件で実行し、収束個数を調べた。
【００９６】
（実験３）
ルールを与えた部分において、ある成分に対して０を１、又は、１を０とすることを、ノイズ１の付加と定義し、ノイズを付加した実験を行った。実験３では、ノイズを加えたパターンをクラスの中に半分入れた。即ち、パターン数が１００である場合、クラスＡとクラスＢは、それぞれ、５０パターンずつあるので、クラス内でノイズが付加されていないパターンが２５個、ノイズが付加されたパターンが２５個ということになる。片方のクラスにノイズを付加する実験と、両方のクラスにノイズを付加する実験と、を行った。実験１と同じ条件で収束個数を調べた。図１１は、実施例１の実験３のノイズを付加したパターンの説明図である。
【００９７】
（実験４）
実験３で使用したパターンにおいて、ルールを与える場所を変えた。図１２は、実施例１の実験４の説明図である。図１２に示されるように、クラスＡのノイズのあるパターンに対してルールを与える場所を変更し、クラスＢのノイズの無いパターンに対してルールを与える場所を変更した。
【００９８】
実験１〜実験４を実行して収束個数を調べた。最大学習回数は、１０００、５０００、１００００、５００００、１０００００とした。
【００９９】
（実験１の評価）
以下の表は、線形学習機械１の収束個数（収束する数、収束しない個数）を示している。この表は、荷重の学習回数、パターン数、収束個数の関係を表している。
【０１００】
【表４】
2005309920.tif 000010
この表からわかるように、全てのパターンにおいて、単独の線形学習機械で収束することがわかった。学習回数は、ほぼ２乃至３回であった。
【０１０１】
（実験２の評価）
一方のクラスだけで、ルールを与える場所を変えたときの実験結果は次の表の通りである。
【０１０２】
【表５】
2005309920.tif 000011
この場合も、単独の線形学習機械ですべて収束していることがわかる。学習回数は、４〜５回程度であった。
【０１０３】
次に、両方のクラスで、ルールを与える場所を変えたときの実験結果を示す。
【０１０４】
【表６】
2005309920.tif 000012
この場合も、単独の線形学習機械で収束している。学習回数は、４〜５回程度であった。
【０１０５】
実験１、２からわかるように、ノイズを加えない場合には、少ない学習回数で収束している。
【０１０６】
（実験３の評価）
実験３ではノイズを付加した。この実験では、１個の線形学習機械による実験と、３個の線形学習機械による実験を行っているが、どちらの場合でも、パターン数、最大学習回数は同じである。
【０１０７】
片方のクラス（クラスＡ）だけにノイズを付加した場合の最大学習回数、パターン数、収束個数の関係を以下の表に示す。
【０１０８】
【表７】
2005309920.tif 000013
片方のクラスだけにノイズを加えた場合、１個の線形学習機械ですべて収束した。この表で、ノイズ（Ａ，Ｂ）＝（１，０）は、クラスＡにノイズ１を加えたことを表し、ノイズ（Ａ，Ｂ）＝（２，０）は、クラスＡにノイズ２を加えたことを表している。
【０１０９】
次に、両方のクラス（クラスＡとクラスＢ）にノイズを付加した場合の実験結果を示す。
【０１１０】
【表８】
2005309920.tif 000014
この場合、パターン数１００に対して、クラスＡにノイズ５を加え、クラスＢにノイズ４を加えたときに、１個の線形学習機械では、１０万回の学習によっても収束しなかった。このときの最大学習回数と収束個数との関係を次の表に示す。
【０１１１】
【表９】
2005309920.tif 000015
この収束しなかった条件で、線形学習機械を１個から３個に増やし、多数決装置で実験を行った。多数決装置では、上述のように、学習係数として、ｃ１（＝ｃ）と、ｃ２（＝ｃ’）の２個の係数を使用する。係数ｃ２の値をどのような範囲にしたときに収束し易くなるかをみるため、係数ｃ’と正解率との関係を表を示す。正解率とは、全パターン数に対して正解の条件を満たしているパターンの割合である。ここでは、１０次元、６０パターンについて調べた。この次元とパターン数は、１個の線形学習機械では収束せず、３個の線形学習機械を用いた場合に収束するパターンが多かったものである。
【０１１２】
【表１０】
2005309920.tif 000016
この表から、ｃ’＝０．１のときに正解率が高い。したがって、１個の線形学習機械で収束しなかったパターンを、０≦ｃ’≦０．１の範囲で、３個の線形学習機械を用いて学習した。以下の表は学習結果を表している。括弧内の数字は、３個の線形学習機械で収束した数と収束しなかった数を表している。
【０１１３】
【表１１】
2005309920.tif 000017
この表は、最大学習回数、係数ｃ’、収束個数の関係を表している。ｃ’＝０．１のときには、学習回数５０００回以上で全て収束していることがわかる。
【０１１４】
（実験４の評価）
実験４では、両方のクラスのノイズのないパターンに対してルールを与える場所を変えた。このときのノイズ数、パターン数、収束個数の関係は以下の通りである。
【０１１５】
【表１２】
2005309920.tif 000018
この表から、実験３の表９と同様に、パターン数１００に対して、クラスＡにノイズ５を加え、クラスＢにノイズ５を加えたときに、１個の線形学習機械では、１０万回の学習によっても収束しなかった。このときの最大学習回数と収束個数との関係を次の表に示す。
【０１１６】
【表１３】
2005309920.tif 000019
次に、１個の線形学習装置では収束しなかったパターンに対して、３個の線形学習機械を含む多数決装置で学習を行った。このときの学習回数、係数ｃ’の値、収束個数の関係は以下の通りである。
【０１１７】
【表１４】
2005309920.tif 000020
この表から、ｃ’＝０．０５とｃ’＝０．１のときに収束していることがわかる。
【０１１８】
さらに、片方のクラスのノイズのあるパターンに対してルールを与える場所を変え、もう一方のクラスのノイズのないパターンに対してルールを与える場所を変えた場合の実験結果を示す。以下の表は、ノイズ数、パターン数、収束個数の関係を表している。
【０１１９】
【表１５】
2005309920.tif 000021
この表から、１個の線形学習機械で収束することがわかる。
【０１２０】
実験を通じて、ノイズを付加しないパターンでは、１個の線形学習機械で収束することがわかった。ノイズを付加した場合、ノイズの割合を高くし、かつ、パターン数が多いときには、１個の線形学習機械で収束しないパターンが存在した。ここで、ルールを与える場所を変更するか、変更しないかによる平均学習回数の違いを計測した。その結果は、以下の通りである。
【０１２１】
【表１６】
2005309920.tif 000022
この表からわかるように、ルールを与える場所を変更すると学習回数が増加する。
【０１２２】
（実験１〜４のまとめ）
ノイズを高い割合で付加したパターンの中には、線形分離不可能なパターンが現れ、線形学習機械では正しく識別できなかった。このような線形分離不可能なパターンに対して、３個の線形学習機械により構成された多数決装置を適用すると、全てを収束させることができた。したがって、本発明の多数決装置が線形分離不可能なパターンの識別に有効であることが示された。
【実施例２】
【０１２３】
実施例２では、単独の線形学習機械、３個の線形学習機械を含む多数決装置、５個の線形学習機械を含む多数決装置に同じパターンを与えて学習回数を比較した。
【０１２４】
（実験１）
入力パターンはｎ次元の０又は１のデータである。ｐ個のパターンをクラスＡとクラスＢに識別する。クラスＡとクラスＢに属するパターンの割合は１：１である。次元数ｎは、ｎ＝６、１０とし、パターン数ｐは、ｐ＝１２、２４、３６、４８として実験を行った。係数ｃ（＝ｃ１）の値は１、係数ｃ’（＝ｃ２）の値は、０＜ｃ’＜ｃの範囲内でｃ’＝０．１とした。１０個のパターン集合を、単独の線形学習機械、３個の線形学習機械を含む多数決装置、５個の線形学習機械を含む多数決装置のそれぞれに与えた。
【０１２５】
以下に、６次元パターンを用いた場合の、機械数、入力パターン集合、学習回数の関係を示す。
【０１２６】
【表１７】
2005309920.tif 000023
【０１２７】
【表１８】
2005309920.tif 000024
【０１２８】
【表１９】
2005309920.tif 000025
パターン数が１２のときには、線形学習機械で収束している入力パターン（例えば、１、２、６、７、８、９）が存在するが、パターン数２４、３６のとき、線形学習機械で収束したパターンは無かった。パターン数１２のとき、線形学習機械で収束しなかったパターン（パターン３〜５、１０）は、機械数３の多数決装置で収束しているので、線形学習機械を増設する引き継ぎが巧く機能していることがわかる。パターン数３６のときには、機械数３で収束したパターンの中に、機械数５の多数決装置で収束しなくなったパターンがある。パターン数が少ないときには、機械数を増加すると学習回数が減少するが、パターン数が多くなってくると、機械数を増加すると、学習回数も増加し、収束しない場合が現れてくる。
【０１２９】
次に、１０次元パターンを用いた場合の、機械数、入力パターン集合、学習回数の関係を示す。
【０１３０】
【表２０】
2005309920.tif 000026
【０１３１】
【表２１】
2005309920.tif 000027
【０１３２】
【表２２】
2005309920.tif 000028
１０次元パターンは、線形学習機械では収束しなかった。機械数が増加すると共に、学習回数も増加している。
【０１３３】
６次元パターンと１０次元パターンを比較すると、機械数に関わらず、１０次元パターンの学習回数が少ない。パターン数が同じときには、次元数の多い方の学習回数が多くなった。
【０１３４】
（実験２）
実験１と同様にｃの値は１とし、、ｃ’の値を０．１、０．０１、０．００１、０．０００１の４通りに変化させて、次元ｎ＝６、１０、パターン数１２、１４について、学習回数と機械数の関係を調べた。
【０１３５】
【表２３】
2005309920.tif 000029
【０１３６】
【表２４】
2005309920.tif 000030
【０１３７】
【表２５】
2005309920.tif 000031
【０１３８】
【表２６】
2005309920.tif 000032
【０１３９】
【表２７】
2005309920.tif 000033
【０１４０】
【表２８】
2005309920.tif 000034
係数ｃとｃ’を両方とも固定すると、パターン数の増加したとき、及び／又は、機械数が増加したときに、学習回数が増加する。この傾向は、係数ｃ’を０．１、０．０１、０．０００１、０．０００１の何れの値としたときにも現れた。
【実施例３】
【０１４１】
実施例３では、１又は０の入力パターンではなく、ニューラルネットワークにとって困難な問題であるとされている２−スパイラル問題のパターン、及び、２重円のパターンを、本発明の多数決装置によって識別する実験を行った。
【０１４２】
２−スパイラル問題のパターンは、原点の周りを周回する重なり合う２つの渦である。２つの問題に関して、半周、３／４周、１周のそれぞれの場合において、パターンを識別した。実施例３に関する図において、菱形の点はクラスＡ、三角形の点はクラスＢとして、２つのクラスに識別する。
【０１４３】
２−スパイラル問題の式は、
【０１４４】
【数５】
2005309920.tif 000035
のように表し、π／１２毎に点をプロットする。実施例３の実験の問題は全て２次元の問題であるので重みベクトルは３次元である。例えば、重みベクトルがＷ＝（ｗ1，ｗ2，ｗ3）と修正された場合、識別関数ＷＸ＝０は
ｗ1ｘ＋ｗ2ｙ＋ｗ3＝０
で表される直線となる。
【０１４５】
図１３は実施例３による渦巻きの半周のクラス識別の説明図であり、図１４は渦巻きの３／４周のクラス識別の説明図である。図１３及び１４からわかるように、渦巻きのパターンは線形識別可能ではない非線形パターンクラスである。どちらの例でも、点線で表された３本の直線によって、１つのクラスしか含まない領域に分割されていることがわかる。即ち、渦巻きの半周、及び、渦巻きの３／４周のパターンは、３個の線形学習機械を含む多数決装置によって２つのクラスに識別されている。
【０１４６】
これに対して、渦巻きの１周のパターンは、式（４）の渦巻きでは識別できなかったので、半周以降の式を、
【０１４７】
【数６】
2005309920.tif 000036
として実行した。
【０１４８】
この場合、重み修正の係数ｃを１に固定する学習規則では収束しなかった。機械数が増加したときは、係数ｃ’の値が小さいほど収束し易いという傾向がある。この傾向は、１又は０の入力パターンにおいて、線形学習機械では収束せずに、多数決装置で収束するパターンについて、係数ｃ’の値を変化させて学習回数に対する正解率を調べることによって明らかになった。そこで、係数ｃ’を０．０００１に固定し、係数ｃの方を変化させた。ｃの値を０．１＜ｃ＜２の範囲で０．１ずつ変化させると、６種類の値で収束した。図１５は実施例３による渦巻きの１周のクラス識別の説明図である。
【０１４９】
同様に、半円のクラス識別、３／４周の円のクラス識別、２重円のクラス識別を行った。図１６、１７及び１８は、それぞれ、半円、３／４周円、及び、２重円のクラス識別の説明図である。２重円のクラス識別の場合も、係数ｃ’の値を０．０００１に固定し、係数ｃを０．１＜ｃ＜２の範囲で０．１ずつ変化させたが、収束したのはｃ＝０．６のときだけであった。
【実施例４】
【０１５０】
図１９は、本発明の実施例４による多数決装置を実現するコンピュータシステム１９００のハードウェア構成を示すブロックダイヤグラムである。図１９に示すように、このコンピュータシステム１９００は、通常のコンピュータと同様の構成であり、プログラムを実行することによりシステム全体および個々の構成部分を制御するＣＰＵ１９１０、ワークデータなどを記憶するＲＡＭ(Random Access Memory)１９１２、プログラム等を記憶するＲＯＭ(Read Only Memory)１９１４、ハードディスク等の固定記憶媒体１９１６、ＣＤ−ＲＯＭ１９をアクセスするためのＣＤ−ＲＯＭドライバ２０、ＣＤ−ＲＯＭドライバ２０や外部ネットワーク（図示せず）と接続された外部端子との間に設けられたインタフェース（Ｉ／Ｆ）１９２２、キーボードやマウスからなる入力装置１９２４、ＣＲＴ表示装置１９２６を備えている。ＣＰＵ１９１２、ＲＡＭ１９１４、ＲＯＭ１９１６、外部記憶媒体１９１８、Ｉ／Ｆ１９２２、入力装置１９２４及び表示装置１９２６は、バス１９２８を介して相互に接続されている。
【０１５１】
本発明の多数決装置の学習方法を実現するプログラムは、ＣＤ−ＲＯＭ１９３０に収容され、ＣＤ−ＲＯＭドライバ１９２０に読取られても良いし、ＲＯＭ１９１６に予め記憶されていても良い。また、いったんＣＤ−ＲＯＭ１９３０から読み出したものを、外部記憶媒体１９１８の所定の領域に記憶しておいても良い。或いは、上記プログラムは、ネットワーク（図示せず）、外部端子及びＩ／Ｆ２２を経て外部から供給されるものであっても良い。
【０１５２】
また、本発明の実施例４による多数決装置は、コンピュータシステム１９００に多数決装置の学習方法を実現するプログラムを実行させることにより実現される。
【図面の簡単な説明】
【０１５３】
【図１】本発明の一実施例による多数決装置の略構成図である。
【図２】線形分離可能なパターンと線形分離不可能なパターンの説明図である。
【図３】多数決によるクラス識別の説明図である。
【図４】線形学習機械の構造の一例の説明図である。
【図５】線形学習機械の学習方法のフローチャートである。
【図６】重みベクトルの修正の説明図である。
【図７】本発明の一実施例による多数決装置の学習方法のフローチャートである。
【図８】本発明の他の一実施例による多数決装置の略構成図である。
【図９】本発明の更なる一実施例による多クラス識別装置の略構成図である。
【図１０】本発明の実施例１における入力パターンの説明図である。
【図１１】本発明の実施例１における実験３のノイズを付加したパターンの説明図である。
【図１２】本発明の実施例１における実験４の説明図である。
【図１３】本発明の実施例３による渦巻きの半周のクラス識別の説明図である。
【図１４】本発明の実施例３による渦巻きの３／４周のクラス識別の説明図である。
【図１５】本発明の実施例３による渦巻きの１周のクラス識別の説明図である。
【図１６】本発明の実施例３による２重の半円のクラス識別の説明図である。
【図１７】本発明の実施例３による２重の３／４周円のクラス識別の説明図である。
【図１８】本発明の実施例３による２重の円のクラス識別の説明図である。
【図１９】本発明の実施例４によるコンピュータシステムのブロック図である。
【符号の説明】
【０１５４】
１００，８００        多数決装置
１１１，１１２，１１３，１１４，１１５        線形識別器
１２１        多数決部
１３１        学習部
８４１        再構成部
【図１】
2005309920.tif 000037
【図２】
2005309920.tif 000038
【図３】
2005309920.tif 000039
【図４】
2005309920.tif 000040
【図５】
2005309920.tif 000041
【図６】
2005309920.tif 000042
【図７】
2005309920.tif 000043
【図８】
2005309920.tif 000044
【図９】
2005309920.tif 000045
【図１０】
2005309920.tif 000046
【図１１】
2005309920.tif 000047
【図１２】
2005309920.tif 000048
【図１３】
2005309920.tif 000049
【図１４】
2005309920.tif 000050
【図１５】
2005309920.tif 000051
【図１６】
2005309920.tif 000052
【図１７】
2005309920.tif 000053
【図１８】
2005309920.tif 000054
【図１９】
2005309920.tif 000055