(57)【要約】【課題】従来よりも好適な認識システムの計算モデルを導出すること。【解決手段】計算モデルの導出に際しては、計算モデルの原型となる演算式Ｎが要素に有する学習パラメータＷ＝｛ｗ１，…，ｗｓ｝の解を求めるため、サンプルデータ（学習データ）を複数個用意する。また、演算式Ｎが要素に有する非線形関数を多項式近似し（Ｓ１８０）、演算式Ｎを、各入力データに対応する変数Ｘ＝｛ｘ１，…，ｘｍ｝の近似多項式Ｆに変換する（Ｓ１９０）。そして、近似多項式Ｆを構成する各項の変数部を、独立した変数Ｚ＝｛ｚ１，…，ｚｎ｝とし、変数Ｚの近似多項式Ｆに関して、サポートベクタマシンの手法により、サンプルデータに最適な係数ｇ１，…，ｇｎ及び定数項ｇ０を算出する（Ｓ２００）。また、算出した係数ｇ１，…，ｇｎ及び定数項ｇ０に基づき、Ｗの最適解を算出し、この最適解を設定してなる演算式Ｎを、サンプルデータに最適な計算モデルとして導出する。【選択図】図４
2007213403.tif 000002
【特許請求の範囲】
【請求項１】
入力データの組に対応するカテゴリを表す値を、所定の計算モデルに基づき算出して、前記入力データの組に対応するカテゴリを認識する認識システムの計算モデルとして、
入力データの組及びこれに対応するカテゴリを表す値の組合せからなるサンプルデータの複数に基づき、これらのサンプルデータに対応する計算モデルを導出する方法であって、
前記計算モデルの原型となる演算式が要素に有する非線形関数を多項式近似し、前記演算式を、各入力データに対応する変数Ｘ＝｛ｘ１，…，ｘｍ｝の近似多項式に変換する手順（ａ）と、
前記手順（ａ）によって得られた前記近似多項式を構成する変数Ｘ＝｛ｘ１，…，ｘｍ｝の組合せからなる各項の変数部を、独立した変数Ｚ＝｛ｚ１，…，ｚｎ｝とし、前記サンプルデータの複数を用いて、サポートベクタマシンの手法により、前記近似多項式を構成する各変数ｚ１，…，ｚｎの係数ｇ１，…，ｇｎ及び定数項ｇ０を算出する手順（ｂ）と、
を含み、前記手順（ｂ）にて算出した係数ｇ１，…，ｇｎ及び定数項ｇ０に基づき、この係数ｇ１，…，ｇｎ及び定数項ｇ０を設定した前記近似多項式と等価な演算によって前記カテゴリを表す値を算出可能な計算モデルを、前記サンプルデータに対応する計算モデルとして導出することを特徴とするモデル導出方法。
【請求項２】
入力データの組に対応するカテゴリを表す値を、所定の計算モデルに基づき算出して、前記入力データの組に対応するカテゴリを認識する認識システムの計算モデルとして、
入力データの組及びこれに対応するカテゴリを表す値の組合せからなるサンプルデータの複数に基づき、これらのサンプルデータに対応する計算モデルを導出する方法であって、
前記計算モデルの原型となる演算式が要素に有する非線形関数を多項式近似し、前記演算式を、各入力データに対応する変数Ｘ＝｛ｘ１，…，ｘｍ｝の近似多項式に変換する手順（ａ）と、
前記手順（ａ）によって得られた前記近似多項式を構成する変数Ｘ＝｛ｘ１，…，ｘｍ｝の組合せからなる各項の変数部を、独立した変数Ｚ＝｛ｚ１，…，ｚｎ｝とし、前記各サンプルデータが有する入力データの組を、変数Ｚを座標とするｎ次元空間に配置した場合に、前記近似多項式が、各サンプルデータをカテゴリ毎に分離しつつカテゴリ毎のサンプルデータ群から最も離れた位置を通る超平面からの符号付距離に比例した量を表すように、前記近似多項式を構成する各変数ｚ１，…，ｚｎの係数ｇ１，…，ｇｎ及び定数項ｇ０を算出する手順（ｂ）と、
を含み、前記手順（ｂ）にて算出した係数ｇ１，…，ｇｎ及び定数項ｇ０に基づき、この係数ｇ１，…，ｇｎ及び定数項ｇ０を設定した前記近似多項式と等価な演算によって前記カテゴリを表す値を算出可能な計算モデルを、前記サンプルデータに対応する計算モデルとして導出することを特徴とするモデル導出方法。
【請求項３】
前記手順（ｂ）にて算出した係数ｇ１，…，ｇｎ及び定数項ｇ０に基づき、前記計算モデルの原型が要素に有する定数Ｗ＝｛ｗ１，…，ｗｓ｝の値を算出する手順（ｃ）
を含み、前記計算モデルの原型に前記手順（ｃ）にて算出した定数Ｗ＝｛ｗ１，…，ｗｓ｝の値を設定してなる計算モデルを、前記サンプルデータに対応する計算モデルとして導出することを特徴とする請求項１又は請求項２記載のモデル導出方法。
【請求項４】
前記サンプルデータに対応する計算モデルとして、
前記手順（ｂ）にて算出した係数ｇ１，…，ｇｎ及び定数項ｇ０を設定した前記近似多項式を、これより低次元の近似多項式に変換してなる計算モデルを導出することを特徴とする請求項１又は請求項２記載のモデル導出方法。
【請求項５】
前記非線形関数は、ガウス関数、又は、シグモイド関数、又は、ハイパボリックタンジェント関数であることを特徴とする請求項１〜請求項４のいずれかに記載のモデル導出方法。
【請求項６】
入力データの組に対応するカテゴリを表す値を、所定の計算モデルに基づき算出して、前記入力データの組に対応するカテゴリを認識する認識システムの計算モデルとして、
入力データの組及びこれに対応するカテゴリを表す値の組合せからなるサンプルデータの複数に基づき、これらのサンプルデータに対応する計算モデルを導出するモデル導出装置であって、
前記各サンプルデータの入力を受け付けるサンプル受付手段と、
前記計算モデルの原型となる演算式の指定情報を受け付ける原型受付手段と、
前記原型受付手段が受け付けた指定情報に基づき、外部から指定された演算式が要素に有する非線形関数を多項式近似し、前記演算式を、各入力データに対応する変数Ｘ＝｛ｘ１，…，ｘｍ｝の近似多項式に変換する変換手段と、
前記変換手段により生成された前記近似多項式を構成する変数Ｘ＝｛ｘ１，…，ｘｍ｝の組合せからなる各項の変数部を、独立した変数Ｚ＝｛ｚ１，…，ｚｎ｝とし、前記サンプル受付手段により受け付けられた各サンプルデータを用いて、サポートベクタマシンの手法により、前記近似多項式を構成する各変数ｚ１，…，ｚｎの係数ｇ１，…，ｇｎ及び定数項ｇ０を算出する係数算出手段と、
前記係数算出手段により算出された係数ｇ１，…，ｇｎ及び定数項ｇ０に基づき、この係数ｇ１，…，ｇｎ及び定数項ｇ０を設定した前記近似多項式を表す情報を、前記サンプルデータに対応する計算モデルを表す情報として、出力する出力手段と、
を備えることを特徴とするモデル導出装置。
【請求項７】
入力データの組に対応するカテゴリを表す値を、所定の計算モデルに基づき算出して、前記入力データの組に対応するカテゴリを認識する認識システムの計算モデルとして、
入力データの組及びこれに対応するカテゴリを表す値の組合せからなるサンプルデータの複数に基づき、これらのサンプルデータに対応する計算モデルを導出するモデル導出装置であって、
前記各サンプルデータの入力を受け付けるサンプル受付手段と、
前記計算モデルの原型となる演算式の指定情報を受け付ける原型受付手段と、
前記原型受付手段が受け付けた指定情報に基づき、外部から指定された演算式が要素に有する非線形関数を多項式近似し、前記演算式を、各入力データに対応する変数Ｘ＝｛ｘ１，…，ｘｍ｝の近似多項式に変換する変換手段と、
前記変換手段により生成された前記近似多項式を構成する変数Ｘ＝｛ｘ１，…，ｘｍ｝の組合せからなる各項の変数部を、独立した変数Ｚ＝｛ｚ１，…，ｚｎ｝とし、前記各サンプルデータが有する入力データを、変数Ｚを座標とするｎ次元空間に配置した場合に、前記近似多項式が、各サンプルデータをカテゴリ毎に分離しつつカテゴリ毎のサンプルデータ群から最も離れた位置を通る超平面からの符号付距離に比例した量を表すように、前記近似多項式を構成する各変数ｚ１，…，ｚｎの係数ｇ１，…，ｇｎ及び定数項ｇ０を算出する係数算出手段と、
前記係数算出手段により算出された係数ｇ１，…，ｇｎ及び定数項ｇ０に基づき、この係数ｇ１，…，ｇｎ及び定数項ｇ０を設定した前記近似多項式を表す情報を、前記サンプルデータに対応する計算モデルを表す情報として、出力する出力手段と、
を備えることを特徴とするモデル導出装置。
【請求項８】
前記係数算出手段により算出された係数ｇ１，…，ｇｎ及び定数項ｇ０に基づき、前記計算モデルの原型が要素に有する定数Ｗ＝｛ｗ１，…，ｗｓ｝の値を算出する定数部算出手段
を備え、
前記出力手段は、前記近似多項式を表す情報に代えて、前記計算モデルの原型に、前記定数部算出手段により算出された定数Ｗ＝｛ｗ１，…，ｗｓ｝の値を設定してなる演算式を表す情報を、前記サンプルデータに対応する計算モデルを表す情報として、出力する構成にされていることを特徴とする請求項６又は請求項７記載のモデル導出装置。
【請求項９】
前記係数算出手段により算出された係数ｇ１，…，ｇｎ及び定数項ｇ０を設定した前記近似多項式を、これより低次元の近似多項式に変換する次元変更手段
を備え、
前記出力手段は、前記近似多項式を表す情報に代えて、前記次元変更手段による変換後の前記近似多項式を表す情報を、前記サンプルデータに対応する計算モデルを表す情報として、出力する構成にされていることを特徴とする請求項６又は請求項７記載のモデル導出装置。
【請求項１０】
入力データの組に対応するカテゴリを表す値を、所定の計算モデルに基づき算出して、前記入力データの組に対応するカテゴリを認識する認識システムの計算モデルとして、
入力データの組及びこれに対応するカテゴリを表す値の組合せからなるサンプルデータの複数に基づき、これらのサンプルデータに対応する計算モデルを導出するモデル導出装置のコンピュータに、
前記計算モデルの原型となる演算式が要素に有する非線形関数を多項式近似し、前記演算式を、各入力データに対応する変数Ｘ＝｛ｘ１，…，ｘｍ｝の近似多項式に変換する手順（ａ）と、
前記手順（ａ）によって得られた前記近似多項式を構成する変数Ｘ＝｛ｘ１，…，ｘｍ｝の組合せからなる各項の変数部を、独立した変数Ｚ＝｛ｚ１，…，ｚｎ｝とし、前記サンプルデータの複数を用いて、サポートベクタマシンの手法により、前記近似多項式を構成する各変数ｚ１，…，ｚｎの係数ｇ１，…，ｇｎ及び定数項ｇ０を算出する手順（ｂ）と、
を実行させるためのプログラム。
【請求項１１】
入力データの組に対応するカテゴリを表す値を、所定の計算モデルに基づき算出して、前記入力データの組に対応するカテゴリを認識する認識システムの計算モデルとして、
入力データの組及びこれに対応するカテゴリを表す値の組合せからなるサンプルデータの複数に基づき、これらのサンプルデータに対応する計算モデルを導出するモデル導出装置のコンピュータに、
前記計算モデルの原型となる演算式が要素に有する非線形関数を多項式近似し、前記演算式を、各入力データに対応する変数Ｘ＝｛ｘ１，…，ｘｍ｝の近似多項式に変換する手順（ａ）と、
前記手順（ａ）によって得られた前記近似多項式を構成する変数Ｘ＝｛ｘ１，…，ｘｍ｝の組合せからなる各項の変数部を、独立した変数Ｚ＝｛ｚ１，…，ｚｎ｝とし、前記各サンプルデータが有する入力データを、変数Ｚを座標とするｎ次元空間に配置した場合に、前記近似多項式が、各サンプルデータをカテゴリ毎に分離しつつカテゴリ毎のサンプルデータ群から最も離れた位置を通る超平面からの符号付距離に比例した量を表すように、前記近似多項式を構成する各変数ｚ１，…，ｚｎの係数ｇ１，…，ｇｎ及び定数項ｇ０を算出する手順（ｂ）と、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、認識行為を実現する計算モデルを導出するためのモデル導出方法、及び、モデル導出装置、並びに、プログラムに関する。
【背景技術】
【０００２】
従来より、認識行為を、コンピュータ上で実現する方法としては、ニューラルネットワークを用いた方法が知られている（例えば、特許文献１参照）。ニューラルネットワークは、神経細胞の機能を数式によりモデル化したものである。神経細胞は、入力信号により加わる電位が閾値を超えると、パルスを発するといった機能を有し、ニューラルネットワークでは、このような機能を、シグモイド関数等の非線形関数を用いて実現する。
【０００３】
即ち、ニューラルネットワークでは、入力値を、非線形関数に代入して、その出力値を、次の神経細胞に対応する非線形関数に代入するといった演算を実行する。そして、認識結果に対応する出力値を、末端の非線形関数の出力値から得る。尚、神経細胞間を結ぶ各シナプスは、異なる伝播効率を有し、認識の結果は、神経細胞間の接続関係及び各神経細胞間の伝播効率によって変化する。ニューラルネットワークにおいては、非線形関数の出力値を結合荷重Ｗで重み付けして、次の非線形関数に代入することで、これをモデル化し、結合荷重Ｗの調整によって、所望の認識行為を実現するニューラルネットワークを構築する。
【０００４】
具体的に、ニューラルネットワークを構築するに当たっては、ニューラルネットワークの基本モデル、即ち、神経細胞に対応するユニット間の接続関係を決定し、その後に、入出力関係を表すサンプルデータ（所謂、学習データ）を、基本モデルに与えて、結合荷重Ｗを決定する。尚、ニューラルネットワークの基本モデルとしては、階層型ネットワーク等が知られ、この階層型ネットワークにおける結合荷重Ｗの決定方法（学習方法）としては、バックプロパゲーション法が知られている。
【特許文献１】特開２００５−３１６８８８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来知られている結合荷重Ｗの決定方法では、次のような問題があった。即ち、バックプロパゲーション法では、サンプルデータの出力値と、サンプルデータの入力値を用いてニューラルネットワークで得られた出力値との二乗誤差を小さくする方向に、結合荷重Ｗを修正していくため、学習時に与える結合荷重Ｗの初期値によっては、最適解を求められない可能性があった。
【０００６】
ここで、バックプロパゲーション法による結合荷重Ｗの決定方法について、簡単なニューラルネットワークを例に挙げて説明する。具体的に、ここでは、入力ユニットを２つ、出力ユニットを１つ、非線形関数ｕ（ｘ）としてシグモイド関数
【０００７】
【数１】
2007213403.tif 000003
【０００８】
が採用された中間ユニットを２つ有する三層フィードフォワードニューラルネットワーク（図２参照）を例に挙げて説明する。このニューラルネットワークの入出力関係は、次式で表される。
【０００９】
【数２】
2007213403.tif 000004
【００１０】
このニューラルネットワークの結合荷重Ｗ＝｛ｗ１，…，ｗ９｝が、Ｉ個（ｉ＝１，２，…Ｉ）のサンプルデータ｛ｘ１（ｉ），ｘ２（ｉ），Ｔ（ｉ）｝によって学習されるものとすると、バックプロパゲーション法では、二乗誤差ＥＥ
【００１１】
【数３】
2007213403.tif 000005
【００１２】
の最小値を求めることになる。尚、Ｔ（ｉ）は、入力データｘ１（ｉ），ｘ２（ｉ）に対応するカテゴリを表す値（ニューラルネットワークにて算出されるべき理想値）であり、例えば、−１又は＋１を採る。
【００１３】
しかしながら、二乗誤差ＥＥは、ｗ１，…，ｗ９の非線形関数であるため、図８に示すように、この二乗誤差ＥＥには、極小値が複数存在し、学習時におけるｗ１，…，ｗ９の初期値の設定次第では、最小値ではない極小点に収束するように、学習が行われて、ｗ１，…，ｗ９の解が求められる可能性があった。即ち、従来手法では、結合荷重Ｗについて局所解しか求めることができないため、適切な結合荷重Ｗの解を得られない可能性があった。
【００１４】
また、従来手法では、サンプルデータに従って、二乗誤差ＥＥが小さくなるように、結合荷重Ｗの解を求める程度であるため、この解を算出するに当たって用いたサンプルデータ以外の値を、ニューラルネットワークに入力した場合、最適な出力結果が得られるとは限らなかった。
【００１５】
本発明は、こうした問題に鑑みなされたものであり、認識システムの計算モデルとして、従来よりも好適な計算モデルを導出可能な技術を提供することを目的とする。
【課題を解決するための手段】
【００１６】
かかる目的を達成するためになされた本発明のモデル導出方法では、入力データの組に対応するカテゴリを表す値を、所定の計算モデルに基づき算出し、入力データの組に対応するカテゴリを認識する認識システムの計算モデルに関し、サンプルデータ（入力データの組及びこれに対応するカテゴリを表す値の組合せからなる。）の複数に基づき、最適な計算モデルを、次の手順により導出する。
【００１７】
まず、計算モデルの原型となる演算式Ｎ（Ｘ，Ｗ）について、演算式Ｎが要素に有する非線形関数ｕを多項式近似し、この演算式Ｎ（Ｘ，Ｗ）を、各入力データに対応する変数Ｘ＝｛ｘ１，…，ｘｍ｝の近似多項式Ｆに変換する（手順（ａ））。尚、定数Ｗは、ニューラルネットワークの結合荷重に対応するものであり、Ｗ＝｛ｗ１，…，ｗｓ｝である。
【００１８】
また、近似多項式Ｆを得た後には、この近似多項式Ｆを構成する変数Ｘ＝｛ｘ１，…，ｘｍ｝の組合せからなる各項の変数部を、独立した変数Ｚ＝｛ｚ１，…，ｚｎ｝とし、上記サンプルデータの複数を用いて、サポートベクタマシンの手法により、近似多項式Ｆを構成する各変数ｚ１，…，ｚｎの係数ｇ１（Ｗ），…，ｇｎ（Ｗ）及び定数項ｇ０（Ｗ）を算出する（手順（ｂ））。
【００１９】
例えば、図２に示す三層フィードフォワードニューラルネットワークを例にとると、演算式Ｎ（ｘ１，ｘ２，ｗ１，…，ｗ９）が要素に有する非線形関数ｕ（ｘ）は、多項式ｐ（ｘ）で近似できる。
【００２０】
【数４】
2007213403.tif 000006
【００２１】
従って、Ｎ（ｘ１，ｘ２，ｗ１，…，ｗ９）を、近似多項式Ｆに変換すると、近似多項式Ｆは、次式で表される。尚、定数Ｋは、近似多項式Ｆの最高次数である。
【００２２】
【数５】
2007213403.tif 000007
【００２３】
本発明では、この近似多項式Ｆを構成する変数Ｘ＝｛ｘ１，ｘ２｝の組合せからなる各項の変数部を、独立した変数Ｚ＝｛ｚ１，…，ｚｎ｝とする。
【００２４】
【数６】
2007213403.tif 000008
【００２５】
そして、これを、サポートベクタマシンの手法により解いて、近似多項式Ｆを構成する各変数ｚ１，…，ｚｎの係数ｇ１（Ｗ），…，ｇｎ（Ｗ）及び定数項ｇ０（Ｗ）を算出し、算出した係数ｇ１（Ｗ），…，ｇｎ（Ｗ）及び定数項ｇ０（Ｗ）に基づき、この係数ｇ１（Ｗ），…，ｇｎ（Ｗ）及び定数項ｇ０（Ｗ）を設定した近似多項式Ｆと等価な演算によってカテゴリを表す値を演算することが可能な計算モデルを、サンプルデータに対応する計算モデルとして導出するのである。
【００２６】
サポートベクタマシンの学習アルゴリズムによれば、係数ｇ１（Ｗ），…，ｇｎ（Ｗ）及び定数項ｇ０（Ｗ）を算出する際、局所解が存在しないため、常に、係数ｇ１（Ｗ），…，ｇｎ（Ｗ）及び定数項ｇ０（Ｗ）について最適解を得ることができる。従って、本発明の方法によれば、常に、最適な定数Ｗを決定して、サンプルデータに最適な計算モデルを得ることができ、従来よりも適切な認識システムを構築することができるのである。
【００２７】
また、サポートベクタマシンの学習アルゴリズムによれば、サンプルデータ以外の入力データに対しても、適切な係数ｇ１（Ｗ），…，ｇｎ（Ｗ）及び定数項ｇ０（Ｗ）を求めることができる。従って、本発明の方法によれば、学習時に用いられていない入力データが入力された場合でも適切にカテゴリを認識可能な認識システムを構築することができる。
【００２８】
尚、手順（ｂ）にて、係数ｇ１（Ｗ），…，ｇｎ（Ｗ）及び定数項ｇ０（Ｗ）についての最適解を求める方法としては、具体的に、近似多項式Ｆを構成する変数Ｘ＝｛ｘ１，…，ｘｍ｝の組合せからなる各項の変数部を、独立した変数Ｚ＝｛ｚ１，…，ｚｎ｝とし、各サンプルデータが有する入力データの組を、変数Ｚを座標とするｎ次元空間に配置した場合に、近似多項式Ｆが、各サンプルデータをカテゴリ毎に分離しつつカテゴリ毎のサンプルデータ群から最も離れた位置を通る超平面からの符号付距離に比例した量を表すように、各変数ｚ１，…，ｚｎの係数ｇ１（Ｗ），…，ｇｎ（Ｗ）及び定数項ｇ０（Ｗ）を算出する方法を挙げることができる（請求項２）。
【００２９】
図１は、各サンプルデータをカテゴリ毎に分離しつつカテゴリ毎のサンプルデータ群から最も離れた位置を通る超平面の概念図である。ｎ次元空間で、各サンプルデータをカテゴリ毎に超平面にて分離すれば、超平面からの符号付距離に比例した量が正値であるか負値であるかによって、各サンプルデータのカテゴリを、正しく認識することができる。
【００３０】
また、本発明では、カテゴリ毎のサンプルデータ群から最も離れた位置を通る超平面からの符号付距離に比例した量を表すように、各変数ｚ１，…，ｚｎの係数ｇ１（Ｗ），…，ｇｎ（Ｗ）及び定数項ｇ０（Ｗ）を算出するので、これに基づいて構築した認識システムでは、ｎ次元空間においてサンプルデータが配置される点周辺に配置される入力データの組を、同一カテゴリであると認識することができる。即ち、このように、係数ｇ１（Ｗ），…，ｇｎ（Ｗ）及び定数項ｇ０（Ｗ）を算出すれば、係数ｇ１（Ｗ），…，ｇｎ（Ｗ）及び定数項ｇ０（Ｗ）の学習時に用いたサンプルデータ以外の入力データの組についても適切にカテゴリを認識可能な認識システムを構築することができるのである。
【００３１】
このように本発明によれば、計算モデルの学習パラメータ（定数Ｗ）について、局所解しか求められないということがなく、常に最適解を求めることができ、また、サンプルデータ以外の入力データが入力された場合でも、その入力データの組に対応するカテゴリを、適切に認識することができるので、従来よりも優れた認識システムを構築することができる。
【００３２】
尚、サンプルデータに最適な計算モデルとしては、係数ｇ１（Ｗ），…，ｇｎ（Ｗ）及び定数項ｇ０（Ｗ）を設定した近似多項式Ｆを挙げることができるが、その他、非線形関数ｕ（ｘ）について多項式近似する前の計算モデルの原型に、係数ｇ１（Ｗ），…，ｇｎ（Ｗ）及び定数項ｇ０（Ｗ）に対応する定数Ｗ＝｛ｗ１，…，ｗｓ｝の値を設定したものを挙げることができる。
【００３３】
即ち、サンプルデータに対応する計算モデルを導出するに際しては、手順（ｂ）にて算出した係数ｇ１（Ｗ），…，ｇｎ（Ｗ）及び定数項ｇ０（Ｗ）に基づき、計算モデルの原型が要素に有する定数Ｗ＝｛ｗ１，…，ｗｓ｝の値を算出し（手順（ｃ））、計算モデルの原型に、この定数Ｗ＝｛ｗ１，…，ｗｓ｝の値を設定してなる計算モデルを、サンプルデータに対応する計算モデルとして導出してもよい（請求項３）。
【００３４】
近似多項式Ｆを計算モデルに用いて認識システムを構築する場合には、入力データを、変数Ｚの座標系に変換する必要があるが、計算モデルの原型に、この定数Ｗ＝｛ｗ１，…，ｗｓ｝の値を設定してなる計算モデルを、サンプルデータに対応する計算モデルとして、認識システムに適用すれば、入力データを、変数Ｚの座標系に変換する必要がなく、システム構成を簡単にすることができる。
【００３５】
また、サンプルデータに対応する計算モデルとしては、上記の他に、手順（ｂ）にて算出した係数ｇ１（Ｗ），…，ｇｎ（Ｗ）及び定数項ｇ０（Ｗ）を設定した近似多項式Ｆを、これより低次元の近似多項式に変換してなる計算モデルを挙げることができる（請求項４）。尚、変数Ｚの近似多項式Ｆをｄ次元（ｄ＜ｎ）の近似多項式に変換する方法としては、主成分分析の手法を用いることができる。
【００３６】
このように、ｎ次元の近似多項式Ｆを、低次元の近似多項式Ｆに変換して、これを計算モデルとすれば、カテゴリを表す値を算出するに当たって、その演算量を抑えることができる。
【００３７】
その他、上述した非線形関数ｕ（ｘ）としては、ガウス関数、シグモイド関数、ハイパボリックタンジェント関数等を挙げることができる（請求項５）。尚、ガウス関数ｇａｕｓｓ（ｘ）の基本形は、式（７）で表すことができ、シグモイド関数ｓｉｇ（ｘ）の基本形は、式（８）で表すことができ、ハイパボリックタンジェント関数ｔａｎｈ（ｘ）の基本形は、式（９）で表すことができる。
【００３８】
【数７】
2007213403.tif 000009
【００３９】
また、本発明の方法は、コンピュータ等の装置上で実現することができ、サンプルデータに対応する計算モデルを導出するモデル導出装置としては、各サンプルデータの入力を受け付けるサンプル受付手段と、計算モデルの原型となる演算式Ｎ（Ｘ，Ｗ）の指定情報を受け付ける原型受付手段と、この指定情報に基づき、外部から指定された演算式Ｎ（Ｘ，Ｗ）が要素に有する非線形関数ｕ（ｘ）を多項式近似し、この演算式Ｎ（Ｘ，Ｗ）を、各入力データに対応する変数Ｘ＝｛ｘ１，…，ｘｍ｝の近似多項式Ｆに変換する変換手段と、変換手段により生成された近似多項式Ｆを構成する変数Ｘ＝｛ｘ１，…，ｘｍ｝の組合せからなる各項の変数部を、独立した変数Ｚ＝｛ｚ１，…，ｚｎ｝とし、各サンプルデータを用いて、サポートベクタマシンの手法により、近似多項式Ｆを構成する各変数ｚ１，…，ｚｎの係数ｇ１（Ｗ），…，ｇｎ（Ｗ）及び定数項ｇ０（Ｗ）を算出する係数算出手段と、この係数ｇ１（Ｗ），…，ｇｎ（Ｗ）及び定数項ｇ０（Ｗ）を設定した近似多項式Ｆを表す情報を、サンプルデータに対応する計算モデルを表す情報として、出力する出力手段と、を備える装置を挙げることができる（請求項６）。
【００４０】
また、係数算出手段は、具体的に、変換手段により生成された近似多項式Ｆを構成する変数Ｘ＝｛ｘ１，…，ｘｍ｝の組合せからなる各項の変数部を、独立した変数Ｚ＝｛ｚ１，…，ｚｎ｝とし、各サンプルデータが有する入力データを、変数Ｚを座標とするｎ次元空間に配置した場合に、近似多項式Ｆが、各サンプルデータをカテゴリ毎に分離しつつカテゴリ毎のサンプルデータ群から最も離れた位置を通る超平面からの符号付距離に比例した量を表すように、近似多項式Ｆを構成する各変数ｚ１，…，ｚｎの係数ｇ１（Ｗ），…，ｇｎ（Ｗ）及び定数項ｇ０（Ｗ）を算出する構成にすることができる（請求項７）。
【００４１】
このモデル導出装置によれば、サンプルデータに最適な計算モデルを導出することができ、利用者は、サンプルデータを装置に与えると共に、演算式Ｎ（Ｘ，Ｗ）の指定を行う程度で、最適な計算モデルの情報を得ることができる。
【００４２】
また、このモデル導出装置には、係数算出手段により算出された係数ｇ１（Ｗ），…，ｇｎ（Ｗ）及び定数項ｇ０（Ｗ）に基づき、計算モデルの原型が要素に有する定数Ｗ＝｛ｗ１，…，ｗｓ｝の値を算出する定数部算出手段を設け、出力手段は、計算モデルの原型に、定数部算出手段により算出された定数Ｗ＝｛ｗ１，…，ｗｓ｝の値を設定してなる演算式を表す情報を、サンプルデータに対応する計算モデルを表す情報として、出力する構成にされてもよい（請求項８）。
【００４３】
このモデル導出装置を用いれば、利用者は、指定した計算モデルについての学習パラメータ（定数Ｗ）の適値を、簡単に得ることができる。
その他、上述のモデル導出装置には、算出された係数ｇ１（Ｗ），…，ｇｎ（Ｗ）及び定数項ｇ０（Ｗ）を設定した近似多項式を、これより低次元の近似多項式に変換する次元変更手段を設け、出力手段は、次元変更手段による変換後の近似多項式を表す情報を、サンプルデータに対応する計算モデルを表す情報として、出力する構成にされてもよい（請求項９）。このモデル導出装置を用いれば、利用者は、低次元の計算モデルを得ることができ、認識システムを構築する際に、認識のプロセスにかかる演算量を抑えることができる。
【００４４】
また、上述の手順（ａ），（ｂ）は、プログラムにより、モデル導出装置のコンピュータに、実行させることができる（請求項１０，１１）。その他、コンピュータに、手順（ａ）（ｂ）を実行させるための上記プログラムは、ＣＤ−ＲＯＭ等の記録媒体や、電気通信回線を通じて、利用者に提供することができる。
【発明を実施するための最良の形態】
【００４５】
以下、本発明を適用したモデル導出装置１について、図面と共に説明する。但し、以下では、先に、モデル導出装置１による計算モデルの導出原理を説明し、その後、モデル導出装置１の詳細について説明する。
【００４６】
尚、本実施例のモデル導出装置１は、認識システムでの認識行為を実現するための計算モデルを導出する装置である。認識システムとしては、例えば、入力された画像データに基づき、画像データが表す画像のカテゴリを認識する画像認識システムや、入力された音声データに基づき、この音声データが表す音声のカテゴリを認識する音声認識システム等を挙げることができる。具体的に、画像認識システムとしては、顔画像データに基づき、データが表す顔が誰の顔であるのかを認識する認識システムが知られている。
【００４７】
以下では、簡単のため、入力されたデータ群が、予め設定された二種類のカテゴリのいずれに属するものであるのかを認識する認識システムの計算モデルを導出するモデル導出装置１、具体的には、フィードフォワードニューラルネットワークの計算モデルを、導出するモデル導出装置１について説明する。尚、高度な認識行為は、上記計算モデルの組合せによって実現することができる。
【００４８】
また、原理を説明するに当たっては、式（１）に示すシグモイド関数ｓｉｇ（ｘ）を要素に有する三層フィードフォワードニューラルネットワークを例に挙げて、このニューラルネットワークを基本モデルとする、サンプルデータに最適な計算モデルの導出手順を説明する。その他、原理を説明するにあたっては、理解を簡単にするため、入力ユニットが２つ、出力ユニットが１つの三層フィードフォワードニューラルネットワークを例に挙げる。但し、本発明は、このような実施例に限定されるものではなく、本発明の技術的範囲に属する限り種々の形態を採りうることは言うまでもない。例えば、入力ユニットが３以上のものや、出力ユニットが２以上のものについても、以下に説明する手順と同様の手順にて、計算モデルを導出することが可能である。
＜原理＞
図２は、入力ユニットを２つ、出力ユニットを１つ、中間ユニットを２つ有する三層フィードフォワードニューラルネットワークの構成を表す説明図である。ここでは、図２に示す非線形関数ｕ（ｘ）が、シグモイド関数ｓｉｇ（ｘ）であるものとする。また、このニューラルネットワークには、第一の入力ユニットに、入力データとして値ｘ１が入力され、第二の入力ユニットに、入力データとして値ｘ２が入力され、出力ユニットからは、出力データとして、カテゴリを表す値Ｎが出力されるものとする。
【００４９】
このような構成のニューラルネットワークの入出力関係は、次式で表される。
【００５０】
【数８】
2007213403.tif 000010
【００５１】
所望の認識システムの計算モデルを得るためには、この演算式Ｎ（ｘ１，ｘ２，ｗ１，…，ｗ９）で表される計算モデルの原型において、結合荷重に相当する定数Ｗ＝｛ｗ１，…，ｗ９｝を決定し、所望の認識結果を生じる計算モデルを導出する必要があるが、従来技術では、上述したように、定数Ｗについて局所解しか求まらないといった問題や、定数Ｗの学習時に用いたサンプルデータ外のデータの組Ｘ＝｛ｘ１，ｘ２｝が入力された場合、認識のプロセスにおいて、適切な値Ｎを得ることができないといった問題がある。
【００５２】
そこで、本実施例では、まず、演算式Ｎ（ｘ１，ｘ２，ｗ１，…，ｗ９）が要素に有する非線形関数ｕ（ｘ）＝ｓｉｇ（ｘ）を、多項式ｐ（ｘ）で近似する。
【００５３】
【数９】
2007213403.tif 000011
【００５４】
尚、非線形関数ｕ（ｘ）を、多項式ｐ（ｘ）に近似する際には、認識システムにおいてｕ（ｘ）に入力される値の幅を考慮する。例えば、有限区間［−１０，１０］に取ればｕ（ｘ）のほぼ０、ほぼ１を使うことになるので、この区間内で、非線形関数ｕ（ｘ）の近似式となるよう、多項式ｐ（ｘ）を決定する。また、次数Ｒについては、多項式ｐ（ｘ）を、非線形関数ｕ（ｘ）に近似できる範囲において設定する。シグモイド関数の場合、次数は、３程度に設定することができる。
【００５５】
式（１０）の非線形関数ｕ（ｘ）＝ｓｉｇ（ｘ）を、式（１１）の多項式ｐ（ｘ）で置き換え、これを、変数ｘ１，ｘ２で整理すると、式（１０）に示す演算式Ｎ（ｘ１，ｘ２，ｗ１，…，ｗ９）は、次の多項式Ｆに近似することができる。尚、定数Ｋは、演算式Ｆの最高次数である。
【００５６】
【数１０】
2007213403.tif 000012
【００５７】
本実施例では、この近似多項式Ｆを構成する変数Ｘ＝｛ｘ１，ｘ２｝の組合せからなる各項の変数部を、独立した変数Ｚ＝｛ｚ１，…，ｚｎ｝とする。
【００５８】
【数１１】
2007213403.tif 000013
【００５９】
そして、これを、サンプルデータを用いて、サポートベクタマシンの学習アルゴリズム（詳細は、Vladimir N. Vapnik, The Nature of Statistical Learning Theory, Second Edition, Springer 1999, pp.132 - pp.140を参照されたい。）により解き、近似多項式Ｆを構成する各変数ｚ１，…，ｚｎの係数ｇ１，…，ｇｎ及び定数項ｇ０の最適値を算出する。即ち、変数ｚ１，…，ｚｎの近似多項式Ｆを、ｎ次元空間における超平面からの符号付距離に比例した量を表すものと解釈し、各変数ｚ１，…，ｚｎの係数ｇ１，…，ｇｎ及び定数項ｇ０の最適値を算出する。
【００６０】
変数ｚ１，…，ｚｎを座標とするｎ次元空間において、任意の点Ｚ＝（ｚ１，ｚ２，…，ｚｎ）の超平面Ｈ上の点Ｑ＝（ｑ１，ｑ２，…，ｑｎ）からの符号付距離Ｄは、超平面Ｈの法線ベクトルが、長さ１の法線ベクトルＧ＝（ｇ１，ｇ２，…，ｇｎ）であるとすると、ベクトル（ＯＺ−ＯＱ）と法線ベクトルＧとの内積で求められる。但し、点Ｏは原点であり、記号＜＞は、内積を表す記号である。
【００６１】
【数１２】
2007213403.tif 000014
【００６２】
式（１４）を展開すると、符号付距離Ｄは、
【００６３】
【数１３】
2007213403.tif 000015
【００６４】
で表すことができる。ここで、最後の項を、−ｇ０と置くと、符号付距離Ｄは、
【００６５】
【数１４】
2007213403.tif 000016
【００６６】
で表されて、式（１３）に一致する。このように、近似多項式Ｆは、超平面Ｈからの符号付距離Ｄに比例した量を表す式と解釈できるのである。
このように解釈すると、演算式Ｎ（ｘ１，ｘ２，ｗ１，…，ｗ９）は、二種類のカテゴリの内、第一のカテゴリに対応する入力データの組Ｘ＝｛ｘ１，ｘ２｝が入力された場合、正の値を採り、第二のカテゴリに対応する入力データの組Ｘ＝｛ｘ１，ｘ２｝が入力された場合、負の値を採るように定数Ｗが調整されればよいことが分かる。このように調整すれば、演算式Ｎ（ｘ１，ｘ２，ｗ１，…，ｗ９）の算出値が、正であるのか負であるのかによって、入力データの組Ｘ＝｛ｘ１，ｘ２｝に対応するカテゴリを分類し、認識することができる。
【００６７】
本実施例では、入力データの組Ｘ＝｛ｘ１，ｘ２｝と、これを代入した場合に演算式Ｎ（ｘ１，ｘ２，ｗ１，…，ｗ９）で算出されるべき理想値Ｔとの組合せからなるＩ個のサンプルデータ｛ｘ１（ｉ），ｘ２（ｉ），Ｔ（ｉ）｝（但し、ｉ＝１，…Ｉ）を用い、これらを、ｎ次元空間に配置した場合に、近似多項式Ｆが、各サンプルデータをカテゴリ毎に分離する超平面Ｈからの符号化距離に比例した量を表す式となるように、係数ｇ１，…，ｇｎ及び定数項ｇ０を算出する。
【００６８】
また、この際には、近似多項式Ｆが、カテゴリ毎のサンプルデータ群から最も離れた位置を通る超平面からの符号付距離に比例した量を表すように、各変数ｚ１，…，ｚｎの係数ｇ１，…，ｇｎ及び定数項ｇ０を算出する。尚、このように係数ｇ１，…，ｇｎ及び定数項ｇ０を算出するのは、サンプルデータに対応するｎ次元空間上の点近傍を同一のカテゴリに分類して、サンプルデータに類似したデータの組Ｘ＝｛ｘ１，ｘ２｝が入力された場合に、そのデータを同一のカテゴリに分類して認識できる計算モデルを導出するためである。
【００６９】
即ち、各サンプルデータをｎ次元空間に配置した際に、近似多項式Ｆが、カテゴリ毎のサンプルデータ群から最も離れた位置を通る超平面からの符号付距離に比例した量を表すようにすれば、ｎ次元空間において、サンプルデータの近傍領域を分断しないように、超平面Ｈを設定することができる。従って、このように近似多項式Ｆを設定すれば、サンプルデータ外のデータについても、正しい認識結果が得られるように、計算モデルを構築することができるのである。
【００７０】
また、本実施例の手法によれば、ｎ次元空間において、サンプルデータに対応する点からの距離Ｄが最大となるように、超平面Ｈを調整して、近似多項式Ｆの係数ｇ１，…，ｇｎ及び定数項ｇ０の解を求めればよいので、常に、最適解が得られ、従来技術のように局所解しか得られないといった問題を解消することができる。
【００７１】
尚、近似多項式Ｆの係数ｇ１，…，ｇｎ及び定数項ｇ０は、具体的に、以下の手法にて、算出することができる。
まず、前提として、サンプルデータは、Ｉ個であり、各サンプルデータ｛ｘ１（ｉ），ｘ２（ｉ），Ｔ（ｉ）｝（但し、ｉ＝１，…Ｉ）においては、Ｔ（ｉ）に、Ｘ＝｛ｘ１（ｉ），ｘ２（ｉ）｝に対応するカテゴリを表す値として、＋１若しくは−１が与えられているものとする。
【００７２】
ここで、超平面Ｈの法線ベクトルＧを、Ｇ＝（ｇ１，ｇ２，…，ｇｎ）と置くと、この超平面Ｈからの符号付距離Ｄに比例した量Ｄｐは、Ｚ＝（ｚ１，…，ｚｎ）として、
【００７３】
【数１５】
2007213403.tif 000017
【００７４】
で表すことができる。尚、量Ｄｐは、法線ベクトルＧが長さ１の時、符号付距離Ｄに一致する。
サンプルデータを、ｎ次元空間において、超平面Ｈにより正しく分離するためには、Ｄｐの符号と、サンプルデータが有する値Ｔ（ｉ）の符号とが一致する必要がある。この条件を、数式で表すと、次のように表すことができる。
【００７５】
【数１６】
2007213403.tif 000018
【００７６】
尚、Ｚ（ｉ）＝（ｚ１（ｉ），ｚ２（ｉ），…，ｚｎ（ｉ））は、サンプルデータが示す変数Ｘの２次元空間上の点（ｘ１（ｉ），ｘ２（ｉ））を、変数Ｚを座標とするｎ次元空間上の点に変換した場合の位置座標である。
【００７７】
ここで、法線ベクトルＧの長さによる量Ｄｐの任意性を固定するため、
【００７８】
【数１７】
2007213403.tif 000019
【００７９】
とする。尚、式（１９）は、ｉ＝１，２，…，Ｉの全サンプルデータにおいて考える。このような条件を置くと、サンプルデータの超平面Ｈからの符号付距離に比例する量Ｄｐの絶対値の最小値は、１となる。従って、サンプルデータの超平面Ｈからの最小の距離Ｄｓは、量ＤｐをベクトルＧの長さで正規化して、
【００８０】
【数１８】
2007213403.tif 000020
【００８１】
となる。
従って、各カテゴリのサンプルデータ群から最も離れるように超平面Ｈを決定するには、値Ｄｓを最大にすればよく、＜Ｇ，Ｇ＞を最小化すればよい。
【００８２】
即ち、近似多項式Ｆが、各サンプルデータをカテゴリ毎に分離しつつカテゴリ毎のサンプルデータ群から最も離れた位置を通る超平面Ｈからの符号付距離に比例した量を表すように、近似多項式Ｆを構成する各変数ｚ１，…，ｚｎの係数ｇ１，…，ｇｎ及び定数項ｇ０を算出する問題は、拘束条件
【００８３】
【数１９】
2007213403.tif 000021
【００８４】
が与えられている時に、＜Ｇ，Ｇ＞を最小化するｇ１，…，ｇｎ及びｇ０を求める問題に置き換えることができる。
本実施例では、この問題を、ラグランジュの未定乗数法で解く。
【００８５】
まず、ラグランジアンＬを、次のように設定する。
【００８６】
【数２０】
2007213403.tif 000022
【００８７】
式（２２）に示すように、ラグランジアンＬを設定した場合、上記問題は、ラグランジアンＬを最小化するｇ１，…，ｇｎ及びｇ０を求める問題に置き換えることができる。但し、α１，…，αＩは、ラグランジュの未定乗数であって、正の値である。
【００８８】
ここで、ラグランジアンＬ（ｇ０，ｇ１，…，ｇｎ）について、次の方程式を解く。
【００８９】
【数２１】
2007213403.tif 000023
【００９０】
そうすると、変数ｇ０，ｇ１，…，ｇｎに関して、以下の関係式が得られる。
【００９１】
【数２２】
2007213403.tif 000024
【００９２】
これを、式（２２）に代入し、以下の条件式
【００９３】
【数２３】
2007213403.tif 000025
【００９４】
を用いて整理すると、
【００９５】
【数２４】
2007213403.tif 000026
【００９６】
となる。従って、式（２１）の拘束条件が与えられているとき、＜Ｇ，Ｇ＞を最小化するｇ１，…，ｇｎ及びｇ０を算出する上記問題は、拘束条件
【００９７】
【数２５】
2007213403.tif 000027
【００９８】
が与えられているとき、
【００９９】
【数２６】
2007213403.tif 000028
【０１００】
が最大となるα１，α２，…，αＩを求める問題に置き換えることができる。
ここで、式（２６）は、変数α１，…，αＩについての二次計画法となっているため、一般にこの問題の解は、大域最大値を与える大域的解となる。そして、求まった解α１，…，αＩから、サンプルデータをカテゴリ毎に分離する超平面Ｈの法線ベクトルＧ*＝（ｇ１*，…，ｇｎ*）は、
【０１０１】
【数２７】
2007213403.tif 000029
【０１０２】
と求めることができる。
また、ゼロでないαｉ（ｉ＝１，２，…，Ｉ）に対応するＺ（ｉ）は、式（１７）の値Ｄｐが＋１又は−１であるので、カテゴリ毎のサンプルデータ群から最も離れた位置を通る超平面Ｈに対応する定数項ｇ０の解ｇ０*は、サンプルデータの内、対応するαｉがゼロでないＺ（ｉ）を用いて、
【０１０３】
【数２８】
2007213403.tif 000030
【０１０４】
と求めることができる。
また、定数Ｗ＝｛ｗ１，…，ｗ９｝は、変数ｇ０，ｇ１，…，ｇｎの関数であるから、式（２９）及び式（３０）に従って算出した値ｇ０*，ｇ１*，…，ｇｎ*を用いれば、サンプルデータに対応する定数Ｗの最適解Ｗ*＝｛ｗ１*，…，ｗ９*｝は、以下の関係式
【０１０５】
【数２９】
2007213403.tif 000031
【０１０６】
に従って求めることができる。
そして、上記手順により算出した値Ｗ*を、式（１０）における定数Ｗ＝｛ｗ１，ｗ２，…ｗ９｝に採用して、以下の演算式を求めれば、
【０１０７】
【数３０】
2007213403.tif 000032
【０１０８】
これは、サンプルデータに最適な計算モデルとなる。
以上のようにして、本実施例では、サンプルデータに最適な計算モデルを導出する。
尚、式（３２）に対応する計算モデルは、次のように近似することができる。
【０１０９】
【数３１】
2007213403.tif 000033
【０１１０】
従って、式（３２）に代えて、式（３３）の計算モデルを用いて、認識システムを構築することも可能である。
その他、主成分分析の手法を用いて、式（３３）に示す演算式Ｎの次元を、ｄ次元に落としたものを、サンプルデータに対応する計算モデルとして用いることも可能である。
【０１１１】
即ち、式（３３）に示す多項式における変数Ｚの空間に、サンプルデータが有する入力データＸ（ｉ）＝｛ｘ１（ｉ），ｘ２（ｉ）｝を変換して、Ｚ（ｉ）＝｛ｚ１（ｉ），…，ｚｎ（ｉ）｝を得る。そして、これを主成分分析して、分散の大きい主軸から任意のｄ個の主軸Ｊ１，Ｊ２，…，Ｊｄを採る。
【０１１２】
具体的には、Ｚ（ｉ）＝（ｚ１（ｉ），…，ｚｎ（ｉ））の平均Ｅ（Ｚ）を、次式
【０１１３】
【数３２】
2007213403.tif 000034
【０１１４】
で求めて、以下に示す分散共分散行列Ｃを作る。但し、ｔは、転置を表す。
【０１１５】
【数３３】
2007213403.tif 000035
【０１１６】
そして、分散共分散行列Ｃの固有値λｉと固有ベクトルＪｉを求める。そして、主軸Ｊ１，…，Ｊｄとして、固有値λｉの大きい方から、ｄ個の固有値λｉに対応する固有ベクトルＪｉを採る。
【０１１７】
また、このようにして主軸Ｊ１，Ｊ２，…，Ｊｄを採った後には、Ｚ＝（ｚ１，…，ｚｎ）を、変数Ｖ＝｛ｖ１，ｖ２，…，ｖｄ｝に置換する。
【０１１８】
【数３４】
2007213403.tif 000036
【０１１９】
また、係数Ｇ＝（ｇ１，…，ｇｎ）を、係数ｈ１，…，ｈｄに置換する。
【０１２０】
【数３５】
2007213403.tif 000037
【０１２１】
そして、この結果を用いて、式（３３）に示す演算式Ｎを、ｄ次元の演算式Ｎｄに変換する。
【０１２２】
【数３６】
2007213403.tif 000038
【０１２３】
このように、式（３３）に示す演算式Ｎを、それより低いｄ次元の演算式Ｎｄに変換にすれば、式（３３）に示す演算式Ｎに代わるサンプルデータに対応した計算モデルとして、演算量の少ない計算モデルを得ることができる。
【０１２４】
以上には、モデル導出装置１における計算モデルの導出原理について説明したが、続いては、モデル導出装置１の詳細構成について説明する。
＜モデル導出装置の説明＞
図３は、本実施例のモデル導出装置１の構成を表すブロック図である。本実施例のモデル導出装置１は、周知のパーソナルコンピュータに、上述の原理にて計算モデルを導出するプログラム（以下、「モデル導出プログラム」と称する。）をインストールしてなるものである。このモデル導出装置１は、ＣＰＵ、ＲＯＭ、ＲＡＭ等からなる制御部１１と、ハードディスク装置等からなる記憶部１３と、液晶ディスプレイ等からなる表示部１５と、キーボードやマウス等のユーザが操作可能な操作部１７と、フレキシブルディスクを読取可能なドライブ装置１９と、を備え、記憶部１３に、上記プログラム等を記憶する。
【０１２５】
このモデル導出装置１は、操作部１７から、モデル導出プログラムの実行指令が入力されると、制御部１１にて、このモデル導出プログラムを記憶部１３から読み出し、図４に示すモデル導出処理を実行する。図４は、制御部１１が実行するモデル導出処理を表すフローチャートである。
【０１２６】
モデル導出処理を実行すると、制御部１１は、導出する計算モデルの入力変数（換言すると、入力ユニット）の個数を受け付けるための変数設定画面を、表示部１５に表示し（Ｓ１１０）、入力変数の個数が、操作部１７の操作により、変数設定画面を通じて入力されるまで待機する（Ｓ１２０）。そして、入力変数の個数が入力されると（Ｓ１２０でＹｅｓ）、これを変数ｍに設定する（Ｓ１３０）。
【０１２７】
また、Ｓ１３０での処理を終えると、制御部１１は、Ｓ１４０に移行し、導出する計算モデルの原型となる学習対象のニューラルネットワークの演算式Ｎであって、入力変数Ｘ＝｛ｘ１，ｘ２，…，ｘｍ｝及び学習パラメータとしての定数Ｗ＝｛ｗ１，ｗ２,…,ｗｓ｝並びに非線形関数を要素に有する演算式Ｎ（ｘ１，…，ｘｍ，ｗ１，…，ｗｓ）の入力操作を受付可能な演算式入力画面を表示する。尚、本実施例では、モデル導出装置１が、演算式入力画面を通じて、非線形関数ｕ（ｘ）として、ガウス関数ｇａｕｓｓ（ｘ）、シグモイド関数ｓｉｇ（ｘ）、ハイパボリックタンジェント関数ｔａｎｈ（ｘ）のみを受付可能な構成にされているものとする。
【０１２８】
また、Ｓ１４０での処理を終えると、制御部１１は、演算式入力画面を通じて、演算式Ｎ（ｘ１，…，ｘｍ，ｗ１，…，ｗｓ）が入力されるまで待機し（Ｓ１４５）、演算式Ｎ（ｘ１，…，ｘｍ，ｗ１，…，ｗｓ）が入力されると（Ｓ１４５でＹｅｓ）、入力変数Ｘ＝｛ｘ１，ｘ２，…，ｘｍ｝が採りえる値の区間［ａ，ｂ］についての入力操作を受付可能な区間設定画面を、表示部１５に表示し（Ｓ１５０）、この区間設定画面を通じて、区間［ａ，ｂ］を表す情報が入力されるまで待機する（Ｓ１５５）。そして、区間［ａ，ｂ］を表す情報が入力されると（Ｓ１５５でＹｅｓ）、Ｓ１６０に移行する。
【０１２９】
Ｓ１６０に移行すると、制御部１１は、サンプルデータ（学習データ）の一群が記述されたデータファイルの格納場所を問合せる格納場所入力画面を、表示部１５に表示する。格納場所入力画面は、データファイルの格納場所についての入力操作を受付可能な構成にされており、制御部１１は、格納場所入力画面を通じてデータファイルの格納場所を表す情報が入力されると（Ｓ１６５でＹｅｓ）、この入力情報に従って、格納場所（記憶部１３又はドライブ装置１９）から、対応するデータファイルを読み出し、データファイルに記述されたサンプルデータの一群を読み出す（Ｓ１７０）。尚、サンプルデータは、入力データの組と、これに対応するカテゴリを表す値Ｔの組合せからなり、データファイルにおいてｉ番目に記述されたサンプルデータが有する入力データの組は、Ｓ１７０において、変数Ｘ（ｉ）＝｛ｘ１（ｉ），ｘ２（ｉ），…，ｘｍ（ｉ）｝にセットされ、このサンプルデータが示すカテゴリを表す値は、変数Ｔ（ｉ）にセットされる（ｉ＝１，２，…，Ｉ）。但し、値Ｉは、データファイルに記述されたサンプルデータの総数である。
【０１３０】
また、Ｓ１７０での処理を終えると、制御部１１は、図５に示す多項式近似処理を実行し、上記区間設定画面にて入力された情報、及び、上記演算式入力画面にて入力された情報に従って、入力された演算式Ｎ（ｘ１，…，ｘｍ，ｗ１，…，ｗｓ）が要素に有する非線形関数を、多項式ｐ（ｘ）に近似する（Ｓ１８０）。尚、図５は、制御部１１が実行する多項式近似処理を表すフローチャートである。
【０１３１】
多項式近似処理を実行すると、制御部１１は、多項式の次数Ｒの入力操作を受け付けるための次数設定画面を、表示部１５に表示し（Ｓ１８１）、設定すべき次数が、次数設定画面を通じて入力されるまで待機する（Ｓ１８３）。
【０１３２】
そして、次数が入力されると（Ｓ１８３でＹｅｓ）、入力された値を、近似する多項式の次数Ｒに決定し、多項式ｐ（ｘ）を、
【０１３３】
【数３７】
2007213403.tif 000039
【０１３４】
に設定する（Ｓ１８５）。尚、本実施例では、次数Ｒの入力をユーザから受け付けるようにしたが、次数Ｒは、例えば、Ｒ＝３などの固定値に予め設定されていてもよい。
また、Ｓ１８５での処理を終えると、制御部１１は、入力変数が採りえる区間［ａ，ｂ］の情報に基づき、ａ≦ｘ≦ｂの区間を、予め設定されたＤＭ個に分割し、ＤＭ＋１個の各点での非線形関数ｕ（ｘ）の値を求める（Ｓ１８７）。
【０１３５】
【数３８】
2007213403.tif 000040
【０１３６】
そして、二乗誤差ＥＥ
【０１３７】
【数３９】
2007213403.tif 000041
【０１３８】
を最小化するｐ（ｘ）の係数ａ１，…，ａＲ及び定数項ａ０を、Ｃｏｎｊｕｇａｔｅ  Ｇｒａｄｉｅｎｔ法により求め、非線形関数ｕ（ｘ）に近似される多項式ｐ（ｘ）を算出する（Ｓ１８９）。その後、当該多項式近似処理を終了する。尚、Ｃｏｎｊｕｇａｔｅ  Ｇｒａｄｉｅｎｔ法の詳細については、J. Nocedal, S. J. Wright, Numerical Optimization, Springer 1999, CHAPTER 5の前半を参考にされたい。
【０１３９】
このようにして、Ｓ１８０での多項式近似処理を終えると、制御部１１は、Ｓ１９０に移行し、演算式Ｎ（ｘ１，…，ｘｍ，ｗ１，…，ｗｓ）が有する非線形関数ｕ（ｘ）を、Ｓ１８０で求めた多項式ｐ（ｘ）に置換して、演算式Ｎ（ｘ１，…，ｘｍ，ｗ１，…，ｗｓ）の近似多項式Ｆ（ｘ１，ｘ２，…，ｘｍ）を算出する。
【０１４０】
また、Ｓ１９０での処理を終えると、制御部１１は、近似多項式Ｆにおける、変数Ｘ＝｛ｘ１，…，ｘｍ｝の組合せからなる各項の変数部を、独立した変数Ｚ＝｛ｚ１，…，ｚｎ｝に置換して、変数Ｚの近似多項式Ｆ（Ｚ）を、次のように設定し、
【０１４１】
【数４０】
2007213403.tif 000042
【０１４２】
変数Ｚと変数Ｘとの関係式ｚｉ＝ｚｉ（ｘ１，…，ｘｍ），係数ｇ１，…，ｇｎ及び定数項ｇ０とＷとの関係式ｇｉ＝ｇｉ（ｗ１，…，ｗｓ）を一時記憶する（Ｓ２００）。
そして、Ｓ２００での処理を終えると、制御部１１は、図６に示す学習処理を実行し、この近似多項式Ｆの係数ｇ１，…，ｇｎ及び定数項ｇ０の最適解を、Ｉ個のサンプルデータ｛ｘ１（ｉ），…，ｘｍ（ｉ），Ｔ（ｉ）｝を用いて、サポートベクタマシンの学習アルゴリズムにより、算出する（Ｓ２１０）。即ち、各サンプルデータが有する入力データの組Ｘ（ｉ）＝｛ｘ１（ｉ），…，ｘｍ（ｉ）｝を、変数Ｚを座標とするｎ次元空間に配置した場合に、近似多項式Ｆが、各サンプルデータをカテゴリ毎に分離しつつカテゴリ毎のサンプルデータ群から最も離れた位置を通る超平面からの符号付距離に比例した量を表すように、近似多項式Ｆを構成する各変数ｚ１，…，ｚｎの係数ｇ１，…，ｇｎ及び定数項ｇ０を算出する（Ｓ２１０）。
【０１４３】
図６は、制御部１１が実行する学習処理を表すフローチャートである。学習処理を開始すると、制御部１１は、各サンプルデータが有する入力データの組Ｘ（ｉ）＝｛ｘ１（ｉ），…，ｘｍ（ｉ）｝を、Ｓ２００で記憶した変数Ｚと変数Ｘとの関係式ｚｉ＝ｚｉ（ｘ１，…，ｘｍ）に従って、変数Ｚの空間に射影し、変数Ｚの空間に対応する新たなサンプルデータ｛ｚ１（ｉ），…，ｚｎ（ｉ），Ｔ（ｉ）｝を生成する（Ｓ２１１）。
【０１４４】
また、Ｓ２１１の処理を終えると、制御部１１は、Ｓ２１３に移行し、以下の拘束条件付２次最適化問題の解を得る。
【０１４５】
【数４１】
2007213403.tif 000043
【０１４６】
そして、変数αｉ（ｉ＝１，…，Ｉ）の解が得られると、得られた変数αｉ（ｉ＝１，…，Ｉ）の解を用いて、Ｇ＝（ｇ１，…，ｇｎ）の最適解Ｇ*＝（ｇ１*，…，ｇｎ*）を次のように算出する（Ｓ２１５）。但し、Ｚ＝（ｚ１，…，ｚｎ）である。
【０１４７】
【数４２】
2007213403.tif 000044
【０１４８】
また、Ｓ２１５での処理を終えると、制御部１１は、定数項ｇ０の最適解ｇ０*を、ゼロでないαｉと同じインデックスｉのＺ（ｉ）＝（ｚ１（ｉ），…，ｚｎ（ｉ））を用いて、次のように算出する（Ｓ２１７）。
【０１４９】
【数４３】
2007213403.tif 000045
【０１５０】
そして、Ｓ２１７での処理を終えると、当該学習処理を終了する。
また、このようにして、Ｓ２１０での学習処理を終了すると、制御部１１は、Ｓ２１０で算出した解ｇ１*，…，ｇｎ*及び定数項ｇ０*を対応する係数及び定数項に設定した変数Ｚの近似多項式Ｆ（式（３３）参照）を、計算モデルの導出結果として記述した結果表示画面を、表示部１５に表示する（Ｓ２２０）。尚、この際には、結果表示画面に、変数Ｚと変数Ｘとの関係式ｚｉ＝ｚｉ（ｘ１，…，ｘｍ）も、表示する。
【０１５１】
また、Ｓ２２０での処理を終えると、制御部１１は、学習パラメータＷの算出が必要であるか否かを問合せる問合せ画面を表示し（Ｓ２３０）、操作部１７を通じて問合せ結果が入力されると（Ｓ２３５でＹｅｓ）、入力された情報に基づき、学習パラメータＷの算出が必要であるか否かを判断する（Ｓ２４０）。そして、学習パラメータＷの算出が必要であると判断すると（Ｓ２４０でＹｅｓ）、Ｓ２５０に移行し、学習パラメータＷの算出が必要ではないと判断すると（Ｓ２４０でＹｅｓ）、Ｓ２７０に移行する。
【０１５２】
また、Ｓ２５０に移行すると、制御部１１は、Ｇ＝（ｇ１，…，ｇｎ）の最適解Ｇ*＝（ｇ１*，…，ｇｎ*）と、ｇ０の最適解ｇ０*と、関係式ｇｉ＝ｇｉ（ｗ１，…，ｗｓ）と、に基づいて、Ｗ＝｛ｗ１，…，ｗｓ｝の最適解Ｗ*＝｛ｗ１*，…，ｗｓ*｝を算出する。
【０１５３】
具体的には、二乗誤差ＥＥ
【０１５４】
【数４４】
2007213403.tif 000046
【０１５５】
を設定し、Ｃｏｎｊｕｇａｔｅ  Ｇｒａｄｉｅｎｔ法により、この二乗誤差ＥＥを最小化するＷ＝｛ｗ１，…，ｗｓ｝を、Ｗ＝｛ｗ１，…，ｗｓ｝の最適解Ｗ*＝｛ｗ１*，…，ｗｓ*｝として算出する。
【０１５６】
また、このようにして、Ｓ２５０での処理を終えると、制御部１１は、Ｓ２６０に移行し、Ｓ２５０で算出した解ｗ１*，…，ｗｓ*を対応する定数Ｗに設定した演算式Ｎ（ｘ１，…，ｘｍ，ｗ１*，…，ｗｓ*）を、計算モデルの導出結果として記述した結果表示画面を、表示部１５に表示する。その後、Ｓ３００に移行する。
【０１５７】
その他、Ｓ２７０に移行すると、制御部１１は、計算モデルの低次元化が必要であるか否かを問合せる問合せ画面を、表示部１５に表示して、問合せ結果が入力されるまで待機する（Ｓ２７５）。そして、問合せ結果が入力されると（Ｓ２７５でＹｅｓ）、入力された情報に基づき、計算モデルの低次元化が必要であるか否かを判断し（Ｓ２８０）、低次元化が必要であると判断すると（Ｓ２８０でＹｅｓ）、Ｓ２９０に移行して、図７に示す次元変換処理を実行し、低次元化が必要でないと判断すると、Ｓ３００に移行する。尚、図７は、制御部１１がＳ２９０にて実行する次元変換処理を表すフローチャートである。
【０１５８】
次元変換処理を開始すると、制御部１１は、次元ｄの入力操作を受付可能な次元設定画面を、表示部１５に表示し（Ｓ２９１）、次元設定画面を通じて次元ｄが入力されるまで待機する（Ｓ２９２）。そして、次元ｄが入力されると（Ｓ２９２でＹｅｓ）、各サンプルデータの入力データＺ（ｉ）＝（ｚ１（ｉ），…，ｚｎ（ｉ））（ｉ＝１，…，Ｉ）を、主成分分析して、一番分散の大きい主軸からｄ個の主軸Ｊ１，Ｊ２，…，Ｊｄを求める（Ｓ２９３）。
【０１５９】
そして、ｄ個の主軸Ｊ１，Ｊ２，…，Ｊｄを用いて、変数Ｖ＝（ｖ１，ｖ２，…，ｖｄ）を、次のように設定する（Ｓ２９５）。但し、変数Ｚ＝（ｚ１，…，ｚｎ）、変数Ｘ＝（ｘ１，…，ｘｍ）である。
【０１６０】
【数４５】
2007213403.tif 000047
【０１６１】
また、この処理を終えると、係数ｇ１*，…，ｇｎ*を、係数ｈ１，…，ｈｄに変換する（Ｓ２９７）。但し、Ｇ*＝（ｇ１*，…，ｇｎ*）である。
【０１６２】
【数４６】
2007213403.tif 000048
【０１６３】
そして、この結果を用い、変数Ｚの近似多項式Ｆの次元変換結果として、ｄ次元の演算式Ｆｄ
【０１６４】
【数４７】
2007213403.tif 000049
【０１６５】
を記述した結果表示画面を、表示部１５に表示する（Ｓ２９９）。尚、この際には、結果表示画面に、変数Ｖと変数Ｘとの関係式ｖｉ＝Ｊｉ・Ｚ（ｘ１，…，ｘｍ）も表示する。
また、このようにして、Ｓ２９０での次元変換処理を終了すると、制御部１１は、Ｓ３００に移行して、操作部１７を通じ、ユーザから終了指令が入力されるまで待機し、終了指令が入力されると、当該モデル導出処理を終了する。
【０１６６】
以上、本実施例のモデル導出装置１について説明したが、本実施例のモデル導出装置１によれば、上述した原理により、サンプルデータに対応する計算モデルを導出するので、学習パラメータについて局所解ではなく、大域的な最適解を得ることができ、従来よりも好適な計算モデルを導出することができる。従って、本実施例のモデル導出装置１により導出された計算モデルを、認識システムに組み込んで、この計算モデルにより算出されたカテゴリを表す値に基づき、入力データに対応するカテゴリを認識するようにすれば、従来よりも、適切な認識結果を得ることができる。
【０１６７】
尚、本実施例において、サンプル受付手段は、Ｓ１６０〜Ｓ１７０の処理によって実現され、原型受付手段は、Ｓ１４０〜Ｓ１４５の処理によって実現され、変換手段は、Ｓ１８０〜Ｓ２００の処理によって実現されている。また、係数算出手段は、Ｓ２１０の処理によって実現され、定数部算出手段は、Ｓ２５０の処理によって実現され、次元変更手段は、Ｓ２９１〜Ｓ２９７の処理によって実現されている。その他、出力手段は、Ｓ２２０，Ｓ２６０，Ｓ２９９の処理によって実現されている。
【図面の簡単な説明】
【０１６８】
【図１】各サンプルデータをカテゴリ毎に分離する超平面の概念図である。
【図２】三層フィードフォワードニューラルネットワークの構成を表す図である。
【図３】モデル導出装置１の構成を表すブロック図である。
【図４】制御部１１が実行するモデル導出処理を表すフローチャートである。
【図５】制御部１１が実行する多項式近似処理を表すフローチャートである。
【図６】制御部１１が実行する学習処理を表すフローチャートである。
【図７】制御部１１が実行する次元変換処理を表すフローチャートである。
【図８】従来技術において結合荷重Ｗの決定の際に用いられる二乗誤差ＥＥと、結合荷重Ｗとの関係を表すグラフである。
【符号の説明】
【０１６９】
１…モデル導出装置、１１…制御部、１３…記憶部、１５…表示部、１７…操作部、１９…ドライブ装置
【図１】
2007213403.tif 000050
【図２】
2007213403.tif 000051
【図３】
2007213403.tif 000052
【図４】
2007213403.tif 000053
【図５】
2007213403.tif 000054
【図６】
2007213403.tif 000055
【図７】
2007213403.tif 000056
【図８】
2007213403.tif 000057