(57)【要約】【課題】音声認識サービスを中断させることなく、各音声認識処理部の認識辞書を効率よく更新できるようにする。【解決手段】辞書更新要求受付部３１３は、システム管理者から指示された辞書更新要求を受信すると、声認識処理部管理テーブル３０を参照して各音声認識処理部３３の状態を識別し、「空き」状態の音声認識処理部３３を複数回に分けて少なくとも一つずつ選択し、その認識辞書の更新を指示する。更新を指示された各音声認識処理部３３は、認識辞書記憶部３２に記憶されている認識辞書ファイルに基づいて、自身の辞書領域３４に記憶されている認識辞書を順次に更新する。【選択図】図１
2008015209.tif 000002
【特許請求の範囲】
【請求項１】
ユーザ端末から受信した音声データを認識辞書に基づいて認識する音声認識装置において、
認識辞書が記憶された認識辞書記憶手段と、
前記認識辞書記憶手段から認識辞書を読み出して自身の共通辞書領域に更新登録し、この認識辞書に基づいて音声データを認識する複数の音声認識処理手段と、
音声認識要求に応答して、音声認識処理手段のいずれかに音声データを認識させる音声認識要求受付手段と、
辞書更新要求に応答して、音声認識処理手段を複数回に分けて少なくとも一つずつ選択し、その認識辞書を順次に更新させる辞書更新要求受付手段とを含むことを特徴とする音声認識装置。
【請求項２】
各音声認識処理手段の状態を管理する管理テーブルを具備し、
前記音声認識要求受付手段は、各音声認識処理手段の状態を前記管理テーブルに基づいて判定し、音声認識および辞書更新を実行中ではない音声認識処理手段のいずれかに音声データを認識させ、
前記辞書更新要求受付手段は、各音声認識処理手段の状態を前記管理テーブルに基づいて判定し、音声認識および辞書更新を実行中ではない音声認識処理手段の認識辞書を更新させることを特徴とする請求項１に記載の音声認識装置。
【請求項３】
前記辞書更新要求受付手段は、音声認識および辞書更新を実行中ではない音声認識処理手段を一つずつ選択し、その認識辞書を更新させることを特徴とする請求項２に記載の音声認識装置。
【請求項４】
前記各音声認識処理手段は、その起動時に前記認識辞書記憶手段の認識辞書に基づいて自身の認識辞書を更新するように構成され、
前記辞書更新要求受付手段は、各音声認識処理手段を複数回に分けて少なくとも一つずつ起動することを特徴とする請求項１ないし３のいずれかに記載の音声認識装置。
【請求項５】
各ユーザに固有のユーザ別認識辞書を各ユーザIDと対応付けて記憶するユーザ別辞書記憶手段をさらに含み、
前記各音声認識処理手段は、各ユーザの音声データを認識する際に、当該ユーザのユーザIDに対応したユーザ別辞書を前記ユーザ別辞書記憶手段から読み出して自身のユーザ別辞書領域に一時記憶し、前記認識辞書およびユーザ別認識辞書に基づいて音声認識を実行することを特徴とする請求項１ないし４のいずれかに記載の音声認識装置。
【請求項６】
各ユーザ端末からの辞書編集要求に応答して、対応するユーザ別辞書をユーザ端末へ転送し、編集されたユーザ別辞書をユーザ端末から受信して前記ユーザ別辞書記憶手段に更新登録する辞書編集要求受付手段をさらに含むことを特徴とする請求項５に記載の音声認識装置。
【請求項７】
複数の音声認識処理手段を備え、各音声認識処理手段が認識辞書記憶手段から認識辞書を読み出して自身の共通辞書領域に記憶し、この認識辞書に基づいて音声データを認識する音声認識装置の認識辞書更新方法において、
辞書更新要求に応答して、一部の音声認識処理手段の認識辞書を、前記認識辞書記憶手段に記憶されている認識辞書に基づいて更新する手順と、
未更新の音声認識処理手段の少なくとも一部を対象に、その認識辞書を前記認識辞書記憶手段に記憶されている認識辞書に基づいて更新する手順と、
前記未更新の音声認識処理手段の更新を、全ての音声認識処理手段の更新が完了するまで繰り返す手順とを含むことを特徴とする音声認識装置の認識辞書更新方法。
【請求項８】
各音声認識処理手段の状態を判定する手順と、
前記判定結果に基づいて、音声認識および辞書更新を実行中ではない音声認識処理手段を複数回に分けて少なくとも一つずつ選択する手順とを含み、
前記各更新手順では、選択された音声認識処理手段の認識辞書が更新されることを特徴とする請求項７に記載の音声認識装置の認識辞書更新方法。
【請求項９】
前記各音声認識処理手段は、その起動時に前記認識辞書記憶手段の認識辞書に基づいて自身の認識辞書を更新するように構成され、
前記音声認識処理手段を複数回に分けて少なくとも一つずつ起動する手順を含むことを特徴とする請求項７または８に記載の音声認識装置の認識辞書更新方法。
【請求項１０】
前記音声認識装置が、各ユーザに固有のユーザ別認識辞書を各ユーザIDと対応付けて記憶するユーザ別辞書記憶手段をさらに含み、
前記各音声認識処理手段が、各ユーザの音声データを認識する際に、当該ユーザのユーザIDに対応したユーザ別辞書を前記ユーザ別辞書記憶手段から読み出して自身のユーザ別辞書領域に一時記憶する手順と、
前記各音声認識処理手段が、前記認識辞書およびユーザ別認識辞書に基づいて音声データを認識する手順とを含むことを特徴とする請求項７ないし９のいずれかに記載の音声認識装置の認識辞書更新方法。
【請求項１１】
各ユーザからの辞書編集要求に応答して、対応するユーザ別辞書をユーザ端末へ転送する手順と、
編集されたユーザ別辞書をユーザ端末から受信して前記ユーザ別辞書記憶手段に更新登録する手順とをさらに含むことを特徴とする請求項１０に記載の音声認識装置の認識辞書更新方法。
【請求項１２】
請求項７ないし１１のいずれかに記載の認識辞書更新方法をコンピュータに実行させるための認識辞書更新プログラム。
【請求項１３】
請求項１２に記載の認識辞書更新プログラムをコンピュータによる読み出し可能に記憶した認識辞書更新プログラムの記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声認識装置およびその認識辞書更新方法、プログラムならびに記憶媒体に係り、特に、音声認識サービスを継続しながら認識辞書を更新できる音声認識装置およびその認識辞書更新方法、プログラムならびに記憶媒体に関する。
【背景技術】
【０００２】
音声認識は、予め登録された音声認識辞書（認識可能な文と、この文を構成する単語の読みのリスト：以下、単に認識辞書と表現する）の中から認識結果を出力する。音声認識によってデータベースを検索する場合、データベースの更新にあわせて認識辞書も更新する必要がある。例えば、全国住所の認識を行う場合には、市区町村名や地番の変更にあわせて認識辞書を更新する必要がある。
【０００３】
また、認識させたい文がユーザごとに異なる場合などでは、認識辞書をユーザごとにカスタマイズできることが望ましい。例えば、ビジネスマンのスケジュール管理に音声認識を使用する場合、部署名や会議室名を認識辞書に登録できれば便利である。また、日々更新されるデータベースを検索する場合や、音声認識に対するユーザの要求に細かく対応するためには、認識辞書を頻繁に更新できるようにすることが望ましい。
【０００４】
音声認識システムが端末型ではなく、電話自動応答システムのようなセンタ型、あるいは音声入力を行うクライアント（端末）部と音声認識処理を行うセンタ部とから構成される分散型音声認識(DSR: Distributed Speech Recognition)では、複数のユーザからの音声認識要求を同時に処理するため、センタ部では複数の音声認識処理部（音声認識プロセス）が起動されている。
【０００５】
各音声認識処理部は辞書領域を備え、別途に用意されている共通の認識辞書ファイルを前記辞書領域に読み込んで個々に音声認識を実行する。そして、前記共通の認識辞書ファイルが最新バージョンに更新されると、各音声認識プロセスは、この認識辞書ファイルを自身の辞書領域に更新登録する。
【０００６】
特許文献１には、２４時間サービスを提供するサーバにおいて、旧版のプログラムを新版のプログラムに更新する方法として、旧版のプログラムが動作する環境に新版のプログラムを追加起動し、新版のプログラムがサービス提供可能になった後、旧版のプログラムを停止、削除する方式が提案されている。
【特許文献１】特開２００４−２１３４２５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
前記センタ部で管理される認識辞書ファイルには数万〜数百万の単語が登録される。そして、こうした大語彙認識辞書ファイルの読み込みには数十秒以上の時間を要し、その間、音声認識処理部では音声認識サービスを提供できなくなる。
【０００８】
したがって、各音声認識処理部が自身の認識辞書を一斉に更新してしまうと、この更新期間中は音声認識サービスを一時的に中断しなければならない。また、認識辞書をユーザごとにカスタマイズして認識率を向上させようとすれば、ユーザごとに専用の音声認識処理部を用意するか、あるいは各音声認識処理部がユーザごとに認識辞書を全て更新しなければならない。このため、大きな辞書領域が必要となったり、認識辞書の更新に要する時間だけ認識速度が低下したりするという技術課題があった。
【０００９】
本発明の第１の目的は、音声認識サービスを中断させることなく、各音声認識処理部の認識辞書を効率よく更新できるようにすることにある。
【００１０】
本発明の第２の目的は、大きな辞書領域を必要とせず、かつ音声認識速度を低下させることなく、認識辞書をユーザごとにカスタマイズして認識率を向上できるようにすることにある。
【課題を解決するための手段】
【００１１】
上記した目的を達成するために、本発明は、ユーザ端末から受信した音声データを認識辞書に基づいて認識する音声認識装置において、以下のような特徴を有する。
(1)認識辞書が記憶された認識辞書記憶手段と、前記認識辞書記憶手段から認識辞書を読み出して自身の共通辞書領域に更新登録し、この認識辞書に基づいて音声データを認識する複数の音声認識処理手段と、音声認識要求に応答して、音声認識処理手段のいずれかに音声データを認識させる音声認識要求受付手段と、辞書更新要求に応答して、音声認識処理手段を複数回に分けて少なくとも一つずつ選択し、その認識辞書を順次に更新させる辞書更新要求受付手段とを含むことを特徴とする。
(2)各音声認識処理手段の状態を管理する管理テーブルを具備し、前記音声認識要求受付手段は、各音声認識処理手段の状態を前記管理テーブルに基づいて判定し、音声認識および辞書更新を実行中ではない音声認識処理手段のいずれかに音声データを認識させ、前記辞書更新要求受付手段は、各音声認識処理手段の状態を前記管理テーブルに基づいて判定し、音声認識および辞書更新を実行中ではない音声認識処理手段の認識辞書を更新させることを特徴とする。
(3)各ユーザに固有のユーザ別認識辞書を各ユーザIDと対応付けて記憶するユーザ別辞書記憶手段をさらに含み、前記各音声認識処理手段は、各ユーザの音声データを認識する際に、当該ユーザのユーザIDに対応したユーザ別辞書を前記ユーザ別辞書記憶手段から読み出して自身のユーザ別辞書領域に一時記憶し、前記認識辞書およびユーザ別認識辞書に基づいて音声認識を実行することを特徴とする。
【発明の効果】
【００１２】
本発明によれば、以下のような効果が達成される。
(1)認識辞書の更新対象となる音声認識処理手段が、複数回に分けて少なくとも一つずつ選択され、その認識辞書を更新されるので、音声認識装置全体としては、音声認識サービスを中断させることなく全ての音声認識処理手段の認識辞書を更新できるようになる。
(2)音声認識や辞書更新を実施していない「空き」状態の音声認識処理手段から順に認識辞書が更新されるので、全ての音声認識処理手段の認識辞書を効率よく更新できるようになる。
(3)認識辞書を全ユーザに共通の共通辞書と各ユーザに固有のユーザ別辞書とに分け、ユーザ別辞書は当該ユーザからの音声認識要求を受信するごとに読み込まれるようにしたので、各音声認識処理手段では、各ユーザに対して大きな辞書領域を確保することなく、ユーザごとにカスタマイズされた音声認識を実施できるようになる。
【００１３】
また、各ユーザにユーザ別辞書の更新を許可し、その更新が頻繁に行われるようになっても、この更新内容を音声認識処理部に簡単に反映できるようになる。
【発明を実施するための最良の形態】
【００１４】
以下、図面を参照して本発明の最良の実施の形態について詳細に説明する。図１は、本発明に係る音声認識装置の主要部の構成を示した機能ブロック図であり、ここでは、音声認識を要求するクライアント部と、この要求を処理するセンタ部とが分散配置されている分散型音声認識方式を例にして説明する。なお、図１では本発明の説明に不要な構成は図示が省略されている。
【００１５】
クライアント部が、本実施形態では音声認識アプリケーションが実装された携帯電話１であり、所定の音声認識モードでユーザの音声が入力されると、その音声データを音声認識要求と共に、携帯電話網等のネットワーク２を経由して音声認識センタ３へ送信する。
【００１６】
音声認識センタ３において、音声認識サーバプロセス３１は、通信部３１１と、前記携帯電話１から送信された音声認識要求を受け付ける音声認識要求受付部３１２と、システム管理者からの認識辞書更新要求を受け付ける辞書更新要求受付部３１３とを主要な構成としている。認識辞書記憶部３２には、認識辞書ファイルの最新バージョンが定期的に更新登録される。
【００１７】
複数の音声認識処理部３３（３３ａ，３３ｂ…）は、それぞれ自身の辞書領域３４に前記認識辞書記憶部３２から認識辞書を取り込む。そして、この認識辞書に基づいて音声認識処理を実行し、その認識結果を返す。音声認識処理部管理テーブル３０では、前記各音声認識処理部３３が、音声認識処置中である「処理中」、自身の認識辞書を前記認識辞書記憶部３２に記憶されている最新の辞書ファイルに基づいて更新する「更新中」、および前記「処理中」、「更新中」以外の「空き」のいずれのプロセス状態にあるかが管理されている。
【００１８】
このような構成において、前記音声認識要求受付部３１２は、携帯電話１から音声認識要求を受信すると、音声認識処理部管理テーブル３０を参照して各音声認識処理部３３の状態を識別し、「空き」状態の音声認識処理部３３（「空き」状態の処理部３３が複数あれば、そのいずれか一つ）に音声データを転送して音声認識を要求する。前記音声データを転送された音声認識処理部３３は、自身の辞書領域３４に記憶されている認識辞書を利用して音声認識処理を実行し、その認識結果を前記音声認識要求受付部３１２へ返す。
【００１９】
前記辞書更新要求受付部３１３は、システム管理者から指示された辞書更新要求を受信すると、音声認識処理部管理テーブル３０を参照して各音声認識処理部３３の状態を識別し、「空き」状態の音声認識処理部３３（「空き」状態の処理部が複数あれば、そのいずれか一つ）を複数回に分けて少なくとも一つずつ選択し、その認識辞書の更新を指示する。前記更新を指示された音声認識処理部３３は、認識辞書記憶部３２に記憶されている認識辞書ファイルに基づいて、自身の辞書領域３４に記憶されている認識辞書を更新する。
【００２０】
次いで、図２のフローチャートを参照して本実施形態の動作を詳細に説明する。ここでは、主に前記音声認識サーバプロセス３１の動作に注目して説明する。
【００２１】
ユーザが携帯電話１から所定の音声認識モードで音声を入力すると、その音声データおよび音声認識要求がネットワーク経由で音声認識センタ３に送信される。音声認識センタ３では、ステップＳ１において、この音声認識要求が音声認識要求受付部３１２で検知される。ステップＳ２では、この音声認識要求と共に送信された認識対象の音声データが受信される。ステップＳ３では、前記音声認識処理部管理テーブル３０が参照され、各音声認識処理部３３の状態が、「空き」、「（音声認識）処理中」、および「（辞書）更新中」のいずれであるかが判定される。
【００２２】
ステップＳ４では、「空き」状態の音声認識処理部３３の有無が判定され、「空き」状態の音声認識処理部３３があればステップＳ５へ進む。ステップＳ５では、前記「空き」状態の音声認識処理部３３の一つが選択され、前記音声認識処理部管理テーブル３０で管理されている当該音声認識処理部３３のプロセス状態が「空き」から「処理中」に変更される。ステップＳ６では、この音声認識処理部３３に対して前記音声データが転送される。音声認識処理部３３では、転送された音声データに音声認識処理を実行し、その認識結果を音声認識サーバプロセス３１へ返送する。
【００２３】
音声認識サーバプロセス３１は、この認識結果をステップＳ７で受信すると、ステップＳ８において、認識結果をネットワーク経由で送信元の携帯電話１に返送する。ステップＳ９では、認識結果を返信した音声認識処理部３３のプロセス状態を「処理中」から「空き」に戻す。
【００２４】
なお、前記ステップＳ４において、「空き」状態の音声認識処理部３３が一つもないと判定されるとステップＳ１０へ進み、送信元の携帯電話１に拒否応答が返信されるか、あるいは処理待ちのキューに前記音声データが連結される。
【００２５】
一方、前記ステップＳ１で音声認識要求が検知されなければステップＳ１１へ進み、認識辞書の更新要求が前記辞書更新要求受付部３１３で検知されたか否かが判定される。本実施形態では、認識辞書記憶部３２の辞書ファイルが予め最新の辞書に更新され、その後、適宜のタイミングで管理プログラムから辞書更新要求が指示される。
【００２６】
この更新要求がステップＳ１１で検知されると、ステップＳ１２では、前記音声認識処理部管理テーブル３０が参照され、各音声認識処理部３３の状態が、「空き」、「処理中」および「更新中」のいずれであるかが判定される。ステップＳ１３では、前記参照結果に基づいて、認識辞書が未更新で「空き」状態の音声認識処理部３３の有無が判定される。このような更新対象の処理部３３が存在すれば、ステップＳ１４において、その一つが今回の更新対象として選択される。ステップＳ１５では、更新対象の処理部３３に関して、そのプロセス状態が「空き」から「更新中」に変更される。ステップＳ１６では、前記更新対象の処理部３３に更新が指示される。
【００２７】
前記更新を指示された処理部３３では、認識辞書記憶部３２から最新の認識辞書ファイルを読み出して自身の辞書領域３４に更新登録し、その後、音声認識サーバプロセス３１に対して更新完了通知を送信する。
【００２８】
音声認識サーバプロセス３１では、ステップＳ１７で前記更新完了通知を受信し、前記更新を指示した音声認識処理部３３が音声認識を実行できる状態に戻ったことを確認するとステップＳ１８へ進む。ステップＳ１８では、当該処理部３３の状態が「更新中」から「空き」に戻される。ステップＳ１９では、全ての音声認識処理部３３に関して認識辞書の更新が完了したか否かが判定される。未更新の処理部３３が一つでもあれば、ステップＳ１２へ戻って上記した各処理が繰り返され、各音声認識処理部３３の認識辞書が一つずつ更新される。
【００２９】
なお、上記した実施形態では、辞書更新要求受付部３１３が各音声認識処理部３３に更新要求を送信して認識辞書を更新させるものとして説明したが、前記各音声認識処理部３３が、その起動時に自身の辞書領域３４を更新するように構成されていれば、前記辞書更新要求受付部３１３は、辞書更新要求に応答して各音声認識処理手段３３を順次に再起動させるだけで良い。
【００３０】
また、上記した実施形態では、認識辞書が未更新で「空き」状態の処理部３３が、一つずつその認識辞書を更新されるものとして説明したが、本発明はこれのみに限定されるものではなく、「更新中」や「処理中」の処理部３３を除いた残り全ての「空き」状態の処理部３３が同時に、またはその一部であって複数の処理部３３が同時に、その辞書を更新されるようにしても良い。換言すれば、前記辞書更新要求受付部３１３は、辞書更新要求に応答して、音声認識処理手段３３を複数回に分けて少なくとも一つずつ選択し、その認識辞書を順次に更新させる。
【００３１】
図３は、本発明に係る音声認識装置の他の実施形態の機能ブロック図であり、前記と同一の符号は同一または同等部分を表している。
【００３２】
本実施形態では、認識辞書が全てのユーザに共通の「共通辞書」と、各ユーザに固有の「ユーザ別辞書」とに分割され、共通辞書ファイルは共通辞書記憶部４１に記憶され、各ユーザ別辞書はユーザID（例えば、加入者電話番号）で管理されてユーザ別辞書記憶部４２に記憶されている。各音声認識処理部３３は、前記共通辞書ファイルを記憶する共通辞書領域４３と、前記ユーザ別辞書を一時的に記憶するユーザ別辞書領域４４とを備えている。共通辞書ファイルは前記第１実施形態の認識辞書ファイルと同様に更新される。
【００３３】
音声認識サーバプロセス３１において、辞書編集要求受付部３１４は、ユーザからの辞書編集要求に応答して、当該ユーザのユーザIDに対応したユーザ別辞書ファイルを前記ユーザ別辞書記憶部４２から読み出して携帯電話１へ転送する。さらに、編集されたユーザ別辞書ファイルを携帯電話１から受信して前記ユーザ別辞書記憶部４２に更新登録する。
【００３４】
このような構成において、前記音声認識要求受付部３１２は、携帯端末１から音声認識要求を受信すると、当該ユーザのユーザIDおよび音声データを、プロセス状態が「空き」の音声認識処理部３３へ転送する。音声認識処理部３３は、ユーザIDに基づいてユーザ別辞書記憶部４２から当該ユーザIDのユーザ別辞書を読み出して自身のユーザ別辞書領域４４に一時的に記憶し、音声データに対して、このユーザ別辞書および予め共通辞書領域４３に記憶されている共通辞書を利用して音声認識処理を実行する。
【００３５】
図４は、前記音声認識処理部３３の動作を詳細に示したフローチャートである。
【００３６】
前記音声認識要求受付部３１２により選択された「空き」状態の音声認識処理部３３では、ステップＳ３１で認識対象の音声データおよびユーザIDを転送されると、ステップＳ３２では、ユーザIDと対応付けられたユーザ別辞書をユーザ別辞書記憶部４２から読み出す。ステップＳ３３では、このユーザ別辞書を自身のユーザ別辞書領域４４に一時記憶する。
【００３７】
ステップＳ３４では、前記受信した音声データに対して、前記共通辞書およびユーザ別辞書を利用して認識処理が実行される。ステップＳ３５では、認識結果が前記音声認識要求受付部３１２に返送される。ステップＳ３６では、前記一時記憶されたユーザ別辞書が消去される。
【図面の簡単な説明】
【００３８】
【図１】本発明に係る音声認識装置の主要部の構成を示した機能ブロック図である。
【図２】本発明の第１実施形態の動作を示したフローチャートである。
【図３】本発明に係る音声認識装置の他の実施形態の機能ブロック図である。
【図４】本発明の第２実施形態の動作を示したフローチャートである。
【符号の説明】
【００３９】
１…携帯電話（クライアント），２…ネットワーク，３…音声認識センタ，３１…音声認識サーバプロセス，３２…認識辞書記憶部，３３…音声認識処理部，３４…辞書領域，４１…共通辞書記憶部，４２…ユーザ別辞書記憶部，４３…共通辞書領域，４４…ユーザ別辞書領域
【図１】
2008015209.tif 000003
【図２】
2008015209.tif 000004
【図３】
2008015209.tif 000005
【図４】
2008015209.tif 000006