(57)【特許請求の範囲】
【請求項１】
コマンドおよびエンティティ名を含む、ユーザによる発話に対応するオーディオデータを受け取るステップと、
前記エンティティ名に関連付けられた前記オーディオデータの一部についての初期の翻音を、自動会話認識器によって生成するステップと、
前記初期の翻音と前記初期の翻音に関連付けられた追加の情報とを戻すステップであって、前記追加の情報が、前記ユーザの個別化された発音辞書が前記初期の翻音に対応するエンティティ名を含まないことを示す、ステップと、
前記初期の翻音に関連するフィードバック情報のためのプロンプトが前記ユーザに提供されるようにするステップであって、前記プロンプトが前記追加の情報に基づいて生成されるとともに、前記個別化された発音辞書に格納された複数のエンティティ名を表示して、表示された複数のエンティティ名のうちの１つを選択するように前記ユーザに尋ねるものであり、前記複数のエンティティ名が、(i)前記発話に含まれる前記エンティティ名に音声学的に近いエンティティ名と、(ii)前記発話に含まれる前記エンティティ名に音声学的に関係のないエンティティ名との両方を含む、ステップと、
前記エンティティ名に関連付けられるとともに前記初期の翻音と異なる前記発話の前記一部についての正された翻音を、フィードバック情報として受け取るステップと、
前記正された翻音を受け取ることに応答して、前記エンティティ名に関連付けられた前記オーディオデータの前記一部に関連付けられた発声発音を取得するステップと、
前記エンティティ名に前記発声発音を関連付けるように、発音辞書を更新するステップと、
前記エンティティ名を含む後続の発話を受け取るステップと、
前記更新された発音辞書に少なくとも部分的に基づいて、前記後続の発話を翻音するステップと、
を含む方法。
【請求項２】
前記エンティティ名に関連付けられるとともに前記初期の翻音と異なる前記発話の前記一部についての正された翻音を受け取るステップは、
前記表示された複数のエンティティ名から1つのエンティティ名が選択されたことを示すデータを受け取るステップと、
キーパッドを介して入力された、エンティティ名を示す1つまたは複数の文字を示すデータを受け取るステップと、
を含む、請求項1に記載の方法。
【請求項３】
発音辞書を更新するステップは、
前記エンティティ名に関連付けられた発音辞書エントリを特定するステップと、
前記エンティティ名の発声発音に対応するエントリの一部を削除するステップと、
前記エンティティ名に関連付けられた発音辞書エントリに、前記取得された発声発音に関連付けられた前記発声発音を格納するステップと、
をさらに含む、請求項1または2に記載の方法。
【請求項４】
前記受け取られたオーディオデータの少なくとも一部にタイムスタンプを関連付けるステップと、
前記発話の正しい翻音が特定されるとともに、前記受け取られた発話に関連付けられたコマンドが完了するまで、前記受け取られたオーディオデータの1つまたは複数の部分をキャッシュするステップと、
をさらに含む、請求項1〜3のいずれか一項に記載の方法。
【請求項５】
前記エンティティ名に関連付けられた前記オーディオデータの前記一部に関連付けられた発声発音を取得するステップは、
前記受け取られたオーディオデータの少なくとも一部に関連付けられた前記タイムスタンプに基づいて、最も最近に受け取られたオーディオデータの一部を取得するステップと、
音響モデルを使用して取得された音素のセットに基づいて、前記最も最近に受け取られたオーディオデータの前記取得された一部の発声発音を生成するステップと、
を含む、請求項4に記載の方法。
【請求項６】
前記取得された発声発音を含むように発音辞書を更新することに応答して、前記発声発音に関連付けられたグローバルカウンタを増分するステップをさらに含む、請求項1〜5のいずれか一項に記載の方法。
【請求項７】
前記発声発音に関連付けられた前記グローバルカウンタが所定のしきい値を超えることを判定するステップと、
前記発声発音に関連付けられた前記グローバルカウンタが所定のしきい値を超えることを判定することに応答して、正しい翻音に関連付けられた前記発声発音を含むように、前記エンティティ名に関連付けられたグローバル発音辞書の発音辞書エントリを更新するステップと、
をさらに含む、請求項6に記載の方法。
【請求項８】
1つまたは複数のコンピュータと、
前記1つまたは複数のコンピュータによって実行されると、前記1つまたは複数のコンピュータに動作を実行させるように動作可能な命令を格納する1つまたは複数のストレージデバイスとを具備し、前記動作は、
コマンドおよびエンティティ名を含む、ユーザによる発話に対応するオーディオデータを受け取るステップと、
前記エンティティ名に関連付けられた前記オーディオデータの一部についての初期の翻音を、自動会話認識器によって生成するステップと、
前記初期の翻音と前記初期の翻音に関連付けられた追加の情報とを戻すステップであって、前記追加の情報が、前記ユーザの個別化された発音辞書が前記初期の翻音に対応するエンティティ名を含まないことを示す、ステップと、
前記初期の翻音に関連するフィードバック情報のためのプロンプトが前記ユーザに提供されるようにするステップであって、前記プロンプトが前記追加の情報に基づいて生成されるとともに、前記個別化された発音辞書に格納された複数のエンティティ名を表示して、表示された複数のエンティティ名のうちの１つを選択するように前記ユーザに尋ねるものであり、前記複数のエンティティ名が、(i)前記発話に含まれる前記エンティティ名に音声学的に近いエンティティ名と、(ii)前記発話に含まれる前記エンティティ名に音声学的に関係のないエンティティ名との両方を含む、ステップと、
前記エンティティ名に関連付けられるとともに前記初期の翻音と異なる前記発話の前記一部についての正された翻音を、フィードバック情報として受け取るステップと、
前記正された翻音を受け取ることに応答して、前記エンティティ名に関連付けられた前記オーディオデータの前記一部に関連付けられた発声発音を取得するステップと、
前記エンティティ名に前記発声発音を関連付けるように、発音辞書を更新するステップと、
前記エンティティ名を含む後続の発話を受け取るステップと、
前記更新された発音辞書に少なくとも部分的に基づいて、前記後続の発話を翻音するステップと、
を含む、システム。
【請求項９】
前記エンティティ名に関連付けられるとともに前記初期の翻音と異なる前記発話の前記一部についての正された翻音を受け取るステップは、
前記表示された複数のエンティティ名から1つのエンティティ名が選択されたことを示すデータを受け取るステップと、
キーパッドを介して入力された、エンティティ名を示す1つまたは複数の文字を示すデータを受け取るステップと、
を含む、請求項8に記載のシステム。
【請求項１０】
発音辞書を更新するステップは、
前記エンティティ名に関連付けられた発音辞書エントリを特定するステップと、
前記エンティティ名の発声発音に対応するエントリの一部を削除するステップと、
前記エンティティ名に関連付けられた記発音辞書エントリに、前記取得された発声発音に関連付けられた前記発声発音を格納するステップと、
をさらに含む、請求項8または9に記載のシステム。
【請求項１１】
前記動作は、
前記受け取られたオーディオデータの少なくとも一部にタイムスタンプを関連付けるステップと、
前記発話の正しい翻音が特定されるとともに、前記受け取られた発話に関連付けられたコマンドが完了するまで、前記受け取られたオーディオデータの1つまたは複数の部分をキャッシュするステップと、
をさらに含む、請求項8〜10のいずれか一項に記載のシステム。
【請求項１２】
前記エンティティ名に関連付けられた前記オーディオデータの前記一部に関連付けられた発声発音を取得するステップは、
前記受け取られたオーディオデータの少なくとも一部に関連付けられたタイムスタンプに基づいて、最も最近に受け取られたオーディオデータの一部を取得するステップと、
音響モデルを使用して取得された音素のセットに基づいて、前記最も最近に受け取られたオーディオデータの前記取得された一部の発声発音を生成するステップと、
を含む、請求項8〜11のいずれか一項に記載のシステム。
【請求項１３】
前記動作は、
前記取得された発声発音を含むように発音辞書を更新することに応答して、前記発声発音に関連付けられたグローバルカウンタを増分するステップをさらに含む、請求項8〜12のいずれか一項に記載のシステム。
【請求項１４】
前記動作は、
前記発声発音に関連付けられた前記グローバルカウンタが所定のしきい値を超えることを判定するステップと、
前記発声発音に関連付けられた前記グローバルカウンタが所定のしきい値を超えることを判定することに応答して、正しい翻音に関連付けられた前記発声発音を含むように、前記エンティティ名に関連付けられたグローバル発音辞書の発音辞書エントリを更新するステップと、
をさらに含む、請求項13に記載のシステム。
【請求項１５】
1つまたは複数のコンピュータによって実行可能な命令を含むソフトウェアを格納する非一時的コンピュータ可読媒体であって、前記命令の実行時に、前記1つまたは複数のコンピュータに動作を実行させ、前記動作は、
コマンドおよびエンティティ名を含む、ユーザによる発話に対応するオーディオデータを受け取るステップと、
前記エンティティ名に関連付けられた前記オーディオデータの一部についての初期の翻音を、自動会話認識器によって生成するステップと、
前記初期の翻音と前記初期の翻音に関連付けられた追加の情報とを戻すステップであって、前記追加の情報が、前記ユーザの個別化された発音辞書が前記初期の翻音に対応するエンティティ名を含まないことを示す、ステップと、
前記初期の翻音に関連するフィードバック情報のためのプロンプトが前記ユーザに提供されるようにするステップであって、前記プロンプトが前記追加の情報に基づいて生成されるとともに、前記個別化された発音辞書に格納された複数のエンティティ名を表示して、表示された複数のエンティティ名のうちの１つを選択するように前記ユーザに尋ねるものであり、前記複数のエンティティ名が、(i)前記発話に含まれる前記エンティティ名に音声学的に近いエンティティ名と、(ii)前記発話に含まれる前記エンティティ名に音声学的に関係のないエンティティ名との両方を含む、ステップと、
前記エンティティ名に関連付けられるとともに前記初期の翻音と異なる前記発話の前記一部についての正された翻音を、フィードバック情報として受け取るステップと、
前記正された翻音を受け取ることに応答して、前記エンティティ名に関連付けられた前記オーディオデータの前記一部に関連付けられた発声発音を取得するステップと、
前記エンティティ名に前記発声発音を関連付けるように、発音辞書を更新するステップと、
前記エンティティ名を含む後続の発話を受け取るステップと、
前記更新された発音辞書に少なくとも部分的に基づいて、前記後続の発話を翻音するステップと、
を含む、非一時的コンピュータ可読媒体。
【請求項１６】
発音辞書を更新するステップは、
前記エンティティ名に関連付けられた発音辞書エントリを特定するステップと、
前記エンティティ名の発声発音に対応するエントリの一部を削除するステップと、
前記エンティティ名に関連付けられた前記発音辞書エントリに、前記取得された発声発音に関連付けられた前記発声発音を格納するステップと、
をさらに含む、請求項15に記載の非一時的コンピュータ可読媒体。
【請求項１７】
前記動作は、
前記受け取られたオーディオデータの少なくとも一部にタイムスタンプを関連付けるステップと、
前記発話の正しい翻音が特定されるとともに、前記受け取られた発話に関連付けられたコマンドが完了するまで、前記受け取られたオーディオデータの1つまたは複数の部分をキャッシュするステップと、
をさらに含む、請求項15に記載の非一時的コンピュータ可読媒体。
【請求項１８】
前記エンティティ名に関連付けられた前記オーディオデータの前記一部に関連付けられた発声発音を取得するステップは、
前記受け取られたオーディオデータの少なくとも一部に関連付けられたタイムスタンプに基づいて、最も最近に受け取られたオーディオデータの一部を取得するステップと、
音響モデルを使用して取得された音素のセットに基づいて、前記最も最近に受け取られたオーディオデータの前記取得された一部の発声発音を生成するステップと、
を含む、請求項15に記載の非一時的コンピュータ可読媒体。
【請求項１９】
前記動作は、
前記取得された発声発音を含むように発音辞書を更新することに応答して、前記発声発音に関連付けられたグローバルカウンタを増分するステップをさらに含む、請求項15に記載の非一時的コンピュータ可読媒体。
【請求項２０】
前記動作は、
前記発声発音に関連付けられたグローバルカウンタが所定のしきい値を超えることを判定するステップと、
前記発声発音に関連付けられた前記グローバルカウンタが所定のしきい値を超えることを判定することに応答して、正しい翻音に関連付けられた前記発声発音を含むように、前記エンティティ名に関連付けられたグローバル発音辞書の発音辞書エントリを更新するステップと、
をさらに含む、請求項15に記載の非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書は一般に会話認識に関する。
【背景技術】
【０００２】
デバイスのユーザは、例えばマウスまたはタッチパッドを使用して表示されたアイテムのグループから選択すること、キーボードを介して文字を入力すること、またはマイクに音声コマンドを話すことを含む、様々な異なる方法でデバイスとやりとりすることがある。音声コマンドを処理するとき、自動会話認識(ASR)は、話し手が発音辞書にある語句に関連付けられた正規の発音から外れた特定の語句の発音を使用する場合、正確に音声コマンドを認識することが困難な場合がある。
【発明の概要】
【課題を解決するための手段】
【０００３】
本開示の態様は、モバイルデバイスとのユーザインタラクションに基づいて、エンティティ名の異なる、非正規の発音を格納できる発音辞書の実施を容易にすることができる。いくつかの例では、発音辞書はある語句のユーザの発音を変更できるユーザの音声のユニークな特徴に適応できる。例として、発音辞書は、エンティティ名「Mara」が「MAW ・ rra」の音声発音に対応するように初期化されうる。しかしながら、本開示の態様を利用すると、発音辞書は、特定のユーザがエンティティ名「Mara」を「MA ・ ra」と発音することを学習することができる。従って、発音辞書は、特定のユーザとのインタラクションに基づいて発音「MA ・ ra」をエンティティ名「Mara」と関連付けるように学習できる。本開示の態様を利用することで、向上した会話認識とより高品質な翻音を提供できる。
【０００４】
いくつかの態様では、本明細書に具現化された主題は、コマンドおよびエンティティ名を含む発話に対応する音声データを受け取るアクションを含むことができる方法で具現化される。追加のアクションは、エンティティ名に関連付けられたオーディオデータの一部についての初期の翻音を、自動会話認識器によって生成することと、エンティティ名に関連付けられるとともに初期の翻音と異なる発話の一部についての正された翻音を受け取ることと、エンティティ名に関連付けられるとともに初期の翻音と異なる発話の一部についての正された翻音を受け取ることに応答して、エンティティ名に関連付けられたオーディオデータの一部に関連付けられた発声発音を取得することと、エンティティ名に発声発音を関連付けるように、発音辞書を更新することと、エンティティ名を含む後続の発話を受け取ることと、更新された発音辞書に少なくとも部分的に基づいて、後続の発話を翻音することとを含む。
【０００５】
他のバージョンは、対応するシステム、装置、コンピュータストレージデバイス上に符号化された、方法のアクションを実行するように構成されたコンピュータプログラム、およびコンピューティング装置に方法のアクションを実行させるように構成されたコンピュータプログラムを含む。
【０００６】
このバージョンおよび他のバージョンは、各々以降の特徴の一つまたは複数を任意に含むことができる。例えば、いくつかの実施形態では、エンティティ名に関連付けられるとともに初期の翻音と異なる発話の一部についての正された翻音を受け取ることは、1つまたは複数のエンティティ名の表示からエンティティの選択を示すデータを受け取ることと、キーパッドを介して入力された、エンティティ名を示す1つまたは複数の文字を示すデータを受け取ることを含むことができる。
【０００７】
いくつかの態様では、発音辞書を更新することは、エンティティ名に関連付けられた発音辞書エントリを特定することと、初期の翻音の発声発音に対応するエントリの一部を削除することと、エンティティ名に関連付けられた発音辞書エントリに、取得された発声発音に関連付けられた発声発音を格納することとを含むことができる。
【０００８】
ある実施形態では、方法は、受け取られたオーディオデータの少なくとも一部にタイムスタンプを関連付けること、および発話の正しい翻音が特定されるとともに、受け取られた発話に関連付けられたコマンドが完了するまで、受け取られたオーディオデータの1つまたは複数の部分をキャッシュするためのアクションを含むことができる。そのような実施形態では、エンティティ名に関連付けられたオーディオデータの一部に関連付けられた発声発音を取得することは、受け取られたオーディオデータの少なくとも一部に関連付けられたタイムスタンプに基づいて、最も最近に受け取られたオーディオデータの一部を取得することと、音響モデルを使用して取得された音素のセットに基づいて、最も最近に受け取られたオーディオデータの取得された一部の発声発音を生成することとを含むことができる。
【０００９】
やはり他の実施形態では、方法は、取得された発声発音を含むように発音辞書を更新することに応答して、発声発音に関連付けられたグローバルカウンタを増分することを含むアクションを含むことができる。
【００１０】
そのような実施形態では、発声発音に関連付けられたグローバルカウンタが所定のしきい値を超えることを判定し、発声発音に関連付けられたグローバルカウンタが所定のしきい値を超えることを判定することに応答して、正しい翻音に関連付けられた発声発音を含むように、エンティティ名に関連付けられたグローバル発音辞書の発音辞書エントリを更新する。
【００１１】
添付の図面および以降の記載に、1つまたは複数の実施形態の詳細が説明されている。
他の特徴および利点は、本明細書および図面および特許請求の範囲から明らかになるであろう。
【図面の簡単な説明】
【００１２】
【図１Ａ】個別化されたエンティティ名の発音を学習するためのシステムの特徴を示すコンテキスト図である。
【図１Ｂ】個別化されたエンティティ名の発音を学習するためのシステムの特徴を示すコンテキスト図である。
【図２】個別化されたグローバル発音辞書の中の連絡先の発音を学習するために利用され得る処理の例のフローチャートである。
【図３】グローバル発音辞書の中のエンティティ発音を学習するために利用され得る処理の例のフローチャートである。
【発明を実施するための形態】
【００１３】
図1Aは、個別化されたエンティティ名の発音を学習するためのシステム100Aの特徴を示すコンテキスト図である。システム100Aは、ユーザ100、ユーザのモバイルデバイス120、およびサーバ130を含むことができる。モバイルデバイス120は、1つまたは複数のワイヤードまたはワイヤレスのネットワークを介して、サーバ130と通信(160、162、164)することができる。ネットワークは、例えば、ワイヤレスセルラーネットワーク、ワイヤレスローカルエリアネットワーク(WLAN)またはWi-Fiネットワーク、第3世代(3G)または第4世代(4G)モバイル電話通信ネットワーク、イントラネットなどのプライベートネットワーク、インターネットなどのパブリックネットワーク、またはそれらの任意の組み合わせを含むことができる。モバイルデバイス120は、モバイル電話、スマートフォン、スマートウォッチ、タブレットコンピュータ、ラップトップ、電子書籍リーダ、音楽プレーヤ、PDA、あるいは1つまたは複数のプロセッサおよびコンピュータ可読媒体を含むステーショナリなまたはポータブルなデバイスを含むことができる。
【００１４】
ユーザのモバイルデバイス120は、1つまたは複数の物理的なボタン121a、121b、121c、グラフィカルユーザインターフェース122、マイクロフォン125、および出力スピーカ126を含むことができる。物理的なボタン121a、121b、121cの各々は、物理的なボタンのユーザ選択に応答して特定の機能を実行するように構成されることができる。例えば、物理的なボタン121a、121b、121cは、電源ボタン、音量ボタン、ホームボタンなどであってよい。ある実施形態では、物理的なボタン121aなどの物理的なボタンは、物理的なボタン121aの選択時にマイクロフォン125を起動するように構成されてよい。グラフィカルユーザインターフェース122は、ユーザ100がスタイラス、ユーザ100の指、または他のポインティング実施を使用することによって入力され得る、タップ、ジェスチャーなどの形式で、入力を受け取るように構成された、容量性のタッチスクリーンインターフェースを含むことができる。
【００１５】
グラフィカルユーザインターフェース122は、1つまたは複数の異なる部分から構成されて良い。グラフィカルユーザインターフェース122の異なる部分のそれぞれは、必要に応じて別々にまたは同時に表示される。代替的に、グラフィカルユーザインターフェース122の異なる部分の一つまたは複数は、図1Aに示されるように分割スクリーンとして同時に表示される。例えば、グラフィカルユーザインターフェースの第1の部分は、1つまたは複数の選択可能なアイコン123の表示を提供する。選択可能なアイコン123は、特定のコマンド、特定のアプリケーション、または1つまたは複数のアプリケーションをグループ化するフォルダなどにそれぞれ対応する。いくつかの例では、選択可能なアイコンは1つまたは複数の物理的なボタン121a、121b、121cの代わりに利用される。例えば、選択可能なアイコンが、ホームボタンとして機能するように提供される。代替的に、例えば、選択可能なアイコンはマイクロフォン125を起動させるために使用され得る。他の実施形態では、選択可能なアイコンは選択可能なアイコンの選択に応答して、特定のアプリケーションを開くように構成される。やはり他の実施形態では、選択可能なアイコンの選択は、それぞれが特定のアプリケーションまたはネストされたフォルダに対応する追加の選択可能なアイコンの表示をトリガするフォルダを開くことができる。
【００１６】
グラフィカルユーザインターフェース122の他の部分は、ユーザ100からの追加の情報のために1つまたは複数のプロンプト124を提供できる表示を含む。例えば、表示は、声に出された発話の少なくとも一部の翻音に関連するユーザ入力のためのプロンプト124を提供できる。代替的に、ディスプレイスクリーンは、電話の現在の状態の指示をユーザに提供するように構成されることができる(図1B参照)。やはり他のタイプのデータが、グラフィカルユーザインターフェース122の対応する部分に表示されてよい。
【００１７】
サーバ130は、それぞれがプロセッサ132およびメモリ134を含む1つまたは複数のコンピューティングデバイスから成ってよい。プロセッサ132は、メモリ134に格納されたアプリケーションに関連付けられた命令を実行するように構成された1つまたは複数のプロセッサから構成されてよい。メモリ134は、同じまたは異なるタイプのストレージデバイスからなる1つまたは複数のメモリユニットを含むことができる。例えば、メモリ134は、アクティブに実行中のアプリケーションを格納するように構成されたRAM部分を含むことができる。代替的にまたは追加として、メモリ134は、必要に応じて、アクセスされるおよびメモリ134のRAM部分に転送されるデータを格納するように構成された1つまたは複数のデータストレージユニットを含むことができる。
【００１８】
メモリ134に格納されたアプリケーションは、例えば、自動会話認識器140および個別化された発音辞書150を含むことができる。自動会話認識器140は、例えば、モバイルデバイス120から受け取った(160)音声信号114の一つまたは複数を、別の形式の媒体に変換するなどの能力を容易する。例えば、自動会話認識器140は、受け取った音声114をテキストに変換することができる。受け取った音声信号114をテキストに変換することは、例えば、受け取った音声信号114の全てまたは一部に最もよく関連付けられた音素のセットを特定するために、音響モデルを利用することを含む。その後、特定された音素のセットは、発声発音にマッピングされ得る。
【００１９】
いくつかの実施形態では、発声発音は、例えば、個別化された発音辞書150の特定のエントリに対応する特定のエンティティ名を一意に特定することができる。従って、自動会話認識器140またはサーバ130の別の構成要素は、発声発音を使用して、ユーザの個別化された発音辞書150から対応するエンティティ名を取り出すことができる。しかしながら、ある場合では、自動会話認識器140は、個別化された発音辞書150が、取得した発声発音によって十分に特定されうるエンティティ名を含まないと判定することがある。そのような例では、自動会話認識器140は、最良の利用可能な翻音116をモバイルデバイス120に戻す(162)ことができる。最良の利用可能な翻音116は、取得した発声発音に対応する個別化された発音辞書150内の最も近いエンティティ名であってよい。代替的に、例えば、最良の利用可能な翻音116は、1つまたは複数の他の会話変換アプリケーションまたは辞書などを使用して、自動会話認識器140によって生成された翻音であることができる。
【００２０】
個別化された発音辞書150は、特定のエンティティに関連付けられた情報をそれぞれが含む複数のエントリを含むことができる。例えば、ステージ「A」における個別化された発音辞書152は、コンタクト名152aおよび発音152bをそれぞれが含む1つまたは複数のエントリを含むことができる。ステージ「A」における個別化された発音辞書150は、それぞれのエンティティ名152aについての発声発音152bのデフォルトのセットとともに初期化される。発声発音のデフォルトのセットは、それぞれのエンティティ名152aの代表的な発音152bに基づく。代表的な発音は、例えば、標準的な辞書の語句に関連付けられた発音である。加えて、ユーザの音声のユニークな特徴が経時的に変化し得ること、またはそれぞれ異なる音声特徴を有する同じ電話機の複数のユーザが存在し得ることを考慮するべきである。従って、代表的な発音は、例えば、ユーザが過去のある時点でエンティティ名に関連付けた発音であってもよい。
【００２１】
しかしながら、個別化された発音辞書150は、システム100Aのユーザ100とのインタラクションに基づいて、異なる発音を格納するように構成され得る。結果的に、特定のエンティティに関連付けられた特定の発声発音は時間の経過とともに変化しうる。第1のステージ「A」における特定のエンティティ名152aについての発声発音152bへのそのような変化は、第1のステージ「A」における個別化された発音辞書152bから、第2のステージ「B」にある対応する個別化された発音辞書154への移行に関して図1に示される。ステージ「B」における個別化された発音辞書154は、エンティティ「Fuchun」に対する発音は、ステージ「A」における個別化された発音辞書152の中のエンティティ「Fuchun」に以前に関連付けられた「Fyoo ・ chuh ・ n」の代表的な発音から、「Fawr ・ chuh ・ n」に更新されていることを示す。個別化された発音辞書150は、例えば、国際音声記号(IPA)あるいは拡張SAM音声記号(X-SAMPA)などを含む任意のタイプの発音システムに基づいて、任意のタイプの発音を格納するように構成され得る。
【００２２】
一態様では、ユーザ100は、モバイルデバイス120のマイクロフォン125を起動する入力をモバイルデバイス120に与えることができる。例えば、ユーザ100はマイクロフォン125を起動する物理的なボタン121aを選択することができる。代替的に、マイクロフォン125は、ユーザが特定の音声コマンドを発することによって起動され得る。例えば、マイクロフォン125は、特定の起動コマンドを検出するために、マイクロフォン125の範囲内のすべての音を受動的に聞き取るように構成される。一旦マイクロフォン125が特定の起動コマンドを検出すると、マイクロフォン125は自身の動作のモードをユーザ100からの後続の音声コマンドをキャプチャすることのできるアクティブリスニングモードに変更する。
【００２３】
マイクロフォンが一旦有効になると、ユーザ100は、ユーザのモバイルデバイス120に関連付けられたマイクロフォン125によって検出されうる発話110を声に出してよい。発話110は、コマンド110aおよびエンティティ名110bを含むことができる。例えば、図1の例では、ユーザ100は、例えば、「Call Fuchun(Fuchunに電話)」などの発話110を声に出す。発話110に関連付けられたコマンド110aは、「Call(電話)」コマンドである。「Call」コマンドは、エンティティとの音声またはビデオ通信のための接続を開始できる。この例では、発話110はまた、電話されるべきエンティティとして、エンティティ110ｂ「Fuchun」を特定する。
【００２４】
この例では、エンティティの例は、呼び出され得る個人的な連絡先の名前として記載されるが、本明細書に記載されるエンティティはこれに限定されるべきではない。代わりに、エンティティは、例えば、任意の個人、場所、あるいは物のための任意の識別子を含むことができる。例えば、エンティティ名は、例えばシティゼン(CityZen)などのレストランの名前を含むことができる。代替的に、例えば、エンティティ名は、ワシントンパイクなどの通りの名前、あるいは、1599ワシントンパイクなどの通りの住所でさえ含むことができる。他の実施形態では、エンティティ名は、カリフォルニア州ラホヤなどの、市および/または州であってもよい。やはり他の実施形態では、エンティティ名は、ヨセミテ国立公園(Yosemite National Park)などのランドマークを含むことができる。他のタイプのエンティティ名が、本開示によって利用され得る。
【００２５】
発話110の各部分は、ユーザ100の音声に関連付けられた特徴に基づいて一意に発音され得る。ユーザ100の音声の特徴は、例えば、ユーザ100のアクセント、音素の選択、または好みなどを含み、各々が特定のエンティティ名110bのユーザ100の発音についてのユニークな効果を有し得る。この特定の例では、エンティティ「Fuchun」についての代表的な発音は、「Fyoo ・ chuh ・ n」であって良いが、ユーザ100は、「Fawr ・ chuh ・ n」112として、エンティティ名「Fuchun」を発音している。マイクロフォン125は、発話110に関連付けられたオーディオ信号をキャプチャし、発話110に関連付けられたオーディオ信号114を、第1の段階「A」におけるユーザ100の個別化された発音辞書152を保持するサーバ130に送信する(160)。オーディオ信号114は、コマンド110aに対応するオーディオ信号の第1の部分と、エンティティ名110bに対応するオーディオ信号の第2の部分とを含むことができる。
【００２６】
サーバ130は、発話110に対応するオーディオ信号114を受け取り、受け取ったオーディオ信号114を自動会話認識器140に転送する。自動会話認識器140は、その後エンティティ名110bに対応するオーディオ信号114の一部を抽出する。自動会話認識器140は、オーディオ信号114の抽出された部分とタイムスタンプを関連付け、1または複数のユーザ100の音声発話110に対応するオーディオ信号114のインカム部分をキャッシュするように設計されたメモリ134の一部にオーディオ信号114の抽出した部分を格納することができる。メモリ134は、無制限にオーディオ信号114の抽出された部分を格納してよい。代替的に、しかしながら、メモリ134は、所定の期間の間だけオーディオ信号114の抽出された部分を格納してもよい。例えば、オーディオ信号114の抽出された部分は、オーディオ信号114の抽出された部分に関連付けられたエンティティ名の正しい翻音が判定されるまで格納される。代替的にまたは追加で、オーディオ信号114の抽出された部分は、コマンド110aが完了するまで格納されてよい。自動会話認識器140は、オーディオ信号114の抽出された部分に最もよく関連付けられる音素のセットを特定し、その後発声発音に音素のセットをマッピングする。
【００２７】
図1Aに示された例に基づくと、自動会話認識器140は、ユーザ100によって「Fawr ・ chuh ・ n」と発音されるとして、エンティティ名110b「Fuchun」のための発音表記を生成する。発声発音「Fawr ・ chuh ・ n」が使用されて、発声発音「Fawr ・ chuh ・ n」に関連付けられたエンティティ名について、任意の更新の前に、第1のステージ「A」に存在するユーザ100の個別化された発音辞書152を検索する。ステージ「A」では、個別化された発音辞書152は、「Fawr ・ chuh ・ n」の発声発音に十分に関連付けられたエントリを含んでいない。自動会話認識器140は、1つまたは複数の他の会話変換処理を使用して、発声発音「Fawr ・ chun ・ n」に最も近い発声発音を判定する。図1Aの例では、自動会話認識器140は、発声発音に十分に対応するエンティティ名が「Fortune」であると判定し、それに応じてオーディオ信号114の抽出された部分を翻音する。自動会話認識器140は、その後サーバ130にユーザ100のモバイルデバイス120に生成した翻音116を返送するように要求してもよい。
【００２８】
サーバ130は、翻音116に関連付けられた追加の情報をモバイルデバイス120に送信(162)してもよい。例えば、モバイルデバイス120に送信(162)された翻音116はまた、ステージ「A」のユーザ100の個人発音辞書152が、発声発音「Fawr ・ chuh ・ n」に対応するエントリを含んでいなかったという指示に関連付けられる。代替的にまたは追加で、翻音116は、ステージ「A」における、オーディオ信号114の抽出された部分に対応する生成された発声発音に最も一致し得る、ユーザ100の個別化された発音辞書152の中の1つまたは複数の連絡先のリストに関連付けられる。この追加の情報は、個別化された発音辞書150がユーザ100によって発話されたユニークなエンティティ発音112を学習することを助けるために使用されるフィードバック情報をユーザ100に促すためにサーバ130によってモバイルデバイス120に提供される。
【００２９】
翻音116「Fortune」および翻音116とともに送信された追加の情報を受け取ることに応答して、モバイルデバイス120は、翻音116に関連するフィードバック情報をユーザ100に促す(124)。モバイルデバイス120は、例えば、受け取った翻音116が、ステージ「A」のユーザ100の個別化された発音辞書152が翻音「Fortune」に対応したエントリを含んでいなかったという指示に関連付けられていたという判定に応答して、プロンプト124を生成する。プロンプト124は、例えば、翻音116を生成するために使用される発声発音に最も一致するステージ「A」のユーザ100の個別化された発音辞書152に格納されていた1つまたは複数の連絡先名のリストを提供する。一例では、プロンプト124は、ユーザが音声発話110を「Fawr ・ chuh ・ n」112と発音されたエンティティ名で声に出したときに、ユーザ100が電話をかけようと意図した連絡先名を選択するようにユーザに尋ねる。例えば、ユーザ100に提供される連絡先名のリストは、Fuchini、Fucili、およびFuchunを含み、各々がステージ「A」のユーザ100の個別化された発音辞書152のエントリに関連付けられる。いくつかの実施形態では、提供された連絡先のリストが、エンティティ名のユーザのユニークな発音に音声学的に近くない場合がある。例えば、プロンプトに提供される連絡先名のリストは、例えば、Edwin、Fuchun、およびSteveなどの音声学的に関係のないエンティティ名であってよい。プロンプト124に応答して、ユーザ100は、発話110でユーザ100が声に出したエンティティ名が「Fuchun」だったと知っているので、ユーザは、「Fuchun」を選択する。「Fuchun」のユーザ100の選択に応答して、モバイルデバイス120は、「Fuchun」に電話を開始し、サーバ130にフィードバック情報118を送信(164)できる。
【００３０】
モバイルデバイス120は、ユーザ100からフィードバックを取得するためのオーディオプロンプトを使用してもよい。例えば、翻音116および翻音116とともに送信された追加の情報の受け取りに応答して、モバイルデバイス120は、ユーザ100がFortuneに電話したいのかどうか(「Call Fortune?」)をユーザ100に尋ねる(172)。そのような場合では、ユーザ100は、ユーザが「Fortune」に電話したいことをユーザ100が確認するまたは拒否するかどうかの指示を提供する、1つまたは複数の後続の発話を提供してよい。代替的にまたは追加で、ユーザ100は、ユーザ100が電話しようとしているエンティティのエンティティ名をタイピングしてもよい。他のタイプのフィードバック情報がユーザ100によって提供され得る。そのようなフィードバック情報は、フィードバック情報118と同様の方法で、サーバ130に同様に送信され、その後、以下に記載するように、フィードバック情報118と同様の方法で使用される。
【００３１】
サーバ130は、フィードバック情報118を受け取り、フィードバック情報118を自動会話認識器140に転送する。フィードバック情報118は、例えば、プロンプト124に応答して、ユーザ100が入力するエンティティ名の指示を含む。この例では、フィードバック情報118は、ユーザがエンティティ名「Fuchun」を選択したことを示す。加えて、その前あるいはその後のいずれか、または実質的に同時に、自動会話認識器140は、元々受け取られ、格納され、およびタイムスタンプを付けられたオーディオ信号114の抽出された部分を取り出す。オーディオ信号114の抽出された部分は、ユーザが発話110を声に出した時、ユーザ100によってユニークに発音された112エンティティ名110bに対応する。自動会話認識器140は、オーディオ信号114の抽出された部分に関連付けられたタイムスタンプに基づいて、オーディオ信号114の抽出された部分を取り出す。例えば、一つの実施形態では、自動会話認識器140は、関連付けられたタイムスタンプに基づいて、最も最近に受け取られ、抽出され、格納されたオーディオ信号114の抽出された部分を取得する。
【００３２】
自動会話認識器140は、オーディオ信号114の抽出された部分およびフィードバック情報118を使用して、個別化された発音辞書150にエンティティ名110bのユーザ100のユニークな発音112を教える。例えば、自動会話認識器140は、上述したように、オーディオ信号114の抽出された部分のための発声発音を生成する。代替的に、自動会話認識器140は、オーディオ信号114の元々の受け取りに応答して、生成され格納されたオーディオ信号114の抽出された部分に対応する以前に生成された発声発音を取り出してよい。この例では、声に出された発話110のエンティティ名110bのユーザ100のユニークな発音112に対応するオーディオ信号114の抽出された部分の生成された発声発音は、「Fawr ・ chuh ・ n」である。自動会話認識器140は、その後エンティティ名152「Fuchun」に対応する、個別化された発音辞書152からのエントリを特定する。次に、自動会話認識器140は、「Fyoo ・ chuh ・ n」のエントリの初期の発音が、ユーザ100のユニークな発音「Fawr ・ chuh ・ n」によって置き換えられるように、エンティティ「Fuchun」に関連付けられた個別化された発音辞書のエントリを更新する。エンティティ名「Fuchun」に関連付けられたエントリに対応する初期の発音をユーザ100のユニークの発音「Fwar ・ chuh ・ n」に置き換えることは、ユーザの個別化された発音辞書150をステージ「B」に移行する。ステージ「B」では、ユーザ100の個別化された発音辞書154は、ユーザ100のユニークな発音「Fawr ・ chuh ・ n」にエンティティ名154a「Fuchun」を関連付けるエントリを含む。
【００３３】
図1Bは、個別化された連絡先の発音を学習するためのシステム100Bの特徴を示すコンテキスト図である。システム100Bは、図1に示されるシステム100Aと実質的に同じである。しかしながら、システム100Bは、エンティティ名「Fuchun」のユーザ100のユニークな発音112を学習した後、ステージ「B」に移行したユーザの個別化された発音辞書154を利用する。
【００３４】
一旦マイクロフォンが有効になると、ユーザ100は、ユーザのモバイルデバイス120に関連付けられたマイクロフォン125によって検出される発話210を声に出す。発話210は、システム100Aの例では、ユーザ100によって声に出された発話110と実質的に同じ発話でよい。例えばユーザ100は、システム100Aの例では、ユーザがエンティティ名Fuchunをユニークに発音したのと同様に、または実質的に同様に、エンティティ名210b「Fuchun」を「Fawr ・ chuh ・ n」としてユニークに発音する。同様に、声に出された発話210に関連付けられたコマンド210aは、声に出された発話110に関連付けられた「Call」コマンドと同じである。しかしながら、システム100Bは、ステージ「B」でのユーザの個別化された発音辞書154がエンティティ名「Fuchun」のユーザ100のユニークな発音を学習しているので、発話210に対応するオーディオ信号を異なるように処理できる。
【００３５】
マイクロフォン125は、発話210に関連付けられたオーディオ信号をキャプチャし、発話210に関連付けられたオーディオ信号214を、第2のステージ「B」のユーザの個別化された発音辞書154を保持するサーバ130に送信する(260)。オーディオ信号214は、コマンド210aに対応するオーディオ信号の第1の部分と、エンティティ名210bに対応するオーディオ信号の第2の部分とを含む。オーディオ信号214は、実質的にオーディオ信号114と同じであり、オーディオ信号214は、声に出された発話110と実質的に同じ声に出された発話210に対応する。
【００３６】
サーバ130は、発話210に対応するオーディオ信号214を受け取り、自動会話認識器140に受け取ったオーディオ信号214を転送する。自動会話認識器140は、その後エンティティ名210bに対応するオーディオ信号214の一部を抽出する。自動会話認識器140は、オーディオ信号214の抽出された部分にタイムスタンプを関連付け、1または複数のユーザ100の音声の発話110に対応し得るオーディオ信号214の入ってくる部分をキャッシュするように設計されたメモリ134の一部にオーディオ信号214の抽出された部分を格納する。メモリ134は、オーディオ信号214の抽出された部分を無制限に格納できる。しかしながら、代替的に、メモリ134は、所定の期間の間だけオーディオ信号214の抽出された部分を格納してもよい。例えば、オーディオ信号214の抽出された部分は、オーディオ信号214の抽出された部分に関連付けられたエンティティ名の正しい翻音が判定されるまで格納される。代替的にまたは追加で、オーディオ信号214の抽出された部分は、コマンド210aが完了するまで格納されてもよい。自動会話認識器140は、オーディオ信号214の抽出された部分に最もよく関連付けられる音素のセットを特定し、その後発声発音に音素のセットをマッピングする。
【００３７】
図1Bに示された例に基づくと、自動会話認識器140は、ユーザ100によって「Fawr ・ chuh ・ n」と発音されるように、エンティティ名210b「Fuchun」のための発音表記を生成する。発声発音「Fawr ・ chuh ・ n」は、発声発音「Fawr ・ chuh ・ n」に関連付けられたエンティティ名のために、少なくとも一度更新された後の、第2のステージ「B」に現在存在するユーザ100の個別化された発音辞書154を検索するために使用される。ステージ「B」、個別化された発音辞書154が、「Fawr ・ chuh ・ n」の発声発音に十分に関連付けられるエントリを含む。例えば、個別化された発音辞書154は、個別化された発音辞書154がユーザ100のユニークな発音「Fawr ・ chuh ・ n」に関連付けられるように学習した連絡先名154a「Fuchun」を有するエントリを含む。一致した発声発音は、オーディオ信号214の抽出された部分が、「Fuchun」として翻音されることを示す。自動会話認識器140は、その後生成した翻音280をユーザ100のモバイルデバイス120に返送するようにサーバ130に要求する(262)。
【００３８】
サーバ130は、翻音280に関連付けられ得るモバイルデバイス120に追加の情報を送信(262)してもよい。例えば、262でモバイルデバイス120に送信された翻音280は、ステージ「B」におけるユーザ100の個別化された発音辞書154が、発声発音「Fawr ・ chuh ・ n」に対応する特定のエンティティ名を含んでいたという指示に関連付けられてもよい。代替的にまたは追加で、翻音280は、オーディオ信号214の翻音が成功したということの指示、および/またはユーザのコマンド210aを開始するための指示に関連付けられてもよい。例えば、特定のデータフラグあるいは特定のデータビットなどが、成功した翻音の指示を提供するために返されてもよい。この追加の情報は、モバイルデバイス120にコマンド110aを実行させるために、サーバ130によってモバイルデバイス120に提供され得る。システム100Bの例では、追加の情報がモバイルデバイス120に「Fuhun」に電話させることを指示、あるいはそうでなければトリガできる。電話の状態227は、グラフィカルユーザインターフェース120を介して表示され得る。代替的にまたは追加で、モバイルデバイスのスピーカ126は、例えば「Fuchunに電話する(Calling Fuchun)」ことを記載した、電話が試みられていることを示す出力アラートを提供してよい。
【００３９】
図1Aおよび1Bに関連するシステム100Aおよび100Bの例はそれぞれ、(「電話(Call)」)コマンド110aおよび210aを含む声に出された発話110および210を利用する。しかしながら、本開示はそのように限定される必要はない。例えば、本開示に従って、様々な他のコマンドが、発話され、処理され、および実行されてよい。例えば、ユーザ100は、「ヨセミテ国立公園に向かう(Directions to Yosemite National Park)」などの発話を声に出す場合がある。モバイルデバイス120のマイクロフォン125は、その発話に対応するオーディオ信号をキャプチャし、サーバ130にそのオーディオ信号を送信する。サーバ130は、同様にエンティティ名に対応するオーディオ信号の一部を抽出し、この例では、その一部は「ヨセミテ国立公園(Yosemite National Park)」であり、その後オーディオ信号の抽出された部分をタイムスタンプに関連付ける。
【００４０】
サーバ130は、オーディオ信号の抽出された部分を、自動会話認識器140に渡してよい。自動会話認識器140は、その後音響モデルを使用して音素のセットを取得し、取得した音素のセットに基づいて、「ヨセミテ国立公園(Yosemite National Park)」に対応するオーディオ信号の抽出された部分の発声発音を生成する。自動会話認識器140はさらに、生成した発声発音に基づいて、様々な異なる関心点を含む個別化された地理的データベースを検索してよい。個別化された地理的データベースのエントリが、生成した発声発音に対応する発声発音に関連付けられるとして特定されない場合、サーバ130は自動会話認識器140を利用して、生成した発声発音の最も近い翻音を特定する。最も近い翻音は、モバイルデバイス120に送信され、フィードバック情報の要求、および/または個別化された地理的データベースの検索を介して特定された一つまたは複数の最も近い一致を含むプロンプトを介してユーザ100に提示され得る。任意の受け取られたフィードバック情報がサーバ130に返送され、上述したように、格納されたオーディオ信号およびフィードバック情報に基づいて個別化された地理的データベースを更新するために使用され得る。一旦、個別化された地理的データベースが、ユーザがどのようにエンティティ名「ヨセミテ国立公園(Yosemite National Park)」を発音するのかを学習すると、自動会話認識器140は、オーディオ信号において受け取られた時、エンティティ名を適切に翻音でき、翻音されたエンティティ名に関連付けられたロケーション情報を探し、ユーザを「ヨセミテ国立公園(Yosemite National Park)」にナビゲートするのに役立つようにモバイルデバイス120によって使用され得るロケーション情報をモバイルデバイス120に提供する。例えば、電子メールコマンドまたはテキストメッセージコマンドなどさらに別のタイプのコマンドが本開示によって利用され得る。
【００４１】
従って、本開示の態様は特定の種類のアプリケーションに限定されず、代わりに、例えば、電話アプリケーション、メッセージングアプリケーション、電子メールアプリケーション、地図アプリケーション、エンターテイメントアプリケーションなどを含む音声コマンドを受け取るように構成され得る様々な異なるタイプのモバイルアプリケーションに適用できる。
【００４２】
図1Aおよび1Aを参照して記載された例は、サーバ130と相互作用するモバイルデバイス120が記載されている。しかしながら、サーバ130によって実行されるとして記載された機能のいずれもが、モバイルデバイス120によって実行され得ると考えられる。例えば、プロセッサ132によって実行されるアクション、自動会話認識器140、および/または発音辞書150は、モバイルデバイス120によって実行されてよい。そのような実施形態、あるいは他の実施形態では、発音辞書150の一部またはすべては、サーバ130の代わりにモバイルデバイス120に格納される。
【００４３】
図2は、個別化された発音辞書における連絡先の発音を学習するために利用されるプロセス200の例のフローチャートである。
【００４４】
プロセス200は、サーバ230がコマンドおよびエンティティを含むユーザ100からの発話を受け取る(202)ことで始まる。発話はオーディオ信号のセットの形式であってよい。サーバ230は、エンティティ名に関連付けられた発話の一部を抽出(204)する自動会話認識器に受け取った発話を転送できる。エンティティ名に対応する発話の抽出された部分は、その後タイムスタンプと関連付けられるとともに、サーバ230に関連付けられたメモリに格納され得る。
【００４５】
受自動会話認識器は、オーディオ信号の抽出された部分の初期の翻音を生成する(206)。オーディオ信号の抽出された部分の初期の翻音は、一連の1つまたは複数のステージを実施することによって生成される。例えば、自動会話認識器は、オーディオ信号の抽出された部分に関連付けられ得る音素のセットを特定するために、音響モデルなどのモデルを使用する。そして、音素は、オーディオ信号の抽出された部分に対応する発声発音にマッピングされ得る。発声発音は、ユーザの個別化された発音辞書からエンティティ名を取り出すために使用され得る。生成した発声発音に十分に一致する発声発音と関連付けられるユーザの個別化された発音辞書のエントリが見つけることができない限り、自動会話認識ユニットは、初期の翻音として利用されるべき利用可能な最も近い一致を選択する。代替的に、他の方法が使用して、オーディオ信号の抽出した部分の最も近い可能な初期の翻音を特定してもよい。例えば、ある音声テキスト変換処理が、ユーザの個別化された発音辞書とは独立して初期の翻音を生成するように実施され得る。一旦生成されると、初期の翻音は、その翻音に関してユーザ100にフィードバックを要求するようにモバイルデバイス120をトリガし得る追加の情報とともにユーザ100のモバイルデバイス120に送信される。
【００４６】
いくつかの実施形態では、サーバは、208でオーディオ信号の抽出された部分に対する正しい翻音を取得してよい。正しい翻音は、例えばユーザ100から受け取られたフィードバックに基づく。例えば、モバイルデバイス120によって受け取られた初期の翻音116に応答して、モバイルデバイス120は、初期の翻音に関連するフィードバックについてユーザ100にプロンプト124を出す。代替的にまたは追加で、プロンプト124は、図1Aに示されているように、1つまたは複数の正しい翻音のリストを表示する。ユーザ100は、提供された正しい翻音の一つを選択し、選択された正しい翻音はフィードバック情報118としてサーバ230に送信(164)される。いくつかの場合では、フィードバック情報118は、初期の翻音とは異なる正しい翻音を含む。
【００４７】
しかしながら、代替的に、初期の翻音が十分に適切な翻音である場合がある。例えば、ユーザ100は、初期の翻音116が正しいと判断し、新しいエントリとして個別化された発音辞書に加えられるにする必要がある。ユーザは、例えば、モバイルデバイスが、モバイルデバイス120からのプロンプト172に応答して、「Fortune」に電話すべきであると確認することによって、初期の翻音の選択または確認を開始し得る。ユーザ100は、「Fortune」に電話することを確認する場合、ユーザ100は、Fortuneの連絡先情報を入力して電話の完了を容易にする。Fortuneの名前がサーバに返送され、生成された発声発音とともに個別化された発音辞書に追加される。このように、いくつかの実施形態では、フィードバック情報118が、初期の翻音116が十分に適切な翻音であることを示すフィードバックを含み得る。
【００４８】
サーバ230は、正しい翻音を受け取り、正しい翻音を自動会話認識器に転送する。自動会話認識器は、タイムスタンプに基づいて以前に格納されたユーザ100のオーディオ信号の抽出された部分を取得する。例えば、自動会話認識器は、最も最近のタイムスタンプに関連付けられたユーザ100のオーディオ信号の抽出された部分を取り出す。自動会話認識器は、上述したように、ユーザのオーディオ信号の抽出された部分に対応する発声発音を生成する。その後、自動会話認識器は、受け取った正しい翻音に生成した発声発音を関連付ける(210)。生成した発声発音は、エンティティ名のユーザ100のユニークな発音に対応する。
【００４９】
自動会話認識器は、生成された発声発音に基づいて正しい翻音に対応するエンティティ名を含む個別化された発音辞書のエントリを更新する(212)。いくつかの実施形態では、個別化された発音辞書のエントリを更新することは、エンティティ名の初期の発音の代わりに、個別化された発音辞書に生成された発声発音を格納することによって、ユーザのユニークなエンティティ名の発音に、エンティティ名の初期の発音を置き換えることを含む。このことは、例えば、個別化された発音辞書からエンティティ名の初期の発音を削除することを含む。代替的に、個別化された発音辞書のエントリを更新することは、エントリの初期の発音と生成された発声発音の両方を格納し、その後、ユーザのユニークな発音を示し得る、より重い重さ、より高いランク、またはより高いスコアを生成された発声発音に割り当てることを含む。代替的に、システムは、エントリの初期の発音と生成された発声発音の両方を、個別化された発音辞書に格納し、両方の発音は、発話されたエンティティ名の翻音の間、会話認識器によって考慮される。しかしながら、代替的に、いくつかの実施形態では、生成された発音表記は、個別化された発音辞書とは別個に、一般的には独立した場所に格納され得る。そのような実施形態では、個別化された発音辞書のエントリを更新することは、正しい翻音に対応する個別化された発音辞書のエントリと、1つまたは複数の生成された発音表記を保持する別のストレージの場所との間に概念的なリンクを単に生成することを含み得る。
【００５０】
図3は、グローバル発音辞書にエンティティ発音を学習するために利用され得る処理300の例のフローチャートである。
【００５１】
いくつかの例では、システム100Aは、複数のユーザのセットの間で共有される、グローバル発音辞書を含んでもよい。そのようなグローバル発音辞書は、ある地理的な領域において利点があり、特定の人口の多数が、例えば、同じ音声のピッチ、トーン、エモーション、またはアクセントなど、1つまたは複数の特定の音声の特色をそれぞれ共有する。そのような場合、グローバルな発音辞書は、個別化された発音辞書150の代わりに、または個別化された発音辞書150に加えて利用され得る。例えば、グローバル発音辞書は、エンティティ名に対応するオーディオ信号の特定の部分に最も近い翻音一致を取得するために、自動会話認識器が検索し得る別のデータベースを提供する。代替的にまたは追加で、個別化された発音辞書150およびグローバル発音辞書は、1つまたは複数のストレージ仮想化技術を使用して同じプールのデータとして見えてもよい。グローバル発音辞書は、以降に記載するグローバル発音辞書の特定の機能を除いて、個別化された発音辞書150と実質的に同じように機能する。
【００５２】
グローバル発音辞書においてエンティティ発音を学習するための処理300が、複数の異なる独立したユーザによって収集された特定の発話の翻音を決定する(302)ことから始まる。サーバ130は、複数の異なるユーザのそれぞれに対して生成された複数のユニークな発声発音のそれぞれを分析して、特定のエンティティ名に同じユニークな発声発音を関連付けたユーザのサブセットを特定する(304)。特定のエンティティ名についてのユニークな発声発音は、例えば、発声発音「Chow ・ der hous」に一般的に関連付けられる、エンティティ名「Chowder House」についてのユニークな発声発音「Chow ・ da hous」である。サーバ130は、特定のエンティティ名に同じユニークな発声発音を関連付けた個別のユーザの数を追跡するカウンタを保持する。サーバ130は、その後、特定のエンティティ名に同じユニークな発声発音を関連付けたユーザのサブセットが所定のしきい値を超えたかどうかを判定する。同じエンティティ名に同じユニークな発声発音を関連付けたユーザの数が所定のしきい値を超えたと判定する(306)場合、ユニークな発声発音を使用して、ユニークな発声発音に基づいて特定のエンティティについてのグローバル発音辞書を更新する(308)。
【００５３】
用語「データ処理装置」は、プログラム可能なプロセッサ、コンピュータ、または複数のプロセッサあるいはコンピュータ、などを含む、データを処理するための全ての種類の装置、デバイス、機械を含む。装置は、例えば、FPGA(Field Programmable Gate Array)またはASIC(Application Specific Integrated Circuits)などの専用論理回路を含むことができる。装置はまた、ハードウェアに加えて、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはそれらの1つまたは複数の組み合わせを構成するコードなど、当のコンピュータプログラムのための実行環境を作成するコードを含むことができる。
【００５４】
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、モジュール、ソフトウェアモジュール、スクリプト、またはコードとしても参照または記載される)は、コンパイル型またはインタープレット型の言語、あるいは宣言型または手続き型言語を含む、任意の形式のプログラミング言語で記述され、スタンドアロンプログラム、あるいはモジュール、コンポーネント、サブルーチン、またはコンピューティング環境における適切な使用のための他のユニットを含む任意の形式で展開され得る。コンピュータプログラムは、必須ではないが、ファイルシステムにおけるファイルに対応してもよい。プログラムは、他のプログラムまたはデータ(例えば、マークアップ言語ドキュメントに格納される1つまたは複数のスクリプト)を、当のプログラム専用の単一のファイル、複数のコーディネートされたファイル(例えば、1つまたは複数のモジュール、サブプログラム、またはコードの一部を格納するファイル)に保持するファイルの一部に格納され得る。コンピュータプログラムは展開され、一つのコンピュータ上で、あるいは一つのサイトまたは通信ネットワークによって相互接続された複数のサイトにわたって分散されて配置される複数のコンピュータ上で実行される。
【００５５】
本明細書に記載された処理および論理フローは、入力データに基づいて動作して出力を生成することによって、機能を実行するように1つまたは複数のコンピュータプログラムを実行する1つまたは複数のプログラム可能なコンピュータによって実行される。処理および論理フローは、例えば、FPGA(Field Programmable Gate Array)またはASIC(Application Specific Integrated Circuits)などの専用論理回路によって実行され、装置もまた該専用論理回路として実装され得る。
【００５６】
コンピュータプログラムの実行に適したコンピュータは、例えば、汎用または専用のマイクロプロセッサ、汎用および専用のマイクロプロセッサ、または任意の他の種類の中央処理ユニットに基づくものであり得る。一般に、中央処理ユニットは、読み取り専用メモリ、ランダムアクセスメモリ、または両方から命令またはデータを受け取る。コンピュータの必須の要素は、命令を実行するまたは実施するための中央処理ユニットと、命令およびデータを格納するための1つまたは複数のメモリデバイスである。一般に、コンピュータは、例えば、磁気ディスク、光磁気ディスク、または光ディスクなどデータを格納するための1つまたは複数の大容量のストレージデバイスを含むか、または該1つまたは複数の大容量のストレージデバイスとデータを送受信するために動作可能に接続されるか、あるいはその両方である。しかしながら、コンピュータは、そのようなデバイスを有する必要はない。その上、コンピュータは、例えば、ほんの数例を挙げると、携帯電話、個人情報端末(PDA)、モバイルオーディオ/ビデオプレーヤ、ゲームコンソール、GPSレシーバ、またはポータブルストレージデバイス(例えば、ユニバーサルシリアルバス(USB)フラッシュドライブ)など他のデバイスに組み込まれ得る。
【００５７】
コンピュータプログラム命令およびデータを格納するために適したコンピュータ可読媒体は、例えば、EPROM、EEPROM、およびフラッシュメモリデバイスなどの半導体メモリデバイス、内臓ハードディスクまたはリムーバブルディスクなどの磁気ディスク、光磁気ディスク、およびCD-ROMおよびDVD-ROMディスクを含む、すべての形式の不揮発性メモリ、媒体、およびメモリデバイスを含む。プロセッサおよびメモリは、専用論理回路によって補完されるか、または専用論理回路に組み込むことができる。
【００５８】
ユーザとのインタラクションを提供するために、本願明細書に記載の主題の実施形態は、ユーザに情報を表示するための、例えば、CRT(陰極線管)またはLCD(液晶ディスプレイ)モニタなどの表示デバイス、およびキーボードならびにそれによってユーザがコンピュータに入力を提供できる、マウスまたはトラックボールなどのポインティングデバイスを有するコンピュータ上に実装され得る。他の種類のデバイスがまた、ユーザとのインタラクションを提供するために使用でき、例えば、ユーザに提供されるフィードバックは、視覚フィードバック、聴覚フィードバック、または触覚フィードバックなどの任意の形式の知覚フィードバックのであってよく、ユーザからの入力は、音響、会話、または触覚入力を含む任意の形式で受け取られ得る。加えて、コンピュータは、例えば、ウェブブラウザから受け取ったリクエストに応答して、ユーザのクライアントデバイス上のウェブブラウザにウェブページを送信することなど、ユーザに使用されるデバイスとの間でドキュメントを送受信することによってユーザとインタラクションが可能である。
【００５９】
本明細書に記載の主題の実施形態は、例えばデータサーバとして、バックエンド構成要素を含み、または、例えばアプリケーションサーバなどのミドルウェア構成要素を含み、あるいは、例えば、ユーザが本明細書に記載の主題の実施形態とインタラクションすることができるグラフィカルユーザインターフェースまたはウェブブラウザを有するクライアントコンピュータなどのフロントエンド構成要素を含み、またはそのようなバックエンド構成要素、ミドルウェア構成要素、フロントエンド構成要素の1つまたは複数の任意の組み合わせを含むコンピューティングシステムにおいて実装され得る。システムの構成要素は、例えば、通信ネットワークなどの、任意の形式あるいは任意の媒体のデジタルデータ通信によって相互接続され得る。通信ネットワークの例は、ローカルエリアネットワーク(「LAN」)およびワイドエリアネットワーク(「WAN」)を含む。
【００６０】
コンピューティングシステムは、クライアントおよびサーバを含むことができる。クライアントおよびサーバは、一般に互いに遠隔にあり、典型的には通信ネットワークを介して相互作用する。クライアントとサーバの関係は、それぞれのコンピュータ上で実行されているコンピュータプログラムによって生じ、お互いに対してクライアント-サーバ関係を有する、
【００６１】
本明細書は多くの具体的な実施形態の詳細を含むが、これらは、特許請求の範囲を限定するものとして解釈すべきではなく、むしろ、特定の実施形態に特有の特徴の記載として解釈すべきである。別々の実施形態の文脈で本明細書に記載されるある特徴は、単一の実施形態において組み合わせて実装することもできる。逆に、単一の実施形態の文脈で記載された様々な特徴は、別々の複数の実施形態、あるいは、任意の適切なサブコンビネーションで実装することもできる。その上、特徴がある組み合わせにおいて動作するように上述され、そのように当初に請求されていることさえあるが、請求された組み合わせからの1つまたは複数の特徴が、ある場合では組み合わせから削除されてよく、請求された組み合わせは、サブコンビネーションまたはサブコンビネーションの変形に向けられていることもある。
【００６２】
同様に、動作が特定の順序で図面に示されているが、このことは、そのような動作が、所望の結果を達成するために、示された特定の順序でまたはシーケンシャルな順序で実行される必要がある、あるいは図示された動作のすべてが実行される必要がある、と理解すべきではない。ある状況では、多重タスク処理および並列処理が有利である。その上、上述した実施形態の様々なシステム構成要素の分離が、すべての実施形態においてそのような分離が必要であると理解すべきではなく、記述されたプログラムコンポーネントおよびシステムは、一般に、単一のソフトウェア製品に一緒に組み込まれるか、または複数のソフトウェア製品にパッケージングされ得ると理解すべきである。
【００６３】
主題の特定の実施形態が記載されてきた。他の実施形態は、以降の特許請求の範囲の範囲内にある。例えば、特許請求の範囲に記載されたアクションは、異なる順序で実行され、やはり所望の結果を達成し得る。一例として、添付の図面に示される処理は、所望の結果を達成するために、示された特定の順序あるいはシーケンシャルな順序を必ずしも必要としない。ある実施形態では、多重タスク処理および並列処理が有利である。他のステップが提供されてよく、あるいは記載された処理から削除されてよい。それに応じて他の実施形態が以降の特許請求の範囲の範囲内にある。
【符号の説明】
【００６４】
100  ユーザ
110  発話
114  オーディオ信号
116  翻音
118  フィードバック情報
120  モバイルデバイス
122  ユーザインターフェース
124  プロンプト
125  マイクロフォン
126  スピーカ
130  サーバ
132  プロセッサ
134  メモリ
140  自動会話認識器
150、152、154  個別化された発音辞書
【図１Ａ】
0006588637.tif 000002
【図１Ｂ】
0006588637.tif 000003
【図２】
0006588637.tif 000004
【図３】
0006588637.tif 000005