(57)【要約】キーワード抽出モデル学習手段１１０は、連携先システム１２０への入力と、音声データと、これらを対応付ける情報とを入力する。キーワード抽出モデル学習手段１１０は、連携先システム１２０への入力をキーワードみなし、連携先システム１２０への入力、音声データおよび対応情報に基づいて、音声データに含まれるキーワードまたはその発話表現を推定するキーワード抽出モデルを学習する。
2008150003.tif 000002
【特許請求の範囲】
【請求項１】
音声からキーワードを抽出するキーワード抽出モデルを学習するキーワード抽出モデル学習システムであって、
連携システムへの入力と、前記入力に対応する音声とを用いて学習を行うキーワード抽出モデル学習手段を備えた
ことを特徴とするキーワード抽出モデル学習システム。
【請求項２】
連携システムへの入力は少なくともテキスト情報を含む請求項１記載のキーワード抽出モデル学習システム。
【請求項３】
連携システムへの入力に対応する音声は、前記連携システムへの入力に対応する一部と、対応しない一部のいずれをも含む請求項１または請求項２記載のキーワード抽出モデル学習システム。
【請求項４】
キーワード抽出モデル学習手段は、連携システムへの入力に対して高い尤度を返すようにキーワード抽出モデルを学習する請求項１から請求項３のうちのいずれか１項に記載のキーワード抽出モデル学習システム。
【請求項５】
キーワード抽出モデル学習手段は、連携システムへの入力に対応する音声または対応する音声の一部に対して高い尤度を返すようにキーワード抽出モデルを学習する請求項１から請求項４のうちのいずれか１項に記載のキーワード抽出モデル学習システム。
【請求項６】
キーワード抽出モデル学習手段は、連携システムへの入力に対応しない音声または対応しない音声の一部に対して低い尤度を返すようにキーワード抽出モデルを学習する請求項１から請求項５のうちのいずれか１項に記載のキーワード抽出モデル学習システム。
【請求項７】
キーワード抽出モデル学習手段は、連携システムへのある入力に対応する音声を、該連携システムへの入力と類似した別の入力に関するモデル学習の学習データとして用いる請求項１から請求項６のうちのいずれか１項に記載のキーワード抽出モデル学習システム。
【請求項８】
キーワード抽出モデル学習手段は、連携システムへのある入力に対応する音声を、該連携システムへの入力と類似しない別の入力に関するモデル学習の負例の学習データとして用いる請求項１から請求項７のうちのいずれか１項に記載のキーワード抽出モデル学習システム。
【請求項９】
キーワード抽出モデル学習手段は、予め与えられた制約に基づいて連携システムへの入力を１つ以上のクラスタに分類し、各クラスタに関する学習をまとめて行う請求項１から請求項８のうちのいずれか１項に記載のキーワード抽出モデル学習システム。
【請求項１０】
キーワード抽出モデル学習手段が学習するキーワード抽出モデルは、ある音声の一部がいずれかのキーワードの発話であるかの尤度を返すキーワード区間モデルと、ある音声の一部が各キーワードの発話であるかの尤度を返すキーワード認識モデルと、の２種類のモデルからなり、
前記キーワード抽出モデル学習手段は、前記２種類のモデルを学習する
請求項１から請求項９のうちのいずれか１項に記載のキーワード抽出モデル学習システム。
【請求項１１】
連携システムへの入力と、
前記入力に対応する可能性の高い音声の一区間を見つけ出し、この区間の音声と、
を用いて学習を行うキーワード抽出モデル学習手段を備えた
請求項１から請求項１０のうちのいずれか１項に記載のキーワード抽出モデル学習システム。
【請求項１２】
キーワード抽出モデル学習手段は、入力に対応する音声または前記入力に対応する音声の書き起こしを用いて学習を行う
請求項１から請求項１１のうちのいずれか１項に記載のキーワード抽出モデル学習システム。
【請求項１３】
請求項１から請求項１２のうちのいずれか１項に記載のキーワード抽出モデル学習手段によって学習したキーワード抽出モデルを用いることを特徴とするキーワード抽出システム。
【請求項１４】
請求項１３に記載のキーワード抽出システムを用いることを特徴とする情報入力システム。
【請求項１５】
請求項１３に記載のキーワード抽出システムを用いることを特徴とする情報検索システム。
【請求項１６】
音声からキーワードを抽出するキーワード抽出モデルを学習するキーワード抽出モデル学習方法であって、
連携システムへの入力と、前記入力に対応する音声とを用いて学習を行うキーワード抽出モデル学習ステップを含むことを特徴とするキーワード抽出モデル学習方法。
【請求項１７】
連携システムへの入力は少なくともテキスト情報を含む請求項１６記載のキーワード抽出モデル学習方法。
【請求項１８】
連携システムへの入力に対応する音声は、前記連携システムへの入力に対応する一部と、対応しない一部のいずれをも含む請求項１６または請求項１７記載のキーワード抽出モデル学習方法。
【請求項１９】
キーワード抽出モデル学習ステップで、連携システムへの入力に対して高い尤度を返すようにキーワード抽出モデルを学習する請求項１６から請求項１８のうちのいずれか１項に記載のキーワード抽出モデル学習方法。
【請求項２０】
キーワード抽出モデル学習ステップで、連携システムへの入力に対応する音声または対応する音声の一部に対して高い尤度を返すようにキーワード抽出モデルを学習する請求項１６から請求項１９のうちのいずれか１項に記載のキーワード抽出モデル学習方法。
【請求項２１】
キーワード抽出モデル学習ステップで、連携システムへの入力に対応しない音声または対応しない音声の一部に対して低い尤度を返すようにキーワード抽出モデルを学習する請求項１６から請求項２０のうちのいずれか１項に記載のキーワード抽出モデル学習方法。
【請求項２２】
キーワード抽出モデル学習ステップで、連携システムへのある入力に対応する音声を、該連携システムへの入力と類似した別の入力に関するモデル学習の学習データとして用いる請求項１６から請求項２１のうちのいずれか１項に記載のキーワード抽出モデル学習方法。
【請求項２３】
キーワード抽出モデル学習ステップで、連携システムへのある入力に対応する音声を、該連携システムへの入力と類似しない別の入力に関するモデル学習の負例の学習データとして用いる請求項１６から請求項２２のうちのいずれか１項に記載のキーワード抽出モデル学習方法。
【請求項２４】
キーワード抽出モデル学習ステップで、予め与えられた制約に基づいて連携システムへの入力を１つ以上のクラスタに分類し、各クラスタに関する学習をまとめて行う請求項１６から請求項２３のうちのいずれか１項に記載のキーワード抽出モデル学習方法。
【請求項２５】
キーワード抽出モデル学習ステップで学習するキーワード抽出モデルは、ある音声の一部がいずれかのキーワードの発話であるかの尤度を返すキーワード区間モデルと、ある音声の一部が各キーワードの発話であるかの尤度を返すキーワード認識モデルと、の２種類のモデルからなり、
前記キーワード抽出モデル学習ステップで、前記２種類のモデルを学習する
請求項１６から請求項２４のうちのいずれか１項に記載のキーワード抽出モデル学習方法。
【請求項２６】
キーワード抽出モデル学習ステップで、連携システムへの入力と、前記入力に対応する可能性の高い音声の一区間を見つけ出し、この区間の音声と、を用いて学習を行う請求項１６から請求項２５のうちのいずれか１項に記載のキーワード抽出モデル学習方法。
【請求項２７】
キーワード抽出モデル学習ステップで、入力に対応する音声または前記入力に対応する音声の書き起こしを用いて学習を行う請求項１６から請求項２６のうちのいずれか１項に記載のキーワード抽出モデル学習方法。
【請求項２８】
請求項１６から請求項２７のうちのいずれか１項に記載のキーワード抽出モデル学習方法で学習したキーワード抽出モデルを用いることを特徴とするキーワード抽出方法。
【請求項２９】
請求項２８に記載のキーワード抽出方法を用いることを特徴とする情報入力方法。
【請求項３０】
請求項２８に記載のキーワード抽出方法を用いることを特徴とする情報検索方法。
【請求項３１】
音声からキーワードを抽出するキーワード抽出モデルを学習するためのキーワード抽出モデル学習プログラムであって、
コンピュータに、
連携システムへの入力と、前記入力に対応する音声とを用いて学習を行うキーワード抽出モデル学習処理を
実行させるためのキーワード抽出モデル学習プログラム。
【請求項３２】
連携システムへの入力は少なくともテキスト情報を含む請求項３１記載のキーワード抽出モデル学習プログラム。
【請求項３３】
連携システムへの入力に対応する音声は、前記連携システムへの入力に対応する一部と、対応しない一部のいずれをも含む請求項３１または請求項３２記載のキーワード抽出モデル学習プログラム。
【請求項３４】
コンピュータに、
キーワード抽出モデル学習処理で、連携システムへの入力に対して高い尤度を返すようにキーワード抽出モデルを学習する処理を実行させる
請求項３１から請求項３３のうちのいずれか１項に記載のキーワード抽出モデル学習プログラム。
【請求項３５】
コンピュータに、
キーワード抽出モデル学習処理で、連携システムへの入力に対応する音声または対応する音声の一部に対して高い尤度を返すようにキーワード抽出モデルを学習する処理を実行させる
請求項３１から請求項３４のうちのいずれか１項に記載のキーワード抽出モデル学習プログラム。
【請求項３６】
コンピュータに、
キーワード抽出モデル学習処理で、連携システムへの入力に対応しない音声または対応しない音声の一部に対して低い尤度を返すようにキーワード抽出モデルを学習する処理を実行させる
請求項３１から請求項３５のうちのいずれか１項に記載のキーワード抽出モデル学習プログラム。
【請求項３７】
コンピュータに、
キーワード抽出モデル学習処理で、連携システムへのある入力に対応する音声を、該連携システムへの入力と類似した別の入力に関するモデル学習の学習データとして用いる処理を実行させる
請求項３１から請求項３６のうちのいずれか１項に記載のキーワード抽出モデル学習プ
ログラム。
【請求項３８】
コンピュータに、
キーワード抽出モデル学習処理で、連携システムへのある入力に対応する音声を、該連携システムへの入力と類似しない別の入力に関するモデル学習の負例の学習データとして用いる処理を実行させる
請求項３１から請求項３７のうちのいずれか１項に記載のキーワード抽出モデル学習プログラム。
【請求項３９】
コンピュータに、
キーワード抽出モデル学習処理で、予め与えられた制約に基づいて連携システムへの入力を１つ以上のクラスタに分類し、各クラスタに関する学習をまとめて行う処理を実行させる
請求項３１から請求項３８のうちのいずれか１項に記載のキーワード抽出モデル学習プログラム。
【請求項４０】
キーワード抽出モデル学習処理で学習するキーワード抽出モデルは、ある音声の一部がいずれかのキーワードの発話であるかの尤度を返すキーワード区間モデルと、ある音声の一部が各キーワードの発話であるかの尤度を返すキーワード認識モデルと、の２種類のモデルからなり、
コンピュータに、
前記キーワード抽出モデル学習処理で、前記２種類のモデルを学習する処理を実行させる
請求項３１から請求項３９のうちのいずれか１項に記載のキーワード抽出モデル学習プログラム。
【請求項４１】
コンピュータに、
キーワード抽出モデル学習処理で、連携システムへの入力と、前記入力に対応する可能性の高い音声の一区間を見つけ出し、この区間の音声と、を用いて学習を行う処理を実行させる
請求項３１から請求項４０のうちのいずれか１項に記載のキーワード抽出モデル学習プログラム。
【請求項４２】
コンピュータに、
キーワード抽出モデル学習処理で、入力に対応する音声または前記入力に対応する音声の書き起こしを用いて学習を行う処理を実行させる
請求項３１から請求項４１のうちのいずれか１項に記載のキーワード抽出モデル学習プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声からキーワードを抽出するキーワード抽出モデルを学習するキーワード抽出モデル学習システム、キーワード抽出システム、情報入力システム、情報検索システム、キーワード抽出モデル学習方法、キーワード抽出方法、情報入力方法、情報検索方法およびキーワード抽出モデル学習プログラムに関し、特に、連携先システムへの入力とその入力に対応する音声を用いて学習を行うことを特徴とするキーワード抽出モデル学習システム、キーワード抽出システム、情報入力システム、情報検索システム、キーワード抽出モデル学習方法、キーワード抽出方法、情報入力方法、情報検索方法およびキーワード抽出モデル学習プログラムに関する。
【背景技術】
【０００２】
単語や句（単語の集合）、文などを入力とする情報入力システムや情報検索システムに対して、そのフロントエンドとして音声認識技術を用いる場合に、音声データから特定の語句等を抽出する「キーワード抽出」技術がよく用いられる。以下、便宜上、単語だけでなく句や文などについても、それがキーワード抽出手段のバックエンドとなるシステム（以下、連携先システムと表記する。）に対する有意な入力として抽出の対象となる場合には、すべて「キーワード」と表現する。
従来のキーワード抽出技術は、大きく２種類の方法で実現されてきた。１つは「ワードスポッティング」と呼ばれる方式であって、予め定められたキーワードが音声中に含まれているか否かを判断する方式である。もう１つの方式は、いわゆる音声認識（音声からテキストへの変換）によって音声全体をいったんテキストに変換した後に、テキスト処理技術を用いてキーワードを抽出する方式（以下、テキスト処理方式と表記する。）である。
Ｒ．Ｃ．Ｒｏｓｅ  ａｎｄ  Ｄ．Ｂ．Ｐａｕｌ，”ａ  ｈｉｄｄｅｎ  Ｍａｒｋｏｖ  ｍｏｄｅｌ  ｂａｓｅｄ  ｋｅｙｗｏｒｄ  ｒｅｃｏｇｎｉｔｉｏｎ  ｓｙｓｔｅｍ”，ｉｎ  Ｐｒｏｃ．ＩＣＡＳＳＰ  ９０，ｐｐ．１２９−１３２．（以下非特許文献１と記す）には、「ワードスポッティング」方式の一例が記載されている。非特許文献１には、予め列挙されたキーワードのそれぞれについて、入力音声の一部がキーワードと同じであるか否かを推定するモデルを用意し、用意したモデルを並列につなぐ（キーワードネットワーク）ことが記載されている。
また、非特許文献１には、これと並行して非キーワード用のモデルを並べる（フィラーネットワーク）ことが記載されている。入力音声が、並列に置かれたモデルのうち、キーワードモデルの何れかに対して尤度最大となれば、そのキーワードが現れたとみなすことができる。また、非特許文献１に記載された方式では、さらにキーワード／フィラーネットワークの全体と並列にバックグラウンドモデルを配置する。バックグラウンドモデルは、あらゆる音声について言語的なバイアスが掛かりにくいように設計される。そして、キーワードモデルに対する尤度とバックグラウンドモデルに対する尤度の差を用いることで、正規化された尤度を用いた抽出結果の棄却判定を行う。上記のような構造とすることで、入力音声の音響的な条件に対してロバストなキーワード抽出が可能となる。
キーワードモデルでは、キーワードに類似した非キーワードを吸収する問題がある。そのため、フィラーモデルや、バックグラウンドモデルによる尤度正規化処理が提案された。特に、フィラーの追加は手軽なチューニング手段として知られている。例えば、キーワード「和歌山」のモデルが「おかやま」という発声を誤抽出する場合には「おかやま」をフィラーとして追加するなどの方法が知られている。
例えば、特開２００５−０９２３１０号公報（以下特許文献１と記す）には、フィラーとしてキーワードに類似した単語を大語彙辞書から見つけて追加する技法が開示されている。また、「パーソナルロボットＰａＰｅＲｏの音声認識インタフェース」（岩沢，第１３回ＡＩチャレンジ研究会資料，ｐ．１７−２２、以下非特許文献２と記す）には、フィラーを音節連続辞書から生成する技法が記載されている。
実際には、個々のフィラーモデルはそこまで厳密に動作するわけではない。例えば、「岡山」と「和歌山」の二つのモデルに対して「わかやま」という発声を入力しても「岡山」モデルの尤度が高くなるケースはあり得る。これは、「和歌山」のモデルが入力された「わかやま」という音声に対して十分に学習されていないケースで起こる問題である。このような場合は、非特許文献２に記載された技法と同様に、「わかやま」という音声によりよくマッチするフィラー（例えば「あかやま」）を「和歌山」の変形として追加するなどのアドホックな対応手段が知られている。
キーワード抽出の別の実現方式であるテキスト処理方式は、いわゆるディクテーション技術の普及とともに利用されるようになってきた方式である。基本的には、大語彙連続音声認識技術と文字列照合技術の単純な組み合わせで構成可能な為、キーワード抽出よりもその後段の処理に主眼が置かれる場合などで多用される傾向がある。近年では、ディクテーション技術の認識精度が向上したこともあり、より高度な自然言語処理技術との組み合わせが提案されている。例えば、Ｄ．Ｍｉｌｌｅｒ，Ｒ．Ｓｃｈｗａｒｔｚ，Ｒ．Ｗｅｉｓｃｈｅｄｅｌ  ａｎｄ  Ｒ．Ｓｔｏｎｅ，”Ｎａｍｅｄ  ｅｎｔｉｔｙ  ｅｘｔｒａｃｔｉｏｎ  ｆｒｏｍ  ｂｒｏａｄｃａｓｔ  ｎｅｗｓ”，ｉｎ  Ｐｒｏｃ．ｔｈｅ  ＤＡＲＰＡ  Ｂｒｏａｄｃａｓｔ  Ｎｅｗｓ  Ｗｏｒｋｓｈｏｐ．Ｈｅｒｎｄｏｎ，Ｖｉｒｇｉｎｉａ，１９９９，ｐｐ．３７−４０．（以下非特許文献３と記す）には、ディクテーション技術と自然言語処理技術の１つである固有表現（Ｎａｍｅｄ  Ｅｎｔｉｔｙ）抽出を組み合わせることが記載されている。固有表現は、例えば、「人名」や「地名」のようなある種の構造を持ったテキストであり、ここではキーワードの一種と考える。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、上述した従来技術では、キーワード抽出処理を利用する連携先システムにとって適切なキーワードを事前に収集することが困難であって、非常に手間が掛かる。
従来技術は、キーワードを如何に精度よく抽出するかに主眼を置いたものが主流であった。従来技術では、抽出の対象となるキーワードは既知または容易に収集可能であると仮定されている。例えば、非特許文献２に記載された技術のように、抽出された個々のキーワードに対するバックエンド側の処理が明確に規定されているケースでは、上記の仮定が成り立つ。しかし、実世界で稼動する連携先システムの多くは、非常に多くの入力を扱うことが可能であり、抽出の対象となるキーワードもまた多種多様となる。連携先システムが利用するために必要十分なキーワードを収集できなければ、キーワード抽出精度が如何に高くとも、実用的なキーワード抽出システムとは言えない。
キーワード収集が困難な第１の理由は、キーワード抽出システムをどのようなシステムと連携させるかによって、収集すべきキーワードがまったく異なってくることである。例えば、チケット予約システムと連携させるのであれば、イベントの名称やチケット番号を抽出する必要がある。一方、電車の乗り換え案内システムと連携させるのであれば、駅名を収集しなければならない。
キーワード収集が困難な第２の理由は、キーワードそのものだけを収集するだけでは十分でないということである。実現方式にもよるが、十分なフィラー（非キーワード）を収集しなければキーワード抽出精度の低いシステムとなってしまう。
キーワード収集が困難な第３の理由は、そもそも十分なキーワードの収集が事実上不可能なケースもあることである。例えば、キーワード抽出技術を、Ｇｏｏｇｌｅ（登録商標）やＹａｈｏｏ！（登録商標）のような汎用検索システムと連携させる場合には、あらゆる単語がキーワードたり得る。こうした場合は、抽出可能なキーワードを何らかの条件で制約するしかない。よく用いられるのは、名詞のみ抽出するといった品詞等の単語属性に基づく制限である。しかし、実際には、ユーザは形容詞も検索したいと考えるかも知れない。また、同じ名詞でも検索される頻度が著しく低いためにキーワードとして抽出される機会がない、或いは、別の単語として抽出されることも考えられる。
キーワード収集が困難な第４の理由は、収集されたキーワードが実際にそのままの形で発話されるとは限らない、ということである。キーワードの収集は、通常、連携先システムが受理可能なキーワードをベースとして行われる。前述した例で言えば、チケット予約システムと連携させる場合には、チケット予約システムが受理可能なキーワード（チケット番号やイベント名）を収集する。ところが、利用者は、例えばイベント名に関して、チケット予約システムが意図しない略称を発話する可能性がある。ある利用者はチケット番号を２桁ごとに区切って発話し、別の利用者は１桁ごとに「の」を間に挟んで読み上げるかも知れない。
収集されたキーワードが実際にそのままの形で発話されるとは限らないという問題は、フィラー（非キーワード）の問題と近い。しかし、従来技術（例えば、特許文献１や非特許文献２参照。）で解決できないことは明らかである。なぜなら、こうしたキーワードの発話表現（キーワードの発話における変形表現）が、元のキーワードと音響的にごく近いという仮定は成り立たない為である。
本発明の目的は、連携先システムへの入力に適したキーワードを抽出することができるキーワード抽出システムを構築する為に必要なビルディングブロックとして、上述した用途に利用可能なキーワード抽出モデルを容易に構築可能なキーワード抽出モデル学習システム、キーワード抽出システム、情報入力システム、情報検索システム、キーワード抽出モデル学習方法、キーワード抽出方法、情報入力方法、情報検索方法およびキーワード抽出モデル学習プログラムを提供することである。
本発明の他の目的は、キーワードの発話における変形表現（発話表現）を抽出することができるキーワード抽出モデルを容易に構築可能なキーワード抽出モデル学習システム、キーワード抽出システム、情報入力システム、情報検索システム、キーワード抽出モデル学習方法、キーワード抽出方法、情報入力方法、情報検索方法およびキーワード抽出モデル学習プログラムを提供することにある。
【課題を解決するための手段】
【０００４】
本発明によるキーワード抽出モデル学習システムは、音声からキーワードを抽出するキーワード抽出モデルを学習するキーワード抽出モデル学習システムであって、連携システムへの入力と、前記入力に対応する音声とを用いて学習を行うキーワード抽出モデル学習手段を備えたことを特徴とする。
連携システムへの入力は少なくともテキスト情報を含んでもよい。
連携システムへの入力に対応する音声は、前記連携システムへの入力に対応する一部と、対応しない一部のいずれをも含んでもよい。
キーワード抽出モデル学習手段は、連携システムへの入力に対して高い尤度を返すようにキーワード抽出モデルを学習してもよい。
キーワード抽出モデル学習手段は、連携システムへの入力に対応する音声または対応する音声の一部に対して高い尤度を返すようにキーワード抽出モデルを学習してもよい。
キーワード抽出モデル学習手段は、連携システムへの入力に対応しない音声または対応しない音声の一部に対して低い尤度を返すようにキーワード抽出モデルを学習してもよい。
キーワード抽出モデル学習手段は、連携システムへのある入力に対応する音声を、該連携システムへの入力と類似した別の入力に関するモデル学習の学習データとして用いてもよい。
キーワード抽出モデル学習手段は、連携システムへのある入力に対応する音声を、該連携システムへの入力と類似しない別の入力に関するモデル学習の負例の学習データとして用いてもよい。
キーワード抽出モデル学習手段（例えば、キーワード抽出モデル学習手段２１０）は、予め与えられた制約に基づいて連携システムへの入力を１つ以上のクラスタに分類し、各クラスタに関する学習をまとめて行ってもよい。
キーワード抽出モデル学習手段（例えば、キーワード抽出モデル学習手段２１０）が学習するキーワード抽出モデルは、ある音声の一部がいずれかのキーワードの発話であるかの尤度を返すキーワード区間モデル（例えば、キーワード区間抽出モデル）と、ある音声の一部が各キーワードの発話であるかの尤度を返すキーワード認識モデルと、の２種類のモデルからなり、前記キーワード抽出モデル学習手段は、前記２種類のモデルを学習してもよい。
連携システムへの入力と、前記入力に対応する可能性の高い音声の一区間を見つけ出し、この区間の音声と、を用いて学習を行うキーワード抽出モデル学習手段を備えてもよい。
キーワード抽出モデル学習手段は、入力に対応する音声または前記入力に対応する音声の書き起こしを用いて学習を行ってもよい。
本発明によるキーワード抽出システムは、請求項１から請求項１１のうちのいずれか１項に記載のキーワード抽出モデル学習手段によって学習したキーワード抽出モデルを用いることを特徴とする。
本発明による情報入力システム（例えば、連携先システム１２０）は、請求項１２に記載のキーワード抽出システムを用いることを特徴とする。
本発明による情報検索システム（例えば、連携先システム１２０）は、請求項１２に記載のキーワード抽出システムを用いることを特徴とする。
本発明によるキーワード抽出モデル学習方法は、音声からキーワードを抽出するキーワード抽出モデルを学習するキーワード抽出モデル学習方法であって、連携システムへの入力と、前記入力に対応する音声とを用いて学習を行うキーワード抽出モデル学習ステップを含むことを特徴とする。
連携システムへの入力は少なくともテキスト情報を含んでもよい。
連携システムへの入力に対応する音声は、前記連携システムへの入力に対応する一部と、対応しない一部のいずれをも含んでもよい。
キーワード抽出モデル学習ステップで、連携システムへの入力に対して高い尤度を返すようにキーワード抽出モデルを学習してもよい。
キーワード抽出モデル学習ステップで、連携システムへの入力に対応する音声または対応する音声の一部に対して高い尤度を返すようにキーワード抽出モデルを学習してもよい。
キーワード抽出モデル学習ステップで、連携システムへの入力に対応しない音声または対応しない音声の一部に対して低い尤度を返すようにキーワード抽出モデルを学習してもよい。
キーワード抽出モデル学習ステップで、連携システムへのある入力に対応する音声を、該連携システムへの入力と類似した別の入力に関するモデル学習の学習データとして用いてもよい。
キーワード抽出モデル学習ステップで、連携システムへのある入力に対応する音声を、該連携システムへの入力と類似しない別の入力に関するモデル学習の負例の学習データとして用いてもよい。
キーワード抽出モデル学習ステップで、予め与えられた制約に基づいて連携システムへの入力を１つ以上のクラスタに分類し、各クラスタに関する学習をまとめて行ってもよい。
キーワード抽出モデル学習ステップで学習するキーワード抽出モデルは、ある音声の一部がいずれかのキーワードの発話であるかの尤度を返すキーワード区間モデルと、ある音声の一部が各キーワードの発話であるかの尤度を返すキーワード認識モデルと、の２種類のモデルからなり、前記キーワード抽出モデル学習ステップで、前記２種類のモデルを学習してもよい。
キーワード抽出モデル学習ステップで、連携システムへの入力と、前記入力に対応する可能性の高い音声の一区間を見つけ出し、この区間の音声と、を用いて学習を行ってもよい。
キーワード抽出モデル学習ステップで、入力に対応する音声または前記入力に対応する音声の書き起こしを用いて学習を行ってもよい。
本発明によるキーワード抽出方法は、請求項１５から請求項２５のうちのいずれか１項に記載のキーワード抽出モデル学習方法で学習したキーワード抽出モデルを用いることを特徴とする。
本発明による情報入力方法は、請求項２６に記載のキーワード抽出方法を用いることを特徴とする。
本発明による情報検索方法は、請求項２６に記載のキーワード抽出方法を用いることを特徴とする。
本発明によるキーワード抽出モデル学習プログラムは、音声からキーワードを抽出するキーワード抽出モデルを学習するためのキーワード抽出モデル学習プログラムであって、コンピュータに、連携システムへの入力と、前記入力に対応する音声とを用いて学習を行うキーワード抽出モデル学習処理を実行させることを特徴とする。
連携システムへの入力は少なくともテキスト情報を含んでもよい。
連携システムへの入力に対応する音声は、前記連携システムへの入力に対応する一部と、対応しない一部のいずれをも含んでもよい。
コンピュータに、キーワード抽出モデル学習処理で、連携システムへの入力に対して高い尤度を返すようにキーワード抽出モデルを学習する処理を実行させてもよい。
コンピュータに、キーワード抽出モデル学習処理で、連携システムへの入力に対応する音声または対応する音声の一部に対して高い尤度を返すようにキーワード抽出モデルを学習する処理を実行させてもよい。
コンピュータに、キーワード抽出モデル学習処理で、連携システムへの入力に対応しない音声または対応しない音声の一部に対して低い尤度を返すようにキーワード抽出モデルを学習する処理を実行させてもよい。
コンピュータに、キーワード抽出モデル学習処理で、連携システムへのある入力に対応する音声を、該連携システムへの入力と類似した別の入力に関するモデル学習の学習データとして用いる処理を実行させてもよい。
コンピュータに、キーワード抽出モデル学習処理で、連携システムへのある入力に対応する音声を、該連携システムへの入力と類似しない別の入力に関するモデル学習の負例の学習データとして用いる処理を実行させてもよい。
コンピュータに、キーワード抽出モデル学習処理で、予め与えられた制約に基づいて連携システムへの入力を１つ以上のクラスタに分類し、各クラスタに関する学習をまとめて行う処理を実行させてもよい。
キーワード抽出モデル学習処理で学習するキーワード抽出モデルは、ある音声の一部がいずれかのキーワードの発話であるかの尤度を返すキーワード区間モデルと、ある音声の一部が各キーワードの発話であるかの尤度を返すキーワード認識モデルと、の２種類のモデルからなり、コンピュータに、前記キーワード抽出モデル学習処理で、前記２種類のモデルを学習する処理を実行させてもよい。
コンピュータに、キーワード抽出モデル学習処理で、連携システムへの入力と、前記入力に対応する可能性の高い音声の一区間を見つけ出し、この区間の音声と、を用いて学習を行う処理を実行させてもよい。
コンピュータに、キーワード抽出モデル学習処理で、入力に対応する音声または前記入力に対応する音声の書き起こしを用いて学習を行う処理を実行させてもよい。
本発明によるキーワード抽出システムの好ましい一態様は、例えば、キーワード抽出手段と、そのキーワード抽出手段で利用可能なキーワード抽出モデルを学習するキーワード抽出モデル学習手段とを備え、キーワード抽出モデル学習手段は、キーワード抽出システムの連携先システムへの入力テキストと、その入力に対応する音声またはその音声の書き起こしとを学習データとして受け取り、連携先システムへの入力テキストと、その音声または書き起こし、さらに、それらから推測される未知のテキストとをキーワードとみなし、入力音声のある区間が該キーワードの何れかである尤度を返すキーワード抽出モデルを、キーワードごとに、あるいは、類似するキーワードの集合ごとに学習するよう動作することを特徴とする。
またさらに、本発明によるキーワード抽出システムの好ましい他の一態様は、例えば、キーワード抽出モデルが高い尤度を示した音声に対して、そのキーワード抽出モデルが包含しているいくつかのキーワードのうちのいずれであるかを識別するキーワード識別手段を備え、キーワード抽出モデル学習手段は、キーワード抽出モデルの学習で利用したものと同じ学習データを用いて、キーワード識別手段で利用可能なキーワード識別モデルを学習するよう動作することを特徴とする。
このような構成を採用し、連携先システムへの入力およびそれに対応する音声での表現（発話表現）とそれらの変形をキーワードとして抽出することによって、本発明の目的を達成することができる。
【発明の効果】
【０００５】
本発明によれば、連携先システムに適したキーワード抽出を容易に実現できるようになる。その理由は、そもそも連携先システムはキーワード抽出の結果として得られたテキストを入力として受け付けるのであるから、逆に、連携先システムが入力として受理可能なテキストをキーワードとして抽出するようにすれば、少なくとも連携先システムにとって有意であると期待されるデータをキーワード抽出の対象とすることができるためである。
付け加えると、こうしたテキストはキーワード抽出に頼らずともキー入力等で連携先システムに入力することも可能である。実際、音声入力と並行してキー入力やマウスによる多岐選択による入力Ｉ／Ｆ（インタフェース）をフロントエンドに設けることは一般的に行われている。
また、本発明のキーワード抽出によれば、発話表現されたキーワードを抽出することが出来る。連携先システムへの入力（すなわちキーワード）に対応した音声が得られれば、その音声から、キーワードがどのような発話表現に変形し得るのかというサンプルが得られる。このサンプルを用いることで、キーワードとその発話表現の両方に対応したキーワード抽出モデルを構築できる。
ここで問題になるのは、学習データとして連携先システムへの入力とその音声だけを用いるとすると、十分な柔軟性を持つモデルが構築できないという点である。本発明のキーワード抽出システムでは、連携先システムへの入力とその音声（およびその書き起こし）をただ抽出対象キーワードとして収集するのみではなく、これらからのさらなる変形をも受理可能なキーワード抽出モデルを学習することによって、この問題に対処することができる。
【図面の簡単な説明】
【０００６】
図１は第１の実施の形態の構成例を示すブロック図である。
図２は第１の実施の形態におけるキーワード抽出手段の動作の例を示すフローチャートである。
図３は第１の実施の形態におけるキーワード抽出モデル学習手段の動作の例を示すフローチャートである。
図４は第２の実施の形態の構成例を示すブロック図である。
図５は第２の実施の形態におけるキーワード抽出システムの動作の例を示すフローチャートである。
図６は第２の実施の形態におけるキーワード抽出モデル学習手段の動作の例を示すフローチャートである。
図７は本実施例によるキーワード抽出システムの構成例を示すブロック図である。
【発明を実施するための最良の形態】
【０００７】
実施の形態１
以下、本発明の第１の実施の形態を図面を参照して説明する。図１は、第１の実施の形態の構成例を示すブロック図である。図１に示す第１の実施の形態は、音声からキーワードを抽出するキーワード抽出システム１００と、キーワード抽出モデル学習手段１１０と、抽出されたキーワードを入力として所定の動作を行う連携先システム１２０とを備える。
キーワード抽出システム１００は、具体的には、プログラムに従って動作するパーソナルコンピュータ等の情報処理装置によって実現される。キーワード抽出システム１００は、キーワード抽出手段１０１と、キーワード抽出モデル学習手段１１０によって学習されたキーワード抽出モデル１０２とを含む。キーワード抽出モデル１０２は、音声からキーワードを抽出するモデルである。
キーワード抽出手段１０１は、入力した音声データに対してキーワード抽出モデル１０２を適用する。キーワード抽出手段１０１は、キーワード抽出モデル１０２が、音声データのある区間に対して所定の閾値以上の尤度を返したならば、その音声の区間をキーワード区間とし、キーワード抽出モデルがその区間に対して最尤として返却したキーワードを出力する。
キーワード抽出手段１０１が、音声の一区間に対して抽出したとして出力するキーワードは、唯１つだけとは限らない。まったく同じ音声の一区間について、複数のキーワードを出力してもよい。この場合、キーワード抽出手段１０１は、連携先システム１２０に、キーワードだけでなく、各々の抽出キーワードに対する尤度等の付加情報をあわせて出力すると好適である。
キーワード抽出モデル学習手段１１０は、具体的には、プログラムに従って動作するパーソナルコンピュータ等の情報処理装置によって実現される。キーワード抽出モデル学習手段１１０は、連携先システム１２０への入力と、音声データと、これらを対応付ける情報（対応情報）とを入力する。キーワード抽出モデル学習手段１１０は、後述するアルゴリズムに従って、連携先システム１２０への入力をキーワードとみなし、連携先システム１２０への入力、音声データおよび対応情報に基づいて、音声データに含まれるキーワードまたはその発話表現を推定するキーワード抽出モデル１０２を学習する。なお、本実施の形態において、キーワード抽出モデル学習システムは、キーワード抽出モデル学習手段１１０と、連携先システム１２０への入力、音声データおよびこれらを対応付ける情報を入力する手段と、キーワード抽出モデル１０２への出力を行う手段とによって実現される。
連携先システム１２０は、具体的には、プログラムに従って動作するパーソナルコンピュータ等の情報処理装置によって実現される。連携先システム１２０は、音声からキーワードを抽出するキーワード抽出手段１０１またはその他の手段から、テキストをベースとする入力を受け、定められた何らかの動作を行う。連携先システム１２０は、例えば、キーワード抽出システム１００によって入力されたキーワードに基づいて各種処理を実行する情報入力システムであってもよい。また、連携先システム１２０は、例えば、キーワード抽出システム１００によって入力されたキーワードに基づいて情報検索を行う情報検索システムであってもよい。
ここで、連携先システム１２０への入力とは、例えば、連携先システム１２０に入力されたテキスト情報である。連携先システム１２０に、複数の異なる属性を含む入力があった場合、その属性を含めてキーワード抽出モデル学習手段１１０への入力として良い。また、連携先システム１２０への入力と音声データとを対応付ける情報とは、例えば、音声中のどの区間がその入力に対応する発話区間であるかを示す時間情報や、その発話の書き起こしなどを言う。
キーワード抽出モデル１０２は、所定の手続きに基づいて音声から取り出された特徴量に対して、所定の手続きに基づいた照合処理を掛けることにより、音声のある区間に既知のキーワードのいずれかまたはそのキーワードの発話表現のいずれかが含まれているかどうかを算出することができる。キーワード抽出モデル１０２を、各キーワード、キーワードの発話表現について１つずつ用意しても良いし、それらの全部または一部を同時にモデル化できるような単一のモデルまたは複数個のモデルを用いるようにしても良い。
キーワード抽出モデル１０２は、少なくとも以下の条件を満たす。すなわち、キーワード抽出モデル１０２は、所定の手続きで音声の一区間を与えられると、予め与えられた一つまたは複数のキーワードのいずれかに一致する文字列、音素列、音響特徴量列に対して、高い尤度を示す何らかの値を返す。
また、キーワード抽出モデル１０２は、あるキーワードに対応する発話表現として与えられた文字列、音素列、音響特徴量列に対しても、そのキーワードに準じる高い尤度を示す何らかの値を返す。
さらに、キーワード抽出モデル１０２は、既知のキーワードやキーワードに対応する発話表現の文字列、音素列、音響特徴量列のどれとも一致しないが、いずれかに類似する文字列、音素列、音響特徴量列に対しては、そのキーワードおよびキーワードの発話表現に準じるやや高い尤度を示す何らかの値を返す。
そして、キーワード抽出モデル１０２は、上記のいずれにも当てはまらない文字列、音素列、音響特徴量列に対しては低い尤度を返す。
キーワード抽出手段１０１が音声の一区間に対して用いる尤度は、何れかのキーワードに関するキーワード抽出モデル１０２の尤度（＝距離）を直接用いるだけでなく、何らかの手段で正規化処理を施しても良い。また、キーワード抽出手段１０１は、閾値による棄却処理を、何らかの棄却手段を用いて行う構成としても良い。例えば、ある時間内に発話された複数の音声に対する抽出キーワードが、ある特定の組であるか否かに基づいて棄却するなどの手段を用いることができる。また、キーワード抽出モデル学習手段１１０は、連携システムへの入力に対して高い尤度を返すようにキーワード抽出モデルを学習してもよい。
次に、図面を参照して第１の実施の形態の動作について説明する。まず、第１の実施の形態のキーワード抽出手段１０１の動作について説明する。図２は、第１の実施の形態におけるキーワード抽出手段１０１の動作の例を示すフローチャートである。なお、キーワード抽出モデル１０２として、予め初期のキーワード抽出モデルまたはキーワード抽出モデル学習手段１１０によって学習されたキーワード抽出モデルが与えられているものとする。
キーワード抽出手段１０１の動作は、キーワード抽出モデル１０２をどのように選ぶかによって具体的な挙動が異なる。
キーワード抽出モデル１０２が、音響特徴量列に対する尤度を算出するモデルである場合、キーワード抽出手段１０１は、入力された音声信号から音響特徴量を算出する（ステップＳ１０１）。次に、キーワード抽出手段１０１は、ステップＳ１０５に移行し、ステップＳ１０１で求めた入力音響特徴量列をキーワード抽出モデル１０２に入力する。
キーワード抽出モデル１０２が、音素列に対する尤度を算出するモデルである場合、キーワード抽出手段１０１は、入力された音声信号から音響特徴量を算出する（ステップＳ１０１）。次に、キーワード抽出手段１０１は、求めた入力音響特徴量列が、既知のどのような音素に近いかを計算する（ステップＳ１０２）。そうしてステップＳ１０５に移行し、求めた音素列と音素列の各音素に対する入力音響特徴量の距離をキーワード抽出モデル１０２に入力する。
キーワード抽出モデル１０２が、文字列に対する尤度を算出するモデルである場合、キーワード抽出手段１０１は、入力された音声信号から音響特徴量を算出する（ステップＳ１０１）。音響特徴量として、パワー、Δパワー、ΔΔ、ピッチ、ケプストラム、Δケプストラムなどを利用することができる。次に、キーワード抽出手段１０１は、求めた入力音響特徴量列が、既知のどのような音素に近いかを計算する（ステップＳ１０２）。さらに、ステップＳ１０２で求めた音素列が既知のどのような音節列または単語列に近いかを計算する（ステップＳ１０３）。そうしてステップＳ１０５に移行し、求めた音節列または単語列とそれらに対する尤度とをキーワード抽出モデル１０２に入力する。
キーワード抽出モデル１０２が、さらにメタな特徴量に対する尤度を算出するモデルである場合は、ステップＳ１０１〜Ｓ１０３の後、そのメタ特徴量を求めて（ステップＳ１０４）、キーワード抽出モデル１０２に入力する（ステップＳ１０５）。メタ特徴量とは、例えば、品詞情報、直近のキーワード抽出結果、音素事後確率、単語事後確率など、ステップＳ１０３で求めた１つ又は複数の文字列を元に算出される特徴量を言う。
キーワード抽出モデル１０２は、上記の音響特徴量列、音素列、文字列、メタ特徴量列のうちの１つ以上の組み合わせに対する尤度を算出するモデルであっても良い。その場合、キーワード抽出手段１０１は、ステップＳ１０１〜Ｓ１０４を適宜経由した後、必要な情報をステップＳ１０５で入力する。
また、キーワード抽出手段１０１は、ステップＳ１０１〜Ｓ１０５の処理を必要に応じてパイプライン実行するようにしても良い。パイプライン実行することで、キーワード抽出処理時間（スループット）を短縮できるとともに、適当な枝狩り処理を併用することで、不要な計算を削減することができる。例えば、音素列Ｘから文字列Ｙが得られるとき、音素列Ｘに対する尤度が所定の枝狩り閾値を下回ったなら、文字列Ｙの尤度計算をスキップできる。
キーワード抽出手段１０１は、ステップＳ１０１〜Ｓ１０４で入力音声から必要な情報を算出したのち、ステップＳ１０５で、キーワード抽出モデル１０２との照合を行う。その結果、音声の一区間に対するキーワード抽出モデル１０２による尤度が算出される。
ステップＳ１０６において、キーワード抽出手段１０１は、ステップＳ１０５で算出された尤度の棄却判定を行う。例えば、キーワード抽出手段１０１は、キーワード抽出モデル１０２が代表するいずれかのキーワードに対して、所定の閾値を超える尤度が得られた場合、そのキーワードが抽出されたとみなす。
次に、第１の実施の形態のキーワード抽出モデル学習手段１１０の動作について説明する。図３は、第１の実施の形態におけるキーワード抽出モデル学習手段１１０の動作の例を示すフローチャートである。
キーワード抽出モデル学習手段１１０の動作は、キーワード抽出モデル１０２をどのように選ぶかによって具体的な挙動が異なる。
まず、ステップＳ２０１で、初期状態のキーワード抽出モデル（初期モデル）が与えられる。なお、初期状態のキーワード抽出モデルは、例えば、プログラムの初期値として与えられる。事前に、キーワードの一部またはすべてが既知である場合、または、キーワードとなる可能性の高いテキスト情報がある程度入手可能である場合は、それらを用いて初期モデルを構築する。そのような情報がまったく入手できない場合は、空の初期モデルを構築する。初期モデルとして、既に学習済みのモデルが与えられてもよく、この場合、キーワード抽出モデル学習手段１１０は、新たな学習データに対する追加の学習を行う。
キーワード抽出モデル学習手段１１０は、学習データとして、連携先システムへの入力と、それに対応する音声データと、それらを対応付ける情報とを受け取る（ステップＳ２０２）。以下、キーワード抽出モデル学習手段１１０に学習データとして渡された情報であって、連携先システム１２０に入力されたテキスト情報を、正則キーワード（キーワードの正則な表現とみなすため）と記述する。ここで、音声は、正則キーワードに対応する発話そのものであるか、少なくともそのような発話を含むものとする。また、正則キーワードと対応する音声を対応付ける情報とは、例えば、音声信号中のどの区間が正則キーワードの発話表現であるかを示す時刻情報などを含む。あるいは、正則キーワードの発話表現の書き起こし文字列を含んでも良い。
ある正則キーワードと、その正則キーワードに対応付けられた音声との組は、正則キーワードに応じて自動的に見つけ出すこともできる。例えば、キーワード抽出モデルが十分に学習されているなら、ある正則キーワードを出力しうる発話音声のバリエーションが得られている。そこで、その正則キーワードに対応する音声区間が含まれていることが分かっている音声を与えれば、キーワード抽出モデル学習手段１１０は、この音声の中から、前記バリエーションの何れかの発話が行われている区間を抽出することができる。このようにして得られた学習データ対は、音声の音響的揺らぎ（例えば、話者性に由来するものなど）に対する頑健性を高めるための学習データとして利用できる。
キーワード抽出モデル１０２が、音響特徴量列に対する尤度を算出するモデルである場合、キーワード抽出モデル学習手段１１０は、学習データとして入力された音声信号から音響特徴量を算出する（ステップＳ２０３）。キーワード抽出モデル１０２が、音素列に対する尤度を算出するモデルである場合、キーワード抽出モデル学習手段１１０は、音響特徴量を元に音素列とその距離を算出する（ステップＳ２０４）。さらに、キーワード抽出モデル１０２が、文字列に対する尤度を算出するモデルである場合は、キーワード抽出モデル学習手段１１０は、この音素列を元に文字列とその尤度を算出する（ステップＳ２０５）。またさらに、キーワード抽出モデル１０２が、メタ特徴量に対する尤度を算出するモデルである場合は、キーワード抽出モデル学習手段１１０は、文字列を元にメタ特徴量とその尤度を算出する（ステップＳ２０６）。
ステップＳ２０３〜Ｓ２０６の処理の詳細は、キーワード抽出手段１０１におけるステップＳ１０１〜１０４の処理と同様である。
次に、キーワード抽出モデル学習手段１１０は、正則キーワードの発話表現に対応する音声の一区間に関して求められた音響特徴量、音素列、文字列、メタ特徴量などを受理するよう、キーワード抽出モデル１０２を拡張する（ステップＳ２０７）。このとき、拡張の元となった発話表現ではなく、その発話表現の正則キーワードがマッチしたとして照合結果を出力するようにモデルを拡張する。
例えば、各正則キーワードをＨＭＭでモデル化して並列に並べたキーワードネットワーク型のモデルの場合、ある正則キーワードの発話表現に対するＨＭＭは、もとの正則キーワードのＨＭＭと並列に配置される。ここで、この発話表現ＨＭＭを通過した場合の尤度は、その正則キーワードＨＭＭを通過した場合の尤度として扱われる。また、木構造辞書に基づくキーワード抽出モデルである場合、木構造の葉にいずれの正則キーワードであるかを示す情報が付加される。ここで、ある正則キーワードの発話表現に対応する葉に付加される情報として、その発話表現のもととなる正則キーワードを示す情報が与えられる。
キーワード抽出モデル１０２が、文字列などの非音響的入力に対する尤度を算出するものである場合は、さらにステップＳ２０８で、学習データとして与えられた正則キーワードそのものに対するモデルの拡張を行ってよい。
文字列に基づくモデルであれば、正則キーワード文字列をそのまま用いる。音節列に基づくモデルであれば、正則キーワードに任意の読み付け処理を施した後に学習を行う。読み付け処理には、例えば認識用辞書を利用する方法や、汎用の形態素解析器を利用する方法が考えられる。音素列に基づくモデルであれば、同様に所定の方法で読み情報を音素列に変換する。メタ情報に関しては、正則キーワードから取得できる範囲のものであれば、同様に学習を行う。例えば、品詞や文字種は正則キーワードから取り出せる情報であるので、こうしたメタ情報を用いるモデルであれば、正則キーワード自体も学習できる。一方で、例えば、事後確率を用いるモデルでは、正則キーワードに対する学習はできない。また、正則キーワードと音声データとを対応付ける情報が、その正則キーワードの発話表現の書き起こし文字列を含む場合は、この文字列表現も受理できるようにキーワード抽出モデル１０２を拡張しても良い。これが可能な条件と手続きは正則キーワードに準じる。
ステップＳ２０９で、さらに、キーワード抽出モデル学習手段１１０は、ステップＳ２０７におけるモデルの拡張を他のキーワードに対して伝播可能である場合、モデルの拡張を伝播する。例えば、キーワード抽出モデル１０２が木構造辞書に基づくモデルである場合、木のある深さの節からいくつか先の深さの節へ至るε遷移が追加されたならば、その深さまでの構造を共有する部分木に対してこの拡張を伝播する（共有される）。さらに、このε遷移が結ぶ節と同じ深さにある節間に同様のε遷移を追加しても良い。
学習データとして与えられた正則キーワードが、単に文字列を与えるだけでなく追加の属性を持つ場合、ステップＳ２０９での拡張の伝播は、同一属性または近似する属性を持つキーワードに限定して行っても良い。例えば、連携先システム１２０がチケット番号とアーティスト名を入力として受け付けるのであれば、新たに学習データとしてチケット番号とその発話表現が与えられた場合、キーワード抽出モデル１０２のアーティスト名に関する部分には上記の伝播が行われないようにしてもよい。
ステップＳ２０７、Ｓ２０８およびＳ２０９におけるモデルの拡張では、単に学習データを受理するようモデルを拡張するだけでなく、その拡張によって受理可能となった正則キーワードおよび発話表現に対して与えられる尤度を調整する為の手続きを同時に行ってもよい。例えば、木構造辞書に基づくモデルでは、ステップＳ２０８で拡張された枝に対してはペナルティなしとし、ステップＳ２０７で拡張された枝には軽いペナルティを付加し、さらにステップＳ２０９で拡張された枝には重いペナルティを付加する、といった処理を行ってもよい。
キーワード抽出モデル１０２が、正例だけでなく負例も用いて学習されるようなものである場合、キーワード抽出モデル学習手段１１０は、ステップＳ２１０で、正則キーワードの発話に対応しない音声部位に対するグラフの学習を行うようにしても良い。例えば、キーワードネットワーク型モデルで、各キーワードに対してＳＶＭのような識別器を用意するようなモデルである場合、負例、すなわち正則キーワードに対応しない音声から得られた音響特徴量、音素列、文字列、メタ特徴量を与えることで、誤って非キーワードに対して高い尤度を返すようなモデルとなることを防ぐことができる。
また、正則キーワードに対応する発話や正則キーワード自体も、負例としてステップＳ２１０で利用できることがある。例えば、キーワードＡ用の学習データとして入力された正則キーワードとその発話表現および音声データは、別のキーワードＢに対する識別器の負例として利用できる。
最後に、ステップＳ２１１で、キーワード抽出モデル学習手段１１０は、ステップＳ２０７、Ｓ２０８およびＳ２０９におけるモデルの拡張に応じて、モデルの既存部位に対する再計算などが必要である場合、再計算を行う。例えば、単語Ｎ−ｇｒａｍに基づくキーワード抽出モデル１０２では、モデル拡張（すなわち、未知のＮ単語組の頻度が増す）の後にバックオフ係数などの再計算が必要になる。
その後、キーワード抽出システム１００は、キーワード抽出モデル学習手段１１０によって学習されたキーワード抽出モデル１０２を用いて、キーワードの抽出処理を実行することになる。上記の処理が実行され、連携先システム１２０への入力や、その発話表現も考慮してキーワード抽出モデルが学習されるに従って、キーワード抽出の精度を向上させることができる。
実施の形態２
次に、本発明の第２の実施の形態を図面を参照して説明する。図４は、第２の実施の形態の構成例を示すブロック図である。図４に示す第２の実施の形態は、音声からキーワードを抽出するキーワード抽出システム２００と、キーワード抽出モデル学習手段２１０と、抽出されたキーワードを入力として所定の動作を行う連携先システム２２０と備える。
キーワード抽出システム２００は、キーワードに対応する発話区間を切り出すキーワード区間抽出手段２０１と、切り出されたキーワード発話区間に対していずれのキーワードに対する発話であるかを判別するキーワード認識手段２０２と、キーワード抽出モデル学習手段２１０によって学習されたキーワード区間抽出モデル２０３と、同じくキーワード抽出モデル学習手段２１０によって学習されたキーワード認識モデル２０４とを含む。
次に、図面を参照して第２の実施の形態の動作について説明する。図５は、第２の実施の形態におけるキーワード抽出システムの動作の例を示すフローチャートである。キーワード区間抽出手段２０１は、入力された音声データに対してキーワード区間抽出モデル２０３を適用する。そして、適用したキーワード区間抽出モデル２０３が、音声データのある区間に対して所定の閾値以上の尤度を返したならば、キーワード区間抽出手段２０１は、その音声の区間をキーワード区間として特定する（ステップＳ３０１）。
さらに、キーワード認識手段２０２は、特定されたキーワード区間に対して、キーワード認識モデル２０４を用いたキーワード認識処理を実行し、キーワード認識モデルがその音声区間に対して最尤として返却したキーワードを出力する（ステップＳ３０２）。
図６は、第２の実施の形態におけるキーワード抽出モデル学習手段２１０の動作の例を示すフローチャートである。キーワード抽出モデル学習手段２１０は、連携先システム２２０への入力と、音声データと、これらを対応付ける情報とを入力する（ステップＳ４０１）。
キーワード抽出モデル学習手段２１０は、連携先システム２２０への入力をキーワードとみなし、キーワードまたはその発話表現が音声のある区間に出現したか否かを推定するキーワード区間抽出モデル２０３を学習する（ステップＳ４０２）。すなわち、キーワード区間抽出モデル２０３は、音声データがキーワードを含むか否かを示す尤度を返すモデルである。
また同時に、同じ入力を用いて、あるキーワードに対応する音声の一区間に対して、その音声区間に何れかのキーワードまたはその発話表現が現れたか認識するキーワード認識モデル２０４をあわせて学習する（ステップＳ４０３）。すなわち、キーワード認識モデルは、音声データがどのキーワードを含むかを示す尤度を返すモデルである。
キーワード抽出モデル学習手段２１０の２つのモデルの学習手順は、第１の実施の形態のキーワード抽出モデル学習手段１１０の学習手順とほぼ同じである。
キーワード区間抽出手段２０１は、キーワード区間抽出モデル２０３が返却する情報に基づいて、いくつか用意されたキーワード認識モデル２０４の中から最適なモデルを選択するよう動作しても良い。
すなわち、キーワード区間抽出モデル２０３が、いくつかのキーワードを含むキーワードグループに対する尤度を返すよう学習されている場合、キーワード抽出モデル学習手段２１０は、キーワード認識モデル２０４を、そのキーワードグループごとに学習しておく。こうすることで各モデルをより高精度に学習させることが可能となり、キーワード抽出精度が向上する。
第２の実施の形態では、キーワード抽出に必要な２つの識別動作、すなわち、ある音声区間がキーワードであるかどうかを識別する動作と、ある音声区間がどのキーワードであるかを識別する動作とを、別個にモデル化するため、より精度の高いモデルを構築できる。特に、ＳＶＭ等の識別モデルを用いる場合は、相対的に負例の個数が増えるので、第１の実施の形態におけるモデルよりも精度の高い学習を行うことができる。
また、第２の実施の形態では、類似するキーワードに対するより高い汎化能力を持った学習が可能である。
キーワードが類似する場合、その発話表現や、その音声に対する認識結果は互いに似通い、オーバーラップすることもある。例えば、キーワードＡの変形であるキーワードＡ１と、キーワードＢの変形であるキーワードＢ１とが、まったく同じ形になることがある。第１の実施の形態では、そのようなオーバーラップはモデルの学習精度を低下させることがある。一方、第２の実施の形態では、少なくともキーワード区間抽出モデル２０３の学習に関しては、オーバーラップは問題にならない。なぜなら、キーワード区間抽出手段２０１にとって、キーワードＡ１（＝キーワードＢ１）にマッチする音声区間に対して、「Ａであるか」「Ｂであるか」は問題にならず、「ＡかＢの何れかがこの区間にあらわれた」ことだけを精度よく推定できれば十分だからである。
また、キーワード認識モデル２０４についても、第２の実施の形態の方がより精度の高いモデルを学習できる可能性がある。なぜなら、第１の実施の形態では、キーワード抽出モデル１０２はキーワードの前後にあるフィラーについても棄却できるように学習する必要があった。一方、第２の実施の形態におけるキーワード認識モデル２０４では、キーワード前後のフィラーを考慮する必要がない。
また、キーワードグループごとに別のキーワード認識モデル２０４を用いる場合に、より精度の高いモデルを学習可能であることはいうまでもない。
予め複数のキーワードの一部がグループを構成することが分かっている場合は、初期モデルを構築する時点でグループ化しておくことができる。そうでない場合は、互いにオーバーラップする複数のキーワードを統合するようにすれば良い。例えば、あるキーワードに対する発話表現が与えられたときに、そのキーワード以外のあるキーワード群に対して高い尤度が得られたならば、その高い尤度が得られたキーワード群に、その発話表現のキーワードを統合するようにすれば良い。
【実施例】
【０００８】
次に、第２の実施の形態の実施例について説明する。図７は、本実施例によるキーワード抽出システムの構成例を示すブロック図である。図７に示すように、キーワード抽出システム３００が、商品情報検索システム３２０のフロントエンドとして動作する場合について説明する。
商品情報検索システム３２０は、１つ又は複数の検索ワードを与えられることで、その検索ワードに関する情報を含む商品の情報を提示する。例えば、商品の正式名称や略称、カタログ上での商品番号、商品の分類（家具、椅子、テレビ、健康器具、等）、商品の特徴を現す言葉（白い、パイプ製、大画面、肩こり）などを入力することで、商品情報を検索できる。これらの検索ワードは、キーボード等の入力装置を用いて入力することもできる。
商品情報検索システム３２０の利用者は、電話等で顧客と応対しながら、必要な商品情報を検索するものとする。
キーワード抽出システム３００は、キーワード区間切り出し部３０１と、キーワード認識部３０２と、Ｎ個のキーワードクラスタ抽出モデル３０３と、Ｎ個のキーワードクラスタ認識モデル３０４とを含む。
キーワードクラスタ抽出モデル３０３は、ＳＶＭやＣＲＦ等の識別モデルを複数並列に配置したものである。各キーワードクラスタ抽出モデル３０３は、あるクラスタに属す一連のキーワードおよびその発話表現をモデル化したものである。各キーワードクラスタ抽出モデル３０３は、ある音声区間の音響特徴量、音素列、上位ｎ位までの認識候補の単語列、各単語の品詞情報等の素性を元に、正例（そのクラスタに属すキーワードおよび発話表現）と負例（そのクラスタに属さないキーワードおよび発話表現、さらに非キーワード、ノイズ等）をもっとも精度よく識別できるよう学習される。
キーワード区間切り出し部３０１は、入力音声からキーワードクラスタ抽出モデル３０３が要求する各種素性を算出する。算出した各種素性をキーワードクラスタ抽出モデル３０３に入力することで、ある音声区間が、キーワードクラスタ抽出モデル３０３によって表されるキーワードの何れかであるかを示す尤度が求められる。複数のキーワードクラスタ抽出モデル３０３のうち、もっとも高い尤度を返したキーワードクラスタ抽出モデル３０３が示すクラスタ（最尤クラスタ）について、尤度が所定の閾値を越えていれば、キーワード区間切り出し部３０１は、その音声区間ではそのクラスタに属すキーワードのいずれかが発話されたと判断する。
キーワード認識部３０２は、キーワード区間切り出し部３０１が何れかのキーワードクラスタに対応する音声区間を検出した際に起動される。キーワード認識部３０２は、切り出された音声区間に対する最尤クラスタのキーワードクラスタ認識モデル３０４を用いて、音声区間について音声認識処理を行う。その結果、もっとも高い尤度を返したキーワードについて、その尤度が所定の閾値を超えていれば、キーワード認識部３０２は、その音声区間でそのキーワード（またはその発話表現）が発話されたと判断する。
キーワードクラスタ認識モデル３０４は、あるキーワードクラスタに対応するある音声区間について、そのキーワードクラスタに包含されるいずれのキーワードまたはその発話表現であるかをそれぞれへの尤度として返す。実装としては、非特許文献１に記載されているＨＭＭキーワードネットワークや、重み付き木構造辞書、文字Ｎ−ｇｒａｍなどが利用できる。ここでは、音節ＨＭＭによるキーワードネットワークを用いる場合について説明する。
次に、キーワードモデル学習部３１０の動作について説明する。まず、キーワードモデル学習部３１０に、学習データ対が入力される。学習データ対は、商品情報検索システム３２０に過去に入力された検索クエリ（検索ワード）と、検索クエリが発行された際の利用者の発話音声と、発話音声中で、検索クエリに対応すると思われる発声が行われた相対時刻情報とを含む。
例えば、利用者が「お問い合わせ商品の商品番号を頂けますか。はい。Ａの…３０…Ｄ？あ、Ａの３０Ｃですね」と発話した直後に検索クエリ「Ａ−３０Ｃ」をキータイプし、商品情報検索システム３２０に問い合わせを発行したとする。このとき、検索クエリ「Ａ−３０Ｃ」と、この発話全体の音声と、「Ａの３０Ｃ」と発話した相対時刻情報とを含む学習データ対が、キーワードモデル学習部３１０への入力となる。このとき、すでにキーワードモデルが十分に学習されていれば、検索クエリ「Ａ−３０Ｃ」から考えうる発話表現のいずれかが発話音声の中に存在するかチェックし、見つかれば（このケースでは「Ａの３０Ｃ」が見つかる筈であるが）、この発話区間の時刻情報と、発話全体と、検索クエリ「Ａ−３０Ｃ」を学習データ対として自動的に見つけ出せる。キーワードモデルの学習が不十分な場合は、利用者が発話時に手動で関連付けをする（例えば、発話内容が順次音声認識されて画面に出ている場合は、その該当音声部位を選択するなど）か、あるいは事後に利用者または第三者が明示的に関連付けすることによって、学習データ対を準備する。
キーワードモデル学習部３１０は、まず、新たな学習データが、既知のいずれかのキーワードクラスタに属すかどうか判断する。学習データとして与えられた検索クエリが既知の何れかのキーワードクラスタに属していれば、以降、キーワードモデル学習部３１０は、そのクラスタに対する学習を行う。いずれのクラスタにも属していない場合は、キーワードモデル学習部３１０は、新たなクラスタを作成する。
次に、キーワードモデル学習部３１０は、キーワードクラスタ抽出モデル３０３に対する学習を行う。キーワードモデル学習部３１０は、選択した（あるいは作成した）クラスタに対応するキーワードクラスタ抽出モデル３０３に対して、発話音声のうち検索クエリに対応すると思われる発声が行われた時刻の音声について、必要な素性情報を抽出する。これを正例として、このキーワードクラスタ抽出モデル用の学習データに追加する。さらに、その発話以外の時刻の音声についても同様に必要な素性情報を抽出し、これを負例として学習データに追加する。キーワードモデル学習部３１０は、追加された学習データを用いてキーワードクラスタ抽出モデル３０３を学習する。学習アルゴリズムは、採用したモデル（ＳＶＭ、ＣＲＦ等）に応じたものを適宜利用する。
次に、キーワードモデル学習部３１０は、キーワードクラスタ認識モデル３０４に対する学習を行う。キーワードモデル学習部３１０は、選択した（あるいは作成した）クラスタに対応するキーワードクラスタ認識モデル３０４に対して、発話音声のうち検索クエリに対応すると思われる発声が行われた時刻の音声について、必要な素性情報を抽出する。キーワードモデル学習部３１０は、音節ＨＭＭを用いる場合は、音声から抽出した音響特徴量が所与の音響モデルに対してもっとも高い尤度を示すような音節列を求める。
キーワードモデル学習部３１０は、抽出した素性情報を学習データとして、キーワードに対するＨＭＭを生成する。さらに、キーワードモデル学習部３１０は、検索クエリ文字列を音節列に変換し、こちらのＨＭＭも合わせて作成する。こうして生成した二つのＨＭＭは、どちらも検索クエリ（キーワード）に対する尤度を求めるのに用いられる。
なお、キーワードクラスタ認識モデル３０４としてＳＶＭ等の識別モデルを利用することも、キーワードクラスタ抽出モデル３０３としてＮ−ｇｒａｍやキーワードネットワークを利用することも、どちらも当然可能である。
キーワードモデル学習部３１０は、さらに、クラスタの統合が必要か判断する。これはキーワードクラスタ抽出モデル３０３について、重複がどれだけ見られるかで判断する。例えば、キーワードモデル学習部３１０は、各クラスタのキーワードクラスタ抽出モデル３０３の学習データの正例について、他のクラスタの正例と一致するものの割合を数える。これが所定の閾値以上であれば、これらのクラスタは統合が必要と判断する。
【産業上の利用可能性】
【０００９】
本発明によれば、音声入力Ｉ／Ｆを備えた情報検索装置や、音声から必要な情報を抽出して所定のフォームに埋めるような情報記録装置、所定の内容に関する音声を検索するメディア検索装置、またボイスコマンドによって動作する情報家電装置やソフトウェア、といった用途に適用できる。
尚、この出願は２００７年６月６日に出願された日本出願特願第２００７−１５００８２号を基礎とする優先権を主張し、その開示のすべてをここに取り込む。
【図１】
2008150003.tif 000003
【図２】
2008150003.tif 000004
【図３】
2008150003.tif 000005
【図４】
2008150003.tif 000006
【図５】
2008150003.tif 000007
【図６】
2008150003.tif 000008
【図７】
2008150003.tif 000009
【国際調査報告】
2008150003.tif 000010
2008150003.tif 000011
2008150003.tif 000012
2008150003.tif 000013