(57)【特許請求の範囲】
【請求項１】
入力層ニューロン素子を複数有する入力層と、
出力層ニューロン素子を複数有する出力層と、
所定のカテゴリのうちのいずれか１のカテゴリに分類され、前記入力層の入力層ニューロン素子と結合重みＷで結合すると共に、前記出力層の出力層ニューロン素子と結合重みｗで結合する中間層ニューロン素子を、複数有する中間層と、
前記中間層の中間層ニューロン素子と結合重みｖで結合した仮説出力層ニューロン素子を複数有する仮説出力層と、
あるカテゴリについての学習を行う場合に、他のカテゴリに属する中間層ニューロン素子と、入力層ニューロン素子との結合重みＷ、および出力層ニューロン素子との結合重みｗを固定し、学習対象となるカテゴリの中間層ニューロン素子との結合重みＷ、ｗを調整することで学習を行う学習手段と、
この学習手段による学習の際に、あるカテゴリに属する学習用入力データに対して学習不可状態になった場合に、その学習用入力データが属するカテゴリの中間層ニューロン素子を追加する中間層ニューロン素子追加手段と、を備え、
前記学習手段は、複数のベクトル列Ｆｎ（ｎ＝１、２、３、…）の集合が特定のカテゴリに属する意味Ａを表すデータについて、ベクトル列Ｆｎを入力層に入力し、ベクトル列Ｆｎ＋１を第１教師信号として前記出力層に入力し、特定の意味Ａを第２教師信号として前記仮説出力層に入力することで、学習を行うことを特徴とするニューラルネットワーク。
【請求項２】
前記学習手段は、さらに学習対象となっているカテゴリの既存の中間層と入力層との結合重みＷを固定し、
前記中間層ニューロン素子追加手段による追加された新たな中間層ニューロン素子の結合重みＷとｗ、および学習対象となっているカテゴリの既存の中間層ニューロン素子の結合重みｗを調整することで学習を行う
ことを特徴とする請求項１に記載のニューラルネットワーク。
【請求項３】
それぞれ異なるカテゴリ毎に別個独立して学習が行われた複数の中間層と、
この複数の中間層の各中間層ニューロン素子と結合重みＷで結合した、入力層ニューロン素子を複数有する入力層と、
前記複数の中間層の各中間層ニューロン素子と結合重みｗで結合した、出力層ニューロン素子を複数有する出力層と、
前記入力層の入力層ニューロン素子と結合重みＷ′で結合し、前記出力層の出力層ニューロン素子と結合荷重ｗ′で結合した調整用中間層と、
前記複数の中間層における前記結合重みＷと結合重みｗを固定し、前記調整用中間層の結合重みＷ′とｗ′を調整することで、前記複数の中間層の学習に使用した学習用入力データにより、ネットワーク全体の学習を再度行う学習手段と、
この学習手段による学習の際に学習不可状態になった場合に、前記調整用中間層の中間層ニューロン素子を追加する中間層ニューロン素子追加手段と、
を具備することを特徴とするニューラルネットワーク。
【請求項４】
前記中間層の中間層ニューロン素子と結合重みｖで結合した仮説出力層ニューロン素子を複数有する仮説出力層を備え、
前記学習手段は、複数のベクトル列Ｆｎ（ｎ＝１、２、３、…）の集合が特定のカテゴリに属する意味Ａを表すデータについて、ベクトル列Ｆｎを入力層に入力し、ベクトル列Ｆｎ＋１を第１教師信号として前記出力層に入力し、特定の意味Ａを第２教師信号として前記仮説出力層に入力することで、学習を行う
ことを特徴とする請求項３に記載のニューラルネットワーク。
【請求項５】
前記中間層の中間層ニューロン素子と結合し、その出力ベクトル列が前記中間層に供給される環帰層ニューロン素子を複数有する環帰層を備え、
前記学習手段は、複数のベクトル列Ｆｎの集合が特定のカテゴリに属する意味Ａを表すデータについて、ベクトル列Ｆｎ−１に対する前記中間層または前記出力層の出力ベクトル値を前記環帰入力層に入力し、ベクトル列Ｆｎを前記入力層に入力し、ベクトル列Ｆｎ＋１を第１教師信号として前記出力層に入力し、特定の意味Ａを第２教師信号として前記仮説出力層に入力することで、学習を行う
ことを特徴とする請求項４に記載のニューラルネットワーク。
【請求項６】
前記学習手段は、バックプロパゲーション則により学習することを特徴とする請求項１から請求項５のうちのいずれか１の請求項に記載されたニューラルネットワーク。
【請求項７】
前記特定の意味Ａが音声を構成する音素であり、複数のベクトル列Ｆｎが、時系列的に解析された特定の意味Ａについての特徴量を表すベクトル列であることを特徴とする請求項４または請求項５に記載のニューラルネットワーク。
【請求項８】
前記特定の意味Ａについての特徴量を表すベクトルとして、音声のスペクトルデータ、ケプストラムデータ、または自己連想型ニューラルネットワークの中間層の出力値データを使用することを特徴とする請求項７に記載のニューラルネットワーク。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ニューラルネットワークの学習方法、ニューラルネットワークおよびニューラルネットワークを利用した音声認識装置に関する。
【０００２】
【従来の技術】
従来のニューラルネットワークでは、入力層、中間層、出力層といった階層構造に構成され、学習により各ニューロン素子相互間の結合重みを変化させるようになっている。学習は、一般にバックプロバゲーション法（誤差逆伝播法；…文献…）によっている。
従来のニューラルネットワークでは、入力層、中間層、出力層の各層を構成するニューロン素子の数は、ニューラルネットワークで検出や判定等の処理を行おうとする内容により、予め決められている。例えば○、□、△の三種類の各カテゴリに属する手書きの図形を認識する場合、出力層のニューロン素子は３個となる。また、図形を８×８に分割して入力データとする場合、入力層のニューロン素子は６４個となる。一方、中間層のニューロン素子は、経験から決める必要があるが、この数が少ないと誤認識率が高くなり、一方、多いとバックプロバゲーションによる学習時間が非常に長くなったり、学習過程において最適解に至らず局所最小点（local minimum)から抜け出せず、学習不可状態となる場合がある。なお、本明細書において、学習不可状態とは、学習時間が所定時間を越えて長くなった場合、および学習過程において最適解に至らない場合をいうものとする。また、従来のニューラルネットワークでは、例えば、○の学習が終了した後に□の学習をし、その後に△の学習を行うというように、順次学習を行うため、ある段階での学習を開始する場合、それ以前に行った学習による結合重みが変化してしまうという欠点がある。
【０００３】
そこで、中間層 (Hidden Unit)  のニューロン素子を学習の段階で最適な数まで適宜追加していく、カスケードコーリレーションによるニューラルネットワーク（以下、ＣＣＮＮという）が、カーネギーメロン大学１９９０年２月１４日発行、Scott E.Fahlman 著の技術レポート♯CMU-CS-90-100 の“The Cascade-Correlation Learning Architecture ”で提案されている。ＣＣＮＮは、初期の状態では入力層と出力層のみが存在し、学習により局所最小点に入り込んだり収束しなかった場合に、新たなニューロン素子を中間層に追加し、再度学習を繰り返すようになっている。
また、ＣＣＮＮは、入力層と中間層間の結合重み（Ｗで表す）を固定し、入力層と出力層間の結合重み（ｋで表す）と、中間層と出力層間の結合重み（ｗで表す）を調整することで、それ以前に学習した内容についてある程度記憶するようにしている。
【０００４】
【発明が解決しようとする課題】
しかし、ＣＣＮＮは、全入力データについての学習が終了するまで中間層のニューロン素子を追加していくため、学習データの量が増大するにしたがって学習時間も大幅に増加することになっていた。
また、ＣＣＮＮは、入力層と中間層間の結合重Ｗみのみ固定し、中間層と出力層間の結合重みｗは固定されずに調整可能である。このため、例えば、図形認識において図形○についての認識が終了したとしても、次の図形□の学習により結合重みｗが変化してしまうため、○についての学習内容を充分に記憶しているとはいえなかった。
【０００５】
そこで、本発明は、学習を高速で行うことができると共に、学習内容を充分に記憶することが可能なニューラルネットワークを提供することを目的とする。
【０００６】
【課題を解決するための手段】
請求項１に記載の発明では、入力層ニューロン素子を複数有する入力層と、出力層ニューロン素子を複数有する出力層と、所定のカテゴリのうちのいずれか１のカテゴリに分類され、前記入力層の入力層ニューロン素子と結合重みＷで結合すると共に、前記出力層の出力層ニューロン素子と結合重みｗで結合する中間層ニューロン素子を、複数有する中間層と、前記中間層の中間層ニューロン素子と結合重みｖで結合した仮説出力層ニューロン素子を複数有する仮説出力層と、あるカテゴリについての学習を行う場合に、他のカテゴリに属する中間層ニューロン素子と、入力層ニューロン素子との結合重みＷ、および出力層ニューロン素子との結合重みｗを固定し、学習対象となるカテゴリの中間層ニューロン素子との結合重みＷ、ｗを調整することで学習を行う学習手段と、この学習手段による学習の際に、あるカテゴリに属する学習用入力データに対して学習不可状態になった場合に、その学習用入力データが属するカテゴリの中間層ニューロン素子を追加する中間層ニューロン素子追加手段と、を備え、前記学習手段は、複数のベクトル列Ｆｎ（ｎ＝１、２、３、…）の集合が特定のカテゴリに属する意味Ａを表すデータについて、ベクトル列Ｆｎを入力層に入力し、ベクトル列Ｆｎ＋１を第１教師信号として前記出力層に入力し、特定の意味Ａを第２教師信号として前記仮説出力層に入力することで、学習を行うことを特徴とするニューラルネットワークにより前記目的を達成する。
請求項２に記載の発明では、請求項１に記載のニューラルネットワークにおいて、前記学習手段は、さらに学習対象となっているカテゴリの既存の中間層と入力層との結合重みＷを固定し、前記中間層ニューロン素子追加手段による追加された新たな中間層ニューロン素子の結合重みＷとｗ、および学習対象となっているカテゴリの既存の中間層ニューロン素子の結合重みｗを調整することで学習を行う。
請求項３に記載の発明では、それぞれ異なるカテゴリ毎に別個独立して学習が行われた複数の中間層と、この複数の中間層の各中間層ニューロン素子と結合重みＷで結合した、入力層ニューロン素子を複数有する入力層と、前記複数の中間層の各中間層ニューロン素子と結合重みｗで結合した、出力層ニューロン素子を複数有する出力層と、前記入力層の入力層ニューロン素子と結合重みＷ′で結合し、前記出力層の出力層ニューロン素子と結合荷重ｗ′で結合した調整用中間層と、前記複数の中間層における前記結合重みＷと結合重みｗを固定し、前記調整用中間層の結合重みＷ′とｗ′を調整することで、前記複数の中間層の学習に使用した学習用入力データにより、ネットワーク全体の学習を再度行う学習手段と、この学習手段による学習の際に学習不可状態になった場合に、前記調整用中間層の中間層ニューロン素子を追加する中間層ニューロン素子追加手段と、をニューラルネットワークに具備させて前記目的を達成する。
請求項４に記載の発明では、請求項３に記載のニューラルネットワークにおいて、前記中間層の中間層ニューロン素子と結合重みｖで結合した仮説出力層ニューロン素子を複数有する仮説出力層を備え、前記学習手段は、複数のベクトル列Ｆｎ（ｎ＝１、２、３、…）の集合が特定のカテゴリに属する意味Ａを表すデータについて、ベクトル列Ｆｎを入力層に入力し、ベクトル列Ｆｎ＋１を第１教師信号として前記出力層に入力し、特定の意味Ａを第２教師信号として前記仮説出力層に入力することで、学習を行う。
請求項５に記載の発明では、請求項４に記載のニューラルネットワークにおいて、前記中間層の中間層ニューロン素子と結合し、その出力ベクトル列が前記中間層に供給される環帰層ニューロン素子を複数有する環帰層を備え、前記学習手段は、複数のベクトル列Ｆｎの集合が特定のカテゴリに属する意味Ａを表すデータについて、ベクトル列Ｆｎ−１に対する前記中間層または前記出力層の出力ベクトル値を前記環帰入力層に入力し、ベクトル列Ｆｎを前記入力層に入力し、ベクトル列Ｆｎ＋１を第１教師信号として前記出力層に入力し、特定の意味Ａを第２教師信号として前記仮説出力層に入力することで、学習を行う。
請求項６に記載の発明では、請求項１から請求項５のうちのいずれか１の請求項に記載されたニューラルネットワークにおいて、前記学習手段は、バックプロパゲーション則により学習する。
請求項７に記載の発明では、請求項４または請求項５に記載のニューラルネットワークにおいて、前記特定の意味Ａが音声を構成する音素であり、複数のベクトル列Ｆｎが、時系列的に解析された特定の意味Ａについての特徴量を表すベクトル列を使用する。
請求項８に記載の発明では、請求項７に記載のニューラルネットワークにおいて、前記特定の意味Ａについての特徴量を表すベクトルとして、音声のスペクトルデータ、ケプストラムデータ、または自己連想型ニューラルネットワークの中間層の出力値データを使用する。
【０００７】
【発明の実施の形態】
以下本発明のニューラルネットワークにおける好適な実施形態について、図１から図２６を参照して詳細に説明する。
図１は第１実施形態におけるニューラルネットワークのシステム構成を表したものである。
このニューラルネットワークは、ニューロン素子網に対する学習のためのベクトル列（入力データＤ）の入力と出力層への教師信号（ベクトル列）の入力、学習による各ニューロン素子間の結合重みの変更、およびニューロン素子網からの出力信号に基づく図形認識、文字認識、音声認識等の各種処理および制御を行うＣＰＵ１１を備えている。
このＣＰＵ１１は、データバス等のバスライン１２を介して、ＲＯＭ１３、ＲＡＭ１４、通信制御装置１５、プリンタ１６、表示装置１７、キーボード１８、ニューロン素子網２２、および図形読取装置２４が接続されている。
【０００８】
ＲＯＭ１３は、ＣＰＵ１１が図形認識、文字認識、ニューロン素子網の学習等の処理や制御を行うための各種プログラムやデータが格納されているリード・オンリー・メモリである。このＲＯＭ１３には、例えば、ニューロン素子網の学習としてバックプロパゲーション則による学習を行うためのプログラムが格納されている。
ＲＡＭ１４は、ＲＯＭ１３に格納された所定のプログラムがダウンロードされ格納されると共に、ＣＰＵ１１のワーキングメモリとして使用されるランダム・アクセス・メモリである。ＲＡＭ１４には、図形読取装置２４で読み取られた画像データが格納される画像データ格納エリアが確保されている。
【０００９】
通信制御装置１５は、ニューラルネットワークで認識された文字のコード情報等の各種データについて、電話回線網、ＬＡＮ、パーソナルコンピュータ通信網等の各種の通信網２を介して他の通信制御装置との間でデータ送受信を行う。
プリンタ１６は、レーザプリンタやドットプリンタ等を備えており、入力データや認識した文字や図形等を印刷するようになっている。
表示装置１７は、ＣＲＴディスプレイや液晶ディスプレイ等の画像表示部と表示制御部とを備えており、入力データや認識した文字や図形、および、必要な各種操作の指示を画面表示するようになっている。
【００１０】
キーボード１８は、パラメータの変更や設定条件等を入力したり、文章の入力処理等を行うための入力装置であり、数字を入力するテンキー、文字を入力する文字キー、各種の機能を実現するための機能キー等が配置されている。このキーボード１８には、ポインティングデバイスとしてのマウス１９が接続されている。
図形読取装置２４は、ＣＣＤ（Charge Coupled Device ）等の素子を備えており、用紙等に記録された画像を読み取るための装置であり、この画像読取装置２４で読み取られた画像データは、ＲＡＭ１４に格納されるようになっている。
【００１１】
図２は、ニューロン素子網２の初期状態の構成を表したものである。
この図２に示すように、ニューロン素子網２２は、入力層Ｉｎと出力層Ｏｕを備えており、初期状態においては中間層（Hidden層）を備えていない。中間層を構成するニューロン素子Ｈｉは、学習の各段階において適宜追加されるようになっている。ニューロン素子網２２は、初期状態および中間層のニューロン素子が追加された各状態において、順伝播活性および逆伝播学習が可能なように構成される。
入力層Ｉｎは、Ｎ個のニューロン素子Ｉｎ１〜ＩｎＮ、およびバイアスｂで構成されている。入力層Ｉｎの各ニューロン素子Ｉｎ１〜ＩｎＮには、入力データの値が入力され、バイアスｂには、常時“＋１”が入力されるようになっている。
出力層ＯｕはＭ個のニューロン素子Ｏｕ１〜ＯｕＭで構成されている。各出力層Ｏｕのニューロン素子Ｏｕ１〜ＯｕＭ、および、追加された中間層Ｈｉのニューロン素子Ｈｉ１１〜Ｈｉｍｐは、シグモイド関数および閾値が設定されており、−１．０から＋１．０の範囲で出力されるようになっている。
【００１２】
入力層Ｉｎの各ニューロン素子Ｉｎ１〜ＩｎＮおよびバイアスｂと、出力層Ｏｕの各ニューロン素子Ｏｕ１〜ＯｕＭとは、それぞれ結合重みｋ、ｑ、ｒで結合されている。
入力層Ｉｎと出力層Ｏｕ間の各結合重みについては、学習段階において、調整可能である。図２において、調整可能な結合重みについては、○で表すことにする。一方、図２では表されていないが、固定された結合重みについては●で表すこととする。
【００１３】
ここで結合重みを表す文字について次のように定義する。入力層Ｉｎと出力層Ｏｕにおける結合重みをｋで表し、入力層Ｉｎと中間層Ｈｉにおける結合重みをＷで表し、中間層Ｈｉと出力層Ｏｕにおける結合重みをｗで表し、中間層Ｈｉ間における結合重みをｈで表す。
そして、各結合重みの後に付したｑ，ｒを次のように定義する。すなわち、ｑ、ｒに各ニューロン素子の番号を使用し、信号が流れる順に並べる。例えば、ニューロン素子Ｉｎ３０とニューロン素子Ｏｕ２５との結合重みは、Ｉｎ３０からＯｕ２５に信号が流れるので、ｋ３０，２５となる。また、ニューロン素子Ｉｎ１１とニューロン素子Ｈｉ２２との結合重みは、Ｉｎ１１からＨｉに信号が流れるので、Ｗ１１，２２となる。
また中間層Ｈｉ間の結合重みｈは、ｈｍ，（ｐ−１），ｐで表し、第ｍ中間層Ｈｉｍにおけるニューロン素子Ｈｉｍ（ｐ−１）とニューロン素子Ｈｉｍｐとの結合重みを表す。中間層のニューロン素子は、学習の各段階で順次追加されるが、ｍの値が同一である限り（この場合には、同一の教師信号が供給されている）、追加される前後のニューロン素子間でのみ結合している。
【００１４】
ニューロン素子網２２は、これらの各結合重みを格納する図示しないメモリを備えている。
図３は、このようなニューロン素子網２２の各ニューロン素子間の結合重みを格納する結合重みテーブルを表したものである。この結合重みテーブルは、図２に対応した初期状態における結合重みを表したものである。
入力層Ｉｎと中間層Ｈｉ間の結合重みＷ、中間層と出力層Ｏｕ間の結合重みｗ、および中間層Ｈｉ間の結合重みｈについては、学習の過程において、中間層Ｈｉのニューロン素子が新たに追加される毎に、ＣＰＵ１１によって確保される。そして、各結合重みを調整することで学習が行われる。各結合重みについては、結合重みｋを除き、結合重みＷ、ｗ、およびｈについては、各学習の過程におい所定の学習を行う間調整され、他の学習を行う際には固定されるようになっている。
【００１５】
次に、このように構成された実施形態について、○、□、△の三種類の図形についての学習動作について説明する。
認識対象となる三種類の図形の各々を特定するための符号として、それぞれ３ビットの符号で表し、これを学習時の教師信号とする。すなわち、出力層Ｏｕに供給される教師信号として、入力データが○の場合Ｏｕ１〜Ｏｕ３の順に“１００”、□の場合“０１０”、△の場合“００１”をそれぞれ供給する。
学習に使用する入力データとしては、各図形についてｇ個の図形○１〜○ｇ、□１〜□ｇ、△１〜△ｇを使用する。ｇ個の各図形については、手書きによるそれぞれ異なった形状が使用される。
【００１６】
図４は、学習データとしての図形○１を表したものである。
この図４に示すように、図形○１について縦１０×横１０＝１００個の領域に分割し、各領域に図形○の線分が含まれている場合には“１”、含まれていない場合には“０”を、それぞれ入力データＤ１〜Ｄ１００の値とする。
例えば、Ｄ１〜Ｄ１３等の領域には線分が含まれていないので“０”となり、Ｄ１４、Ｄ１５等の領域には線分が含まれているので“１”となる。
これらの各入力データＤ１〜Ｄ１００の値が、学習時に、それぞれ入力層Ｉｎ１〜Ｉｎ１００に供給される。
【００１７】
これらｇ個の図形○１〜ｇ、□１〜ｇ、△１〜ｇのそれぞれについての入力データＤ１〜Ｄ１００について、予めＲＯＭ１３に格納されたものを使用する。
また、通信制御装置１２を介して他の装置から受信し、これをてＲＡＭ１４に格納した後に使用するようにしてもよい。更に、手書きした各図形について、読取装置２４で読み取り、各図形毎に入力データＤ１〜Ｄ１００を作成してＲＡＭ１４に格納するようにしてもよい。
【００１８】
図５は、３種類の図形認識についての学習を行うためのニューロン素子網２２の構成表したものである。
この図５（ａ）に示すように、学習前の段階において中間層は未だ追加されていない。一方、入力層Ｉｎは、入力データＤ１〜Ｄ１００に対応して、１００個のニューロン素子Ｉｎ１〜Ｉｎ１００を有している。また、入力層Ｉｎのバイアスｂには、常時“＋１”のバイアスが加えられている。そして、出力層Ｏｕは、認識対象となる３種類の図形を３ビットの符号で表すことに対応して、３個のニューロン素子Ｏｕ１〜Ｏｕ３を有している。
また、図５（ｂ）に示すように、結合重みテーブルがニューロン素子網２２内に確保される。
なお、図２で説明したように、○印で表した入力層Ｉｎと出力層Ｏｕ間の結合重みｋ１，１〜ｋｂ，３については、学習段階において調整可能であり、●印で表される結合重みは固定されており調整できない。
【００１９】
図６は、学習動作の詳細を表したフローチャートである。なお、図形○１〜○ｇをＺ＝１〜ｇで表し、図形□１〜□ｇをＺ＝ｇ＋１〜２ｇで表し、図形△１〜△ｇをＺ＝２ｇ＋１〜３ｇで表すものとする。
まずニューラルネットワークについての学習を行う場合、ユーザは、最初にキーボード１８を操作することにより、または表示装置１７に表示された所定キーをマウスにより操作することにより、学習モードを指定する。
【００２０】
学習モードが指定されると、ＣＰＵ１１は、Ｚ、ｍ、ｐについて、Ｚ＝ｍ＝１、ｐ＝０に初期設定を行う（ステップ１１）。
次にＣＰＵ１１は、図形Ｚに対応する入力データＤ１〜Ｄ１００及び、図形Ｚに対応する教師信号（Ｚ＝１の場合、図形○に対する教師信号“１００”）を読み込む（ステップ１２）。
【００２１】
そして、ＣＰＵ１１は、読み込んだ入力データ、バイアスｂ（＋１）、教師信号および、ニューロン素子網２２の結合重みテーブルに格納されている結合重みから、学習処理を行う（ステップ１３）。
すなわち、ＣＰＵ１１は、図形Ｚについての学習用入力データＤ１〜Ｄ１００及びバイアスｂを入力層Ｉｎの各ニューロン素子Ｉｎ１〜Ｉｎ１００に入力した場合の出力層Ｏｕの各ニューロン素子Ｏｕの出力値を求める。この出力値と図形Ｚに対する教師信号との誤差δが最小値になる、調整可能な結合重み（ｐ＝０の場合にはｋのみ、ｐ＝１の場合にはＷ、ｗおよびｋ、ｐ≧２の場合にはＷ、ｈ、ｗおよびｋ）を、ＣＰＵ１１は求める。
例えば、図５（ｂ）に示すように、中間層Ｈｉがまだ追加されていない場合（ｐ＝０）、調整可能な結合重みとして、結合重ｋ１，１〜ｋｂ，３のみが求められる。
【００２２】
ここで、本実施形態において、行われる学習はバックプロパゲーション則による学習が行われる。学習式は、δｗ（ｔ）＝〔Ｓ（ｔ）／〔Ｓ（ｔ−１）−Ｓ（ｔ）〕〕×δｗ（ｔ−１）であり、式の詳細および学習アルゴリズム（ＴｈｅＱｕｉｃｋｐｒｏｐ  Ａｌｇｏｒｉｔｈｍ）は、カーネギーメロン大学１９８８年９月発行、Ｓｃｏｔｔ  Ｅ．Ｆａｈｌｍａｎ著の技術レポート♯ＣＭＵ−ＣＳ−８８−１６２の“Ａｎ  Ｅｍｐｉｒｉｃａｌ  Ｓｔｕｄｙ  ｏｆ  Ｌｅａｒｎｉｎｇ  Ｓｐｅｅｄ  ｉｎ  Ｂａｃｋ−Ｐｒｏｐａｇａｔｉｏｎ  Ｎｅｔｗｏｒｋｓ”に記載されている。
また、エルマン（Ｊ．Ｌ．Ｅｌｍａｎ）による、Ｆｉｎｄｉｎｇ  ｓｔｒｕｃｔｕｒｅ  ｉｎ  ｔｉｍｅ，Ｃｏｇｎｉｔｉｖｅ  ｓｃｉｅｎｃｅ，１４，ｐｐ．１７９−２１１（１９９０）に記載されている、離散時間のリカレントネットワークに、フィードフォワードネットワークのバックプロパゲーション則を準用した学習則でもよい。
また、学習については以上の方法に限定されず、他の学習則によってもよい。
【００２３】
そして、ＣＰＵ１１は、学習処理により求めた結合重みを用いた場合の誤差δの値が所定値以下になっているか否かについて判断する（ステップ１４）。
誤差δが所定値以下になっていない場合（ステップ１４；Ｎ）、ＣＰＵ１１は、結合重みテーブルの値をステップ１３で求めた結合重みＷ、ｈ、ｗ、ｋに更新することなく、ｐに１を加えた後（ステップ１５）、中間層Ｈｉの新しいニューロン素子Ｈｉｍｐを追加する（ステップ１６）。この新しいニューロン素子Ｈｉｍｐは、第ｍ中間層を構成する。
新たなニューロン素子Ｈｉｍｐの追加により、ニューロン素子網と結合重みテーブルには、調整可能な結合重みＷ，ｈ，およびｗが新しく確保される。なお、ｐ＝１の場合には、中間層Ｈｉにおけるニューロン素子間の結合重みｈは確保されない。
新しく追加されたニューロン素子Ｈｉｍｐには、出力層Ｏｕのニューロン素子と同様に、シグモイド関数および閾値が設定されており、−１．０から＋１．０の範囲で出力されるようになっている。
【００２４】
図７は、新しいニューロン素子Ｈｉｍｐ＝Ｈｉ１１を追加したニューロン素子網（ａ）、および、結合重みテーブル（ｂ）を表したものである。
この図７（ａ）に示すように、新たなニューロン素子Ｈｉ１１は、図形○１についての第１中間層を構成する。そして、新しいニューロン素子Ｈｉ１１と、入力層Ｉｎのニューロン素子Ｉｎ１〜Ｉｎ１００およびバイアスｂとの結合重みＷ１，１１〜Ｗ１００，１１、Ｗｂ，１１がニューロン素子網と結合重みテーブルに確保される。また、ニューロン素子Ｈｉ１１と出力層Ｏｕのニューロン素子Ｏｕ１〜Ｏｕ３との結合重みｗ１１，１〜ｗ１１，３も確保される。
図７（ａ）でも○印で示されるように、これら新たな結合重みＷとｗは、共に調整可能な結合重みである。
【００２５】
ステップ１６において、新しいニューロン素子Ｈｍｐが追加された後、ＣＰＵ１１は、既設のニューロン素子Ｈｉｍ（ｐ−１）についての結合重みＷ，ｈを固定（それ以後は更新できない状態）する（ステップ１７）と共に、Ｚの値を１に戻した後（ステップ１８）、ステップ１２に移行する。これにより、調整可能な中間層のニューロン素子Ｈｉｍｐよって新たな構成となったニューロン素子網により、図形Ｚ＝１（最初の図形○１）から再度の学習処理を行う。
ただし、再度の学習処理であっても、ニューロン素子網は、それまでに学習した内容の一部について、固定された結合重みＷの値として記憶している。従って、例えば、図形Ｚ＝８の学習で誤差δが所定値以下にならなくなった場合でも、図形Ｚ＝７までの学習内容の一部を、ニューロン素子Ｈｉｍ（ｐ−１）についての結合重みＷとして記憶しているので、再度の学習における図形Ｚ＝７までの学習処理（ステップ１３）を容易に終了させることができる。
【００２６】
一方、ステップ１４において誤差δが所定値以下である場合（ステップ１４；Ｙ）、ＣＰＵ１１は、結合重みテーブルの調整可能な結合重みをステップ１３で求めた値に更新する（ステップ１９）。そして、次の図形についての学習を行うためにＺに１を加える（ステップ２０）。
そして、次の図形が他の形状か否かについてＺの値を確認する（ステップ２１）。すなわち、Ｚ＝ｇ＋１（次の図形が□）、または、Ｚ＝２ｇ＋１（次の図形が△）でない場合（ステップ２１；Ｎ）、ＣＰＵ１１は、Ｚ＝３ｇ＋１であるか否かを判断する（ステップ２２）。
Ｚ≠３ｇ＋１であれば（ステップ２２；Ｎ）、全図形についての学習がまだ終了していないので、ステップ１２に戻り、次の図形Ｚについての学習処理を行う。
【００２７】
図８、図９は、第１中間層のニューロン素子が更に追加された状態を表したものである。
図７に示すように第１中間層のニューロン素子Ｈｉ１１が追加された後、ステップ１２、１３、１４、１９、２０、２１、２２により、各図形Ｚについて順次学習が繰替えされ、結合重みテーブルの内容について更新される。
そして、ある図形Ｚ（図形○）についての学習において、誤差δが所定値以下にならなくなると、図８に示すように、次のニューロン素子Ｈｉ１２が新たに追加される。すなわち、結合重みテーブルに、ニューロン素子Ｈｉ１２についての調整可能な結合重みＷ１，１２〜Ｗ１００，１２、Ｗｂ，１２、ｈ１，１，２、および、ｗ１２，１、〜ｗ１２，３が確保される。ここで、ｈｍ，ｐ−１，ｐは、第ｍ中間層のニューロン素子Ｈｍ（ｐ−１）とＨｍｐとの結合重みである。中間層間の結合重みは、Ｈｍ（ｐ−１）とＨｍｐ間でのみ確保され、Ｈｍ（ｐ−２）とＨｍｐ間や、ＨｍｐとＨ（ｍ＋１）１との間では確保されない。
新たなニューロン素子Ｈｉ１２の追加によって、図８（ａ）の●で表されるように、既設ニューロン素子Ｈｉ１１と入力層との結合重みＷ１，１１〜Ｗ１００，１１、Ｗｂ，１１が固定される。なお、既設ニューロン素子Ｈｉ１１と出力層との結合重みｗ１１，１〜ｗ１１，３は○で表されるように固定されず、調整可能な状態である。
【００２８】
同様に、図８に示すように、入力層Ｉｎ、第１中間層Ｈｉｍ、および出力層Ｏｕの各ニューロン素子間の固定された結合重みと調整可能な結合重みを用い、調整可能な結合重みの値を調整することで、以降の図形Ｚ（≦ｇ）についての学習（ステップ１２、１３、１４、１９、２０、２１、２２）を順次繰り返す。そして、ある図形Ｚの学習において再び誤差δが所定値以下にならなくなると、第１中間層Ｈｉ１には、図９に示すように再びニューロン素子Ｈｉ１３が確保される。
この図９に示すように、ニューロン素子Ｈｉ１３の追加により、ニューロン素子Ｈｉ１１とＨｉ１２間の結合重みｈ，１，２も固定される。すなわち、一般に、新たなニューロン素子Ｈｉｍｐが追加された場合、ｐ≧３であれば、ニューロン素子Ｈｉｍ（ｐ−２）とＨｉｍ（ｐ−１）との間で確保された結合重みｈｍ，ｐ−２，ｐ−１の値も固定される。
【００２９】
図９に示すように、第１中間層Ｈｉ１に３つめのニューロン素子Ｈｉ１３が追加されると、同様にして、以降の図形Ｚ（≦ｇ）についての学習を順次繰替えする。
そして、図６のフローチャートにおけるステップ２１においてＺ＝ｇ＋１（次の図形が□）、またはＺ＝２ｇ＋１（次の図形が△）であると判断した場合（；Ｙ）、ＣＰＵ１１は、ニューロン素子Ｈｉｍｐの結合重みＷ，ｈを固定すると共に、第ｍ中間層Ｈｉｍのニューロン素子Ｈｉｍ１〜Ｈｉｍｐと出力層Ｏｕとの全結合重みｗを固定する（ステップ２３）。
さらにＣＰＵ１１は、ｍに１を加えると共に、ｐの値を再び１に設定した後（ステップ２４）、新たな中間層Ｈｉｍについて新ニューロン素子Ｈｉｍｐを追加し（ステップ２５）、ステップ１２に移行する。
【００３０】
このように、次に学習する図形が他の図形に変わる場合、現時点での中間層Ｈｍｐでの学習が可能であっても、第ｍ中間層Ｈｉｍについての結合重みＷ、ｈ、ｗを固定し、第ｍ＋１中間層Ｈｉ（ｍ＋１）のニューロン素子Ｈｉ（ｍ＋１）１を追加する。
図１０は、第２中間層のニューロン素子Ｈｉ２１を新たに追加した状態を表したものである。
この図１０に示すように、第１中間層Ｈｉ１のニューロン素子Ｈｉ１１、Ｈｉ１２、Ｈｉ１３によるＺ＝ｇ（図形○ｇ）までの学習が完了すると、更に、次のＺ＝ｇ＋１の図形（図形□１）についての学習が可能であっても、第１中間層Ｈｉ１についての全結合重みＷ、ｈおよび、出力層Ｏｕとの結合重みｗを固定する。
そして、第２中間層Ｈｉ２についてのニューロン素子Ｈｉ２１を新たに追加し、次の図形□１〜□ｇまでの学習を行う。
【００３１】
このように、図形○についての学習が終了した段階で、図形○に対応する第１中間層Ｈｉ１についての全ての結合重みＷ１，１１〜Ｗ１００，１３、Ｗｂ，１１〜Ｗｂ，Ｗ１３、ｈ１，１，２、ｈ１，２，３、ｗ１１，１〜ｗ１３，３、を固定する（図１０において●で表す）ことで、図形○１〜○ｇについて学習した内容を完全に記憶させることができる。
すなわち、図形□についての学習により、図形○について学習した内容が変化することがない。従って、図形○についての認識率を高くすることができる。
【００３２】
図１０において、新たに第２中間層Ｈｉ２のニューロン素子Ｈｉ２１を追加することで、Ｚ＝ｇ＋１以降の図形、すなわち図形□１以降の図形についての学習を開始する。そして、図７〜図９で説明したと同様に、ある図形Ｚ（ｇ＋１≦Ｚ≦ｇ）についての学習処理により誤差δが所定値以下となったら、新たなニューロン素子Ｈｉ２２、Ｈｉ２３、…、を追加してゆく。
【００３３】
なお、図１０において、図形□１（Ｚ＝ｇ＋１）の学習で入力データＤ１〜Ｄ１００を入力層Ｉｎに入力した場合、出力層Ｏｕへは、第２中間層Ｈｉ２から出力値（結合重みｗを掛けた値）だけでなく、第１中間層Ｈｉ１からの出力値（結合重みｗを掛けた値で、例えばＰとする）も供給されることになる。
従って、図形□の学習では、図形□の認識と共に、各入力値に対する第１中間層Ｈｉ１からの出力値Ｐを打ち消して“０”にするための学習も行われる。すなわち、最初に図形□を学習した場合、その中間層から出力される出力値に比べて、“−Ｐ”だけ小さい値が出力されるようになる。
【００３４】
図形□１〜□ｇ（Ｚ＝ｇ＋１〜２ｇ）について、第１中間層Ｈｉ１についての固定した結合重みＷ、ｈ、ｗと共に、第２中間層Ｈｉ２の各ニューロン素子Ｈｉ２ｐについての固定した、および調整可能な結合重みＷ、ｈ、ｗによって学習を行う。この図形□の学習についても、図形○についての学習と同様に、ある図形Ｚの学習で誤差δが所定値以下とならない場合に（ステップ１４）新たなニューロン素子Ｈｉ２ｐを追加し（ステップ１５〜ステップ１８）、次の図形についての学習を行う。
そして、ステップ２１でＺ＝２ｇ＋１の場合、既に固定されている第１中間層Ｈｉ１の全結合重みＷ、ｈ、ｗと共に、第２中間層Ｈｉ２についての全結合重みＷ、ｈ、ｗを固定する（ステップ２３）。そして、次の図形△についての学習を行うための第３中間層Ｈｉ３のニューロン素子Ｈｉ３１を追加し（ステップ２５）、図形△１〜△ｇ（Ｚ＝２ｇ＋１〜３ｇ）についての学習を行う。
この場合においても、図形△の入力データＤ１〜Ｄ１００の入力により、第１中間層Ｈｉ１と第２中間層Ｈｉ２からの出力値Ｐ′が出力されるため、これを打ち消して“０”にするための学習も行われる。すなわち、最初に△を学習した場合に比べて、“−Ｐ′”だけ小さい値が出力されるように、第三中間層Ｈｉ３の学習が行われる。
【００３５】
図６のステップ２２において、Ｚ＝３ｇ＋１である場合（；Ｙ）、全ての図形○１〜○ｇ、□１〜□ｇ、△１〜△ｇについての学習が完了したので、ＣＰＵ１１は、最後に追加したニューロン素子Ｈｉｍｐの結合重みＷ，ｈを固定すると共に、第ｍ中間層Ｈｉｍのニューロン素子Ｈｉｍ１〜Ｈｉｍｐと出力層Ｏｕとの全結合重みｗを固定する（ステップ２６）。
その後、入力層Ｉｎと出力層Ｏｕ間の結合重みｋを固定して（ステップ２７）、学習処理を終了する。
図１１は、全図形についての学習が終了後におけるニューロン素子網と結合重みテーブルの状態を表したものである。この図１１において●で示すように、全入力データについての学習が終了すると、結合重みテーブルに格納されている各ニューロン素子間の結合重みは全て固定された状態となる。
【００３６】
このようにして三種類の図形○、□、△について各ｇ個のデータによる学習が終了すると、以後手書き等による三種類の図形を認識することができる。
まず、図形が記載された用紙を図形読取装置２４で読み取り、入力データＤ１〜Ｄ１００を作成しＲＡＭ１４に格納する。ＣＰＵ１１は、入力データＤ１〜１００をニューロン素子網２２の入力層Ｉｎ１〜Ｉｎ１００に入力し、結合重みテーブルに格納された結合重みを用いた順伝播活性により出力層Ｏｕのニューロン素子Ｏｕ１〜Ｏｕ３の出力値を求める。
ＣＰＵ１１は、出力された３ビットの値から、読み込んだ図形の認識を行う。すなわち、ＣＰＵ１１は、３ビットの出力値の各々について、所定の閾値を適用することで、各出力値を“０”または“１”の２ビットで表し、これが教師信号と一致するか否かを判断する。“１００”であれば図形○、“０１０”であれば図形□、“００１”であれば図形△であると認識し、認識した形状を表示装置１７の画面に、形状名と図形形状で表示する。なお、出力がこれら教師信号以外である場合には、表示装置１７に認識不能であることを表示する。
【００３７】
次に、ニューラルネットワークを音声認識システムに適用した第２実施形態について説明する。
図１２は、ニューラルネットワークを利用した音声認識装置のシステム構成を表したものである。なお、第１実施形態と同一または機能的に略同一である部分については、同一の符号を付して適宜その説明を省略し、または異なる部分についてのみ説明することとする。
【００３８】
この音声認識装置は、ＣＰＵ１１を備えており、データバス等のバスライン１２を介して、ＲＯＭ１３、ＲＡＭ１４、通信制御装置１５、プリンタ１６、表示装置１７、キーボード１８、ＦＦＴ（高速フーリエ変換）装置２１、およびニューロン素子網２２が接続されている。
【００３９】
第２実施形態におけるＲＯＭ１３には、さらに、ＣＰＵ１１が音声認識やニューロン素子網の学習等の処理や制御を行うための各種プログラムやデータが格納されている。また、ニューロン素子網の学習としてバックプロパゲーション則等による各種学習を行うためのプログラムや、音声認識を行うための８０種類の音素についての符号列が格納されている。この音素についての符号列が第２教師信号として使用されると共に、ニューロン素子網の出力信号から音素を認識する場合に使用される。またＲＯＭ１３には、認識した音素から音声を認識すると共に、認識した音声を文字による文章に変換する日本語変換システムのプログラムも格納されている。
【００４０】
第２実施形態におけるＲＡＭ１４では、さらに、ＦＦＴ装置２１で解析された音声信号について、各時間と各周波数におけるパワーを一時格納するためのベクトル列格納エリアが確保されている。なお、この各周波数におけるパワーの値が、ニューロン素子網の音声入力層Ｉｎに入力されるベクトル列になる。
また、表示装置１７は、入力データや認識した音声の内容、および、音声認識に必要な操作の指示を画面表示するようになっている。
キーボード１８は、ＦＦＴ装置２１のパラメータの変更や設定条件等を入力したり、文章の入力処理等も行うようになっている。
【００４１】
ＦＦＴ装置２１には、マイク等の音声入力装置２３が接続されている。このＦＦＴ装置２１は、音声入力装置２３から入力されたアナログの音声データを、ディジタルデータに変換すると共に、離散的フーリエ変換によりスペクトル解析を行う。このＦＦＴ装置２１におけるスペクトル解析により、各周波数毎のパワーによるベクトル列が、各時間毎に出力され、この各時間毎のベクトル列はＲＡＭ１４のベクトル列格納エリアに格納されるようになっている。
【００４２】
図１３はニューロン素子網２２の初期状態の構成を表したものである。また、図１４は、音素「ａ」の学習が終了し、音素「ｉ」の学習途中におけるニューロン素子網２２の状態を表したものである。
図１３に示すように、初期状態においてニューロン素子網２２は、音声入力層Ｉｎと音声出力層Ｏｕおよび仮説出力層（Hypothesis層）Ｈｙを備えている。
また図１４に示すように、第ｍ中間層Ｈｉｍを構成するニューロン素子Ｈｉｍｐ、および、第ｍ環帰入力層Ｃｏｍを構成するニューロン素子Ｃｏｍｐの１対が追加される。新たなニューロン素子ＨｉｍｐとＣｏｍｐは、学習の各段階において誤差δが所定値以下にならない場合に追加されるようになっている。なお、第ｍ中間層Ｈｉｍと第ｍ環帰入力層Ｃｏｍは、各音素毎に新たに確保され、その添字“ｍ”の値は各音素毎に１が加えれらた値となる。
【００４３】
ニューロン素子網２２は、初期状態および、中間層Ｈｉと環帰入力層Ｃｏのニューロン素子が追加された各状態において、順伝播活性および逆伝播学習が可能なように構成される。
【００４４】
中間層Ｈｉ、音声出力層Ｏｕ、および仮説出力層Ｈｙの各ニューロン素子は、シグモイド関数および閾値が設定されており、−１．０から＋１．０の範囲で出力されるようになっている。
一方、環帰入力層Ｃｏのニューロン素子Ｃｏｍｐは、対応する中間層Ｈｉのニューロン素子Ｈｉｍｐの時刻ｔ−１に対する出力値を記憶するようになっており、記憶した値を時刻ｔに対して出力するようになっている。
【００４５】
この実施形態の音声認識装置において、音声入力層Ｉｎは、Ｉｎ１〜Ｉｎ３０の３０個のニューロン素子およびバイアスｂを備えている。バイアスｂには、常時“＋１”が入力されるようになっている。
音声出力層Ｏｕは音声入力層Ｉｎと同数でＯｕ１〜Ｏｕ３０の３０個のニューロン素子を備えている。仮説出力層Ｈｙは、認識対象となる８０個の音素に対応する符号化が可能な数として８個のニューロン素子Ｈｙ１〜Ｈｙ８を有している。
【００４６】
なお、仮説出力層Ｈｙのニューロン素子数は、認識対象となる音声が日本語以外の外国語の場合に、その言語に応じた音素数と、その音素数の符号化に必要な数のニューロン素子が使用される。また、日本語の音素として必ずしも８０に限定する必要はなく、他の分類による音素数およびニューロン素子数を使用してもよい。
また、音素数と同一のニューロン素子を仮説出力層５８に具備させてもよい。すなわち、音素数が８０個の場合、ニューロン素子も各音素に対応してＨｙ１〜Ｈｙ８０の８０個を仮説出力層Ｈｙに具備させる。そして、第２教師信号として、音素「ａ」の場合「１００００…０」、音素「ｉ」の場合「０１０００…０」というように、各音素に対応するビット（ニューロン素子）のみを“１”とし他のビットを“０”とする。こうすることで、学習処理の負担は増加するが、学習後の音声認識において、他の音素との区別を容易に行うことができるようになる。
【００４７】
図１４に示すように、音声入力層Ｉｎと音声出力層Ｏｕは結合重みｋで結合され、音声入力層Ｉｎと仮説出力層Ｈｙは結合重みｕで結合されている。また、音声入力層Ｉｎと中間層Ｈｉは結合重みＷで結合され、中間層Ｈｉと中間層Ｈｉは結合重みｈで結合され、中間層Ｈｉと環帰入力層Ｃｏは結合重みｓで結合され、中間層Ｈｉと音声出力層Ｏｕは結合重みｗで結合され、中間層Ｈｉと仮説出力層Ｈｙは結合重みｖで結合されている。
環帰入力層Ｃｏと中間層Ｈｉとは、第ｍ環帰入力層Ｃｏｍと第ｍ中間層Ｈｉｍとのニューロン素子間でのみ結合している。
中間層Ｈｉは、第１実施形態と同様に、第ｍ中間層Ｈｉｍにおけるニューロン素子Ｈｉｍ（ｐ−１）とニューロン素子Ｈｉｍｐとの間でのみ結合している。
【００４８】
これら各結合重みに付す番号については、第１実施形態と同様に、信号が流れる順とする。環帰入力層Ｃｏと中間層Ｈｉ間では前者から後者に信号が流れるので、例えば、ニューロン素子Ｃｏ１４とＨｉ１２間の結合重みは、ｓ１４，１２となる。
また、ｈ４，２，３は、第４中間層Ｈｉ４のニューロン素子Ｈｉ４２とＨｉ４３との結合重みである。
【００４９】
結合重みｋとｕは、全学習過程において調整可能である。
結合重みＷ、ｈ、ｓについては、中間層Ｈｉおよび環帰入力層Ｃｏのニューロン素子の新たな追加に伴い確保された結合重みが調整可能であり、既設のニューロン素子についての結合重みが固定される。
また、異なる音素についての学習が開始される場合、すなわち、第ｍ中間層Ｈｉｍ、第ｍ環帰入力層Ｃｏｍにおいてｍ＝ｍ＋１となる場合、および、全学習が終了する場合に、第ｍ中間層Ｈｉｍとの全結合重みｗ、ｖが固定される。ｍの値が変らず、ｐの値のみが変化している間は、第ｍ中間層Ｈｉｍとの結合重みｗ、ｖは調整可能である。
図１４でも示されるように、第２実施形態のニューロン素子網２２を図示する場合、第１実施形態と同様に、調整可能な結合重みについては○で表し、固定された結合重みについては●で表す。
【００５０】
ニューロン素子網２２は、これらの各結合重みを格納する図示しないメモリを備えている。
図１５は、図１４に示す状態のニューロン素子網２２における結合重みテーブルを表したものである。
図１４および図１５に示すように、ニューロン素子網２２は、中間層Ｈｉとして、第１中間層Ｈｉ１のニューロン素子Ｈｉ１１〜Ｈｉ１４と、第２中間層Ｈｉ２のニューロン素子Ｈｉ２１〜Ｈｉ２３までが追加された状態である。また、環帰入力層Ｃｏとして、第１環帰入力層のニューロン素子Ｃｏ１１〜Ｃｏ１４と第２環帰入力層Ｈｉ２のニューロン素子Ｈｉ２１〜Ｈｉ２３までが追加された状態である。
ニューロン素子網２２は、ニューロン素子網２２は、最初の音素、例えば「ａ」についての学習が４つのニューロン素子からなる第１中間層Ｈｉ１および第１環帰入力層Ｃｏ１の追加によって完了し、更に、次の音素、例えば「ｉ」についての学習を行っている途中であることがわかる。
【００５１】
このニューロン素子網の学習時において、ＦＦＴ装置２１でスペクトル解析された時間ｔにおける音声のベクトル列が順次音声入力層Ｉｎに入力される。
第ｍ環帰入力層Ｃｏｍの各ニューロン素子Ｃｏｍ１〜Ｃｏｍｐは、第ｍ中間層の１つ前の出力値を記憶するようになっている。すなわち、１つ前の時間ｔ−１に対する学習が終了して調整可能な結合重みが更新された後に、時間ｔ−１のデータを音声入力層Ｉｎに入力することで第ｍ中間層Ｈｉｍの各ニューロン素子Ｈｉｍ１〜Ｈｉｍｐから出力される値が、それぞれ第ｍ環帰入力層Ｃｏｍの各ニューロン素子Ｃｏｍ１〜Ｃｏｍｐに記憶される。この時間ｔ−１における第ｍ中間層Ｈｉｍの出力値が、時刻ｔに対する学習において、第ｍ環帰入力層Ｃｏｍから出力され、対応する結合重みｓを掛けた値が第ｍ中間層に入力されるようになっている。
【００５２】
一方、音声出力層Ｏｕには、次に音声入力層Ｉｎに与えられることになる時間ｔ＋１のベクトル列が第１教師信号として入力される。
仮説出力層Ｈｙには、時間ｔにおける前後の時間間隔で音声入力層Ｉｎに入力されるベクトル列が表す特定の意味Ａ（本実施形態では、認識されるべき音素）を仮説する符号列が第２教師信号として入力される。
【００５３】
このように、第２実施形態では、音声入力層Ｉｎに現在（時間ｔ）のベクトル列を入力し、中間層Ｈｉにおける過去（時間ｔ−１）のベクトル値を環帰入力層Ｃｏに入力すると共に、音声出力層Ｏｕに未来（時間ｔ＋１）のベクトル列を入力している。このため、各音素についてスペクトル解析された各パワーＰ（ｔｎ）によるベクトル列についての時系列的な関係が学習されることになる。すなわち、音声入力層Ｉｎ、中間層Ｈｉ、および音声出力層Ｏｕの各結合重みは、過去、現在、未来にわたる時系列的な関係を含めた値に学習される。
また、同一の音素についての各パワーＰ（ｔｎ）が音声入力層Ｉｎに入力されて学習を行う際、仮説出力層Ｈｙには常時同一の第２教師信号を入力して学習を行っている。これによって、入力されるベクトル列の時系列的な関係と共に、そ関係を有する音素（符号列）が仮説的に学習される。
このため、音声認識を行う場合に、スペクトル解析された音声についてのベクトル列が音声入力層Ｉｎに入力されると、そのベクトル列の時系列的な関係をも考慮されたベクトル列が仮説出力層Ｈｙから出力されることになる。
【００５４】
さらに、第２実施形態においても第１実施形態と同様に、学習の各段階において誤差δが所定値以下にないない場合に、中間層のニューロン素子Ｈｉｍｐと環帰入力層のニューロン素子Ｃｏｍｐを追加することで学習を進めるので、音声認識のように学習すべき入力データの量が非常に多い場合であっても、学習処理時間を短くすることができる。
また、各音素に対する学習が終了する毎に、第ｍ中間層Ｈｉｍと第ｍ環帰入力層Ｃｏｍに対する結合重みＷ、ｈ、ｖ、ｗが固定されるので、次の音素に対する学習を行っても、それ以前の学習内容を忘却することなく記憶させることができる。従って、各音素に対する認識率を向上させることができる。
【００５５】
図１６は、第２教師信号テーブルの内容を表したものである。
この図１６に示すように、第２教師信号は、８０個の各音素に対応して、音素「ａ」が「１００００００」、音素「ｉ」が「０１００００００」、音素「ｕ」が「００１０００００」、…、というように、各８ビットの符号列で規定されている。この第２教師信号が表す符号の各ビットは、仮説出力層Ｈｙの各ニューロン素子Ｈｙ１〜Ｈｙ８に供給される。この各音素に対する第２教師信号は、ＲＯＭ１３に格納されている。
なお、図１６に示した第２教師信号の各符号列は、本実施形態における例示であり、他の符号列を使用してもよい。また、音素数に応じて仮説出力層Ｈｙのニューロン素子数が決定されるが、そのニューロン素子数に応じたビット数で表現するようにしてもよい。
【００５６】
次に、このように構成された第２実施形態における動作について説明する。
▲１▼ニューラルネットワークの学習
まずニューラルネットワークについての学習を行う場合、ユーザは、最初にキーボード１８を操作することにより、または表示装置１７に表示された所定キーをマウスにより操作することにより、学習モードを指定する。
学習モードを指定した後、ユーザは、予め決められた８０の音素に対応する文字を順次キーボード１８から入力した後に、その音素についての音声を音声入力装置２３に入力する。なお、入力すべき音素を表示装置１７に表示することで、発声すべき音素を順次知らせるようにしてもよい。
音声入力装置２３では、例えば音素「ａ」について、図１７（ａ）に示すようなアナログ信号が入力されると、これをＦＦＴ装置２１に供給する。ＦＦＴ装置２１では、供給されたアナログ音声データを、例えば２２ＫＨｚでサンプリングし、１６ビットのＰＣＭデータにＡ／Ｄ変換し、図示しない記憶部に格納する。
【００５７】
次いでＦＦＴ装置２１では、方形窓、ハミング（Ｈａｍｍｉｎｇ）窓、ハニング（Ｈａｎｎｉｇ）窓等の時間窓の形や、ポイント数（例えば５１２ポイント）等のパラメータに従って、各時間ｔｎ（ｎ＝１、２、…）毎に、高速フーリエ変換（ＦＦＴ）処理によりディジタル音声データ「ａ」についてのスペクトル解析を行う。すなわち、ＦＦＴ装置２１は、図１７（ｂ）に示すように、各時間ｔｎ毎における音声データの、各周波数（Ｆ１〜Ｆ３０）に対するパワーＰ（ｔｎ）を算出する。この各周波数のパワーＰ（ｔｎ）によるベクトル列は、図１８に示すように、各時間毎に、ＲＡＭ１４のベクトル列格納エリアに格納される。
【００５８】
入力された音素について、ＦＦＴ装置２１によるスペクトル解析が終了すると、ＣＰＵ１１は、ＲＡＭ１４に格納したベクトル列に従ってニューロン素子網２２の学習を行う。
いま、最初の音素「ａ」の時間ｔｎにおける学習について説明する。
ＣＰＵ１１は、まず、時間ｔｎの学習開始する前の第１中間層Ｈｉ１のニューロン素子Ｈｉ１１〜Ｈｉ１ｐの状態、すなわち、時間ｔｎ−１についての学習が終了した時点での第１中間層Ｈｉ１におけるベクトル列を、第１環帰入力層Ｃｏ１の対応するニューロン素子Ｃｏ１１〜Ｃｏ１ｐに入力する。
そしてＣＰＵ１１は、音素「ａ」についての時間ｔｎにおけるベクトル列Ｐ（ｔｎ）をＲＡＭ１４から読み出し、音声入力層Ｉｎの各ニューロン素子Ｉｎ１〜Ｉｎ３０に入力する。
また、時間ｔｎの次の時間ｔｎ＋１につてのベクトル列Ｐ（ｔｎ＋１）を第１教師信号として音声出力層Ｏｕのニューロン素子Ｏｕ１〜Ｏｕ３０に入力すると共に、入力された音素「ａ」について、図１５に示す符号列「１０００００００」を第２教師信号として仮説出力層Ｈｙの各ニューロン素子Ｈｙ１〜Ｈｙ８に入力する。
【００５９】
音声入力層Ｉｎへのベクトル列の入力、および音声出力層Ｏｕと仮説出力層Ｈｙへの教師信号の入力が済むと、ＣＰＵ１１は、結合重みテーブルに格納されている音声入力層Ｉｎ、中間層Ｈｉ、環帰入力層Ｃｏ、音声出力層Ｏｕ、および仮説出力層Ｈｙの各ニューロン素子間の結合重みＷ、ｈ、ｓ、ｗ、ｖ、ｋ、ｕを用いて学習を行い、調整可能な結合重みを学習後の値に更新する。
なお、本実施形態において行われる学習は、第１実施形態と同様に各種の学習則が使用可能である。
【００６０】
時間ｔについての音素「ａ」の学習が終了すると、次に時間ｔ＋１についての学習を行う。この場合、時間ｔｎのときと同様にして、ｔｎについての学習が終了した時点での第１中間層Ｈｉ１のベクトル列を第１環帰入力層Ｃｏ１に記憶させ、時間ｔｎ＋１のベクトル列Ｐ（ｔｎ＋１）をＲＡＭ１４から読み出して音声入力層Ｉｎに入力する。また、時刻ｔｎ＋２のベクトル列Ｐ（ｔｎ＋２）を第１教師信号として音声出力層Ｏｕに入力する。
一方、仮説出力層Ｈｙには、入力された音素「ａ」についての学習が行われている間、「ａ」についての同一の符号「１０００００００」が継続的に第２教師信号として入力される。
【００６１】
この時刻ｔ＋１についての学習において誤差δが所定値以下にならない場合、第１実施形態と同様に、第１中間層Ｈｉ１と第１環帰入力層Ｃｏ１には、新たなニューロン素子Ｈｉ１ｐとニューロン素子Ｃｏ１ｐが追加される。そして、既設のニューロン素子Ｈｉ１（ｐ−１）とＣｏ１（ｐ−１）の結合重みＷ、ｈ、ｓを固定し、ニューロン素子の追加により確保された調整可能な結合重みＷ、ｈ、ｓ、および結合重みｗ、ｖ、ｋ、ｕを調整することで、音素「ａ」についての学習を繰り返す。
【００６２】
音素「ａ」についての全ての学習が終了すると、音素「ａ」の学習で確保された第１中間層Ｈｉ１と第１環帰入力層Ｃｏ１についての全結合重み、Ｗ、ｈ、ｓ、およびｗ、ｖを固定する。
そして、次の音素「ｉ」の学習を行うために、第２中間層Ｈｉ２と第２環帰入力層Ｃｏ２についてニューロン素子Ｈｉ２１とＣｏ２ｐ１を追加し、以後、誤差δが所定値以下にならない毎に新たなニューロン素子Ｈｉ２ｐ、Ｃｏ２ｐ（ｐ≦２）を追加する。
【００６３】
新たなニューロン素子Ｈｉ２ｐ、Ｃｏ２ｐにおけるｐ＝３の状態が図１４で表したニューロン素子網２２の状態である。図１４に示すように、新たなニューロン素子Ｈｉ２３、Ｃｏ２３の追加によって、既設のニューロン素子Ｈｉ２２とＣｏ２２に対する結合重みＷ１，２２〜Ｗ３０，２２、Ｗｂ，２２、結合重みｈ２，１，２、結合重みｓ２１，２２、ｓ２２，２２、ｓ２２，２１が新たに固定される。
そして、結合重みテーブルには、新たに追加されたＨｉ２３とＣｏ２３に対する結合重みＷ１，２３〜Ｗ３０，２３、Ｗｂ，２３、結合重みｈ２，２，３、結合重みｓ２１，２３，ｓ２２，２３、ｓ２３，２３、ｓ２３，２２、ｓ２３，２１が、調整可能な結合重みとして確保される。また、結合重みｗ２３，１〜ｗ２３，３０と、結合重みｖ２３，１〜ｖ２３，８も調整可能な結合重みとして確保する。
【００６４】
ここで、第２実施形態における学習も第１実施形態と同様に、結合重みを固定した第１中間層Ｈｉ１からの出力は、次の音素「ｉ」の学習において雑音として入力されるが、次の音素「ｉ」の学習において、この雑音をマイナスすることも含めた結合重み（固定されていないもの）に調整され、更新される。
同様に、次の音素として「ｕ」を学習する場合には、結合重みを固定した音素「ａ」の第１中間層Ｈｉ１と音素「ｉ」の第２中間層Ｈｉ２からの雑音をマイナスすることも含めて学習が行われる。
このように第２実施形態におけるニューロン素子網では、１対の第ｍ中間層Ｈｉｍと第ｍ環帰入力層Ｃｏｍが各音素毎に設けられ、他の中間層や環帰入力層と完全に切り離されると共に、学習が完了した音素に対する全結合重みを固定しているので、各音素に対応する学習を高速に行うことができる。
【００６５】
以後同様にして、第ｍ中間層Ｈｉｍの各ニューロン素子Ｈｉｍｐ、および第ｍ環帰入力層Ｃｏｍの各ニューロン素子Ｃｏｍｐを順次追加しながら、「ｉ」、「ｕ」、「ｅ」、「ｏ」等の全ての音素についての学習を行う。
８０個の全音素についての学習が完了すると、ニューロン素子網２２は、中間層と環帰入力層は、第１中間層Ｈｉ１〜第８０中間層Ｃｏ８０と、第１環帰入力層Ｃｏ１〜第８０環帰入力層Ｃｏ８０が存在することになる。各第ｍ中間層Ｈｉｍと各第ｍ環帰入力層Ｃｏｍのニューロン素子の数は、各音素に対する学習段階において、それぞれ必要個だけ追加される。
【００６６】
▲２▼入力音声の認識
以上の学習が終了した後、音声入力装置２３から、例えば音声「まえ」が入力されたものとする。すると、ＦＦＴ装置２１で入力音声についてのスペクトル解析が行われる。
そして、ＣＰＵ１１は、時間ｔｎ−１にける中間層Ｈｉのベクトル列を環帰入力層Ｃｏに入力した後、現在の時間ｔｎにおける各周波数のパワーから成るベクトル列Ｐ（ｔｎ）を音声入力層Ｉｎに入力する。ＣＰＵ１１は、音声入力層Ｉｎと中間層Ｈｉとの各結合重み（図４）をニューロン素子網２２のメモリから読み出し、各結合重みと音声入力層Ｉｎの各入力値とから、中間層Ｈｉの各ニューロン素子Ｈｉ〜Ｈｉ２００の出力値を算出し、ニューロン素子網２２の図示しないメモリに格納される。この中間層Ｈｉのベクトル値は、次の時間ｔｎにおけるベクトル列Ｐ（ｔｎ＋１）が入力される前に環帰入力層Ｃｏに入力される。
【００６７】
次に、ＣＰＵ１１は、ニューロン素子網２２の図示しないメモリから、格納した中間層Ｈｉの出力値と、中間層と仮説出力層Ｈｙとの結合重みとを読み出し、両者の値から、仮説出力層Ｈｙの各ニューロン素子Ｈｙ１〜Ｈｙ８の出力値を求める。そして、各ニューロン素子Ｈｙ１〜Ｈｙ８の出力値と、ＲＯＭ１３に格納されている第２教師信号テーブルの各符号列と照合することで、該当する音素を特定し、特定した音素をＲＡＭ１４に格納する。
【００６８】
この音素は、各音素について複数のベクトル列Ｐ（ｔｎ）に解析され、時系列的に音声入力層Ｉｎに入力されて特定されるため、複数の音素列となる。例えば、音声「いろ」が入力された場合には、「ｉｉｉｉｉｒｒｒｏｏｏｏｏ」となる。そこで、ＣＰＵ１１は、このＲＡＭ１４に格納された音素列から、入力された音声を「ｉｒｏ」と認識する。
そしてＣＰＵ１１は、キーボード１８からの入力指示がある場合には、認識した音声を日本語変換システムに従って、文字による文章に変換する。変換した文章は、表示装置１７に表示されると共にＲＡＭ１４に格納される。また、キーボード１８からの指示に応じて、通信制御装置５および通信網２を介して、パーソナルコンピュータやワードプロセッサ等の各種通信制御装置にデータ伝送を行う。
【００６９】
図１９は、音声「まえ」についての各音素の特定結果を表したものである。なお、学習段階において、第２教師信号として仮説出力層Ｈｙに入力する各音素の符号として図１６のベクトル列を採用したものとする。また、各ニューロン素子Ｈｙ１〜Ｈｙ８の出力は、所定の閾値を越えた場合に出力され、閾値以下の場合には出力されず図１９では、記号「−」で示されている。
この図１９の最右欄に示すように、各時間ｔｎにおけるベクトル列の入力に対応して音素「ｍ」、「ａ」、「ｅ」を特定することができる。この音素から入力された音声が「まえ」であると認識することができる。
【００７０】
この図１９に示したように、各時間ｔｎにおけるニューロン素子Ｈｙ１〜Ｈ８の出力によって特定された各音素列から、音声を特定する場合、同一の音素が複数個以上、例えば４個以上連続的に特定されている場合に、その音素を有効と見なして、音声認識を行う。例えば、図１９において、時間ｔ１で特定された音素「ｍ」と時間ｔ３５で特定された音素「ｅ」は、４個以上連続していないため、音声認識を行う対象から除外される。
なお、４子以上連続的に特定された場合だけでなく、他に、２個、３個、５個、１０個等の他の数だけ連続的に特定された場合にその音素が有効であると判断するようにしてよもい。更に、音素が有効であると判断するための個数を、利用者の選択により、キーボードから指定することができるようにしてもよい。
【００７１】
なお、図１９の最右欄の「？」で示すように、音声を認識する場合、スペクトル分析されたベクトル列が入力された当初と、各音素から音素に変化する場合において、音素を特定できない場合があるが、その後継続的に特定される音素によって容易に音声を認識することができる。
スペクトル分析されたベクトル列が入力された当初に音素を特定できない場合があるのは、学習段階において、過去、現在、未来による時系列的な関係を含めて学習しているのに対して、入力当初は過去の時系列的関係を含む情報が充分でない為であると考えられる。
また、各音素の変化時において音素を特定できないのは、学習段階において、個々の音素単位での学習を行っており、各音素同士の時系列的関係については学習の対象になっていないためであると考えられる。
【００７２】
第２実施形態によれば、各音素のスペクトルの時系列的な関係について学習されているため、学習のための音素を発声する者と異なる者の音声も正確に認識することができた。従って、不特定話者認識を行うことができる。
【００７３】
また、音素単位での音声認識を行う場合に従来から認識すべき音素の開始点をどのようにして正確に決定するかが問題であったが、第２実施形態によれば、音素の開始点を特定する必要がない。
また、音素単位による連続音声認識を行う場合に、各個人差が大きい各音素の発声時間に関係なく、音声を認識することができる。例えば、音声として「はーる」というように、音声「は」をのばして発声した場合であっても、「ｈｈｈｈｈ…ａａａａａａａａａａａａａａ…ｒｒｒｒ…ｕｕｕｕｕ…」というように、音素「ａ」が多く特定されるだけで、容易に音声「はる」と認識することができる。
【００７４】
また、第２実施形態では、各音素に対し複数の時間ｔｎにおける複数のベクトル列Ｐ（ｔｎ）が入力され、各時間毎に音素を特定している。このため、連続音声認識において、各音素状態が前に現れる音素の状態により影響を受けていても、各音素から音素に変化する場合に音素の特定ができない状態、すなわち、図１９の最右欄の「？」が多少増えるだけである。そして、その後に同一の音素が継続的に特定されるため、連続音声認識であっても容易に音声を認識することができる。
【００７５】
以上説明した第２実施形態のニューロン素子網２２では、図１４で示したように環帰入力層Ｃｏと中間層Ｈｉとを結合重みｓで結合するようにしたが、図２０示されるように、各環帰入力層Ｃｏのニューロン素子の値を、対応する中間Ｈｉのニューロン素子に供給するようにしてもよい。すなわち、各中間層Ｈｉ１〜Ｈｉ８０を構成する各ニューロン素子は、自己の値をフィードバックして入力するように構成する。
従って、時間ｔにおける入力を処理する場合、各中間層Ｈｉのニューロン素子には、音声入力層Ｉｎからの時間ｔに対する入力の他に、時間ｔ−１における自己の出力値も、環帰入力層Ｃｏのニューロン素子からフィードバックして入力される。一方、環帰入力層Ｃｏには、時間ｔにおける各中間層Ｈｉのニューロン素子からの出力値が入力される。
ニューロン素子網２２をこのように構成することで、時間ｔ−１における過去の情報も考慮しつつ、環帰入力層Ｃｏと中間層Ｈｉ間の結合重みｓの計算が不要となるので、処理を早くすることができる。
【００７６】
更に、以上説明した第２実施形態では、中間層Ｈｉのデータをフィードバックさせるリカレント型のニューラルネットワークとしたが、本発明では、環帰入力層Ｃｏのないニューロン素子網としてもよい。この場合、時間ｔのベクトル列を音声入力層Ｉｎに入力し、次の時間ｔ＋１のベクトル列を第１教師信号として音声出力層Ｏｕに入力し、時間ｔｎの集合が表す特定の意味Ａを第２教師信号として仮説出力層Ｈｙに入力する。
環帰入力層がない場合、過去（時間ｔ−１）の情報に基づく時系列的な関係までは学習されない。しかし、局所的ではあるが、現在（時間ｔ）と未来（ｔ＋１）による時系列的関係を学習しているため充分に音声を認識することができる。環帰入力層がない場合には、学習および音声認識の処理が軽減され、処理速度を早くすることが可能になる。
【００７７】
第２実施形態では、入力されるベクトル列の時系列的な関係と共に、その関係を有する音素（符号列）を仮説的に学習することで、音声を認識するようにしたが、本発明では、時系列的関係を有する音声に限定されるものではなく、互いに所定の関係を有する複数のベクトル列Ｆｎ（ｎ＝１、２、３、…）の集合が表す特定の意味についての学習とその認識や予測について利用することができる。
例えば、音声認識以外に、運動の時系列パターン発生の学習とその予測を行うようにしてもよい。
また、時系列的な場合だけでなく、空間的関係や、周波数的関係を有する複数のベクトル列の集合が特定の意味を有する場合の、学習と認識を行うようにしてもよい。例えば、文字が有する空間的関係について学習することで、文字認識を行うようにしてもよい。
【００７８】
さらに、第２実施形態では、音素単位の音声認識について説明したが、単語単位で音声認識するようにしてもよい。この場合、ベクトル列が表す特定の意味としてその単語を表す符号列が第２教師信号として使用される。
【００７９】
また、本実施形態では、ＲＯＭ１３に格納した学習プログラムに従ってＣＰＵ１１でニューロン素子網２２の学習を行い、学習後のニューロン素子網２２による音声認識を行うようにしたが、不特定話者の連続音声認識を高い認識率で行うことが可能であるので、再学習の必要が少ない。従って、音声認識装置としては、必ずしも学習機能を有する必要がなく、他の装置の学習で求めた結合重みを有する、音声入力層Ｉｎ、環帰入力層Ｃｏ、中間層Ｈｉ、仮説出力層Ｈｙからなるニューロン素子網を使用するようにしてもよい。
この場合、ニューロン素子網を、学習済みの結合重みを有するハードウェアで構成してもよい。
【００８０】
また、以上説明した第２の施例では、ＦＦＴ装置における高速フーリエ変換によって、学習時の各音素と音声認識時の音声についてのスペクトル解析を行ったが、他のアルゴリズムによりスペクトル解析を行うようにしてもよい。例えば、ＤＣＴ（離散コサイン変換）等によるスペクトル解析を行ってもよい。
【００８１】
更に、以上説明した第２実施形態では、各音素を学習する場合に、例えば母音である音素「ａ」について１種類の学習を行う場合について説明したが、本発明では、複数種類について学習するようにしてもよ。例えば、音素「ａ」について、母音の「ａ」の他に、「ｍａ」、「ｎａ」、「ｋａ」等の各音声から音素「ａ」の部分を切り出して音素「ａ」の学習を行うようにしてもよい。また、子音の場合も同様に、音素「ｍ」であれば、「ｍａ」、「ｍｉ」、「ｍｕ」等の各音声から音素「ｍ」を切り出し、それぞれについて学習を行う。これにより、他の色々な音素と接続された場合について学習が行われ、認識率が向上する。
【００８２】
以上説明した、第１および第２実施形態では、音声／入力層Ｉｎにバイアスｂを設け、音声／入力層Ｉｎと音声／出力層Ｏｕとを結合重みｋで結合させ、第２実施形態では、更に音声入力層Ｉｎと仮説出力層Ｈｙとを結合重みｕで結合させる構成としたが、本発明では他の構成としてもよい。
すなわち、バイアスｂが無い構成としてもよい。また、音声／入力層Ｉｎと音声／出力層Ｏｕとを結合させず、第２実施形態では、更に音声入力層Ｉｎと仮説出力層Ｈｙとを結合させないようにしてもよい。
なお、バイアスｂと結合重みｋ、第２実施形態の場合更に結合重みｕが無い場合、ニューロン素子網２２は、初期状態において、第１中間層Ｈｉのニューロン素子Ｈｉ１１、第２実施形態の場合更に第１環帰入力層Ｃｏのニューロン素子Ｃｏ１１を学習可能な状態で具備させておく。
【００８３】
また、本実施形態では、学習過程において、結合重み結合重みｋを他の結合重みとを同等に扱ったが、本発明では、結合重みｋの比重を他の結合重みよりも小さくするようにしてもよい。例えば、結合重みｋの範囲を他の結合重みの１／２、１／３、１／４、１／５等にしてもよい。
【００８４】
また、第１および第２実施形態において、第ｍ中間層Ｈｉｍと、音声／出力層Ｏｕとの結合重みｗ、第２実施形態の場合更に仮説出力層Ｈｙとの結合重みｖについては、異なる図形、音素についての学習を開始する場合、すなわち、ｍの値がｍ＋１になる場合に、一括して固定する構成としている。
本発明では他に、第ｍ中間層Ｈｉｍと音声／入力層Ｉｎとの結合重みＷの場合と同様に、ｍの値が同一でも、新たなニューロン素子Ｈｉｍｐが追加されるときに、既設のニューロン素子Ｈｉｍ（ｐ−１）に対する結合重みｗｍ（ｐ−１），１〜ｗｍ（ｐ−１），３０と、結合重みｖｍ（ｐ−１），１〜ｖｍ（ｐ−１），８を固定するようにしてもよい。そして、追加した第ｍ中間層Ｈｉｍのニューロン素子Ｈｉｍｐに対する結合重みｗｍｐ，１〜ｗｍｐ，３０と、結合重みｖｍｐ，１〜ｖｍｐ，８を調整可能な結合重みとする。
【００８５】
第１および第２実施形態では、ＲＯＭ１３に格納した学習プログラムに従ってＣＰＵ１１でニューロン素子網２２の学習を行い、学習後のニューロン素子網２２は、高い認識率で図形認識や音声認識等を行うことが可能であるので、再学習の必要が少ない。特に、音声認識の場合、不特定話者の連続音声認識を高い認識率で行うことが可能であるり再学習の必要が少ない。
従って、図形認識装置や音声認識装置としては、必ずしも学習機能を有する必要がなく、他の装置の学習で求めた結合重みを有する、環帰入力層Ｃｏ、中間層Ｈｉ、仮説出力層Ｈｙからなるニューロン素子網を使用するようにしてもよい。この場合、ニューロン素子網を、学習済みの結合重みを有するハードウェアで構成してもよい。
【００８６】
第１および第２実施形態の変形例として、各音素に対応する１対の中間層と環帰入力層毎の学習を別々のコンピュータシステム等を使用して別個独立に行い、各学習終了後に、各中間層と環帰入力層の対を組み合わせて、ニューロン素子網２２を構成するようにしてもよい。
この場合、例えば第２実施形態であれば、各中間層は対応する音素についてだけ独立して学習しているため、他の音素に対する中間層による雑音をマイナスすることも含めた学習が行われていない。
そこで、各音素の雑音をマイナスする信号が音声出力層Ｏｕと仮説出力層Ｈｙに入力されるような、調整用中間層Ｈｉ８１（８１個目の中間層）と調整用環帰入力層Ｃｏ８１（８１個目の環帰入力層）を別個付加する必要がある。そして、既に学習した各第１中間層Ｈｉ１〜第８０中間層Ｈｉ８０（８０音素の場合）の結合重みを固定した状態で、全ての音声について再度学習を行う。
【００８７】
この場合、付加した調整用中間層Ｈｉ８１からの出力は、雑音をマイナスする値となる。例えば、音素「ａ」を再学習する場合、音素「ａ」に対応する第１中間層Ｈｉ１を除いた他の中間層Ｈｉ２〜Ｈｉ８０（各結合重みは固定されている。）からの出力の合計がプラスマイナスゼロとなるような値が、調整用中間層Ｈｉ８１から出力されるように、調整用中間層Ｈｉ８１と調整用環帰入力層Ｃｏ８１の結合重みが学習される。この学習においても、調整ができなくなった段階で、調整用中間層Ｈｉ８１と調整用環帰入力層Ｃｏ８１のニューロン素子Ｈｉ８１ｐ、Ｃｏ８１ｐを順次追加し、ニューロン素子Ｈｉ８１（ｐ−１）の結合重みＷ、ｈを固定する。
なお、各音素や図形等の学習を個別に行い、中間層と環帰入力層の対を組み合わせてニューロン素子網２２を構成する場合、調整用の環帰入力層Ｃｏ８１を設けず、調整用中間層Ｈｉ８１のみを設けるようにしてもよい。
【００８８】
次に第３実施形態について説明する。
第２実施形態では音声認識においてＦＦＴ２１で解析されたスペクトルデータを入力層に入力するデータとしたのに対して、この第３実施形態では、ケプストラムデータを入力することで音声認識を行うようにしたものである。
図２１は、第３実施形態におけるニューラルネットワークのシステム構成を表したものである。この図に示すように、ニューラルネットワークでは、第２実施形態のシステムに更にケプストラム装置２６を備えている。
なお、その他の部分については第２実施形態と同様なので、同一の番号を付してその説明を省略する。また、ニューロン素子網２２については、第１実施形態および第２実施形態で説明したニューロン素子網２２だけでなく、さらに第１および第２実施形態の変形例として説明したニューロン素子網２２の、いずれのニューロン素子網２２を適用することも可能である。
ケプストラム装置２６は、ＦＦＴ装置２１におけるスペクトル解析された波形の短時間振幅スペクトルの対数を逆フーリエ変換することで、ケプストラムデータを得るものである。このケプストラム装置２６により、スペクトル包絡と微細構造とを近似的に分離して抽出することができる。
【００８９】
ここで、ケプストラムの原理について説明する。
いま、音源と音道のインパルス応答のフーリエ変換をそれぞれ、Ｇ（ω）Ｈ（ω）で表すと、線型分離透過回路モデルにより、
Ｘ（ω）＝Ｇ（ω）Ｈ（ω）
の関係が得られる。この式の両辺の対数をとると、次の数式（１）となる。
ｌｏｇ｜Ｘ（ω）｜＝ｌｏｇ｜Ｇ（ω）＋ｌｏｇ｜Ｈ（ω）｜…（１）
さらに、この数式（１）の両辺の逆フーリエ変換をとると次の数式（２）になり、これがケプストラムである。
0003737841.tif 000002
ここでτの次元は、周波数領域からの逆変換であるから時間になり、ケフレンシーとよばれる。
【００９０】
次に基本周期と包絡線の抽出について説明する。
数式（１）の右辺第１項はスペクトル上の微細構造であり、第２項はスペクトル包絡線である。両者の逆フーリエ変換には大きな違いがあり、第１項は高ケフレンシーのピークとなり、第２項は０から２〜４ｍｓ程度の低ケフレンシー部に集中する。
高ケフレンシー部を用いてフーリエ変換することによって対数スペクトル包絡線が求まり、更に、それを指数変換すればスペクトル包絡線が求まる。
求まるスペクトル包絡線の平滑さの度合いは、低ケフレンシー部のどれだけの成分を用いるかによって変化する。ケフレンシー成分を分離する操作をリフタリングと呼ぶ。
【００９１】
図２２は、ケプストラム装置２６の構成を表したものである。
このケプストラム装置２６は、対数変換部２６１と、逆ＦＦＴ部２６２と、ケプストラム窓２６３と、ピーク抽出部２６４と、ＦＦＴ部２６５とを備えている。
なお、ケプストラム窓２６３、ピーク抽出部２６４と、ＦＦＴ部２６５は、ニューロン素子網２２の入力層に供給するデータとして、逆ＦＦＴ部２６２で求めたケプストラムデータを使用する場合には不要であり、スペクトル包絡をニューロン素子網２２の入力データとして使用する場合に必要となる。
また、ＦＦＴ部２６５については、必ずしも必要ではなく、ＦＦＴ装置２１を使用するようにしてもよい。
【００９２】
対数変換部２６１は、ＦＦＴ２１から供給されるスペクトルデータＸ（ω）から、数式（１）に従って対数変換を行い、ｌｏｇ｜Ｘ（ω）｜を求め、逆ＦＦＴ部２６２に供給する。
逆ＦＦＴ部２６２では、供給された値について、更に逆ＦＦＴをとり、ｃ（τ）を算出することで、ケプストラムデータを求める。逆ＦＦＴ部２６２では、求めたケプストラムデータを、音声データについての学習または音声認識を行う入力データＩｎとして、第１実施形態または第２実施形態で説明したニューロン素子網２２の入力層に供給するようになっている。ニューロン素子網２２に入力する入力データＩｎの数については、音声認識に併せて任意に選択された入力層のニューロン素子数と同数が選択される。すなわち、図１３に示したニューロン素子網２２の場合、入力層Ｉｎのニューロン素子が３０あるので、ケフレンシー（τ）軸を３０分割し、各ケフレンシー毎のパワーの値を入力データＩｎ１〜Ｉｎ３０として、入力層に供給する。
この逆ＦＦＴ部２６２で求めたケプストラムデータを入力層に供給するのが、第３実施形態における第１例である。
【００９３】
次に、第３実施形態における第２例について説明する。
この第２例では、ケプストラム窓２６３において求めたケプストラムデータに対してリフタリングを行うことで、ケフレンシー成分を高ケフレンシー部と低ケフレンシー部に分離する。
分離された低ケフレンシー部は、ＦＦＴ部２６５において、フーリエ変換することによって対数スペクトル包絡線が求められ、更に、指数変換することでスペクトル包絡線が求められる。このスペクトル包絡データから、周波数軸軸をニューロン素子の数に対応して分割し、各周波数毎のパワーの値を入力層Ｉｎに供給する。
【００９４】
なお、ケプストラム窓２６３で分離された、低ケフレンシー部のケプストラムデータを入力データとして入力層Ｉｎに供給するようにしてよもい。
また、分離された高ケフレンシー部のケプストラムデータから、ピーク抽出部２６４で基本周期を抽出し、これを、ＦＦＴ部２６５で求めたスペクトル包絡のデータと共に入力データの１つとして使用してもよい。こ場合、入力層Ｉｎのニューロン素子数がＮ個とすると、スペクトル包絡のデータから（Ｎ−１）の入力データＩｎ１〜Ｉｎ（Ｎ−１）を入力層Ｉｎに入力し、基本周期のデータから入力データＩｎＮを入力層Ｉｎに入力する。
【００９５】
以上説明したように、第３実施形態によれば、音声データにいてのケプストラムデータを使用することで、パワースペクトルよりも一層音声の特徴を捕らえたデータを認識対象とするので、認識率が向上する。
なお、第３実施形態では音声認識について説明したが、画像データのケプストラムデータを使用して画像認識を行うようにしてもよい。この場合の画像データは、画像読取装置２４で読み取られた画像データ、および通信制御装置１５で受信した画像データのいずれを用いてもよい。
【００９６】
次に第４実施形態について説明する。
第３実施形態では、ニューロン素子網２２の入力層Ｉｎへの入力データとしてケプストラムデータ用いたが、この第４実施形態では、入力データとして、自己連想（オートアソシエーション）型ニューラルネットワークにおける中間層のデータを用いるものである。
【００９７】
図２３は、第４実施形態における自己連想型ＮＮ（ニューラルネットワーク）を用いたニューラルネットワークのシステム構成を表したものである。この図に示すように、ニューラルネットワークでは、第２実施形態のシステムに更に、自己連想型ＮＮ２７を備えている。
第４実施形態におけるＲＡＭ１４は、ニューロン素子網２２用の入力データを格納するベクトル列格納エリアの外に、さらに自己連想ＮＮ用ベクトル列格納エリアが確保されている。
なお、その他の部分については第２実施形態と同様なので、同一の番号を付してその説明を省略する。また、ニューロン素子網２２については、第１実施形態および第２実施形態で説明したニューロン素子網２２だけでなく、さらに第１および第２実施形態の変形例として説明したニューロン素子網２２の、いずれのニューロン素子網２２を適用することも可能である。
【００９８】
図２４は、自己連想型ＮＮの構成を表したものである。
この図２４に示すように、自己連想型ＮＮは、入力層ＡＩと中間層ＡＨおよび出力層ＡＯの３層を備えている。
入力層ＡＩは、音声認識や、図形認識等の各種処理に対応して任意に選択される入力データ数ｐに応じた数ｐ個のニューロン素子ＡＩ１〜ＡＩｐを備えている。
中間層ＡＨは、入力層ＡＨのニューロン素子の数ｐ個よりも少ない数ｐ個のニューロン素子ＡＨ１〜ＡＨｑ（ｑ＜ｐ）を備えている。
出力層ＡＯは、入力層ＡＨと同数ｐ個のニューロン素子ＡＯ１〜ＡＯｐを備えている。
【００９９】
中間層ＡＨの各ニューロン素子ＡＨ１〜ＡＨｑは、入力層ＡＩの全ニューロン素子との間で、学習時に変更可能な結合重みＡＷ１１〜ＡＷｐｑで完全結合している。
また中間層ＡＨの各ニューロン素子ＡＨ１〜ＡＨｑは、それぞれ学習段階で変更可能な閾値を備えている。
中間層ＡＨの各ニューロン素子ＡＨ１〜ＡＨｑは、入力層ＡＩに入力された入力データと、結合重みＡＷと、閾値に基づいて、順伝播活性による出力値を出力するようになっている。このＡＨ１〜ＡＨｑの出力値は、ニューロン素子網２２の入力層Ｉｎに入力する入力データＳｔとして出力されるようになっている。
また、出力層ＡＯの各ニューロン素子ＡＯ１〜ＡＯｐは、中間層ＡＨの全ニューロン素子ＡＨ１〜ＡＨｑとの間で、学習時に可変な結合重みＡｗ１１〜Ａｗｑｐで完全結合している。そして、各ニューロン素子ＡＯ１〜ＡＯｐは、中間層ＡＨの出力値Ｓｔと結合重みＡｗとから、自己連想型ＮＮの出力値を出力するようになっている。
【０１００】
自己連想型ＮＮ２７は、図示しないメモリを備えており、このメモリに入力層ＡＩと中間層ＡＨとの結合重みＡＷ、閾値、および中間層ＡＨと出力層ＡＯとの結合重みを格納するようになっている。
【０１０１】
次に、自己連想型ＮＮ２７による、ニューロン素子網２２に入力する入力データＳｔの生成について、音声認識の場合を例に説明する。
いま音声認識の対象となる各音素のうち、音素“あ”についての学習を行う場合につてい説明する。
学習対象となる音素「ａ」については、言葉の最初に発声場合の音素を“あ”で表し、言葉の最後に発声される場合の音素を“ア”で表し、言葉の途中に発声される場合の音素を“Ａ”で表すものとする。例えば、“あ”は、ａｋｉ（秋）からとり、“ア”はｄｅｎｗａ（電話）からとり、“Ａ”はｔｏｍａｒｉ（泊まり）からとる。なお、以下の説明においては、音素「あ」について、“あ”、“ア”、“Ａ”の３パターンによる音素「ａ」の学習を例に説明するが、各音素について３〜３０パターン、好ましくは１００パターン程度による学習が行われる。
【０１０２】
図２５は、これら３種類の“あ”、“ア”、“Ａ”について、ＦＦＴ装置２１で各時間ｔ（ｔ＝１、２、…）毎に、ＦＦＴ処理によりスペクトル解析したデータを表したものである。
ＦＦＴ装置２１は、各音素“あ”、“ア”、“Ａ”について、それぞれ図２５（ａ）、（ｂ）、（ｃ）に示すように、各時間ｔ毎に音声データの、各周波数（周波数の分割数は、入力層ＡＩのニューロン素子の数ｐに対応して、Ｆ１〜Ｆｐのｐ個である）に対するパワー（Ｐ）の値を算出する。そして、各周波数のパワーＰ（ｔ）によるベクトル列は、第２実施形態について図１８で説明したと同様に、各時間毎に、ＲＡＭ１４の自己連想ＮＮ用ベクトル列格納エリアに格納される。
【０１０３】
いま、図２５（ａ）に示されるように、音素“あ”についてスペクトル解析された、時刻ｔ＝１におけるパワーＰ（１）のベクトル列をあ１とし、時刻ｔ＝２におけるパワーＰ（２）のベクトル列をあ２とし、同様に、図示しないが、時刻ｔ＝ｎのベクトル列をあｎとする。
また、図２５（ｂ）に示されるように、音素“ア”についてスペクトル解析された、時刻ｔ＝１におけるパワーＰ（１）のベクトル列をア１とし、時刻ｔ＝２におけるパワーＰ（２）のベクトル列をア２とし、同様に、図示しないが、時刻ｔ＝ｎのベクトル列をあｎとする。
また、図２５（ｃ）に示されるように、音素“Ａ”についてスペクトル解析された、時刻ｔ＝１におけるパワーＰ（１）のベクトル列をＡ１とし、時刻ｔ＝２におけるパワーＰ（２）のベクトル列をＡ２とし、同様に、図示しないが、時刻ｔ＝ｎのベクトル列をＡｎとする。
【０１０４】
これらの各音素についてスペクトル解析されたパワーＰ（ｔ）の各時刻毎に、自己連想型ＮＮ２７の学習と、ニューロン素子網２２にの入力層ＩＮに供給する入力データの生成が行われる。
すなわち、同一時刻、例えばｔ＝１における各音素のベクトル列あ１、ア１、Ａ、を自己連想型ＮＮ２７の入力層ＡＩの入力データとする共に、出力層ＡＯの教師信号として使用することで、各時刻ｔのベクトル列毎に学習を行なう。そして、時刻ｔについての学習が終了した時点での中間層ＡＨからの一方の出力値Ｓｔを入力層ＩＮの入力データとする。
なお、自己連想型ＮＮ２７における学習は、例えばバックプロパゲーション則等による各種学習が適用される。
【０１０５】
図２６は、自己連想型Ｎ２７の学習における入力データと教師信号、学習終了後の出力値Ｓｔについて表したものである。この図２６では、図２５に示した各音素に対するパワーのベクトル列に基づいて学習する場合を例に示している。
この図２６に示されるように、各時刻ｔ（ｔ＝１、２、…ｎ）を単位として学習が行われ、入力データＳｔが生成される。例えば、時刻ｔ１の場合であれば、教師信号をあ１として入力データあ１とア１とＡ１について学習を行い、次に、教師信号をア１として、入力データあ１とア１とＡ１について学習を行い、更に、教師信号をＡ１として、入力データあ１とア１とＡ１について学習を行う。
これら、全組み合わせについての学習が終了した後に、あ１、ア１、Ａ１のいずれかのデータを入力層ＡＩに入力し、このときの中間層ＡＨの出力値から、時刻ｔ＝１におけるニューロン素子網２２の入力層Ｉｎへの入力データＳ１が生成される。
同様にして、あ２、ア２、Ａ２による入力データと教師信号の全組み合わせによる学習から、時刻ｔ＝２における入力層Ｉｎへの入力データＳ２が生成され、さらに、Ｓ３、Ｓ４、…、Ｓｎも同様にして生成される。
【０１０６】
自己連想型ＮＮ２７によって生成された入力データＳｔ（ｔ＝１、２、…、ｎ）に従って、ニューロン素子網２２による学習が行われる。
第２実施形態のニューロン素子網２２の場合、この入力データＳｔが、音声入力層Ｉｎと音声出力層Ｏｕに入力される。すなわち、時刻ｔ＝ｉのスペクトルデータについて学習を行う場合、入力データＳｉのベクトル列が音声入力層Ｉｎに入力され、入力データＳ（ｉ＋１）のベクトル列が教師信号として音声出力層Ｏｕに入力される。
なお、仮説出力層Ｈｙへの教師信号（入力データＳｔ生成のための音素を示す符号列）の入力、および、各中間層Ｈｉと各環帰入力層Ｃｏの追加につては、第２実施形態で説明したと同様に行われる。
一方、第１実施形態のニューロン素子網２２の場合、入力データＳｔが順次入力層Ｉｎに入力される。出力層Ｏｕに入力される教師信号としては、入力データＳｔ生成のための音素を示す符号列が入力される。
【０１０７】
このようにして、自己連想型ＮＮ２７およびニューロン素子網２２の学習が終了すると、次のようにして、実際の音声認識が行われる。
まず、認識対象となる音声が音声入力装置２３から入力されると、ＦＦＴ装置２１でスペクトル解析が行われ、各時間ｔ毎の、各周波数に対するパワーＰ（ｔ）のベクトル列が順次求まる。このベクトル列は、各時間毎に、ＲＡＭ１４の自己連想ＮＮ用ベクトル列格納エリアに格納される。
【０１０８】
ＣＰＵ１１は、ＦＦＴ装置２１による音声のスペクトル解析が終了した後のベクトル列Ｐ（ｔ）を、順次自己連想型ＮＮ２７の入力層ＡＩに入力する。自己連想型ＮＮ２７では、入力されたベクトル列Ｐ（ｔ）に対する中間層ＡＨの出力ベクトルを、その時刻ｔにおける入力データＳｔとしてニューロン素子網２２に出力する。
この各時刻ｔ（ｔ＝１、２、…ｎ）毎の入力データＳ（ｔ）が、第１実施形態のニューロン素子網２２の場合には入力層Ｉｎに、第２実施形態のニューロン素子網２２の場合には音声入力層Ｉｎに、それぞれ順次入力される。そして、入力データに対応する出力値が、第１実施形態のニューロン素子網２２では出力層Ｏｕのニューロン素子から、第２実施形態のニューロン素子網２２では仮説出力層Ｈｙのニューロン素子から、それぞれ出力される。
そして、各ニューロン素子からの出力値と、ＲＯＭ１３に格納されている第２教師信号の各符号列とを照合することで、ＣＰＵ１１は該当音素を特定し、ＲＡＭ１４に格納する。
【０１０９】
この音素は、第２実施形態でも説明したように、各音素について複数のベクトル列Ｐ（ｔｎ）に解析され、時系列的に音声入力層Ｉｎに入力されて特定されるため、複数の音素列となる。すなわち、音声「いろ」が入力された場合には、例えば「ｉｉｉｉｉｒｒｒｏｏｏｏｏ」となる。そこで、ＣＰＵ１１は、このＲＡＭ１４に格納された音素列から、入力された音声を「ｉｒｏ」と認識する。
そしてＣＰＵ１１は、キーボード１８からの入力指示に応じて、認識した音声を日本語変換システムに従って文字による文章に変換し、また通信制御装置５および通信網２を介して、パーソナルコンピュータやワードプロセッサ等の各種通信制御装置にデータ伝送を行う。
【０１１０】
以上説明したように、第４実施形態による自己連想型ＮＮ２７を使用することによって、ニューロン素子網２２に入力するベクトル列が小さくなり、第１実施形態の入力層Ｉｎや第２実施形態の音声入力層Ｉｎのニューロン素子数を少なくすることができる。従って、ニューロン素子網２２の構成を小さくすることができる。
【０１１１】
以上説明した第４実施形態では、自己連想型ＮＮ２７の学習において、音素の各パターンについての入力データと教師信号の全組み合わせを学習対象としているため、中間層ＡＨは、その音素についての一般化されたベクトル列Ｓｔ（ｔ＝１〜ｎ）を生成することができる。
なお、全音素の各パターンについての組み合わせでなくても、入力層ＡＩの入力データおよび出力層ＡＯの教師信号として、同一のパターンを使用するようにしてもよい。
【０１１２】
なお、以上説明した第４実施形態では、学習および認識の際に自己連想型ＮＮ２７の入力層ＡＩに入力するデータとして、ＦＦＴ装置２１でスペクトル解析されたデータを用いた。これに対して、第３実施形態で説明した、ケプストラムデータを自己連想型ＮＮ２７の入力層ＡＩに入力することで、ニューロン素子網２２の入力データＳｔを生成するようにしてよもい。
【０１１３】
以上説明した第４実施形態では、音声認識を行う際に、ＦＦＴ装置２１でスペクトル解析されたベクトル列Ｐ（ｔ）を順次自己連想型ＮＮ２７の入力層ＡＩに入力し、中間層ＡＨの出力ベクトルを時刻ｔにおける入力データＳｔとして直ちにニューロン素子網２２に出力するようにした。
これに対して、自己連想型ＮＮ２７を、不特定話者用に学習したニューロン素子網２２によって、ある特定話者による音声の認識が可能か否かを判定するフィルタとして使用することができる。
すなわち、ニューロン素子網２２の学習で使用された不特定話者用のデータを使用した特定のキーワードについて、予め自己連想型ＮＮ２７の不特定話者認識用の学習を行っておく。
そして、特定話者は、音声認識を行う際に、キーワードを発声し音声入力装置２３に入力する。入力されたキーワードは、ＦＦＴ装置２１でスペクトル解析されて自己連想型ＮＮ２７の入力層ＡＩに入力され、中間層ＡＨの出力値から、入力データＳｔが生成される。この特定話者の入力データＳｔを、不特定話者用に学習した際のＳｔとを比較し、両者が大きく異なっている場合には、その特定話者の音声を不特定話者用の入力ニューロン素子網２２で認識することが困難であると判断することができる。
なお、不特定話者音声について学習済の自己連想型ＮＮ２７に、特定話者による任意音声のスペクトルデータを入力し、出力層ＡＯからの出力データと、入力データとを比較し、自己連想が略できているか否かを判断することで、その特定話者の音声についての認識が可能か否かを判断するようにしてもよい。
【０１１４】
【発明の効果】
本発明によれば、高速で学習を行うことが可能なニューラルネットワークを提供することができる。
【図面の簡単な説明】
【図１】本発明の第１実施形態におけるニューラルネットワークのシステム構成図である。
【図２】第１実施形態におけるニューロン素子網の初期状態を示す説明図である。
【図３】第１実施形態におけるニューロン素子網の各ニューロン素子間の結合重みを格納する結合重みテーブルを示す説明図である。
【図４】第１実施形態におけるニューラルネットワークにより学習する図形○１を表した説明図である。
【図５】第１実施形態において、３種類の図形認識についての学習を行うためのニューロン素子網の構成図である。
【図６】第１実施形態における学習動作の詳細を表したフローチャートである。
【図７】第１実施形態において、新しいニューロン素子Ｈｉｍｐ＝Ｈｉ１１を追加したニューロン素子網と結合重みテーブルを表した説明図である。
【図８】第１実施形態において、第１中間層のニューロン素子が更に追加された状態を表した説明図である。
【図９】第１実施形態において、第１中間層のニューロン素子が更に追加された状態を表した説明図である。
【図１０】第１実施形態において、第２中間層のニューロン素子Ｈｉ２１を新たに追加した状態を表した説明図である。
【図１１】第１実施形態において、全図形についての学習が終了後におけるニューロン素子網と結合重みテーブルの状態を表した説明図である。
【図１２】本発明の第２の実施形態におけるニューラルネットワークを利用した音声認識装置のシステム構成図である。
【図１３】  第２実施形態における音声認識装置のニューロン素子網の初期状態を説明する説明図である。
【図１４】  第２実施形態における音声認識装置のニューロン素子網による学習途中を説明するための説明図である。
【図１５】第２実施形態におけるニューロン素子網の各ニューロン素子間の結合重みを格納する結合重みテーブルを示す説明図である。
【図１６】第２実施形態におけるニューロン素子網に対する第２教師信号テーブルの内容を示す説明図である。
【図１７】第２実施形態における音声認識装置による音声のスペクトル解析の状態を説明する説明図である。
【図１８】第２実施形態における音声認識装置のＦＦＴ装置によりスペクトル解析された音声についてのベクトル列を表す説明図である。
【図１９】第２実施形態における音声認識装置により特定した音声「まえ」についての各音素の分布を示す説明図である。
【図２０】第２実施形態における音声認識装置のニューロン素子網の変形例を示すシステム構成である。
【図２１】本発明の第３実施形態におけるニューラルネットワークのシステム構成図である。
【図２２】第３実施形態におけるケプストラム装置の構成図である。
【図２３】本発明の、第４実施形態における自己連想型ＮＮを用いたニューラルネットワークのシステム構成図である。
【図２４】第４実施形態における自己連想型ＮＮの構成図である。
【図２５】第４実施形態において、３種類の“あ”、“ア”、“Ａ”のスペクトル解析したデータを示す説明図である。
【図２６】第４実施形態における自己連想型Ｎ２７の学習時の入力データと教師信号、入力データＳｔの関係を表す説明図である。
【符号の説明】
１１  ＣＰＵ
１２  バスライン
１３  ＲＯＭ
１４  ＲＡＭ
１５  通信制御装置
１６  プリンタ
１７  表示装置
１８  キーボード
２１  ＦＦＴ装置
２２  ニューロン素子網
２３  音声入力装置
２４  図形読取装置
２６  ケプストラム装置
Ｉｎ  入力層、音声入力層
Ｃｏ  環帰入力層
Ｈｉ  中間層
Ｏｕ  出力層、音声出力層
Ｈｙ  仮説出力層
Ｗ、ｈ、ｋ、ｗ、ｓ、ｕ、ｖ  結合重み
【図１】
0003737841.tif 000003
【図２】
0003737841.tif 000004
【図３】
0003737841.tif 000005
【図４】
0003737841.tif 000006
【図５】
0003737841.tif 000007
【図６】
0003737841.tif 000008
【図７】
0003737841.tif 000009
【図８】
0003737841.tif 000010
【図９】
0003737841.tif 000011
【図１０】
0003737841.tif 000012
【図１１】
0003737841.tif 000013
【図１２】
0003737841.tif 000014
【図１３】
0003737841.tif 000015
【図１４】
0003737841.tif 000016
【図１５】
0003737841.tif 000017
【図１６】
0003737841.tif 000018
【図１７】
0003737841.tif 000019
【図１８】
0003737841.tif 000020
【図１９】
0003737841.tif 000021
【図２０】
0003737841.tif 000022
【図２１】
0003737841.tif 000023
【図２２】
0003737841.tif 000024
【図２３】
0003737841.tif 000025
【図２４】
0003737841.tif 000026
【図２５】
0003737841.tif 000027
【図２６】
0003737841.tif 000028