(57)【要約】【課題】モデル更新の基礎となるデータに対する処理を適切に行う。【解決手段】  クライアント装置１１０では、サーバ装置１２０より音声認識の結果を文字列として受信し、この文字列に対してユーザが操作を行い、この操作を検出し、当該検出した操作の内容をサーバ装置１２０に通知する。サーバ装置１２０では、音声認識を行うためのモデルを格納し、クライアント装置１１０より音声を受信し、この音声に対する音声認識を行い、音声認識の結果を保存するとともにクライアント装置１１０に送信する。また、サーバ装置１２０では、クライアント装置１１０より認識結果に対するフィードバックデータを受信し、保存した音声認識結果とフィードバックデータとを照合し、当該照合の結果に基づき、音声認識結果中の正解部分を抽出する。最後に、当該抽出した正解部分のデータを利用し、モデルを更新する。【選択図】図１
2010048890.tif 000002
【特許請求の範囲】
【請求項１】
音声認識を行うサーバ装置より前記音声認識の結果を文字列として受信する認識結果受信手段と、
前記文字列に対してユーザが操作を行うための操作手段と、
前記操作を検出する操作検出手段と、
当該検出した操作の内容を前記サーバ装置に通知する通知手段と、
を備えることを特徴とするクライアント装置。
【請求項２】
音声を入力する音声入力手段と、
前記サーバ装置に前記音声を送信する音声送信手段と、
を更に備えることを特徴とする請求項１に記載のクライアント装置。
【請求項３】
前記操作検出手段は、前記文字列に対した前記ユーザの操作箇所を検出し、
前記通知手段は、当該検出した前記操作箇所を前記サーバ装置に通知する、
ことを特徴とする請求項１または請求項２に記載のクライアント装置。
【請求項４】
前記操作検出手段は、前記ユーザの操作がなかった場合に、その旨を検出し、
前記通知手段は、前記ユーザの操作がなかった旨を前記サーバ装置に通知する、
ことを特徴とする請求項１〜３の何れか１項に記載のクライアント装置。
【請求項５】
前記操作手段は、前記文字列に対して前記ユーザが訂正を行うためのものであり、
前記訂正後の文字列と認識結果受信手段が受信した当初の文字列とを比較する比較手段を更に備え、
前記操作検出手段は、前記比較手段の前記比較の結果に基づき、前記操作箇所を検出する、
ことを特徴とする請求項１〜４の何れか１項に記載のクライアント装置。
【請求項６】
前記操作手段は、前記文字列に対して前記ユーザが訂正を行うためのものであり、
前記訂正後の文字列の内容を判断する判断手段を更に備え、
前記操作検出手段は、前記判断手段の前記判断の結果に基づき、前記操作箇所を検出する、
ことを特徴とする請求項１〜４の何れか１項に記載のクライアント装置。
【請求項７】
前記ユーザが前記操作のために押すキーの種類を判定し、且つ前記キーを押した回数をカウントするキー関連手段を更に備え、
前記操作検出手段は、前記キー関連手段の前記判定および前記カウントの結果に基づき、前記操作箇所の開始箇所を検出する、
ことを特徴とする請求項１〜６の何れか１項に記載のクライアント装置。
【請求項８】
前記キー関連手段は、前記ユーザが前記操作のために押したキーが削除キーであることを検出し、
前記操作検出手段は、前記キー関連手段の前記削除キーの検出の結果に基づき、前記操作箇所の終了箇所を検出する、
ことを特徴とする請求項７に記載のクライアント装置。
【請求項９】
前記通知手段は、前記ユーザの前記操作の内容に対する読み、品詞、文字数の少なくとも一つ以上を通知する、
ことを特徴とする請求項１〜８の何れか１項に記載のクライアント装置。
【請求項１０】
前記操作検出手段は、前記操作箇所の前記開始箇所に基づき、前記操作箇所の終了箇所を検出する、
ことを特徴とする請求項７に記載のクライアント装置。
【請求項１１】
認識結果受信手段が、音声認識を行うサーバ装置より前記音声認識の結果を文字列として受信する認識結果受信ステップと、
操作手段を用いて、前記文字列に対してユーザが操作を行う操作ステップと、
操作検出手段が、前記操作を検出する操作検出ステップと、
通知手段が、当該検出した操作の内容を前記サーバ装置に通知する通知ステップと、
を備えることを特徴とする認識結果フィードバック方法。
【請求項１２】
認識結果受信手段が、音声認識を行うサーバ装置より前記音声認識の結果を文字列として受信する認識結果受信ステップと、
操作手段を用いて、前記文字列に対してユーザが操作を行う操作ステップと、
操作検出手段が、前記操作を検出する操作検出ステップと、
通知手段が、当該検出した操作の内容を前記サーバ装置に通知する通知ステップと、
をコンピュータに実行させることを特徴とする認識結果フィードバックプログラム。
【請求項１３】
音声認識を行うためのモデルを格納する格納手段と、
クライアント装置より音声を受信する音声受信手段と、
前記モデルを用いて前記音声に対する前記音声認識を行う音声認識手段と、
前記音声認識の結果を保存する認識結果保存手段と、
前記結果を前記クライアント装置に送信する認識結果送信手段と、
前記クライアント装置より前記認識結果に対するフィードバックデータを受信するフィードバック受信手段と、
前記認識結果保存手段に保存された音声認識結果と、前記フィードバック受信手段が受信したフィードバックデータを照合し、当該照合の結果に基づき、前記認識結果保存手段に保存された音声認識結果中の正解部分を抽出する抽出手段と、
前記正解部分のデータを利用し、前記モデルを更新する更新手段と、
を備えることを特徴とするサーバ装置。
【請求項１４】
前記フィードバックデータは、前記認識結果に対する認識誤り区間の時間情報である、
ことを特徴とする請求項１３に記載のサーバ装置。
【請求項１５】
前記抽出手段は、前記認識誤り区間の時間情報と、前記認識結果保存手段に保存された音声認識結果における各文字の時間情報とを照合し、当該照合の結果に基づき、前記正解部分を抽出する、
ことを特徴とする請求項１４に記載のサーバ装置。
【請求項１６】
前記フィードバックデータは、前記認識結果に対する認識誤り区間の時間情報、および訂正後の文字列である、
ことを特徴とする請求項１３に記載のサーバ装置。
【請求項１７】
前記抽出手段は、前記認識誤り区間の時間情報と、前記認識結果保存手段に保存された音声認識結果における各文字の時間情報とを照合し、当該照合の結果に基づき、前記正解部分を抽出し、
前記更新手段は、前記正解部分のデータ、および前記訂正後の文字列を利用し、前記モデルを更新する、
ことを特徴とする請求項１６に記載のサーバ装置。
【請求項１８】
前記訂正後の文字列と、前記ユーザの元の発生内容との間の一致度を計算する一致度計算手段を更に備え、
前記一致度計算手段は、前記一致度が所定の閾値以下の場合に、前記更新手段に前記訂正後の文字列を前記モデルの更新に利用させない、
ことを特徴とする請求項１７に記載のサーバ装置。
【請求項１９】
前記正解部分および前記訂正後の文字列について、各文字に対する時間情報を抽出する時間情報抽出手段を更に備え、
前記更新手段は、前記時間情報を利用し、前記モデルを更新する、
ことを特徴とする請求項１７に記載のサーバ装置。
【請求項２０】
前記格納手段には、前記音声認識を行うための単語辞書が更に格納されており、
前記訂正後の文字列のうち、前記単語辞書に含まれていないものを新単語として抽出し、前記新単語を前記単語辞書に追加する辞書更新手段を更に備える、
ことを特徴とする請求項１３〜１９の何れか１項に記載のサーバ装置。
【請求項２１】
前記ユーザに対する情報が格納されたユーザデータベースと、
前記正解部分および前記訂正後の文字列に含まれた単語を用いて前記ユーザデータベースを検索するユーザデータベース検索手段と、を更に備える
ことを特徴とする請求項１３〜２０の何れか１項に記載のサーバ装置。
【請求項２２】
前記正解部分に含まれた単語、および前記訂正後の文字列に含まれた単語にそれぞれ個別の重要度を付与し、当該重要度付きの単語を用いて前記ユーザデータベースを更新するユーザデータベース更新手段を更に備える、
ことを特徴とする請求項２１に記載のサーバ装置。
【請求項２３】
前記ユーザデータベースには、前記ユーザの利用時間、活動範囲、年齢、性別のうち少なくても一つ以上を表す情報が当該ユーザと関連付けられて格納されている、
ことを特徴とする請求項２１または請求項２２に記載のサーバ装置。
【請求項２４】
格納手段に、音声認識を行うためのモデルが格納されており、
音声受信手段が、クライアント装置より音声を受信する音声受信ステップと、
音声認識手段が、前記モデルを用いて前記音声に対する前記音声認識を行う音声認識ステップと、
認識結果保存手段が、前記音声認識の結果を保存する認識結果保存ステップと、
認識結果送信手段が、前記結果を前記クライアント装置に送信する認識結果送信ステップと、
フィードバック受信手段が、前記クライアント装置より前記認識結果に対するフィードバックデータを受信するフィードバック受信ステップと、
抽出手段が、前記認識結果保存手段に保存された音声認識結果と、前記フィードバック受信手段が受信したフィードバックデータを照合し、当該照合の結果に基づき、前記認識結果保存手段に保存された音声認識結果中の正解部分を抽出する抽出ステップと、
更新手段が、前記正解部分のデータを利用し、前記モデルを更新する更新ステップと、
を備えることを特徴とする音声認識のモデル更新方法。
【請求項２５】
格納手段に、音声認識を行うためのモデルが格納されており、
音声受信手段が、クライアント装置より音声を受信する音声受信ステップと、
音声認識手段が、前記モデルを用いて前記音声に対する前記音声認識を行う音声認識ステップと、
認識結果保存手段が、前記音声認識の結果を保存する認識結果保存ステップと、
認識結果送信手段が、前記結果を前記クライアント装置に送信する認識結果送信ステップと、
フィードバック受信手段が、前記クライアント装置より前記認識結果に対するフィードバックデータを受信するフィードバック受信ステップと、
抽出手段が、前記認識結果保存手段に保存された音声認識結果と、前記フィードバック受信手段が受信したフィードバックデータを照合し、当該照合の結果に基づき、前記認識結果保存手段に保存された音声認識結果中の正解部分を抽出する抽出ステップと、
更新手段が、前記正解部分のデータを利用し、前記モデルを更新する更新ステップと、
をコンピュータに実行させることを特徴とする音声認識のモデル更新プログラム。
【請求項２６】
請求項１に記載のクライアント装置および請求項１３に記載のサーバ装置を備えることを特徴とする音声認識システム。
【請求項２７】
請求項１１に記載の認識結果フィードバック方法および請求項２４に記載の音声認識のモデル更新方法を備えることを特徴とする音声認識方法。
【請求項２８】
請求項１２に記載の認識結果フィードバックプログラムおよび請求項２５に記載の音声認識のモデル更新プログラムを備えることを特徴とする音声認識プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クライアント装置、認識結果フィードバック方法、認識結果フィードバックプログラム、サーバ装置、音声認識のモデル更新方法、音声認識のモデル更新プログラム、音声認識システム、音声認識方法、音声認識プログラムに関するものである。
【背景技術】
【０００２】
従来、例えば特許文献１に記載されているように、携帯端末が入力した音声データをサーバに出力すると、サーバがその音声データに対する音声認識を行い、最後に携帯端末が当該音声認識の結果を取得するという技術が知られている。
【０００３】
また、例えば特許文献２に記載されているように、音声データとその認識結果を利用し、音声認識のためにサーバに備えられている音響モデルや言語モデルを更新するという技術が知られている。
【特許文献１】特開２００３−２９５８９３号公報
【特許文献２】特開２００８−１５２０９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、音響モデルや言語モデルの更新の際に用いられるデータおよびそれに対する処理の仕方により、当該更新の精度は大きく異なるため、昨今、モデル更新の基礎となるデータに対する重要性が高まりつつある。
【０００５】
そこで、本発明は上記に鑑みてなされたもので、モデル更新の基礎となるデータに対する処理を適切に行うことが可能なクライアント装置、認識結果フィードバック方法、認識結果フィードバックプログラム、サーバ装置、音声認識のモデル更新方法、音声認識のモデル更新プログラム、音声認識システム、音声認識方法、音声認識プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明のクライアント装置は、音声認識を行うサーバ装置より前記音声認識の結果を文字列として受信する認識結果受信手段と、前記文字列に対してユーザが操作を行うための操作手段と、前記操作を検出する操作検出手段と、当該検出した操作の内容を前記サーバ装置に通知する通知手段と、を備えることを特徴とする。
【０００７】
また、本発明の認識結果フィードバック方法は、認識結果受信手段が、音声認識を行うサーバ装置より前記音声認識の結果を文字列として受信する認識結果受信ステップと、操作手段を用いて、前記文字列に対してユーザが操作を行う操作ステップと、操作検出手段が、前記操作を検出する操作検出ステップと、通知手段が、当該検出した操作の内容を前記サーバ装置に通知する通知ステップと、を備えることを特徴とする。
【０００８】
また、本発明の認識結果フィードバックプログラムは、認識結果受信手段が、音声認識を行うサーバ装置より前記音声認識の結果を文字列として受信する認識結果受信ステップと、操作手段を用いて、前記文字列に対してユーザが操作を行う操作ステップと、操作検出手段が、前記操作を検出する操作検出ステップと、通知手段が、当該検出した操作の内容を前記サーバ装置に通知する通知ステップと、をコンピュータに実行させることを特徴とする。
【０００９】
また、本発明のサーバ装置は、音声認識を行うためのモデルを格納する格納手段と、クライアント装置より音声を受信する音声受信手段と、前記モデルを用いて前記音声に対する前記音声認識を行う音声認識手段と、前記音声認識の結果を保存する認識結果保存手段と、前記結果を前記クライアント装置に送信する認識結果送信手段と、前記クライアント装置より前記認識結果に対するフィードバックデータを受信するフィードバック受信手段と、前記認識結果保存手段に保存された音声認識結果と、前記フィードバック受信手段が受信したフィードバックデータを照合し、当該照合の結果に基づき、前記認識結果保存手段に保存された音声認識結果中の正解部分を抽出する抽出手段と、前記正解部分のデータを利用し、前記モデルを更新する更新手段と、を備えることを特徴とする。
【００１０】
また、本発明の音声認識のモデル更新方法は、格納手段に、音声認識を行うためのモデルが格納されており、音声受信手段が、クライアント装置より音声を受信する音声受信ステップと、音声認識手段が、前記モデルを用いて前記音声に対する前記音声認識を行う音声認識ステップと、認識結果保存手段が、前記音声認識の結果を保存する認識結果保存ステップと、認識結果送信手段が、前記結果を前記クライアント装置に送信する認識結果送信ステップと、フィードバック受信手段が、前記クライアント装置より前記認識結果に対するフィードバックデータを受信するフィードバック受信ステップと、抽出手段が、前記認識結果保存手段に保存された音声認識結果と、前記フィードバック受信手段が受信したフィードバックデータを照合し、当該照合の結果に基づき、前記認識結果保存手段に保存された音声認識結果中の正解部分を抽出する抽出ステップと、更新手段が、前記正解部分のデータを利用し、前記モデルを更新する更新ステップと、を備えることを特徴とする。
【００１１】
また、本発明の音声認識のモデル更新プログラムは、格納手段に、音声認識を行うためのモデルが格納されており、音声受信手段が、クライアント装置より音声を受信する音声受信ステップと、音声認識手段が、前記モデルを用いて前記音声に対する前記音声認識を行う音声認識ステップと、認識結果保存手段が、前記音声認識の結果を保存する認識結果保存ステップと、認識結果送信手段が、前記結果を前記クライアント装置に送信する認識結果送信ステップと、フィードバック受信手段が、前記クライアント装置より前記認識結果に対するフィードバックデータを受信するフィードバック受信ステップと、抽出手段が、前記認識結果保存手段に保存された音声認識結果と、前記フィードバック受信手段が受信したフィードバックデータを照合し、当該照合の結果に基づき、前記認識結果保存手段に保存された音声認識結果中の正解部分を抽出する抽出ステップと、更新手段が、前記正解部分のデータを利用し、前記モデルを更新する更新ステップと、をコンピュータに実行させることを特徴とする。
【００１２】
また、本発明の音声認識システムは、上記のクライアント装置およびサーバ装置を備えることを特徴とする。
【００１３】
また、本発明の音声認識方法は、上記の認識結果フィードバック方法および音声認識のモデル更新方法を備えることを特徴とする。
【００１４】
また、本発明の音声認識プログラムは、上記の認識結果フィードバックプログラムおよび音声認識のモデル更新プログラムを備えることを特徴とする。
【００１５】
このような本発明のクライアント装置、認識結果フィードバック方法、認識結果フィードバックプログラム、サーバ装置、音声認識のモデル更新方法、音声認識のモデル更新プログラム、音声認識システム、音声認識方法、音声認識プログラムによれば、音声認識を行うサーバ装置からの音声認識結果に対してユーザが操作を行うことができる。そのため、ユーザは当該音声認識結果に対して誤認識された部分を指摘したり、または正しく直すことが可能となる。これらのユーザの操作をサーバ装置にフィードバックする。そして、サーバ装置では、ユーザからのフィードバックを参照して、誤認識された部分を除いてからのデータに基づいてモデル更新を行ったり、または正しく直した部分を更に追加したデータに基づいてモデル更新を行う。このため、モデル更新の精度を高めることができる。このように高い精度で更新された音響モデルや言語モデルを用いれば、より高い性能で音声認識を行うことができる。誤り区間の音声に対して再度認識を行う場合にも、次回入力された音声データに対して初めて認識を行う場合でも、上記高い精度で更新した音響モデルや言語モデルを利用することができる。
【００１６】
また、本発明のクライアント装置において、音声を入力する音声入力手段と、前記サーバ装置に前記音声を送信する音声送信手段と、を更に備えることが好ましい。
【００１７】
また、本発明のクライアント装置において、前記操作検出手段は、前記文字列に対した前記ユーザの操作箇所を検出し、前記通知手段は、当該検出した前記操作箇所を前記サーバ装置に通知する、ことが好ましい。
【００１８】
また、本発明のクライアント装置において、前記操作検出手段は、前記ユーザの操作がなかった場合に、その旨を検出し、前記通知手段は、前記ユーザの操作がなかった旨を前記サーバ装置に通知する、ことが好ましい。
【００１９】
また、本発明のクライアント装置において、前記操作手段は、前記文字列に対して前記ユーザが訂正を行うためのものであり、前記訂正後の文字列と認識結果受信手段が受信した当初の文字列とを比較する比較手段を更に備え、前記操作検出手段は、前記比較手段の前記比較の結果に基づき、前記操作箇所を検出する、ことが好ましい。
【００２０】
また、本発明のクライアント装置において、前記操作手段は、前記文字列に対して前記ユーザが訂正を行うためのものであり、前記訂正後の文字列の内容を判断する判断手段を更に備え、前記操作検出手段は、前記判断手段の前記判断の結果に基づき、前記操作箇所を検出する、ことが好ましい。
【００２１】
また、本発明のクライアント装置において、前記ユーザが前記操作のために押すキーの種類を判定し、且つ前記キーを押した回数をカウントするキー関連手段を更に備え、前記操作検出手段は、前記キー関連手段の前記判定および前記カウントの結果に基づき、前記操作箇所の開始箇所を検出する、ことが好ましい。
【００２２】
また、本発明のクライアント装置において、前記キー関連手段は、前記ユーザが前記操作のために押したキーが削除キーであることを検出し、前記操作検出手段は、前記キー関連手段の前記削除キーの検出の結果に基づき、前記操作箇所の終了箇所を検出する、ことが好ましい。
【００２３】
また、本発明のクライアント装置において、前記通知手段は、前記ユーザの前記操作の内容に対する読み、品詞、文字数の少なくとも一つ以上を通知する、ことが好ましい。
【００２４】
また、本発明のクライアント装置において、前記操作検出手段は、前記操作箇所の前記開始箇所に基づき、前記操作箇所の終了箇所を検出する、ことが好ましい。
【００２５】
また、本発明のサーバ装置において、前記フィードバックデータは、前記認識結果に対する認識誤り区間の時間情報である、ことが好ましい。
【００２６】
また、本発明のサーバ装置において、前記抽出手段は、前記認識誤り区間の時間情報と、前記認識結果保存手段に保存された音声認識結果における各文字の時間情報とを照合し、当該照合の結果に基づき、前記正解部分を抽出する、ことが好ましい。
【００２７】
また、本発明のサーバ装置において、前記フィードバックデータは、前記認識結果に対する認識誤り区間の時間情報、および訂正後の文字列である、ことが好ましい。
【００２８】
また、本発明のサーバ装置において、前記抽出手段は、前記認識誤り区間の時間情報と、前記認識結果保存手段に保存された音声認識結果における各文字の時間情報とを照合し、当該照合の結果に基づき、前記正解部分を抽出し、前記更新手段は、前記正解部分のデータ、および前記訂正後の文字列を利用し、前記モデルを更新する、ことが好ましい。
【００２９】
また、本発明のサーバ装置において、前記訂正後の文字列と、前記ユーザの元の発生内容との間の一致度を計算する一致度計算手段を更に備え、前記一致度計算手段は、前記一致度が所定の閾値以下の場合に、前記更新手段に前記訂正後の文字列を前記モデルの更新に利用させない、ことが好ましい。
【００３０】
また、本発明のサーバ装置において、前記正解部分および前記訂正後の文字列について、各文字に対する時間情報を抽出する時間情報抽出手段を更に備え、前記更新手段は、前記時間情報を利用し、前記モデルを更新する、ことが好ましい。
【００３１】
また、本発明のサーバ装置において、前記格納手段には、前記音声認識を行うための単語辞書が更に格納されており、前記訂正後の文字列のうち、前記単語辞書に含まれていないものを新単語として抽出し、前記新単語を前記単語辞書に追加する辞書更新手段を更に備える、ことが好ましい。
【００３２】
また、本発明のサーバ装置において、前記ユーザに対する情報が格納されたユーザデータベースと、前記正解部分および前記訂正後の文字列に含まれた単語を用いて前記ユーザデータベースを検索するユーザデータベース検索手段と、を更に備えることが好ましい。
【００３３】
また、本発明のサーバ装置において、前記正解部分に含まれた単語、および前記訂正後の文字列に含まれた単語にそれぞれ個別の重要度を付与し、当該重要度付きの単語を用いて前記ユーザデータベースを更新するユーザデータベース更新手段を更に備える、ことが好ましい。
【００３４】
また、本発明のサーバ装置において、前記ユーザデータベースには、前記ユーザの利用時間、活動範囲、年齢、性別のうち少なくても一つ以上を表す情報が当該ユーザと関連付けられて格納されている、ことが好ましい。
【発明の効果】
【００３５】
本発明によれば、モデル更新の基礎となるデータに対する処理を適切に行うことが可能なクライアント装置、認識結果フィードバック方法、認識結果フィードバックプログラム、サーバ装置、音声認識のモデル更新方法、音声認識のモデル更新プログラム、音声認識システム、音声認識方法、音声認識プログラムを提供することができる。
【発明を実施するための最良の形態】
【００３６】
以下、添付図面を参照して本発明にかかるクライアント装置、認識結果フィードバック方法、認識結果フィードバックプログラム、サーバ装置、音声認識のモデル更新方法、音声認識のモデル更新プログラム、音声認識システム、音声認識方法、音声認識プログラムの好適な実施形態を詳細に説明する。なお、図面の説明において同一の要素には同一の符号を付し、重複する説明を省略する。
【００３７】
＜第１実施形態＞
（音声認識システム１の全体構成）
まず、本発明の実施形態に係る音声認識システム１の構成について、図１を参照しながら説明する。図１は、本実施形態のクライアント装置１１０、およびクライアント装置１１０から送信された音声を認識し、その結果をクライアント装置１１０に返信するサーバ装置１２０を備える、音声認識システム１の構成概要図である。
【００３８】
クライアント装置１１０は、例えば携帯電話などの携帯端末であって、ユーザが発声した音声を入力し、その音声特徴量データ１３０を無線通信ネットワーク１００を用いてサーバ装置１２０に送信し、サーバ装置１２０からの返信である音声認識結果１４０を無線通信ネットワーク１００を用いて受信することができる。クライアント装置１１０は、ユーザの操作情報１５０（操作の内容）を無線通信ネットワーク１００を用いてサーバ装置１２０に送信することができる。なお、ユーザ操作情報１５０をクライアント装置１１０内部の所定の処理部に通知してもよい。
【００３９】
サーバ装置１２０は、音声認識を行う手段を備え、入力された音声を、音響モデル、言語モデルなどのデータベースを用いて音声認識を行い、その認識結果を無線通信ネットワーク１００を用いてクライアント装置１１０に返信する。
【００４０】
（クライアント装置１１０の構成）
クライアント装置１１０について詳細に説明する。図２は、クライアント装置１１０のハードウェア構成図である。図２に示すように、クライアント装置１１０は、物理的には、ＣＰＵ１１、主記憶装置であるＲＯＭ１２及びＲＡＭ１３、操作ボタンなどの入力デバイス１４、ＬＣＤや有機ＥＬディスプレイなどの出力デバイス１５、サーバ装置１２０との間でデータの送受信を行う通信モジュール１６、メモリディバイス等の補助記憶装置１７を備えて構成される。後述するクライアント装置１１０の各機能は、ＣＰＵ１１、ＲＯＭ１２、ＲＡＭ１３等のハードウェア上に所定のソフトウェアを読み込ませることにより、ＣＰＵ１１の制御の元で入力デバイス１４、出力デバイス１５、通信モジュール１６を動作させると共に、主記憶装置１２，１３や補助記憶装置１７におけるデータの読み出し及び書き込みを行うことで実現される。
【００４１】
図３は、クライアント装置１１０の機能を示すブロック図である。図３に示すように、クライアント装置１１０は、機能的には、音声処理部２１０（音声入力手段）、音声データ送信部２２０（音声送信手段）、音声データ保存部２３０、認識結果受信部２４０（認識結果受信手段）、認識結果保存部２５０、ユーザ操作部２６０（操作手段）、比較部２７０（操作検出手段、比較手段、判断手段）、訂正内容通知部２８０（通知手段）を含んで構成されている。以下では、図４を更に参照しながら、クライアント装置１１０の機能および動作を説明する。図４は、クライアント装置１１０の機能および動作を説明するためのフローチャートである。また、以下の説明においては、説明の便宜上、ユーザが「横浜でスパゲティを食べたい」と音声を発声したことを前提とする。
【００４２】
音声処理部２１０は、マイク（図示せず）を通じてユーザの音声を入力し、音響特徴量データを算出する（ステップ６１０）。例えば、音声処理部２１０は、ＭＦＣＣ（Mel Frequency Cepstrum Coefficient）のような周波数で表される音響特徴を示す特徴量データを算出する。音声データ保存部２３０に音声処理部２１０において算出された特徴量データを一時的に記憶する（ステップ６２０）。音声データ送信部２２０においては、算出された特徴量データをサーバ装置１２０に送信する（ステップ６３０）。音声データ送信部２２０は、ＨＴＴＰ（Hyper Text TransferProtocol）、ＭＲＣＰ（Media Resource Control Protocol）、ＳＩＰ（Session Initiation Protocol）などを用いて送信処理を行う。また、サーバ装置１２０では、これらプロトコルを用いて受信処理を行い、特徴量データを用いて音声認識処理を行い、また返信処理を行う。
【００４３】
認識結果受信部２４０は、サーバ装置１２０から返信された音声認識結果を受信する（ステップ６４０）。この音声認識結果には、テキストデータ、時刻情報などが含まれており、時刻情報はテキストデータの一認識単位ごとの経過時刻を示す情報である。認識結果保存部２５０に認識結果を保存する（６５０）。例えば、文字単位の例の認識結果として、図５に示される情報が受信される。右の列に認識結果（文字単位）を示し、左の二列に各文字の開始時刻と終了時刻を示す。開始時刻および終了時刻の単位はｍｓｅｃである。図５に示す結果の例には認識誤りが一箇所ある。つまり、発声“スパゲティを”のところが”すっぱいもの“に誤認識されている。
【００４４】
図３，４に戻り、ユーザ操作部２６０は認識結果に対してユーザが操作を行うためのものである。ユーザ操作部２６０では認識結果保存部２５０にある認識結果の文字列に対し訂正処理を行う（６６０）。例えば図５に示す認識結果に対し、ユーザが誤りの”すっぱいもの“を削除し、正しい内容“スパゲティを”を例えばキーボードを用いてキーで入力する。図６に訂正後の文字列を示す。
【００４５】
図３，４に戻り、比較部２７０は認識結果（認識結果受信部２４０が受信した当初の文字列）と操作結果（訂正後の文字列）の比較を行うことにより、つまり認識結果の内容と操作結果の内容とを照合して判断することにより、ユーザの操作を検出するものである。例で説明すると、図５の認識結果の文字列と図６に訂正後の文字列を比較する（６７０）。その中の違いの部分を見つける。この例で文字列を比較することにより、“横浜で”と“食べたい”の部分は認識の正解部分であることを判明する。それ以外のところは文字列が違うため認識誤りで、ユーザが訂正を行った箇所（操作箇所）であることが分かる。比較部２７０は、この操作箇所を検出する。
【００４６】
図７に比較部２７０が行った比較の結果を示す。図７には、図５の元の文字列の４番目（図７での文字番号：４）から９番目（図７での文字番号：９）までの間に対しユーザが訂正したことが示されている。また、図７には、ユーザの訂正箇所と対応する時刻情報（３００ｍｓから８００ｍｓ）も更に示されている。
【００４７】
なお、時刻情報は図５に示すようにサーバ装置１２０からの情報を使ってもよいが、サーバ装置１２０から時刻情報を受信しない場合は、音声データ保存部２３０に保存されている音声データを利用し、クライアント装置１１０側で計算することもできる。より具体的には、入力されたテキストデータと、音声データ保存部２３０に記憶されている特徴量データとを比較することによって、テキストデータの文字を周波数データに変換した場合に、特徴量データのどの部分まで一致するかを判断することによって、文字における経過時間を算出することができる。
【００４８】
訂正内容通知部２８０はユーザの訂正内容（操作箇所、訂正箇所）を他の処理に通知する処理を行う（６８０）。他の処理は同じ装置内にあってもよいし、他の装置にあってもよい。他の装置にある場合は無線通信ネットワーク１００経由の通知機能を利用し、訂正内容を通知する。通知内容は訂正後の文字列と時刻情報の両方でもいいし、または時刻情報だけでもよい。また時刻情報に関して、開始時刻、終了時刻のどっちか一つだけを通知してもいい。また、上記の例では誤り箇所が一つだけある場合を説明したが、複数の誤り箇所がある場合は複数個所を検出し、複数個所の情報を通知する。
【００４９】
また、通知する内容は時刻情報以外に、誤り箇所と対応する文字の番号そのものを通知してもよい。図７に示した上記の例であれば、文字番号４番（誤りの開始）と９番（誤りの終了）を通知する。また、誤り箇所の始点と間違いの数を通知してもよい。上記の例であれば、文字番号４番（誤りの開始）と５番（間違いの数=誤りの終了箇所-誤りの開始箇所）を通知する。
【００５０】
また、上記の例では訂正内容をキーで入力すると説明したが、他の訂正方法（例えば、ペン入力、認識結果のＮ−ＢＥＳＴ選択、再認識による訂正などの方法など）でもよい。
【００５１】
また、認識結果のＮ−ＢＥＳＴ選択の場合はユーザが選択した候補の番号を通知してもよい。例えば、認識結果の上位Ｎ=４個の候補をサーバ装置１２０から次のように受信したとする。
１．横浜ですっぱいもの食べたい
２．横浜でスパゲティを食べたい
３．横須賀でスパゲティを食べたい
４．横須賀ですっぱいもの食べたい
この中の２番目が正解であるため、ユーザが２番目を選択すると、訂正内容通知部２８０は番号「２」を通知する。
【００５２】
また、音声認識に誤りない、或いは訂正必要ない場合は、訂正内容通知部２８０がこの趣旨を反映する情報を通知してもよい。この場合には、比較部２７０が、認識結果と操作結果との比較において、相違点がないこと、つまりユーザの操作がなかったことを検出する。
【００５３】
更に、サーバ装置１２０から文字列と時刻情報以外に他の情報例えば複数の認識結果候補のＮ−ｂｅｓｔ文字列や、各単語の品詞情報、読み、振り仮名、文字数、単語数などを受信し、それらの情報を基づき、訂正を行い、また訂正後のこれらの情報をサーバ装置１２０に通知してもよい。先の例で説明すると、訂正前の単語列“すっぱいもの”は二つの単語列“すっぱい”（形容詞）と、“もの”（名詞）からなるのに対し、訂正後の文字列は二つの単語列“スパゲティ”（名詞）と、“を”（助詞）からなっており、これら品詞を表す情報を訂正内容通知部２８０がサーバ装置１２０に通知してもよい。これら情報はユーザが自分で設定してもよいが、予め入力されている参照ＤＢから引用してもよい。この参照ＤＢの例を図８に示す。各行に一単語の読み、品詞情報、子分類などが保持されている。この参照ＤＢからスパゲティに関係する情報（名詞、料理名など）を引用し、通知してもよい。文字入力の参照ＤＢはＦＥＰのＤＢでもよいし、電話帳などのＤＢでもよい。
【００５４】
また、訂正内容通知部２８０が、誤り文字列だけでなく、誤り文字列の前後の文字列を通知してもよい。
【００５５】
（サーバ装置１２０の構成）
続いて、サーバ装置１２０について詳細に説明する。図２はサーバ装置１２０のハードウェア構成図である。図２に示すように、サーバ装置１２０は、物理的には、ＣＰＵ２１、ＲＯＭ２２及びＲＡＭ２３等の主記憶装置、キーボード及びマウス等の入力デバイス２４、ディスプレイ等の出力デバイス２５、クライアント装置１１０との間でデータの送受信を行うためのネットワークカード等の通信モジュール２６、ハードディスク等の補助記憶装置２７などを含む通常のコンピュータシステムとして構成される。後述するサーバ装置１２０の各機能は、ＣＰＵ２１、ＲＯＭ２２、ＲＡＭ２３等のハードウェア上に所定のコンピュータソフトウェアを読み込ませることにより、ＣＰＵ２１の制御の元で入力デバイス２４、出力デバイス２５、通信モジュール２６を動作させると共に、主記憶装置２２，２３や補助記憶装置２７におけるデータの読み出し及び書き込みを行うことで実現される。
【００５６】
図９は、サーバ装置１２０の機能を示すブロック図である。図９に示すように、サーバ装置１２０は、機能的には、認識部１０１０（音声認識手段）、音響モデル保持部１０２０（格納手段）、言語モデル保持部１０３０（格納手段）、結果保存部１０４０（認識結果保存手段）、正解区間抽出部１０５０（抽出手段）、音響モデル修正部１０６０（更新手段）、音声保存部１０７０、フィードバック受信部１０８０（フィードバック受信手段）、結果送信部１０９０（認識結果送信手段）、および音声受信部１１００（音声受信手段）を含んで構成されている。以下では、図１０を更に参照しながら、サーバ装置１２０の機能および動作を説明する。図１０は、サーバ装置１２０の機能および動作を説明するためのフローチャートである。
【００５７】
サーバ装置１２０は、音声受信部１１００がクライアント装置１１０からの音声データを受信すると（ステップ１１１０）、当該音声データは音声保存部１０７０に保存されるとともに、認識部１０１０に出力される（ステップ１１２０）。
【００５８】
次に、音声認識部１０１０にて、音響モデル保持部１０２０に格納されている音響モデル、および言語モデル保持部１０３０に格納されている言語モデルを利用し、音声受信部１１００より入力された音声に対し音声認識を行う（ステップ１１３０）。その認識結果（文字列および時間情報）を結果保存部１０４０に保存するとともに（ステップ１１９０）、クライアント装置１１０に返信する（ステップ１１４０）。例えば、“横浜でスパゲティを食べたい”という内容の発声に対し、認識結果の例を図５に示す。図５では、認識結果が文字列と時間情報からなっている。この認識結果の文字と時間情報を結果保存部１０４０に保存し（ステップ１１９０）、クライアント装置１１０に送信する（ステップ１１４０）。クライアント装置１１０に送信する内容は文字列だけでもよく、文字列と各時間の時間情報を含めてもよい。
【００５９】
次に、ステップ１１４０にてクライアント装置１１０側に送信した認識結果に対するユーザの操作内容のフィードバックデータを受信する（ステップ１１５０）。このフィードバックデータの例を図７に示す。
【００６０】
次に、ステップ１１５０にて受信したフィードバックデータと、ステップ１１９０にて結果保存部１０４０に保存した認識結果を表す情報とを照合し、当該照合の結果に基づき、正解区間抽出部１０５０が当該認識結果から正解部分の抽出処理を行う（ステップ１１６０）。抽出処理は、フィードバックデータに含まれている誤り区間の開始時刻と終了時刻（あるいは単語番号）を認識結果データの時刻情報と照合し、当該照合の結果に基づき、認識結果の中から誤り部分を除去する。その結果、認識の正解部分の情報だけが残る。例えば上記図５、図７の場合においては、開始時刻３００ｍｓから終了時刻８００ｍｓまでを除去すると、正解部分として「横浜で」と「食べたい」だけが残る。
【００６１】
次に、モデル修正部１０６０において、モデルの修正・更新処理を行う（ステップ１１７０、ステップＳ１１８０）。この処理は図１１を参照に説明する。図１１において、正解区間音声データ抽出部１２１０および音素単位の音声データ抽出部１２２０が図９に示した正解区間抽出部１０５０を構成し、音素単位モデル修正部１２３０が図９に示した音響モデル修正部１０６０を構成する。正解区間音声データ抽出部１２１０において全発話の音声データから正解部分の音声データを抽出する。
【００６２】
上記の例において、正解部分は０ｍｓから３００ｍｓまでの区間と８００ｍｓから１２００ｍｓまでの区間であった。この場合に、音素単位の音声データ抽出部１２２０において正解単語の音素レベルの音声データを計算すると、その結果は以下となる。
”横浜で”の音素列は、”y  o  k  o  h  a  m  a d  e”
音素レベルの時間は０ ３０ ５０８０ １００１３０ １６０８０ ２００２５０ ３００
“食べたい”の音素列は”t a b e t a i”
音素レベルの時間は８００ ８５０ ９１０９８０ １０５０１１１０ １１６０１２００
音素単位の音声データ抽出部１２２０は、各音素の対応する時間に基づき、音素対応の音声データを抽出する。上記の例では、音素yに対応する部分は１箇所あり、０ｍｓから３０ｍｓの部分である。また、音素oに対応する部分は２箇所あり、３０ｍｓから５０ｍｓまで、８０ｍｓから１００ｍｓの部分である。
【００６３】
次に、音素単位モデル修正部１２３０が、正解部分の各音素に対応する音声データを用いて、音響モデル保持部１０２０に保持されている音響モデルの修正を行う。修正方法は従来からいろいろあるが、本実施形態では非特許文献１（「確率モデルによる音声認識のための話者適応化技術」、電子情報通信学会論文誌 D-II vol.J８７-D-II, no.２, pp.３７１-３８６, ２００４-２）に記載された方法を用いることとする。非特許文献１に記載されたモデルパラメータ修正方法の一例を下記の式（１）に示す。下記の式（１）では、Xが音素の音声の平均値を示し、 m0が修正前のモデルパラメータを示し、 mが修正後のモデルパラメータを示す。
m= m0*weight+(1.0- weight)*X…（１）
【００６４】
上記の式（１）により修正したパラメータを用いて、音響モデル保持部１０２０にある音響モデルの更新を行う（ステップ１１８０）。
【００６５】
このように更新した音響モデルは誤りの信号を除去してからのデータに基づいて更新を行ったため、精度が高い。次の音声認識にこの更新した音響モデルを用いれば、より高い性能で音声認識を行うことができる。誤り区間の音声に対して再度認識を行う場合にも、次回入力された音声データに対して認識を行う場合でも、この更新した音響モデルを利用できる。
【００６６】
第１実施形態では、サーバ装置１２０からクライアント装置１１０に送信する認識結果の内容が文字列と時間情報であったが、クライアント装置１１０に文字列だけを送信してもよい。この場合は各文字に対応する時間情報をクライアント装置１１０側で計算することが好ましい。
【００６７】
また、以上では、誤り区間について始点と終点の両方を指定すると説明したが、始点だけを指定するようにしてもよい。この場合は、例えば始点に基づいて終点を自動的に検出するような手段を更に設けることが好ましい。終点の検出方法はいろいろあるが、例えば
a,始点以降のＮ番目の単語を終点にする方法.この場合はＮを通知してもよい。この実施例では誤り単語始点（“すっぱい”）の以降Ｎ＝１の場合は“もの”である。 
b.始点以降の特殊音声単位（ポーズなど）
c,認識結果の文字列の信頼度がある場合信頼度が高い単語を終点にする
始点だけを通知する場合は、その趣旨と終点の検出方法を通知してもよい。
さらに、終点だけを指定し、始点を自動的に指定することもよい。
【００６８】
また、以上では、音響モデルについて、音素を基本単位とするモデルを例に説明したが、それ以外の単位、例えば単語、音節、仮名などを単位とするモデルである場合にも、第１実施形態を容易に適用することができる。
【００６９】
＜第１実施形態の変形例１＞
以下では、第１実施形態の変形例１について説明する。この変形例１の基本構成と処理は第１実施形態と同じであるが、ユーザ操作部２６０および比較部２７０（以上、操作手段、キー関連手段、操作検出手段）の構成と処理が第１実施形態と異なる。以下では、図１２、図１３を参照しながら第１実施形態との違いの部分だけを説明する。図１２は変形例１におけるユーザ操作部２６０および比較部２７０の構成図であり、図１３は変形例１におけるユーザ操作部２６０および比較部２７０の機能および動作を説明するためのフローチャートである。
【００７０】
図１２に示すように、変形例１におけるユーザ操作部２６０および比較部２７０は、機能的な構成要素として、種類判定部７１０、種類回数記憶部７２０、誤り始点計算部７３０、誤り時間変換部７４０、誤り終点計算部７５０、削除文字数記憶部７６０、および訂正内容記憶部７７０を含んで構成されている。
【００７１】
変形例１では、ユーザの操作に基づき、訂正内容と対応時刻を算出する。まず、種類判定部７１０がユーザにより押されたキーの種類を判定する(ステップ８１０)。すなわち、カーソルを動かす操作であるか、それとも訂正操作かであるかを判定する。カーソルを動かす操作は、カーソルを上下左右、或いは次のページ、前のページに移動するなどの操作を指す。また、訂正操作は、文字に対する削除、入力などの操作を指す。
【００７２】
ステップ８１０の判定の結果、カーソル移動の場合は（ステップ８１０：移動キー）、ユーザが押したキーの種類と押した回数を種類回数記憶部７２０に記録する。
【００７３】
次に、誤り始点計算部７３０が、種類回数記憶部７２０に記録された内容に基づいて、訂正箇所の開始位置Ｐを計算する（ステップ８２０）。計算式を以下の例で示す。
P=M*(downＮ-upN)+rightＮ-leftＮ…（２）
ただし、Mは一行の文字数を示す。downＮ、upNはそれぞれ下の行と上の行に移動の回数を示す。RightＮとleftＮはそれぞれ右と左に移動の回数を示す。この式（２）は同じページ内の移動位置の計算例を示すが、複数ページにわたる場合はページの変更キー操作を考慮した計算に直せばいい。ユーザがカーソルを用いて誤り箇所に移動することは、例えば正しい文字列“横浜で”を飛ばす目的でカーソルを右に三回に移動したこととなる。これを式（２）で考えると、rightＮ＝３であり、残りのパラメータ＝０であるため、結果的に訂正箇所の開始位置Ｐ＝３となる。誤り始点計算部７３０は、この結果を誤り時間変換部７４０に渡す。
【００７４】
誤り時間変換部７４０では、誤り始点計算部７３０が計算した始点に対応する時刻を認識結果保存部２５０の認識結果を参照して判断する(ステップ８３０)。上記の例においては、誤り時間変換部７４０が、図５のデータを用いて、訂正箇所の開始位置Ｐ＝３に対応する時刻を３００msと判断する。
【００７５】
一方、ステップ８１０の判定の結果、訂正入力の場合は（ステップ８１０：訂正キー）、ユーザにより誤りの内容が訂正される（ステップ８４０）。上記の例では、ユーザが削除キーを六回押して、文字列の“すっぱいもの”を削除する。削除文字数記憶部７６０は、削除の回数(ここでは６)を記録し、その値を誤り終点計算部７５０に渡す。
【００７６】
次に、誤り終点計算部７５０が、削除文字数記憶部７６０より渡された内容に基づいて、誤り終点の位置Ｑを計算する（ステップ８５０）。計算式を以下の例で示す。
Ｑ＝Ｐ＋Ｋ…（３）
ここで、Ｐ、Ｋはそれぞれ誤りの始点位置、削除キーの数を示す。Ｑは誤り終点の位置を示す。この例ではＱ＝３＋６＝９、つまり認識結果の文字列の“の”部分に対応する。誤り終点計算部７５０は、訂正の始点箇所と終点箇所、或いは訂正した文字数を誤り時間変換部７４０に通知する。
【００７７】
次に、誤り時間変換部７４０では、誤り終点計算部７５０が計算した誤り終点に対応する時刻を認識結果保存部２５０の認識結果を参照して判断する(ステップ８６０)。上記の例においては、誤り時間変換部７４０が、図５のデータを用いて、誤り終点の位置Ｑ＝９に対応する時刻を８００msと判断する。
【００７８】
次に、訂正内容記憶部７７０に正しい内容の“スパゲティを”の６文字を入力し、保存する。
【００７９】
以上により、変形例１におけるユーザ操作部２６０および比較部２７０にて、誤りの開始時刻および終了時刻と、訂正後の内容が獲得されることについて、説明された。以上の説明以外に、例えば、キーを認識誤りの終点に移動し、バックスペースキーで修正する場合には、種類判定部７１０がバックスペースキーであることを判断し、誤り終点計算部７５０はバックスペースキーが押された箇所を誤りの終点と判断する。次に、バックスペースキーの数を検出し、削除した文字の数にする。終点位置から削除した文字の数を引いた数は誤りの始点にする。
【００８０】
以上の例では、誤り箇所の位置計算をキーの操作回数で算出したが、タッチパネルのようなインターフェースにおいてもタッチの箇所を検出することにより、誤り箇所の位置を計算することができる。
【００８１】
＜第１実施形態の変形例２＞
以下では、第１実施形態の変形例２について説明する。この変形例２の基本構成と処理は第１実施形態と同じであるが、音響モデル修正部１０６０の構成と処理が第１実施形態と異なる。以下では、図１４を参照しながら第１実施形態との違いの部分だけを説明する。図１４は変形例２における音響モデル修正部１０６０の構成図である。
【００８２】
図１４に示すように、変形例２における音響モデル修正部１０６０は、機能的な構成要素として、類似度計算部１３１０（一致度計算手段）、音素特徴量抽出部１３２０、および音響モデル修正部１３３０を含んで構成されている。
【００８３】
一方、前述したように図７はフィードバックデータの例を示している。図７に示すフィードバックデータには、認識結果に対する認識誤り区間の時間情報、および訂正後の文字列が含まれている。このフィードバックデータの時間情報あるいは単語の番号と、認識結果保存部２５０に保存されている認識結果データを比較するとともに、認識誤り部分（“すっぱいもの“）をフィードバックデータの同時間の単語列に差し替えると、図６に示すような結果となる。このような比較および差し替えの動作は、図９に示した正解区間抽出部１０５０が行うようにしてもよい。この場合、正解区間抽出部１０５０は図６に示すような結果をモデル修正部１０６０に渡す。
【００８４】
図６に示すような結果をモデル修正部１０６０が受け取ると、まず、類似度計算部１３１０がフィードバックデータとユーザの元の発声内容（音声認識の本当の正解）とが一致しているかを判断する。すなわち、類似度計算部１３１０が、修正後の単語とその部分の音響特徴量を用いて、修正後の単語列の正しさ、つまり類似度（一致度）を計算する。この類似度の計算は、例えば非特許文献２（「２パス探索アルゴリズムにおける高速な単語事後確率に基づく信頼度算出法」、李晃伸、河原達也、鹿野清宏、情報処理学会研究報告、２００３-SLP-４９-４８,２００３-１２）に記載されたような周知の技術を用いて、音響モデルの値と音声データを比較することにより、行うことができる。
【００８５】
類似度計算部１３１０は、フィードバックデータと元の発声内容とが一致している場合のみ、フィードバックデータを利用させる。フィードバックデータと元の発声内容とが一致していない場合には類似度の値が低くなるが、この場合には、類似度計算部１３１０がフィードバックデータを除去し利用させない。このとき、類似度に対する所定の閾値を予め決め、その閾値以下の場合にはフィードバックデータを除去し、音素特徴量抽出部１３２０および音響モデル修正部１３３０にフィードバックデータを利用させないようにすることが好ましい。フィードバックデータを利用する場合には、類似度計算部１３１０が当該フィードバックデータを音素特徴量抽出部１３２０に出力する。
【００８６】
次に、音素特徴量抽出部１３２０が「正しい部分」（つまり、正解として認識した部分＋フィードバックデータにて訂正され且つ類似度が高い部分）の各音素に対応する音響特徴量を抽出すると、音響モデル修正部１３３０が当該抽出した音響特徴量を利用して音響モデルの修正・更新処理を行う。音素特徴量抽出部１３２０および音響モデル修正部１３３０の処理は、図１１を参照しながら上記説明した音素単位の音声データ抽出部１２２０および音素単位モデル修正部１２３０の処理と基本的には同じであるため、ここでは説明を省略する。ただし、フィードバックデータにて訂正され且つ類似度が高い部分の音響データおよび文字列をもモデル更新に用いることが第１実施形態と相違する。また、正解として認識した部分、およびフィードバックデータにて訂正され且つ類似度が高い部分における、各音素（文字）の時間情報を再度計算してもよい。計算方法は第１実施形態にて音素単位の音声データ抽出部１２２０（時間情報抽出手段）の説明のところで既に述べたので、ここでは説明を省略する。この場合に、音響モデル修正部１３３０は当該再度計算した各音素（文字）の時間情報を利用し、モデルを更新する。
【００８７】
＜第２実施形態＞
引き続き、本発明の第２実施形態について説明する。この第２実施形態の基本構成と処理は第１実施形態と同じであるが、サーバ装置１２０に新単語抽出部１４１０（辞書更新手段）および辞書更新部１４２０（辞書更新手段）が更に備えられていることが異なる。また、言語モデル保持部１０３０（格納手段）には音声認識を行うための単語辞書が格納されている。以下では、図１５を参照しながら第１実施形態との違いの部分だけを説明する。図１５は第２実施形態におけるサーバ装置１２０の構成図である。
【００８８】
フィードバック受信部１０８０がクライアント装置１１０からフィードバックデータを受信し、新単語抽出部１４１０に出力する。新単語抽出部１４１０はそのフィードバックデータに対し、サーバ装置１２０にない単語（新しい単語）を抽出する。図７に示したフィードバックデータの場合に、新単語抽出部１４１０は単語列“スパゲティを”を言語モデル保持部１０３０に格納された単語辞書と照合し、新しい単語があるかを判定する。この判定の結果、“スパゲティ“という単語が新単語であると判定された場合に、新単語抽出部１４１０はその旨を辞書更新部１４２０に通知する。
【００８９】
次に、辞書更新部１４２０が新単語“スパゲティ“をサーバ装置１２０側の単語辞書に追加する。追加するときは単語の表記以外に例えば図１６に示すように読みの列を追加する。この読みの情報はフィードバックデータに含まれてもいいし、サーバ装置１２０で独自に解析してもいい。なお、本実施形態において、フィードバックデータ中の単語列”を“は単語辞書に既に存在しており、このため辞書更新部１４２０は単語列”を“を追加しない。
【００９０】
＜第３実施形態＞
引き続き、本発明の第３実施形態について説明する。第３実施形態は、ユーザからのフィードバックデータにユーザの意図を反映する重要な情報が含まれているため、その情報を他のアプリに有効に利用するための実施形態である。この第３実施形態におけるクライアント装置１１０およびサーバ装置１２０については第１実施形態および第２実施形態と同じであるが、音声認識システム１がユーザープロフィールサーバ１５１０（ユーザデータベース、ユーザデータベース検索手段、ユーザデータベース更新手段）およびアプリサーバ１５２０を更に備えることが異なる。以下では、図１７、図１８を参照しながら第１実施形態および第２実施形態との違いの部分だけを説明する。図１７は第３実施形態における音声認識システム１の構成図であり、図１８は第３実施形態における音声認識システム１の機能および動作を説明するためのフローチャートである。
【００９１】
サーバ装置１２０が、「正しい部分」（つまり、正解として認識した部分＋フィードバックデータにて訂正され且つ類似度が高い部分）のデータをユーザープロフィールサーバ１５１０に送信する。本実施形態では、サーバ装置１２０からの「正しい部分」のデータをユーザープロフィールサーバ１５１０に反映させ、ユーザがアプリサーバ１５２０に接続する時に、ユーザープロフィールサーバ１５１０の保存されているユーザープロフィールデータ（ユーザデータベース）を参照する構成となっている。
【００９２】
ユーザープロフィールデータはユーザに対する情報が格納している。図１９にユーザープロフィールデータの一例を示す。ユーザープロフィールデータには、ユーザID、性別、年齢、利用時間を表す情報が当該ユーザに関連付けられて格納されており、これに加えて、幾つかのジャンル（グルメ、活動範囲等）に関する情報が当該ユーザに関連付けられて格納されている。更に、各ジャンルの下に子ジャンル（てんぷら、スパゲティ、横浜、ＹＲＰ野比、虎ノ門等）には、重要度のスコアが付されている。
【００９３】
図１７、図１８に戻り、ユーザープロフィールサーバ１５１０が、サーバ装置１２０からの「正しい部分」のデータとして“横浜でスパゲティを食べたい”を入力したとする。この場合に、ユーザープロフィールサーバ１５１０は、当該「正しい部分」のデータのうちフィードバックデータにて訂正され且つ類似度が高い部分に含まれた単語（キーワード）として“スパゲティ”を抽出する（ステップ１６１０）。そして、このキーワード“スパゲティ”に重要度を設定する（ステップ１６２０）。本実施形態では、重要度を０．２と設定する。
【００９４】
次に、ユーザープロフィールサーバ１５１０が、当該「正しい部分」のデータのうち正解として認識した部分に含まれた単語（キーワード）として“横浜”を抽出する（ステップ１６３０）。そして、このキーワード“横浜”に重要度を設定する（ステップ１６４０）。本実施形態では、重要度を０．４と設定する。
【００９５】
このように、フィードバックデータの部分と認識結果部分のそれぞれのキーワードに異なる別個の重要度を設定することが好ましい。なぜなら、ユーザがわざと訂正した内容はユーザの特性を反映する意味では特に重要であるからである。このため、ユーザからのフィードバックデータから抽出したキーワードに高い重要度を付与する。
【００９６】
次に、ユーザープロフィールサーバ１５１０が、ステップ１６１０〜ステップ１６４０の重要度付きのキーワードを用いてユーザープロフィールデータを更新する（ステップ１６５０）。図２０に更新後のユーザープロフィールデータの一例を示す。図２０に示すように、“スパゲティ”の重要度スコアが０．６と更新されており、“横浜”の重要度スコアが０．５と更新されている。
【００９７】
なお、ユーザープロフィールサーバ１５１０が「正しい部分」のデータに含まれた上記キーワードを用いてユーザープロフィールデータを検索するようにしてもよい。これにより、上記キーワードに基づいてユーザ情報を容易に取得することができる。また、この検索後の情報をユーザがアプリサーバ１５２０に接続する際に有効に用いるようにすることが好ましい。例えば、アプリサーバ１５２０が検索情報の何れかをユーザに推薦情報として提供することができる。なお、非特許文献３（Personalizing WebSearch via Modeling Adaptive User Profile, Lin Li, Masaru Kitsuregawa,Proceedings of Data Engineering Workshop, DEWS２００７）に記載された周知の技術を用いれば、ユーザがアプリサーバ１５２０に接続する際にユーザープロフィールデータを有効に用いることができる。
【００９８】
＜本実施形態の作用及び効果＞
続いて、第１〜第３実施形態にかかる音声認識システム１の作用及び効果について説明する。音声認識システム１によれば、音声認識を行うサーバ装置１２０からの音声認識結果に対してユーザが操作を行うことができる。そのため、ユーザは当該音声認識結果に対して誤認識された部分を指摘したり、または正しく直すことが可能となる。これらのユーザの操作をサーバ装置１２０にフィードバックする。そして、サーバ装置１２０では、ユーザからのフィードバックを参照して、誤認識された部分を除いてからのデータに基づいてモデル更新を行ったり、または正しく直した部分を更に追加したデータに基づいてモデル更新を行う。このため、モデル更新の精度を高めることができる。このように高い精度で更新された音響モデルや言語モデルを用いれば、より高い性能で音声認識を行うことができる。誤り区間の音声に対して再度認識を行う場合にも、次回入力された音声データに対して初めて認識を行う場合でも、上記高い精度で更新した音響モデルや言語モデルを利用することができる。
【図面の簡単な説明】
【００９９】
【図１】第１実施形態にかかる音声認識システム１の構成概要図である。
【図２】クライアント装置１１０およびサーバ装置１２０のハードウェア構成図である。
【図３】第１実施形態にかかるクライアント装置１１０の機能を示すブロック図である。
【図４】第１実施形態にかかるクライアント装置１１０の機能および動作を説明するためのフローチャートである。
【図５】サーバ装置１２０による音声認識結果の一例を示す図である。
【図６】ユーザが図５の音声認識結果を訂正した後の文字列を示す。
【図７】クライアント装置１１０の比較部２７０が図５の文字列と図６の文字列とを比較した結果であり、フィードバックデータの一例を示す図である。
【図８】サーバ装置１２０に品詞情報等を通知するためにクライアント装置１１０側で参照するＤＢの一例を示す図である。
【図９】第１実施形態にかかるサーバ装置１２０の機能を示すブロック図である。
【図１０】第１実施形態にかかるサーバ装置１２０の機能および動作を説明するためのフローチャートである。
【図１１】第１実施形態にかかるモデル修正部１０６０の機能を示すブロック図である。
【図１２】第１実施形態の変形例１におけるユーザ操作部２６０および比較部２７０の構成図である。
【図１３】第１実施形態の変形例１におけるユーザ操作部２６０および比較部２７０の機能および動作を説明するためのフローチャートである。
【図１４】第１実施形態の変形例２における音響モデル修正部１０６０の構成図である。
【図１５】第２実施形態におけるサーバ装置１２０の構成図である。
【図１６】単語とその読みの対応関係を示す図である。
【図１７】第３実施形態における音声認識システム１の構成図である。
【図１８】第３実施形態における音声認識システム１の機能および動作を説明するためのフローチャートである。
【図１９】第３実施形態におけるユーザープロフィールデータの一例を示す図である。
【図２０】図１９のユーザープロフィールデータが更新された様子を示す図である。
【符号の説明】
【０１００】
１…音声認識システム、１００…無線通信ネットワーク、１１０…クライアント装置、１２０…サーバ装置、１３０…音声特徴量データ、１４０…音声認識結果、１５０…ユーザ操作情報、２１０…音声処理部、２２０…音声データ送信部、２３０…音声データ保存部、２４０…認識結果受信部、２５０…認識結果保存部、２６０…ユーザ操作部、２７０…比較部、２８０…訂正内容通知部、７１０…種類判定部、７２０…種類回数記憶部、７３０…始点計算部、７４０…時間変換部、７５０…終点計算部、７６０…削除文字数記憶部、７７０…訂正内容記憶部、１０１０…音声認識部、１０２０…音響モデル保持部、１０３０…言語モデル保持部、１０４０…結果保存部、１０５０…正解区間抽出部、１０６０…音響モデル修正部、１０７０…音声保存部、１０８０…フィードバック受信部、１０９０…結果送信部、１１００…音声受信部、１２１０…正解区間音声データ抽出部、１２２０…音声データ抽出部、１２３０…音素単位モデル修正部、１３１０…類似度計算部、１３２０…音素特徴量抽出部、１３３０…音響モデル修正部、１４１０…新単語抽出部、１４２０…辞書更新部、１５１０…ユーザープロフィールサーバ、１５２０…アプリサーバ。
【図１】
2010048890.tif 000003
【図２】
2010048890.tif 000004
【図３】
2010048890.tif 000005
【図４】
2010048890.tif 000006
【図５】
2010048890.tif 000007
【図６】
2010048890.tif 000008
【図７】
2010048890.tif 000009
【図８】
2010048890.tif 000010
【図９】
2010048890.tif 000011
【図１０】
2010048890.tif 000012
【図１１】
2010048890.tif 000013
【図１２】
2010048890.tif 000014
【図１３】
2010048890.tif 000015
【図１４】
2010048890.tif 000016
【図１５】
2010048890.tif 000017
【図１６】
2010048890.tif 000018
【図１７】
2010048890.tif 000019
【図１８】
2010048890.tif 000020
【図１９】
2010048890.tif 000021
【図２０】
2010048890.tif 000022