JP2014102555A - 判別ルール生成装置及び判別ルール生成方法 - Google Patents
判別ルール生成装置及び判別ルール生成方法 Download PDFInfo
- Publication number
- JP2014102555A JP2014102555A JP2012252336A JP2012252336A JP2014102555A JP 2014102555 A JP2014102555 A JP 2014102555A JP 2012252336 A JP2012252336 A JP 2012252336A JP 2012252336 A JP2012252336 A JP 2012252336A JP 2014102555 A JP2014102555 A JP 2014102555A
- Authority
- JP
- Japan
- Prior art keywords
- input
- information
- class
- score
- discrimination rule
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【課題】 入力情報がクラス分類器に入力されて得られたクラスに対するスコアに基づいて、当該入力情報が所定のクラスに分類されるべきものか否かを高精度に判別する。
【解決手段】 判別ルール生成装置10は、クラス分類器によって出力された、入力情報についての複数のクラスに対するスコアに応じたスコア情報を入力するスコア入力部13と、入力情報が上記のクラスのうち所定のクラスに分類されるものであるか否かを示す正解情報を入力する正解入力部14と、スコア情報及び正解情報に基づき、機械学習によって入力情報がクラスのうち所定のクラスに分類されるものであるか否かを判別するための判別ルールを生成する判別ルール生成部15と、生成された判別ルールを示す情報を出力する出力部16とを備える。
【選択図】 図1
【解決手段】 判別ルール生成装置10は、クラス分類器によって出力された、入力情報についての複数のクラスに対するスコアに応じたスコア情報を入力するスコア入力部13と、入力情報が上記のクラスのうち所定のクラスに分類されるものであるか否かを示す正解情報を入力する正解入力部14と、スコア情報及び正解情報に基づき、機械学習によって入力情報がクラスのうち所定のクラスに分類されるものであるか否かを判別するための判別ルールを生成する判別ルール生成部15と、生成された判別ルールを示す情報を出力する出力部16とを備える。
【選択図】 図1
Description
本発明は、クラス分類器による分類の正否を判別するための判別ルールを生成する判別ルール生成装置及び判別ルール生成方法に関する。
従来から、人の音声によって機器を操作する技術が知られている。例えば、ユーザの音声の意図解釈を行ってカーナビゲーションシステムを操作するシステムがある。人の音声から機器のどの機能を動作させるかの判断は、例えば、SVM(Support Vector Machine)やロジスティック回帰等のクラス分類器によって行われる。
ところで、文字認識では、誤認識を低減するために認識した文字が正しい文字であるか否かのリジェクト文字判定を行うことが提案されている(例えば、特許文献1及び非特許文献1参照)。
森、坂井:日本語文書を読み取る印刷漢字装置,パターン情報処理システム講演会論文集,pp.33-44.1980.
上記のクラス分類器からの出力は、例えば、機能(クラス)毎のスコアであり、このスコアに基づいて動作させる機能が判断される。しかしながら、最も高いスコアの機能を必ず動作させることとすると、例えば、どの意図にも属さない意味のない発話(雑談)や雑音等によって機器が誤操作されてしまうおそれがある。
上記の特許文献1及び非特許文献1に記載されたリジェクト文字判定では、第2位までの認識結果に含まれるスコア(である距離値又は類似度)、即ち、スコアの値の大きさが2番目までのものを用いて、それらのスコアが予め設定した一定の条件を満たすかを判断して、認識した文字が正しい文字であるか否かの判定を行う。この一定の条件とは、例えば第1位のスコアが閾値以上(距離値の場合は閾値以下)であり、第1位及び第2位のスコアの差が別の閾値以上であるといったものである。しかしながら、上記の方法では単純な閾値を用いた判定であるため、正解と誤りとを分離する能力が制限され高い精度が得られないという問題がある。従って、上記の特許文献1及び非特許文献1に記載されたリジェクト文字判定を上記の機能の判別に利用したとしても、適切な判別を行うことができず上述した誤操作を適切に防止することができないおそれがある。
本発明は、発話等に基づく入力情報がクラス分類器に入力されて得られたクラスに対するスコアに基づいて、当該入力情報が所定のクラスに分類されるべきものか否かを高精度に判別することができる判別ルール生成装置及び判別ルール生成方法を提供することを目的とする。
上記の目的を達成するために、本発明に係る判別ルール生成装置は、クラス分類器によって出力された、入力情報についての複数のクラスに対するスコアに応じたスコア情報を入力するスコア入力手段と、入力情報がクラスのうち所定のクラスに分類されるものであるか否かを示す正解情報を入力する正解入力手段と、スコア入力手段によって入力されたスコア情報、及び正解入力手段によって入力された正解情報に基づき、機械学習によって入力情報がクラスのうち所定のクラスに分類されるものであるか否かを判別するための判別ルールを生成する判別ルール生成手段と、判別ルール生成手段によって生成された判別ルールを示す情報を出力する出力手段と、を備える。
本発明に係る機能実行指示システムでは、スコア情報及び正解情報に基づき、機械学習によって、入力情報がクラスのうち所定のクラスに分類されるものであるか否かを判別するための判別ルールが生成される。このように機械学習によって生成された判別ルールによれば、従来から用いられている、単純に閾値を用いる方法と比べて高精度に判別が可能である。従って、本発明に機能実行指示システムによれば、入力情報がクラス分類器に入力されて得られたクラスに対するスコアに基づいて、当該情報が所定のクラスに分類されるべきものか否かを高精度に判別することができる。
スコア入力手段は、スコアに応じた情報としてクラスに対応付かないスコアを入力することとしてもよい。この構成によれば、クラスに対応付かない汎用的な判別ルールを生成することができ、より汎用的な判別が可能となる。
スコア入力手段は、スコアに応じた情報として設定された数のスコア順のスコアを入力することとしてもよい。この構成によれば、予め設定された数のスコアを用いることで判別の精度を向上させることができる。また、判別ルール生成のコストを減少させることができる。
判別ルール生成手段は、クラス毎に判別ルールを生成することとしてもよい。この構成によれば、クラス毎により適切に判別を行うことができる。
判別ルール生成手段は、判別ルールによる判別結果に応じた重み付けを行って機械学習を行うこととしてもよい。この構成によれば、入力情報がクラスに分類されること、あるいはされないことの期待損失に応じて適切に判別することができる。
入力情報は、ユーザの発話に基づく情報であることとしてもよい。この構成によれば、例えば、発話に基づいて機器の機能を起動する場合に高精度に判別を行うことができる。
判別ルール生成装置は、入力情報及び当該入力情報が分類されるクラスを示す情報を入力して、機械学習によってクラス分類器を生成するクラス分類器生成手段と、入力情報を入力して、クラス分類器生成手段によって生成されたクラス分類器によって当該入力情報についての複数のクラスに対するスコアを算出するスコア算出手段と、を更に備えることとしてもよい。この構成によれば、クラス分類器を合わせて生成することができる。
ところで、本発明は、上記のように判別ルール生成装置の発明として記述できる他に、以下のように判別ルール生成方法の発明としても記述することができる。これはカテゴリが異なるだけで、実質的に同一の発明であり、同様の作用及び効果を奏する。
即ち、本発明に係る判別ルール生成方法は、クラス分類器によって出力された、入力情報についての複数のクラスに対するスコアに応じたスコア情報を入力するスコア入力ステップと、入力情報がクラスのうち所定のクラスに分類されるものであるか否かを示す正解情報を入力する正解入力ステップと、スコア入力ステップにおいて入力されたスコア情報、及び正解入力ステップにおいて入力された正解情報に基づき、機械学習によって入力情報がクラスのうち所定のクラスに分類されるものであるか否かを判別するための判別ルールを生成する判別ルール生成ステップと、判別ルール生成ステップにおいて生成された判別ルールを示す情報を出力する出力ステップと、を含む。
本発明によれば、入力情報がクラス分類器に入力されて得られたクラスに対するスコアに基づいて、当該情報が所定のクラスに分類されるべきものか否かを高精度に判別することができる。
以下、図面と共に本発明に係る判別ルール生成装置の実施形態について詳細に説明する。なお、図面の説明においては同一要素には同一符号を付し、重複する説明を省略する。
図1に本実施形態に係る判別ルール生成装置10を示す。判別ルール生成装置10は、クラス分類器による分類の正否を判別するための判別ルールを生成する装置である。具体的には、判別ルール生成装置10は、後述するようにコンピュータとして実現される。クラス分類器は、コンピュータ上で実現され、入力情報を入力して、その入力情報が複数のクラスの何れに分類されるかを示す情報を出力するものである。なお、判別ルール生成装置10は、必ずしも1台のコンピュータによって実現されている必要はなく、互いに接続された複数台のコンピュータによるコンピュータシステムによって実現されてもよい。また、判別ルール生成装置10は、必要な情報を入力するため、あるいは生成した情報を出力するために他の装置と接続されており、情報の送受信が可能となっていてもよい。
クラス分類器は、例えば上述したようにユーザの音声(発話)に基づいて起動する機器の機能を判断する、即ち、ユーザの発話の意図解釈を行うために用いられる。なお、入力情報が分類されるクラスは、例えば、機器の機能に応じて予め設定されており、どのようなクラスがあるかについては予め判別ルール生成装置10に記憶されており、把握されている。
図2を用いて上記の機器としてカーナビゲーションシステムの例を説明する。クラス分類器は、カーナビゲーションシステムに含まれている。クラス分類器は、ユーザの発話に基づく入力情報を入力する。そして、ユーザの発話の意図解釈を行って、その意図に応じた機能(例えば、目的地設定、音量設定、地図設定)を起動するようにカーナビゲーションシステムに指示する。なお、ユーザの発話に基づく入力情報は、クラス分類器が処理可能な情報である。具体的には、ユーザの発話が音声認識され、音声認識された結果から抽出された特徴量等の情報である。なお、クラス分類器は、カーナビゲーションシステムに限られず、任意のものに用いられ、例えば、携帯電話機の音声による機能の起動等にも用いられる。
上述したように、判別ルール生成装置10は、上記のクラス分類器による分類の正否を判別するための判別ルールを生成する装置である。クラス分類器による分類の正否とは、例えば、分類されたクラスが正しいか誤っているか、あるいはそもそもクラスへの分類自体が正しいか誤っているかである。この判別は、具体的にはユーザの発話により起動される機能が正しいか否か、あるいはユーザの発話により機能が起動されるべきか否かに係るものである。即ち、この場合の判別は、ユーザの発話により機能が正しく起動させるためのものである。例えば、ユーザの意図とは異なる機能を起動させたり、どの意図にも属さない意味のない発話(雑談)や雑音(ユーザが機能を起動させるための発話以外の音声)等によって機能を起動させたりすることを防止するものである。
従って、判別ルール生成装置10は、通常、クラス分類器を作成する者によって用いられる。例えば、カーナビゲーションシステムや携帯電話機の製造者(あるいは、音声による機能を起動するモジュールの製造者)によって用いられる。
引き続いて、判別ルール生成装置10の機能構成を説明する。図1に示すように、判別ルール生成装置10は、クラス分類器生成部11と、スコア算出部12と、スコア入力部13と、正解入力部14と、判別ルール生成部15と、出力部16とを備えて構成される。
クラス分類器生成部11は、入力情報及び当該入力情報が分類されるクラスを示す情報を入力して、機械学習によってクラス分類器(第一の学習モデル、クラス分類学習器1)を生成するクラス分類器生成手段である。入力情報及び当該入力情報が分類されるクラスを示す情報は、上記の機械学習のための正解データ(サンプルデータ)である。
例えば、クラス分類器生成部11は、入力情報を以下のように入力する。クラス分類器生成部11は、ユーザの発話例である音声データを入力する。クラス分類器生成部11は、入力した音声データに対して音声認識を行ってユーザの発話例に対応する文章を取得する。クラス分類器生成部11は、取得した文章からユーザの発話例に対応する特徴量である(第一の特徴量)を生成する。特徴量は、例えば、予め設定した単語(語彙)が文章中に含まれるか否かを示す情報である。この単語は予め設定した数(例えばn個)あり、図3に示すように1つの発話例に対応する第一の特徴量はn次元のベクトルとなる(図3のそれぞれの行のデータに相当する)。このベクトルの各要素の値は、1か0であり、1がその要素に対応する単語が含まれていることを意味しており、0がその要素に対応する単語が含まれていないことを意味する。
機械学習を行うための入力情報は、上記のようにして得られた(入力された)第一の特徴量である。なお、後述するように、生成されたクラス分類器に、クラス分類を行うために入力される入力情報も上記の第一の特徴量に対応する情報である。クラス分類器生成部11は、機械学習を行うため、通常、図3に示すように複数のユーザの発話例にそれぞれ対応する複数の第一の特徴量を生成(入力)する。なお、上記では、クラス分類器生成部11は、音声データを入力するとしているが、音声認識によって得られた文章、あるいは、第一の特徴量自体を入力することとしてもよい。また、本実施形態では、ユーザの発話に基づくクラス分類を行うこととしているが、それ以外の態様である場合は、第一の特徴量は必ずしも音声データに基づくものでなくてもよい。例えば、入力される文章が、音声データに基づくものでなくてもよい。また、上記の特徴量の生成は、一例であり、従来用いられている任意の特徴量を用いることができ、また、その生成方法も任意のものを用いることができる。
第一の特徴量に係る情報は、例えば、判別ルール生成装置10に接続された他の装置からクラス分類器生成部11に入力されたり、あるいは、判別ルール生成装置10の利用者の入力操作を受け付けること等によって入力されたりする。音声データを直接、判別ルール生成装置10に入力する場合には、マイク等の音声を入力するための装置が判別ルール生成装置10に設けられる。
また、例えば、クラス分類器生成部11は、入力情報が分類されるクラスを示す情報を以下のように入力する。クラスを示す情報は例えばクラスを示す番号(図3に示す例では1〜10までの番号)である。入力情報が分類されるクラスは、入力情報が分類されるべきクラス(正解クラス)である。例えば、ユーザの発話によって起動されるべき機能に対応するクラスである。なお、入力情報が所定のクラスに分類されるか否かは、発話と発話により起動される機能との関係の例のように予め恣意的に決めうるものである。例えば、「…に行きたい」と発話した場合に「目的地設定」の機能を起動させることは、機器の製造者が予め決めうるものである。従って、上記の正解クラスは、例えば、機器の製造者が予め決めたものである。
クラス分類器生成部11は、入力情報が分類されるクラスを示す情報を、上記の入力情報に対応するものとして入力する。例えば、対応付いた入力情報と入力情報が分類されるクラスを示す情報とを同時に入力する、あるいは、入力情報と入力情報が分類されるクラスを示す情報とに予め同一のIDを付与しておき、対応するものと把握できるようにしておく。入力情報が分類されるクラスを示す情報は、例えば、判別ルール生成装置10の利用者の入力操作を受け付けること等によって入力される。
クラス分類器生成部11は、上記のように入力した入力情報及び当該入力情報が分類されるクラスを示す情報を用いて、機械学習によってクラス分類器を生成する。入力情報が機械学習における説明変数に、当該入力情報が分類されるクラスを示す情報が機械学習における目的変数にそれぞれ対応する。ここで生成されるクラス分類器は、入力情報を入力して、その入力情報についての各クラスに対するスコアを出力するものである。このスコアは、入力情報がそのクラスに分類されるべき度合い(帰属度合い)を示したものである。例えば、スコアが大きいほど、入力情報がそのクラスに分類されるべき度合いが大きいことを示している。この場合、入力情報を1つのクラスに分類しようとする場合は、通常、スコアが最も高いクラスに分類される。あるいは、入力情報を複数のクラスに分類しようとする場合は、通常、スコアが高い順に分類される。入力情報の複数のクラスへの分類は、例えば、発話による機能の起動においては、発話から起動される機能の複数の候補を絞り込む場合に行われる。この場合、例えば、分類された複数のクラスに対応する機能を、起動される機能の候補としてユーザに提示しユーザに選択させる。
上記の機械学習は、従来の方法によって行うことができる。例えば、SVM(Support Vector Machine)やロジスティック回帰によって行うことができる。クラス分類器生成部11は、生成したクラス分類器を示す情報をスコア算出部12に出力する。
スコア算出部12は、入力情報を入力して、クラス分類器生成部11によって生成されたクラス分類器によって当該入力情報についての複数のクラスに対するスコアを算出するスコア算出手段である。スコア算出部12で算出されるスコアは、判別ルールの生成に用いられる。
入力情報は、例えば、上述したように第一の特徴量である。スコア算出部12は、クラス分類器生成部11において入力されクラス分類器の生成で用いられた機械学習の学習用の第一の特徴量とは別の第一の特徴量(別の発話に対応した第一の特徴量)を入力することが望ましい。その場合、スコア算出部12は、当該別の第一の特徴量を上記のクラス分類器生成部11と同様の方法で入力(生成)する。
スコア算出部12は、クラス分類器生成部11で生成され出力されたクラス分類器に第一の特徴量を入力して、複数のクラスに対するスコアを算出する。このスコアはクラス毎に算出される。従って、図4に示すように1つの第一の特徴量(1つの発話)に対応するスコアは、クラスの数の次元のベクトルとなる(図4のスコア列のそれぞれの行のデータに相当する)。スコア算出部12は、算出した各第一の特徴量に対応するスコアを示す情報をスコア入力部13に入力する。なお、通常、算出するスコアは、後述する判別ルールの生成に用いられるため複数の第一の特徴量について算出される。そのためスコア算出部12は、複数の第一の特徴量を入力する。
なお、上記の説明においてスコア算出部12においてスコアの算出に用いたクラス分類器は、クラス分類器生成部11から入力されたものであったが、必ずしも判別ルール生成装置10において生成されたクラス分類器でなくてもよい。例えば、他の装置における機械学習によって生成されたクラス分類器を入力して用いることとしてもよい。また、スコア算出部12においてスコアの算出に用いるクラス分類器は、入力情報を入力してクラス毎のスコアが算出できるものであればよく、必ずしも機械学習によって生成されたものでなくてもよい。
スコア入力部13は、クラス分類器によって出力された、入力情報についての複数のクラスに対するスコアに応じたスコア情報である第二の特徴量を入力するスコア入力手段である。具体的には、以下のようにスコア情報を入力(取得)する。第二の特徴量は、判別ルールの生成に用いられる。即ち、第二の特徴量は、判別ルール生成部15による機械学習のための正解データ(サンプルデータ)の一部である。
スコア入力部13は、スコア算出部12からスコアを入力する。スコア入力部13は、スコア算出部12から入力されたスコア自体を第二の特徴量としてもよい。あるいは、スコア入力部13は、スコア算出部12から入力されたスコアに基づいて以下のように第二の特徴量を生成してもよい。例えば、スコア入力部13は、入力されたスコアをクラスに対応付かないスコアとし、それを第二の特徴量とする。即ち、スコア入力部13は、図4に示すように一つの入力情報(即ち、一つの発話毎に)毎にスコア列をスコアの大きい順にソートして、第二の特徴量を生成する。この第二の特徴量は、スコア列の分布の特徴を表しているもの(スコア列特徴量)である。
また、図5に示すように上記のクラスに対応付かないスコアに加えて、隣り合う順位のスコア間の差分を第二の特徴量としてもよい。これは、絶対値そのものよりも、他の順位との差が重要となる場合が考えられるためである。なお、隣り合う順位のスコア間の差分のみを第二の特徴量としてもよい。
また、図6に示すように、上記のようにソートされたスコアのうち、予め設定され、スコア入力部13に記憶されている数のスコア順のスコアを第二の特徴量としてもよい。例えば、スコアが大きい順に予め設定されている数のスコアを第二の特徴量とする。例えば、図6に示す例では、スコアは10個(即ち、クラスが10個)あるが、そのうちのスコアが大きい5個のみを第二の特徴量とする。即ち、上位N位のみの(Nは予め設定された自然数。例えば、上位5位までの)スコアを第二の特徴量としてもよい。これは、下位順位の結果は、逆に判別ルールの精度の悪化や判別ルールの生成のコスト(計算の手間)の増加を招く場合があることが考えられるためである。
なお、上述したように第二の特徴量として、クラスが対応付いたスコアを用いることとしてもよい。また、第二の特徴量は、スコア算出部12から入力されたスコアに基づいて、スコア入力部13が生成することとしているが必ずしもスコア入力部13が生成する必要はない。例えば、スコア算出部12が、算出したスコアに基づいて、上記の方法により第二の特徴量を生成してスコア入力部13に入力することとしてもよい。また、スコア、あるいは第二の特徴量は、必ずしも判別ルール生成装置10において生成される必要はなく、判別ルール生成装置10に接続された他の装置からスコア入力部13に入力されたり、あるいは、判別ルール生成装置10の利用者の入力操作を受け付けること等によって入力されたりしてもよい。
また、判別ルールの精度を向上させるために(汎用性がある最適な判別ルールを生成するために)、スコア入力部13に入力される第二の特徴量としてクラス分類器の生成に用いた情報以外の情報(テストデータ)を用いたり、あるいは、交差検定を行ったりして、精度を検証することが必要である。
スコア入力部13は、入力した第二の特徴量を示す情報を判別ルール生成部15に出力する。
正解入力部14は、上記の入力情報が上記のクラスのうち所定のクラスに分類されるものであるか否かを示す正解情報を入力する正解入力手段である。正解情報は、上記の判別ルールの生成に用いられる。即ち、正解情報は、判別ルール生成部15による機械学習のための学習データ(正例(正解)、負例(誤り)かを区別するための情報)の一部で、目的変数に相当する。
正解入力部14は、正解情報を、第二の特徴量(即ち、第二の特徴量の元となった入力情報)に対応するものとして入力する。例えば、第二の特徴量と正解情報とに同一のIDを付与し、対応するものと把握できるようにしておく。図7に示す例では、同じ行の第二の特徴量と正解情報(正解(1)か否(0)か)とが対応付いている。
この正解情報は、クラス分類器によるスコアを用いたクラス分類が正しかったか否かに基づくものであってもよい。例えば、スコア算出部12によって算出されたスコア(あるいは、第二の特徴量に元となったスコア)によって分類されるクラスが、当該スコアの元となったスコアに係る入力情報が分類されるべきクラス(上述した正解クラス)であるか否かを示す情報を正解情報としてもよい。例えば、スコア算出部12によって算出されたスコアのうち最もスコアが高いクラスに入力情報を分類するとする場合(トップ−1判定)には、最もスコアが高いクラスと正解クラスとが一致しているか否かを示す情報を正解情報としてもよい。例えば、図7に示すように最もスコアが高いクラスと正解クラスとが一致していれば正解情報を1とし、最もスコアが高いクラスと正解クラスとが一致していなければ正解情報を0とする。
また、スコア算出部12によって算出されたスコアのうちスコアの上位Nのクラスに入力情報を分類するとする場合(トップ−N判定)には、正解クラスがN位以内のスコアであるか否かを示す情報を正解情報としてもよい。例えば、図7に示すように正解クラスがN位以内のスコアであれば正解情報を1とし、正解クラスがN位以内のスコアでなければ正解情報を0とする。具体的には、図8(a)に示すようにスコアが上位N位までのクラスのうち(図8に示す例ではクラスd1〜d5)正解クラスが含まれていれば正解(1)、図8(b)に示すように含まれていなければ誤り(0)であるとする。
正解入力部14は、判別ルール生成装置10の利用者の入力操作を受け付けること等によって入力される。また、上記の正解データは、第二の特徴量の元となった入力情報がクラス分類器生成部11に入力されたものである場合には、クラス分類器生成部11に入力された正解クラスを示す情報と、上記のクラス分類の方法(例えば、トップ−1判定であるか、トップ−N判定であるか)とに基づいて算出(特定)することができるものである。従って、正解入力部14は、予め上記のクラス分類の方法を記憶しておき、クラス分類器生成部11から正解クラスを示す情報して正解データを特定することとしてもよい。
なお、正解データは、クラス分類器によるスコアを用いたクラス分類に係るものでなくてもよい。例えば、正解入力部14は、上記の入力情報が上記のクラスのうち何れかのクラスに分類されるものであるか否かを示す情報(例えば、入力情報が何れかのクラスに分類されるものであれば1、入力情報が何れかのクラスに分類されないものであれば0)を正解情報として入力することとしてもよい。 例えば、図8(a)に示すようなスコアの集合であれば、入力情報が何れかのクラス(上位N位までのクラスでもよいし、全てのクラスでもよい)に分類されるものとして正解(1)とし、図8(b)に示すようなスコアの集合であれば、入力情報が何れのクラス(上位N位までのクラスでもよいし、全てのクラスでもよい)に分類されないものとして誤り(0)とすることとしてもよい。このときの、スコアの集合は、全てのクラスのスコアを用いる必要はなくスコアが上位N位までのクラスのものを用いてもよい。また、スコアはクラスに対応付いたものを用いてもよく、スコアに対応付いていないものを用いてもよい。
なお、上記の例では、何れも正解情報は1/0の2値データであるが、正解情報は2値データにならなくてもよい。正解入力部14は、入力した正解情報を判別ルール生成部15に出力する。
判別ルール生成部15は、スコア入力部13から入力された第二の特徴量(スコア情報)、及び正解入力部14から入力された正解情報に基づき、機械学習によって入力情報がクラスのうち所定のクラスに分類されるものであるか否かを判別するための判別ルール(第二の学習モデル、クラス分類学習器2)を生成する判別ルール生成手段である。第二の特徴量及び正解情報は、上記の機械学習のための正解データ(サンプルデータ)である。なお、上記のように第二の特徴量と正解情報とは、対応付いた情報である。
判別ルール生成部15は、上記のように入力した第二の特徴量及び正解情報を用いて、機械学習によって判別ルールを生成する。第二の特徴量が機械学習における説明変数に、正解情報が機械学習における目的変数にそれぞれ対応する。ここで生成される判別ルールは、第二の特徴量を入力して、入力した第二の特徴量の元となった入力情報がクラス分類器によって正しくクラス分類されているかを判別するためのものである。なお、判別ルールの判別対象となる第二の特徴量は、機械学習により判別ルールを生成するために用いた第二の特徴量とは別のものであることが望ましい。
正しくクラス分類されているとは、例えば、トップ−1判定の場合、クラス分類器によって算出されたスコアが最も高いクラスが正解クラスである(クラス分類器によって分類されるクラスが正解クラスと一致している)ことをいう。あるいは、トップ−N判定の場合、クラス分類器によって算出されたスコアの上位N位のクラスに正解クラスが含まれることをいう。また、入力情報が何れかのクラスに分類されるべきものであれば、クラス分類器によるスコアが何れかのクラスに分類されるべきものである(この場合、スコアに基づいて入力情報が何れかのクラスに分類されるか否かが判断される)ことを、正しくクラス分類されているとしてもよい。
判別ルールは、第二の特徴量を入力として、第二の特徴量の元となった入力情報がクラス分類器によって正しくクラス分類されているかの度合いを示す情報(例えば、その度合いを示す数値、スコア、帰属確率)を出力する。判別は、当該度合いが特定の閾値θより大きいか否かを判断することでおこなうことができる。あるいは、判別ルールは、正しくクラス分類されているかの判別結果を出力するものであってもよい。
正解情報が上述した例のように正解か否かを示す2値データであるものとすれば、2クラス分類となる。上記の機械学習は、従来の方法によって行うことができる。2クラス分類の場合、2値分類器を用いることができ、例えば、SVM、Adaboost、ロジスティック回帰によって行うことができる。判別ルール生成部15は、生成した判別ルールを示す情報を出力部16に出力する。
なお、判別ルール生成部15は、クラスに関わらない判別ルール(任意のクラスに分類される場合に利用可能な判別ルール)を生成してもよいし、クラス毎に判別ルールを生成することとしてもよい。クラスに関わらない判別ルールを生成する場合には、例えば、クラスに対応付かない第二の特徴量を用いて判別ルールを生成する。これは、スコアのみによってクラス判断を行いえることが可能だからである。この場合は、判別ルールは1つだけでよく、スコアにクラスが対応付いていないため用いる情報の量も少なくてよく比較的簡易に実行可能である。
クラス毎に判別ルールを生成する場合は、例えば、判別ルール生成部15は、正解クラス毎に上記の処理を行うこととすればよい。なお、この場合も上記と同様にクラスに対応付かない第二の特徴量を用いて判別ルールを生成してもよい。あるいは、この場合はクラスに対応付いた第二の特徴量を用いて判別ルールを生成してもよい。クラスに対応付いた特徴量を用いることによって、判別を行うための情報が増えるため、より精度の高い判別が可能となりえる。なお、上記のクラスに関わらない判別ルールを生成する場合であっても、クラスに対応付いた第二の特徴量を用いて判別ルールを生成することとしてもよい。
また、判別ルール生成部15は、判別ルールによる判別結果に応じた重み付けを行って機械学習を行うこととしてもよい。この重み付けは機械学習のパラメータによって実現される。
単純に誤り判定(例えば、入力情報を正解クラス以外にクラスに分類すること)の棄却(判別ルールにより正しく分類されていないと判別すること)の再現率(Recall)を高めれば、クラス分類の誤り判定は低減できる。しかしながら、単純に上記の再現率を高めると上記の低減は実現できるが、正解判定(例えば、入力情報を正解クラスに分類すること)も棄却してしまい、正解判定も低減してしまうという問題がある。例えば、図9に示すように、必ずしも判別ルールで実際に棄却すべきデータA1と判別ルールで棄却されるデータA2との一致を図ることができない。判別ルールで実際に棄却すべきデータA1のうち判別ルールで棄却されるデータA2と重複していない部分と、判別ルールで棄却されるデータA2のうち判別ルールで実際に棄却すべきデータA1と重複していない部分とは、どちらも小さくしたいがトレードオフの関係にある。
これに対して、機械学習における再現率と適合率(Precision)とのF値を利用することができる。また、このクラス分類器を用いるアプリケーション(例えば、カーナビゲーションシステムの音声による操作)特有の期待損失の尺度を利用して期待損出が(最も)小さくなるように機械学習の際に探索する。
図10(a)に示すように判別ルールによる棄却判定は以下の4つに分類できる。正解判定の場合に受理(判別ルールにおいて正しく分類されていると判定すること)するTrue Positive(TP)、正解判定の場合に棄却するTrue Negative(TN)、誤り判定の場合に受理するFalse Positive(FP)、誤り判定の場合に棄却するFalse Negative(FN)である。これら4つの場合に対して、図10(b)のコスト行列に示すように機械学習の際のペナルティを設ける。TPの場合を0とし、FPの場合をβとし、TNの場合をα1とし、FNの場合をα2とする。これらの値が上記の重み付けである。
これらのペナルティが大きくなると、損出が大きいものと判断される。例えば、医療関係では、通常、β(例えば、誤って病気が判断された場合に受理される)は小さくされ、α1(正しく病気が判断された場合に棄却される)が大きくされる。
例えば、期待損出は以下の式により算出される。
期待損出=β×P(FP)+α1×P(TN)+α2×P(FN)
ここで、P(FP)、P(TN)、P(FN)は、それぞれFP、TN、FNの発生確率である。機械学習の際、この値が小さくなるように判別ルールを生成する。
期待損出=β×P(FP)+α1×P(TN)+α2×P(FN)
ここで、P(FP)、P(TN)、P(FN)は、それぞれFP、TN、FNの発生確率である。機械学習の際、この値が小さくなるように判別ルールを生成する。
なお、上記のパラメータ(β,α1,α2)は、判別ルール生成装置10の利用者の入力操作を受け付けること等によって予め判別ルール生成部15に入力されて記憶される。クラス毎に判別ルールを生成する場合には、上記のパラメータはクラス毎に設定することとしてもよい。例えば、カーナビゲーションシステムのクラス分類に用いる場合、例えば、「ルート案内中止」の機能(タスク)の起動は誤って受理されることは望ましくない(せっかく入れたルートが消えるのを防ぎたい)ので図11(a)に示すようにβが大きくされる。また、「ルート設定」の機能(タスク)の起動は正しく分類されているのに棄却されることは望ましくないので図11(b)に示すようにα1が大きくされる。
なお、上記のパラメータを用いた機械学習については、“正確な学習よりも得する学習:誤分類コストを考慮する分類学習”情報処理45(5),500-505,2004-05-15に示された方法を用いることができる。
出力部16は、判別ルール生成部15から入力された判別ルールを示す情報を出力する出力手段である。この出力は、例えば、判別ルール生成装置10に接続された別の装置、例えば、クラス分類器を用いたクラス分類、及びクラス分類に対する判別を実際に行う装置に出力される。この別の装置としては、例えば、上述したカーナビゲーションシステムや携帯電話機等である。なお、クラス分類器からの出力であるスコアから第二の特徴量を算出するための式等、クラス分類器を用いたクラス分類、及びクラス分類に対する判別を行うために必要な情報を合わせて出力することとしてもよい。以上が、判別ルール生成装置10の機能構成である。
図12に本実施形態に係る判別ルール生成装置10を構成する装置のハードウェア構成を示す。図12に示すように当該サーバ装置は、CPU(Central Processing Unit)101、主記憶装置であるRAM(RandomAccess Memory)102及びROM(Read Only Memory)103、通信を行うための通信モジュール104、並びにハードディスク等の補助記憶装置105等のハードウェアを備えるコンピュータを含むものとして構成される。これらの構成要素がプログラム等により動作することにより、上述した判別ルール生成装置10の機能が発揮される。以上が、本実施形態に係る判別ルール生成装置10の構成である。
引き続いて、図13のフローチャートを用いて、本実施形態に係る判別ルール生成装置10で実行される処理である判別ルール生成方法を説明する。本処理では、まず、クラス分類器生成部11によってクラス分類器が生成される(S01、クラス分類器生成ステップ)。クラス分類器の生成は、上述したように入力情報である第一の特徴量(説明変数)、及び当該第一の特徴量が分類されるクラスを示す情報(目的変数)が入力されて、それが用いられて行われる。また、第一の特徴量は、音声データが入力されて入力された音声データに基づいて生成されたものであってもよい。生成されたクラス分類器を示す情報は、クラス分類器生成部11から出力されスコア算出部12に入力される。
続いて、スコア算出部12によって、入力情報である第一の特徴量が入力されて、クラス分類器生成部11から入力されたクラス分類器によって当該第一の特徴量についての複数のクラスに対するスコアが算出される(S02、スコア算出ステップ)。
算出された各第一の特徴量に対応するスコアを示す情報は、スコア算出部12から出力されスコア入力部13に入力される(S03、スコア入力ステップ)。続いて、スコア入力部13によってスコア算出部12から入力されたスコアから判別ルールを生成するための第二の特徴量が生成される。生成(入力)された第二の特徴量を示す情報は、スコア入力部13から出力され判別ルール生成部15に入力される。
一方で、正解入力部14によって、上記の第二の特徴量に対応する正解情報が入力される(S04、正解入力ステップ)。なお、正解情報は、クラス分類器の生成に用いられた第一の特徴量が分類されるクラスを示す情報に基づいて生成されてもよい。入力された正解情報は、正解入力部14から出力され判別ルール生成部15に入力される。
続いて、判別ルール生成部15によって、入力された第二の特徴量及び正解情報に基づいて判別ルールが生成される(S05、判別ルール生成ステップ)。生成された判別ルールを示す情報は、判別ルール生成部15から出力され出力部16に入力される。続いて、出力部16によって判別ルールを示す情報が出力される(S06、出力ステップ)。以上が、本実施形態に係る判別ルール生成装置10で実行される処理である判別ルール生成方法である。
引き続いて、図14のフローチャートを用いて、判別ルールが用いられる判別処理について説明する。この判別処理は、入力情報に対するクラス分類器によるクラス分類に対して行われ、例えば、ユーザの音声に応じた機能の起動を行うカーナビゲーションシステム等の装置によって行われる。これらの処理を実行する当該装置には、予め判別ルール生成装置10によって生成された判別ルールが記憶されている。また、当該判別ルールに対応するクラス分類器、及び第二の特徴量を算出するための式等、本処理を行うために必要な情報が予め記憶されている。当該装置に記憶される判別ルール以外の情報は、必ずしも判別ルール生成装置10から出力された情報でなくてもよいが、判別ルール生成装置10において判別ルールの生成に用いられた情報であってもよい。
当該装置では、まず、第一の特徴量が入力される(S11)。なお、第一の特徴量は、音声データが入力されて入力された音声データに基づいて生成されたものであってもよい。続いて、スコア分類器によって、第一の特徴量についての複数のクラスに対するスコアが算出される(S12)。続いて、算出されたスコアから第二の特徴量が生成される(S13)。
続いて、判別ルールが用いられて、第二の特徴量から、第二の特徴量の元となった入力情報がクラス分類器によって正しくクラス分類されているかが判別される(判別内容を示す情報が出力される)(S14)。例えば、トップ−1判定の場合、スコアが最も高いクラスに入力情報が分類されるべきものか否かが判別される。あるいは、トップ−N判定の場合、スコアがN位までのクラスの何れかに入力情報が分類されるべきものか否かが判別される。
なお、判別ルールがクラス毎にある場合には、クラス分類器によって分類されたクラスの判別ルールが用いられる。例えば、トップ−1判定の場合、スコアが最も高いクラスの判別ルールが用いられる。あるいは、トップ−N判定の場合、スコアがN位までのクラスの判別ルールが用いられる。この場合、何れかの判別ルールによって正しくクラス分類されていると判別されれば、クラス分類器によって正しくクラス分類されていると判別されることとすればよい。
続いて、判別結果が出力される(S15)。具体的には例えば、判別結果が正しくクラス分類されていることを示すものであった場合(判別結果が受理を示すものであった場合)には、クラスに対応する機能を当該装置で実行したり、実行する機能の候補として当該装置のユーザに提示したりする処理が行われる。また、判別結果が正しくクラス分類されていないことを示すものであった場合(判別結果が棄却を示すものであった場合)には、上記の処理は行われない。
また、棄却判定後の処理を判断するために更に判別ルールから得られたスコアが、例えば別のモジュール等に出力されることとしてもよい。棄却された場合であっても、スコアに応じて以下のように処理を変えることとしてもよい。例えば、スコアと判別のための閾値との差が一定値より大きい場合には、強く棄却されているので何もしない。また、当該差が一定値より小さい場合には弱く棄却されているので、予め設定された処理を行う。このような処理としては、手入力を伴わす再度ユーザの入力を求めたり(音声ガイダンス+再音声入力(入力モード終了を含む))、音声データから得られた文章を用いてWeb検索を行って結果を返したりする処理がある。以上が、判別ルールが用いられる判別処理である。
上述したように本実施形態では、スコア情報及び正解情報に基づき、機械学習によって上記の判別ルールが生成される。このように機械学習によって生成された判別ルールによれば、従来から提案されている、単純に閾値を用いる方法と比べて高精度に判別が可能である。従って、本実施形態によれば、入力情報がクラス分類器に入力されて得られたクラスに対するスコアに基づいて、当該情報が所定のクラスに分類されるべきものか否かを高精度に判別することができる。
また、本実施形態のように第2の特徴量としてクラスに対応付かないスコアを用いることとしてもよい。この構成によれば、クラスに対応付かない汎用的な判別ルールを生成することができ、より汎用的な判別が可能となる。また、判別ルール生成のコストを減少させる(例えば、判別ルールの生成の処理負荷の軽減等)ことができる。但し、より精度の高い判別を行いたい場合にはクラスに対応付いたスコアが用いられてもよい。
また、第2の特徴量として、上述したトップ−N判定のように設定された数のスコア順のスコアを用いることとしてもよい。この構成によれば、予め設定された数のスコアを用いることで判別の精度を向上させることができる。また、判別ルール生成のコストを減少させることができる。
また、判別ルールはクラス毎に生成することとしてもよい。この構成によれば、クラス毎により適切に判別を行うことができる。
また、判別ルールの生成の際、期待損失を考慮した重み付けを行うこととしてもよい。この構成によれば、入力情報がクラスに分類されること、あるいはされないことの期待損失に応じて適切に判別することができる。
また、本実施形態の例のように入力情報はユーザの発話に基づくこととしてもよい。この構成によれば、例えば、発話に基づいて機器の機能を起動する場合に高精度に判別を行うことができる。
また、判別ルールの生成の前段階として、クラス分類器の生成やスコアの算出を行うこととしてもよい。この構成によれば、クラス分類器を合わせて生成することができる。但し、クラス分類器の生成やスコアの算出は別の装置で行われてもよい。
10…判別ルール生成装置、11…クラス分類器生成部、12…スコア算出部、13…スコア入力部、14…正解入力部、15…判別ルール生成部、16…出力部、101…CPU、102…RAM、103…ROM、104…通信モジュール、105…補助記憶装置。
Claims (8)
- クラス分類器によって出力された、入力情報についての複数のクラスに対するスコアに応じたスコア情報を入力するスコア入力手段と、
前記入力情報が前記クラスのうち所定のクラスに分類されるものであるか否かを示す正解情報を入力する正解入力手段と、
前記スコア入力手段によって入力されたスコア情報、及び前記正解入力手段によって入力された正解情報に基づき、機械学習によって入力情報が前記クラスのうち所定のクラスに分類されるものであるか否かを判別するための判別ルールを生成する判別ルール生成手段と、
前記判別ルール生成手段によって生成された判別ルールを示す情報を出力する出力手段と、
を備える判別ルール生成装置。 - 前記スコア入力手段は、前記スコアに応じた情報としてクラスに対応付かないスコアを入力する請求項1に記載の判別ルール生成装置。
- 前記スコア入力手段は、前記スコアに応じた情報として設定された数のスコア順のスコアを入力する請求項1又は2に記載の判別ルール生成装置。
- 前記判別ルール生成手段は、前記クラス毎に判別ルールを生成する請求項1〜3の何れか一項に記載の判別ルール生成装置。
- 前記判別ルール生成手段は、前記判別ルールによる判別結果に応じた重み付けを行って機械学習を行う請求項1〜4の何れか一項に記載の判別ルール生成装置。
- 前記入力情報は、ユーザの発話に基づく情報である請求項1〜5の何れか一項に記載の判別ルール生成装置。
- 入力情報及び当該入力情報が分類されるクラスを示す情報を入力して、機械学習によってクラス分類器を生成するクラス分類器生成手段と、
入力情報を入力して、前記クラス分類器生成手段によって生成されたクラス分類器によって当該入力情報についての複数のクラスに対するスコアを算出するスコア算出手段と、
を更に備える請求項1〜6の何れか一項に記載の判別ルール生成装置。 - クラス分類器によって出力された、入力情報についての複数のクラスに対するスコアに応じたスコア情報を入力するスコア入力ステップと、
前記入力情報が前記クラスのうち所定のクラスに分類されるものであるか否かを示す正解情報を入力する正解入力ステップと、
前記スコア入力ステップにおいて入力されたスコア情報、及び前記正解入力ステップにおいて入力された正解情報に基づき、機械学習によって入力情報が前記クラスのうち所定のクラスに分類されるものであるか否かを判別するための判別ルールを生成する判別ルール生成ステップと、
前記判別ルール生成ステップにおいて生成された判別ルールを示す情報を出力する出力ステップと、
を含む判別ルール生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012252336A JP2014102555A (ja) | 2012-11-16 | 2012-11-16 | 判別ルール生成装置及び判別ルール生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012252336A JP2014102555A (ja) | 2012-11-16 | 2012-11-16 | 判別ルール生成装置及び判別ルール生成方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2014102555A true JP2014102555A (ja) | 2014-06-05 |
Family
ID=51025046
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012252336A Pending JP2014102555A (ja) | 2012-11-16 | 2012-11-16 | 判別ルール生成装置及び判別ルール生成方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2014102555A (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017084249A (ja) * | 2015-10-30 | 2017-05-18 | 株式会社Ubic | データ分類システム,方法,プログラムおよびその記録媒体 |
JP2019145091A (ja) * | 2018-01-12 | 2019-08-29 | ザ・ボーイング・カンパニーThe Boeing Company | 予測されるサイバー防御 |
JP2020024513A (ja) * | 2018-08-06 | 2020-02-13 | 日本電信電話株式会社 | 誤り判定装置、誤り判定方法、及びプログラム |
JPWO2021144852A1 (ja) * | 2020-01-14 | 2021-07-22 | ||
WO2021160883A1 (en) * | 2020-02-14 | 2021-08-19 | Secude Ag | System and method of providing and updating rules for classifying actions and transactions in a computer system |
US11983249B2 (en) | 2019-03-26 | 2024-05-14 | Nippon Telegraph And Telephone Corporation | Error determination apparatus, error determination method and program |
-
2012
- 2012-11-16 JP JP2012252336A patent/JP2014102555A/ja active Pending
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017084249A (ja) * | 2015-10-30 | 2017-05-18 | 株式会社Ubic | データ分類システム,方法,プログラムおよびその記録媒体 |
JP2019145091A (ja) * | 2018-01-12 | 2019-08-29 | ザ・ボーイング・カンパニーThe Boeing Company | 予測されるサイバー防御 |
JP7223579B2 (ja) | 2018-01-12 | 2023-02-16 | ザ・ボーイング・カンパニー | 予測されるサイバー防御 |
JP2020024513A (ja) * | 2018-08-06 | 2020-02-13 | 日本電信電話株式会社 | 誤り判定装置、誤り判定方法、及びプログラム |
JP7143672B2 (ja) | 2018-08-06 | 2022-09-29 | 日本電信電話株式会社 | 誤り判定装置、誤り判定方法、及びプログラム |
US11983249B2 (en) | 2019-03-26 | 2024-05-14 | Nippon Telegraph And Telephone Corporation | Error determination apparatus, error determination method and program |
JPWO2021144852A1 (ja) * | 2020-01-14 | 2021-07-22 | ||
WO2021144852A1 (ja) * | 2020-01-14 | 2021-07-22 | 日本電信電話株式会社 | データ分類装置、データ分類方法、及びプログラム |
JP7310933B2 (ja) | 2020-01-14 | 2023-07-19 | 日本電信電話株式会社 | データ分類装置、データ分類方法、及びプログラム |
WO2021160883A1 (en) * | 2020-02-14 | 2021-08-19 | Secude Ag | System and method of providing and updating rules for classifying actions and transactions in a computer system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3433761B1 (en) | Fine-grained natural language understanding | |
Dahake et al. | Speaker dependent speech emotion recognition using MFCC and Support Vector Machine | |
JP2014102555A (ja) | 判別ルール生成装置及び判別ルール生成方法 | |
US9589562B2 (en) | Pronunciation learning through correction logs | |
US7689418B2 (en) | Method and system for non-intrusive speaker verification using behavior models | |
CN107729313B (zh) | 基于深度神经网络的多音字读音的判别方法和装置 | |
Dileep et al. | GMM-based intermediate matching kernel for classification of varying length patterns of long duration speech using support vector machines | |
Vukotić et al. | Is it time to switch to word embedding and recurrent neural networks for spoken language understanding? | |
Campbell et al. | Language recognition with word lattices and support vector machines | |
US9704483B2 (en) | Collaborative language model biasing | |
Tan et al. | Automatic writer identification framework for online handwritten documents using character prototypes | |
JP2021105736A (ja) | 情報処理装置、方法及びプログラム | |
EP3336714A1 (en) | Language dialog system with acquisition of replys from user input | |
Jarvis | Data mining with learner corpora | |
US20220318311A1 (en) | Retrieval-based dialogue system with relevant responses | |
CN112732882A (zh) | 用户意图识别方法、装置、设备及计算机可读存储介质 | |
US20190139544A1 (en) | Voice controlling method and system | |
Tong et al. | A target-oriented phonotactic front-end for spoken language recognition | |
Polignano et al. | Hansel: Italian hate speech detection through ensemble learning and deep neural networks | |
JP2014164261A (ja) | 情報処理装置およびその方法 | |
EP1470549A1 (en) | Method and system for non-intrusive speaker verification using behavior models | |
JP4259100B2 (ja) | 音声認識用未知発話検出装置及び音声認識装置 | |
JP2011007862A (ja) | 音声認識装置、音声認識プログラム、および音声認識方法 | |
Pao et al. | Combination of multiple classifiers for improving emotion recognition in Mandarin speech | |
Wahab et al. | Driver recognition system using FNN and statistical methods |