JP4510953B2 - 音声認識におけるノンインタラクティブ方式のエンロールメント - Google Patents

音声認識におけるノンインタラクティブ方式のエンロールメント Download PDF

Info

Publication number
JP4510953B2
JP4510953B2 JP16876899A JP16876899A JP4510953B2 JP 4510953 B2 JP4510953 B2 JP 4510953B2 JP 16876899 A JP16876899 A JP 16876899A JP 16876899 A JP16876899 A JP 16876899A JP 4510953 B2 JP4510953 B2 JP 4510953B2
Authority
JP
Japan
Prior art keywords
enrollment
user
text
enrollment text
grammar
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.)
Expired - Fee Related
Application number
JP16876899A
Other languages
English (en)
Other versions
JP2000035795A (ja
Inventor
ステファン・シャーウッド
デービッド・ウィルスバーグ・パーメンター
ジョエル・グールド
トッフィー・エイ・アルビナ
アラン・ゴールド
Original Assignee
ドラゴン・システムズ・インコーポレーテッド
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by ドラゴン・システムズ・インコーポレーテッド filed Critical ドラゴン・システムズ・インコーポレーテッド
Publication of JP2000035795A publication Critical patent/JP2000035795A/ja
Application granted granted Critical
Publication of JP4510953B2 publication Critical patent/JP4510953B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training
    • G10L2015/0638Interactive procedures

Landscapes

  • Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Machine Translation (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、音声認識におけるエンロールメントに関する。
【0002】
【従来の技術】
音声認識システムは、ユーザの音声を解析して、ユーザが何を話しているかを判定するシステムである。音声認識システムの殆どは、フレーム方式のシステムである。フレーム方式のシステムでは、プロセッサが、認識対象音声を表している信号を非常に短い時間部分に分割して、一連のディジタル・フレームを生成する。
【0003】
連続音声認識システムは、ユーザが個々の単語ごと、ないしは語句ごとに区切って発声する必要がなく、連続して発声した一連の単語ないし語句を認識する能力を備えた音声認識システムである。これに対して、分離音声認識システムは、個々に区切って発声した単語ないし語句を認識するようにした音声認識システムであり、ユーザは、個々の単語ないし語句を発声するたびに、その後に短い間を置かなければならない。一般的に、連続音声認識システムは、分離音声認識システムと比べて誤認識の発生頻度が高いが、それは、連続した音声を認識するための認識作業がそれだけ複雑だからである。
【0004】
連続音声認識システムのプロセッサは、一般的に、音声の「アタランス(utterance:前後を沈黙で区切られたひとまとまりの発声)」を解析するように設定されている。1個のアタランスに含まれるフレームの数は一定しておらず、所定長さ以上のポーズ(沈黙)が発生した場合に、そのポーズまでの音声部分をもって、1個のアタランスと見なすようにしている。
【0005】
ユーザが何を話しているかを判定するために、プロセッサは先ず、1個のアタランスに含まれている複数のディジタル・フレームの各々に対して最良のマッチングを示す夫々の音響モデルを判定し、続いて、それら音響モデルに対応するテキストを判定する。様々な単語、語句、それにコマンドの集合をボキャブラリと呼び、1個の音響モデルは、ボキャブラリのうちの、1個の単語、1個の語句、または1個のコマンドに対応していることもあれば、単語等の部分を構成している1個の音、即ち音素に対応していることもある。1個の単語が複数の音素によって構成されているとき、それら音素の集合により、その単語の表音綴り字(phonetic spelling)が表されている。音響モデルのうちには、沈黙を表す音響モデルや、種々の環境ノイズを表す音響モデルも含まれている。
【0006】
最良のマッチングを示す音響モデルの集合に対応する単語ないし語句は、認識候補と呼ばれる。プロセッサは、1個のアタランスに対して、ただ1つの認識候補しか生成しない(即ち、ただ1つの単語列ないし語句列しか生成しない)こともあれば、複数の認識候補を生成することもあり、後者の場合には、それら認識候補を列挙したリストを生成することになる。
【0007】
一般的に、音響モデルとは、その音響モデルに対応した音声単位(例えば、音素)が、様々な発声者によってどのように発声されているかを記述したデータのことをいう。音響モデルがある特定のユーザの音声を表すときの精度を向上させて誤認識の発生頻度を低下させるために、音声認識システムは、音響モデルに対して、特定のユーザの音声に適応させるための修正を加えるようにしている。この音響モデルに対する修正は、音声認識システムの使用開始に際して実行する初期エンロールメント・セッションにおいて実行され、また、その後の音声認識システム使用中にも実行することができ、いずれの場合も、ユーザの音声のサンプルを収集し、その収集したサンプルに基づいて音響モデルに修正を加える。
【0008】
従来の音声認識システムに組込まれているエンロールメント・セッションは、一般的に、ユーザに所定の単語リストの単語を読み上げさせたり、ユーザにプロンプトを発して特別の単語を読み上げさせるようにしたものであった。例えば、米国、マサチューセッツ州、ニュートン市に所在のドラゴン・システムズ社(Dragon Systems, Inc.)が販売している「DragonDictate for Windows」という製品に組込まれている短時間で実行できるエンロールメント・セッションでは、新ユーザにプロンプトを発して、少数の単語から成る単語リスト中の各単語を発声させ、そのユーザの発声に基づいて音響モデルの適応化を実行するようにしている。
【0009】
更にその他の様々なエンロールメント方式がこれまでに採用されている。例えば、米国、マサチューセッツ州、ニュートン市に所在のドラゴン・システムズ社(Dragon Systems, Inc.)が販売している「NaturallySpeaking」という製品に組込まれているインタラクティブ方式のエンロールメント・セッションは、適当なエンロール用テキストを選択して新ユーザに読み上げさせるようにしており、その際に、そのエンロール用テキスト中のユーザが読み上げるべき位置を、エンロールメント用のディスプレイ(例えば矢印)によって指示するようにしている。
【0010】
【発明の概要】
本発明は、音声認識システムのユーザをエンロールするための、ノンインタラクティブ方式のエンロールメント方法を提供するものである。この方法はノンインタラクティブ方式であるため、ユーザは、例えばポータブル録音装置を用いてエンロール用音声を録音し、その録音した音声を後刻ダウンロードして処理させることによって、音声認識システムの音響モデルをより精緻なものに更新することができる。この方法によれば、音声はエンロール用テキストに略々対応しているだけでよく、ユーザが、単語、語句、センテンス、ないしはパラグラフを読み飛ばしたり、反復して読み上げたりしても全く問題を生じない。この方法は、ユーザ音声を、エンロール用テキストに対比させて解析するようにしており、それによって、その音声のうちの、エンロール用テキストのいずれかの部分とマッチングする部分を識別し、そして、そのユーザ音声のマッチング部分に基づいて、エンロール用テキストのマッチング部分に対応した夫々の音響モデルを更新するようにしている。この方法を用いれば、エンロールメント・プロセスの融通性を増大させることができ、それによって、エンロールメント作業をより容易に実行できるようにすることができる。
【0011】
大局的にとらえた特徴の1つは次の通りである。先ず、音声認識システムのユーザをコンピュータがエンロールする際に、エンロール用テキストに略々対応しているユーザの音声を表すデータを収集する。コンピュータは、1つのユーザ・アタランスの音響コンテンツを解析し、その解析の結果に基づいて、当該ユーザ・アタランスが前記エンロール用テキストのいずれかの部分とマッチングしているか否かを判定する。当該ユーザ・アタランスが前記エンロール用テキストのいずれかの部分とマッチングしていたならば、当該ユーザ・アタランスの音響コンテンツに基づいて、前記エンロール用テキストの当該部分に対応した音響モデルを更新する。ユーザが前記エンロール用テキストの単語、センテンス、ないしはパラグラフを読み飛ばし、或いは、反復して読み上げた場合でも、当該ユーザ・アタランスが前記エンロール用テキストのいずれかの部分とマッチングしているか否かを判定することができる。
【0012】
具体的な実施の形態は、以下に列挙する特徴の1つまたは幾つかを備えたものとすることができる。本発明によるエンロールメント作業は、インタラクティブ方式で行われるものではない。そのため、ユーザ音声を表す前記データは、コンピュータとは物理的に分離した録音装置を用いて録音されたデータとすることができる。例えば、その録音装置をディジタル録音装置として、そのディジタル録音装置からファイルを受取ることで、前記データを収集するようにすることができる。また、ユーザの音声を録音装置で再生することによって生成された信号を受取ることで、前記データを収集するようにすることもでき、この場合の録音装置は、例えばアナログ録音装置であってもよい。
【0013】
ユーザ・アタランスの解析を実行する前に、コンピュータが、前記データを複数のグループに区分するようにし、区分した各グループが、ユーザが発声したアタランスの1個ずつを表しているようにしてもよい。
【0014】
コンピュータが、前記エンロール用テキストの一部分をアクティブ部分に指定して、1個のユーザ・アタランスに対応したデータの音響コンテンツを解析する際に、そのエンロール用テキストのアクティブ部分に対して特定の相対位置にあるデータを解析するようにしてもよい。また、コンピュータが、直前に解析したアタランスの前記エンロール用テキスト上における位置を識別し、更に、前記エンロール用テキストの一部分をアクティブ部分に指定する際に、前記識別位置に基づいてアクティブ部分の指定を行うようにしてもよい。その場合、前記識別位置の前後に存在するテキストを含む部分をもってアクティブ部分としてもよい。例えば、前記識別位置を含むパラグラフとそのパラグラフの前後に位置するパラグラフとを含む部分をもってアクティブ部分とすることができる。
【0015】
コンピュータが、前記データと、前記エンロール用テキストのアクティブ部分に含まれている単語のモデルとの間のマッチングを探索するようにしてもよい。また、その際には、コンピュータが、前記エンロール用テキストのアクティブ部分に対応したエンロール用グラマーを使用するようにしてもよい。
【0016】
また、リジェクション・グラマーを使用して、当該ユーザ・アタランスが前記エンロール用テキストのいずれかの部分とマッチングしているか否かを判定するようにしてもよい。前記リジェクション・グラマーを、音素グラマーから成るものとしてもよく、また、前記リジェクション・グラマーを、前記エンロール用グラマーが使用する音素集合より小さな音素集合を使用してアタランスをモデル化するグラマーとしてもよい。
【0017】
各々が対応したエンロール用グラマーを有する複数のエンロール用テキストのうちから、適当なエンロール用テキストを選択して使用するようにしてもよい。また、ユーザからエンロール用テキストを受取って使用するようにしてもよい。更に、その場合には、ユーザ・アタランスがそのエンロール用テキストのいずれか部分にマッチングしているか否かを判定するために使用する、その受取ったエンロール用テキストに対応したエンロール用グラマーは、新たに生成するようにすればよい。
【0018】
当該ユーザ・アタランスが前記エンロール用テキストのいかなる部分ともマッチングしない場合には、当該ユーザ・アタランスを無視するようにしてもよい。大局的にとらえたもう1つの特徴は、次のようなものである。音声認識システムのユーザをエンロールするために、ポータブル録音装置を用いてユーザの音声を録音し、その録音した音声をコンピュータへ転送する。続いて、コンピュータを使用して、その録音した音声の音響コンテンツを解析し、その解析の結果に基づいて、前記エンロール用テキストの複数の部分の夫々にマッチングする前記音声の複数の部分を識別し、そして、前記音声のマッチング部分の音響コンテンツに基づいて、前記エンロール用テキストのマッチング部分に対応した夫々の音響モデルを更新する。録音した音声は、前記エンロール用テキストのある部分を読み飛ばしていても、また、前記エンロール用テキストのある部分を反復して読み上げていてもかまわない。
【0019】
大局的にとらえた更に別の特徴は、次のようなものであり、即ち、物理的に独立した録音装置を用いてエンロール用テキストに対応したデータを収集すると共に、そのエンロール用テキストの一部分をアクティブ部分に指定し、そのエンロール用テキストのアクティブ部分に対して特定の相対位置にあるアタランスの音響コンテンツを解析するというものである。
【0020】
その他の特徴及び利点は、以下の詳細な説明、図面、及び請求項から明らかな通りである。
【0021】
【詳細な説明】
図1において、音声認識システム100は、複数の入出力(I/O)デバイス(図示例では、マイクロホン105,マウス110,キーボード115,及びディスプレイ120)と、汎用コンピュータ125とを備えている。汎用コンピュータ125は、プロセッサ(CPU)130,I/Oユニット135,及びサウンド・カード140を備えている。メモリ145には、データ及びプログラムが格納されており、格納されているプログラムには、オペレーティング・システム150、アプリケーション・プログラム155(例えば、ワード・プロセッサのプログラム等)、それに音声認識ソフトウェア160などが含まれている。
【0022】
マイクロホン105は、ユーザの音声をひろって、その音声をアナログ信号の形でサウンド・カード140へ伝達する。サウンド・カード140では、その信号がA/Dコンバータで処理され、それによって、そのアナログ信号がディジタル・サンプル集合に変換される。プロセッサ130は、オペレーティング・システム150及び音声認識ソフトウェア160の制御下にあって、ユーザの連続音声に含まれている複数のアタランスの各々を識別する。アタランスとは、十分に長い所定時間長さ(例えば、160〜250ミリ秒)の休止(ポーズ)によって前後が区切られた、ひとまとまりの発声部分をいう。アタランスには、ユーザの音声中の1個の単語だけから成るアタランスもあれば、2個以上の単語から成るアタランスもある。
【0023】
この音声認識システムには更に、アナログ・レコーダ・ポート165,及び/または、ディジタル・レコーダ・ポート170を装備することができる。アナログ・レコーダ・ポート165は、サウンド・カード140に接続しており、ハンドヘルド型レコーダ(手持型録音装置)を用いて録音した音声をサウンド・カード140へ入力する際にこのポート165を使用する。このアナログ・レコーダ・ポート165は、ハンドヘルド型レコーダをこのポート165に挿入したときに、そのレコーダのスピーカと対向する位置にマイクロホンを配設した構成のものとしてもよく、また、マイクロホン105をアナログ・レコーダ・ポートとして利用するようにしてもよい。また更に、アナログ・レコーダ・ポート165をテープ・プレーヤで構成し、ハンドヘルド型レコーダで録音したテープを、そのテープ・プレーヤに挿入することによって、そのテープに録音されている情報がサウンド・カード140へ転送されるようにしてもよい。
【0024】
ディジタル・レコーダ・ポート170は、例えばハンドヘルド型ディジタル録音装置を使用して生成したディジタル・ファイルを転送するためのポートとして構成することができる。またその場合には、そのディジタル・ファイルを直接、メモリ145へ転送する構成としてもよい。更に、ディジタル・レコーダ・ポート170は、コンピュータ125の記憶装置(例えばフロッピー・ドライブ)で構成することもでき、また、リモート・ロケーションとの間で電気通信を行うためのモデム・カードやネットワーク・カードで構成してもよい。
【0025】
図2は、音声認識ソフトウェア160の構成要素を示した図である。理解を容易にするために、以下の説明では、それら構成要素が、ある特定の結果を得るための動作を実行するというように説明する。ただし実際には、それら構成要素の各々は、プロセッサ130が特定の処理手順に従って動作することによって実現されるものである。
【0026】
先ず、フロントエンド処理モジュール200は、サウンド・カード140から(またはディジタル・レコーダ・ポート170から)転送されてくる一連のディジタル・サンプル205を、1個のアタランスの周波数成分を表す一連のパラメータ・フレーム210へ変換する。各々のフレームは、24個のパラメータを含んでおり、1個のアタランスの非常に短い時間部分(例えば10ミリ秒に相当する部分)を表している。
【0027】
認識部215は、ある1個のアタランスに対応した一連のフレームを受取ったならば、それらフレームに処理を施して、当該アタランスに対応したテキストを識別する。そのために、認識部215は、そのテキストに関する幾つかの仮定を考察して、それら仮定の夫々のスコアを付与する。各々の仮定に付与するスコアは、その仮定がユーザの音声に対応している確率を反映した値を有する。処理を容易にするために、このスコアの値は、負の対数値で表すようにしている。この場合、スコアの値が小さいほど、マッチングは良好であり(即ち、仮定が真実である確率が高い)、一方、スコアの値が大きいほど、マッチングの見込みは小さい(即ち、仮定が真実である確率が低い)。従って、スコアの値が大きければ、それだけマッチングの尤度は低下する。認識部215は、1個のアタランスについて以上の処理を完了したならば、スコアが良好な幾つかの仮定を、複数の認識候補を列挙したリスト形で、制御/インターフェース・モジュール220へ供給する。この場合、そのリストに列挙されている認識候補は、その各々が、1つずつの仮定に対応しており、また、その各々にスコアが付与されている。それら認識候補のうちには、テキストに対応した認識候補が含まれていることもあり、また、コマンドに対応した認識候補が含まれていることもある。また、コマンドには、単語から成るコマンド、語句から成るコマンド、それに、センテンスから成るコマンドなどがある。
【0028】
認識部215は、1個のアタランスを構成している複数のフレーム210を処理する際に、1個または2個以上の制約グラマー225に従ってその処理を実行する。制約グラマーは、テンプレートと呼ばれることもあり、また、規制ルールと呼ばれることもある。制約グラマーのうちには、あるアタランスに対応することのできる単語の条件をを規定しているもの、単語どうしの間の並び順の条件を規定しているもの、単語どうしの間の文法形態の条件を規定しているもの、それに、単語どうしの間の並び順の条件と文法形態の条件との両方を規定しているものなどがある。例えば、メニュー操作コマンドに関係した制約グラマーのうちには、メニューに示される項目(例えば「ファイル」や「編集」等)だけを集めた制約グラマーや、メニュー画面内での移動を行わせるコマンド単語(例えば「アップ(up)」、「ダウン(down)」、「トップ(top)」、「ボトム(bottom)」等)だけを集めた制約グラマーがある。制約グラマーは、アクティブ状態にされたり、非アクティブ状態にされたりするため、その時々で、アクティブ状態にある制約グラマーは異なっている。例えば、制約グラマーのうちには、特定のアプリケーション・プログラム155に関連付けられているものがあり、そのような制約グラマーは、ユーザがそのアプリケーション・プログラムを開いたならばアクティブ状態にされ、ユーザがそのアプリケーション・プログラムを閉じたならば非アクティブ状態にされる。認識部215は、アクティブ状態にある制約グラマーに違反する仮定を廃棄する。更に、認識部215は、ある種の制約グラマーに関連付けられている仮定のスコアに対しては、その制約グラマーの特性に基づいて調整を加えることがある。
【0029】
音声認識ソフトウェア160が使用する制約グラマー225のうちの1つに、ラージ・ボキャブラリ・ディクテーション・グラマーがある。ラージ・ボキャブラリ・ディクテーション・グラマーは、アクティブ・ボキャブラリ230に含まれている単語を識別するためのグラマーであり、アクティブ・ボキャブラリ230は、ソフトウェアにとって既知の単語から成るボキャブラリである。ラージ・ボキャブラリ・ディクテーション・グラマーは、更に、夫々の単語の出現頻度も示している。ラージ・ボキャブラリ・ディクテーション・グラマーに用いる言語モデルは、各々の単語の出現頻度を、その単語の前後にどのような単語があるかを考慮せずに示したユニグラム・モデルとしてもよく、或いは、各々の単語の出現頻度を、その単語に先行する単語がどのようなものであるかを考慮して示したバイグラム・モデルとしてもよい。例えばバイグラム・モデルを使用する場合には、名詞や形容詞は、動詞や前置詞と比べて、「ザ(the)」の後にくる確率が高いということを規定することができる。
【0030】
アクティブ・ボキャブラリ230に含まれている各単語は、発音モデルで表されており、より詳しくは、各単語は、その単語の表音綴り字を成す音素列によって表されている。また、各音素は、3個のノードから成るトライフォンで表すことができる。トライフォンは前後関係を考慮した音素であり、例えば「abc」というトライフォンは、音素「b」の前に音素「a」が存在し、音素「b」の後に音素「c」が存在するものであり、従って、音素「a」及び「c」が前後関係として付随する音素「b」を表している。
【0031】
音素は音響モデル235によって表される。音素としてトライフォンを使用している場合には、音響モデル235は、トライフォンの各ノードを、複数のガウス型(正規分布型)確率密度関数(PDF)の混合によって表すものとなっている。例えば、トライフォン「abc」のノード「i」は、次の[式1]に示したabicで表される。
【0032】
【数1】
Figure 0004510953
この[式1]において、wkで表した各係数は混合重みであり、次の[式2]が成り立つ。
【0033】
【数2】
Figure 0004510953
また[式1]において、μkは、確率密度関数(PDF)Nkの平均ベクトルであり、ckは、確率密度関数(PDF)Nkの共分散行列である。フレーム・シーケンス中の各フレームが24個のパラメータを含んでいるのと同様に、各ベクトルμkも24個のパラメータを含んでいる。行列ckは、24×24行列である。トライフォンの各ノードは、最多では、例えば16個のPDFの混合として表される。
【0034】
1つのディクテーション・ボキャブラリの全体は、アクティブ・ボキャブラリ230と、バックアップ・ボキャブラリ245とで構成されている。これらのうちバックアップ・ボキャブラリ245は、例えば、特定ユーザ用バックアップ・ボキャブラリ単語群と、全システム的バックアップ・ボキャブラリ単語群とを収容した複数のファイルで構成されるものである。全システム的バックアップ・ボキャブラリは、システムにとって既知の単語の全てを収容したものであり、ある時点でアクティブ・ボキャブラリに収容されている可能性のある単語は全て、この全システム的バックアップ・ボキャブラリに収容されている。
【0035】
誤り修正作業の実行中には、バックアップ・ボキャブラリを対象とした単語検索を行うが、その際には、先に、特定ユーザ用バックアップ・ボキャブラリを検索し、その後に、全システム的バックアップ・ボキャブラリを検索する。また、これらバックアップ・ボキャブラリの検索は、ユーザがキーボードから打ち込んだテキストに新単語が含まれていた場合にも実行される。
【0036】
認識部215は、プリフィルタ処理部240と並行して動作できるようにしてある。あるアタランスの処理を開始する際には、認識部215がプリフィルタ処理部240へ要求を発して、そのアタランスの先頭の単語として発声された可能性のある単語(即ち、そのアタランスの先頭の幾つかのフレームに対応する可能性のある単語)のリストを出力させる。プリフィルタ処理部240は、それら一連のフレームとアクティブ・ボキャブラリ230とを粗比較し、それによって、アクティブ・ボキャブラリ230に含まれている単語のうち、認識部215において、より精緻な比較を実行することが適当であると判断される単語だけを拾い出すことで、ボキャブラリの部分集合を編成する。
【0037】
制御/インターフェース・モジュール220は、音声認識ソフトウェアの動作を制御しており、また、その他のソフトウェアとの間のインターフェース、並びに、ユーザとの間のインターフェースの機能を担っている。制御/インターフェース・モジュール220は、認識部215から、各アタランスに対応した複数の認識候補を列挙したリストを受取る。それら認識候補は、ディクテーション・テキストに対応した認識候補であったり、音声認識コマンドに対応した認識候補であったり、外部コマンドに対応した認識候補であったりする。このリスト中の最良スコアの認識候補がディクテーション・テキストに対応した認識候補であったならば、制御/インターフェース・モジュール220は、そのディクテーション・テキストを、例えばワード・プロセッサ等の、その時点でアクティブ状態にあるアプリケーションへ転送する。制御/インターフェース・モジュール220は更に、その最良スコアの認識候補を、グラフィカル・ユーザ・インターフェースを介してユーザに表示することもできる。更に、制御/インターフェース・モジュール220は、音声認識コマンド(例えば「ウェイク・アップ(wake up)」コマンドや、「メイク・ザット(make that)」コマンド)に応答して、音声認識ソフトウェアの動作を制御し、また、外部コマンドを、そのコマンドが対応しているソフトウェアへ転送する。
【0038】
制御/インターフェース・モジュール220は更に、認識部215が使用するアクティブ・ボキャブラリ、音響モデル、及び制約グラマーの制御を実行する。例えば、音声認識ソフトウェアが、特定のアプリケーション(例えばMicrosoft Word等)に利用されているときには、制御/インターフェース・モジュール220は、アクティブ・ボキャブラリを更新して、そのアプリケーションに対応したコマンド単語を組込み、また、そのアプリケーションに対応した制約グラマーをアクティブ状態にする。
【0039】
制御/インターフェース・モジュール220が担当しているその他の機能としては、ボキャブラリ・カスタマイザとしての機能、及びボキャブラリ・マネージャとしての機能がある。ボキャブラリ・カスタマイザは、ユーザから供給されたテキストをスキャンすることによって、特定のトピックの言語モデルを最適化するものである。また、ボキャブラリ・マネージャは、ボキャブラリ、グラマー、及びマクロのブラウズ(閲覧)及び操作を行うために用いられる開発ツールである。制御/インターフェース・モジュール220のこれら機能の各々は、メイン音声認識ソフトウェアから分離した実行プログラムとして構成するようにしてもよい。同様に、制御/インターフェース・モジュール220それ自体も、独立した実行プログラムとして構成するようにしてもよい。
【0040】
制御/インターフェース・モジュール220は更に、エンロールメント・プログラムを実行する機能も担当している。エンロールメント・プログラムは、エンロール用テキストと、このエンロール用テキストに対応したエンロール用グラマーとを使用して、音声認識ソフトウェアを、特定のユーザに適応するようにカスタマイズするためのプログラムである。エンロールメント・プログラムの動作モードとしては、エンロールメント作業をどのように行うべきかを、エンロールメント・プログラムがユーザに指示するインタラクティブ・モードと、コンピュータとは無関係にユーザに自由にエンロールメント作業を行わせるノンインタラクティブ・モードとの、両方のモードが利用可能である。インタラクティブ・モードでは、エンロールメント・プログラムがエンロール用テキストをユーザに表示して、ユーザはその表示されたテキストを読み上げる。ユーザがそのテキストを読み上げて行くのに合わせて、認識部215が、エンロール用グラマーを使用して、ユーザが次々と発声する一連のアタランスとエンロール用テキストのうちのそれらアタランスに対応した夫々の部分とをマッチングさせて行く。そして、認識部215が、両者をマッチングさせることができなかったときには、エンロールメント・プログラムがユーザへプロンプトを発して、エンロール用テキストの該当部分の読み上げを再度実行させる。認識部215は更に、ユーザが発声するアタランスから得られる音響情報に基づいて、エンロール用テキストのマッチング部分に対応した音響モデル235のトレーニング、即ち適応化を実行する。
【0041】
一方、ノンインタラクティブ・モードにおいては、ユーザは、コンピュータが発するプロンプトによって読み上げを指示されることなく、みずからの判断でエンロール用テキストの読み上げを行う。このモードでは、ユーザは、コンピュータがディスプレイ上に表示したテキストを読み上げるばかりでなく、コンピュータの動作とは全く無関係に、紙に印刷されたテキストを読み上げることによってエンロールメントを行うことも可能であるということが、このモードの大きな利点の1つである。従って、このモードを利用する場合、ユーザは、エンロール用テキストをポータブル録音装置に吹き込み、その録音した情報を後刻コンピュータにダウンロードして認識部215に処理を行わせるという方法を採ることもでき、更には、電話線を介してエンロール用テキストの読み上げを行うという方法を採ることもできる。また、このモードを利用する場合には、ユーザは、エンロール用テキストの全ての単語を読み上げる必要はなく、読み飛ばしたい単語やパラグラフは読み飛ばしてかまわない。更に、エンロール用テキストのうちのある部分を反復して読み上げてもかまわない。これらのことによって、エンロールメント作業の融通性が大いに高まっている。
【0042】
エンロールメント・プログラムは、複数のエンロール用テキストを列挙したリストを提示して、使用するエンロール用テキストをユーザに選択させることができ、それらエンロール用テキストの各々には、そのテキストに対応したエンロール用グラマーが付属している。これとは別の方法として、ユーザが、よそで入手したエンロール用テキストを入力することも可能である。この場合には、エンロールメント・プログラムが、その入力されたエンロール用テキストからエンロール用グラマーを生成するか、或いは、予め生成しておいたエンロール用グラマーを使用するようにすればよい。
【0043】
図3は、インタラクティブ・エンロールメント・プログラムのユーザ・インターフェース1300を示した図である。ユーザ・インターフェース1300は、エンロール用テキスト1310を表示して、ユーザが読み上げることができるようにすると共に、例えばそのエンロール用テキスト上を移動する矢印1320等によって、ユーザの現在位置を表示するようにしており、このユーザの現在位置のことを「エンロールメント・ポジション」という。図3のディスプレイでは、エンロールメント・ポジションが単語「for」の位置にあり、これによって、この単語「for」までの、ユーザによるエンロール用テキストの読み上げがエンロールメント・プログラムによって認識されたことが示されると共に、エンロールメント作業を続行するには、ユーザがこの単語「for」から先の読み上げを続行すべきことが示されている。一方、図4では、エンロールメント・ポジションが単語「program」の位置にある。ユーザ・インターフェースがエンロールメント・ポジションを表示する方法としては、このように矢印を使用する以外に、認識対象となっている部分のテキストをハイライト表示にするという方法もあり、また、エンロールメント・ポジションにカーソルを表示するという方法もある。
【0044】
図3のユーザ・インターフェース1300を使用している場合に、ユーザがエンロールメント・プログラムを開始するには、先ず、音声コマンドを発するか、または、マウス等の入力デバイスを操作して、「Record(録音)」ボタン1330を選択する。続いてユーザは、表示されたテキスト1310の読み上げを、矢印1320で示されているエンロールメント・ポジションから開始する。ユーザが読み上げて行くのに合わせて、認識部215が、エンロール用グラマーを使用して、ユーザの音声とエンロール用テキストとのマッチングを次々と調べて行くと共に、エンロールメント・ポジションを(即ち矢印1320を)、次に読み上げるべき単語の先頭位置へ進めて行く。そして、ユーザ・アタランスとのマッチングの結果に基づいて、エンロール用テキストに対応した一連の音響モデルを更新する。一般的に、認識部215は、エンロールメント作業の実行中は、プリフィルタ処理部240を利用していない。
【0045】
図5に示したように、エンロールメント・プログラムは、先ず最初に、エンロール用テキストの先頭にエンロールメント・ポジションを設定し(ステップ1510)、続いてそのエンロールメント・ポジションに矢印を表示する(ステップ1520)。次に、エンロールメント・プログラムは、ユーザの音声を表している一連のディジタル・フレームのうちから、あるアタランスに相当するディジタル・フレームを取出す(ステップ1530)。次に、認識部215が、エンロール用テキストに対応したエンロール用グラマーを使用して、そのアタランスが、エンロール用テキストのうちの、エンロールメント・ポジションからはじまるある長さの部分とマッチングするか否かを判定する(ステップ540)。このときには、エンロール用テキストのうちの、どれほどの長さの部分がそのアタランスに対応しているかが分からないため、認識部215は、エンロール用グラマーを使用して、エンロール用テキストのエンロールメント・ポジション以降の様々な長さの部分のうち、そのアタランスに対して最良のマッチングを示す部分を識別する。
【0046】
もし、エンロール用テキストのエンロールメント・ポジション以降のどの部分も、そのアタランスに対して良好なマッチングを示していなかったならば、エンロールメント・プログラムは、ユーザの音声を表している一連のディジタル・フレームのうちから、その次のユーザ・アタランスに相当する複数のディジタル・フレームを取出し、それらをエンロール用テキストと比較する処理を再び実行する(ステップ1530、1540)。一方、あるユーザ・アタランスとエンロール用テキストのいずれかの部分との間にマッチングが見いだされたならば、エンロールメント・プログラムは、エンロール用テキストのそのマッチング部分に対応した音響モデル235を、そのユーザ・アタランスに基づいて更新する(ステップ1550)。ただし、これに関する別の方法として、エンロールメント・プログラムが、エンロール用テキストのある特定のセグメント(例えばセンテンスやパラグラフ)の全体について認識作業を完了した後に、または、そのエンロール用テキストの全体について認識作業を完了した後に、音響モデルの更新をまとめて一度に行うようにしてもよい。
【0047】
あるアタランスとマッチングしたエンロール用テキストのマッチング部分が、エンロール用テキストの末尾部分であって、それより後にはもうエンロール用テキストが残っていなければ(ステップ1560)、このエンロール用テキストを使用したエンロールメント・プログラムは終了する(ステップ1570)。エンロールメント・プログラムが、複数のエンロール用テキストを用意している場合には、1つのエンロール用テキストについての処理を終了したならば、自動的に次のエンロール用テキストについての処理を開始し、その新たなエンロール用テキストをディスプレイ上に表示して、そのエンロール用テキストの先頭にエンロールメント・ポジションを設定する(ステップ1510)。
【0048】
一方、ステップ1560において、エンロール用テキストにまだ残りの部分があると判定されたならば、そのエンロール用テキストのマッチング部分に続く、その次の単語へエンロールメント・ポジションを移動させた上で(ステップ1580)、矢印の表示を更新して、その更新後のエンロールメント・ポジションに矢印を表示し(ステップ1520)、エンロールメント作業を続行する。
【0049】
あるユーザ・アタランスがエンロール用テキストのいずれかの部分とマッチングするか否かの判定を行う(ステップ1540)ための方法には様々なものがある。例えば、ユーザが異なれば、エンロール用テキストの途中でポーズ(休止)を取る位置も異なるため、異なったユーザが発声したアタランスが、いずれもエンロール用テキストの同じ部分に対応するということはなく、この点を認識するようなエンロール用グラマーを設定するようにしてもよい。記述のごとく、ここに説明しているエンロールメント・グラマーは、エンロール用テキストの様々な長さの部分とユーザ・アタランスとの間のマッチングを調べることができるようにすることで、そのような状況に対処できるようにしたものである。
【0050】
また、ユーザ・アタランスがエンロール用テキストのいずれかの部分とマッチングしているか否かの判定に際しては、ユーザがエンロール用テキスト読み上げるときの読み上げ方が一通りではないため、様々な読み上げ方を認識して適切に対処できるようにエンロール用グラマーを設定するのがよい。様々な読み上げ方が予想される具体例としては、ディクテーションを行う際の、句読点の発声の仕方についての約束事がある。即ち、センテンスの末尾においてユーザが「ピリオド(period)」と発声する読み上げ方がある。これに対処するためには、センテンスの末尾で単語「period」が発声されたときには、それをオプション単語であると認識するようにエンロール用グラマーを設定しておけばよい。この場合、ユーザが「ピリオド」と発声したならば、エンロール用グラマーは、そのユーザの音声を「period」という単語にマッチングさせ、その音声に基づいて単語に対応した音響モデルの更新を行う。一方、ユーザが「ピリオド」と発声しなかったならば、エンロール用グラマーは、単語「period」はオプション単語であるものとして無視してしまい、エンロール用テキストの次の単語の処理に取りかかる。
【0051】
同様のルールを定めることで、段落書式に関するユーザの発声(例えば、ニュー・ライン(行替え)や、ニュー・パラグラフ(新段落)等)、それに、フォーマッティング方式に関するユーザの発声(例えば、キャピタライズ(大文字)、ボールド(太文字)、アンダーライン(下線)、イタリック等)にも対処することができる。例えば、図3中に示したテキストに対応したエンロール用グラマーは、拡張Backus−Naur形式(EBNF)で表したときに、次のように表されるものとすればよい。
<認識結果>::=[キャピタライズ]dragon[キャピタライズ]system is pleased to acknowledge[キャピタライズ]arther[キャピタライズ]c[ピリオド][キャピタライズ]clarkie and[キャピタライズ]harper[キャピタライズ]collins[キャピタライズ]publishers for allowing us to use selections from[キャピタライズ]arther[キャピタライズ]c[ピリオド][キャピタライズ]{clarke‘s|clarke Apostrophe s}novel threethousand[キャピタライズ]one[コロン][キャピタライズ]the[キャピタライズ]final[キャピタライズ]odyssey[コンマ]for our training program[ピリオド]
このEBNF表記において、
[]は、オプションであることを表しており、
<>は、ルールであることを表しており、
|は、OR関数であり、
::=は、定義であって、左右両辺が等しいことを表している。
このエンロール用グラマーには、ユーザがエンロール用テキスト上を前進して行くにつれて、変更が加えられて行く。例えばユーザが、図3に矢印1320で示したように、エンロール用テキスト上の単語「for」の位置にきたときには、このエンロール用グラマーは、EBNFで表した場合に、次のように表されるものになっている。
Figure 0004510953
別法として、このエンロール用グラマーを、複数のルールから成るルール集合で表すことも可能である。添付図Aに、図3に示したエンロール用テキストに対応したルール型グラマーの可能な例を示した。ルール型グラマーの利点の1つは、ユーザがエンロール用テキスト上を前進して行くにつれて、変更を加えて行く必要がないことである。
【0052】
一般的に、エンロールメント・プログラムを実行することによって、音声認識システムの誤認識発生率を低下させることができる。それが可能であるのは、ユーザがエンロール用テキストを読み上げることによって、様々な音響モデルに対応したそのユーザの音声が収集され、それら発音に基づいて、それら音響モデルがそのユーザの音声に適応するようにカスタマイズされるからである。ただし、ユーザが、本来読み上げるはずのエンロール用テキスト以外の何か他の言葉を発した場合には、その発声に基づいて、本来読み上げるはずのエンロール用テキストに対応した音響モデルの更新を行う訳には行かない。このような状況が発生することがあるのは、例えば、ディスプレイ上に表示されているテキスト1210のうちの1行をユーザが読み飛ばしてしまった場合や、ディスプレイ上に表示されている単語をユーザが別の単語に読み違えてしまった場合、それに、ディスプレイ上に表示されているテキストを読み上げているときに話しかけられて、ユーザが他者と会話をしてしまった場合などである。また、このような状況は更に、音声認識システムが、ユーザの音声以外の咳やくしゃみ、それに交通騒音や犬の吠え声などの環境騒音を拾ってしまった場合にも発生することがある。
【0053】
エンロール用グラマーを使用することによって、認識部215は、エンロール用テキストのうちの、あるユーザ・アタランスに最も良く対応している部分を識別することができる。しかしながら、エンロール用グラマーを使用しても、認識部215は、そのユーザ・アタランスが実際にそのエンロール用テキストに対応しているか否かを検証することまではできない。その検証を可能にするために、ここでは、エンロールメント・プログラムが、エンロール用グラマーと併用する形でリジェクション・グラマーを使用するようにしており、これによって、認識部215が検出した音声が、本来ユーザが読み上げるはずのエンロール用テキストとマッチングしていないという状況を識別できるようにしている。
【0054】
図6は、図5のステップ1540のプロセスを更に詳細に示した図であり、このプロセスでは、エンロール用グラマーとリジェクション・グラマーとを併用することで、ユーザ・アタランスに基づいてエンロール用テキストの音響モデルの更新を行ってはならない状況を検出するようにしている。そのために、エンロールメント・プログラムは、エンロール用グラマーに対応した最良の認識候補を識別して、認識部215がその認識候補に付与したスコアを、エンロールメント・スコアに指定する(ステップ1541)。このとき、認識部215は、例えば音響モデル及び単語の前後関係についてのマッチングを行うことによって、その認識候補に付与するスコアを決定するようにすればよい。
【0055】
たとえ最良スコアの認識候補であっても、エンロール用テキストに良好にマッチングしていないことがある。例えば、図3に示すように、エンロールメント・ポジションが単語「for」に設定されているにもかかわらず、ユーザがそれを見誤って発声したために、そのユーザ・アタランスが、エンロールメント・ポジションの1つ前の行に示されている「from Arthur c. Clarke‘s novel」になってしまったものとする。この場合、認識部215は、そのユーザ・アタランスと、エンロール用グラマーのうちの「for」以降の部分との間のマッチングを探索するため、認識部215が生成する最良のマッチングを示す認識候補は、エンロール用グラマーのうちの「for」以降の部分に対して最良のマッチングを示す認識候補になってしまう。
【0056】
エンロールメント・プログラムは更に、リジェクション・グラマーに対応した最良の認識候補を識別して、認識部215がその認識候補に付与したスコアを、リジェクション・スコアに指定する(ステップ1542)。一般的に、ユーザ・アタランスが、エンロール用テキストのうちの本来読み上げられるはずの部分に対応していない場合には、リジェクション・スコアの方がエンロールメント・スコアより良好なスコアになる。このリジェクション・グラマーをEBNFで表すと、次のように表される。
<認識結果>::=<音素列>
このEBNF表記において、
<音素列>::=音素[<音素列>]、である。
また、ここで音素として表示しているのは、リジェクション・グラマー用音素集合に含まれている任意の音素である。リジェクション・グラマー用音素集合は、発声されることが予想される音声に含まれる殆どの音を、ある程度良好にモデル化できるように選定した音素から成る集合である。上のEBNF表記に示したように、リジェクション・グラマーを、それら音素のいかなる組合せをも許容するように定めてある場合には、あるアタランスに対して最良のマッチングを示す音素列を求めるために必要とされる処理量が膨大なものとなるおそれがある。そこで、リジェクション・グラマー音素集合は、認識部215が使用する音素集合のうちの部分集合に相当する、少数の音素しか含まないものにしておくのがよい。例えば、添付図Bに示した例では、全体の音素集合が50個の音素から成るのに対して、リジェクション・グラマー用音素集合は、その部分集合に相当する19個の音素しか含まない音素集合となっている。
【0057】
リジェクション・グラマーは、そのユーザ・アタランスを構成している複数の音響を、リジェクション・グラマー音素集合に含まれる音素から成る音素列にマッチングさせる。リジェクション・グラマー認識候補に付与されるスコアは、そのユーザ・アタランスが、良好にマッチングしていると判定された音素列にどれ程緊密に対応しているかの程度を反映しており、そのユーザ・アタランスがエンロール用テキストのどの部分にも良好にマッチングしていない場合には、リジェクション・スコアの方がエンロールメント・スコアより良いスコアになる確率が高くなるようにしてある。
【0058】
再び図3の具体例について説明する。この具体例では、エンロールメント・ポジションは「for」の位置にあるのに対して、ユーザ・アタランスは「from Arthur C. Clarke‘s novel」である。そのため、エンロール用グラマーを使用して得られる認識候補のスコアは、良好ではないマッチングを反映したスコアとなる可能性が大きい。一方、リジェクション・グラマーを使用して得られる認識候補は、たとえ正確に「from Arthur C. Clarke‘s novel」とはならないにしても、「for」からはじまるエンロールメント認識候補と比べれば、これに近いものとなる可能性が大きい。従って、リジェクション・グラマーを使用して得られる認識候補は、より良好なマッチングを示すものとなり、ひいてはより良いスコアを有するものとなる。
【0059】
エンロールメント・プログラムは、そのユーザ・アタランスがエンロールメント・アタランスとマッチングしているか否かを判定するために、エンロールメント・スコアとリジェクション・スコアとを比較する(ステップ1543)。この比較のための具体的な方法としては、様々な方法が利用可能である。例えば、簡単な方式の1つとして、エンロールメント・プログラムが、エンロールメント・スコアとリジェクション・スコアとを比較して、エンロールメント・スコアの方がリジェクション・スコアより良好なスコアであれば、そのユーザ・アタランスがエンロール用テキストのいずれかの部分にマッチングしていると判定するという方法がある(ステップ1544)。一方、上述の具体例のように、リジェクション・スコアの方が、エンロールメント・スコアよりも良好なスコアであるならば、エンロールメント・プログラムは、そのユーザ・アタランスが、エンロール用テキストのどの部分にもマッチングしていないものと判定する(ステップ1545)。
【0060】
以上に、リジェクション・グラマーをエンロール用グラマーと併用する場合について説明した。しかしながら、リジェクション・グラマーは、その他の使い方をすることもできる。即ち、リジェクション・グラマーは、一般的に、ラージ・ボキャブラリ・ディクテーション制約グラマーがアクティブ状態にないときに使用することができる。例えば、音声認識ソフトウェアが、リジェクション・グラマーと、「ウェイク・アップ(Wake Up)」コマンドを認識するためのグラマーとを除いた、その他全ての制約グラマーを非アクティブ状態にする「ゴー・ツー・スリープ(go to sleep)」コマンドを含んでいることがある。通常、このような「ゴー・ツー・スリープ」コマンドが実行されたならば、認識部215は、「ウェイク・アップ」コマンドしか認識しなくなる。このような状況において、制御/インターフェース・モジュール220は、リジェクション・グラマーを使用することで、「ウェイク・アップ」コマンドと、ノイズ等のその他の音とを区別することができる。
【0061】
図7は、このノンインタラクティブ方式のエンロールメント・プログラムが動作するときの処理手順1700を示したものである。エンロールメント・プログラムは、最初に、エンロール用テキストに対応したユーザの音声を収集する(ステップ1705)。このユーザの音声は、エンロール用テキストを読み上げたユーザの音声の全体であり、様々な方法で収集し得るものである。例えば、ユーザは、印刷されたテキストを読み上げて、アナログ録音装置に音声を録音するようにしてもよい。この場合、続いてユーザは、その録音した音声をポート165を介してコンピュータ125へ入力する。ここで使用する印刷されたテキストは、エンロールメント・プログラムが提供するようにしてもよい。
【0062】
また、ユーザが、ディジタル録音装置を用いて音声を録音するようにしてもよい。この場合には、ユーザは、その録音した音声に対応したディジタル・ファイルをポート170を介してコンピュータ125へ入力すればよい。
【0063】
更に、ユーザが、マイクロホン105を使用して、印刷されたテキストまたはディスプレイ120上に表示されたテキストを読み上げるようにしてもよい。インタラクティブ方式のエンロールメント・プログラムとは対照的に、このノンインタラクティブ方式のエンロールメント・プログラムは、ユーザにプロンプトを発して、エンロール用テキスト上のユーザの位置を指示したりすることはない。即ち、このノンインタラクティブ方式のエンロールメント・プログラムは、例えばテキスト・エディタや、それに類似したプログラムを実行させて、エンロール用テキストの全体をディスプレイ上に表示し、ユーザが、そのエンロール用テキスト上のどこへでも自由に移動できるようにしておくだけでよい。また別法として、エンロールメント・プログラムが、エンロール用テキストを紙上に打ち出して、ユーザがそれを読み上げるようにしてもよい。
【0064】
ユーザがエンロール用テキストを読み上げたならば、プログラムはその音声を処理して、複数のユーザ・アタランスの夫々に対応した複数のフレーム集合を生成する(ステップ1710)。ポート165またはマイクロホン105を介して音声が入力される場合には、エンロールメント・プログラムは、サウンド・カード140を介して、また上述の処理手順300に従って、その音声を処理する。また、ポート170を介して音声が入力される場合には、一般的に、その入力に使用されるディジタル・ファイルの内容のフォーマット変更が必要である。またその場合に、そのディジタル・ファイルの内容を読みっているうちにに十分な長さの沈黙(例えば30秒)に遭遇したならば、そのことをもって音声が終了したものとエンロールメント・プログラムが判定するようにしてもよい。
【0065】
次に、エンロールメント・プログラムは、エンロール用テキストのアクティブ部分を指定し、そのアクティブ部分に対応したエンロールメント制約グラマーを構築する(ステップ1715)。例えば、最初は、エンロール用テキストの先頭の3個ないし5個のパラグラフを、エンロール用テキストのアクティブ部分として指定してもよい。この場合、エンロールメント・プログラムは、それら指定した複数のパラグラフの各々に対応した夫々の制約グラマーを含むエンロール用グラマーを構築する。一般的に、それら制約グラマーは、融通性を有するものであり、ユーザが、エンロール用テキストに含まれている複数の単語を、それらがエンロール用テキストに出現する順序で発声していること以外は要求しないような制約グラマーである。具体的には、例えば、そのアタランスの先頭の単語及び末尾の単語は、エンロール用グラマーに含まれている複数の単語のうちのどの単語でもよく、単に、そのアタランスの先頭の単語から末尾の単語までの全ての単語がエンロール用グラマーの中に含まれていて、しかも、そのアタランスにおけるそれら単語の順序が、エンロール用グラマーにおけるそれら単語の順番と前後することがないということだけを、要求するような制約グラマーとすることができる。従って、このエンロール用グラマーは、ユーザが、単語やセンテンスを読み飛ばすことも、パラグラフをまるごと読み飛ばすことも許容しており、更には、それらを反復して読み上げることも許容している。
【0066】
エンロール用テキストの先頭の5個のパラグラフに対応したエンロール用グラマーをEBNFで表すと次のように表される。
<認識結果>::=<第1番パラグラフ>|<第2番パラグラフ>|
<第3番パラグラフ>|<第4番パラグラフ>|<第5番パラグラフ>
このEBNF表記において、
<第n番パラグラフ>::=[単語1n[単語2n[単語3n...単語mn]]]
|[単語2n[単語3n...単語mn]]|...[単語mn]、であり、
また、
「単語in」は、第n番パラグラフの第i番の単語である。
既述のごとく、エンロール用グラマーは、ユーザ・アタランスがエンロール用テキストのいずれかの部分にマッチングしているか否かを判定する際に、ユーザがエンロール用テキストを読み上げるときの予想される読み上げ方のバリエーションを認識して、それら読み上げ方に適切に対処できるように定めるのがよい。そのため、上で説明したインタラクティブ・モードのエンロール用グラマーと同様に、このノンインタラクティブ・モードのエンロール用グラマーも、例えば句読点、段落書式、それにフォーマッティング等を考慮に入れたものとしている。
【0067】
続いて、エンロールメント・プログラムは、1個のアタランスを取出し(ステップ1720)、そして認識部215に、アクティブ状態にあるエンロール用グラマーを使用してそのアタランスに対する認識処理を実行するよう指令する(ステップ1725)。この認識処理は、リジェクション・グラマーを使用して、インタラクティブ・モードのエンロールメント・プログラムに関連して上で説明した手順で実行される。
【0068】
認識部215が、そのアタランスの中に、エンロール用テキストにマッチングする単語を発見したならば(ステップ730)、エンロールメント・プログラムは、その発見した単語の音素に対応した音響モデルの更新を行う(ステップ1735)。この点に関する別法として、全てのアタランスの解析が完了した後に、エンロールメント・プログラムが音響モデルの更新を行うようにしてもよい。
【0069】
音響モデルの更新を行った後に、エンロールメント・プログラムは、エンロール用テキストのアクティブ部分を更新する必要があるか否かを判定する(ステップ1740)。一般的に、エンロールメント・プログラムは、アクティブ部分の更新を行うことで、アクティブ状態にあるパラグラフで画成されるアクティブ・ウィンドウが、常に、エンロール用テキスト上のユーザ音声の現在ポジションを包含する位置にあるようにする。従って、例えば、エンロールメント・プログラムが常時、5個のパラグラフをアクティブ部分として維持するようにしている場合に、認識部215がエンロール用テキストの第4番パラグラフに含まれているテキストを識別した時点で、エンロール用テキストの第1番パラグラフ〜第5番パラグラフがアクティブ部分として選択されていたならば、エンロールメント・プログラムが実行するアクティブ部分の更新処理においては、新たに第2番パラグラフ〜第6番パラグラフをアクティブ部分として指定すればよい。
【0070】
エンロールメント・プログラムは、エンロール用テキストのアクティブ部分を更新する必要が生じたならば、そのアクティブ部分の更新を行うと共に、アクティブ・エンロール用グラマーの更新も行う(ステップ1745)。従って、上述の具体例についていえば、エンロールメント・プログラムは、その制約グラマーのうちの、エンロール用テキストの第1番パラグラフに対応する部分を削除し、第6番パラグラフに対応する部分を追加すればよい。こうして変更が加えられたエンロール用グラマーをEBNFで表すと次のように表される。
<認識結果>::=<第2番パラグラフ>|<第3番パラグラフ>|
<第4番パラグラフ>|<第5番パラグラフ>|<第6番パラグラフ>
こうして処理を完了したアタランスが、最後のアタランスではなかったならば(ステップ1750)、エンロールメント・プログラムは次のアタランスを取出して(ステップ1720)、以上のプロセスを反復して実行する。
【0071】
最後のアタランスを処理するときに、エンロールメント・プログラムは、エンロールメント・パフォーマンス・リポートをディスプレイ上に表示する(ステップ1755)。このリポートには、例えば、ユーザの音声に含まれる単語のうちで認識できた単語のパーセンテージ表示等を含むものである。このリポートには更に、修正済音響モデルを使用した場合の認識パフォーマンスの予測値の表示を含めるようにしてもよい。ユーザは、このレポートの情報に基づいて、同じエンロールメント作業を再度実行することが効果的か否か、また、別のエンロール用テキストを使用してエンロールメント作業を行うことが効果的か否かを判断することができる。
【0072】
エンロールメント・プログラムは、各ユーザのアタランスに基づいて、そのエンロール用テキストに対応した、発声者独立の(即ち、発声者に依存しない)音響モデルに適応化を施して、特定のユーザに適応した発声者適応音響モデルを生成する。既述のごとく、発声者独立音響モデルは、トライフォンの各ノードを、複数のガウス型(正規分布型)確率密度関数(PDF)Nkの混合によって表したものであり、それら確率密度関数の平均ベクトルはμkで表され、共分散行列はckで表される。また、各PDFのトライフォンのノードへの寄与は、混合重みwkで表される。発声者適応音響モデルは、その混合重みwk及び共分散行列ckの値が、発声者独立音響モデルのものと同じ値であり、その平均ベクトルだけが、適応平均ベクトルμkAになっている。
【0073】
図8は、エンロールメント・プログラムが適応平均ベクトルμkAを生成する際の処理手順1800を示したものである。エンロールメント・プログラムは、発声者独立音響モデルの平均ベクトルμkを出発値とし(ステップ1805)、変換を利用した方式で、適応平均ベクトルμkAを生成する。この変換を利用した方式は、適応平均ベクトルμkAが次の[式3]で表されることを前提としている。
【0074】
【数3】
Figure 0004510953
この[式3]において、A及びbは変換である。特に、平均ベクトルが24個の成分を有するベクトルである場合には、Aは24×24の変換行列であり、bは24個の成分を有する変換ベクトルである。
【0075】
次に、エンロールメント・プログラムは、同一の変換を共有すると予測されるPDFの集合を編成する(ステップ1810)。1つの集合Cは、音の響きが互いに類似したトライフォンを表す複数のPDFから成り、例えば、母音に関連した全てのPDFや、子音に関連した全てのPDFをもって集合とすることができる。集合を編成するための第2の方法は、平均ベクトルμkの値が互いに類似したPDFを同じグループに入れるというものである。この方法によれば、多数の集合を簡単に編成することができる。一般的に、このような集合の個数は、百個程度から数百個にも及ぶことがある。初歩的な実験を行った結果、第1の方法を用いることで、良好な結果が得られる(即ち、誤認識発生率が低いという結果が得られる)ことが判明した。一般的に、エンロールメント・セッションを実行する前に、予め集合を定めておくのがよい。
【0076】
次に、エンロールメント・プログラムは、各々の集合について、その集合に含まれているPDFに対応した全ての発声者データをアセンブルする(ステップ1815)。この発声者データは、エンロールメント・セッションの実行中に生成されたユーザ・アタランスに対応したデータである。
【0077】
次に、エンロールメント・プログラムは、各々のPDFjについて、発声者データのベクトル平均値y[j]を求める。ここで、f[n]を発声者データの第n番フレームのベクトルとし、pj(n)を発声者データの第n番フレームがPDFj(第j番PDF)に対応している確率(即ち、その発声者データの第n番フレームに対応したトライフォン・ノードの混合重みwj)とし、Nをその発声者データのフレームの総数とするとき、平均ベクトルy[j]と、第j番フレームのフレーム個数N[j]とは、次の[式4]及び[式5]で表される。
【0078】
【数4】
Figure 0004510953
【0079】
【数5】
Figure 0004510953
これは、通常、Baum−Welchアルゴリズム、またはEMアルゴリズムと呼ばれているものである。
【0080】
次に、エンロールメント・プログラムは、各集合Cの変換(AC及びbC)を求め、それには、発声者データの平均値と、発声者独立音響モデルのPDFとの間の関係を利用する(ステップ1825)。この関係は、次の[式6]で表される。
【0081】
【数6】
Figure 0004510953
この[式6]において、x[j]は、第j番PDFの平均ベクトルμjに対応したベクトルであり、eは誤差項である。この[式6]の関係に基づいて変換行列ACの転置行列AC Tを求めると、次の[式7]に示すようになる。
【0082】
【数7】
Figure 0004510953
この[式7]において、xT[j]はベクトルx[j]の転置ベクトルであり、yT[j]はベクトルy[j]の転置ベクトルであり、NCは集合Cの元の個数である。
【0083】
続いて、AC Tの転置行列を求めることによって、変換行列ACを求め、また、次の[式8]に従って変換ベクトルbCを求める。
【0084】
【数8】
Figure 0004510953
続いて、エンロールメント・プログラムは、以上のようにして求めた変換行列及び変換ベクトルを用いて、集合Cの各成分の適応平均ベクトルμjAを求める(ステップ1830)。具体的には、適応平均ベクトルμjAは、次の[式9]によって求められる。
【0085】
【数9】
Figure 0004510953
続いて、エンロールメント・プログラムは、適応平均ベクトルμjAと、発声者識別情報とを組合せたものを、発声者適応音響モデルとして格納し、この音響モデルを、後刻そのユーザの音声を認識する際に使用する。以上のプロセスを、適応モデルを使用して数回反復して実行することで、フレーム個数(N[j])と、発声者データ(y[j])と、変換行列とを更新する。
【0086】
別の実施の形態として、発声者独立の平均値(x[j])と、特定発声者の平均値とを用いて、y[j]及びN[j]の値を次の[式10]及び[式11]に従って算出してもよい。
【0087】
【数10】
Figure 0004510953
【0088】
【数11】
Figure 0004510953
これらの[式10]及び[式11]において、係数rは、発声者独立の平均値及び観測データの相対的重要度を制御する係数である。この係数rの値の最適化の程度は、利用可能な適応データの量の関数となる。
【0089】
請求項に記載した範囲には、その他の実施の形態も含まれる。例えば、エンロールメント・グラマーとリジェクション・グラマーとを用いてユーザ・アタランスに夫々にスコアを付与するための具体的な方法は、様々な方法とすることができる。また同様に、それらスコアを評価して、そのユーザ・アタランスがエンロール用テキストのある部分にマッチングするか否かを判定する方法も、様々な方法とすることができる。
【0090】
以上に説明した様々な技法は、特定のハードウェアないしソフトウェアの形態に限定されるものではなく、音声認識を実行することのできるコンピュータ環境ないし処理環境であれば、いかなる環境においても適用可能な技法である。また、それら技法は、ハードウェアで実施することも、ソフトウェアで実施することも、更にはハードウェアとソフトウェアとを組合せて実施することも可能である。それら技法は、プログラム可能なコンピュータ上で動作するコンピュータ・プログラムによって実施することが好ましく、この場合のコンピュータは、プロセッサと、そのプロセッサで読出しが可能な格納媒体(揮発性ないし不揮発性のメモリや、格納装置等)と、少なくとも1つの入力デバイスと、少なくとも1つの出力デバイスとを備えたものであることが好ましい。更にその場合に、入力デバイスを使用して入力したデータに対して、プログラム・コードを適用することで、以上に説明した機能を実行し、出力情報を生成すればよい。そして、その出力情報を、1つないし複数の出力デバイスに供給するようにすればよい。
【0091】
いずれのプログラムも、コンピュータ・システムとコミュニケートすることのできるハイレベルの手続型またはオブジェクト指向のプログラミング言語で作成したプログラムとすることが好ましい。ただし場合によっては、それらプログラムをアセンブリ言語またはマシン語で作成することが好ましいことがあるかもしれず、そのような場合には、それら言語を使用すればよい。更に、いずれの場合も、それら言語をコンパイルして使用するようにしてもよく、或いは、インタープリター言語として使用するようにしてもよい。
【0092】
それらコンピュータ・プログラムは、いずれも、記録媒体ないし記録装置(例えば、CD−ROM、ハード・ディスク、または磁気ディスケット)に格納しておき、それらに格納してあるものを、プログラム可能な汎用型ないし特定用途向けのコンピュータが読出し、その読出したコンピュータ・プログラムによって、そのコンピュータのコンフィギュレーションを設定し、また、そのコンピュータを動作させ、それによって、本明細書に説明した処理手順を実行させるようにすることが好ましい。本発明の音声認識システムは更に、コンピュータによって読出しが可能な、コンピュータ・プログラムを設定した記録媒体として実現することもでき、この場合、コンピュータ・プログラムを設定したその記録媒体が、コンピュータを、以上に説明した特定の方式で動作させることになる。
【図面の簡単な説明】
【図1】音声認識システムのブロック図である。
【図2】図1のシステムの音声認識ソフトウェアのブロック図である。
【図3】エンロールメント・プログラムのためのユーザ・インターフェースを示した図である。
【図4】エンロールメント・プログラムのためのユーザ・インターフェースを示した図である。
【図5】エンロールメント作業の手順を示したフローチャートである。
【図6】エンロールメント作業の手順を示したフローチャートである。
【図7】エンロールメント作業の手順を示したフローチャートである。
【図8】音響モデル適応化作業のフローチャートである。

Claims (20)

  1. 音声認識システムのユーザをエンロールするための、コンピュータが実行するエンロールメント方法において、
    複数のユーザ・アタランスを含みエンロール用テキストに略々対応しているユーザ音声を表すデータを収集するデータ収集処理を実行し、
    1つのユーザ・アタランスに対応したデータの音響コンテンツを解析する解析処理を実行し、
    前記解析の結果に基づいて、当該ユーザ・アタランスが前記エンロール用テキストのいずれかの部分とマッチングしているか否かを判定し、
    当該ユーザ・アタランスが前記エンロール用テキストのいずれかの部分とマッチングしていたならば、当該ユーザ・アタランスの音響コンテンツに基づいて、前記エンロール用テキストの当該部分に対応した音響モデルを更新し、
    当該ユーザ・アタランスが前記エンロール用テキストのいずれかの部分とマッチングしているか否かを判定する際に、ユーザが前記エンロール用テキストの単語を読み飛ばしても当該ユーザ・アタランスのマッチングの有無を判定し得るようにした、
    ことを特徴とする方法。
  2. 前記データ収集処理において、前記方法を実行するコンピュータとは物理的に分離した録音装置を用いて録音されたデータを収集することを特徴とする請求項1記載の方法。
  3. 前記録音装置がディジタル録音装置であり、
    前記データ収集処理において、前記ディジタル録音装置からファイルを受取るようにした、
    ことを特徴とする請求項2記載の方法。
  4. 前記データ収集処理において、ユーザの音声を録音装置で再生することによって生成された信号を受取ることを特徴とする請求項3記載の方法。
  5. 前記録音装置がアナログ録音装置であることを特徴とする請求項4記載の方法。
  6. 前記エンロール用テキストの一部分をアクティブ部分に指定するアクティブ部分指定処理を実行し、1つのユーザ・アタランスに対応したデータの音響コンテンツを解析する前記解析処理において、前記エンロール用テキストのアクティブ部分に対して特定の相対位置にあるデータを解析することを特徴とする請求項1記載の方法。
  7. 直前に解析したアタランスの前記エンロール用テキスト上における位置を識別し、前記エンロール用テキストの一部分をアクティブ部分に指定する前記アクティブ部分指定処理において、前記識別位置に基づいてアクティブ部分の指定を行うことを特徴とする請求項6記載の方法。
  8. 前記アクティブ部分指定処理において、前記識別位置の前後に存在するテキストを含む部分をアクティブ部分に指定することを特徴とする請求項7記載の方法。
  9. 前記アクティブ部分指定処理において、前記識別位置を含むパラグラフ、前記識別位置に先行するパラグラフ、及び前記識別位置に後続するパラグラフを含む部分をアクティブ部分に指定することを特徴とする請求項8記載の方法。
  10. 前記エンロール用テキストのアクティブ部分に対して特定の相対位置にあるデータを解析する際に、当該データと前記エンロール用テキストの当該アクティブ部分に含まれている単語のモデルとの間のマッチングを探索することを特徴とする請求項6記載の方法。
  11. 前記エンロール用テキストのアクティブ部分に対して特定の相対位置にあるデータを解析する際に、前記エンロール用テキストの当該アクティブ部分に対応したエンロール用グラマーを使用することを特徴とする請求項6記載の方法。
  12. 当該ユーザ・アタランスが前記エンロール用テキストのいずれかの部分とマッチングしているか否かを判定する際に、前記エンロール用テキストに対応したエンロール用グラマーを使用することを特徴とする請求項1記載の方法。
  13. 当該ユーザ・アタランスが前記エンロール用テキストのいずれかの部分とマッチングしているか否かを判定する際に、更にリジェクション・グラマーを使用することを特徴とする請求項12記載の方法。
  14. 前記リジェクション・グラマーが、音素グラマーから成ることを特徴とする請求項13記載の方法。
  15. 前記リジェクション・グラマーが、前記エンロール用グラマーが使用する音素集合より小さな音素集合を使用してアタランスをモデル化するグラマーであることを特徴とする請求項14記載の方法。
  16. 当該ユーザ・アタランスが前記エンロール用テキストのいかなる部分ともマッチングしない場合に、当該ユーザ・アタランスを無視することを特徴とする請求項1記載の方法。
  17. 音声認識システムのユーザをエンロールするための、コンピュータが実行するエンロールメント方法において、
    ポータブル録音装置を用いてエンロール用テキストに略々対応したユーザの音声を録音し、
    録音した音声をコンピュータへ転送し、
    前記コンピュータを使用して、前記録音音声の音響コンテンツを解析し、
    前記コンピュータを使用して、前記解析の結果に基づいて、前記エンロール用テキストの複数の部分の夫々にマッチングする前記音声の複数の部分を識別し、
    前記コンピュータを使用して、前記音声のマッチング部分の音響コンテンツに基づいて、前記エンロール用テキストのマッチング部分に対応した夫々の音響モデルを更新する、
    ことを特徴とする方法。
  18. 録音した前記音声が、前記エンロール用テキストのある部分を読み飛ばし、または、前記エンロール用テキストのある部分を反復していることを特徴とする請求項17記載の方法。
  19. プログラムを記録したコンピュータが読取り可能な格納媒体であって、該プログラムはコンピュータに、
    複数のユーザ・アタランスを含みエンロール用テキストに略々対応しているユーザ音声を表すデータを収集するデータ収集処理を実行させ、
    1つのユーザ・アタランスに対応したデータの音響コンテンツを解析する解析処理を実行させ、
    前記解析の結果に基づいて、当該ユーザ・アタランスが前記エンロール用テキストのいずれかの部分とマッチングしているか否かを判定させ、
    当該ユーザ・アタランスの音響コンテンツに基づいて、前記エンロール用テキストの当該ユーザ・アタランスにマッチングしている部分に対応した音響モデルを更新させるための命令を含み、
    以上の命令がコンピュータのコンフィギュレーションを設定することにより、ユーザが前記エンロール用テキストの単語を読み飛ばしても当該ユーザ・アタランスのマッチングの有無を判定し得るようにした、ことを特徴とするプログラムを記録したコンピュータ読取り可能な記録媒体。
  20. ユーザをエンロールする音声認識システムにおいて、
    音声信号を受取るための入力デバイスを備え、
    プロセッサを備え、
    複数のユーザ・アタランスを含みエンロール用テキストに略々対応しているユーザ音声を表すデータを収集するデータ収集処理を実行するように前記プロセッサが設定されており、
    1つのユーザ・アタランスに対応したデータの音響コンテンツを解析する解析処理を実行するように前記プロセッサが設定されており、
    前記解析の結果に基づいて、当該ユーザ・アタランスが前記エンロール用テキストのいずれかの部分とマッチングしているか否かを判定するように前記プロセッサが設定されており、
    当該ユーザ・アタランスの音響コンテンツに基づいて、前記エンロール用テキストの当該ユーザ・アタランスにマッチングしている部分に対応した音響モデルを更新するように前記プロセッサが設定されており、
    ユーザが前記エンロール用テキストの単語を読み飛ばしても当該ユーザ・アタランスのマッチングの有無を判定し得るように前記プロセッサが設定されている、
    ことを特徴とする音声認識システム。
JP16876899A 1998-06-15 1999-06-15 音声認識におけるノンインタラクティブ方式のエンロールメント Expired - Fee Related JP4510953B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/094,609 US6163768A (en) 1998-06-15 1998-06-15 Non-interactive enrollment in speech recognition
US09/094609 1998-06-15

Publications (2)

Publication Number Publication Date
JP2000035795A JP2000035795A (ja) 2000-02-02
JP4510953B2 true JP4510953B2 (ja) 2010-07-28

Family

ID=22246143

Family Applications (1)

Application Number Title Priority Date Filing Date
JP16876899A Expired - Fee Related JP4510953B2 (ja) 1998-06-15 1999-06-15 音声認識におけるノンインタラクティブ方式のエンロールメント

Country Status (4)

Country Link
US (2) US6163768A (ja)
EP (1) EP0965978B9 (ja)
JP (1) JP4510953B2 (ja)
DE (1) DE69923379T2 (ja)

Families Citing this family (87)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6601027B1 (en) * 1995-11-13 2003-07-29 Scansoft, Inc. Position manipulation in speech recognition
US6349281B1 (en) * 1997-01-30 2002-02-19 Seiko Epson Corporation Voice model learning data creation method and its apparatus
GB9723214D0 (en) * 1997-11-03 1998-01-07 British Telecomm Pattern recognition
US6304848B1 (en) * 1998-08-13 2001-10-16 Medical Manager Corp. Medical record forming and storing apparatus and medical record and method related to same
DE19847419A1 (de) * 1998-10-14 2000-04-20 Philips Corp Intellectual Pty Verfahren zur automatischen Erkennung einer buchstabierten sprachlichen Äußerung
US6839669B1 (en) * 1998-11-05 2005-01-04 Scansoft, Inc. Performing actions identified in recognized speech
US20020095290A1 (en) * 1999-02-05 2002-07-18 Jonathan Kahn Speech recognition program mapping tool to align an audio file to verbatim text
US6266638B1 (en) * 1999-03-30 2001-07-24 At&T Corp Voice quality compensation system for speech synthesis based on unit-selection speech database
US20050261907A1 (en) 1999-04-12 2005-11-24 Ben Franklin Patent Holding Llc Voice integration platform
US6408272B1 (en) * 1999-04-12 2002-06-18 General Magic, Inc. Distributed voice user interface
US20020032564A1 (en) * 2000-04-19 2002-03-14 Farzad Ehsani Phrase-based dialogue modeling with particular application to creating a recognition grammar for a voice-controlled user interface
JP2003505778A (ja) 1999-05-28 2003-02-12 セーダ インコーポレイテッド 音声制御ユーザインタフェース用の認識文法作成の特定用途を有する句ベースの対話モデル化
US6678658B1 (en) * 1999-07-09 2004-01-13 The Regents Of The University Of California Speech processing using conditional observable maximum likelihood continuity mapping
US6477493B1 (en) * 1999-07-15 2002-11-05 International Business Machines Corporation Off site voice enrollment on a transcription device for speech recognition
US6405167B1 (en) * 1999-07-16 2002-06-11 Mary Ann Cogliano Interactive book
US7110945B2 (en) * 1999-07-16 2006-09-19 Dreamations Llc Interactive book
US7689416B1 (en) 1999-09-29 2010-03-30 Poirier Darrell A System for transferring personalize matter from one computer to another
US7206746B1 (en) 1999-11-09 2007-04-17 West Corporation Third party verification system
US6401066B1 (en) 1999-11-09 2002-06-04 West Teleservices Holding Company Automated third party verification system
US7130800B1 (en) 2001-09-20 2006-10-31 West Corporation Third party verification system
US6434529B1 (en) * 2000-02-16 2002-08-13 Sun Microsystems, Inc. System and method for referencing object instances and invoking methods on those object instances from within a speech recognition grammar
US6687689B1 (en) 2000-06-16 2004-02-03 Nusuara Technologies Sdn. Bhd. System and methods for document retrieval using natural language-based queries
US8200485B1 (en) * 2000-08-29 2012-06-12 A9.Com, Inc. Voice interface and methods for improving recognition accuracy of voice search queries
US6556971B1 (en) * 2000-09-01 2003-04-29 Snap-On Technologies, Inc. Computer-implemented speech recognition system training
EP1187096A1 (en) * 2000-09-06 2002-03-13 Sony International (Europe) GmbH Speaker adaptation with speech model pruning
US7457750B2 (en) * 2000-10-13 2008-11-25 At&T Corp. Systems and methods for dynamic re-configurable speech recognition
EP1215659A1 (en) * 2000-12-14 2002-06-19 Nokia Corporation Locally distibuted speech recognition system and method of its operation
US7966187B1 (en) 2001-02-15 2011-06-21 West Corporation Script compliance and quality assurance using speech recognition
US7664641B1 (en) 2001-02-15 2010-02-16 West Corporation Script compliance and quality assurance based on speech recognition and duration of interaction
US7191133B1 (en) 2001-02-15 2007-03-13 West Corporation Script compliance using speech recognition
US7739115B1 (en) 2001-02-15 2010-06-15 West Corporation Script compliance and agent feedback
US8180643B1 (en) 2001-02-15 2012-05-15 West Corporation Script compliance using speech recognition and compilation and transmission of voice and text records to clients
US7209880B1 (en) * 2001-03-20 2007-04-24 At&T Corp. Systems and methods for dynamic re-configurable speech recognition
US7200565B2 (en) * 2001-04-17 2007-04-03 International Business Machines Corporation System and method for promoting the use of a selected software product having an adaptation module
JP3795409B2 (ja) * 2001-09-14 2006-07-12 富士通株式会社 音声認識装置及び方法
US20030115169A1 (en) * 2001-12-17 2003-06-19 Hongzhuan Ye System and method for management of transcribed documents
US6990445B2 (en) * 2001-12-17 2006-01-24 Xl8 Systems, Inc. System and method for speech recognition and transcription
US7016842B2 (en) * 2002-03-26 2006-03-21 Sbc Technology Resources, Inc. Method and system for evaluating automatic speech recognition telephone services
JP3967952B2 (ja) * 2002-04-16 2007-08-29 富士通株式会社 文法更新システム及び方法
US20030200094A1 (en) * 2002-04-23 2003-10-23 Gupta Narendra K. System and method of using existing knowledge to rapidly train automatic speech recognizers
US7403967B1 (en) 2002-06-18 2008-07-22 West Corporation Methods, apparatus, and computer readable media for confirmation and verification of shipping address data associated with a transaction
DE10229207B3 (de) * 2002-06-28 2004-02-05 T-Mobile Deutschland Gmbh Verfahren zur natürlichen Spracherkennung auf Basis einer Generativen Transformations-/Phrasenstruktur-Grammatik
US6999918B2 (en) * 2002-09-20 2006-02-14 Motorola, Inc. Method and apparatus to facilitate correlating symbols to sounds
US7676366B2 (en) * 2003-01-13 2010-03-09 Art Advanced Recognition Technologies Inc. Adaptation of symbols
US20040230431A1 (en) * 2003-05-14 2004-11-18 Gupta Sunil K. Automatic assessment of phonological processes for speech therapy and language instruction
US7302389B2 (en) * 2003-05-14 2007-11-27 Lucent Technologies Inc. Automatic assessment of phonological processes
US7373294B2 (en) * 2003-05-15 2008-05-13 Lucent Technologies Inc. Intonation transformation for speech therapy and the like
US20040243412A1 (en) * 2003-05-29 2004-12-02 Gupta Sunil K. Adaptation of speech models in speech recognition
US20050055216A1 (en) * 2003-09-04 2005-03-10 Sbc Knowledge Ventures, L.P. System and method for the automated collection of data for grammar creation
US6930759B2 (en) * 2003-09-23 2005-08-16 Eastman Kodak Company Method and apparatus for exposing a latent watermark on film
US9378187B2 (en) 2003-12-11 2016-06-28 International Business Machines Corporation Creating a presentation document
US7634412B2 (en) * 2003-12-11 2009-12-15 Nuance Communications, Inc. Creating a voice response grammar from a user grammar
US7430707B2 (en) 2004-01-13 2008-09-30 International Business Machines Corporation Differential dynamic content delivery with device controlling action
US7890848B2 (en) 2004-01-13 2011-02-15 International Business Machines Corporation Differential dynamic content delivery with alternative content presentation
US8499232B2 (en) 2004-01-13 2013-07-30 International Business Machines Corporation Differential dynamic content delivery with a participant alterable session copy of a user profile
US7571380B2 (en) 2004-01-13 2009-08-04 International Business Machines Corporation Differential dynamic content delivery with a presenter-alterable session copy of a user profile
US20050240406A1 (en) * 2004-04-21 2005-10-27 David Carroll Speech recognition computing device display with highlighted text
US7519683B2 (en) 2004-04-26 2009-04-14 International Business Machines Corporation Dynamic media content for collaborators with client locations in dynamic client contexts
US7827239B2 (en) 2004-04-26 2010-11-02 International Business Machines Corporation Dynamic media content for collaborators with client environment information in dynamic client contexts
US7487208B2 (en) 2004-07-08 2009-02-03 International Business Machines Corporation Differential dynamic content delivery to alternate display device locations
US8185814B2 (en) 2004-07-08 2012-05-22 International Business Machines Corporation Differential dynamic delivery of content according to user expressions of interest
US9167087B2 (en) 2004-07-13 2015-10-20 International Business Machines Corporation Dynamic media content for collaborators including disparate location representations
US7426538B2 (en) 2004-07-13 2008-09-16 International Business Machines Corporation Dynamic media content for collaborators with VOIP support for client communications
US7912592B2 (en) * 2006-06-09 2011-03-22 Garmin International, Inc. Automatic speech recognition system and method for aircraft
US7881832B2 (en) * 2006-06-09 2011-02-01 Garmin International, Inc. Automatic speech recognition system and method for aircraft
US8731925B2 (en) * 2006-12-22 2014-05-20 Nuance Communications, Inc. Solution that integrates voice enrollment with other types of recognition operations performed by a speech recognition engine using a layered grammar stack
US20090171663A1 (en) * 2008-01-02 2009-07-02 International Business Machines Corporation Reducing a size of a compiled speech recognition grammar
US8536976B2 (en) * 2008-06-11 2013-09-17 Veritrix, Inc. Single-channel multi-factor authentication
US8166297B2 (en) 2008-07-02 2012-04-24 Veritrix, Inc. Systems and methods for controlling access to encrypted data stored on a mobile device
EP2353125A4 (en) * 2008-11-03 2013-06-12 Veritrix Inc USER AUTHENTICATION FOR SOCIAL NETWORKS
EP2196989B1 (en) * 2008-12-10 2012-06-27 Nuance Communications, Inc. Grammar and template-based speech recognition of spoken utterances
US10241752B2 (en) * 2011-09-30 2019-03-26 Apple Inc. Interface for a virtual digital assistant
US8548807B2 (en) * 2009-06-09 2013-10-01 At&T Intellectual Property I, L.P. System and method for adapting automatic speech recognition pronunciation by acoustic model restructuring
WO2012055113A1 (zh) 2010-10-29 2012-05-03 安徽科大讯飞信息科技股份有限公司 录音结束点检测方法及系统
US8838449B2 (en) * 2010-12-23 2014-09-16 Microsoft Corporation Word-dependent language model
CN102800312A (zh) * 2011-05-24 2012-11-28 鸿富锦精密工业(深圳)有限公司 语音控制系统及方法
US9037467B2 (en) 2012-01-02 2015-05-19 International Business Machines Corporation Speech effects
US9275637B1 (en) * 2012-11-06 2016-03-01 Amazon Technologies, Inc. Wake word evaluation
US9779722B2 (en) * 2013-11-05 2017-10-03 GM Global Technology Operations LLC System for adapting speech recognition vocabulary
US9633661B1 (en) * 2015-02-02 2017-04-25 Amazon Technologies, Inc. Speech-responsive portable speaker
US10121471B2 (en) * 2015-06-29 2018-11-06 Amazon Technologies, Inc. Language model speech endpointing
US10134425B1 (en) * 2015-06-29 2018-11-20 Amazon Technologies, Inc. Direction-based speech endpointing
US11282528B2 (en) * 2017-08-14 2022-03-22 Lenovo (Singapore) Pte. Ltd. Digital assistant activation based on wake word association
US10490195B1 (en) * 2017-09-26 2019-11-26 Amazon Technologies, Inc. Using system command utterances to generate a speaker profile
GB2568902B (en) * 2017-11-29 2020-09-09 Auris Tech Ltd System for speech evaluation
US10586537B2 (en) * 2017-11-30 2020-03-10 International Business Machines Corporation Filtering directive invoking vocal utterances
US11438452B1 (en) 2019-08-09 2022-09-06 Apple Inc. Propagating context information in a privacy preserving manner

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60113298A (ja) * 1983-11-24 1985-06-19 富士通株式会社 特定話者音声認識装置
JPS63149699A (ja) * 1986-12-15 1988-06-22 富士通株式会社 音声入出力装置
JPH01106098A (ja) * 1987-10-20 1989-04-24 Sanyo Electric Co Ltd 音声認識システム
JPH02193199A (ja) * 1988-12-07 1990-07-30 Philips Gloeilampenfab:Nv 音声認識システム

Family Cites Families (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1169969A (en) * 1980-08-20 1984-06-26 Gregor N. Neff Dictation system and method
US4355302A (en) 1980-09-12 1982-10-19 Bell Telephone Laboratories, Incorporated Spelled word recognizer
CH644246B (fr) * 1981-05-15 1900-01-01 Asulab Sa Dispositif d'introduction de mots a commande par la parole.
US4674065A (en) 1982-04-30 1987-06-16 International Business Machines Corporation System for detecting and correcting contextual errors in a text processing system
US5054085A (en) * 1983-05-18 1991-10-01 Speech Systems, Inc. Preprocessing system for speech recognition
US4618984A (en) * 1983-06-08 1986-10-21 International Business Machines Corporation Adaptive automatic discrete utterance recognition
US4817158A (en) * 1984-10-19 1989-03-28 International Business Machines Corporation Normalization of speech signals
US4914704A (en) 1984-10-30 1990-04-03 International Business Machines Corporation Text editor for speech input
US4991217A (en) * 1984-11-30 1991-02-05 Ibm Corporation Dual processor speech recognition system with dedicated data acquisition bus
US4833712A (en) * 1985-05-29 1989-05-23 International Business Machines Corporation Automatic generation of simple Markov model stunted baseforms for words in a vocabulary
US4759068A (en) * 1985-05-29 1988-07-19 International Business Machines Corporation Constructing Markov models of words from multiple utterances
US4819271A (en) * 1985-05-29 1989-04-04 International Business Machines Corporation Constructing Markov model word baseforms from multiple utterances by concatenating model sequences for word segments
DE3518337A1 (de) * 1985-06-01 1986-12-04 Herbert Dipl.-Ing. Kubin (FH), 7300 Esslingen Sprachgesteuertes elektronisches schreib- und drucksystem mit wechselmodulen fuer fremdsprachen
US4783803A (en) * 1985-11-12 1988-11-08 Dragon Systems, Inc. Speech recognition apparatus and method
US4776016A (en) * 1985-11-21 1988-10-04 Position Orientation Systems, Inc. Voice control system
JPS62232000A (ja) * 1986-03-25 1987-10-12 インタ−ナシヨナル・ビジネス・マシ−ンズ・コ−ポレ−シヨン 音声認識装置
JPS62231993A (ja) * 1986-03-25 1987-10-12 インタ−ナシヨナル ビジネス マシ−ンズ コ−ポレ−シヨン 音声認識方法
CA1311059C (en) * 1986-03-25 1992-12-01 Bruce Allen Dautrich Speaker-trained speech recognizer having the capability of detecting confusingly similar vocabulary words
JPH0632020B2 (ja) * 1986-03-25 1994-04-27 インタ−ナシヨナル ビジネス マシ−ンズ コ−ポレ−シヨン 音声合成方法および装置
US4827521A (en) * 1986-03-27 1989-05-02 International Business Machines Corporation Training of markov models used in a speech recognition system
US4882759A (en) * 1986-04-18 1989-11-21 International Business Machines Corporation Synthesizing word baseforms used in speech recognition
US4903305A (en) * 1986-05-12 1990-02-20 Dragon Systems, Inc. Method for representing word models for use in speech recognition
US5468947A (en) * 1986-08-08 1995-11-21 Norand Corporation Pocket size data capture unit with processor and shell modules
US4866778A (en) 1986-08-11 1989-09-12 Dragon Systems, Inc. Interactive speech recognition apparatus
US4829578A (en) * 1986-10-02 1989-05-09 Dragon Systems, Inc. Speech detection and recognition apparatus for use with background noise of varying levels
US4829576A (en) * 1986-10-21 1989-05-09 Dragon Systems, Inc. Voice recognition system
US4914703A (en) * 1986-12-05 1990-04-03 Dragon Systems, Inc. Method for deriving acoustic models for use in speech recognition
US4805218A (en) * 1987-04-03 1989-02-14 Dragon Systems, Inc. Method for speech analysis and speech recognition
US4805219A (en) * 1987-04-03 1989-02-14 Dragon Systems, Inc. Method for speech recognition
US5231670A (en) * 1987-06-01 1993-07-27 Kurzweil Applied Intelligence, Inc. Voice controlled system and method for generating text from a voice controlled input
US4926488A (en) * 1987-07-09 1990-05-15 International Business Machines Corporation Normalization of speech by adaptive labelling
US4817156A (en) * 1987-08-10 1989-03-28 International Business Machines Corporation Rapidly training a speech recognizer to a subsequent speaker given training data of a reference speaker
JPH01102599A (ja) * 1987-10-12 1989-04-20 Internatl Business Mach Corp <Ibm> 音声認識方法
US5072452A (en) * 1987-10-30 1991-12-10 International Business Machines Corporation Automatic determination of labels and Markov word models in a speech recognition system
US4984177A (en) * 1988-02-05 1991-01-08 Advanced Products And Technologies, Inc. Voice language translator
US5031218A (en) 1988-03-30 1991-07-09 International Business Machines Corporation Redundant message processing and storage
US4931950A (en) * 1988-07-25 1990-06-05 Electric Power Research Institute Multimedia interface and method for computer system
JPH0293597A (ja) * 1988-09-30 1990-04-04 Nippon I B M Kk 音声認識装置
US5027406A (en) * 1988-12-06 1991-06-25 Dragon Systems, Inc. Method for interactive speech recognition and training
US5127055A (en) * 1988-12-30 1992-06-30 Kurzweil Applied Intelligence, Inc. Speech recognition apparatus & method having dynamic reference pattern adaptation
US5054074A (en) * 1989-03-02 1991-10-01 International Business Machines Corporation Optimized speech recognition system and method
JPH0636156B2 (ja) * 1989-03-13 1994-05-11 インターナショナル・ビジネス・マシーンズ・コーポレーション 音声認識装置
US5033087A (en) * 1989-03-14 1991-07-16 International Business Machines Corp. Method and apparatus for the automatic determination of phonological rules as for a continuous speech recognition system
DE3931638A1 (de) * 1989-09-22 1991-04-04 Standard Elektrik Lorenz Ag Verfahren zur sprecheradaptiven erkennung von sprache
US5036538A (en) * 1989-11-22 1991-07-30 Telephonics Corporation Multi-station voice recognition and processing system
US5129001A (en) * 1990-04-25 1992-07-07 International Business Machines Corporation Method and apparatus for modeling words with multi-arc markov models
US5202952A (en) * 1990-06-22 1993-04-13 Dragon Systems, Inc. Large-vocabulary continuous speech prefiltering and processing system
US5222190A (en) * 1991-06-11 1993-06-22 Texas Instruments Incorporated Apparatus and method for identifying a speech pattern
US5278942A (en) * 1991-12-05 1994-01-11 International Business Machines Corporation Speech coding apparatus having speaker dependent prototypes generated from nonuser reference data
US5444768A (en) * 1991-12-31 1995-08-22 International Business Machines Corporation Portable computer device for audible processing of remotely stored messages
DE69330427T2 (de) * 1992-03-06 2002-05-23 Dragon Systems Inc., Newton Spracherkennungssystem für sprachen mit zusammengesetzten wörtern
US5398220A (en) * 1992-04-06 1995-03-14 Barker; Bruce J. Portable dictation recording device having a mechanism for transmitting recorded dictation to a remote device
US5333236A (en) * 1992-09-10 1994-07-26 International Business Machines Corporation Speech recognizer having a speech coder for an acoustic match based on context-dependent speech-transition acoustic models
EP0590173A1 (de) * 1992-09-28 1994-04-06 International Business Machines Corporation Computersystem zur Spracherkennung
US5428707A (en) * 1992-11-13 1995-06-27 Dragon Systems, Inc. Apparatus and methods for training speech recognition systems and their users and otherwise improving speech recognition performance
US5467425A (en) * 1993-02-26 1995-11-14 International Business Machines Corporation Building scalable N-gram language models using maximum likelihood maximum entropy N-gram models
US5497447A (en) * 1993-03-08 1996-03-05 International Business Machines Corporation Speech coding apparatus having acoustic prototype vectors generated by tying to elementary models and clustering around reference vectors
US5465317A (en) * 1993-05-18 1995-11-07 International Business Machines Corporation Speech recognition system with improved rejection of words and sounds not in the system vocabulary
US5732187A (en) * 1993-09-27 1998-03-24 Texas Instruments Incorporated Speaker-dependent speech recognition using speaker independent models
US5491774A (en) * 1994-04-19 1996-02-13 Comp General Corporation Handheld record and playback device with flash memory
US5600756A (en) * 1994-05-11 1997-02-04 Sony Corporation Method of labelling takes in an audio editing system
DE4434255A1 (de) * 1994-09-24 1996-03-28 Sel Alcatel Ag Vorrichtung zur Sprachaufzeichnung mit anschließender Texterstellung
US5710864A (en) * 1994-12-29 1998-01-20 Lucent Technologies Inc. Systems, methods and articles of manufacture for improving recognition confidence in hypothesized keywords
US5715367A (en) * 1995-01-23 1998-02-03 Dragon Systems, Inc. Apparatuses and methods for developing and using models for speech recognition
US5765132A (en) * 1995-10-26 1998-06-09 Dragon Systems, Inc. Building speech models for new words in a multi-word utterance
US6212498B1 (en) * 1997-03-28 2001-04-03 Dragon Systems, Inc. Enrollment in speech recognition
US5933804A (en) * 1997-04-10 1999-08-03 Microsoft Corporation Extensible speech recognition system that provides a user with audio feedback
US5937380A (en) * 1997-06-27 1999-08-10 M.H. Segan Limited Partenship Keypad-assisted speech recognition for text or command input to concurrently-running computer application
US6078885A (en) * 1998-05-08 2000-06-20 At&T Corp Verbal, fully automatic dictionary updates by end-users of speech synthesis and recognition systems

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60113298A (ja) * 1983-11-24 1985-06-19 富士通株式会社 特定話者音声認識装置
JPS63149699A (ja) * 1986-12-15 1988-06-22 富士通株式会社 音声入出力装置
JPH01106098A (ja) * 1987-10-20 1989-04-24 Sanyo Electric Co Ltd 音声認識システム
JPH02193199A (ja) * 1988-12-07 1990-07-30 Philips Gloeilampenfab:Nv 音声認識システム

Also Published As

Publication number Publication date
EP0965978A1 (en) 1999-12-22
DE69923379T2 (de) 2006-02-16
JP2000035795A (ja) 2000-02-02
EP0965978B1 (en) 2005-01-26
US6163768A (en) 2000-12-19
DE69923379D1 (de) 2005-03-03
EP0965978B9 (en) 2005-06-08
US6424943B1 (en) 2002-07-23

Similar Documents

Publication Publication Date Title
JP4510953B2 (ja) 音声認識におけるノンインタラクティブ方式のエンロールメント
JP4444396B2 (ja) 音声認識におけるポジション操作
EP0867857B1 (en) Enrolment in speech recognition
US7085716B1 (en) Speech recognition using word-in-phrase command
EP0376501B1 (en) Speech recognition system
US8280733B2 (en) Automatic speech recognition learning using categorization and selective incorporation of user-initiated corrections
US7315818B2 (en) Error correction in speech recognition
US6064959A (en) Error correction in speech recognition
EP1366490B1 (en) Hierarchichal language models
US6910012B2 (en) Method and system for speech recognition using phonetically similar word alternatives
US6092044A (en) Pronunciation generation in speech recognition
US20030216912A1 (en) Speech recognition method and speech recognition apparatus
JP3847879B2 (ja) 標準モデル決定方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060613

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091015

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100114

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100119

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100212

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100407

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100506

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130514

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4510953

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130514

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees