IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ グーグル インコーポレイテッドの特許一覧

<>
  • 特開-音声処理 図1
  • 特開-音声処理 図2
  • 特開-音声処理 図3
  • 特開-音声処理 図4
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022110098
(43)【公開日】2022-07-28
(54)【発明の名称】音声処理
(51)【国際特許分類】
   G10L 15/197 20130101AFI20220721BHJP
   G10L 15/18 20130101ALI20220721BHJP
【FI】
G10L15/197
G10L15/18 300G
【審査請求】有
【請求項の数】20
【出願形態】OL
(21)【出願番号】P 2022081300
(22)【出願日】2022-05-18
(62)【分割の表示】P 2021530940の分割
【原出願日】2019-11-26
(31)【優先権主張番号】62/773,361
(32)【優先日】2018-11-30
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
【氏名又は名称原語表記】Google LLC
【住所又は居所原語表記】1600 Amphitheatre Parkway 94043 Mountain View, CA U.S.A.
(74)【代理人】
【識別番号】100142907
【弁理士】
【氏名又は名称】本田 淳
(72)【発明者】
【氏名】アレクシッチ、ペーター
(72)【発明者】
【氏名】ハイナー、ベンジャミン ポール ヒルソン
(57)【要約】      (修正有)
【課題】新しい言語におけるドメインの音声データを収集することなく、特定のドメインのために言語モデルを適合させる方法及びシステムを提供する。
【解決手段】特定のドメインにおける使用のために言語モデルを適合するプロセスは、特定のドメインで動作するコンピューティング装置によって受信された起点言語における発話の書き起こしを受信する工程と、発話の書き起こしの翻訳書き起こしを目的言語で生成する工程と、目的言語の言語モデルを受信する工程と、翻訳書き起こしに含まれる用語を言語モデルが選択する尤度を上げることによって、目的言語の言語モデルにバイアスをかける工程と、を含む。
【選択図】図3
【特許請求の範囲】
【請求項1】
データ処理ハードウェア上で実行されたときに前記データ処理ハードウェアに動作を実行させるコンピュータが実行する方法であって、前記動作は、
特定のドメインで動作するコンピューティング装置によって受信された起点言語における発話の書き起こしを受信する、発話書き起こし受信工程と、
前記起点言語における発話の受信した前記書き起こしを使用して、前記特定のドメインで動作するデジタルアシスタントのシステムによる使用のため、目的言語の音声認識装置を適合することで、前記音声認識装置が前記特定のドメインに関し識別された一般的な単語または句を含む書き起こしを生成する尤度を上げる工程であって、前記デジタルアシスタントのシステムは前記目的言語の訓練データにアクセスを有さない、工程と、
前記目的言語におけるユーザによって話された発話に対応する音声データを受信する工程であって、前記発話は、前記特定のドメインで動作する前記デジタルアシスタントに向けられている、工程と、
適合された前記音声認識装置を使用して前記ユーザによって話された前記発話の書き起こしを前記目的言語で生成する、発話書き起こし生成工程と、を含む方法。
【請求項2】
前記動作は、
前記発話の前記書き起こしの翻訳書き起こしを前記目的言語で生成する工程と、
前記翻訳書き起こしから、前記特定のドメインに関する前記一般的な単語または句を識別する工程と、をさらに含む請求項1に記載の方法。
【請求項3】
前記一般的な単語または句を識別する工程は、
前記翻訳書き起こしに現れるn-gramおよび各n-gramの出現頻度を識別する工程と、
出現頻度閾値を超えて前記翻訳書き起こしに現れる前記n-gramの一部を識別する工程と、を含む、請求項2に記載の方法。
【請求項4】
前記動作は、
前記n-gramの前記一部における各n-gramに対して、前記n-gramの前記出現頻度および前記出現頻度閾値間の大幅な差異に基づき、前記n-gramの前記一部を言語モデルが選択する尤度を大幅に上げる工程を含む、請求項3に記載の方法。
【請求項5】
前記動作は、
前記ドメイン以外のドメインで動作する前記コンピューティング装置によって受信されかつ前記起点言語の追加的な発話の追加的な書き起こしを受信する工程と、
前記追加的な書き起こしの追加的な翻訳書き起こしを生成する工程と、
前記追加的な翻訳書き起こしよりも前記翻訳書き起こしにおいてより高い出現頻度を有する単語または句を識別する工程と、をさらに含み、
前記音声認識装置を適合する工程は、
前記追加的な翻訳書き起こしよりも前記翻訳書き起こしにおいてより高い出現頻度を有する単語または句を言語モデルが選択する尤度を上げることによって、前記目的言語の前記言語モデルにバイアスをかける工程を含む請求項2に記載の方法。
【請求項6】
前記動作は、前記目的言語の文法を受信する工程をさらに含み、
前記音声認識装置を適合する工程は、
前記翻訳書き起こしから識別された前記単語または句を含む文法を言語モデルが選択する尤度を上げることによって、前記目的言語の前記言語モデルにバイアスをかける工程を含む請求項2に記載の方法。
【請求項7】
前記目的言語の前記音声認識装置は、前記目的言語の言語モデルおよび音響モデルを含み、
前記音声認識装置を適合する工程は、
前記特定のドメインに関し識別された前記一般的な単語または句を前記言語モデルが選択する尤度を上げることによって、前記目的言語の前記言語モデルにバイアスをかける工程を含む、請求項1に記載の方法。
【請求項8】
前記発話書き起こし生成工程は、
音響モデルを使用して、前記目的言語における前記ユーザによって話された前記発話の音素を識別する工程と、
バイアスをかけられた前記言語モデルを使用して、前記発話の識別された前記音素に基づいて、前記発話の前記書き起こしを生成する工程と、を含む、請求項6に記載の方法。
【請求項9】
前記目的言語の前記言語モデルは、一般的な言語モデルを含み、
前記目的言語のバイアスをかけられた前記言語モデルは、前記特定のドメインで動作する前記デジタルアシスタントのシステムに特定の言語モデルを含む、請求項6に記載の方法。
【請求項10】
前記データ処理ハードウェアは、ユーザ装置またはサーバ上にある、請求項1に記載の方法。
【請求項11】
データ処理ハードウェアと、前記データ処理ハードウェア上で実行されたときに前記データ処理ハードウェアに動作を実行させる命令を記憶するメモリハードウェアと、を備えるシステムであって、前記動作は、
特定のドメインで動作するコンピューティング装置によって受信された起点言語における発話の書き起こしを受信する、発話書き起こし受信工程と、
前記起点言語における発話の受信した前記書き起こしを使用して、前記特定のドメインで動作するデジタルアシスタントのシステムによる使用のため、目的言語の音声認識装置を適合することで、前記音声認識装置が前記特定のドメインに関し識別された一般的な単語または句を含む書き起こしを生成する尤度を上げる工程であって、前記デジタルアシスタントのシステムは前記目的言語の訓練データにアクセスを有さない、工程と、
前記目的言語におけるユーザによって話された発話に対応する音声データを受信する工程であって、前記発話は、前記特定のドメインで動作する前記デジタルアシスタントに向けられている、工程と、
適合された前記音声認識装置を使用して前記ユーザによって話された前記発話の書き起こしを前記目的言語で生成する、発話書き起こし生成工程と、を含むシステム。
【請求項12】
前記動作は、
前記発話の前記書き起こしの翻訳書き起こしを前記目的言語で生成する工程と、
前記翻訳書き起こしから、前記特定のドメインに関する前記一般的な単語または句を識別する工程と、をさらに含む請求項11に記載のシステム。
【請求項13】
前記一般的な単語または句を識別する工程は、
前記翻訳書き起こしに現れるn-gramおよび各n-gramの出現頻度を識別する工程と、
出現頻度閾値を超えて前記翻訳書き起こしに現れる前記n-gramの一部を識別する工程と、を含む、請求項12に記載のシステム。
【請求項14】
前記動作は、
前記n-gramの前記一部における各n-gramに対して、前記n-gramの前記出現頻度および前記出現頻度閾値間の大幅な差異に基づき、前記n-gramの前記一部を言語モデルが選択する尤度を大幅に上げる工程を含む、請求項13に記載のシステム。
【請求項15】
前記動作は、
前記ドメイン以外のドメインで動作する前記コンピューティング装置によって受信されかつ前記起点言語の追加的な発話の追加的な書き起こしを受信する工程と、
前記追加的な書き起こしの追加的な翻訳書き起こしを生成する工程と、
前記追加的な翻訳書き起こしよりも前記翻訳書き起こしにおいてより高い出現頻度を有する単語または句を識別する工程と、をさらに含み、
前記音声認識装置を適合する工程は、
前記追加的な翻訳書き起こしよりも前記翻訳書き起こしにおいてより高い出現頻度を有する単語または句を言語モデルが選択する尤度を上げることによって、前記目的言語の前記言語モデルにバイアスをかける工程を含む請求項12に記載のシステム。
【請求項16】
前記動作は、前記目的言語の文法を受信する工程をさらに含み、
前記音声認識装置を適合する工程は、
前記翻訳書き起こしから識別された前記単語または句を含む文法を言語モデルが選択する尤度を上げることによって、前記目的言語の前記言語モデルにバイアスをかける工程を含む請求項12に記載のシステム。
【請求項17】
前記目的言語の前記音声認識装置は、前記目的言語の言語モデルおよび音響モデルを含み、
前記音声認識装置を適合する工程は、
前記特定のドメインに関し識別された前記一般的な単語または句を前記言語モデルが選択する尤度を上げることによって、前記目的言語の前記言語モデルにバイアスをかける工程を含む、請求項11に記載のシステム。
【請求項18】
前記発話書き起こし生成工程は、
音響モデルを使用して、前記目的言語における前記ユーザによって話された前記発話の音素を識別する工程と、
バイアスをかけられた前記言語モデルを使用して、前記発話の識別された前記音素に基づいて、前記発話の前記書き起こしを生成する工程と、を含む、請求項16に記載のシステム。
【請求項19】
前記目的言語の前記言語モデルは、一般的な言語モデルを含み、
前記目的言語のバイアスをかけられた前記言語モデルは、前記特定のドメインで動作する前記デジタルアシスタントのシステムに特定の言語モデルを含む、請求項16に記載のシステム。
【請求項20】
前記データ処理ハードウェアは、ユーザ装置またはサーバ上にある、請求項11に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一般に、音声入力を処理するためのシステムおよび方法に関する。
【背景技術】
【0002】
音声入力を使用してコンピュータとの対話を実行可能にすることが一段と望まれている。コンピュータとの対話には、入力処理に関する開発、特にどのように自然言語データを処理および分析するようにコンピュータをプログラムするかに関する開発を必要とする。このような処理は、話し言葉からテキストへの認識および翻訳をコンピュータにより可能にするコンピュータ言語学の分野である音声認識を含み得る。
【発明の概要】
【発明が解決しようとする課題】
【0003】
本発明は、一般に、音声入力を処理するためのシステムおよび方法に関する。
【課題を解決するための手段】
【0004】
最適な音声認識精度のため、一般的な音声認識システムは、ドメイン固有の音声認識に優れるように適合される必要があり得る。ドメインは、音声データを受信する装置の種類、音声データを受信する装置上で実行されるアプリケーション、および/または音声データを受信する装置の状況に関連し得る。例えば、音声認識システムが、ユーザが車両内で話しそうな単語または句を含む話をより迅速かつ正確に書き起こすことが出来るように車両での使用に適合されている場合、音声認識品質は、車両の音声認識システムにとって向上し得る。
【0005】
音声認識システムを特定のドメインに適合させるために使用される1つの技術は、特定のドメインで動作する音声認識システムによって受信された書き起こしログを分析することであってよい。適合処理は、一般的な音声認識システムの書き起こしログよりも特定のドメインの書き起こしログでより一般的である単語または句を識別することを含んでよい。言語モデルは、特定のドメインの書き起こしログでより一般的な単語または句を含む候補の書き起こしを生成する可能性が高くなるようバイアスをかけられてよい。
【0006】
この技術は、新しい目的言語に特定のドメインの書き起こしログがない場合、目的言語でその特定のドメインの音声認識システムを起動するのに実用的ではない可能性がある。この場合、別の言語のドメイン固有の書き起こしログを活用することが役立ち得る。言語モデル適合システムは、このドメイン固有の書き起こしログを目的言語に翻訳してよい。言語モデル適合システムは、翻訳書き起こしログを分析して、特定のドメインで動作している装置に話しかけるユーザにとってより一般的であると思われる単語や句を識別してよい。識別した一般的な単語を使用して、言語モデル適合システムが目的言語の汎用言語モデルにバイアスをかけることで、バイアスをかけられた言語モデルは、目的言語において他の単語と同様に聞こえ得る音声データを処理する際に、一般的な単語を含む書き起こしを生成する可能性が高くなってよい。
【0007】
バイアスをかけられた言語モデルを使用して、目的言語における特定のドメインの音声認識システムを起動し、精度と遅延が改善された音声認識の恩恵を受けてよい。ユーザは、特定のドメインで動作しているシステムに話しかける際にユーザが言う可能性が高い単語や句をシステムの起動時により迅速かつ正確に認識するよう構成された音声認識の恩恵を受け得る。
【0008】
本明細書に記載される発明の革新的な態様によれば、音声入力を処理する方法は、コンピューティング装置が、ドメインで動作するコンピューティング装置によって受信されかつ起点言語の発話の書き起こしを受信する、発話書き起こし受信工程と、コンピューティング装置が、発話の書き起こしの翻訳書き起こしを目的言語で生成する工程と、コンピューティング装置が、目的言語の言語モデルを受信する工程と、コンピューティング装置が、翻訳書き起こしに含まれる用語を言語モデルが選択する尤度を上げることによって、目的言語の言語モデルにバイアスをかける、言語モデルバイアス工程と、コンピューティング装置が、ドメインで動作しながら、バイアスをかけられた言語モデルを使用して発話の書き起こしを目的言語で生成する、発話書き起こし生成工程と、の動作を含む。
【0009】
これらおよび他の実装の各々は、1つまたは複数の以下の特徴を選択的に含んでよい。発話書き起こし生成工程の動作は、コンピューティング装置が、ドメインで動作しながら、発話の音声データを受信する工程と、コンピューティング装置が、音声データを、発話の音素を識別するよう構成された音響モデルの入力として提供する工程と、コンピューティング装置が、ドメインで動作するコンピューティング装置に基づき、発話の音素を、バイアスをかけられた言語モデルの入力として提供する、音素提供工程と、コンピューティング装置が、音素提供工程に基づき、発話の書き起こしを生成する工程と、を含む。目的言語の言語モデルは、一般的な言語モデルである。目的言語のバイアスをかけられた言語は、ドメインで動作するコンピューティング装置に特定の言語モデルである。動作は、コンピューティング装置が、翻訳書き起こしに現れるn-gramおよび各n-gramの出現頻度を識別する工程と、コンピューティング装置が、出現頻度閾値を超えて翻訳書き起こしに現れるn-gramの一部を識別する工程と、をさらに備える。
【0010】
コンピューティング装置が、n-gramの一部を言語モデルが選択する尤度を上げることによって、言語モデルにバイアスをかける。n-gramの一部を言語モデルが選択する尤度を上げる動作は、n-gramの一部における各n-gramに対して、n-gramの出現頻度および出現頻度閾値間の大幅な差異に基づき、尤度を大幅に上げる工程を含む。動作は、コンピューティング装置が、ドメインで動作するコンピューティング装置によって受信されかつ起点言語の発話の音声データを受信する、音声データ受信工程をさらに備える。発話書き起こし受信工程は、コンピューティング装置が、ドメインで動作するコンピューティング装置によって受信されかつ起点言語の発話の書き起こしを生成する工程を含む。動作は、コンピューティング装置が、ドメイン以外のドメインで動作するコンピューティング装置によって受信されかつ起点言語の追加的な発話の追加的な書き起こしを受信する工程と、コンピューティング装置が、追加的な書き起こしの追加的な翻訳書き起こしを生成する工程と、追加的な翻訳書き起こしよりも翻訳書き起こしにおいてより高い出現頻度を有する用語を識別する工程と、をさらに備える。
【0011】
言語モデルバイアス工程の動作は、追加的な翻訳書き起こしよりも翻訳書き起こしにおいてより高い出現頻度を有する用語を言語モデルが選択する尤度を上げることによって、目的言語の言語モデルにバイアスをかける工程を含む。動作は、コンピューティング装置が、目的言語の文法を受信する工程をさらに備える。言語モデルバイアス工程の動作は、翻訳書き起こしに含まれる用語を含む文法を言語モデルが選択する尤度を上げることによって、目的言語の言語モデルにバイアスをかける工程を含む。
【0012】
この態様の他の実施形態は、対応するシステム、装置、およびコンピュータ記憶装置に記録されたコンピュータプログラムを含み、その各々は方法の動作を実行するよう構成されている。
【0013】
本明細書に記載される発明の特定の実施形態は、以下の利点の1つまたは複数を実現するように実装することが可能である。ドメインでユーザが話す一般的な句(phases)をより正確かつ迅速に認識するよう構成されている新しい言語およびドメインの音声認識システムを起動することが可能であってよい。新しい言語におけるドメインの音声データを収集する必要はなくてよい。
【0014】
本明細書に記載される発明の1つまたは複数の実施形態の詳細は、添付の図面および以下の説明に記載される。発明の他の特徴、態様、および利点は、記載、図面、および特許請求の範囲から明らかになるであろう。
【図面の簡単な説明】
【0015】
図1】翻訳された訓練データを使用して、特定のドメインにおける使用のために言語モデルにバイアスをかける例示的なシステムを示す図。
図2】翻訳された訓練データおよび事前に選択された文法の両方を使用して、特定のドメインにおける使用のために言語モデルにバイアスをかける例示的なシステムを示す図。
図3】特定のドメインにおける使用のために言語モデルを適合させる例示的なプロセスのフローチャート。
図4】コンピューティング装置およびモバイルコンピューティング装置の例。
【発明を実施するための形態】
【0016】
複数の図における同様の参照番号および指定は、同様の要素を示す。
図1は、翻訳された訓練データ110を使用して、特定のドメインにおける使用のために言語モデル105にバイアスをかける例示的なシステム100を示す。つまり、以下でより詳細に説明するように、システム100は、翻訳された訓練データ110を調べて、特定のドメインで話者が使用する可能性のある一般的な単語および句を特定する。システム100は、一般的な単語および句を優先するよう言語モデルにバイアスをかける。
【0017】
スマートスピーカ120は、バイアスをかけられた言語モデル115を自動音声認識処理中に使用してよい。ユーザ125はクエリ130をスマートスピーカ120に話し、スマートスピーカ120はバイアスをかけられた言語モデル115を使用してクエリ130の書き起こしを生成する。クエリ130に基づき、スマートスピーカ120はクエリ130に対する応答135を生成してよい。
【0018】
世界には多くの異なる言語があるので、全ての言語を正確に認識できる音声認識装置を設計することは非実用的になり得る。例えば、同一の音声認識装置であっても英語とトルコ語の両方を認識できない場合がある。代わりに、音声認識装置は、英語の音素を識別するよう訓練された英語音響モデルと、n-gram(例えば、ユニグラムは単一の単語であり、バイグラムは2つの単語を含む句等である)と呼ばれ得る英語の単語および句を識別するよう構成された英語言語モデルとを使用してよい。別の音声認識装置は、トルコ語の音素を識別するよう訓練されたトルコ語音響モデルと、トルコ語の単語および句を識別するよう構成されたトルコ語言語モデルとを使用してよい。音声認識装置が認識するよう構成されていない言語をユーザが話すと、音声認識装置によって生成される書き起こしが正確でない可能性がある。さらに、複数の音響モデルおよび複数の言語モデルにアクセスする音声認識装置に必要な計算資源は高すぎる可能性があり、話者にとって許容できない遅延になりかねない。
【0019】
音声認識装置は、異なる種類の状況に適合されてよい。例えば、音声認識装置は、ディスプレイを備えないスマートスピーカ、ディスプレイを備えたスマートスピーカ、携帯電話上で実行されるデジタルアシスタントアプリケーション、ラップトップコンピュータ上で実行されるデジタルアシスタントアプリケーション、または任意の他の同様なアプリケーションまたは状況によって、車両での使用に適合されてよい。アプリケーションまたは状況は、ドメインと呼ばれ得る。特定の言語を認識するよう構成された音声認識装置は、さまざまなドメインでの使用に適合され得る。例えば、英語の音声認識装置は、携帯電話で実行されるデジタルアシスタントアプリケーションによる使用、またはディスプレイを備えたスマートスピーカによる使用に適合されてよい。携帯電話で実行されるデジタルアシスタントアプリケーションと対話するユーザは、第1セットのn-gramを言う可能性が高く、ディスプレイを備えたスマートスピーカと対話するユーザは、第1セットのn-gramの一部を含み得るまたは含み得ない第2セットのn-gramを言う可能性が高い。したがって、開発者は、携帯電話ドメインで実行されているデジタルアシスタントアプリケーションのために音声認識装置の言語モデルにバイアスをかけて、第1セットのn-gramをより認識しやすくしてよく、また、ディスプレイドメインを有するスマートスピーカのために音声認識装置の言語モデルにバイアスをかけて、第2セットのn-gramをより認識しやすくしてよい。
【0020】
言語モデルにバイアスをかけるためのn-gramの識別は、特定のドメインで動作するコンピューティング装置によって受信された発話の書き起こしを調べることによって実行されてよい。例えば、ディスプレイドメインを有しないスマートスピーカの一般的なn-gramを識別するために、システム100は、ディスプレイを備えないスマートスピーカによって受信された発話の書き起こしを調べてよい。システム100は、最も一般的なn-gramを識別し、それらのn-gramを優先するよう言語モデルにバイアスをかけてよい。ディスプレイを備えないスマートスピーカは、バイアスをかけられた言語モデルを使用して自動音声認識処理を実行してよい。
【0021】
特定の言語に対するこのバイアス処理は、特定のドメインで動作するコンピューティング装置によって受信された発話の書き起こしが特定の言語で利用できない状況では実用的でない可能性がある。ディスプレイを備えないスマートスピーカは、住民が特定の言語を話す国では購入できない可能性があるため、書き起こしを利用できない場合がある。例えば、ディスプレイを備えないスマートスピーカは、トルコでは入手できない可能性がある。したがって、ディスプレイを備えないスマートスピーカにトルコ語を話している人の書き起こしは、たとえあったとしてもごく少ない。
【0022】
書き起こしデータのこの欠如にもかかわらず、システム100は、他の言語からのデータを活用して、目的言語の言語モデルにバイアスをかけることが出来てよい。例えば、システム100は、英語書き起こしデータ140を活用して、トルコ語言語モデル115にバイアスをかけることが出来てよい。これにより、アプリケーションまたは製品が、ディスプレイを備えないスマートスピーカ等の、特定のドメインに偏ったまたは適合されたトルコ語言語モデルで起動出来てよい。
【0023】
図1に示すように、システム100は、ホームアシスタントドメインで動作するコンピューティング装置によって受信された英語書き起こしデータ140にアクセスする。ホームアシスタントドメインで動作する装置は、ディスプレイを備えないスマートスピーカ等の装置を含んでよい。他の装置がホームアシスタントドメインで動作し、それらの装置から収集された書き起こしが英語書き起こしデータ140に追加されてよい。例としては、英語書き起こしデータ140は、「天気は何?」、「ジャズをかけて」、「音量を上げて」、「明かりをつけて」等の書き起こし145、およびホームアシスタントドメインで動作する装置によって受信された他の発話の書き起こしを含んでよい。
【0024】
いくつかの実装においては、システム100は、ホームアシスタントドメインで動作する装置によって受信された発話の音声データに対して自動音声認識を実行することによって、英語書き起こしデータ140を生成してよい。いくつかの実装においては、システム100は、ホームアシスタントドメインで動作する装置によって受信された発話の音声データを書き起こした手動のトランスクライバから英語書き起こしデータ140を受信してよい。いくつかの実装においては、英語書き起こしデータ140は、自動の書き起こしと手動の書き起こしとの両方の混合を含んでよい。
【0025】
システム100は、英語からトルコ語への翻訳機150への入力として英語書き起こしデータ140を提供する。英語からトルコ語への翻訳機150は、英語書き起こしデータ140をトルコ語書き起こしデータ110に自動的に翻訳する機械翻訳機であってよい。いくつかの実装においては、英語からトルコ語への翻訳機150は手動の翻訳機であってよい。
【0026】
トルコ語書き起こしデータ110は、「hava nasi(iはドットなし)l?」、「caz mu(uはウムラウト付き)zik c(cはセディーユ付き)almak」、「sesi ac(cはセディーユ付き)」、および「yani(iはドットなし)yor」等の書き起こし155を含んでよく、それらは、それぞれトルコ語訳の「天気は何?」、「ジャズをかけて」、「音量を上げて」、「明かりをつけて」であってよい。書き起こし155は、英語書き起こしデータ140の追加的な翻訳書き起こしを含んでよい。
【0027】
いくつかの実装においては、英語からトルコ語への翻訳機150は、英語書き起こしデータ140を翻訳する際にエラーを起こし得る。この場合、システム100は、様々なドメインおよび/または一般的なドメインで受信される他の発話から書き起こされた追加的な英語書き起こしデータを翻訳してよい。システム100は、英語からトルコ語への翻訳機150への入力として、一般的な英語書き起こしデータを提供してよい。システム100は、トルコ語書き起こしデータ110を一般的なトルコ語書き起こしデータと比較して、ホームアシスタントドメインにおけるより一般的なn-gramを識別してよい。ドメイン固有の翻訳書き起こしと一般的な翻訳書き起こしの両方を使用することにより、システム100は、翻訳中に発生するエラーの一部を除去することが可能でよい。一般的な書き起こしを翻訳する場合と同様に、ドメイン固有の書き起こしを翻訳する場合、いくつかのエラーが発生する可能性があるため、それらのエラーが無効になり、システムは、特定のドメインで発生する可能性が高いエラーに関連するn-gramを識別しなくなり得る。
【0028】
システム100は、言語モデルアダプタ160への入力として、トルコ語書き起こしデータ110およびトルコ語言語モデル105を提供する。言語モデルアダプタ160は、トルコ語言語モデル105にバイアスをかけ、ホームアシスタントドメインに適合されたトルコ語言語モデル170を生成するよう構成されてよい。トルコ語言語モデル105は、特定のn-gram165に偏っていない一般的なトルコ語言語モデルであってよい。
【0029】
言語モデルアダプタ160は、トルコ語書き起こしデータ110のn-gramの重みを増加することによって、ホームアシスタントドメインにトルコ語言語モデル105を適合させてよい。例えば、言語モデルアダプタ160は、n-gram「hava nasi(iはドットなし)l」の重みを増加することで、トルコ語話者が「hava nasi(iはドットなし)l」に類似して聞こえる何かを話した場合、一般的なトルコ語言語モデル105であれば「hava nasi(iはドットなし)l」を書き起こしとして選択しなくても、トルコ語言語モデル170は「hava nasi(iはドットなし)l」を書き起こしとして選択する可能性がより高くなるようにしてよい。
【0030】
言語モデルアダプタ160は、トルコ語言語モデル170を適合させて、トルコ語書き起こし110に含まれる「hava nasi(iはドットなし)l?」、「caz mu(uはウムラウト付き)zik c(cはセディーユ付き)almak」、「sesi
ac(cはセディーユ付き)」、「yani(iはドットなし)yor」等のn-gram175および他のn-gramを認識しやすくしてよい。いくつかの実装においては、言語モデルアダプタ160は、トルコ語書き起こし110におけるn-gramの出現頻度に従ってトルコ語言語モデル170を適合させてよい。例えば、「hava nasi(iはドットなし)l?」が「sesi ac(cはセディーユ付き)」よりも頻繁にトルコ語書き起こし110において出現する場合、言語モデルアダプタ160はトルコ語言語モデル170を「sesi ac(cはセディーユ付き)」よりも「hava nasi(iはドットなし)l」に偏らせてよい。いくつかの実装においては、言語モデルアダプタ160は、トルコ語言語モデル170を各n-gram175の別の用語に偏らせてよい。例えば、言語モデルアダプタ160は、「hava」と「nasi(iはドットなし)l」の両方に偏らせてよい。いくつかの場合においては、言語モデルアダプタ160は、個別の「hava」および「nasi(iはドットなし)l」よりも「hava nasi(iはドットなし)l」に偏らせてよい。
【0031】
スマートスピーカ120は、発話130の処理中にトルコ語言語モデル170にアクセスする。スマートスピーカ120は、ホームアシスタントドメインで動作していてよく、したがって、ホームアシスタントドメインに適合されたトルコ語言語モデル170にアクセスする。図1に示すように、スマートスピーカ120は、「Merhaba, sana nasi(iはドットなし)l yardi(iはドットなし)m edebilirim?」と出力することにより、ユーザ125を促してよい。スマートスピーカ120は、ユーザ125がスマートスピーカ120に触れること、所定のホットワード、例えば「オーケーコンピュータ」もしくは類似のトルコ語の句を話すこと、または任意の他の類似の動作に応じて、ユーザ125を促してよい。ユーザ125は、「hava nasi(iはドットなし)l?」という発話130で応答してよい。いくつかの実装においては、スマートスピーカがプロンプト180を出力せず、ユーザ125は、ホットワードを話した後に発話130を続けてよい。
【0032】
スマートスピーカ120は、発話130を受信し、トルコ語音響モデルおよびホームアシスタントドメインに適合されたトルコ語言語モデル170を使用して自動音声認識を実行する。スマートスピーカ120は、発話130に基づいて動作を開始する。この場合、動作は、スマートスピーカ120の位置における天気に関するクエリを生成してよい。スマートスピーカ120は、クエリに対する応答を受信し、応答135「Gu(uはウムラウト付き)nes(sはセディーユ付き)li, 20 derece」を生成してよい。
【0033】
図2は、翻訳された訓練データ204および事前に選択された文法206の両方を使用して、特定のドメインにおける使用のために言語モデル202にバイアスをかける例示的なシステム200を示す。つまり、以下でより詳細に説明するように、システム200は、事前に選択された文法206と翻訳された訓練データ204を比較して、特定のドメインで話者が使用する可能性のある一般的な単語および句を識別する。システム200は、文法206および翻訳された訓練データ内の用語を優先するよう言語モデルにバイアスをかける。
【0034】
自動デジタルアシスタント208を備えた車両は、バイアスをかけられた言語モデル210を自動音声認識処理中に使用してよい。ユーザ212は、クエリ214を自動デジタルアシスタント208に話し、自動デジタルアシスタント208は、バイアスをかけられた言語モデル210を使用してクエリ214の書き起こしを生成する。クエリ214に基づき、自動デジタルアシスタント208はクエリ214に対する応答216を生成してよい。
【0035】
図1のシステム100と同様に、システム200は、訓練データにアクセスできない言語についてバイアスをかけられた言語モデル210を生成するよう構成されてよい。図2の例では、システム200は、車両アシスタントドメインで動作する装置によって受信された英語書き起こし218へのアクセスのみを有するにもかかわらず、車両アシスタントドメインに偏ったバスク語言語モデル210を生成する。
【0036】
車両アシスタントドメインで動作する装置によって受信された英語書き起こし218を利用することに加えて、システム200は、事前にプログラムされた文法206にアクセスする。新しい言語についての音声認識製品が適切に機能することを確実にするために、開発者は、ユーザによって要求された動作の決定を補助するために音声認識装置がアクセス可能な文法のセット206を含めてよい。一般的な言語モデルのみを使用して新しい言語において音声認識製品を起動する代わりに、開発者は、ユーザが装置と対話できることを確実にするために、文法のセット206を含めてよい。装置は、構文をディスプレイに表示すること、例文の音声を出力すること、または任意の他のデータ出力と同様の方法によって、文法206の構文および各文法の動作を示してよい。
【0037】
文法は、言語モデルが単語を選択する語彙とは異なってよい。文法は、発話の書き起こしの構造に関連する。書き起こしが文法の構造と一致する場合、システム200は、その文法に対応する動作を実行する。文法は、一般的な表記法、例えばバッカス ナウア記法を使用して記述できる単語の任意の構造でよい。各文法は、特定のユーザの意図に対応してよい。例えば、ユーザの意図は、ホームオートメーションコマンドまたはメディア再生コマンドを出することであってよい。文法の一例としては、アラームの文法が挙げられる。アラーム文法は、$DIGIT = (0 | 1 | 2 | 3 | 4 | 5
| 6 | 7 | 8 | 9)という表記を使用して、0、1、2、3、4、5、6、7、8、9、または0として数字を定義してよい。アラーム文法は、$TIME =
$DIGIT $DIGIT : $DIGIT $DIGIT (am | pm)という表記を使用して時間を定義してよい。表記は、2桁の後にコロンが続き、2桁が続き、その後に「am」または「pm」を含む時間を示す。アラーム文法は、$MODE = (alarm | timer)という表記を使用して、アラームのモードを定義してよい。表記は、アラームがアラームモードかタイマーモードかを示す。最後に、アラーム文法は、アラーム構文を$ALARM = set $MODE for $TIMEとして定義してよい。アラーム構文は、ユーザが「午前6:00にアラームを設定」または「20:00にタイマーを設定」と言うことが可能であることを示す。音声認識システムは、文法を使用して発話または入力されたコマンドの書き起こしを解析し、装置が実行する動作を特定する。
【0038】
いくつかの場合では、文法206は、文法206または文法206に含まれる単語のどれが、特定のドメインにおいて動作する装置に対して話者が言う可能性がより高いものであるかを示さないことがあり得る。例えば、文法206は、車両アシスタントドメイン用の文法のセットであってよい。「egungo trafikoa」、「$LOCATION jarraibideak」、「$NUMBER tenperatura ezarri」、および「ezarri irratia $STATION」を含む文法例220に加えて、文法例220は、$ALARM文法も含んでよい。しかし、車両アシスタントドメインにおいては、話者は、車両を制御するコマンド、交通情報を要求するコマンド、方向を要求するコマンド、およびその他の車両に関連するコマンドを言う可能性が高い。車両がアラームを設定するコマンドを認識して実行できることは重要であり得るが、アラームコマンドは車両アシスタントドメインではそれほど一般的ではないとも言える。
【0039】
図2に示す例では、開発者は、バスク語話者に対して車両アシスタント技術を利用可能にしたいと考え得る。開発者が車両アシスタント技術を使用するバスク語話者の書き起こしを利用できる場合、開発者はその書き起こしを使用して、バスク語言語モデルを車両アシスタントドメインに適合させることが可能である。車両アシスタント技術を使用するバスク語話者の書き起こしがない場合は、開発者は一般的なバスク語言語モデル202を使用してよい。一般的なバスク語言語モデル202を使用すると、話者に劣った体験を提供する可能性があり得る。その理由は、バスク語言語モデル202は、ユーザがはっきりと話さない場合、または「egungo trafikoa」に類似して聞こえる他のバスク語の句がある場合、「egungo trafikoa」と言う話者を認識しない可能性があるためである。一般的なバスク語言語モデル202では認識しない場合、車両アシスタントドメインにおいて話者が言う可能性が高い句に偏ったバスク語言語モデルの方が、「egungo trafikoa」と言う話者を認識する可能性が高い。車両アシスタント技術を使用するバスク語話者の書き起こしおよび車両アシスタントドメインに適合されたバスク語言語モデルがない場合、バスク語話者向けの車両アシスタント技術を開発する際に、開発者は文法206を技術に含めてよい。
【0040】
システム200は、文法206および英語書き起こし218を使用してバスク語言語モデル202を適合し、車両アシスタントドメインに適合されたバスク語言語モデル210を生成するための構成要素を示す。システム200は、車両アシスタントドメインで動作するコンピューティング装置によって受信された英語書き起こしデータ218にアクセスする。車両アシスタントドメインで動作する装置は、音声対話システムを備えた車等の装置を含んでよい。他の装置が車両アシスタントドメインで動作し、それらの装置から収集された書き起こしが英語書き起こしデータ218に追加されてよい。例としては、英語書き起こしデータ218は、「現在の交通状況」、「家への道順」、「ガレージを開けて」、「ファンの速度を下げて」等の書き起こし145、および車両アシスタントドメインで動作する装置によって受信された他の発話の書き起こしを含んでよい。
【0041】
いくつかの実装においては、システム200は、車両アシスタントドメインで動作する装置によって受信された発話の音声データに対して自動音声認識を実行することによって、英語書き起こしデータ218を生成してよい。いくつかの実装においては、システム200は、車両アシスタントドメインで動作する装置によって受信された発話の音声データを書き起こした手動のトランスクライバから英語書き起こしデータ218を受信してよい。いくつかの実装においては、英語書き起こしデータ218は、自動の書き起こしと手動の書き起こしとの両方の混合を含んでよい。
【0042】
システム200は、英語からバスク語への翻訳機224への入力として英語書き起こしデータ218を提供する。英語からバスク語への翻訳機224は、英語書き起こしデータ218をバスク語書き起こしデータ204に自動的に翻訳する機械翻訳機であってよい。いくつかの実装においては、英語からバスク語への翻訳機224は手動の翻訳機であってよい。
【0043】
バスク語書き起こしデータ204は、「egungo trafikoa」、「etxerako jarraibideak」、「garaje ate irekia」、および「behe-fanaren abiadura」等の書き起こし226を含んでよく、それらは、それぞれバスク語訳の「現在の交通状況」、「家への道順」、「ガレージを開けて」、「ファンの速度を下げて」であってよい。書き起こし226は、英語書き起こしデータ218の追加的な翻訳書き起こしを含んでよい。
【0044】
いくつかの実装においては、英語からバスク語への翻訳機224は、英語書き起こしデータ140を翻訳する際にエラーを起こし得る。この場合、システム200は、様々なドメインおよび/または一般的なドメインで受信される他の発話から書き起こされた追加的な英語書き起こしデータを翻訳してよい。システム200は、英語からバスク語への翻訳機224への入力として、一般的な英語書き起こしデータを提供してよい。システム200は、バスク語書き起こしデータ204を一般的なバスク語書き起こしデータと比較して、ホームアシスタントドメインにおけるより一般的なn-gramを識別してよい。ドメイン固有の翻訳書き起こしと一般的な翻訳書き起こしの両方を使用することにより、システム200は、翻訳中に発生するエラーの一部を除去することが可能でよい。ドメイン固有の書き起こしと一般的な書き起こしの両方を翻訳する場合、いくつかのエラーが発生する可能性があるため、それらのエラーが無効になり、システムは、特定のドメインで発生する可能性が高いエラーに関連するn-gramを識別しなくなり得る。
【0045】
システム200は、バスク語書き起こしデータ204およびバスク語文法206を、文法重み付け部228への入力として提供する。文法重み付け部228は、バスク語書き起こしデータ204をバスク語文法206と比較することによって加重文法230を生成するよう構成されてよい。文法重み付け部228は、バスク語書き起こしデータ204に記憶された単語または句を解析するバスク語文法206に含まれる文法を特定してよい。例えば、バスク語文法「$LOCATION jarraibideak」は、バスク語書き起こし「Etxerako jarraibideak」を解析してよい。その理由は、「etxerako」が、$LOCATION変数に置き換わり得る用語として含まれ得るためである。バスク語文法「ezarri irratia $STATION」は、バスク語書き起こしデータ204内のいずれの書き起こしも解析しない可能性がある。加重文法232で示されているように、文法重み付け部228は、「egungo trafikoa」および「$LOCATION jarraibideak」の両方を、車両アシスタントシステムと対話するバスク語ユーザがより話し得る文法として特定してよい。
【0046】
いくつかの実装においては、文法重み付け部228は、バスク語文法206に数値的重みを付与してよい。例えば、文法重み付け部228は、バスク語書き起こしデータ204内のいずれの書き起こしも解析しない文法に0.1の重みを付与してよい。0.1の重みは、書き起こしを解析するものとして車両アシスタントシステムがその文法を特定してはいけないことを示すわけではないが、より大きな重みを有しまた書き起こしを解析する他の文法がある場合、車両アシスタントシステムが0.1の重みを付与された文法を選択し、対応する動作を実行する可能性を低下させてよい。文法重み付け器228は、解析可能な書き起こしがバスク語書き起こしデータ204に現れる頻度に基づき、より大きな重みを付与してよい。例えば、バスク語書き起こしデータ204が、「ezarri irratia $STATION」という文法によって解析可能な7つの書き起こしを含む場合、文法重み付け部228は、0.3の重みを付与してよい。7つの書き起こしのうちの一部は同一でよく、その他は$STATION変数に異なる用語を含んでよい。バスク語書き起こしデータ204が、「$NUMBER tenperatura ezarri」という文法によって解析可能な11の書き起こしを含む場合、文法重み付け部228は、0.4の重みを付与してよい。いくつかの実装においては、文法重み付け部228は、1人以上の書き起こしを解析する文法に同じ重みを付与し、書き起こしを解析しない文法に異なる重みを付与してよい。
【0047】
システム200は、言語モデルアダプタ234への入力として、加重バスク語文法230およびバスク語言語モデル202を提供する。言語モデルアダプタ234は、バスク語言語モデル202にバイアスをかけ、車両アシスタントドメインに適合されたバスク語言語モデル210を生成するよう構成されてよい。バスク語言語モデル202は、特定の用語、句、単語、およびn-gramに偏っていない一般的なバスク語言語モデルであってよい。
【0048】
言語モデルアダプタ234は、加重バスク語文法230のn-gramの重みを増加することによって、車両アシスタントドメインにバスク語言語モデル202を適合させてよい。例えば、言語モデルアダプタ234は、n-gram「egungo trafikoa」の重みを増加することで、バスク語話者が「egungo trafikoa」に類似して聞こえる何かを話した場合、一般的なバスク語言語モデル202であれば「egungo trafikoa」を書き起こしとして選択しなくても、バスク語言語モデル210は「egungo trafikoa」を書き起こしとして選択する可能性がより高くなるようにしてよい。
【0049】
言語モデルアダプタ234は、バスク語言語モデル210を適合させて、加重バスク語文法230に含まれる「egungo trafikoa」、「$LOCATION jarraibideak」等のn-gram232および他のn-gramを認識しやすくしてよい。いくつかの実装においては、言語モデルアダプタ234は、各文法に付与された重みに従ってバスク語言語モデル210を適合させてよい。例えば、「egungo
trafikoa」が0.3の重みを有し、「$LOCATION jarraibideak」が0.5の重みを有する場合、言語モデルアダプタ234は、バスク語言語モデル210にバイアスをかけて、発話を受信した際にバスク語言語モデル210が、類似して聞こえる書き起こしよりも「etxerako jarraibideak」を選択する可能性をより高くしてよい。バスク語言語モデル210は、発話を受信した際に、類似して聞こえる書き起こしよりも「egungo trafikoa」を選択する可能性がまだ高くてよいが、バスク語言語モデル210のバイアスは「etxerako jarraibideak」より低くてもよい。いくつかの実装においては、言語モデルアダプタ234は、バスク語言語モデル210を各加重文法230の別の用語に偏らせてよい。例えば、言語モデルアダプタ234は、「egungo trafikoa」、「trafikoa」、および「egungo」に偏らせてよい。いくつかの場合においては、言語モデルアダプタ234は、個別の「trafikoa」および「egungo」よりも「egungo trafikoa」に偏らせてよい。いくつかの実装においては、加重文法230に含まれるより重く加重された文法に「trafikoa」が現れ得るので、言語モデルアダプタ234は、「trafikoa」を「egungo」よりも大きく偏るn-gramとして識別してよい。
【0050】
いくつかの実装においては、言語モデルアダプタ234は、文法内の変数に利用可能な各用語に加えて、加重文法230によって解析可能なn-gramに関してバスク語言語モデル210にバイアスをかけてよい。例えば、言語モデルアダプタ234は、「$LOCATION jarraibideak」および「jarraibideak」に加えて、$LOCATION変数に置き換わり得る用語にバスク語言語モデル210を偏らせてよい。
【0051】
車両208は、車両アシスタントシステムを備えてよい。車両アシスタントシステムは、発話214の処理中にバスク語言語モデル210にアクセスしてよい。車両アシスタントシステムは、車両に設置されたデジタルアシスタントシステムであるため、車両アシスタントドメインにおいて動作する。
【0052】
図2に示すように、車両アシスタントシステムは、ユーザ212からの音声コマンドを聞いてよい。車両アシスタントシステムは、ユーザ212が所定のホットワード、例えば「オーケーコンピュータ」または類似のバスク語の句を話すこと、ユーザ212がステアリングホイールのボタンを押すこと、または任意の他の類似の動作に応じて、受信した音声の処理を開始してよい。ユーザは、「Nola trafikoa da?」と発話214し得る。
【0053】
車両アシスタントシステムは、発話214を受信し、バスク語音響モデルおよび車両アシスタントドメインに適合されたバスク語言語モデル210を使用して自動音声認識を実行する。車両アシスタントシステムは、発話214に基づいて動作を開始する。この場合、動作は、車両208の位置における交通に関するクエリを生成してよい。車両アシスタントシステムは、クエリに対する応答を受信し、応答216「Trafikoa argi dago」を生成してよい。バスク語言語モデル210は、発話214の句に正確には偏っていなくてもよいが、バスク語言語モデル210は、キーワード「trafikoa」に偏っていてよい。ユーザが話すn-gramに偏っていることで、車両アシスタントシステムが正確な書き起こしを識別するのに役立ってよい。
【0054】
図3は、特定のドメインにおける使用のために言語モデルを適合する例示的なプロセス300のフローチャートである。通常、プロセス300は、翻訳された訓練データを使用して、特定のドメインにおける使用のために言語モデルを適合する。プロセス300は、その特定のドメインにおいて目的言語の訓練データが存在しない場合に役立ち得る。プロセス300は、1つまたは複数のコンピュータを含むコンピュータシステム、例えば図1のシステム100または図2のシステム200によって実行されるものとして記載される。システム100またはシステム100の構成要素のそれぞれは、単一のコンピューティング装置に含まれるか、または複数のコンピューティング装置に分散されてよい。
【0055】
システムは、ドメインで動作する他のシステムによって受信されかつ起点言語の発話の書き起こしを受信する(310)。いくつかの実装においては、システムは、ドメインで動作している他のシステムによって受信された、起点言語の発話の音声データを受信してよい。この場合、システムは、起点言語を認識するよう構成された自動音声認識装置を使用して、音声データの書き起こしを生成してよい。ドメインは、ディスプレイを備えたスマートスピーカ等、発話を受信するシステムの種類に関連してよい。他のドメインは、ディスプレイを備えないスマートスピーカ、車両アシスタントドメイン、地図アプリケーションドメイン、位置に依存するドメイン(例えば、公園またはレストラン)、ホームアシスタントドメイン、および任意の他の類似の種類のドメインを含んでよい。
【0056】
システムは、発話の書き起こしの翻訳書き起こしを目的言語で生成する(320)。システムは、書き起こしを翻訳するために機械翻訳を使用してよい。例えば、システムは、英語をトルコ語に翻訳するよう構成された機械翻訳機を使用してよい。いくつかの実装においては、システムは、異なるドメインで動作するシステムによって受信された書き起こしを受信および翻訳してよい。例えば、システムは、地図アプリケーションドメインで受信された書き起こしを翻訳してよい。システムはまた、一般ドメイン、または地図アプリケーションドメインを含むまたは含まない他のドメインの組み合わせ等、複数のドメインを含み得る他のドメインで受信された書き起こしを翻訳してよい。
【0057】
システムは、目的言語の言語モデルを受信する(330)。いくつかの実装においては、目的言語モデルは、特定の単語、句、および/またはn-gramに偏らなくてよい汎用言語モデルである。例えば、目的言語モデルは、汎用トルコ語言語モデルであってよい。
【0058】
システムは、翻訳書き起こしに含まれる用語を言語モデルが選択する尤度を上げることによって、目的言語の言語モデルにバイアスをかける(340)。システムは、翻訳書き起こしに現れる単語、句、またはN-gramを識別する。システムが目的言語モデルにバイアスをかけることで、ユーザの音声が他の単語、句、および/またはn-gramと類似して聞こえる場合に、バイアスをかけられた言語モデルは、翻訳書き起こしに現れる単語、句、および/またはn-gramを含む書き起こしを生成する可能性が高くなってよい。
【0059】
いくつかの実装においては、システムは、特定のドメインからの翻訳書き起こしを他のドメインからの翻訳書き起こしと比較してよい。システムは、特定のドメインからの翻訳書き起こしにおいてより一般的な単語、句、および/またはn-gramを識別してよい。システムは、これらの単語、句、および/またはn-gramを含む書き起こしを生成する可能性が高くなるよう言語モデルにバイアスをかけてよい。他のドメインからの追加的な翻訳を使用することにより、システムは翻訳処理からノイズを取り除いてよい。翻訳処理は機械翻訳処理であってよいため、翻訳処理は不正確さを有し得る。これらの不正確さは、他のドメインからの翻訳書き起こしと同様に、特定のドメインからの翻訳書き起こしにも現れ得る。2つのグループの翻訳書き起こしを比較することにより、システムは正確な翻訳を反映していない可能性のある単語を無効にすることが可能でよく、言語モデルにバイアスをかけて、翻訳ノイズの単語、句、および/またはn-gramを含まずに、特定のドメインからの翻訳書き起こしの単語、句、および/またはn-gramを含む書き起こしを生成する可能性を高くしてよい。他のドメインからの書き起こしを翻訳することで、システムが、一般的な単語であり得る単語、句、および/またはn-gramの代わりに、特定のドメインに密接に関連し得る単語、句、および/またはn-gramを識別するのにも役立ってよい。
【0060】
いくつかの実装においては、システムは、単語、句、および/またはn-gramが翻訳書き起こしに現れる頻度に基づいて言語モデルにバイアスをかけてよい。例えば、英語の単語「weather」に関連するトルコ語の単語「hava」が、英語の単語「jazz」に関連するトルコ語の単語「caz」よりも、翻訳書き起こしに頻繁に表示される場合、システムは、言語モデルを「caz」よりも「hava」に偏らせてよい。いくつかの実装においては、システムは、翻訳書き起こしに現れる単語、句、および/またはn-gramに関して、言語モデルに等しくバイアスをかけてよい。
【0061】
いくつかの実装においては、システムは、特定のドメインで動作する装置が候補の書き起こしを解析するために使用し得る目的言語における文法のセットにアクセスしてよい。システムは、文法に含まれるn-gramを翻訳書き起こしのn-gramと比較してよい。システムは、文法に現れるまたは文法によって解析可能なn-gramが翻訳書き起こしに現れる頻度に基づき、文法に重みを付与してよい。システムは、書き起こしを生成する際に、文法および翻訳書き起こしの両方でn-gramを選択する可能性が高くなるよう言語モデルにバイアスをかけることによって、加重文法を使用して言語モデルを適合してよい。
【0062】
いくつかの実装においては、システムまたは別のシステムは、システムまたは別のシステムが言語モデルを適合させたドメインで動作する場合に、自動音声認識処理中に、適合された言語モデルを使用してよい。システムまたは他のシステムは、目的言語の音素を識別するよう訓練された音響モデルおよび適合された言語モデルを使用してよい。システムまたは他のシステムが文法のセットにアクセスできる場合、システムはその文法を使用して候補の書き起こしを解析してよい。
【0063】
図4は、本明細書に記載した技術を実装するために使用され得るコンピューティング装置400およびモバイルコンピューティング装置450の例を示す。コンピューティング装置400は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータ等、様々な形態のデジタルコンピュータを表すよう意図されている。モバイルコンピューティング装置450は、携帯情報端末、携帯電話、スマートフォン、および他の同様のコンピューティング装置等、様々な形態のモバイル装置を表すよう意図されている。本明細書に示された構成要素、構成要素の接続および関係、ならびに構成要素の機能は、例示的であることのみを意図されており、限定的であることは意図されていない。
【0064】
コンピューティング装置400は、プロセッサ402、メモリ404、記憶装置406、メモリ404および複数の高速拡張ポート410に接続する高速インタフェース408、ならびに低速膨張ポート414および記憶装置406に接続する低速インタフェース412を含む。プロセッサ402、メモリ404、記憶装置406、高速インタフェース408、高速拡張ポート410、および低速インタフェース412の各々は、様々なバスを介して相互接続され、共通のマザーボード上に、または必要に応じて他の方法で実装されてよい。プロセッサ402は、高速インタフェース408に接続されたディスプレイ416等の外部入力/出力装置にGUIのグラフィック情報を表示するために、メモリ404または記憶装置406に記憶された命令を含む、コンピューティング装置400内で実行するための命令を処理することが可能である。他の実装においては、複数のメモリおよび種類のメモリとともに、必要に応じて複数のプロセッサおよび/または複数のバスが使用されてよい。また、複数のコンピューティング装置が接続され、各装置が必要な動作の一部を提供してよい(例えば、サーババンク、ブレードサーバのグループ、またはマルチプロセッサシステムとして)。
【0065】
メモリ404は、コンピューティング装置400内の情報を記憶する。いくつかの実装においては、メモリ404は、単数または複数の揮発性メモリユニットである。いくつかの実装においては、メモリ404は、単数または複数の不揮発性メモリユニットである。メモリ404は、磁気ディスクまたは光学ディスク等の別の形態のコンピュータ可読媒体であってもよい。
【0066】
記憶装置406は、コンピューティング装置400に大容量記憶を提供することができる。いくつかの実装においては、記憶装置406は、フロッピー(登録商標)ディスク装置、ハードディスク装置、光学ディスク装置、またはテープ装置、フラッシュメモリ、もしくは他の同様のソリッドステートメモリ装置等のコンピュータ可読媒体、またはストレージエリアネットワークもしくは他の構成における装置を含む装置のアレイであるか、もしくはそれを含んでよい。命令は情報担体に記憶されてよい。命令は、1つまたは複数の処理装置(例えば、プロセッサ402)によって実行されると、上記のような1つまたは複数の方法を実行する。命令は、コンピュータ可読媒体または機械可読媒体(例えば、メモリ404、記憶装置406、またはプロセッサ402上のメモリ)等の1つまたは複数の記憶装置に記憶されてもよい。
【0067】
高速インタフェース408は、コンピューティング装置400の帯域幅集中型の動作を管理する一方、低速インタフェース412は、より低帯域幅集中型の動作を管理する。このような機能の割り当ては一例に過ぎない。いくつかの実装形態では、高速インタフェース408は、メモリ404、ディスプレイ416(例えば、グラフィックプロセッサまたはアクセラレータを通じて)、および様々な拡張カード(図示せず)を受け得る高速拡張ポート410に接続される。実装において、低速インタフェース412は、記憶装置406および低速拡張ポート414に接続される。低速拡張ポート414は、種々の通信ポート(例えば、USB、Bluetooth(登録商標)、イーサネット(登録商標)、無線イーサネット)を含んでよく、例えばネットワークアダプタを通じて、キーボード、ポインティングデバイス、スキャナー、または、スイッチまたはルータ等のネットワーク装置等の、1つまたは複数の入力/出力装置に接続されてもよい。
【0068】
コンピューティング装置400は、図に示すように、多くの異なる形態で実装されてよい。例えば、標準のサーバ420として、またはそのようなサーバのグループに複数回実装されてよい。また、ラップトップコンピュータ422等のパーソナルコンピュータに実装されてよい。また、ラックサーバシステム424の一部として実装されてもよい。あるいは、コンピューティング装置400からの構成要素は、モバイルコンピューティング装置450等のモバイル装置(図示せず)内の他の構成要素と組み合わされてよい。そのような装置のそれぞれは、コンピューティング装置400およびモバイルコンピューティング装置450のうちの1つまたは複数を含んでよく、システム全体は、互いに通信する複数のコンピューティング装置で構成されてよい。
【0069】
モバイルコンピューティング装置450は、構成要素の中でも特に、プロセッサ452、メモリ464、ディスプレイ454等の入力/出力装置、通信インタフェース46送受信機468を含む。モバイルコンピューティング装置450は、追加のストレージを提供するために、マイクロドライブまたは他の装置等の記憶装置を備えてもよい。プロセッサ452、メモリ464、ディスプレイ454、通信インタフェース466、および送受信機468は、様々なバスを介して各々に相互接続され、複数の構成要素は、共通のマザーボード上に、または必要に応じて他の方法で実装されてよい。
【0070】
プロセッサ452は、メモリ464に記憶された命令を含む、モバイルコンピューティング装置450内の命令を実行することができる。プロセッサ452は、別個で複数のアナログおよびデジタルプロセッサを含むチップのチップセットとして実装されてよい。プロセッサ452は、例えば、ユーザインタフェースス、モバイルコンピューティング装置450によって実行されるアプリケーション、およびモバイルコンピューティング装置450による無線通信の制御等、モバイルコンピューティング装置450の他の構成要素の調整を提供してよい。
【0071】
プロセッサ452は、ディスプレイ454に接続された制御インタフェース458およびディスプレイインタフェース456を通じてユーザと通信してよい。ディスプレイ454は、例えば、TFT(薄膜トランジスタ液晶ディスプレイ)ディスプレイ、OLED(有機発光ダイオード)ディスプレイ、または他の適切なディスプレイ技術であってよい。ディスプレイインタフェース456は、ディスプレイ454を駆動してグラフィックおよび他の情報をユーザに提示するための適切な回路を含んでよい。制御インタフェース458は、ユーザからコマンドを受け取り、プロセッサ452に供給するために、コマンドを変換してよい。さらに、外部インタフェース462は、プロセッサ452との通信を提供して、モバイルコンピューティング装置450と他の装置との近領域通信を可能にしてよい。外部インタフェース462は、例えば、いくつかの実装では有線通信を提供し、他の実装では無線通信を提供してよく、複数のインタフェースを使用してもよい。
【0072】
メモリ464は、コンピューティング装置450内の情報を記憶する。メモリ464は、コンピュータ可読媒体、揮発性メモリユニット、または不揮発性メモリユニットの1つまたは複数として実装することができる。拡張メモリ474が提供され、拡張インタフェース472を介してモバイルコンピューティング装置450に接続されてよい。拡張インタフェース472は、例えば、SIMM(シングルインラインメモリモジュール)カードインタフェースを含んでよい。拡張メモリ474は、モバイルコンピューティング装置450に余分な記憶領域を提供してよく、またはモバイルコンピューティング装置450のアプリケーションまたは他の情報を記憶してもよい。具体的には、拡張メモリ474は、上述のプロセスを実行または補完する命令を含んでよく、保安情報を含んでもよい。したがって、例えば、拡張メモリ474は、モバイルコンピューティング装置450のセキュリティモジュールとして提供されてよく、モバイルコンピューティング装置450の安全な使用を可能にする命令でプログラムされてよい。さらに、SIMMカードを介して、ハッキング不能な方法でSIMMカードに識別情報を配置する等の追加情報とともに、保安アプリケーションが提供されてよい。
【0073】
メモリは、以下で検討されるように、例えば、フラッシュメモリおよび/またはNVRAMメモリ(不揮発性ランダムアクセスメモリ)を含んでよい。いくつかの実装においては、命令は、情報担体に記憶される。命令は、1つまたは複数の処理装置(例えば、プロセッサ452)によって実行されると、上記のような1つまたは複数の方法を実行する。命令は、1つまたは複数のコンピュータ可読媒体または1つまたは複数の機械可読媒体(例えば、メモリ464、拡張メモリ474、またはプロセッサ452上のメモリ)等の1つまたは複数の記憶装置に記憶されてもよい。いくつかの実装においては、命令は、例えば送受信機468または外部インタフェース462を通じて、伝搬信号で受信することができる。
【0074】
モバイルコンピューティング装置450は、必要に応じてデジタル信号処理回路を含み得る通信インタフェース466を通じて無線で通信してよい。通信インタフェース466は、特に、GSM(登録商標)音声通話(モバイル通信用グローバルシステム)、SMS(ショートメッセージサービス)、EMS(エンハンストメッセージングサービス)、MMSメッセージング(マルチメディアメッセージングサービス)、CDMA(符号分割多元接続)、TDMA(時分割多元接続)、PDC(パーソナルデジタルセルラ)、WCDMA(登録商標)(広帯域符号分割多元接続)、CDMA2000、またはGPRS(汎用パケット無線サービス)等、様々な態様またはプロトコルの下で通信を提供してよい。このような通信は、例えば、無線周波数を使用する送受信機468を通じて行われてよい。加えて、Bluetooth、WiFi、または他のそのような送受信機(図示せず)の使用等により、近距離通信が発生してよい。加えて、GPS(全地球測位システム)受信機モジュール470は、モバイルコンピューティング装置450上で実行されるアプリケーションにより適宜使用され得る、追加的なナビゲーションおよび位置関連の無線データをモバイルコンピューティング装置450に提供してよい。
【0075】
モバイルコンピューティング装置450は、オーディオコーデック460を使用して可聴的に通信してよく、オーディオコーデック460は、ユーザから口頭の情報を受信し、それを使用可能なデジタル情報に変換してよい。オーディオコーデック460は、同様に、例えば、モバイルコンピューティング装置450のハンドセット内のスピーカ等を通じて、ユーザに可聴音を生成してよい。このような音は、音声通話の音を含んでよく、録音された音(例えば、音声メッセージ、音楽ファイル等)を含んでよく、モバイルコンピューティング装置450上で動作するアプリケーションによって生成される音を含んでもよい。
【0076】
モバイルコンピューティング装置450は、図に示すように、多くの異なる形態で実装されてよい。例えば、モバイルコンピューティング装置450は、携帯電話480として実装されてよい。モバイルコンピューティング装置450は、スマートフォン482、携帯情報端末、または他の同様のモバイル装置の一部として実装されてもよい。
【0077】
本明細書で説明するシステムおよび技法のさまざまな実装は、デジタル電子回路、集積回路、特別に設計されたASIC (特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、および/またはそれらの組み合わせで実現することができる。これらの様々な実装は、記憶装置、1つ以上の入力装置、および1つ以上の出力装置に対してデータおよび命令を送信すると共にこれらからデータおよび命令を受信するよう接続された、特定目的または汎用目的の1つ以上のプログラマブルプロセッサを備えたプログラマブルシステム上で実行可能および/または翻訳可能な1つまたは複数のコンピュータプログラムでの実装を含んでよい。
【0078】
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーションまたはコードとしても知られる)は、プログラマブルプロセッサのための機械語命令を含み、高水準手続き型および/またはオブジェクト指向プログラミング言語、および/またはアセンブリ/機械語で実装することができる。本明細書で使用されるように、機械可読媒体およびコンピュータ可読媒体という用語は、プログラマブルプロセッサに機械語命令及び/又はデータを供給するために使用される、機械可読信号として機械語命令を受け取る機械可読媒体を含む、任意のコンピュータプログラムプロダクト、装置及び/又はデバイス(例えば、磁気ディスク、光学ディスク、メモリ、PLD(プログラマブルロジックデバイス)を指す。機械可読信号という用語は、機械語命令および/またはデータをプログラマブルプロセッサに提供するために使用される信号を指す。
【0079】
ユーザとの対話を提供するため、本明細書で説明したシステムおよび技術は、ユーザに情報を表示するための表示装置(例えば、CRT(陰極線管)またはLCD(液晶ディスプレイ)モニター)と、ユーザが入力をコンピュータに提供可能なキーボードおよびポインティング装置(例えば、マウスまたはトラックボール)と、を含むコンピュータ上で実装されてよい。他の種類の装置を使用して、ユーザとの対話を提供してもよい。例えば、ユーザに提供されるフィードバックは、任意の形式の感覚的なフィードバック(例えば、視覚的フィードバック、聴覚的フィードバック、または触覚的フィードバック)であってよく、ユーザからの入力は、音響的入力、音声的入力、または触覚的入力を含む任意の形式で取り込まれてよい。
【0080】
本明細書で説明したシステムおよび技術は、バックエンドコンポーネント(例えば、データサーバ)を備えたコンピュータシステム、ミドルウェアコンポーネント(例えば、アプリケーションサーバ)を備えたコンピュータシステム、フロントエンドコンポーネント(例えば、ユーザが本明細書で説明されたシステムおよび技術の実装と対話をすることが可能なグラフィカルインタフェースまたはウェブブラウザを有するクライアントコンピュータ)を備えたコンピュータシステム、または、このようなバックエンド、ミドルウェア、またはフロントエンドコンポーネントの任意の組合せを備えたコンピュータシステムで実施されてよい。システムの構成要素は、デジタルデータ通信(例えば、通信ネットワーク)の任意の形式または媒体によって相互接続されてよい。通信ネットワークの例は、LAN(ローカルエリアネットワーク)、WAN(ワイドエリアネットワーク)、およびインターネットを含む。
【0081】
コンピューティングシステムは、クライアントおよびサーバを含んでよい。クライアントとサーバは、一般には相互に離れており、典型的には通信ネットワークを通じて対話する。クライアントとサーバの関係は、各コンピュータ上で実行され、相互にクライアント・サーバ関係を有するコンピュータプログラムにより発生する。
【0082】
いくつかの実装が詳細に説明されたが、他の変更も可能である。例えば、クライアントアプリケーションはデリゲートにアクセスするものとして説明されているが、他の実装では、デリゲートは、1つまたは複数のサーバで実行されるアプリケーション等、1つまたは複数のプロセッサによって実装された他のアプリケーションによって使用されてよい。さらに、図に示された論理の流れは、望ましい結果を得るために、示された特定の順序または連続した順序を必要とはしない。さらに、説明された流れに他の動作が提供されたり、または流れから除去されてよく、説明されたシステムに他の構成要素が追加されたり、またはシステムから除去されてよい。したがって、他の実装は、以下の特許請求の範囲内にある。
図1
図2
図3
図4