(57)【特許請求の範囲】
【請求項１】
複数個のクラスのいずれかに入力パターンを分類するためのパターン分類装置の学習装置であって，
所定の物理量の観測データから得られるベクトルと，当該ベクトルが属するクラスのラベルとからなる学習パターンを要素とする学習パターン集合を記憶するための記憶手段と，
前記複数個のクラスに対しそれぞれ定義される，入力パターンが当該クラスに属する度合いを測る判別関数を，前記記憶手段に記憶された学習パターン集合に含まれる学習パターンを学習データとして学習するための学習手段とを含み，
前記判別関数は，入力パターンと，前記複数個のクラスにそれぞれ対応する，前記学習パターン集合から得られる複数個のプロトタイプとの間のカーネル演算の線形和により表される関数であり，
前記複数個のプロトタイプはプロトタイプ集合を形成し，
当該カーネル演算は，入力パターンの空間より高次元の空間に入力パターンを変換する特徴変換を定めたときに，当該特徴変換による変換後の入力パターンと，当該特徴変換による変換後のプロトタイプとの間の内積により定義され，かつ，当該カーネル演算は，前記プロトタイプ集合内に含まれるプロトタイプ相互間でのカーネル演算により構成されるグラム行列が，どんな個数のどんなプロトタイプに対しても常に正定値行列となるカーネル演算であり，
前記複数個のクラスの各々に対して，前記線形和の各プロトタイプに対応するカーネルの係数は係数ベクトルを形成し，
前記複数個のクラスの各々に対して形成される係数ベクトルは係数ベクトル集合を形成し，
前記学習手段は，前記高次元の空間において，前記学習パターンと前記係数ベクトル集合との関数として定義される平均分類誤り数損失が最小となるように前記係数ベクトル集合に含まれる係数ベクトルを調整する，パターン分類装置の学習装置．
【請求項２】
前記観測データであるベクトルをクラスタリングすることにより，前記複数個のプロトタイプを算出するためのクラスタリング手段をさらに含む，請求項１に記載のパターン分類装置の学習装置．
【請求項３】
前記学習手段は，
前記係数ベクトル集合に含まれる係数ベクトルの各々を所定の初期化方法により初期化するための初期化手段と，
前記学習パターン集合に含まれる学習パターンから１個を抽出するための学習パターン抽出手段と，
前記学習パターン抽出手段により学習パターンが抽出されたことに応答して，前記係数ベクトル集合に含まれる係数ベクトルを，前記平均分類誤り数損失が最小となるように調整するための係数ベクトル調整手段と，
前記学習パターン抽出手段による学習パターンの抽出と，前記係数ベクトル調整手段による係数ベクトルの調整とを，前記学習パターン集合内の全学習パターンが前記学習パターン抽出手段により抽出されるまで，繰返し実行させるための第１の繰返し制御手段とを含む，請求項１に記載のパターン分類装置の学習装置．
【請求項４】
前記学習手段はさらに，
前記第１の繰返し制御手段による繰返しが終了するごとに，前記学習パターン集合内の学習パターンの並びをシャッフルするためのシャッフル手段と，
前記シャッフル手段によるシャッフルが完了したことに応答して，前記第１の繰返し制御手段による繰返しを再開させるための第２の繰返し制御手段と，
前記第２の繰返し制御手段による繰返しが所定の回数だけ完了したときに，前記第２の繰返し制御手段による繰返しを停止させるための停止手段とを含む，請求項３に記載のパターン分類装置の学習装置．
【請求項５】
前記学習装置はさらに，前記初期化手段により得られた係数ベクトルの成分のうち，絶対値が所定のしきい値より小さな成分をゼロに固定するための手段を含む，請求項３に記載のパターン分類装置の学習装置．
【請求項６】
前記プロトタイプ集合は前記学習パターン集合であり，
前記初期化手段は，
前記学習パターン集合に含まれる学習パターンを前記複数個のクラスに分類するための，学習パターンに対する所定の変換後のベクトルの線形和の係数ベクトルを，多クラスサポートベクターマシーンの学習により最適化するためのＳＶＭ学習手段と，
前記ＳＶＭ学習手段により前記学習パターン集合に対して最適化された係数ベクトルを，前記線形和の各プロトタイプに対応するカーネルの係数からなる係数ベクトルの初期値として設定するための初期値設定手段とを含む，請求項３に記載のパターン分類装置の学習装置．
【請求項７】
前記初期化手段はさらに，前記ＳＶＭ学習手段により最適化された係数ベクトルに対応する学習パターンのうち，係数ベクトルが零ベクトルと所定の値以上異なるサポートベクトルのみをプロトタイプとして選択し，前記判別関数を構成するためのプロトタイプ選択手段を含む，請求項６に記載のパターン分類の学習装置．
【請求項８】
前記初期化手段は，前記学習パターン集合及び前記プロトタイプ集合とに適合するように予め学習がされていた混合ガウスモデル又は動径基底関数の係数ベクトルを，前記係数ベクトル集合の初期値として設定するための手段を含む，請求項３に記載のパターン分類の学習装置．
【請求項９】
前記学習手段は，
前記係数ベクトル集合に含まれる係数ベクトルの各々を所定の初期化方法により初期化するための初期化手段と，
前記学習パターン集合に含まれる学習パターンから１個を抽出するための学習パターン抽出手段と，
前記学習パターン抽出手段により学習パターンが抽出されたことに応答して，前記係数ベクトル集合に含まれる係数ベクトルと，前記プロトタイプ集合に含まれるプロトタイプとを，前記平均分類誤り数損失が最小となるように調整するためのパラメータ調整手段と，
前記学習パターン抽出手段による学習パターンの抽出と，前記パラメータ調整手段による係数ベクトル及びプロトタイプの調整とを，前記学習パターン集合内の全学習パターンが前記学習パターン抽出手段により抽出されるまで，繰返し実行させるための第１の繰返し制御手段とを含む，請求項１に記載のパターン分類装置の学習装置．
【請求項１０】
前記学習手段はさらに，
前記第１の繰返し制御手段による繰返しが終了するごとに，前記学習パターン集合内の学習パターンの並びをシャッフルするためのシャッフル手段と，
前記シャッフル手段によるシャッフルが完了したことに応答して，前記第１の繰返し制御手段による繰返しを再開させるための第２の繰返し制御手段と，
前記第２の繰返し制御手段による繰返しが所定の回数だけ完了したときに，前記第２の繰返し制御手段による繰返しを停止させるための停止手段とを含む，請求項９に記載のパターン分類装置の学習装置．
【請求項１１】
コンピュータを，複数個のクラスのいずれかに入力パターンを分類するためのパターン分類装置の学習装置として機能させるコンピュータプログラムであって，当該コンピュータプログラムは，コンピュータを，
所定の物理量の観測データから得られるベクトルと，当該ベクトルが属するクラスのラベルとからなる学習パターンを要素とする学習パターン集合を記憶するための記憶手段と，
前記複数個のクラスに対しそれぞれ定義される，入力パターンが当該クラスに属する度合いを測る判別関数を，前記記憶手段に記憶された学習パターン集合に含まれる学習パターンを学習データとして学習するための学習手段として機能させ，
前記判別関数は，入力パターンと，前記複数個のクラスにそれぞれ対応する，前記学習パターン集合から得られる複数個のプロトタイプとの間のカーネル演算の線形和により表される関数であり，
前記複数個のプロトタイプはプロトタイプ集合を形成し，
当該カーネル演算は，入力パターンの空間より高次元の空間に入力パターンを変換する特徴変換を定めたときに，当該特徴変換による変換後の入力パターンと，当該特徴変換による変換後のプロトタイプとの間の内積により定義され，かつ，当該カーネル演算は，前記プロトタイプ集合内に含まれるプロトタイプ相互間でのカーネル演算により構成されるグラム行列が，どんな個数のどんなプロトタイプに対しても常に正定値行列となるカーネル演算であり，
前記複数個のクラスの各々に対して，前記線形和の各プロトタイプに対応するカーネルの係数は係数ベクトルを形成し，
前記複数個のクラスの各々に対して形成される係数ベクトルは係数ベクトル集合を形成し，
前記学習手段は，前記高次元の空間において，前記学習パターンと前記係数ベクトル集合との関数として定義される平均分類誤り数損失が最小となるように前記係数ベクトル集合に含まれる係数ベクトルを調整する，コンピュータプログラム．
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，何らかの物理的な量の測定値からなるベクトルパターンが，所定の複数クラスのいずれに属するかを判別するパターン認識装置に関し，特に，学習データに基づいてそのようなパターン分類装置の学習を行なう学習装置に関する．
【背景技術】
【０００２】
高い認識率を実現できるパターン認識技術として最小分類誤り（Ｍｉｎｉｍｕｍ  Ｃｌａｓｓｉｆｉｃａｔｉｏｎ  Ｅｒｒｏｒ：ＭＣＥ）学習法及びサポートベクターマシーン（Ｓｕｐｐｏｒｔ  Ｖｅｃｔｏｒ  Ｍａｃｈｉｎｅ：ＳＶＭ）法が広く用いられている．前者の初期の例は例えば非特許文献１に記載されており，可変長パターンをも含む多様なパターンに対するベイズ誤り推定を直接的に追求する．これに対し，後者は例えば非特許文献２に記載されており，カーネルに付随する高次元空間における線形判別関数の幾何マージン（分類決定境界と学習パターンとの間の距離）を最大化し学習耐性の向上を目指す．
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Ｂ．−Ｈ．Ｊｕａｎｇ及びＳ．カタギリ，「最小分類誤り基準識別学習法」，ＩＥＥＥ  シグナル・プロセッシング・トランザクションズ，第４０巻第１２号，３０４３ページ〜３０５４ページ，１９９２年（Ｂ.-H.  Juang  and  S.  Katagiri,  “Discriminative  learning  for  minimum  error  classification,”  IEEE  Trans.  Signal  Processing,  vol.40,  no.12,  pp.3043-3054,  Dec.  1992.）
【非特許文献２】Ｊ．Ｗａｎｇ，Ｘ．Ｗｕ，Ｃ．Ｚｈａｎｇ，「Ｋ−平均クラスタリングを用いた実時間ビジネス知能システムのためのサポートベクターマシーン」，ビジネス知能及びデータマイニング国際ジャーナル，第１巻第１号，５４ページ〜６４ページ，２００５年（J.  Wang,  X.  Wu,  and  C.  Zhang,  “Support  vector  machines  based  on  K-means  clustering  for  real-time  business  intelligence  systems,”  International  Journal  of  Business  Intelligence  and  Data  Mining,  vol.1,  no.1,  pp.  54-64,  2005.）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ＳＶＭ法は損失関数最小化がベイズ誤り推定に対し直接的でなく，有限個の学習パターンの場合での分類誤り確率の最小化が十分ではない．一方，従来のＭＣＥ法は損失関数がベイズ誤り推定と直結しているが，一般の実施例において，カーネルを用いた高次元空間への写像に基づく精緻な分類決定境界の形成を考慮しておらず，やはり十分な認識率が得られていない．
【０００５】
それゆえに本発明の目的は，ベイズ誤り推定と直結した損失関数を用い，従来のものより高い認識率が得られるようにパターン分類装置の学習を行なうことができる学習装置を提供することである．
【課題を解決するための手段】
【０００６】
本発明の第１の局面によれば，パターン分類装置の学習装置は，複数個のクラスのいずれかに入力パターンを分類するための学習装置である．この学習装置は，所定の物理量の観測データから得られるベクトルと，当該ベクトルが属するクラスのラベルとからなる学習パターンを要素とする学習パターン集合を記憶するための記憶手段と，複数個のクラスに対しそれぞれ定義される，入力パターンが当該クラスに属する度合いを測る判別関数を，記憶手段に記憶された学習パターン集合に含まれる学習パターンを学習データとして学習するための学習手段とを含む．判別関数は，入力パターンと，複数個のクラスにそれぞれ対応する，学習パターン集合から得られる複数個のプロトタイプとの間のカーネル演算の線形和により表される関数である．複数個のプロトタイプはプロトタイプ集合を形成する．カーネル演算は，入力パターンの空間より高次元の空間に入力パターンを変換する特徴変換を定めたときに，当該特徴変換による変換後の入力パターンと，当該特徴変換による変換後のプロトタイプとの間の内積により定義され，かつ，当該カーネル演算は，プロトタイプ集合内に含まれるプロトタイプ相互間でのカーネル演算により構成されるグラム行列が，どんな個数のどんなプロトタイプに対しても常に正定値行列となるカーネル演算である．複数個のクラスの各々に対して，線形和の各プロトタイプに対応するカーネルの係数は係数ベクトルを形成する．これら複数個のクラスの各々に対して形成される係数ベクトルは係数ベクトル集合を形成する．学習手段は，高次元の空間において，学習パターンと係数ベクトル集合との関数として定義される平均分類誤り数損失が最小となるように係数ベクトル集合に含まれる係数ベクトルを調整する．
【０００７】
好ましくは，観測データであるベクトルをクラスタリングすることにより，複数個のプロトタイプを算出するためのクラスタリング手段をさらに含む．
【０００８】
より好ましくは，学習手段は，係数ベクトル集合に含まれる係数ベクトルの各々を所定の初期化方法により初期化するための初期化手段と，学習パターン集合に含まれる学習パターンから１個を抽出するための学習パターン抽出手段と，学習パターン抽出手段により学習パターンが抽出されたことに応答して，係数ベクトル集合に含まれる係数ベクトルを，平均分類誤り数損失が最小となるように調整するための係数ベクトル調整手段と，学習パターン抽出手段による学習パターンの抽出と，係数ベクトル調整手段による係数ベクトルの調整とを，学習パターン集合内の全学習パターンが学習パターン抽出手段により抽出されるまで，繰返し実行させるための第１の繰返し制御手段とを含む．
【０００９】
さらに好ましくは，学習手段はさらに，第１の繰返し制御手段による繰返しが終了するごとに，学習パターン集合内の学習パターンの並びをシャッフルするためのシャッフル手段と，シャッフル手段によるシャッフルが完了したことに応答して，第１の繰返し制御手段による繰返しを再開させるための第２の繰返し制御手段と，第２の繰返し制御手段による繰返しが所定の回数だけ完了したときに，第２の繰返し制御手段による繰返しを停止させるための停止手段とを含む．
【００１０】
学習装置はさらに，初期化手段により得られた係数ベクトルの成分のうち，絶対値が所定のしきい値より小さな成分をゼロに固定するための手段を含んでもよい．
【００１１】
好ましくは，プロトタイプ集合は学習パターン集合であり，初期化手段は，学習パターン集合に含まれる学習パターンを複数個のクラスに分類するための，学習パターンに対する所定の変換後のベクトルの線形和の係数ベクトルを，多クラスサポートベクターマシーンの学習により最適化するためのＳＶＭ学習手段と，ＳＶＭ学習手段により学習パターン集合に対して最適化された係数ベクトルを，線形和の各プロトタイプに対応するカーネルの係数からなる係数ベクトルの初期値として設定するための初期値設定手段とを含む．
【００１２】
より好ましくは，初期化手段はさらに，ＳＶＭ学習手段により最適化された係数ベクトルに対応する学習パターンのうち，係数ベクトルが零ベクトルと所定の値以上異なるサポートベクトルのみをプロトタイプとして選択し，判別関数を構成するためのプロトタイプ選択手段を含む．
【００１３】
さらに好ましくは，初期化手段は，学習パターン集合及びプロトタイプ集合とに適合するように予め学習がされていた混合ガウスモデル又は動径基底関数の係数ベクトルを，係数ベクトル集合の初期値として設定するための手段を含む．
【００１４】
学習手段は，係数ベクトル集合に含まれる係数ベクトルの各々を所定の初期化方法により初期化するための初期化手段と，学習パターン集合に含まれる学習パターンから１個を抽出するための学習パターン抽出手段と，学習パターン抽出手段により学習パターンが抽出されたことに応答して，係数ベクトル集合に含まれる係数ベクトルと，プロトタイプ集合に含まれるプロトタイプとを，平均分類誤り数損失が最小となるように調整するためのパラメータ調整手段と，学習パターン抽出手段による学習パターンの抽出と，パラメータ調整手段による係数ベクトル及びプロトタイプの調整とを，学習パターン集合内の全学習パターンが学習パターン抽出手段により抽出されるまで，繰返し実行させるための第１の繰返し制御手段とを含んでもよい．
【００１５】
好ましくは，学習手段はさらに，第１の繰返し制御手段による繰返しが終了するごとに，学習パターン集合内の学習パターンの並びをシャッフルするためのシャッフル手段と，シャッフル手段によるシャッフルが完了したことに応答して，第１の繰返し制御手段による繰返しを再開させるための第２の繰返し制御手段と，第２の繰返し制御手段による繰返しが所定の回数だけ完了したときに，第２の繰返し制御手段による繰返しを停止させるための停止手段とを含む．
【００１６】
本発明の第２の局面に係るコンピュータプログラムは，コンピュータを，複数個のクラスのいずれかに入力パターンを分類するためのパターン分類装置の学習装置として機能させる．当該コンピュータプログラムは，コンピュータを，所定の物理量の観測データから得られるベクトルと，当該ベクトルが属するクラスのラベルとからなる学習パターンを要素とする学習パターン集合を記憶するための記憶手段と，複数個のクラスに対しそれぞれ定義される，入力パターンが当該クラスに属する度合いを測る判別関数を，記憶手段に記憶された学習パターン集合に含まれる学習パターンを学習データとして学習するための学習手段として機能させる．判別関数は，入力パターンと，複数個のクラスにそれぞれ対応する，学習パターン集合から得られる複数個のプロトタイプとの間のカーネル演算の線形和により表される関数である．複数個のプロトタイプはプロトタイプ集合を形成する．当該カーネル演算は，入力パターンの空間より高次元の空間に入力パターンを変換する特徴変換を定めたときに，当該特徴変換による変換後の入力パターンと，当該特徴変換による変換後のプロトタイプとの間の内積により定義され，かつ，当該カーネル演算は，プロトタイプ集合内に含まれるプロトタイプ相互間でのカーネル演算により構成されるグラム行列が，どんな個数のどんなプロトタイプに対しても常に正定値行列となるカーネル演算である．複数個のクラスの各々に対して，線形和の各プロトタイプに対応するカーネルの係数は係数ベクトルを形成する．複数個のクラスの各々に対して形成される係数ベクトルは係数ベクトル集合を形成する．学習手段は，高次元の空間において，学習パターンと係数ベクトル集合との関数として定義される平均分類誤り数損失が最小となるように係数ベクトル集合に含まれる係数ベクトルを調整する．
【００１７】
以上のように本発明によれば，公知技術である大幾何マージンＭＣＥ学習法を，カーネルの線形和の形式を持つ判別関数の線形和係数パラメータに対して適用する．これにより，カーネルを用いて精緻な分類決定境界を形成することが可能となるだけでなく，分類誤り最小化と未知パターンに対する耐性向上とを共に直接的に目指す学習法が定型化される．結果的に，本発明により，パターンの分布構造が複雑である場合においても,学習パターン以外の未知パターンに対する高い認識率が得られる．
【図面の簡単な説明】
【００１８】
【図１】パターン認識装置による分類の概略を模式的に示す図である．
【図２】Ｎ次元特徴空間Ｂにおける幾何マージンと高次元空間Ｈにおける幾何マージンとの関係を模式的に示す図である．
【図３】本発明の第１の実施の形態に係る話者判別システムの構成を示す模式的ブロック図である．
【図４】第１の実施の形態に係る判別関数学習装置を実現するコンピュータプログラムの制御構造を示すフローチャートである．
【図５】図４に示すフローチャートのうち，Ｍ次係数ベクトルτの適応的学習処理を実現するコンピュータプログラムの制御構造を示すフローチャートである．
【図６】第２の実施の形態に係る判別関数学習装置を実現するコンピュータプログラムの制御構造を示すフローチャートである．
【図７】図６に示すフローチャートのうち，係数ベクトルαの適応的学習処理を実現するコンピュータプログラムの制御構造を示すフローチャートである．
【図８】第３の実施の形態に係る判別関数学習装置を実現するコンピュータプログラムの制御構造を示すフローチャートである．
【図９】図８に示すフローチャートのうち，係数ベクトルτとプロトタイプベクトルｐmの適応的学習処理を実現するコンピュータプログラムの制御構造を示すフローチャートである．
【図１０】本願発明の実施の形態を実現するコンピュータシステムの正面図である．
【図１１】図１０に示すコンピュータシステムのブロック図である．
【発明を実施するための形態】
【００１９】
以下の説明及び図面では，同一の部品には同一の参照番号を付してある．したがって，それらについての詳細な説明は繰返さない．
【００２０】
《第１の実施の形態》
［１  分類器構造］
図１を参照して，入力パターン（観測値）ベクトルｘ∈Χ（図１に示す全入力パターン空間２０）をＪ個のクラス（類）Ｃ1，Ｃ2，…，ＣJ（図１におけるクラス２２，２４，…，２６及び２８）のいずれか一つに割当てる分類問題を考える．以下の説明では，説明を簡略にするために，入力パターンベクトルを単に「入力パターン」と呼び，同様の考えで「学習パターンベクトル」を「学習パターン」と呼ぶ．
【００２１】
本実施の形態では，入力パターンｘがクラスＣjに帰属する度合いを測る判別関数ｇj(ｘ；Λ)として次式の関数を用いる．
【００２２】
【数１】
0005704692.tif 000002
【００２３】
ここで｛ｐm｝M m=1は，Ｎ個の学習パターン集合｛ｘn｝Nn=1から計算されるプロトタイプの集合である（Ｍはプロトタイプの総数）．例えば，これらは学習パターン｛ｘn｝Nn=1をクラスタリングして得られる，各クラスタの代表ベクトルである．クラスタリングの手法は問わない．なおプロトタイプ集合｛ｐm｝Mm=1は学習パターン集合｛ｘn｝Nn=1そのものでもよい（この場合はＭ＝Ｎ）．τm,jは学習によって調整される実数パラメータである．Λは分類器の学習パラメータ集合であり，今の場合はΛ＝｛τm,j｝Mm=1Jj=1である．２つの学習パターンｘ,ｘ´∈Χに対し，Ｋ(ｘ，ｘ´)は，入力パターン空間Χから非常に高い次元（しばしば無限次元）の空間（ここでは空間Ｈとする）への特徴変換φ(・)を適当に定めたときの，２つの特徴変換されたパターンベクトルφ(ｘ),φ(ｘ´)の内積を表し，カーネルとよばれる．カーネルＫ(・,・)としては様々なものが存在するが，ここでは，Ｍ個のプロトタイプで構成される次式のグラム行列
【００２４】
【数２】
0005704692.tif 000003
が，Ｍ及び｛ｐm｝Mm=1がどんな値であったとしても常に正定値となるものであれば，その種類を問わない．そのようなカーネルを正定値カーネルという．実際，多くのカーネルがこの正定値の条件を満たす．例えば次式のガウシアンカーネルがこの条件を満たし，実際に広く用いられている．
【００２５】
【数３】
0005704692.tif 000004
そして，分類器は次式の分類決定則に従って分類を行なうものとする．
【００２６】
【数４】
0005704692.tif 000005
［２  カーネル線形和型の判別関数に対する大幾何マージン最小分類誤り学習］
（２．１  特徴空間における大幾何マージン最小分類誤り学習の概略）
式（１）は，次式のようにＭ次ベクトルの内積形式で書き表すことができる．
【００２７】
【数５】
0005704692.tif 000006
ここで上付き「Ｔ」は行列及びベクトルの転置を表す．ベクトルｋ(ｘ)が学習パターンｘをＭ次元特徴空間上に写像した特徴ベクトルであるとみなせば，ｇj(ｘ；Λ)はその特徴空間上でのベクトルτjを係数ベクトルとした線形判別関数と考えることができる．
【００２８】
更に，後述する高次元空間Ｈにおける学習と対応させるため，ベクトルｋ(ｘ)に対して線形変換を施すことを考える．まず式（２）のグラム行列Ｋ（ここでは正定値であると仮定）のコレスキー分解（G.H.  Golub  and  C.  F.  Van  Loan,  Matrix  Computations  2nd  Ed.,  The  Johns  Hopkins  University  Press,  1989.）を考える．
【００２９】
【数６】
0005704692.tif 000007
ここで行列Ｌは対角成分が正の下三角行列である．そしてこの下三角行列を用いて，Ｍ次係数ベクトルτj及びＭ次特徴ベクトルｋ(ｘ)を次式により変換する．
【００３０】
【数７】
0005704692.tif 000008
これにより，判別関数は次式で書き直される．
【００３１】
【数８】
0005704692.tif 000009
図２を参照して，入力パターン空間３０からの，ベクトル変換β(・)＝Ｌ-1ｋ(・)による写像先であるＭ次元空間３２をここではＭ次元空間Ｂと表す．そして，ベクトルｋ(ｘ)に代えてベクトルβ(ｘ)をＭ次元特徴ベクトルであるとみなせば，上式は，判別関数ｇj(ｘ；Λ)がＭ次元特徴空間Ｂ上でのベクトルαjを係数ベクトルとした線形判別関数であることを示している．ただし本実施の形態では，式（９）の関係により，係数ベクトル集合｛αj｝Jj=1の最適化を係数ベクトル集合｛τj｝Jj=1の調整を介して行なう．
【００３２】
判別関数の集合｛ｇj(ｘ；Λ)｝Jj=1により分類決定境界が定まるが，この境界はパターン空間Ｘのみならず特徴空間Ｂにおいても形成される．図２を参照して，ここでは特徴空間Ｂにおいて形成される分類決定境界Γを考える．式（１０）のベクトル変換β(・)により分類決定境界Γ付近に写され，しかも上記判別関数により正しく分類される学習パターンを１つ考え，これをｘoとする．ベクトルβ(ｘo)と境界Γとの（特徴空間Ｂにおける）ユークリッド距離ｒは，文献（H.  Watanabe,  S.  Katagiri,  K.  Yamada,  E.  McDermott,  A.  Nakamura,  S.  Watanabe,  and  M.  Ohsaki,  “Minimum  error  classification  with  geometric  margin  control,”  in  Proc.  IEEE  ICASSP,  pp.  2170-2173,  Mar.  2010.）を参考にして，次式で与えられる．
【００３３】
【数９】
0005704692.tif 000010
ここでＣyは学習パターンｘｏの属する正しいクラス，Ｃiは学習パターンｘｏに対するbest-incorrectクラス（最大の判別関数値を与える不正解のクラス）である．ユークリッド距離ｒは（空間Ｂにおける）幾何マージンとよばれる．この値が大きくなるように判別関数を学習すれば，空間Ｂにおいて，境界付近の正分類の学習パターンβ(ｘo)の近くに現れるであろう，同じクラスに属する未知パターンを正しく分類することができ，学習耐性が向上する［上記Watanabeらによる．］．
【００３４】
なお，上式（１２）は係数ベクトルαy，αiを含むため，このままではグラム行列Ｋのコレスキー分解の計算及び下三角行列の逆行列計算が必要となる．プロトタイプ数Ｍが大きい場合，このことは数値的不安定性をもたらす（特に学習パターン集合をプロトタイプ集合と考える場合はこの問題が深刻となる）．そこで本発明では，式（９）（１０）を式（１２）に代入することにより，幾何マージンｒを係数ベクトル集合｛τj｝Jj=1の関数形式として次式により書き直し，これを学習に用いる．
【００３５】
【数１０】
0005704692.tif 000011
すなわち上式は，係数ベクトル集合｛τj｝Jj=1を調整パラメータとした空間Ｂ上の幾何マージンであり，しかもこの式の利用によりグラム行列Ｋのコレスキー分解の計算及び下三角行列の逆行列計算が不要となる．
そこで，各学習パターンｘに対して，幾何マージンｒの符号を反転させた
【００３６】
【数１１】
0005704692.tif 000012
を定める．Ｄy(ｘ；Λ)は，正値ならば誤分類，負値ならば正分類に対応し，最小分類誤り（ＭＣＥ）学習における誤分類測度の一種と考えることができる．そしてその絶対値は，分類決定境界からのユークリッド距離を表す．このＤy(ｘ；Λ)を幾何マージン型誤分類測度と呼ぶことにする．
【００３７】
続いて，幾何マージン型誤分類測度Ｄy(ｘ；Λ)に対する平滑化分類誤り数損失を次式で定める．
【００３８】
【数１２】
0005704692.tif 000013
【００３９】
式（１５）はＤy(ｘ；Λ)に関して単調増加のロジスティックシグモイド関数であり，パラメータζが大きくなるにつれてシグモイド関数の傾きが大きく（急に）なる．ζ→∞の極限において，Ｄy(ｘ；Λ)は，Ｄy(ｘ；Λ)＞０すなわち誤分類の場合に値１を，Ｄy(ｘ；Λ)＜０すなわち正分類の場合に値０をとる．すなわち，平滑化分類誤り数損失は，誤分類カウントと直接的に結びついているだけでなく，学習パラメータ集合Λに関して微分可能である．更に，式（１５）の値を小さくするような学習パラメータ集合Λの調整は，分類誤り数を減少させるのみならず，Ｄy(ｘ；Λ)を負の方向に増大させるため，正分類された学習パターンの（空間Ｂにおける）幾何マージンが増大し，未知のパターンに対する耐性を向上させることができる．
【００４０】
学習では，Ｎ個の学習パターンからなる学習パターン集合ΩN＝｛(ｘn，ｙn)｝Ｎn=1（ｙnは学習パターンｘnの属する正しいクラスの指標）から構成される次式の経験的平均損失を最小にする学習パラメータ集合Λを求める．
【００４１】
【数１３】
0005704692.tif 000014
損失Ｌ(Λ)の最小化に関して，最急降下法等のバッチ的手法だけではなく，学習パターン集合ΩNから１個の学習パターン（ｘn，ｙn）を抽出する度に学習パラメータ集合Λを調整する適応的な学習方法も広く用いられている．その方法における学習パラメータ集合Λの調整機構は次式で与えられる（ｔは繰返し番号）．
【００４２】
【数１４】
0005704692.tif 000015
本実施の形態では，この適応的学習方法を採用することとする．
【００４３】
（２．２  システム構成及び判別関数の学習の計算手順）
２．２．１  システム構成
図３を参照して，本実施の形態に係るシステム４０は，入力音声４６が，予め知られている複数の話者のうちの誰かを識別するためのものである．このシステム４０は，話者識別のための判別関数を以下に説明する手順にしたがって学習する判別関数学習装置４２と，判別関数学習装置４２により学習された判別関数を何らかの形で話者判別装置４８に伝達する判別関数伝達媒体４４と，判別関数伝達媒体４４により伝達された判別関数を用い，入力音声４６の話者識別を行ない，話者判別結果５０を出力する話者判別装置４８とを含む．一般的に，判別関数学習装置４２と話者判別装置４８とは別々の装置である．すなわち，判別関数学習装置４２で学習された判別関数は，ハードディスク，半導体メモリ等の記憶媒体，通信媒体を介して話者判別装置４８に配布される．したがって話者判別装置４８は判別関数学習装置４２と同じ場所にあることは必ずしも想定されていない．
【００４４】
判別関数学習装置４２は，学習のための発話データを記憶する第１の記憶装置６０と，第１の記憶装置６０に記憶された発話データから所定の特徴量ベクトルを抽出し，話者判別のための学習パターンとして出力する特徴量抽出部６２と，特徴量抽出部６２により抽出された学習パターン集合を記憶する第２の記憶装置６４と，第２の記憶装置６４に記憶された学習パターン集合を学習のためのサンプルデータとして，後述する手順にしたがって話者の判別関数を学習し判別関数伝達媒体４４に与えるための学習装置６６とを含む．
【００４５】
一方，話者判別装置４８は，判別関数伝達媒体４４により伝達された話者別の判別関数を記憶する判別関数記憶部８０と，判別関数学習装置４２の特徴量抽出部６２と同じ手法により入力音声４６から所定の特徴量ベクトルを抽出するための特徴量抽出部８２と，特徴量抽出部８２により抽出された特徴量ベクトルに判別関数記憶部８０に記憶された判別関数を適用し，複数の話者のうち１人を入力音声４６の話者として判別し，話者判別結果５０を出力する話者判別部８４とを含む．
【００４６】
後述するように，判別関数学習装置４２及び話者判別装置４８はいずれも記憶装置及び判別関数伝達媒体４４とのデータ交換機能を備えたコンピュータハードウェア，及びそのコンピュータハードウェア上で実行されるコンピュータソフトウェアにより実現される．本明細書では，以下，判別関数学習装置４２を実現するためのコンピュータプログラムの制御構造について説明する．
【００４７】
２．２．２  計算手順
図４及び図５を参照して，本実施の形態に係る学習を実現するためのプログラムは，以下の各ステップを有する．
１．（ステップ１１０）
正定値カーネルＫ(・,・)を用意する．
２．（ステップ１１２）
プロトタイプ集合｛ｐm｝Mm=1を用意する．プロトタイプ集合は予め準備しておくこともできるが，本実施の形態では，学習パターン集合｛ｘn｝Ｎn=1をクラスタリングすることによりプロトタイプ集合を求める．
３．（ステップ１１４及び１１６）
各クラスＣjに対して，Ｍ次係数ベクトルτ(0)jを初期化する（ｊ＝１，２，…，Ｊ）．
４.（ステップ１１８）
係数ベクトルτの適応的学習を通じた繰返回数を示す繰返制御変数ｔをｔ＝０に初期化する．同様に，全学習パターンを用いた繰返しの数を示すエポック回数を示す変数ｅの上限値Ｅを設定する．
５．（ステップ１２０）
係数ベクトルτについての適応的学習を行なう．この詳細については図５を参照して後述する．ステップ１２０の処理の結果，各クラスＣj（ｊ＝１，２，…，Ｊ）の各々について，判別関数ｇj(ｘ)を構成するために必要な係数ベクトルτj（ｊ＝１，２，…，Ｊ）を得ることができる．
６．（ステップ１２２及び１２４）
ステップ１２０の処理により最終的に得られた係数ベクトルτj（ｊ＝１，２，…，Ｊ）から，次式に従ってクラスＣj（ｊ＝１，２，…，Ｊ）の判別関数を構成する．
【００４８】
【数１５】
0005704692.tif 000016
【００４９】
７．（ステップ１２６）
ステップ１２２及び１２４の処理で得られた各クラスの判別関数ｇj(ｘ)（ｊ＝１，２，…，Ｊ）を所定の記憶装置に記憶して処理を終了する．
図５を参照して，図４に示すステップ１２０の係数ベクトルτの適応的学習処理は以下のステップを含む．
すなわち，係数ベクトルτの適応的学習処理では，エポック変数ｅ＝０，１，…，Ｅに対して以下の処理１５２を繰返す（ステップ１５０）．
処理１５２は，全学習パターンに対して以下の処理１６２を繰返すステップ１６０と，ステップ１６０の処理が終了したのち，学習パターン集合ΩNにおける学習パターンの並び順をシャッフルするステップ１６４とを含む．
処理１６２は以下のサブステップを含む．
（ａ）（サブステップ１７０）
学習パターン集合ΩNから，１個の学習パターン（ｘn，ｙn）を取り出す．
（ｂ）（サブステップ１７２）
式（７）に従い，Ｍ次ベクトルｋ(ｘn)を構成する．
（ｃ）（サブステップ１７４及び１７６）
各クラスＣj（ｊ＝１，２，…，Ｊ）に対して，判別関数値ｇjを以下の式に従い計算する（ｊ＝１，２，…，Ｊ）．
【００５０】
【数１６】
0005704692.tif 000017
（ｄ）（サブステップ１７８）
学習パターンｘnに対するｂｅｓｔ−ｉｎｃｏｒｒｅｃｔクラスＣinを次式にしたがって求める．
【００５１】
【数１７】
0005704692.tif 000018
（ｅ）（サブステップ１８０）
初期のＭＣＥ学習定式化における関数マージン型誤分類測度ｄynを次式にしたがって計算する．
【００５２】
【数１８】
0005704692.tif 000019
（ｆ）（サブステップ１８２）
幾何マージン型誤分類測度値Ｄynを次式に従って計算する．
【００５３】
【数１９】
0005704692.tif 000020
（ｇ）（サブステップ１８４）
次式に従って係数ベクトルτjを更新する（ｊ＝１，２，…，Ｊ）．
【００５４】
【数２０】
0005704692.tif 000021
【００５５】
（ｈ）（サブステップ１８６）
ｔ＝ｔ＋１と更新して，対象となっている学習パターンに対する処理を終了する．
以上のような制御構造を有するコンピュータプログラムをコンピュータで実行させることにより，第１の実施の形態に係る判別関数の学習が完了する．
【００５６】
（２．３  初期化（ステップ１１６））
本実施の形態では，上記コンピュータプログラムのステップ１１４及び１１６における初期化手法として，公知の多クラスサポートベクターマシーン（以下「ＭＳＶＭ」と略記）を採用する．他手法も可能であり，それらについては変形例として後述する．
【００５７】
再び図２を参照して，ＭＳＶＭでは，カーネルを定義する際にも現れる，非常に高い次元の空間３４（これを空間Ｈとする．）への特徴変換φ(・)を導入し，空間Ｈにおける線形判別関数を扱う．この線形判別関数は次式で与えられる．
【００５８】
【数２１】
0005704692.tif 000022
ＭＳＶＭにおける学習対象は，非常に高い次元の係数ベクトル集合｛ｗj｝Jj=1である．その学習は，次式の制約条件付き最適化問題の解を与える係数ベクトル集合｛ｗj｝Jj=1を探索することで行なわれる．
【００５９】
【数２２】
0005704692.tif 000023
ここで１(ｐ)は命題ｐが真なら１，偽なら０を返す指示関数である．目的関数の第１項
【００６０】
【数２３】
0005704692.tif 000024
は線形判別関数の係数ベクトルの大きさを制約する働きを持ち，この項の最小化は，空間Ｈにおける幾何マージン（式（１８）の判別関数により定まる空間Ｈでの分類決定境界Γ‘（図２を参照）と，それに最も近い学習パターンとの，空間Ｈにおけるユークリッド距離ｒ’）の最大化を目指すものである．また目的関数の第２項におけるξnはスラック変数とよばれる．上式の制約式は，「学習パターンｘnの所属しているクラスＣynの判別関数値は，クラスＣyn以外のクラスの判別関数値＋（１−ξn）よりも大きい」ということを表している．この制約は，正解クラスＣynに対応する判別関数値を，その他のクラスに対応する判別関数値より１以上大きくすることによってマージンをかせぐ効果をもたらしている．ただし，スラック変数ξnの値分だけはマージンが小さくなることを許容しており，目的関数の第２項の最小化により，この許容量を最小化しようとしている．更に，幾何マージン最大化のための係数ノルム最小化と上記スラック変数の最小化との２つの目的を達成するべく，両目的関数のハイパーパラメータβによる重み付け和により，ＭＳＶＭの目的関数が構成されている．
【００６１】
上記の制約条件付き最適化問題はラグランジュ乗数法によって解くことができ，結果的にＮ個のＪ次元ベクトル集合｛〜τn｝Ｎn=1に関する次式の凸最適化問題を解くことに帰着する．（この式中の「〜」は，数式イメージでは「τ」の直上に記載されている．）
【００６２】
【数２４】
0005704692.tif 000025
なおここで〜τnは
【００６３】
【数２５】
0005704692.tif 000026
である．式（６）の係数ベクトルτjがプロトタイプ番号ｍについて並べたＭ次ベクトルであったのに対し，上式の係数ベクトル〜τnはクラス番号ｊについて並べたＪ次ベクトルである．また式（２０）の「１yn」はｙn成分のみ１で他の成分が０のＪ次ベクトル，太字の「１」は全ての成分が１のＪ次ベクトルである．そして，所望の係数ベクトルｗjは次式で与えられる．
【００６４】
【数２６】
0005704692.tif 000027
更にこれを式（１８）に代入して，判別関数が次に示す式で与えられることとなる（定数倍β―１は分類決定に無関係のため省略可）．
【００６５】
【数２７】
0005704692.tif 000028
この判別関数（式（２３））は，プロトタイプ集合｛ｐm｝Mm=1＝｛ｘn｝Ｎn=1（Ｍ＝Ｎ）としたときの式（１）の判別関数と同じである．よって，プロトタイプ集合を学習パターン集合そのものとした場合に，ＭＳＶＭで計算される係数ベクトル集合｛τn,j｝Ｎn=1Jj=1を２．２で開示したアルゴリズムのステップ１１４及び１１６における初期化に用いることができる．
【００６６】
本実施の形態において，上述のＭＳＶＭをそのまま初期化として採用する場合，プロトタイプ集合を学習パターン集合そのものとする必要がある．したがって，特に学習パターンの総数が非常に多い場合，本実施の形態におけるＭＣＥ学習を非常に高い次元で行なわなければならず，計算量の爆発と数値的不安定性をもたらす．この高次元化の問題を回避するために，（１）上記のＭＳＶＭで得られたサポートパターンのみをプロトタイプとする方法，及び（２）プロトタイプ集合を学習パターン集合としたＭＳＶＭ法，のいずれかを適用することも可能である．以下，これら変形例についてその詳細を説明する．
【００６７】
〈変形例１〉
２．３．１  サポートパターンのみをプロトタイプとする方法
前記したＭＳＶＭでは，式（２０）の凸最適化問題を解いて得られる係数ベクトル集合｛〜τn｝Ｎn=1に含まれる係数ベクトルが，いくつかの（しばしば多くの）ｎに対して零ベクトル（又は零ベクトルに近いベクトル）となる．これは対応する学習パターンｘnが分類境界から遠く離れた正解クラスの領域に存在していることを意味しており，そのような学習パターンは分類境界の形成に対して貢献度が低いと考えられる．零ベクトルに近くない〜τnに対応する学習パターンｘnはサポートパターン又はサポートベクターとよばれる．よって，すべてのサポートパターンの集合をプロトタイプ集合｛ｐm｝Mm=1として，式（１）の判別関数を構成してもよい．この場合，Ｍはサポートパターンの総数となる．具体的には，係数ベクトルのノルムの絶対値があるしきい値以上となる学習パターンのみを用いればよい．
【００６８】
〈変形例２〉
２．３．２  プロトタイプ集合を学習パターン集合としたＭＳＶＭ法
この初期化手法の実装には，まず学習パターン集合｛ｘn｝Ｎn=1を所属クラス毎にクラスタリングしてプロトタイプ集合｛ｐm｝Mm=1を得て（クラス毎のクラスタリングであるため各ｐmにはその所属するクラス番号ｙmが付与されている．），そして式（１９），（２０），（２２）及び（２３）において，｛ｘn｝Ｎn=1を｛ｐm｝Mm=1に，｛ｙn｝Ｎn=1を｛ｙm｝Mm=1に，ＮをＭに，それぞれ置き換えるだけで良い．こうして得られる判別関数である式（２３）が本実施の形態で採用する式（１）と同型となる．クラスタリングの手法は問わないが，例えばＫ−ｍｅａｎｓ法を用いる場合の手法は非特許文献２で提案されている（ただし非特許文献２は２クラス分類を対象としたＳＶＭを扱っている）．
【００６９】
（２．４  本実施の形態の効果に対する理論的考察）
本実施の形態で採用する判別関数である式（１）は，前記ＭＳＶＭの定式化と同じように，高次元空間Ｈへの特徴変換写像φ(・)を使って次式のような空間Ｈ上の線形判別関数の形式で書き表すこともできる．
【００７０】
【数２８】
0005704692.tif 000029
特に，ｗj(τj)が空間Ｈに写されたプロトタイプ集合｛φ(ｐm)｝Mm=1の線形結合であり，その結合係数が式（６）の係数ベクトルτjの成分で，したがってｗj(τj)の値が係数ベクトルτjにより定まることに注意するべきである．式（２５）より，２つのクラスＣiとＣj（ｉ≠ｊ)に関して次式がなりたつことがわかる．
【００７１】
【数２９】
0005704692.tif 000030
ここでＭ次係数ベクトルτj及びＭ次行列Ｋはそれぞれ式（６）及び式（２）で与えられている．そして２．１で述べたような境界付近の正分類学習パターンｘｏをとり，この正解クラスとbest-incorrectクラスとをそれぞれＣy及びＣiとする．式（２６）がなりたつことと，判別関数ｇj(ｘ；Λ)が式（５）と式（２４）との２通りに書けることにより，以下の等式がなりたつことがわかる．
【００７２】
【数３０】
0005704692.tif 000031
【００７３】
２．１で議論したように，上式（２７）の左辺はＭ次元空間Ｂにおける幾何マージンを表す．２．１での議論と同様の議論を高次元空間Ｈにおける線形判別関数である式（２４）に当てはめることにより，式（２７）の右辺が空間Ｈにおける幾何マージンを表していることもわかる．すなわち式（２７）は，高々有限次元の空間Ｂにおける幾何マージンと非常に高い次元の（しばしば無限次元の）特徴空間Ｈにおける幾何マージンとが一致することを示している．その結果，有限次元である係数ベクトル集合｛τj｝Jj=1を調整する本実施の形態の大幾何マージンＭＣＥ学習が，カーネルに付随する非常に高い次元の特徴空間における大幾何マージンＭＣＥ学習にもなっていることが保証されている．
【００７４】
式（２７）の右辺からわかるように，２クラス対の係数ベクトルの差のノルム||ｗy−ｗI||を小さくすることが，高次元空間Ｈにおける幾何マージンの増大化に対応する．ところが，ＭＳＶＭの学習目的関数である式（１９）は，差ではなく係数ベクトルそのもののノルム||ｗj||の２乗総和ΣJj=1||ｗj||2の最小化を目指している．この総和を小さくしても，各クラスに関する係数ベクトル個々のノルムが小さくなる保証はない．更にまた，本来目指すべき各クラス対の係数ベクトル差のノルムが小さくなることも保証されない．つまりＭＳＶＭにおける幾何マージン増大化は不十分であることがわかる．これに対し本実施の形態は，式（２７）の関係から，高々有限次元の係数ベクトルτjの調整によって空間Ｈにおける幾何マージンを直接的に増大させることができる．またＭＳＶＭは，式（１９）において，学習パターンｘnに対する損失であるスラック変数ξnが分類誤り数を直接的に表しておらず，学習パラメータ最適化が分類誤り最小化の最終目的に対して直接的ではない．しかし本実施の形態ではＭＣＥ学習を用いており，学習パラメータ最適化が分類誤り最小化の最終目的に対して直接的である．
【００７５】
すなわち，本実施の形態においては，カーネルを用いているため判別関数がＭＳＶＭと同様の高い表現能力を有している．しかも有限次元パラメータの調節を介して，分類誤り率の最小化とカーネルに付随する高次元空間における幾何マージンの増大化とが共に実現可能である．言い換えれば，本実施の形態により，複雑な分類タスクにおいて，未知パターンに対する高い認識率が実現できる．
【００７６】
［３  さらなる変形例］
（３．１  混合ガウスモデル及び動径基底関数ネットワークによる初期化）
カーネルとして式（３）のガウス関数を用いた場合，上記実施の形態における判別関数である式（１）は，パラメータの集合｛τm,j｝Mm=1Jj=1とプロトタイプ集合｛ｐm｝Mm=1とを適当に定めることにより，混合ガウスモデル（Ｇａｕｓｓｉａｎ  Ｍｉｘｔｕｒｅ  Ｍｏｄｅｌ：ＧＭＭ）又は動径基底関数（Ｒａｄｉａｌ  Ｂａｓｉｃ  Ｆｕｎｃｔｉｏｎ：ＲＢＦ）ネットワーク（C.  M.  Bishop（元田浩，栗田多喜夫，樋口知之，松本裕治，村田昇監訳），パターン認識と機械学習，シュプリンガー・ジャパン，東京，2007.）と同じ形をしていることがわかる．従来，ＧＭＭに関しては，最尤推定法又は初期のＭＣＥ学習法によりパラメータ推定が行なわれていた．ＲＢＦネットワークに関しては，最小２乗法又は初期のＭＣＥ学習法により学習がなされていた．
【００７７】
そこで，これらの既学習のＧＭＭ又はＲＢＦネットワークを，２．２．２において開示したアルゴリズムのサブステップ１１４及び１１６における初期化として採用してもよい．こうすることにより，これらの古くから馴染み深い分類器モデルに対して，高次元空間における幾何マージン増大化の概念が導入され，複雑なパターン分布に対する分類精度の向上が実現される．
【００７８】
（３．２  値が０であるパラメータの固定）
２．２．２において開示したアルゴリズムのステップ１１４及び１１６における初期化において，係数の集合｛τ(0)m,j｝Mm=1Jj=1の中の係数ベクトルのいくつかが（しばしば多くが）０（又は０に近い値）となる．本実施の形態では，図４及び図５に示すコンピュータプログラムにおいて，そのようなパラメータを０に固定するような修正を施してもよい．
【００７９】
（３．３  係数ベクトル集合｛αj｝Jj=1の調整）
２．２．２において開示したアルゴリズムは，係数ベクトル集合｛τj｝Jj=1の調整による式（１３）の幾何マージンの増大化を行なう．しかし，本発明はそのような実施の形態には限定されない．例えば，係数ベクトル集合｛αj｝Jj=1の調整による式（１２）の増大化を行なってもよい．その際に大幾何マージンＭＣＥ学習で用いられる誤分類測度は
【００８０】
【数３１】
0005704692.tif 000032
であり，学習のためのコンピュータプログラムは次に説明する第２の実施の形態のような制御構造を持つものとなる．
【００８１】
（３．４  プロトタイプの調整）
２．２．２において開示した制御構造を持つコンピュータプログラムは，式（１）の判別関数におけるパラメータの集合｛τm,j｝Mm=1Jj=1のみを調整する．しかし，本発明はそのような実施の形態には限定されない．例えば，この係数のみならず，プロトタイプ集合｛ｐm｝Mm=1をも大幾何マージンＭＣＥ学習法に基づいて調整しても良い．こうすることで，幾何マージン増大化及び分類誤り確率最小化の目的に対して最適なプロトタイプを自動的に学習することが可能となり，分類器の分類精度が更に向上する．
【００８２】
プロトタイプをも調整するアルゴリズムは，図４及び図５に示したプロトタイプ集合｛ｐm｝Mm=1，ｋ(ｘn)及びグラム行列Ｋをそれぞれ繰返し番号ｔの添字のついたプロトタイプ集合｛ｐ(t)m｝Mm=1，ｋ(t)(ｘn)，及びグラム行列Ｋ(t)に置き換え，更に図５のサブステップ１８４においてプロトタイプに関する更新式を付け加えるだけで良い．ここで，ｋ(t)(ｘ)及びＫ(t)は，それぞれ式（７）及び式（２）において，ｐm＝ｐ(t)m（ｍ＝１，…，Ｍ）としたものである．例えば式（３）のガウシアンカーネルを用いた場合の学習アルゴリズムを採用したものが，後述の第３の実施の形態である．
【００８３】
［第２の実施の形態］
図６を参照して，この発明の第２の実施の形態を実現するためのコンピュータプログラムは以下のような制御構造を有する．
１．（ステップ１１０）
正定値カーネルＫ(・,・)を用意する．
２．（ステップ１１２）
プロトタイプ集合｛ｐm｝Mm=1を用意する．必要ならば，学習パターン集合｛ｘn｝Nn=1をクラスタリングすることによりプロトタイプ集合を求める．
３．（ステップ２１０）
式（２）に従ってグラム行列Ｋを構成し，更に式（８）のコレスキー分解を行ない，下三角行列Ｌを得る．
４.（ステップ１１４及び１１６）
各クラスＣjに対して，Ｍ次係数ベクトルτ(0)jを初期化する（ｊ＝１，…，Ｊ）．
５．（ステップ２１２及び２１４）
各クラスＣjに対して，Ｍ次係数ベクトルα(0)jをα(0)j＝ＬTτ(0)jにより計算する（ｊ＝１，…，Ｊ）．
６．（ステップ１１８）
繰返番号を表す変数ｔを０に設定する．またエポック回数ｅの上限値Ｅを設定する．
７．（ステップ２２０）
ｅ＝０，１，…，Ｅに対して，係数ベクトルαの適応的学習処理を実行する．この処理の詳細については図７を参照して後述する．
８．（ステップ２２２及び２２４）
最終的に得られた係数ベクトルαjから，次式に従ってクラスＣjの判別関数ｇj(ｘ；Λ)を構成する（ｊ＝１，…，Ｊ）．
【００８４】
【数３２】
0005704692.tif 000033
ただしβ(ｘ)は連立1次方程式：Ｌβ＝ｋ(ｘ)のβについての解である．
【００８５】
９．（ステップ１２６）
このようにして各クラスＣjに関する判別関数ｇj(ｘ)が得られたら，それらを所定の記憶装置に記憶して処理を終了する．
図７を参照して．図６のステップ２２０で行なわれるαjに関する適応的学習処理を実現するプログラムは，以下のような制御構造を持つ．
この処理は，ｅ＝０，１，…，Ｅに対して以下の処理２５２を実行するステップ２５０を含む．
処理２５２は，学習パターン集合｛ｘn｝Nn=1の全ての要素に対して以下の処理２６２を実行するステップ２６０と，ステップ２６０の処理が完了した後，学習パターン集合ΩN内の学習パターンの並び順をシャッフルするステップ２６４とを含む．
処理２６２は，以下のサブステップを含む．
（ａ）（サブステップ１７０）
学習パターン集合ΩNから，１個の学習パターン｛ｘn，ｙn｝を取り出す．
（ｂ）（サブステップ１７２）
式（７）に従い，Ｍ次ベクトルｋ(ｘn)を構成する．
（ｃ）（サブステップ２７０）
連立１次方程式：Ｌβ＝ｋ(ｘn)をβについて解き，解βnを得る．
（ｄ）（サブステップ２７２及び２７４）
各クラスＣjに対して，判別関数値ｇjをｇj＝｛α(t)j｝Tβnにしたがい計算する（ｊ＝１，…，Ｊ）．
（ｅ）（サブステップ１７８）
学習パターンｘnに対するbest-incorrectクラスＣinをｇin＝maxJj,j≠ynｇjに従って求める．
（ｆ）（サブステップ１８０）
ｄyn＝−ｇyn＋ｇinを計算する．
（ｇ）（サブステップ１８２）
幾何マージン型誤分類測度値を次式に従って計算する．
【００８６】
【数３３】
0005704692.tif 000034
（ｈ）（サブステップ２７６）
次式に従って係数ベクトルαjを更新し（ｊ＝１，…，Ｊ），その後変数ｔの値を１インクリメントする．
【００８７】
【数３４】
0005704692.tif 000035
【００８８】
《第３の実施の形態》
例えば式（３）のガウシアンカーネルを用いた場合の学習アルゴリズムは，ここに説明する第３の実施の形態のアルゴリズムとなる．以下，図８及び図９を参照してこのアルゴリズムを実現するコンピュータプログラムの制御構造について説明する．
１．（ステップ１１０）
式（３）のガウシアンカーネルＫ(・,・)を用意する．
２．（ステップ１１２）
プロトタイプ集合｛ｐ(0)m｝Mm=1を用意する．必要ならば，学習パターン集合｛ｘn｝Nn=1をクラスタリングすることによりプロトタイプ集合を求める．
３.（ステップ１１４及び１１６）
各クラスＣjに対して，Ｍ次係数ベクトルτ(0)jを初期化する（ｊ＝１，…，Ｊ）．
４．（ステップ１１８）
繰返番号を表す変数ｔを０に設定する．またエポック回数ｅの上限値Ｅを設定する．
５．（ステップ３００）
ｅ＝０，１，…，Ｅに対して，係数ベクトルτとｐmの適応的学習処理を実行する．この処理の詳細については図９を参照して後述する．
６．（ステップ３０２及び３０４）
最終的に得られた係数ベクトル集合｛τj｝Jj=1及びプロトタイプ集合｛ｐm｝Mm=1から，次式に従ってクラスＣjの判別関数ｇj(ｘ)を構成する（ｊ＝１，…，Ｊ）．
【００８９】
【数３５】
0005704692.tif 000036
【００９０】
９．（ステップ１２６）
このようにして各クラスＣjに関する判別関数ｇj(ｘ)が得られたら，それらを所定の記憶装置に記憶して処理を終了する．
【００９１】
図９を参照して，図８のステップ３００で行なわれる係数ベクトルτとｐmの適応的学習処理を実現するプログラムは，以下のような制御構造を持つ．
この処理は，ｅ＝０，１，…，Ｅに対して以下の処理３１２を実行するステップ３１０を含む．
処理３１２は，学習パターン集合｛ｘn｝Nn=1の全ての要素に対して以下の処理３２２を実行するステップ３２０と，ステップ３２０の処理が完了した後，学習パターン集合ΩN内の学習パターンの並び順をシャッフルするステップ３２４とを含む．
処理３２２は，以下のサブステップを含む．
（ａ）（サブステップ１７０）
学習パターン集合ΩNから，１個の学習パターン｛ｘn，ｙn｝を取り出す．
（ｂ）（サブステップ３３０）
式（７）に従い，Ｍ次ベクトルｋ(t)(ｘn)を構成する．
（ｃ）（サブステップ３３２及び３３４）
各クラスＣjに対して，判別関数値ｇjをｇj＝｛τ(t)j｝Tｋ(t)(ｘn)にしたがい計算する（ｊ＝１，…，Ｊ）．
（ｄ）（サブステップ１７８）
学習パターンｘnに対するbest-incorrectクラスＣinをｇin＝maxJj,j≠ynｇjにより求める．
（ｅ）（サブステップ１８０）
ｄyn＝−ｇyn＋ｇinを計算する．
（ｆ）（サブステップ３３６）
幾何マージン型誤分類測度値を次式に従って計算する．
【００９２】
【数３６】
0005704692.tif 000037
（ｇ）（サブステップ３３８）
次式に従って係数ベクトル集合｛τj｝Jj=1及びプロトタイプ集合｛ｐm｝Mm=1を更新する（ｊ＝１，…，Ｊ）．
【００９３】
【数３７】
0005704692.tif 000038
（ｈ）（サブステップ１８６）
変数ｔの値を１インクリメントする．
【００９４】
以上に説明した本発明の実施の形態に係る学習装置は，カーネル関数を用いる分類器及び確率モデルを適用する分類器の汎用性をそのまま受け継ぐものである．したがって上記したような学習装置は，実施の形態で説明したような話者判別装置のみならず，入力パターンを予め定められた複数のクラスの１つに割当てるような任意のパターン認識器に応用可能である．より具体的な例として，パターンとクラス・プロトタイプとの距離尺度に基づいて判別関数を計算する文字認識装置，隠れマルコフモデルを用いてパターンのクラス帰属確率を計算しそれを判別関数とする音声認識装置等が挙げられる．
【００９５】
[コンピュータによる実現]
上述の実施の形態は，コンピュータシステムと，コンピュータシステム上で動作するコンピュータプログラムとによって実現されうる．図１０はこの実施の形態で用いられるコンピュータシステム５３０の外観を示し，図１１はコンピュータシステム５３０のブロック図である．ここに示すコンピュータシステム５３０は単なる例示であって，他の構成も利用可能である．
【００９６】
図１０を参照して，コンピュータシステム５３０は，コンピュータ５４０と，全てコンピュータ５４０に接続された，モニタ５４２，キーボード５４６，マウス５４８，スピーカ５７２及びマイクロフォン５７０とを含む．さらに，コンピュータ５４０は，ＤＶＤ(Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ)ドライブ５５０と，半導体メモリドライブ５５２とを含む．
【００９７】
図１１を参照して，コンピュータ５４０はさらに，ＤＶＤドライブ５５０と半導体メモリドライブ５５２とに接続されたバス５６６と，全てバス５６６に接続された，ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ：中央処理装置）５５６，コンピュータ５４０のブートアッププログラム等を記憶するＲＯＭ（Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ：読出し専用メモリ）５５８，ＣＰＵ５５６の作業領域を提供するとともにＣＰＵ５５６によって実行されるプログラムの記憶領域を提供するＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ：ランダムアクセスメモリ）５６０，並びに学習パターン集合及び判別関数を記憶するハードディスクドライブ（ＨＤＤ）５５４とを含む．
【００９８】
上述の実施の形態のシステムを実現するソフトウェアは，ＤＶＤ５６２又は半導体メモリ５６４等の記憶媒体に記録されるオブジェクトコード又はスクリプトの形で配布され，ＤＶＤドライブ５５０又は半導体メモリドライブ５５２等の読出装置によってコンピュータ５４０に与えられ，ＨＤＤ５５４に記憶されてもよい．ＣＰＵ５５６がプログラムを実行するときは，プログラムはＨＤＤ５５４から読出され，ＲＡＭ５６０に記憶される．ＲＡ５６０の，ＣＰＵ５５６内の図示しないプログラムカウンタによって指示されるアドレスから命令がフェッチされ，その命令が実行される．ＣＰＵ５５６は処理すべきデータをハードディスクドライブ５５４又はＲＡＭ５６０等から読出し，処理結果をまたハードディスクドライブ５５４又はＲＡＭ５６０等に記憶する．
【００９９】
コンピュータシステム５３０の一般的動作は周知であるので，詳細な説明はここでは行なわない．
【０１００】
ソフトウェア配布の方法については，これを記憶媒体に固定することは必ずしも必要でない．例えば，ソフトウェアはネットワークに接続された別のコンピュータから配布されてもよい．ソフトウェアの一部をハードディスクドライブ５５４に記憶させ，ソフトウェアの残りの部分をネットワークを介してハードディスクに取込み，実行時に統合してもよい．
【０１０１】
典型的には，現代のコンピュータはコンピュータのオペレーティングシステム（ＯＳ）によって提供される一般的な機能を利用し，所望の目的にしたがって制御されたやり方で機能を実行する．さらに，サードパーティによって提供されるコンピュータプログラムツールキット又はツールボックスは基本的なものだけでなく，学習アルゴリズムの単位を構成する機能（例えばクラスタリングツール，ＭＳＶＭ学習ツール等の数値処理プログラムキット）を提供する洗練されたプログラムもある．したがって，ＯＳ又はサードパーティによって提供されうる一般的な機能を含まず，単にこうした単位となる機能の実行順序の組合せを指示するのみのプログラムも，そのプログラムが全体として所望の目的を達成するのであれば，この発明の範囲に含まれる．
【０１０２】
以上のように，本発明によれば，公知技術である大幾何マージンＭＣＥ学習法を，カーネルの線形和の形式を持つ判別関数の線形和係数パラメータに対して適用する．これにより，カーネルを用いて精緻な分類決定境界を形成することが可能となる．それだけでなく，分類誤り最小化と未知パターンに対する耐性向上とを共に直接的に目指す学習法が定型化される．結果的に，本発明により，パターンの分布構造が複雑である場合においても,学習パターン以外の未知パターンに対する高い認識率が得られる．
【０１０３】
今回開示された実施の形態は単に例示であって，本発明が上記した実施の形態のみに制限されるわけではない．本発明の範囲は，発明の詳細な説明の記載を参酌した上で，特許請求の範囲の各請求項によって示され，そこに記載された文言と均等の意味及び範囲内での全ての変更を含む．
【符号の説明】
【０１０４】
２０，３０  入力パターン空間
２２，２４，２６，２８  クラス
３２  写像先のＭ次元空間
３４  非常に高い次元の空間
４０  話者識別のためのシステム
４２  判別関数学習装置
４４  判別関数伝達媒体
４６  入力音声
４８  話者判別装置
５０  話者判別結果
６０  学習発話データを記憶する第１の記憶装置
６２，８２  特徴量抽出部
６４  第２の記憶装置
６６  学習装置
８０  判別関数記憶部
８４  話者判別部
【図１】
0005704692.tif 000039
【図２】
0005704692.tif 000040
【図３】
0005704692.tif 000041
【図４】
0005704692.tif 000042
【図５】
0005704692.tif 000043
【図６】
0005704692.tif 000044
【図７】
0005704692.tif 000045
【図８】
0005704692.tif 000046
【図９】
0005704692.tif 000047
【図１０】
0005704692.tif 000048
【図１１】
0005704692.tif 000049