(57)【要約】【課題】音響情報から意味的な意図を識別するためのシステムおよび方法を提供する。【解決手段】本発明の一実施形態によれば、オーディオデータ中で、予期されない意味的な意図が、教師なし方式で発見される。例えば、オーディオ音響は意味的な意図に基づいてクラスタリングされ、クラスタごとに代表的な音響が選択される。この場合、人間は、予見されない意味的な意図を識別するのに、クラスタごとに少数の（おそらくは１クラスタにつき１つだけの）代表的な音響を聞くだけで済む。【選択図】図４
2006171710.tif 000002
【特許請求の範囲】
【請求項１】
音響情報を処理する方法であって、
当該の音響情報の複数のセットをデータストアから抽出することと、
前記音響情報に対して音声認識を実施して音声認識結果を得ることと、
前記音声認識結果の意味解析に基づいて前記音響情報セットをクラスタにクラスタリングすることと、
各クラスタにつき、対応するクラスタの代表として音響情報のセットを識別することと
を含むことを特徴とする方法。
【請求項２】
クラスタリングすることは、
前記対応する音声認識結果が類似の意味解析を有する場合に、前記音響情報セットを共にクラスタリングすることを含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記意味解析は、前記音声認識結果によって表現される意味的な意図を表し、クラスタリングすることは、
類似の意味的な意図を含む対応する音声認識結果を有する音響情報のセットをクラスタリングすることを含むことを特徴とする請求項２に記載の方法。
【請求項４】
クラスタリングすることは、
前記音声認識結果中の辞書項目に基づいてクラスタを初期化することと、
前記初期化されたクラスタに前記音声認識結果を割り当てることと、
類似のクラスタをマージすることと、
前記クラスタに前記音声認識結果を再割当てすることと
を含むことを特徴とする請求項３に記載の方法。
【請求項５】
クラスタを初期化することは、
前記音声認識結果中の各辞書項目に対応するクラスタを生成することと、
各クラスタにつき、前記クラスタに対応する前記辞書項目を含む音声認識結果の数に基づいて事前確率を計算することと
を含むことを特徴とする請求項４に記載の方法。
【請求項６】
割り当てることは、
各クラスタに対応する言語モデルを、前記クラスタに割り当てられた前記音声認識結果に基づいて生成することを含むことを特徴とする請求項４に記載の方法。
【請求項７】
割り当てることは、
前記クラスタに対応する前記言語モデルが前記音声認識結果を生み出す確率に基づいて、前記クラスタに対する音声認識結果の割当てを精緻化することと、
前記クラスタに対応する前記言語モデルを再生成することと
を含むことを特徴とする請求項６に記載の方法。
【請求項８】
初期化することは、
前記音声認識結果中で表れる回数が不十分な辞書項目に対応するクラスタを除去することを含むことを特徴とする請求項４に記載の方法。
【請求項９】
マージすることは、
１対のクラスタ間の距離を計算することと、
前記計算された距離がしきい値距離を満たす場合に前記クラスタの対を１つのクラスタにマージすることと、
クラスタの複数の対について前記計算することおよびマージすることを実施して、精緻化済みクラスタセットを得ることと
を含むことを特徴とする請求項４に記載の方法。
【請求項１０】
マージすることは、定義された補助関数が所定量だけ変化するまでクラスタをマージすることを含むことを特徴とする請求項４に記載の方法。
【請求項１１】
マージすることは、
反復的にクラスタをマージしてクラスタに音声認識結果を再割当てすることを含むことを特徴とする請求項４に記載の方法。
【請求項１２】
再割当てすることは、
前記精緻化済みクラスタセットに前記音声認識結果を再割当てして精緻化済みクラスタのセットを得ることを含むことを特徴とする請求項９に記載の方法。
【請求項１３】
クラスタリングすることはさらに、
前記精緻化済みの各クラスタにおける前記音声認識結果の相互の類似性に基づいて、前記精緻化済みクラスタのセットをフィルタリングして、フィルタリング済みクラスタを得ることを含むことを特徴とする請求項１２に記載の方法。
【請求項１４】
フィルタリングすることは、
コンパクト性しきい値を超過するコンパクト性を有するクラスタを除去することを含むことを特徴とする請求項１３に記載の方法。
【請求項１５】
前記フィルタリング済みクラスタに割り当てられた前記音声認識結果に基づいて、前記フィルタリング済みクラスタをランク付けすることをさらに含むことを特徴とする請求項１３に記載の方法。
【請求項１６】
音響情報のセットを代表として識別することは、
所与のクラスタに割り当てられた各音声認識結果と、前記所与のクラスタに割り当てられた他の音声認識結果との間の類似性の距離を計算することと、
前記所与のクラスタ中で前記他の音声認識結果との類似性の距離が最も短い音声認識結果を識別することと、
前記識別された音声認識結果に対応する前記音響情報セットを、前記所与のクラスタの前記代表的な音響情報セットとして識別することとを含むことを特徴とする請求項１５に記載の方法。
【請求項１７】
音響情報を代表として識別することは、
前記対応するクラスタを仮定した場合の、前記音響情報で表される音声が生成される尤度に基づいて、前記音響情報を識別することを含むことを特徴とする請求項１に記載の方法。
【請求項１８】
当該の音響情報のセットを抽出することは、
人間−機械インタフェースアプリケーションによってカバーされる意味的な意図を示す入力音声を処理するように構成された前記アプリケーションによって記憶された当該の音響情報を識別することを含むことを特徴とする請求項４に記載の方法。
【請求項１９】
各クラスタの前記代表的な音響情報セットを、前記アプリケーションによってカバーされる意味的な意図を表すものとして、または未だ表されていない意味的な意図として識別することをさらに含むことを特徴とする請求項１８に記載の方法。
【請求項２０】
前記アプリケーションはアプリケーション文法を使用して前記入力音声を処理し、前記音響情報に対して音声認識を実施することは、
前記アプリケーション文法および第２の文法を使用して音声認識を実施することと、
前記音声認識結果が前記アプリケーション文法を使用して生成されたのか前記第２の文法を使用して生成されたのかを識別することと
を含み、
所与のクラスタの前記代表的な音響情報セットを、前記アプリケーションによってカバーされる意味的な意図を表すものとして、または未だ表されていない意味的な意図として識別することは、前記所与のクラスタに割り当てられた前記音声認識結果が前記アプリケーション文法を使用して生成されたのか前記第２の文法を使用して生成されたのかを判定することに基づいて実施されることを特徴とする請求項１９に記載の方法。
【請求項２１】
前記アプリケーションは自動音声応答アプリケーションを含み、抽出することは、
前記アプリケーションによって受け取られた記憶済み通話ログ情報を抽出することを含むことを特徴とする請求項１８に記載の方法。
【請求項２２】
前記記憶済み通話ログ情報は、前記通話ログ情報が、発呼側が電話を早く切りすぎた失敗通話から生成されたかどうかを示すことを特徴とする請求項２１に記載の方法。
【請求項２３】
所与の各クラスタに割り当てられた前記音声認識結果が失敗通話からの音響情報に対応するかどうかに基づいて、前記所与のクラスタの前記代表的な音響情報セットを、前記アプリケーションによってカバーされる意味的な意図を表すものとして、または未だ表されていない意味的な意図として識別することを特徴とする請求項２２に記載の方法。
【請求項２４】
抽出することは、
失敗通話から生成された音響情報だけを抽出することを含むことを特徴とする請求項２２に記載の方法。
【請求項２５】
未だ表されていない意味的な意図に対応するために、前記アプリケーションによって使用される文法の改訂を生成することをさらに含むことを特徴とする請求項１９に記載の方法。
【請求項２６】
改訂を生成することは、
各クラスタの言語モデルを生成することと、
前記代表的な音響情報セットが未だ表されていない意味的な意図に対応しているクラスタに対する前記言語モデルを、前記改訂として出力することとを含むことを特徴とする請求項２５に記載の方法。
【請求項２７】
音響情報を処理するためのシステムであって、
アプリケーションからの音響情報のセットを、前記音響情報セットに対して実施された音声認識の音声認識結果の意味解析に基づいてクラスタにクラスタリングし、各クラスタにつき、対応するクラスタの代表として音響情報のセットを識別するように構成されたクラスタリングコンポーネントを備えることを特徴とするシステム。
【請求項２８】
前記意味解析は、前記音声認識結果によって表現される意味的な意図を示し、前記クラスタリングコンポーネントは、類似の意味的な意図を含む対応する音声認識結果を有する音響情報のセットをクラスタリングするように構成されたことを特徴とする請求項２７に記載のシステム。
【請求項２９】
前記クラスタリングコンポーネントは、
言語モデルベースのクラスタリングコンポーネントを備え、前記言語モデルベースのクラスタリングコンポーネントは、前記音声認識結果中の辞書項目に基づいてクラスタを初期化し、前記初期化されたクラスタに前記音声認識結果を割り当て、各クラスタに割り当てられた前記音声認識結果に基づいて各クラスタの言語モデルを生成し、前記言語モデルによって生成された確率に基づいて前記クラスタに対する前記音声認識結果の割当てを精緻化するように構成されたことを特徴とする請求項２８に記載のシステム。
【請求項３０】
前記クラスタリングコンポーネントは、類似のクラスタを相互にマージしてマージ済みクラスタを得て、前記マージ済みクラスタに前記音声認識結果を再割当てするように構成されたことを特徴とする請求項２９に記載のシステム。
【請求項３１】
前記クラスタリングコンポーネントは、前記音声認識結果中の各辞書項目に対応するクラスタを生成し、各クラスタにつき、前記クラスタに対応する前記辞書項目を含む音声認識結果の数に基づいて事前確率を計算することによって、前記クラスタを初期化するように構成されたことを特徴とする請求項２９に記載のシステム。
【請求項３２】
前記クラスタリングコンポーネントは、１対のクラスタ間の距離を計算し、前記計算された距離がしきい値距離を満たす場合に前記クラスタの対を１つのクラスタにマージし、クラスタの複数の対について前記計算することおよびマージすることを実施して、精緻化済みクラスタセットを得ることによって、類似のクラスタをマージするように構成されたことを特徴とする請求項２９に記載のシステム。
【請求項３３】
前記クラスタリングコンポーネントは、前記精緻化済みクラスタセットに前記音声認識結果を再割当てして精緻化済みクラスタのセットを得るように構成されたことを特徴とする請求項３２に記載のシステム。
【請求項３４】
前記クラスタリングコンポーネントはさらに、
前記精緻化済みの各クラスタにおける前記音声認識結果の相互の類似性に基づいて、前記精緻化済みクラスタのセットをフィルタリングして、フィルタリング済みクラスタを得るように構成されたフィルタリングコンポーネントを備えることを特徴とする請求項３３に記載のシステム。
【請求項３５】
前記クラスタリングコンポーネントは、所与のクラスタに割り当てられた各音声認識結果と、前記所与のクラスタに割り当てられた他の音声認識結果との間の類似性の距離を計算し、前記所与のクラスタ中で前記他の音声認識結果との類似性の距離が最も短い音声認識結果を識別し、前記識別された音声認識結果に対応する前記音響情報セットを、前記所与のクラスタの前記代表的な音響情報セットとして識別することによって、音響情報のセットを代表として識別するように構成されたことを特徴とする請求項３４に記載のシステム。
【請求項３６】
前記アプリケーションは文法に基づいて入力音響音声情報を処理し、前記クラスタリングコンポーネントはさらに、各クラスタの前記代表的な音響情報セットを、前記文法によってカバーされる意味的な意図を表すものとして、または未だ表されていない意味的な意図として識別するように構成されたことを特徴とする請求項３５に記載のシステム。
【請求項３７】
前記クラスタリングコンポーネントはさらに、
未だ表されていない意味的な意図に対応するために、前記アプリケーションによって使用される前記文法の改訂を生成するように構成された文法更新コンポーネントを備えることを特徴とする請求項３６に記載のシステム。
【請求項３８】
命令を記憶したコンピュータ可読媒体であって、前記命令は、コンピュータによって実行されたとき、
当該の音響情報の複数のセットをデータストアから抽出することと、
前記音響情報に対して音声認識を実施して音声認識結果を得ることと、
前記音声認識結果の意味解析に基づいて前記音響情報セットをクラスタにクラスタリングすることと、
各クラスタにつき、対応するクラスタの代表として音響情報のセットを識別することとを実施することによって前記コンピュータに音響情報を処理させることを特徴とするコンピュータ可読媒体。
【請求項３９】
クラスタリングすることは、
前記対応する音声認識結果が類似の意味解析を有する場合に、前記音響情報セットを共にクラスタリングすることを含むことを特徴とする請求項３８に記載のコンピュータ可読媒体。
【請求項４０】
前記意味解析は、前記音声認識結果によって表現される意味的な意図を表し、クラスタリングすることは、
類似の意味的な意図を含む対応する音声認識結果を有する音響情報のセットをクラスタリングすることを含むことを特徴とする請求項３９に記載のコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音響情報中で意味的な意図(semantic intent)を識別することを対象とする。より詳細には、本発明は、音響情報（通話ログからの音響情報など）を、それぞれが意味的な意図のカテゴリを表すクラスタに分類することを対象とする。
【背景技術】
【０００２】
人間と機械との対話の促進において、自動音声応答システムがますます普及してきた。従来の自動音声応答システムでは、ユーザは、電話機を使用してシステムに電話をかけ、次いで音声応答メニューをナビゲートして、所望の情報を受け取るかまたは所望の宛先に繋いでもらうことができる。例えば、このようなシステムのいくつかでは、ユーザは電話をかけて、特定のビジネスとのユーザの会計に関する会計概要を調べることができる。この場合、ユーザは、音声コマンドを使用して会計概要メニューをナビゲートして、例えば会計バランスを得ることができる。
【０００３】
別のこのようなシステムでは、ユーザは、会社の総合電話番号をダイヤルし、音声応答メニューをナビゲートして、会社の特定の個人に接触するか、または「技術サービス」などの部門に接触することができる。
【０００４】
これらのタイプのシステムは、いくつかの問題に遭遇してきた。このようなシステムでは、単純なシステム主導型ダイアログアプリケーションのための言語モデル（ＬＭ）として、規則ベースの有限状態文法または文脈自由文法（ＣＦＧ、ｃｏｎｔｅｘｔ  ｆｒｅｅ  ｇｒａｍｍａｒ）が使用されることが多い。このタイプの制限付き戦略はしばしば、文法内の発話の場合には高い認識性能になるが、ユーザの応答が文法に含まれていないときは完全に失敗する。
【０００５】
このような「文法外の発話」には、少なくとも２つの原因がある。第１に、発話の構文上の構造がＣＦＧによって一貫して解析されない場合がある。例えば、「２０日、７月」というユーザの応答は、規則［月］［日］を含むように構造化された文法中で失敗を引き起こすことがある。第２に、ユーザの発話が、文法の作者によって予期されなかった意味的な意図を反映する場合がある。例えば、会社の音声ダイヤラアプリケーションで、「お早うございます。誰とお話しになりたいですか。」という開始プロンプトへの応答に関する文法は、ユーザが名前を言うことを予想して設計することができる。しかし、ユーザはそうではなく「人事部」などの部門を特定することによって応答することがある。  
【０００６】
【非特許文献１】T M Cover and J A Thomas, Elements of Information Theory, Wiley  (1991)
【非特許文献２】Young, Odell and Woodland, Tree-Based State Tying for High Accuracy Acoustic Modeling, ARPA, pages 307-312 (March 1994)
【非特許文献３】Hwang and Huang, Shared-Distribution Hidden Markov Models for Speech Recognition, IEEE TSAP, volume 1, number 4, pages 414-420 (1993)
【発明の開示】
【発明が解決しようとする課題】
【０００７】
要約すると、アプリケーション設計段階では、ユーザが要求を言える様々な言い方すべてをアプリケーション開発者が予期するのは困難であり、これは第１の問題になる。同様に、ユーザが有するかもしれない様々な意味的な意図すべてをアプリケーション開発者が予期するのは困難であり、これは第２の問題になる。
【０００８】
第１の問題（ユーザが要求を言える様々な言い方を予期することの困難さ）に対処するための多くの試みは、より頑強な言語モデルを構築することによってなされてきた。例えば、手作業のオーサリングで文脈自由文法（ＣＦＧ）を統計的言語モデルと組み合わせることが試みられてきた。
【０００９】
第２の問題（ユーザによって使用される様々な意味的な意図すべてを予期すること）を解決する従来の試みは通常、実際のユーザ通話からの、文字化されて意味的な注釈が付された大量のデータを必要とする。当然、このデータを生成するのは極度に高価である傾向がある。例えば、このタイプの意味注釈付きデータを生成するには、実際の着信通話を録音しなければならない。次いで通常、人間がこれらの録音すべてを聞いて、発呼側によって使用されたが開発者によってまだ予想または予期されていない意味的な意図があれば、それらを識別しなければならない。しかし、大きな会社が、有用な量のデータを得るのに必要な通話ボリュームを生成する場合に、この会社は１日に数千件もの電話を受けることがある。対話式音声応答ユニットで失敗した通話（例えば電話が切られて終了した通話）だけを人間が聞く場合であっても、また、これらの通話が通話ボリューム全体の１０〜２０％しか占めない場合であっても、人間は毎日何百件もの通話を聞く必要がある。これは極度に時間がかかり高価である。
【課題を解決するための手段】
【００１０】
本発明の一実施形態によれば、オーディオデータ中で、予期されない意味的な意図が、教師なし(unsupervised)方式で発見される。例えば、オーディオ音響は意味的な意図に基づいてクラスタリングされ、クラスタごとに代表的な音響が選択される。この場合、人間は、予見されない意味的な意図を識別するのに、クラスタごとの（おそらくは１クラスタにつき１つだけの）少数の代表的な音響を聞くだけで済む。
【００１１】
音響に音声認識が施される。次いで、音響自体に対してではなく音声認識結果に対してクラスタリングが実施される。開発者は、音声認識結果を検討することによって、未知の意味的な意図を識別することができるであろう。
【００１２】
一実施形態では、開発者は、予期されない意味的な意図を識別するためには、いずれかの音響を聞く必要さえもない。そうではなく、音声認識プロセスで音響クラスタがアプリケーション文法を使用して認識されたか、それともバックグラウンド文法を使用して認識されたかを追跡することによって、新しい意味的な意図は自動的に決定されるものとすることができる。アプリケーション文法からの規則を使用してこれらが認識された場合は、意味的な意図はすでにアプリケーション文法中に存在し、新しいものではない。しかし、バックグラウンド文法を使用してこれらが認識された場合は、意味的な意図はアプリケーション文法中で表されておらず、新しいまたは予期されない意味的な意図として識別される。
【００１３】
一実施形態によれば、クラスタは自動的に分析され、人間−機械インタフェース（ＡＶＲシステムなど）中のアプリケーション文法または言語モデルの、可能な追加の規則または改訂が自動的に提案される。
【発明を実施するための最良の形態】
【００１４】
Ａ  コンピューティングシステムの概観
本発明は、音響データ中で、予見または予期されない意味的な意図を識別することに関する。しかし、本発明をより詳細に論じる前に、本発明を使用することのできる例示的な一環境について論じる。
【００１５】
図１に、本発明を実施することのできる適切なコンピューティングシステム環境の例１００を示す。コンピューティングシステム環境１００は、適切なコンピューティング環境の一例にすぎず、本発明の使用または機能の範囲についてどんな限定を意味するものでもない。またコンピューティング環境１００は、この例示的な動作環境１００に示すコンポーネントのいずれか１つまたは組合せに関してどんな依存や要件を有するものとも解釈すべきではない。
【００１６】
本発明は、その他多くの汎用または専用コンピューティングシステム環境または構成でも機能する。本発明で使用するのに適する周知のコンピューティングシステム、環境、および／または構成の例には、限定しないがパーソナルコンピュータ、サーバコンピュータ、ハンドヘルドデバイスまたはラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、プログラム可能な民生用電子機器、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータや、これらのシステムまたはデバイスのいずれかを含む分散コンピューティング環境などが含まれる。
【００１７】
本発明は、プログラムモジュールなど、コンピュータによって実行されるコンピュータ実行可能命令の一般的なコンテキストで述べることができる。一般に、プログラムモジュールは、特定のタスクを実施するか特定の抽象データ型を実現するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。本発明は分散コンピューティング環境で実施することもでき、その場合、タスクは通信ネットワークを介してリンクされたリモート処理デバイスによって実施される。分散コンピューティング環境では、プログラムモジュールは、メモリ記憶デバイスを含めたローカルとリモートの両方のコンピュータ記憶媒体に位置することができる。
【００１８】
図１を参照すると、本発明を実施するための例示的なシステムは、コンピュータ１１０の形の汎用コンピューティングデバイスを含む。コンピュータ１１０のコンポーネントには、限定しないが処理ユニット１２０と、システムメモリ１３０と、システムメモリを含めた様々なシステムコンポーネントを処理ユニット１２０に結合するシステムバス１２１とを含めることができる。システムバス１２１は、様々なバスアーキテクチャのいずれかを用いた、メモリバスまたはメモリコントローラ、周辺バス、ローカルバスを含めて、いくつかのタイプのバス構造のいずれかとすることができる。限定ではなく例として、このようなアーキテクチャには、ＩＳＡ（Ｉｎｄｕｓｔｒｙ  Ｓｔａｎｄａｒｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ）バス、ＭＣＡ（Ｍｉｃｒｏ  Ｃｈａｎｎｅｌ  Ａｒｃｈｉｔｅｃｔｕｒｅ）バス、ＥＩＳＡ（Ｅｎｈａｎｃｅｄ  ＩＳＡ）バス、ＶＥＳＡ（Ｖｉｄｅｏ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｓｔａｎｄａｒｄｓ  Ａｓｓｏｃｉａｔｉｏｎ）ローカルバス、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）バス（メザニンバスとも呼ばれる）が含まれる。
【００１９】
コンピュータ１１０は通常、様々なコンピュータ可読媒体を備える。コンピュータ可読媒体は、コンピュータ１１０からアクセスできる任意の利用可能な媒体とすることができ、揮発性と不揮発性の媒体、着脱式と固定式の媒体の両方がこれに含まれる。限定ではなく例として、コンピュータ可読媒体には、コンピュータ記憶媒体および通信媒体を含めることができる。コンピュータ記憶媒体には、コンピュータ可読命令、データ構造、プログラムモジュール、その他のデータなどの情報を記憶するための任意の方法または技術で実現された、揮発性と不揮発性、着脱式と固定式の両方の媒体が含まれる。コンピュータ記憶媒体には、限定しないがＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリまたはその他のメモリ技術、ＣＤ−ＲＯＭ、ディジタル多用途ディスク（ＤＶＤ）またはその他の光ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置またはその他の磁気記憶デバイスが含まれ、あるいは、所望の情報を記憶するのに使用できコンピュータ１００からアクセスできるその他の任意の媒体が含まれる。通信媒体は通常、コンピュータ可読命令、データ構造、プログラムモジュール、またはその他のデータを、搬送波やその他のトランスポート機構などの被変調データ信号に組み入れるものであり、任意の情報送達媒体がこれに含まれる。用語「被変調データ信号」は、信号中の情報が符号化される形で１つまたは複数の特性が設定または変更される信号を意味する。限定ではなく例として、通信媒体には、有線ネットワークや直接有線接続などの有線媒体と、音響、無線周波数、赤外線などの無線媒体およびその他の無線媒体とが含まれる。以上のいずれかの組合せもコンピュータ可読媒体の範囲に含めるべきである。
【００２０】
システムメモリ１３０は、読取り専用メモリ（ＲＯＭ）１３１やランダムアクセスメモリ（ＲＡＭ）１３２など、揮発性および／または不揮発性メモリの形のコンピュータ記憶媒体を含む。ＲＯＭ１３１には通常、起動中などにコンピュータ１１０内の要素間で情報を転送するのを助ける基本ルーチンを含むＢＩＯＳ（ｂａｓｉｃ  ｉｎｐｕｔ／ｏｕｔｐｕｔ  ｓｙｓｔｅｍ）１３３が記憶されている。ＲＡＭ１３２は通常、処理ユニット１２０がすぐにアクセス可能な、かつ／または処理ユニット１２０が現在作用している、データおよび／またはプログラムモジュールを含む。限定ではなく例として、図１には、オペレーティングシステム１３４、アプリケーションプログラム１３５、その他のプログラムモジュール１３６、プログラムデータ１３７を示す。
【００２１】
コンピュータ１１０は、その他の着脱式／固定式、揮発性／不揮発性コンピュータ記憶媒体を備えることもできる。例にすぎないが図１には、固定式で不揮発性の磁気媒体に対して読み書きするハードディスクドライブ１４１と、着脱式の不揮発性の磁気ディスク１５２に対して読み書きする磁気ディスクドライブ１５１と、ＣＤ  ＲＯＭやその他の光媒体など着脱式の不揮発性の光ディスク１５６に対して読み書きする光ディスクドライブ１５５を示す。この例示的な動作環境で使用できるその他の着脱式／固定式、揮発性／不揮発性コンピュータ記憶媒体には、限定しないが磁気テープカセット、フラッシュメモリカード、ディジタル多用途ディスク、ディジタルビデオテープ、固体ＲＡＭ、固体ＲＯＭなどが含まれる。ハードディスクドライブ１４１は通常、インタフェース１４０などの固定式メモリインタフェースを介してシステムバス１２１に接続され、磁気ディスクドライブ１５１および光ディスクドライブ１５５は通常、インタフェース１５０などの着脱式メモリインタフェースでシステムバス１２１に接続される。
【００２２】
以上に論じ図１に示したドライブおよびそれらに関連するコンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、その他のデータの記憶域をコンピュータ１１０に提供する。例えば図１には、ハードディスクドライブ１４１がオペレーティングシステム１４４、アプリケーションプログラム１４５、その他のプログラムモジュール１４６、プログラムデータ１４７を記憶しているのが示されている。これらのコンポーネントは、オペレーティングシステム１３４、アプリケーションプログラム１３５、その他のプログラムモジュール１３６、プログラムデータ１３７と同じものとすることもでき、異なるものとすることもできることに留意されたい。ここでは、オペレーティングシステム１４４、アプリケーションプログラム１４５、その他のプログラムモジュール１４６、プログラムデータ１４７が少なくとも異なるコピーであることを示すために、異なる番号を付けてある。
【００２３】
ユーザは、キーボード１６２、マイクロホン１６３、ポインティングデバイス１６１（マウス、トラックボール、タッチパッド等）などの入力デバイスを介して、コンピュータ１１０にコマンドおよび情報を入力することができる。その他の入力デバイス（図示せず）には、ジョイスティック、ゲームパッド、衛星受信アンテナ、スキャナなどを含めることができる。これらおよび他の入力デバイスは、システムバスに結合されたユーザ入力インタフェース１６０を介して処理ユニット１２０に接続されることが多いが、パラレルポート、ゲームポート、ユニバーサルシリアルバス（ＵＳＢ）など、その他のインタフェースおよびバス構造で接続されてもよい。モニタ１９１または他のタイプの表示デバイスも、ビデオインタフェース１９０などのインタフェースを介してシステムバス１２１に接続される。モニタに加えて、コンピュータは、スピーカ１９７やプリンタ１９６など、その他の周辺出力デバイスも備えることができ、これらは出力周辺インタフェース１９５を介して接続することができる。
【００２４】
コンピュータ１１０は、リモートコンピュータ１８０など１つまたは複数のリモートコンピュータへの論理接続を用いて、ネットワーク化された環境で動作することができる。リモートコンピュータ１８０は、パーソナルコンピュータ、ハンドヘルドデバイス、サーバ、ルータ、ネットワークＰＣ、ピアデバイス、またはその他の一般的なネットワークノードとすることができ、通常はコンピュータ１１０に関して上述した要素の多くまたはすべてを備える。図１に示す論理接続は、ローカルエリアネットワーク（ＬＡＮ）１７１およびワイドエリアネットワーク（ＷＡＮ）１７３を含むが、その他のネットワークを含むこともできる。このようなネットワーキング環境は、オフィス、企業全体のコンピュータネットワーク、イントラネット、インターネットでよくみられる。
【００２５】
ＬＡＮネットワーキング環境で使用されるときは、コンピュータ１１０は、ネットワークインタフェースまたはアダプタ１７０を介してＬＡＮ１７１に接続される。ＷＡＮネットワーキング環境で使用されるときは、コンピュータ１１０は通常、インターネットなどのＷＡＮ１７３を介した通信を確立するためのモデム１７２または他の手段を備える。モデム１７２は内蔵でも外付けでもよく、ユーザ入力インタフェース１６０または他の適切な機構を介してシステムバス１２１に接続することができる。ネットワーク化された環境では、コンピュータ１１０に関して示したプログラムモジュールまたはその一部をリモートのメモリ記憶デバイスに記憶することができる。限定ではなく例として、図１には、リモートアプリケーションプログラム１８５がリモートコンピュータ１８０上にあるのが示されている。図示のネットワーク接続は例示的なものであり、コンピュータ間で通信リンクを確立するための他の手段を使用してもよいことは理解されるであろう。
【００２６】
Ｂ  音響処理システムの概観
図２に、予期されない意味的な意図に対応するために、音響を意味的な意図でクラスタリングし、任意選択で文法の更新を提案するのに使用することのできる、音響処理システム２００を示す。システム２００は、クラスタリングシステム２０２を備え、クラスタリングシステム２０２自体は、言語モデルベースのクラスタリングシステム２０４と、ランク付けおよびフィルタリングシステム２０６と、任意選択の文法更新システム２０８とを備える。図２にはまた、クラスタリングシステム２０２が、音声認識システム２１０および自動音声応答（ＡＶＲ）システム（またはアプリケーション）２１２に結合されているのも示す。
【００２７】
ＡＶＲシステム（またはアプリケーション）２１２は例示的に、人間からの音声コマンドを受け取ってこれらのコマンドに基づいて動作を行おうとする、人間−機械インタフェースである。例示的な一実施形態では、音声コマンドは電話機で受け取られる。ＡＶＲシステムはまた例示的に、受け取ったオーディオコマンドを表す音響データを記録（または記憶）する。特定の一実施形態では、ＡＶＲシステム２１２は、電話を受信および転送するために会社に配置された自動受付システムである。
【００２８】
音声認識システム２１０は例示的に、従来型の音声認識システムであり、例示的に、後述するクラスタリングシステム２０２中で使用されるのと同じ音響モデルを使用する。音声認識システム２１０は例示的に、大きな語彙を利用し、したがってこれは、大きな一般化された語彙レコグナイザである。あるいは音声認識システム２１０は、大きな一般化された語彙レコグナイザと共に、領域内（または文脈特有）レコグナイザを備えることもできる。
【００２９】
クラスタリングシステム２０２は、音声認識結果に基づいて、記憶された音響をクラスタリングする。各クラスタは例示的に、そのクラスタ中の音響で表現される意味的な意図を示す。システム２０２はまた、一実施形態では、ＡＶＲシステム２１２中のアプリケーション文法の改訂を提案することもできる。
【００３０】
図３は、図２に示したシステム２００の全体的な動作を例示する流れ図である。最初に、ＡＶＲシステム２１２中の所望の通話ログから、音響情報が抽出される。通話ログ情報を図２のブロック２１４で表し、抽出ステップを図３のブロック２１６で表す。抽出される所望の通話ログ情報は、意味的な意図が回復されるべき音響波形で表される。これらの当該の通話ログは、様々な方法で識別することができる。例えば、当該の通話ログは、ＡＶＲシステム２１２における失敗した通話に対応する音響情報とすることができる。また、ＡＶＲシステム２１２におけるすべての失敗した通話からの、特定プロンプトへの応答とすることもできる。失敗したというのは、一般に、発呼側が電話を切るのが早すぎたこと（例えば所望の目的を達成する前に電話を切ったか、またはＡＶＲシステム２１２中の所望のダイアログ状態に達する前に電話を切ったこと）が意味される。例えば特定の一例では、当該の通話ログ情報は、発呼側が業務を完了する前または人と話す前に切ったすべての通話で、プロンプト「お早うございます。誰とお話しになりたいですか。」に応答して提供された音響波形とすることができる。当然、当該の通話ログ情報２１４は、望むように、所与の期間にわたって録音されたすべての音響とすることもでき、あるいはこれらの音響の異なるサブセットとすることもできる。
【００３１】
当該の通話ログ情報が抽出されると、これは音声認識システム２１０に提供され、ここで、抽出された音響に対して音声認識が実施される。音声認識結果を図２のブロック２１８で示し、通話ログ情報２１４に対する音声認識の実施を図３のブロック２２０で示す。
【００３２】
音声認識結果２１８は、異なる様々な形のうちの１つをとることができる。例えば、結果２１８は、音声認識システム２１０によって認識された１ベスト（ｏｎｅ−ｂｅｓｔ）仮説、Ｎベスト（ｎ−ｂｅｓｔ）仮説、または認識ラティスとすることができ、これらはすべて、音声認識システムからの、知られているタイプの出力である。当然、音声認識システム２１０が、ＡＶＲシステム２１２によって使用されるアプリケーション文法に含まれない単語をカバーすることが重要である。これは、抽出された通話ログ中で表現されている新しいまたは予期されない意味的な意図の中にあるほとんどの単語が、音声認識システム２１０によってカバーされ認識できることを、保証するためである。しかし、すべての単語が音声認識システム２１０の文法適用範囲内にある必要はなく、すべての波形が正しく認識されるようにする必要もない。このクラスタリングシステム中では、類似するセマンティクスを有する複数の音響波形の認識結果が一貫している限り、たとえこれらが不正確な認識結果であっても、単語レベル認識を使用することができる。例えば、「ｇｏｏｄ  ｍｏｒｎｉｎｇ」という句を表す音響波形が一貫して「ｇｅｔ  ｍｏｒｎｉｎｇ」と認識される限り、これらの結果は、正しくなくてもクラスタリングシステム２０２によって使用することができる。
【００３３】
音声認識結果２１８は、クラスタリングシステム２０２に、具体的には言語モデルベースのクラスタリングシステム２０４に提供される。言語モデルベースのクラスタリングシステム２０４の詳細な動作については、後で図４および５に関して述べる。ここでは、ＡＶＲシステム２１２から抽出された当該の音響通話ログ情報２１４が、この音響情報に対応する音声認識結果２１８で表される意味的な意図に基づいて、システム２０４によって実施される言語モデルクラスタリング手法を用いてクラスタリングされると言うだけで十分であろう。例えば、各音響波形は、その認識結果２１８で表される。クラスタは、クラスタごとの生成言語モデルでモデル化され、生成言語モデルは、単語シーケンスの生成モデルである。あるクラスタを仮定した場合の音響波形の確率は、基本的に、そのクラスタ言語モデルを仮定した場合のその認識結果の確率である。これについては、後で図４および５に関してより詳細に述べる。
【００３４】
意味ベースのクラスタ２２２が、システム２０４によって出力される。音声認識結果２１８に基づいて言語モデルベースで音響のクラスタリングを実施することを、図３のブロック２２４で示す。
【００３５】
次いで、クラスタ２２２は、システム２０６によってランク付けされフィルタリングされる。クラスタリングシステム２０４によって実施されるクラスタリングの結果として、多量のクラスタが生じる場合がある。そのため、時間およびリソースを節約するために、これらのクラスタのいくつかを、アプリケーション開発者への提示のために選択することが重要な場合がある。これは、クラスタを重要な順にランク付けし、重要でないまたは「ガベージ」クラスタをフィルタリングして除去し、単純かつ相対的に自己記述的な方式でクラスタを提示することを含む。
【００３６】
本発明の一実施形態によれば、クラスタ２２２は、それらの頻度に基づいて（すなわちクラスタに含まれる発話のインスタンスの数に基づいて）ランク付けされる。この情報は、意味的な意図がデータセット中でどのくらいの頻度で発生するかを示す。
【００３７】
クラスタ２２２が頻度に基づいてランク付けされると、これらはフィルタリングされる。高頻度のクラスタが必ずしも適切であるとは限らない。例えば、沈黙、雑音、またはその他の一貫性のない音声だけからなる通話が、比較的多数ある場合がある。これらの「ガベージ」発話は、例えば「ａ」「ｏｈ」「ｔｈｅ」など、何らかの機能語または単語シーケンスとして認識される傾向がある。これらは、高いクラスタ事前カウント(cluster prior count)で共にクラスタリングされる可能性が高い。しかし、これらのガベージ単語シーケンスは、有意義なセマンティクスを伴うクラスタ中の発話とは異なり、相互に一貫性があることはほとんどない。
【００３８】
したがって、本発明の一実施形態によれば、「一貫性」尺度を使用してガベージクラスタがフィルタリングされ除去される。この測定基準は「コンパクト性」と呼ぶこともできる。というのは、これは、大部分が一定のインスタンスであるクラスタを選び取ろうとして計算され、また、生成クラスタを代表するための「中央」インスタンスを識別しようとして計算されるものだからである。一実施形態では、最初に、２つの発話が共通して有する単語トークンの数を、両方のＮベスト復号結果中の単語トークンの総数で正規化した数として、２つの発話間で類似性尺度が定義される。次いで、クラスタ中のすべての発話の、対ごとの正規化済み類似性として、「一貫性」が定義される。しきい値よりも低い一貫性を有するクラスタは「ガベージ」と考えられ、廃棄される。しきい値は経験的に決定することができる。
【００３９】
一貫性しきい値を設定することにはトレードオフがあることは理解されるであろう。比較的高く設定された場合は、適切なクラスタだけが一貫性しきい値を満たすことになる可能性が高くなるが、この場合、システムはいくつかの重要なまたは適切なクラスタを廃棄するかもしれない。しきい値が比較的低く設定された場合は、システムがいずれかの適切なクラスタを見逃すかまたはフィルタリング除去する可能性は低いが、いくつかのガベージクラスタを含めることになる可能性はより高い。
【００４０】
ランク付けおよびフィルタリングシステム２０６は、クラスタをランク付けしてフィルタリングした後、残りの各クラスタを代表する中央発話を選択する。この発話は、同じクラスタ中にある他のすべての発話との類似性の合計が最も高くなるように選択することができ、あるいは他の方法で選択することもできる。これは結局、直感的にクラスタ中の最も代表的な発話になる可能性が高い。「類似性」の距離尺度は例示的に、クラスタのフィルタリング時に一貫性を定義するのに使用されたのと同じものである。
【００４１】
システム２０６によって出力された選択済みクラスタを、図２のブロック２２６で表し、クラスタをランク付けしフィルタリングして選択済みクラスタ２２６を得るプロセスを、図３のブロック２２８で示す。
【００４２】
例示的な一実施形態では、クラスタリングシステム２０２はこのステップの後で終了し、単に、選択済みクラスタ２２６を開発者による検討のために出力する。これを図３のブロック２３０で示す。この実施形態（選択済みクラスタ２２６が出力される）では、本発明は、アプリケーション開発者が検討する必要のあるクラスタの数を削減するのに効果的に役立つが、アプリケーション開発者は依然として、各選択済みクラスタ２２６の代表的な発話を精査することによって（または、音声認識結果がエラーを含む場合は、対応する音響を聞くことによって）、クラスタが予期されない意味的な意図を有するかどうか、またはＡＶＲシステム２１２によって使用されるアプリケーション文法にすでに存在する意味的な意図を有するかどうかを判定する必要がある。この実施形態でもやはり、選択済みクラスタ２２６の１つが新しい意味的な意図を有すると判定されると、アプリケーション開発者は例示的に、クラスタ中の単語シーケンスに対する必要な訂正があればそれらを生成し（上に論じたように音声認識結果がエラーを含む場合）、アプリケーション開発者はクラスタを使用して、訂正された単語シーケンスに基づく新しい文法規則を学習または生成することができる。新しい文法規則は、自動または手動で生成することができる。次いで、前に予期されていなかった意味的な意図に対応するために、更新された文法または規則を使用して、ＡＶＲシステム２１２によって使用される文法を更新することができる。
【００４３】
しかし、このクラスタリングシステム２０２は任意選択の文法更新システム２０８を備えることができることも理解されるであろう。文法更新システム２０８は、選択済みクラスタ２２６に基づいて、自動的に新しい文法規則を生成するかまたはアプリケーション文法を更新する。アプリケーション文法に対する提案される更新の１つは、単純に、クラスタに関して生成された言語モデルとすることができる。この場合、アプリケーション文法の最高規則に重みが与えられ、この重みは例示的に、他のすべての意味的な意図を表す新たに発見された他のすべての規則の重みの合計を１から引いた値とすることができる。このように、新しい規則または文法は、既存のアプリケーション文法に統合され、ＡＶＲシステム２１２によって使用することができる。更新されたアプリケーション文法を図２のブロック２３２で示し、アプリケーションによって使用される文法を自動的に更新するプロセスを、図３のブロック２３４で示す。
【００４４】
開発者を補助するために、本明細書で述べる実施形態にいくつかの修正を加えることもできる。例えば、選択済みクラスタが検討のために開発者に対して出力された場合、開発者は、どのクラスタがすでにアプリケーション文法によって表されているか、およびどれが新しいか（または予期されていないか）を決定する必要がある。こうするために、音声認識システム２１０は、大きな語彙レコグナイザを利用することができるだけでなく、ＡＶＲシステム２１２によって使用されるアプリケーション文法も利用することができる。この実施形態では、音声認識結果２１８が大きな語彙文法（またはバックグラウンド文法）を使用して生成されたがアプリケーション文法は使用されなかった場合、音声認識結果２１８にそのようにタグ付けすることができ、したがってこれらは、新しい意味的な意図（ＡＶＲシステム２１２によって使用される文法によって前に予期されていなかったもの）を表すものとして容易に識別することができる。しかし、音声認識結果２１８が、ＡＶＲシステム２１２によって使用されるアプリケーション文法を使用して音声認識システム２１０によって生成された場合は、音声認識結果２１８にそのようにタグ付けすることができ、これらは、アプリケーション文法によってすでにカバーされている意味的な意図を表すものとして容易に識別することができる。
【００４５】
結果がこのようにしてタグ付けされた場合は、各クラスタ中で、アプリケーション文法を使用して生成された音声認識結果を有する発話の数と、バックグラウンド文法を使用して生成された音声認識結果を有する発話の数とを単にカウントするだけで、クラスタを、予期されない意味的な意図を表すものとして、または前にカバーされた意味的な意図を表すものとして識別することができる。所与のクラスタ中にあるほとんどの発話がバックグラウンド文法を使用して生成されたものである場合は、開発者は、このクラスタが予期されない意味的な意図を表すものであると判定することを望むであろう。あるいは、クラスタに対応するほとんどの発話がアプリケーション文法を使用して生成されたものである場合は、開発者は、このクラスタによって表される意味的な意図がすでにアプリケーション文法によってカバーされていると判定することを望むであろう。当然、クラスタが新しい意味的な意図を表すのか、それとも既存の意味的な意図を表すのかを判定するためには、望むように様々な方式またはしきい値を使用することができる。
【００４６】
例えば、別々の文法から生成された音声認識結果は、多くのレキシコン項目を共有する可能性が低いので、これらの音声認識結果が共にクラスタリングされる可能性は低い。したがって、各クラスタが有する認識結果の際立って大部分は、両方ではなく一方の文法から生成されたものである可能性が高いことになる。したがって、代表的な発話のタグは、クラスタが既知の意味的な意図を表すのか予期されない意味的な意図を表すのかを示すのに十分であろう。
【００４７】
あるいは、失敗した通話だけをクラスタリングするのではなく、ＡＶＲシステム２１２へのすべての通話の音響情報を、通話が成功した場合であっても本発明により使用することができる。失敗した通話に対応する音響には、成功した通話に対応する音響スコアにタグ付けできるように容易にタグ付けすることができる。成功した通話に対応するものとしてタグ付けされた音響によって表される発話は、すでにアプリケーション文法によってカバーされている意味的な意図を含むと見なすことができる。失敗した通話に対応するものとしてタグ付けされた発話は、アプリケーション文法によって予期されない意味的な意図を含むと見なすことができる。当然、これにはアプリケーション文法が音声認識システム２１０によって利用される必要があるわけではないことは容易に理解されるであろうが、それでもやはり、これによって文法更新システム２０８は、クラスタが予期されない意味的な意図を表すのか、それともすでにシステム２１２に知られている意味的な意図を表すのかを自動的に判定することができる。
【００４８】
Ｃ  クラスタリングの詳細
図４は、クラスタリングシステム２０４によって使用される特定の言語モデルベースのクラスタリング手法の例示的な一実施形態をより詳細に示す流れ図である。例示的な一実施形態では生成マルコフモデルが使用され、この場合、音響モデルｐ（ｘ｜ｗ）に従って、単語シーケンスｗから発話の音響特徴シーケンスｘが生成され、クラスタごとのＮグラム言語モデルｐ（ｗ｜ｃ）に基づいて、意味的な意図（またはクラスタ）ｃから単語シーケンスｗが生成される。この場合、ｘ、ｗ、ｃの完全な尤度は以下の式になる。
式１
ｐ（ｘ，ｗ，ｃ）＝ｐ（ｘ｜ｗ）ｐ（ｗ｜ｃ）ｐ（ｃ）
【００４９】
このシステムは例示的に、意味的クラスタに対応するモデルを訓練して、尤度ｐ（ｘ）を最大化する。例示的な一実施形態では、固定の音響モデルｐ（ｘ｜ｗ）がクラスタリングにおいて使用される。このモデルは、大きな電話音声セットに対してオフラインで訓練される。クラスタごとのユニグラムを使用してｐ（ｗ｜ｃ）をモデル化することができ、文末確率はすべてのクラスタ間で等しく設定される。
【００５０】
前に触れたように、電話の適用例では、意味的な意図はしばしば非常に短い発話で表現される。したがって、ユニグラムを選択することができる。というのは、このような適用例では、意味的クラスタに対応するユニグラム言語モデルは、バイグラム（またはトライグラム）言語モデルよりも、パープレキシティはそれほど高くないが計算複雑性はずっと低いと考えられているからである。したがって、本発明による訓練は、クラスタｃのアルファベットと、意味的クラスタの事前確率ｐ（ｃ）と、言語モデルｐ（ｗ｜ｃ）とを推定することを含む。
【００５１】
１  モデルの初期化
言語モデルの推定についてより詳細に論じる前に、まず、教師なしクラスタリングではモデルの初期化が重要な可能性があることに留意されたい。したがって、第１のステップは、クラスタに対応するモデルを初期化することである。これを、図４に示すブロック３００で示す。クラスタを初期化するプロセスについては、図５に示す流れ図でより詳細に示す。ここで、図４の残りのブロックに関して考察を進める前に、図５について論じる。
【００５２】
クラスタを初期化するために、言語モデルベースのクラスタリングシステム２０４はまず、音声認識結果２１８中のすべての語彙項目を列挙する。これを図５のブロック３０２で示す。例えば、音声認識結果が発話「ｏｐｅｒａｔｏｒ」「ＡＣＭＥ  ｏｐｅｒａｔｏｒ」「ｔｈｅ  ｏｐｅｒａｔｏｒ」を含んでいたと仮定する。したがって、「ｏｐｅｒａｔｏｒ」「ＡＣＭＥ」「ｔｈｅ」は音声認識結果２１８に含まれる辞書項目（または単語）なので、これらの各単語に対応するクラスタが初期化される。したがって、作成されるクラスタの数は、音声認識結果２１８中の最低カウント（この例では最低カウントは１である）を下らないカウントを有する語彙項目の数と同じであり、各クラスタは、結果中の語彙項目（または単語）の１つに対応する。列挙された各語彙項目につきクラスタを作成することを、図５のブロック３０４に示す。
【００５３】
次いで、これらの辞書項目を含む音声認識結果が各クラスタに割り当てられる。例えば、音声認識結果「ｏｐｅｒａｔｏｒ」は単語「ｏｐｅｒａｔｏｒ」を含むので、この発話は、単語「ｏｐｅｒａｔｏｒ」について作成されたクラスタだけに割り当てられる。一方、発話「ＡＣＭＥ  ｏｐｅｒａｔｏｒ」は、これら両方の単語を含むので、単語「ｏｐｅｒａｔｏｒ」について作成されたクラスタと、単語「ＡＣＭＥ」について作成されたクラスタとの両方に割り当てられる。同様に、発話「ｔｈｅ  ｏｐｅｒａｔｏｒ」は、単語「ｔｈｅ」について作成されたクラスタと、単語「ｏｐｅｒａｔｏｒ」について作成されたクラスタとの両方に割り当てられる。
【００５４】
単語ｖに対応する各クラスタの事前確率ｐ（ｃ）は、このクラスタ中のｖを含む発話の正規化された数に設定される。これを図５のブロック３０６で示す。次いで、発話のインスタンスがクラスタに割り当てられる。これを図５のブロック３０８で示す。次いで、各クラスタのＮグラム言語モデルｐ（ｗ｜ｃ）が、単語ｖを含む単語シーケンスｗｉ＊に基づいて（すなわちこのクラスタに割り当てられたインスタンスに基づいて）訓練される。これを図５のブロック３１０で示す。
【００５５】
２  クラスタの精緻化
図５に関して述べたようにクラスタおよび言語モデルが初期化されると、処理は図４で進行する。クラスタは精緻化され、不十分なカウントを有するクラスタは除去される。これを図４のブロック３１２で示す。
【００５６】
クラスタの精緻化は、Ｍ個の波形ｘｉからなる音響データセット
【００５７】
【数１】
2006171710.tif 000003
【００５８】
の尤度を最大化することによって実施される。ｗおよびｃは隠されているので、ＥＭアルゴリズムを適用してモデルを訓練することができる。これは、以下の事後確率を見つけることによって各発話ｘｉをクラスタに再割当てして行うことができる。
【００５９】
【数２】
2006171710.tif 000004
【００６０】
上式で、ｃは特定のクラスタであり、ｃ’はクラスタｉを表す変数であり、したがって、ｃ’にわたる合計はすべてのクラスタにわたって合計することを意味する。
【００６１】
各反復で単語シーケンスｗにわたって合計するのは実際的ではないので、オフライン認識をバックグラウンド言語モデルと共に利用することができる（各反復で
【００６２】
【数３】
2006171710.tif 000005
【００６３】
を使用して認識するのではなく）。
【００６４】
この場合、以下のとおりである。
【００６５】
【数４】
2006171710.tif 000006
【００６６】
上式で、ｗｉ＊は、ｘｉに対する認識結果である。
【００６７】
Ｎベストリストまたはラティス（ｘｉのＮベストリストはｗｉ，１，ｗｉ，ｊ，ｗｉ，Ｎ）を、事後確率ｐ（ｗｉ，ｊ｜ｘｉ）と共に使用することができ、以下のとおりである。
【００６８】
【数５】
2006171710.tif 000007
【００６９】
上式で、ｐ（ｗｉｊ）はバックグラウンド言語モデルを表し、ｐ（ｘｉ｜ｗｉｊ）は音響モデルを表す。
【００７０】
この場合、以下のとおりである。
【００７１】
【数６】
2006171710.tif 000008
【００７２】
ラティスが使用される実施形態では、ｊにわたる合計は、前向き／後ろ向きアルゴリズムを使用して効率的に実施することができる。
【００７３】
また、以下の式を見いだすこともできる。
【００７４】
【数７】
2006171710.tif 000009
【００７５】
これは、認識を使用して以下のように近似することができる。
【００７６】
【数８】
2006171710.tif 000010
【００７７】
あるいは、ｗがＮベストリストのときは、Ｎベストリストまたはラティスを使用して以下のように近似することができる。
【００７８】
【数９】
2006171710.tif 000011
【００７９】
他の場合は以下のとおりである。
式９
ｐ（ｃ，ｗ｜ｘｉ）＝０
【００８０】
次に、以下のカウントを計算する。＃ｕ（ｗ）は、発話ｗ中で単語トークンｕが発生する回数として定義される。
【００８１】
式１０
【００８２】
【数１０】
2006171710.tif 000012
【００８３】
または
【００８４】
【数１１】
2006171710.tif 000013
【００８５】
これらの期待カウントψｃおよびφｃｕを計算することは、ＥＭアルゴリズムのＥステップに対応し、Ｅステップは尤度最大化のための十分な統計を提供する。したがって、Ｍステップは単に、φｃを正規化してクラスタ事前確率ｐ（ｃ）を出し、φｃｕを正規化してクラス条件付きユニグラム確率を出すことを含む。
【００８６】
言い換えれば、ｐ（ｃ）、ｐ（ｗ｜ｃ）は、ｐ’（ｃ）、ｐ’（ｗ｜ｃ）により以下のとおりである。
【００８７】
【数１２】
2006171710.tif 000014
【００８８】
ｐ（ｗ｜ｃ）はユニグラムなので、以下のとおりである。
【００８９】
【数１３】
2006171710.tif 000015
【００９０】
上式で、ｗ（ｋ）は、文ｗ中のｋ番目の単語であり、ｌ（ｗ）は、文ｗの長さであり、ｐｃ（ｖ）は、クラスｃ中の単語ｖのユニグラム確率である。最後に、以下の式となる。
【００９１】
【数１４】
2006171710.tif 000016
【００９２】
実際の実施では、認識で使用される言語モデル（すなわち、ｐ（ｗ｜ｘ）＝ｐ（ｘ｜ｗ）ｐ（ｗ）を計算する際のｐ（ｗ））は、クラスタごとのユニグラム言語モデル（すなわちｐ（ｗ｜ｃ））から切り離される。特定の一実施形態では、タスク独立の大語彙バックグラウンド言語モデルを使用してｐ（ｗ）が計算される。これは、言語モデルｐ（ｗ）および音響モデルｐ（ｘ｜ｗ）が固定の場合に、認識がオフラインで１度だけ行われるという利点を有する。得られる単語シーケンス仮説およびそれらの音響スコアは、クラスタの訓練で直接使用される。
【００９３】
加えて、特定の一実施形態では、計算効率のために、単語シーケンス仮説はラティスまたはＮベストリストに限定され、ｐ（ｗ｜ｘｉ）はそれに従って再正規化される。長さ１のＮベストリストが使用される積極的な一実施形態では、１ベスト単語シーケンスが得られる。
【００９４】
３  ビタビ訓練によるモデル精緻化
加えて、ＥＭ訓練の代わりにビタビ訓練を使用してクラスタパラメータを最適化することができることにも留意されたい。言い換えれば、ｐ（ｃ｜ｗ）は、ｗを仮定した場合にｃが最良の仮説かどうかに応じて０または１に再正規化される。
【００９５】
より具体的には、ｐ（ｗ｜ｘｉ）の代わりに以下の式を使用して、「ハード」またはビタビクラス割当てを行うことができる。この方がより効率的な可能性がある。
【００９６】
【数１５】
2006171710.tif 000017
【００９７】
１ベストの場合は、以下の式となる。
【００９８】
【数１６】
2006171710.tif 000018
【００９９】
Ｎベストリストまたはラティスが使用される実施形態では、２つのオプションがある。第１のオプションは、すべての仮説に対する全体的な選択として１つのクラスを選ぶことである。こうするために、上の式５で与えられるｐ（ｗ｜ｘｉ）のマキシマイザ(maximizer)に対して、
【０１００】
【数１７】
2006171710.tif 000019
【０１０１】
が確率１を出すものとする。この場合、以下のとおりである。
【０１０２】
【数１８】
2006171710.tif 000020
【０１０３】
第２のオプションは、仮説ごとにクラスを選択することである。これは、以下の式とすることによって行うことができる。
【０１０４】
【数１９】
2006171710.tif 000021
【０１０５】
この第２のオプションは、ごく小さいＮベストリストを除くすべての場合に、遅いため望ましくないことがある。
【０１０６】
Ｄ  クラスタのマージ
この時点で、いくつかのクラスタが表す意味的な意図が、類似していることがある。したがって、２つのクラスタ間（または２つのクラスタを表す言語モデル間）の距離尺度に基づいていくつかのクラスタを共にマージし、マージされたクラスタを精緻化することが望ましい場合がある。これを図４のブロック３１４および３１６で示す。
【０１０７】
クラスタリングされた項目をマージおよび分割する技法は、テキストクラスタリングの分野で研究されてきた。これらの技法の多くは、２つのクラスタ間における何らかの距離尺度に基づく。一実施形態では、本発明は、２つのクラスタに対応するユニグラム分布間のＫＬダイバージェンスに基づく比較的複雑性の低い距離尺度を使用する。ＫＬダイバージェンスについては、文献でより詳細に説明されている（非特許文献１参照。）。
【０１０８】
クラスタｃ中の語彙項目ｕのユニグラム確率をγｃｕとすると（γｃｕはΦｃｕに比例する）、距離は、以下のように非対称ＫＬダイバージェンスの平均として定義される。
【０１０９】
【数２０】
2006171710.tif 000022
【０１１０】
上式で、ｕは、クラスタｃ１およびｃ２中に現れるすべての語彙項目にわたって合計され、０確率のγｃ１ｕまたはγｃ２ｕがあれば、これは最低値で平滑化される。２つのクラスタｃ１とｃ２は、それらのＤ（ｃ１，ｃ２）がしきい値よりも小さい場合はマージされる。マージすると、ｐ（ｗ，ｃ１，２｜ｘ）＝ｐ（ｗ，ｃ１｜ｘ）＋ｐ（ｗ，ｃ２｜ｘ）となり、これらの新しい事後確率を使用して新しいモデルが再推定される。このようなすべての対がマージされた後、所望の数のＥＭまたはビタビ推定が適用される。
【０１１１】
別の実施形態では、各対がマージされた後で再推定を適用することができる（最もダイバージェンスの小さい対が最初にマージされることになる）。しかし、これは計算を著しく増加させる可能性があり、したがって望ましくない場合がある。
【０１１２】
ＫＬダイバージェンスの代替として、２つのクラスタ間の距離尺度、したがって、２つのクラスタのマージが行われるべきかどうかを判定するための尺度は、ＥＭ補助関数に基づくことができる。具体的には、２つのクラスタをマージすることによるＥＭ補助関数中の損失を、これらのクラスタ間の距離尺度として使用することができる。
【０１１３】
ＥＭ補助関数は以下のとおりである。
【０１１４】
【数２１】
2006171710.tif 000023
【０１１５】
前述のＥＭアルゴリズムのＥステップからのカウント定義を使用すると、以下のとおりである。
【０１１６】
【数２２】
2006171710.tif 000024
【０１１７】
前述のＭステップからのｐ’（ｃ）およびｐ’ｃ（ｖ）を使用すると、以下のとおりである。
【０１１８】
【数２３】
2006171710.tif 000025
【０１１９】
クラスタｃ１およびｃ２を考える場合、マージされていない補助関数は、以下のように計算される。
【０１２０】
【数２４】
2006171710.tif 000026
【０１２１】
ｃ１とｃ２がマージされた場合、マージされた補助関数は、以下のようにして計算される。
【０１２２】
【数２５】
2006171710.tif 000027
【０１２３】
ｃ１とｃ２の間の距離は、以下の差として定義することができる。
【０１２４】
【数２６】
2006171710.tif 000028
【０１２５】
パープレキシティの損失も、２つのクラスタ間の距離を決定する際に使用することができる。パープレキシティについては、論文でより詳細に記述されている（非特許文献２および３参照。）。
【０１２６】
別の実施形態では、しきい値よりも短い距離を有するクラスタすべてをマージするのではなく、クラスタは、補助関数がいくらかの所定量だけ変化するまでマージされる。クラスタがマージされるかどうかを判定するのに使用される補助関数の変化量は、所定の率であってもよく、あるいは経験的に決定される他の値であってもよい。
【０１２７】
さらに、マージするプロセスは、再推定を所々に挟みながら複数回にわたって繰り返すことができる。これは反復マージと呼ばれる。
【０１２８】
類似するクラスタがマージされると、各クラスタの代表的な発話またはラベルが選択されることを想起されたい。一実施形態では、これは、各クラスタ中の各発話につき計算された尤度ｐ（ｗ｜ｃ）に基づく。補助関数がマージに使用されてこの尤度がクラスタ代表の選択に使用されるときは、マージと再推定と代表選択とはすべて一貫し（同じ基準を使用して実施され）、したがって実施はより単純とすることができることに留意されたい。
【０１２９】
このように、本発明が従来のシステムに勝る大きな利点を提供することがわかる。例えば、本発明は、音響を意味的な意図に基づいて自動的にクラスタリングする。本発明はまた、各クラスタを表す代表的な音響記録（または音声認識記録）を識別することもできる。したがって、開発者は、予期されない意味的な意図に対応するようアプリケーション文法を適応させるために、多量のデータを聞いてこれらの意味的な意図を識別する必要はない。
【０１３０】
本発明を使用してまた、アプリケーション文法を手動または自動で修正するための文法規則またはモデルを提案することもできる。本発明はまた、どのようにデータを抽出し、このデータに対応する音声認識結果に基づいてこのデータをクラスタリングし、各クラスタを表す代表的なモデルを訓練するかにおいて、大きな利点を提供する。
【０１３１】
特定の実施形態を参照して本発明を述べたが、本発明の趣旨および範囲を逸脱することなく形式および詳細に変更を加えてもよいことは、当業者なら理解するであろう。
【図面の簡単な説明】
【０１３２】
【図１】本発明を使用することのできる例示的な一環境のブロック図である。
【図２】本発明の一実施形態による、クラスタリングシステム中での処理の流れを示すブロック図である。
【図３】図２に示したシステムによって行われる全体的な処理ステップを示す流れ図である。
【図４】言語モデルベースのクラスタリングの例示的な一方法をより詳細に示す流れ図である。
【図５】クラスタがどのように初期化されるかをより詳細に示す流れ図である。
【符号の説明】
【０１３３】
２０２  クラスタリングシステム
２０４  ＬＭベースのクラスタリングシステム
２０６  ランク付けおよびフィルタリングシステム
２０８  文法更新システム
２１０  ＳＲシステム
２１２  ＡＶＲシステム
２１４  通話ログ情報
２１８  ＳＲ結果
２２２  クラスタ
２２６  選択済みクラスタ
２３２  更新済み文法
【図１】
2006171710.tif 000029
【図２】
2006171710.tif 000030
【図３】
2006171710.tif 000031
【図４】
2006171710.tif 000032
【図５】
2006171710.tif 000033