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

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

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

特許7662907言語モデル融合ASRシステムにおける意図的でない記憶の検出
<>
  • 特許-言語モデル融合ASRシステムにおける意図的でない記憶の検出 図1
  • 特許-言語モデル融合ASRシステムにおける意図的でない記憶の検出 図2A
  • 特許-言語モデル融合ASRシステムにおける意図的でない記憶の検出 図2B
  • 特許-言語モデル融合ASRシステムにおける意図的でない記憶の検出 図3
  • 特許-言語モデル融合ASRシステムにおける意図的でない記憶の検出 図4
  • 特許-言語モデル融合ASRシステムにおける意図的でない記憶の検出 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2025-04-07
(45)【発行日】2025-04-15
(54)【発明の名称】言語モデル融合ASRシステムにおける意図的でない記憶の検出
(51)【国際特許分類】
   G10L 15/183 20130101AFI20250408BHJP
   G10L 15/06 20130101ALI20250408BHJP
【FI】
G10L15/183
G10L15/06
【請求項の数】 30
(21)【出願番号】P 2024561806
(86)(22)【出願日】2023-04-19
(86)【国際出願番号】 US2023019135
(87)【国際公開番号】W WO2023205261
(87)【国際公開日】2023-10-26
【審査請求日】2024-11-18
(31)【優先権主張番号】63/363,240
(32)【優先日】2022-04-19
(33)【優先権主張国・地域又は機関】US
【早期審査対象出願】
(73)【特許権者】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
【氏名又は名称原語表記】Google LLC
【住所又は居所原語表記】1600 Amphitheatre Parkway 94043 Mountain View, CA U.S.A.
(74)【代理人】
【識別番号】100142907
【弁理士】
【氏名又は名称】本田 淳
(72)【発明者】
【氏名】ファン、ロニー
(72)【発明者】
【氏名】チェン、スティーブ
(72)【発明者】
【氏名】タッカー、オム
(72)【発明者】
【氏名】マシューズ、ラジブ
【審査官】土井 悠生
(56)【参考文献】
【文献】特開2003-202893(JP,A)
【文献】特開2010-271751(JP,A)
【文献】中村優太, 外7名,“診療記録で事前学習した言語モデルからの学習データ中の人名漏洩リスクの推定”,言語処理学会第27回年次大会 発表論文集 [online] Proceedings of the Twenty-seventh Annual Meeting of the Association for Natural Language Processing,日本,言語処理学会,2021年03月08日,p.986-991
【文献】C. Song, 外1名,“Auditing Data Provenance in Text-Generation Models”,arXiv.org,2018年11月01日,p.1-11,[2025.3.10検索], インターネット<URL:https://arxiv.org/pdf/1811.00513>
【文献】N. Carlini, 外4名,“The Secret Sharer: Evaluating and Testing Unintended Memorization in Neural Networks”,arXiv.org,2018年02月22日,p.1-19,[2025.3.10検索], インターネット<URL: https://arxiv.org/pdf/1802.08232>
(58)【調査した分野】(Int.Cl.,DB名)
G10L 13/00-99/00
(57)【特許請求の範囲】
【請求項1】
コンピュータ実装方法(400)であって、データ処理ハードウェア(510)で実行されるとき、前記データ処理ハードウェア(510)に、
カナリアテキストサンプル(134)のセットをトレーニングテキストサンプル(130)のコーパスに挿入することと、
前記トレーニングテキストサンプル(130)のコーパス、及び前記トレーニングテキストサンプル(130)のコーパスに挿入された前記カナリアテキストサンプル(134)のセットで外部言語モデル(160)を訓練することと、
前記カナリアテキストサンプル(134)のセット内のカナリアテキストサンプル(134)ごとに、
テキスト読み出し(TTS)システム(140)を使用して、対応する合成音声発話(142)を生成することと、
入力として、前記対応する合成音声発話(142)を受け取るように構成された訓練された自動音声認識(ASR)モデル(200)を使用して、前記対応する合成音声発話(142)の初期転写(232)を生成することと、
前記トレーニングテキストサンプル(130)のコーパス、及び前記トレーニングテキストサンプル(130)のコーパスに挿入された前記カナリアテキストサンプル(134)のセットで訓練された前記外部言語モデル(160)を使用して、対応する合成音声発話(142)ごとに生成された前記初期転写(232)を再スコアリングすることと、
再スコアリングされた前記初期転写(120)及び前記カナリアテキストサンプル(134)に基づいて、前記外部言語モデル(160)のワード誤り率(WER)(152)を決定することと、
前記外部言語モデル(160)の前記WER(152)に基づいて、前記外部言語モデル(160)による前記カナリアテキストサンプル(134)の記憶を検出することと、
を含む動作を実行させる、前記コンピュータ実装方法(400)。
【請求項2】
前記外部言語モデル(160)のより低いWER(152)が、前記外部言語モデル(160)による前記カナリアテキストサンプル(134)の記憶の増加に対応する、請求項1に記載のコンピュータ実装方法(400)。
【請求項3】
前記動作が、
外来テキストサンプル(136)のセットをトレーニングテキストサンプル(136)の第2のコーパスに挿入することと、
前記トレーニングテキストサンプル(131)の第2のコーパス、及び前記トレーニングテキストサンプル(131)の第2のコーパスに挿入された前記外来テキストサンプル(136)のセットで第2の外部言語モデル(170)を訓練することと、
前記カナリアテキストサンプル(134)のセット内のカナリアテキストサンプル(134)ごとに、前記対応する合成音声発話(142)のために前記訓練されたASRモデル(200)によって生成された前記初期転写(232)を受け取ることと、
前記トレーニングテキストサンプル(131)の第2のコーパス、及び前記トレーニングテキストサンプル(131)の第2のコーパスに挿入された前記外来テキストサンプル(136)のセットで訓練された前記第2の外部言語モデル(170)を使用して、対応する合成音声発話(142)ごとに生成された前記初期転写(232)を再スコアリングすることと、
前記第2の外部言語モデル(170)によって再スコアリングされた前記初期転写(232)及び前記カナリアテキストサンプル(134)に基づいて、前記第2の外部言語モデル(170)の第2のWER(154)を決定することと、
前記外部言語モデル(160)の前記WER(152)と前記第2の外部言語モデル(170)の前記第2のWER(154)を比較することにより、前記外部言語モデル(160)による前記カナリアテキストサンプル(134)の記憶を検出することと、
をさらに含む、請求項1または2に記載のコンピュータ実装方法(400)。
【請求項4】
前記動作が、前記外部言語モデル(160)を訓練するときに、所定数の前記カナリアテキストサンプル(134)から勾配をクリッピングすることによるサンプルごとの勾配クリッピングを適用することにより、前記外部言語モデル(160)による前記カナリアテキストサンプル(134)の前記検出された記憶を軽減することをさらに含む、請求項1または2に記載のコンピュータ実装方法(400)。
【請求項5】
前記動作が、前記カナリアテキストサンプル(134)のセット内のカナリアテキストサンプル(134)ごとに、
前記対応する合成音声発話(144)の接頭辞部分(146)にいかなるノイズも追加せずに、前記対応する合成音声発話(142)の接尾辞部分(144)にノイズを追加することと、
分類器(180)を使用して、前記対応するカナリアテキストサンプル(134)と一致する前記対応する合成音声発話(142)のために生成された再スコアリングされた前記初期転写(120)に基づいて、前記対応するカナリアテキストサンプル(134)が前記外部言語モデル(160)を訓練するために使用されたと決定することと、
をさらに含む、請求項1または2に記載のコンピュータ実装方法(400)。
【請求項6】
前記カナリアテキストサンプル(134)のセット内の各カナリアテキストサンプル(134)が、それぞれがスペースで分離されたランダムな英数字の固定長シーケンスを含む、請求項1または2に記載のコンピュータ実装方法(400)。
【請求項7】
前記カナリアテキストサンプル(134)のセットを前記トレーニングテキストサンプル(134)のコーパスに挿入することが、
前記カナリアテキストサンプル(134)のセット内のカナリアテキストサンプルの第1の部分の各カナリアテキストサンプル(134)を、1回だけ、前記トレーニングテキストサンプル(130)のコーパスに挿入することと、
前記カナリアテキストサンプル(134)のセット内のカナリアテキストサンプルの第2の部分の各カナリアテキストサンプル(134)を、2回以上、前記トレーニングテキストサンプル(130)のコーパスに挿入することであって、前記カナリアテキストサンプルの第2の部分が、前記カナリアテキストサンプルの第1の部分とは異なるカナリアテキストサンプル(134)を含む、前記挿入することと、
を含む、請求項1または2に記載のコンピュータ実装方法(400)。
【請求項8】
前記外部言語モデル(160)が外部ニューラル言語モデルを含む、請求項1または2に記載のコンピュータ実装方法(400)。
【請求項9】
前記外部ニューラル言語モデルが、トランスフォーマ層またはコンフォーマ層のスタックを含む、請求項8に記載のコンピュータ実装方法(400)。
【請求項10】
前記動作が、前記訓練された外部言語モデル(160)を前記訓練されたASRモデル(200)と統合することをさらに含み、前記訓練された外部言語モデル(160)が、前記訓練されたASRモデル(200)によって予測される、可能性のある音声認識仮説にわたる確率分布(232)を再スコアリングするように構成される、請求項1または2に記載のコンピュータ実装方法(400)。
【請求項11】
前記訓練されたASRモデル(200)が、
第1のエンコーダ(210)であって、
入力として、音響フレーム(110)のシーケンスを受け取ることと、
複数の出力ステップのそれぞれで、前記音響フレーム(110)のシーケンス内の対応する音響フレーム(110)の第1の高次特徴表現(212)を生成することと、
を行うように構成された前記第1のエンコーダ(210)と、
第2のエンコーダ(220)であって、
入力として、前記複数の出力ステップのそれぞれで前記第1のエンコーダ(210)によって生成された前記第1の高次特徴表現(212)を受け取ることと、
前記複数の出力ステップのそれぞれで、対応する第1の高次特徴フレーム(212)のために第2の高次特徴表現(222)を生成することと、
を行うように構成された前記第2のエンコーダ(220)と、
デコーダ(206)であって、
入力として、前記複数の出力ステップのそれぞれで前記第2のエンコーダ(220)によって生成された前記第2の高次特徴表現(222)を受け取ることと、
前記複数の出力ステップのそれぞれで、可能性のある音声認識仮説にわたる第1の確率分布(232)を生成することと、
を行うよう構成された前記デコーダ(206)と
を備える、請求項1または2に記載のコンピュータ実装方法(400)。
【請求項12】
前記デコーダ(206)または別のデコーダが、
入力として、前記複数の出力ステップのそれぞれで前記第1のエンコーダ(210)によって生成された前記第1の高次特徴表現(212)を受け取ることと、
前記複数の出力ステップのそれぞれで、可能性のある音声認識仮説にわたる第2の確率分布(232)を生成することと、
を行うようさらに構成される、請求項11に記載のコンピュータ実装方法(400)。
【請求項13】
前記デコーダ(206)が、
予測ネットワーク(240)であって、前記複数の出力ステップのそれぞれで、
入力として、最終ソフトマックス層によって出力されるN個の以前の非空白記号のシーケンスを受け取ることと、
前記N個の以前の非空白記号のシーケンスの非空白記号ごとに、それぞれの埋め込みを生成することと、
前記それぞれの埋め込みを平均化することによって平均埋め込み(242)を生成することと、
を行うように構成された前記予測ネットワーク(240)と、
共同ネットワーク(230)であって、
入力として、前記複数の出力ステップのそれぞれで、前記予測ネットワーク(240)によって生成された前記平均埋め込み(242)、及び
前記ASRモデル(200)がストリーミングモードで動作しているとき、前記複数の出力ステップのそれぞれで前記第1のエンコーダ(210)によって生成される前記第1の高次特徴表現(212)、または
前記ASRモデル(200)が非ストリーミングモードで動作しているとき、前記複数の出力ステップのそれぞれで前記第2のエンコーダ(220)によって生成される前記第2の高次特徴表現(222)
の1つを受け取ることと、
前記複数の出力ステップのそれぞれで、
前記ASRモデル(200)が前記ストリーミングモードで動作しているとき、可能性のある音声認識仮説にわたる前記第2の確率分布(232)、または
前記ASRモデル(200)が前記非ストリーミングモードで動作しているとき、可能性のある音声認識仮説にわたる前記第1の確率分布(232)
の1つを生成することと、
を行うように構成された、前記共同ネットワーク(230)と
を備える、請求項12に記載のコンピュータ実装方法(400)。
【請求項14】
前記第1のエンコーダ(210)が、コンフォーマ層の初期スタックを含む因果エンコーダを備え、
前記第2のエンコーダ(220)が、前記コンフォーマ層の前記初期スタックに重なるコンフォーマ層の最終スタックを含む非因果エンコーダを備える、
請求項11に記載のコンピュータ実装方法(400)。
【請求項15】
前記ASRモデルの前記第1のエンコーダ(210)及び前記第2のエンコーダ(220)が、ハイブリッド自己回帰トランスデューサ因数分解を使用して、前記トレーニングテキストサンプル(130)のコーパスと、前記トレーニングテキストサンプル(130)のコーパスに挿入された前記カナリアテキストサンプル(134)のセットとを含む、テキストのみのデータで訓練された前記外部言語モデル(160)の統合を容易にするように訓練される、請求項11に記載のコンピュータ実装方法(400)。
【請求項16】
システム(500)であって、
データ処理ハードウェア(510)と、
前記データ処理ハードウェア(510)と通信するメモリハードウェア(520)であって、前記メモリハードウェア(520)が、前記データ処理ハードウェア(510)で実行されるとき、前記データ処理ハードウェア(510)に、
カナリアテキストサンプル(134)のセットをトレーニングテキストサンプル(130)のコーパスに挿入することと、
前記トレーニングテキストサンプル(130)のコーパス、及び前記トレーニングテキストサンプル(130)のコーパスに挿入された前記カナリアテキストサンプル(134)のセットで外部言語モデル(160)を訓練することと、
前記カナリアテキストサンプル(134)のセット内のカナリアテキストサンプル(134)ごとに、
テキスト読み出し(TTS)システム(140)を使用して、対応する合成音声発話(142)を生成することと、
入力として、前記対応する合成音声発話(142)を受け取るように構成された訓練された自動音声認識(ASR)モデル(200)を使用して、前記対応する合成音声発話(142)の初期転写(232)を生成することと、
前記トレーニングテキストサンプル(130)のコーパス、及び前記トレーニングテキストサンプル(130)のコーパスに挿入された前記カナリアテキストサンプル(134)のセットで訓練された前記外部言語モデル(160)を使用して、対応する合成音声発話(142)ごとに生成された前記初期転写(232)を再スコアリングすることと、
再スコアリングされた前記初期転写(120)及び前記カナリアテキストサンプル(134)に基づいて、前記外部言語モデル(160)のワード誤り率(WER)(152)を決定することと、
前記外部言語モデル(160)の前記WER(152)に基づいて、前記外部言語モデル(160)による前記カナリアテキストサンプル(134)の記憶を検出することと、
を含む動作を実行させる命令を格納する前記メモリハードウェア(520)と、
を備える、システム(500)。
【請求項17】
前記外部言語モデル(160)のより低いWER(152)が、前記外部言語モデル(160)による前記カナリアテキストサンプル(134)の記憶の増加に対応する、請求項16に記載のシステム(500)。
【請求項18】
前記動作が、
外来テキストサンプル(136)のセットをトレーニングテキストサンプル(136)の第2のコーパスに挿入することと、
前記トレーニングテキストサンプル(131)の第2のコーパス、及び前記トレーニングテキストサンプル(131)の第2のコーパスに挿入された前記外来テキストサンプル(136)のセットで第2の外部言語モデル(170)を訓練することと、
前記カナリアテキストサンプル(134)のセット内のカナリアテキストサンプル(134)ごとに、前記対応する合成音声発話(142)のために前記訓練されたASRモデル(200)によって生成された前記初期転写(232)を受け取ることと、
前記トレーニングテキストサンプル(131)の第2のコーパス、及び前記トレーニングテキストサンプル(131)の第2のコーパスに挿入された前記外来テキストサンプル(136)のセットで訓練された前記第2の外部言語モデル(170)を使用して、対応する合成音声発話(142)ごとに生成された前記初期転写(232)を再スコアリングすることと、
前記第2の外部言語モデル(170)によって再スコアリングされた前記初期転写(232)及び前記カナリアテキストサンプル(134)に基づいて、前記第2の外部言語モデル(170)の第2のWER(154)を決定することと、
前記外部言語モデル(160)の前記WER(152)と前記第2の外部言語モデル(170)の前記第2のWER(154)を比較することにより、前記外部言語モデル(160)による前記カナリアテキストサンプル(134)の記憶を検出することと、
をさらに含む、請求項16または17に記載のシステム(500)。
【請求項19】
前記動作が、前記外部言語モデル(160)を訓練するときに、所定数の前記カナリアテキストサンプル(134)から勾配をクリッピングすることによるサンプルごとの勾配クリッピングを適用することにより、前記外部言語モデル(160)による前記カナリアテキストサンプル(134)の前記検出された記憶を軽減することをさらに含む、請求項16または17に記載のシステム(500)。
【請求項20】
前記動作が、前記カナリアテキストサンプル(134)のセット内のカナリアテキストサンプル(134)ごとに、
前記対応する合成音声発話(144)の接頭辞部分(146)にいかなるノイズも追加せずに、前記対応する合成音声発話(142)の接尾辞部分(144)にノイズを追加することと、
分類器(180)を使用して、前記対応するカナリアテキストサンプル(134)と一致する前記対応する合成音声発話(142)のために生成された再スコアリングされた前記初期転写(120)に基づいて、前記対応するカナリアテキストサンプル(134)が前記外部言語モデル(160)を訓練するために使用されたと決定することと、
をさらに含む、請求項16または17に記載のシステム(500)。
【請求項21】
前記カナリアテキストサンプル(134)のセット内の各カナリアテキストサンプル(134)が、それぞれがスペースで分離されたランダムな英数字の固定長シーケンスを含む、請求項16または17に記載のシステム(500)。
【請求項22】
前記カナリアテキストサンプル(134)のセットを前記トレーニングテキストサンプル(134)のコーパスに挿入することが、
前記カナリアテキストサンプル(134)のセット内のカナリアテキストサンプルの第1の部分の各カナリアテキストサンプル(134)を、1回だけ、前記トレーニングテキストサンプル(130)のコーパスに挿入することと、
前記カナリアテキストサンプル(134)のセット内のカナリアテキストサンプルの第2の部分の各カナリアテキストサンプル(134)を、2回以上、前記トレーニングテキストサンプル(130)のコーパスに挿入することであって、前記カナリアテキストサンプルの第2の部分が、前記カナリアテキストサンプルの第1の部分とは異なるカナリアテキストサンプル(134)を含む、前記挿入することと、
を含む、請求項16または17に記載のシステム(500)。
【請求項23】
前記外部言語モデル(160)が外部ニューラル言語モデルを含む、請求項16または17に記載のシステム(500)。
【請求項24】
前記外部ニューラル言語モデルが、トランスフォーマ層またはコンフォーマ層のスタックを含む、請求項23に記載のシステム(500)。
【請求項25】
前記動作が、前記訓練された外部言語モデル(160)を前記訓練されたASRモデル(200)と統合することをさらに含み、前記訓練された外部言語モデル(160)が、前記訓練されたASRモデル(200)によって予測される、可能性のある音声認識仮説にわたる確率分布(232)を再スコアリングするように構成される、請求項16または17に記載のシステム(500)。
【請求項26】
前記訓練されたASRモデル(200)が、
第1のエンコーダ(210)であって、
入力として、音響フレーム(110)のシーケンスを受け取ることと、
複数の出力ステップのそれぞれで、前記音響フレーム(110)のシーケンス内の対応する音響フレーム(110)の第1の高次特徴表現(212)を生成することと、
を行うように構成された前記第1のエンコーダ(210)と、
第2のエンコーダ(220)であって、
入力として、前記複数の出力ステップのそれぞれで前記第1のエンコーダ(210)によって生成された前記第1の高次特徴表現(212)を受け取ることと、
前記複数の出力ステップのそれぞれで、対応する第1の高次特徴フレーム(212)のために第2の高次特徴表現(222)を生成することと、
を行うように構成された前記第2のエンコーダ(220)と、
デコーダ(206)であって、
入力として、前記複数の出力ステップのそれぞれで前記第2のエンコーダ(220)によって生成された前記第2の高次特徴表現(222)を受け取ることと、
前記複数の出力ステップのそれぞれで、可能性のある音声認識仮説にわたる第1の確率分布(232)を生成することと、
を行うよう構成された前記デコーダ(206)と、
を備える、請求項16または17に記載のシステム(500)。
【請求項27】
前記デコーダ(206)または別のデコーダが、
入力として、前記複数の出力ステップのそれぞれで前記第1のエンコーダ(210)によって生成された前記第1の高次特徴表現(212)を受け取ることと、
前記複数の出力ステップのそれぞれで、可能性のある音声認識仮説にわたる第2の確率分布(232)を生成することと、
を行うようさらに構成される、請求項26に記載のシステム(500)。
【請求項28】
前記デコーダ(206)が、
予測ネットワーク(240)であって、前記複数の出力ステップのそれぞれで、
入力として、最終ソフトマックス層によって出力されるN個の以前の非空白記号のシーケンスを受け取ることと、
前記N個の以前の非空白記号のシーケンスの非空白記号ごとに、それぞれの埋め込みを生成することと、
前記それぞれの埋め込みを平均化することによって平均埋め込み(242)を生成することと、 を行うように構成された前記予測ネットワーク(240)と、
共同ネットワーク(230)であって、
入力として、前記複数の出力ステップのそれぞれで、前記予測ネットワーク(240)によって生成された前記平均埋め込み(242)、及び
前記ASRモデル(200)がストリーミングモードで動作しているとき、前記複数の出力ステップのそれぞれで前記第1のエンコーダ(210)によって生成される前記第1の高次特徴表現(212)、または
前記ASRモデル(200)が非ストリーミングモードで動作しているとき、前記複数の出力ステップのそれぞれで前記第2のエンコーダ(220)によって生成される前記第2の高次特徴表現(222)
の1つを受け取ることと、
前記複数の出力ステップのそれぞれで、
前記ASRモデル(200)が前記ストリーミングモードで動作しているとき、可能性のある音声認識仮説にわたる前記第2の確率分布(232)、または
前記ASRモデル(200)が前記非ストリーミングモードで動作しているとき、可能性のある音声認識仮説にわたる前記第1の確率分布(232)
の1つを生成することと、
を行うように構成された、前記共同ネットワーク(230)と、
を備える、請求項27に記載のシステム(500)。
【請求項29】
前記第1のエンコーダ(210)が、コンフォーマ層の初期スタックを含む因果エンコーダを備え、
前記第2のエンコーダ(220)が、前記コンフォーマ層の前記初期スタックに重なるコンフォーマ層の最終スタックを含む非因果エンコーダを備える、
請求項26に記載のシステム(500)。
【請求項30】
前記ASRモデルの前記第1のエンコーダ(210)及び前記第2のエンコーダ(220)が、ハイブリッド自己回帰トランスデューサ因数分解を使用して、前記トレーニングテキストサンプル(130)のコーパスと、前記トレーニングテキストサンプル(130)のコーパスに挿入された前記カナリアテキストサンプル(134)のセットとを含む、テキストのみのデータで訓練された前記外部言語モデル(160)の統合を容易にするように訓練される、請求項26に記載のシステム(500)。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、言語モデル融合ASRシステムにおける意図的でない記憶の検出に関する。
【背景技術】
【0002】
オーディオ入力を取得し、オーディオ入力をテキストに転写するプロセスである自動音声認識(ASR)は、モバイルデバイス及び他のデバイスで使用される大いに重要な技術となっている。一般に、自動音声認識は、オーディオ入力(例えば、音声発話)を取得し、オーディオ入力をテキストに転写することにより、人が話した内容の正確な転写を提供しようとする。最新のASRモデルは、ディープニューラルネットワークの継続中の開発に基づいて、正確さ(例えば、低ワード誤り率(WER))とレイテンシ(例えば、クライアントの発話と転写との間の遅延)の両方で改善し続ける。いくつかの例では、最新のASRモデルは言語モデル(LM)を活用して、ASRモデルによって生成された音響的に類似した転写仮説の曖昧さを解消する。ただし、LMを使用することの1つの欠点は、LMのトレーニング中に潜在的に機密性の高いテキストデータを非意図的に記憶することである。結果として、機密性の高いテキストデータを記憶すると、LMのプライバシーの脆弱性が生じ、これにより、ハッカーがLMを訓練するために使用される機密性の高いテキストデータへのアクセスを得る場合がある。
【発明の概要】
【0003】
本開示の一態様は、データ処理ハードウェアで実行されるとき、データ処理ハードウェアに、言語モデル自動音声認識(ASR)システムでの意図的でない記憶を検出するための動作を実行させるコンピュータ実装方法を提供する。動作は、カナリアテキストサンプルのセットをトレーニングテキストサンプルのコーパスに挿入することと、トレーニングテキストサンプルのコーパス、及びトレーニングテキストサンプルのコーパスに挿入されたカナリアテキストサンプルのセットで外部言語モデルを訓練することとを含む。カナリアテキストサンプルのセット内のカナリアテキストサンプルごとに、動作は、テキスト読み上げ(TTS)システムを使用して対応する合成音声発話を生成することと、入力として対応する合成音声発話を受け取るように構成された訓練されたASRモデルを使用して対応する合成音声発話の初期転写を生成することとを含む。動作はまた、トレーニングテキストサンプルのコーパス、及びトレーニングテキストサンプルのコーパスに挿入されたカナリアテキストサンプルのセットで訓練された外部言語モデルを使用して、対応する合成音声発話ごとに生成された初期転写を再スコアリングすることを含む。動作はまた、再スコアリングされた初期転写とカナリアテキストサンプルとに基づいて外部言語モデルのワード誤り率(WER)を決定することと、外部言語モデルのWERに基づいて、外部言語モデルによるカナリアテキストサンプルの記憶を検出することとを含む。
【0004】
本開示の実施態様は、以下の任意選択の特徴の1つまたは複数を含み得る。いくつかの実施態様では、外部言語モデルのより低いWERは、外部言語モデルによるカナリアテキストサンプルの記憶の増加に対応する。いくつかの例では、動作は、外来テキストサンプルのセットをトレーニングテキストサンプルの第2のコーパスに挿入することと、トレーニングテキストサンプルの第2のコーパス、及びトレーニングテキストサンプルの第2のコーパスに挿入された外来テキストサンプルのセットで第2の外部言語モデルを訓練することと、カナリアテキストサンプルのセット内のカナリアテキストサンプルごとに、対応する合成音声発話のための、訓練されたASRモデルによって生成された初期転写を受け取ることと、トレーニングテキストサンプルの第2のコーパス、及びトレーニングテキストサンプルの第2のコーパスに挿入された外来テキストサンプルのセットで訓練された第2の言語モデルを使用して対応する合成音声発話ごとに生成された初期転写を再スコアリングすることと、第2の外部言語モデルによって再スコアリングされた初期のテスト転写、及びカナリアテキストサンプルに基づいて第2の外部言語モデルの第2のWERを決定することと、外部言語モデルのWERと第2の外部言語モデルの第2のWERを比較することにより、外部言語モデルによるカナリアテキストサンプルの記憶を検出することと、をさらに含む。
【0005】
動作は、外部言語モデルを訓練するときに、所定数のカナリアテキストサンプルから勾配をクリッピングすることによるサンプルごとの勾配クリッピングを適用することにより、外部言語モデルによるカナリアテキストサンプルの検出された記憶を軽減することをさらに含み得る。いくつかの実施態様では、動作は、カナリアテキストサンプルのセット内のカナリアテキストサンプルごとに、対応する合成音声発話の接頭辞部分にいずれのノイズも追加することなく、対応する合成音声発話の接尾辞部分にノイズを追加することと、分類器を使用して、対応するカナリアテキストサンプルと一致する対応する合成音声発話のために生成された再スコアリングされた初期転写に基づいて、対応するカナリアテキストサンプルが、外部言語モデルを訓練するために使用されたと決定することとをさらに含む。カナリアテキストサンプルのセット内の各カナリアテキストサンプルは、それぞれがスペースで分離されたランダムな英数字の固定長シーケンスを含み得る。
【0006】
いくつかの例では、カナリアテキストサンプルのセットをトレーニングテキストサンプルのコーパスに挿入することは、カナリアテキストサンプルのセット内のカナリアテキストサンプルの第1の部分の各カナリアテキストサンプルを、1回だけ、トレーニングテキストサンプルのコーパスに挿入することと、カナリアテキストサンプルのセット内のカナリアテキストサンプルの第2の部分の各カナリアテキストサンプルを、2回以上、トレーニングテキストサンプルのコーパスに挿入することとを含む。これらの例では、カナリアテキストサンプルの第2の部分は、カナリアテキストサンプルの第1の部分とは異なるカナリアテキストサンプルを含む。外部言語モデルは、外部ニューラル言語モデルを含み得る。ここで、外部ニューラル言語モデルは、トランスフォーマ層またはコンフォーマ層のスタックを含み得る。いくつかの実施態様では、動作は、訓練された外部言語モデルを訓練されたASRモデルと統合することをさらに含み、訓練された外部言語モデルが、訓練されたASRモデルによって予測される、可能性のある音声認識仮説にわたる確率分布を再スコアリングするように構成される。
【0007】
いくつかの例では、訓練されたASRモデルは、入力として音響フレームのシーケンスを受け取り、複数の出力ステップのそれぞれで、音響フレームのシーケンス内の対応する音響フレームの第1の高次特徴表現を生成するように構成された第1のエンコーダと、入力として、複数の出力のステップのそれぞれで第1のエンコーダによって生成された第1の高次特徴表現を受け取り、複数の出力ステップのそれぞれで、対応する第1の高次特徴フレームのための第2の高次特徴表現を生成するように構成された第2のエンコーダと、入力として、複数の出力ステップのそれぞれで第2のエンコーダによって生成された第2の高次特徴表現を受け取り、複数の時間ステップのそれぞれで、可能性のある音声認識仮説にわたる第1の確率分布を生成するように構成されたデコーダとを含む。ここで、デコーダまたは別のデコーダは、入力として、複数の出力ステップのそれぞれで第1のエンコーダによって生成された第1の高次特徴表現を受け取り、複数の出力ステップのそれぞれで、可能性のある音声認識仮説にわたる第2の確率分布を生成するようにさらに構成され得る。
【0008】
いくつかの実施態様では、デコーダは、複数の出力ステップのそれぞれで、入力として、最終ソフトマックス層によって出力されたN個の以前の非空白記号のシーケンスを受け取り、N個の以前の非空白記号のシーケンスの非空白記号ごとにそれぞれの埋め込みを生成し、それぞれの埋め込みを平均することによって平均埋め込みを生成するように構成された予測ネットワークと、入力として、複数の出力ステップのそれぞれで予測ネットワークによって生成された平均埋め込み、及びASRモデルがストリーミングモードで動作しているときに複数の出力ステップのそれぞれで第1のエンコーダによって生成された第1の高次特徴表現、またはASRモデルが非ストリーミングモードで動作しているときに、複数の出力ステップのそれぞれで第2のエンコーダによって生成された第2の高次特徴表現のうちの1つを受け取るように構成された共同ネットワークとを含む。これらの実施態様では、デコーダは、複数の出力ステップのそれぞれで、ASRモデルがストリーミングモードで動作しているときの可能性のある音声認識仮説にわたる第2の確率分布、またはASRモデルが非ストリーミングモードで動作しているときの可能性のある音声認識仮説にわたる第1の確率分布のうちの1つを生成するようにさらに構成される。第1のエンコーダは、コンフォーマ層の初期スタックを有する因果エンコーダを含み得、第2のエンコーダは、コンフォーマ層の初期スタックに重なるコンフォーマ層の最終スタックを有する非因果エンコーダを含む。いくつかの例では、ASRモデルの第1のエンコーダ及び第2のエンコーダは、ハイブリッド自己回帰トランスデューサ因数分解を使用して、トレーニングテキストサンプルのコーパスと、トレーニングテキストサンプルのコーパスに挿入されたカナリアテキストサンプルのセットとを含む、テキストのみのデータで訓練された外部言語モデルの統合を容易にするように訓練される。
【0009】
本開示の別の態様は、データ処理ハードウェアと、データ処理ハードウェアで実行されるとき、データ処理ハードウェアに動作を実行させる命令を格納するメモリハードウェアとを含むシステムを提供する。動作は、カナリアテキストサンプルのセットをトレーニングテキストサンプルのコーパスに挿入することと、トレーニングテキストサンプルのコーパス、及びトレーニングテキストサンプルのコーパスに挿入されたカナリアテキストサンプルのセットで外部言語モデルを訓練することとを含む。カナリアテキストサンプルのセット内のカナリアテキストサンプルごとに、動作は、テキスト読み上げ(TTS)システムを使用して対応する合成音声発話を生成することと、入力として対応する合成音声発話を受け取るように構成された訓練されたASRモデルを使用して対応する合成音声発話の初期転写を生成することとを含む。動作はまた、トレーニングテキストサンプルのコーパス、及びトレーニングテキストサンプルのコーパスに挿入されたカナリアテキストサンプルのセットで訓練された外部言語モデルを使用して、対応する合成音声発話ごとに生成された初期転写を再スコアリングすることを含む。動作はまた、再スコアリングされた初期転写とカナリアテキストサンプルとに基づいて外部言語モデルのワード誤り率(WER)を決定することと、外部言語モデルのWERに基づいて、外部言語モデルによるカナリアテキストサンプルの記憶を検出することとを含む。
【0010】
本開示の実施態様は、以下の任意選択の特徴の1つまたは複数を含み得る。いくつかの実施態様では、外部言語モデルのより低いWERは、外部言語モデルによるカナリアテキストサンプルの記憶の増加に対応する。いくつかの例では、動作は、外来テキストサンプルのセットをトレーニングテキストサンプルの第2のコーパスに挿入することと、トレーニングテキストサンプルの第2のコーパス、及びトレーニングテキストサンプルの第2のコーパスに挿入された外来テキストサンプルのセットで第2の外部言語モデルを訓練することと、カナリアテキストサンプルのセット内のカナリアテキストサンプルごとに、対応する合成音声発話のための、訓練されたASRモデルによって生成された初期転写を受け取ることと、トレーニングテキストサンプルの第2のコーパス、及びトレーニングテキストサンプルの第2のコーパスに挿入された外来テキストサンプルのセットで訓練された第2の言語モデルを使用して対応する合成音声発話ごとに生成された初期転写を再スコアリングすることと、第2の外部言語モデルによって再スコアリングされた初期のテスト転写、及びカナリアテキストサンプルに基づいて第2の外部言語モデルの第2のWERを決定することと、外部言語モデルのWERと第2の外部言語モデルの第2のWERを比較することにより、外部言語モデルによるカナリアテキストサンプルの記憶を検出することと、をさらに含む。
【0011】
動作は、外部言語モデルを訓練するときに、所定数のカナリアテキストサンプルから勾配をクリッピングすることによるサンプルごとの勾配クリッピングを適用することにより、外部言語モデルによるカナリアテキストサンプルの検出された記憶を軽減することをさらに含み得る。いくつかの実施態様では、動作は、カナリアテキストサンプルのセット内のカナリアテキストサンプルごとに、対応する合成音声発話の接頭辞部分にいずれのノイズも追加することなく、対応する合成音声発話の接尾辞部分にノイズを追加することと、分類器を使用して、対応するカナリアテキストサンプルと一致する対応する合成音声発話のために生成された再スコアリングされた初期転写に基づいて、対応するカナリアテキストサンプルが、外部言語モデルを訓練するために使用されたと決定することとをさらに含む。カナリアテキストサンプルのセット内の各カナリアテキストサンプルは、それぞれがスペースで分離されたランダムな英数字の固定長シーケンスを含み得る。
【0012】
いくつかの例では、カナリアテキストサンプルのセットをトレーニングテキストサンプルのコーパスに挿入することは、カナリアテキストサンプルのセット内のカナリアテキストサンプルの第1の部分の各カナリアテキストサンプルを、1回だけ、トレーニングテキストサンプルのコーパスに挿入することと、カナリアテキストサンプルのセット内のカナリアテキストサンプルの第2の部分の各カナリアテキストサンプルを、2回以上、トレーニングテキストサンプルのコーパスに挿入することとを含む。これらの例では、カナリアテキストサンプルの第2の部分は、カナリアテキストサンプルの第1の部分とは異なるカナリアテキストサンプルを含む。外部言語モデルは、外部ニューラル言語モデルを含み得る。ここで、外部ニューラル言語モデルは、トランスフォーマ層またはコンフォーマ層のスタックを含み得る。いくつかの実施態様では、動作は、訓練された外部言語モデルを訓練されたASRモデルと統合することをさらに含み、訓練された外部言語モデルが、訓練されたASRモデルによって予測される、可能性のある音声認識仮説にわたる確率分布を再スコアリングするように構成される。
【0013】
いくつかの例では、訓練されたASRモデルは、入力として音響フレームのシーケンスを受け取り、複数の出力ステップのそれぞれで、音響フレームのシーケンス内の対応する音響フレームの第1の高次特徴表現を生成するように構成された第1のエンコーダと、入力として、複数の出力のステップのそれぞれで第1のエンコーダによって生成された第1の高次特徴表現を受け取り、複数の出力ステップのそれぞれで、対応する第1の高次特徴フレームのための第2の高次特徴表現を生成するように構成された第2のエンコーダと、入力として、複数の出力ステップのそれぞれで第2のエンコーダによって生成された第2の高次特徴表現を受け取り、複数の時間ステップのそれぞれで、可能性のある音声認識仮説にわたる第1の確率分布を生成するように構成されたデコーダとを含む。ここで、デコーダまたは別のデコーダは、入力として、複数の出力ステップのそれぞれで第1のエンコーダによって生成された第1の高次特徴表現を受け取り、複数の出力ステップのそれぞれで、可能性のある音声認識仮説にわたる第2の確率分布を生成するようにさらに構成され得る。
【0014】
いくつかの実施態様では、デコーダは、複数の出力ステップのそれぞれで、入力として、最終ソフトマックス層によって出力されたN個の以前の非空白記号のシーケンスを受け取り、N個の以前の非空白記号のシーケンスの非空白記号ごとにそれぞれの埋め込みを生成し、それぞれの埋め込みを平均することによって平均埋め込みを生成するように構成された予測ネットワークと、入力として、複数の出力ステップのそれぞれで予測ネットワークによって生成された平均埋め込み、及びASRモデルがストリーミングモードで動作しているときに複数の出力ステップのそれぞれで第1のエンコーダによって生成された第1の高次特徴表現、またはASRモデルが非ストリーミングモードで動作しているときに、複数の出力ステップのそれぞれで第2のエンコーダによって生成された第2の高次特徴表現のうちの1つを受け取るように構成された共同ネットワークとを含む。これらの実施態様では、デコーダは、複数の出力ステップのそれぞれで、ASRモデルがストリーミングモードで動作しているときの可能性のある音声認識仮説にわたる第2の確率分布、またはASRモデルが非ストリーミングモードで動作しているときの可能性のある音声認識仮説にわたる第1の確率分布のうちの1つを生成するようにさらに構成される。第1のエンコーダは、コンフォーマ層の初期スタックを有する因果エンコーダを含み得、第2のエンコーダは、コンフォーマ層の初期スタックに重なるコンフォーマ層の最終スタックを有する非因果エンコーダを含む。いくつかの例では、ASRモデルの第1のエンコーダ及び第2のエンコーダは、ハイブリッド自己回帰トランスデューサ因数分解を使用して、トレーニングテキストサンプルのコーパスと、トレーニングテキストサンプルのコーパスに挿入されたカナリアテキストサンプルのセットとを含む、テキストのみのデータで訓練された外部言語モデルの統合を容易にするように訓練される。
【0015】
本開示の1つまたは複数の実施態様の詳細は、添付の図面及び以下の説明において述べられる。他の態様、特徴、及び利点は、説明及び図面から、ならびに特許請求の範囲から明らかになるであろう。
【図面の簡単な説明】
【0016】
図1】自動音声認識のためにカスケードエンコーダ、及び言語モデルアーキテクチャを使用する例示的な音声環境の概略図である。
図2A】カナリアテキストサンプルの意図的でない記憶を検出するための例示的なプロセスの概略図である。
図2B】カナリアテキストサンプルの意図的でない記憶を検出するための例示的なプロセスの概略図である。
図3】A及びBは、外部言語モデルを訓練するための例示的なトレーニングプロセスの概略図である。
図4】言語モデル融合自動音声認識システムにおける意図的でない記憶を検出する方法の動作の例示的な配置のフローチャートである。
図5】本明細書に説明するシステム及び方法を実装するために使用し得る例示的なコンピューティングデバイスの概略図である。
【発明を実施するための形態】
【0017】
種々の図面における同様の参照記号は、同様の要素を指す。
【0018】
従来、エンドツーエンド(E2E)自動音声認識(ASR)モデルは、主要なコンポーネントとしてエンコーダと、デコーダとを含む。例えば、エンコーダは、符号化された入力オーディオデータを生成し、デコーダは、入力オーディオデータに対応する候補転写を生成する。多くの最新のASRモデルは、言語情報を使用して、ASRモデルによって生成された音響的に類似する候補転写の曖昧さを解消するように構成された外部言語モデル(LM)をさらに活用する。例えば、LMは、「ドッグパークへの行き方」の方がユーザによって話される可能性が高いという言語情報に基づいて、「ドッグパークへの行き方」が「ドッグバークへの行き方」よりも正確な転写である可能性がはるかに高いと判断し得る。特に、LMを活用することにより、ASRモデルは、ユーザが話すまれな言葉、または語彙外の(OOV)言葉を認識するための性能(例えば、ワード誤り率(WER))を大幅に向上させ得る。
【0019】
LMは、一般的なテキストサンプルと、連絡先リスト、入力パターン、及び他のユーザ固有の情報などのユーザ固有のテキストサンプルとを含む数百万のトレーニングテキストサンプルで訓練される。したがって、特定のユーザ向けのユーザ固有のテキストサンプルでLMを訓練すると、LMは、明確にユーザに合わせた転写を生成する。例えば、LMは、ユーザと関連付けられた連絡先氏名でのLMトレーニングに基づいて、ASRモデルによって生成された「Haileeを呼んで」の間違った転写を、「Haleighを呼んで」の正しい転写に改善し得る。
【0020】
しかしながら、ユーザ固有のテキストサンプルを使用してLMを訓練することの主要な欠点は、LMが、ユーザにとって固有な潜在的に機密情報を非意図的に記憶する場合があることである。例えば、ユーザのクレジットカード番号を使用してLMを訓練すると、LMは、ユーザがクレジットカード番号を話すときに正確な転写を生成することが可能になるが、LMはまた、クレジットカード番号を非意図的に記憶する場合がある。本明細書で使用する場合、LMを訓練するために使用され、LMによって非意図的に記憶されるユーザ固有のテキストサンプルは、カナリアテキストサンプルと呼ばれる。カナリアテキストサンプルは、ユーザと関連付けられた機密情報を含む場合がある。カナリアテキストサンプルの記憶は、これらの記憶されたカナリアテキストサンプルを特定することができるハッカーによって悪用され、それにより潜在的に機密性の高い情報が悪用される場合がある。ただし、LMが非意図的に記憶されたカナリアテキストサンプルを有するかどうかを判断する際には、いくつかの障害が存在する。すなわち、ASRモデルは、入力として(テキストデータではなく)オーディオデータを受け取り、出力として、発話ごとに単一のトランスクリプトを生成するように構成される。したがって、N個の最適の転写のリストを得るためにLMの直接的なアクセスが利用できないとき、LMに対する従来の攻撃はいずれの記憶されたテキストデータも決定することができない。
【0021】
したがって、本明細書の実施態様は、外部LMによって非意図的に記憶されたカナリアテキストサンプルを検出するための方法及びシステムを対象とする。より具体的には、方法は、カナリアテキストサンプルのセットをトレーニングテキストサンプルのコーパスに挿入することと、トレーニングテキストサンプルのコーパス、及びトレーニングテキストサンプルのコーパスに挿入されたカナリアテキストサンプルのセットで外部LMを訓練することとを含む。カナリアテキストサンプルごとに、テキスト読み上げ(TTS)システムは、対応する合成音声発話を生成し、訓練されたASRモデルは、対応する合成音声発話の初期転写を生成する。訓練された外部LMは、対応する合成音声発話ごとに生成された初期転写を再スコアリングする。再スコアリングされた初期転写及びカナリアテキストサンプルを使用して、方法は、外部LMのワード誤り率(WER)を決定し、外部LMによるカナリアテキストサンプルの記憶を検出する。明らかになるように、カナリアテキストサンプルの記憶を検出することは、カナリアテキストサンプルで訓練されていない別の外部LMを使用すること、及び/または分類器を使用することを含み得る。記憶されたカナリアテキストサンプルを検出することは、LMの潜在的なセキュリティ脆弱性を特定するにすぎない。その目的のために、方法及びシステムは、外部LMがトレーニング中にカナリアテキストサンプルを記憶することを軽減するために、指定数のカナリアテキストサンプルから勾配をクリッピングすることにより、サンプルごとの勾配クリッピングを適用することをさらに対象とし得る。
【0022】
図1は、音声環境100の一例である。音声環境100では、ユーザ104が、ユーザデバイス10などのコンピューティングデバイスとインタラクトする方法は、音声入力を通してである場合がある。ユーザデバイス10(一般に、デバイス10とも呼ばれる)は、音声環境100内の1人または複数のユーザ104から音(例えば、ストリーミングオーディオデータ)を取り込むように構成される。ここで、ストリーミングオーディオデータは、可聴クエリ、ユーザデバイス10に対するコマンド、またはユーザデバイス10によって取り込まれた可聴通信として機能する、ユーザ104による音声発話106を指す場合がある。ユーザデバイス10の音声対応システムは、クエリに応答することにより、及び/またはコマンドを1つまたは複数の下流アプリケーションによって実行/遂行させることにより、クエリまたはコマンドに対処し得る。
【0023】
ユーザデバイス10は、ユーザ104と関連付けられており、オーディオデータを受け取ることができる任意のコンピューティングデバイスに対応し得る。ユーザデバイス10のいくつかの例は、モバイルデバイス(例えば、スマートウォッチ)、スマートアプライアンス、モノのインターネット(IoT)デバイス、車載インフォテインメントシステム、スマートディスプレイ、スマートスピーカなどを含むが、これらに限定されない。ユーザデバイス10は、データ処理ハードウェア12と、データ処理ハードウェア12と通信し、データ処理ハードウェア12によって実行されるとき、データ処理ハードウェア12に1つまたは複数の動作を実行させる命令を格納するメモリハードウェア14とを含む。ユーザデバイス10は、音声環境100内の音勢発話106を取り込み、電気信号に変換するためのオーディオキャプチャデバイス(例えば、マイクロフォン)16、16aと、可聴オーディオ信号(例えば、ユーザデバイス10からの出力データとして)を通信するための音声出力デバイス(例えば、スピーカ)16、16bとを有するオーディオシステム16をさらに含む。示された例では、ユーザデバイス10は単一のオーディオキャプチャデバイス16aを実装するが、ユーザデバイス10は、本開示の範囲から逸脱することなくオーディオキャプチャデバイス16aのアレイを実装してもよく、これにより、アレイの1つまたは複数のキャプチャデバイス16aは、ユーザデバイス10に物理的に存在しないが、オーディオシステム16と通信し得る。
【0024】
音声環境100では、自動音声認識(ASR)システム118は、ASRモデル(例えば、訓練されたASRモデル)200、及び第1の外部言語モデル(LM)160を実装し、それぞれがユーザ104のユーザデバイス10上、及び/またはネットワーク40を介してユーザデバイス10と通信しているリモートコンピューティングデバイス60(例えば、クラウドコンピューティング環境で実行する分散システムの1つまたは複数のリモートサーバ)上に存在する。いくつかの例では、ASRモデル200は、リカレント型ニューラルネットワーク-トランスデューサ(RNN-T)モデルアーキテクチャを含む。ユーザデバイス10及び/またはリモートコンピューティングデバイス60はまた、ユーザ104によって話され、オーディオキャプチャデバイス16aによって取り込まれた発話106を受け取り、発話106をASRシステム118によって処理できる入力音響フレーム110と関連付けられた対応するデジタル形式に変換するように構成されたオーディオサブシステム108を含む。例では、ユーザはそれぞれの発話106を話し、オーディオサブシステム108は、ASRシステム118への入力のために、発話106を対応するオーディオデータ(例えば、音響フレームのシーケンス)110に変換する。その後、ASRモデル200は、入力として、発話106に対応する音響フレーム110のシーケンスを受け取り、ASRモデル200が、音響フレーム110内の各音響フレーム110を受け取る(例えば、処理する)ときに、各出力ステップで、発話106の対応する転写120(例えば、音声認識結果/仮説)を生成/予測する。
【0025】
示された例では、ASRモデル200は、ストリーミング音声認識を実行して、初期音声認識結果(例えば、候補仮説)120、120aを生成し、初期音声認識結果120aを改善することにより、最終的な音声認識結果(例えば、最終仮説)120、120bを生成し得る。初期の及び最終的な音声認識結果120a、120bは、部分的な音声認識結果または音声認識結果全体のいずれかに対応し得る。別の言い方をすれば、初期の及び最終的な音声認識結果120a、120bは、発話106の一部または発話106の部分全体のいずれかに対応し得る。例えば、部分音声認識結果は、音声発話の一部または話された用語の一部に対応する場合もある。しかしながら、以降で明らかになるように、ASRモデル200は、最終的な音声認識結果120bに対して追加の処理を実行し、これにより、最終的な音声認識結果120bが、初期の音声認識結果120aよりも遅れる場合がある。図2を参照してより詳細に説明すると、第1の外部LM160は、ストリーミングモードまたは非ストリーミングモードのいずれかで転写120を改善するためにASRモデル200によって生成された転写120を再スコアリングし得る。第1の外部LM160は、ASRモデル200の外部に存在する場合もあれば、ASRモデル200と一体化している場合もある。
【0026】
ユーザデバイス10及び/またはリモートコンピューティングデバイス60はまた、発話106の転写120の表現をユーザデバイス10のユーザ104に提示するように構成されたユーザインターフェースジェネレータ107も実行する。以下でより詳細に説明するように、ユーザインターフェースジェネレータ107は、時間1の間に、ストリーミング方式で初期音声認識結果120aを表示し、後に、時間2の間にストリーミング方式で最終的な音声認識結果120bを表示し得る。とりわけ、ASRモデル200は、最終的な音声認識結果120bが、初期の音声認識結果120aを改善するとしても、ストリーミング方式で最終的な音声認識120bを出力する。いくつかの構成では、ASRシステム118から出力された転写120は(例えば、ユーザデバイス10またはリモートコンピューティングデバイス60で実行する自然言語理解(NLU)モジュールによって)処理されて、発話106によって指定されたユーザコマンド/クエリを実行する。追加的にまたは代替的に、テキスト読み上げシステム(図示せず)(例えば、ユーザデバイス10またはリモートコンピューティングデバイス60の任意の組み合わせで実行する)は、ユーザデバイス10及び/または他のデバイスによる可聴出力のために転写120を合成音声に変換し得る。
【0027】
示された例では、ユーザ104は、ASRシステム118を使用するユーザデバイス10のプログラムまたはアプリケーション50(例えば、デジタルアシスタントアプリケーション50)とインタラクトする。例えば、図1は、ユーザ104とデジタルアシスタントアプリケーション50との間の会話を描写するために、デジタルアシスタントアプリケーション50とコミュニケーションをとるユーザ104及びユーザデバイス10の画面にデジタルアシスタントインターフェース18を表示するデジタルアシスタントアプリケーション50を示す。この例では、ユーザ104はデジタルアシスタントアプリケーション50に、「今晩のコンサートは何時ですか?」と質問する。ユーザ104からのこの質問は、オーディオキャプチャデバイス16aによって取り込まれ、ユーザデバイス10のオーディオシステム16によって処理される音声発話106である。この例では、オーディオシステム16は、音声発話106を受け取り、音声発話106をASRシステム118への入力のために音響フレーム110のシーケンスに変換する。
【0028】
例を続けると、ASRモデル200は、ユーザ104が話す発話106に対応する音響フレーム110のシーケンスを受け取りながら、音響フレーム110のシーケンスを符号化し、次に符号化された音響フレーム110のシーケンスを初期音声認識結果120aに復号化する。時間1の間、ユーザインターフェースジェネレータ107は、デジタルアシスタントインターフェース18を介して、ユーザデバイス10のユーザ104に、ワード、ワードピース、及び/または個々の文字が話されるとすぐに画面に表示されるように、発話106の初期の音声認識結果120aの表現をストリーミング方式で提示する。いくつかの例では、第1のルックアヘッドオーディオコンテキストはゼロに等しい。
【0029】
時間2の間、ユーザインターフェースジェネレータ107は、デジタル支援インターフェース18を介して、ユーザデバイス10のユーザ104に、ワード、ワードピース、及び/または個々の文字がASRモデル200によって生成されるとすぐに画面に表示されるように、発話106の最終的な音声認識結果120bの表現をストリーミング方式で提示する。いくつかの実施態様では、ユーザインターフェースジェネレータ107は、時間1において提示された初期の音声認識結果120aの表現を、時間2において提示された最終的な音声認識結果120bの表現に置き換える。ここで、時間1及び時間2は、ユーザインターフェースジェネレータ107がそれぞれの音声認識結果120をいつ提示するのかに対応するタイムスタンプを含み得る。この例では、時間1のタイムスタンプは、ユーザインターフェースジェネレータ107が最終的な音声認識結果120bよりも早い時点で初期音声認識結果120aを提示することを示す。例えば、最終的な音声認識結果120bは初期の音声認識結果120aよりも正確であると推定されるため、転写120として最終的に表示される最終的な音声認識結果120bは、初期の音声認識結果120aで誤認識された可能性のあるあらゆる用語を修正し得る。この例では、ASRモデル200によって出力されるストリーミング初期音声認識結果120aは、時間1においてユーザデバイス10の画面に表示され、低いレイテンシと関連付けられ、ユーザ104に、ユーザのクエリが処理中であるという応答性を提供する一方で、ASRモデル200によって出力され、時間2において画面に表示される最終的な音声認識結果120bは、追加の音声認識モデル及び/または言語モデルを活用して、正確さに関して音声認識の質を向上させるが、レイテンシは増加する。ただし、初期の音声認識結果120aは、ユーザが発話106を話すときに表示されるので、最終的な音声認識結果120bを生成すること、及び最終的に表示することと関連付けられるより高いレイテンシは、ユーザ104には容易に気づかれない。
【0030】
図1に示す例では、デジタルアシスタントアプリケーション50は、自然言語処理を使用してユーザ104が提起した質問に応答し得る。自然言語処理は、概して、文字言語(例えば、初期の音声認識結果120a及び/または最終的な音声認識結果120b)を解釈し、文字言語が任意のアクションを促すかどうかを判断するプロセスを指す。この例では、デジタルアシスタントアプリケーション50は、自然言語処理を使用して、ユーザ104からの質問が、ユーザのスケジュール及びより具体的にはユーザのスケジュールにあるコンサートに関することを認識する。自然言語処理を用いてこれらの詳細を認識することにより、自動アシスタントは、ユーザのクエリに対する応答19を返し、応答19は、「会場のドアは午後6時半に開き、コンサートは午後8時に始まります」と述べる。いくつかの構成では、自然言語処理は、ユーザデバイス10のデータ処理ハードウェア12と通信するリモートサーバ60で発生する。
【0031】
図2A及び2Bは、第1の外部LM160によるカナリアテキストサンプル134の意図的でない記憶を検出するための第1の例示的なプロセス201(図2A)及び第2の例示的なプロセス202(図2B)の概略図を示す。プロセス201、202は、リモートサーバ60(図1)で実行し、カスケードエンコーダ204と、デコーダ206とを有する訓練されたASRモデル200を含む。以降で明らかになるように、ASRモデル200はストリーミングモード、非ストリーミングモード、及び/またはストリーミングモードと非ストリーミングモードの両方で並行して動作し得る。さらに、プロセス201、202は、テキスト読み上げ(TTS)システム140及び第1の外部LM160を含むがこれらに限定されない、ASRモデル200の外部の1つまたは複数のコンポーネントを用い得る。
【0032】
ここで図3A及び図3Bを参照すると、いくつかの実施態様では、トレーニングプロセス300は、第1の外部LM160及び第2の外部LM170を訓練するように構成される。以降で明らかになるように、第2の外部LM170は、第1の外部LM160がカナリアテキストサンプル134のいずれかを非意図的に記憶したかどうかを検出するためのベースラインLMとして使用され得る。特に、図3Aは、トレーニングテキストサンプル130の第1のコーパスを使用して第1の外部LM(例えば、第1のLM)160を訓練するように構成された第1のトレーニングプロセス300、300aの概略図を示す。ここで、トレーニングテキストサンプル130の第1のコーパスは、トレーニングテキスト発話132、132a-nのセットと、カナリアテキストサンプル134、134a-nのセットとを含む。トレーニングテキスト発話132のセットは、ユーザ固有ではないか、またはユーザについての機密情報を含まない一般的なテキストサンプルを含み得る。例えば、トレーニングテキスト発話132は、「ヘイ、グーグル」、「今週、何の約束をしている?」、及び「今日の天気はどう?」を含む場合がある。第1のトレーニングプロセス300aはまた、各カナリアテキストサンプル134が出力ラベルの固定長のシーケンス(または動的長シーケンス)を含むカナリアテキストサンプル134のセットを取得する。各出力ラベルは、英数字、書記素、音素、N-グラム、ワードピース、及び/またはワードを含み得る。いくつかの場合、各出力ラベルはスペースで分離される。さらに、各カナリアテキストサンプル134は、ユーザ固有の情報またはユーザと関連付けられた機密情報を表す場合がある。例えば、カナリアテキストサンプル134は、パスワード「oegdbu」またはクレジットカード番号「1111 2222 3333 4444」に対応する場合がある。しかしながら、いくつかの例では、ユーザと関連付けられた任意の実際の機密情報を明らかにすることを回避するために、カナリアテキストサンプル134は、ユーザと関連付けられたいかなる機密情報も実際には含まずに、パスワード、シリアル番号、クレジットカード番号、及び/または他の秘密情報などの機密情報に似たフォーマットを有するランダムな英数字のシーケンス(例えば、架空の機密情報)を含み得る。
【0033】
第1のトレーニングプロセス300aは、各カナリアテキストサンプル134をトレーニングテキストサンプル130の第1のコーパスに挿入する。したがって、トレーニングテキストサンプル130の第1のコーパス内の各トレーニングテキストサンプル130は、トレーニングテキスト発話132のそれぞれ1つまたはカナリアテキストサンプル134のそれぞれの1つに対応する場合がある。さらに、トレーニングテキストサンプル130の第1のコーパスは、任意の数のトレーニングテキストサンプル130を含み得る。いくつかの実施態様では、第1のトレーニングプロセス300aは、カナリアテキストサンプル134のセット内のカナリアテキストサンプル134の第1の部分の各カナリアテキストサンプル134を、1回だけ(例えば、1回)、トレーニングテキストサンプル130の第1のコーパスに挿入し、カナリアテキストサンプル134のセット内のカナリアテキストサンプル134の第2の部分の各カナリアテキストサンプル134を、2回以上、トレーニングテキストサンプル130の第1のコーパスに挿入し得る。ここで、カナリアテキストサンプル134の第2の部分は、カナリアテキストサンプル134の第1の部分とは異なるカナリアテキストサンプル134を含む。したがって、トレーニングテキストサンプル130の第1のコーパスに挿入された各カナリアテキストサンプル134は、トレーニングテキストサンプル130の第1のコーパスにおいて異なる発生数を有し得る。
【0034】
第1のLM160は、入力として、トレーニングテキストサンプル130の第1のコーパス内の各トレーニングテキストサンプル130(例えば、トレーニングテキスト発話132またはカナリアテキストサンプル134)を受け取り、出力として、トレーニングテキストサンプル130の第1のコーパス内の対応するトレーニングテキストサンプル130のトレーニング転写162を生成するように構成され得る。いくつかの例では、第1のLM160は、トレーニングテキストサンプル130ごとに出力ラベルのサブセットを受け取り、テキストサンプルの出力レベルの残りのサブセットを予測するためにトレーニング転写162を生成する。例えば、トレーニングテキストサンプル130が「1 2 3 4」の場合、第1のLM160は、出力ラベル「1 2 3」を受け取り、次の出力ラベルが「4」であると予測し得る。他の例では、第1のLM160は、トレーニングテキストサンプル130ごとに出力ラベルの隠されたシーケンスを受け取り、これにより、出力ラベルの1つまたは複数は、マスキング値(例えば、null値)
【数1】

を割り当てられ、隠された出力ラベルの出力ラベルを予測するためにトレーニング転写162を生成する。例えば、トレーニングテキストサンプル130が「password」の場合、第1のLM160は、出力ラベル「p
【数2】

ssword」を受け取り、隠された出力値
【数3】

が「a」であると予測し得る。
【0035】
第1のトレーニング損失モジュール310は、トレーニングテキストサンプル130ごとに第1のLM160によって生成されたトレーニング転写162を受け取り、トレーニング転写162(例えば、予測された転写)を対応するトレーニングテキストサンプル130(例えば、グラウンドトゥルースラベル)と比較することによって第1のトレーニング損失312を決定する。その後、第1のトレーニングプロセス300aは、フィードバックとして第1のトレーニング損失312を第1のLM160に提供し、第1のトレーニング損失312に基づいて第1のLM160のパラメータを更新する。したがって、第1のトレーニングプロセス300aは、トレーニングテキスト発話132のセット及びカナリアテキストサンプル134のセットを使用して、正確な転写を生成するように、第1のLM160を訓練する。とりわけ、第1のトレーニングプロセス300a中に、第1のLM160は、1つまたは複数のカナリアテキストサンプル134を非意図的に記憶する場合がある。以降で明らかになるように、第1のLM160によって記憶されたカナリアテキストサンプル134のいずれも、プロセス201、202(図2)によって検出され得る。
【0036】
ここで図3Bを参照すると、第2のトレーニングプロセス300bは、トレーニングテキストサンプル131の第2のコーパスを使用して、第2の外部LM (例えば、第2のLM) 170を訓練するように構成される。ここで、トレーニングテキストサンプル131の第2のコーパスは、トレーニングテキスト発話132のセットと、外来テキストサンプル136、136a-nのセットとを含む。すなわち、第1のトレーニングプロセス300a (図3A)とは対照的に、第2のトレーニングプロセス300bは、外来テキストサンプル136のセットを取得し、カナリアテキストサンプル134の代わりに、トレーニングテキストサンプル131の第2のコーパスに挿入する。ここで、各外来テキストサンプル136は、カナリアテキストサンプル134と同じ固定長シーケンス(または動的長シーケンス)の出力ラベルを含み得る。すなわち、外来テキストサンプル136の各出力ラベルは、任意選択でスペースで分離される、英数字、音素、書記素、N-グラム、ワードピース、及び/またはワードを含み得る。さらに、各外来テキストサンプル136は、ユーザ固有情報またはユーザについての機密情報を表す場合がある。ただし、以降で明らかになるように、外来テキストサンプル136のセット内の各外来テキストサンプル136は、カナリアテキストサンプル134のセット内の各カナリアテキストサンプル134とは異なる。したがって、外来テキストサンプル136はまた、パスワード「oegdbu」またはクレジットカード番号「1111 2222 3333 4444」に、これらのテキストサンプルがカナリアテキストサンプル134のセットにすでに含まれていない場合にのみ、対応し得る。
【0037】
同様に、第2のトレーニングプロセス300bは、各外来テキストサンプル136を、トレーニングテキストサンプル131の第2のコーパスに挿入する。したがって、トレーニングテキストサンプル131の第2のコーパス内の各トレーニングテキストサンプル131は、トレーニングテキスト発話132のそれぞれ1つまたは外来テキストサンプル136のそれぞれ1つに対応する場合がある。第2のLM170は、入力として、トレーニングテキストサンプル131の第2のコーパス内の各トレーニングテキストサンプル131(例えば、トレーニングテキスト発話132または外来テキストサンプル136)を受け取り、出力として、トレーニングテキストサンプル131の第2のコーパス内の対応するトレーニングテキストサンプル131のトレーニング転写172を生成するように構成され得る。いくつかの例では、第2のLM170は、トレーニングテキストサンプル131ごとに出力ラベルのサブセットを受け取り、テキストサンプルの出力レベルの残りのサブセットを予測するためにトレーニング転写172を生成するように構成される。他の例では、第2のLM170は、トレーニングテキストサンプル130ごとに出力ラベルの隠されたシーケンスを受け取り、これにより、出力ラベルの1つまたは複数は、マスキング値
【数4】

を割り当てられ、隠された値の出力ラベルを予測するためにトレーニング転写162を生成する。
【0038】
第2のトレーニング損失モジュール320は、トレーニングテキストサンプル131ごとに第2の言語モデル170によって生成されたトレーニング転写172を受け取り、トレーニング転写172(例えば、予測された転写)を対応するトレーニングテキストサンプル131(例えば、グラウンドトゥルースラベル)と比較することによって第2のトレーニング損失322を決定する。その後、第2のトレーニングプロセス300bは、フィードバックとして第2のトレーニング損失322を第2のLM170に提供し、第2のトレーニング損失322に基づいて第2のLM170のパラメータを更新する。したがって、第2のトレーニングプロセス300bは、トレーニングテキスト発話132のセット及び外来テキストサンプル136のセットを使用して、正確な転写を生成するように、第2のLM170を訓練する。とりわけ、第2のLM170は、カナリアテキストサンプル134のいずれかをも使用して訓練されていない。したがって、第2のLM170は、トレーニング中にカナリアテキストサンプル134のいずれも使用せず、おそらくカナリアテキストサンプル134のいずれも記憶することができなかったため、第2のLM170は、第1のLM160がトレーニング中にいずれかのカナリアテキストサンプル134を非意図的に記憶したかどうかを検出するためのベースラインLMを表し得る。したがって、第2のLM170は、カナリアテキストサンプルの記憶を検出するためにのみ使用され、推論には使用されない。
【0039】
図2A及び図2Bを参照し直すと、第1のLM160がカナリアテキストサンプル134のいずれかを記憶したかどうかを検出するために、プロセス201、202は、入力としてカナリアテキストサンプル134を受け取る必要がある。ただし、ASRモデル200は、テキスト入力ではなく、入力としてオーディオデータ(例えば、音響フレーム110)を受け取るように構成される。その目的で、TTSシステム140は、各出力ステップで、カナリアテキストサンプル134のセット内のそれぞれのカナリアテキストサンプル134ごとに、対応する合成音声発話142を生成するように構成される。各合成音声発話142は、ASRモデル200のカスケードエンコーダ204による処理に適した音響フレーム110のそれぞれのシーケンスに対応する。
【0040】
カスケードエンコーダ204は、符号化経路が、第1のエンコーダ210の出力が復号化の前に第2のエンコーダ220の入力を提供するようにカスケードする2つのエンコーダ210、220を含むモデル構造を指す。ここで、第1のエンコーダ210及び第2のエンコーダ220は、各エンコーダの基礎となるアーキテクチャに関係なくカスケードされ得る。エンコーダ210、220は、それぞれ、マルチヘッド(例えば、8ヘッド)のアテンション層(例えば、17層)のスタックを含み得る。いくつかの例では、エンコーダ210、220のマルチヘッドアテンション層のスタックは、512次元のコンフォーマ層のスタックを含む。他の例では、トランスフォーマ層は、コンフォーマ層の代わりに使用され得る。
【0041】
第1のエンコーダ210は、それぞれがセルフアテンション層として使用されるマルチヘッド(例えば、8ヘッド)の注意機構を有する、コンフォーマ層(例えば、15のコンフォーマ層)の初期スタックを含む因果エンコーダである場合がある。ここで、第1のエンコーダ210の各コンフォーマ層は、因果畳み込み層及び左コンテキストアテンション層を使用して、第1のエンコーダ210があらゆる将来の入力(例えば、ゼロに等しい右コンテキスト)を使用することを制限し得る。一方、第2のエンコーダ220は、コンフォーマ層の初期スタックに重なるコンフォーマ層(例えば、2つのコンフォーマ層)の最終スタックを含む非因果エンコーダである場合がある。ここで、第2のエンコーダ220の各コンフォーマ層は、非因果畳み込み層及び右コンテキストアテンション層を使用し、それにより第2のエンコーダ220が、将来の入力を使用(例えば、対処)することを可能にし得る。すなわち、第2のエンコーダ220は、追加の右コンテキスト(例えば、将来の音響フレームの2.88秒)を受け取り、処理して、エンコーダ出力を生成し得る。したがって、第1及び第2のエンコーダ210、220は、本明細書ではそれぞれ「因果エンコーダ210」及び「非因果エンコーダ220」と互換的に呼ばれてよい。
【0042】
図2A及び図2Bを引き続き参照すると、第1のエンコーダ210は、d次元の特徴ベクトルのシーケンス(例えば、音響フレーム110のシーケンス)x=(x,x,…,x)(式中、
【数5】

)を受け取り、各出力ステップで、音響フレーム110のシーケンス内の対応する音響フレーム110の第1の高次特徴表現212を生成する。同様に、第2のエンコーダ220は、第1のエンコーダ210にカスケードで接続され、入力として、第1の高次特徴表現212を受け取り、各出力ステップで、対応する第1の高次特徴表現212に対して第2の高次特徴表現222を生成する。とりわけ、第2のエンコーダ220は、追加の右コンテキストに対処して、各第2の高次特徴表現222を生成する。しかしながら、いくつかの例では、第2のエンコーダ220は、入力として音響フレーム110のいずれも受け取ることなく、第2の高次特徴表現222を生成する。これらの例では、第2のエンコーダ220は、入力として第1の高次特徴表現212のみを使用して、第2の高次特徴表現222を生成する。カスケードエンコーダ204は、各出力ステップで、カスケードエンコーダ204が、発話の一部または発話全体のいずれかに対応する第1及び第2の高次特徴表現212、222を生成するように、ストリーミング方式で動作し得る。
【0043】
デコーダ206は、共同ネットワーク230と、予測ネットワーク240とを有するリカレント型ニューラルネットワーク-トランスデューサ(RNN-T)アーキテクチャを含み得る。予測ネットワーク240は、V2埋め込みルックアップテーブルを含み得る。予測ネットワーク240は、入力として、最終ソフトマックス層によって出力されたN個の以前の非空白記号のシーケンスを受け取り、N個の以前の非空白記号のシーケンスの非空白記号ごとにそれぞれの埋め込みを生成するように構成される。すなわち、図示されていないが、ASRモデル200は、デコーダ206の出力を受け取るソフトマックス層を含み得る。いくつかの実施態様では、ソフトマックス層は、デコーダ206とは別個であり、デコーダ206からの出力yを処理する。次に、ソフトマックス層の出力は、正字要素を選択するためにビーム探索法プロセスで使用される。いくつかの例では、ソフトマックス層は、デコーダ206と統合され、その結果、デコーダ206の出力yはソフトマックス層の出力を表する。予測ネットワーク240は、非空白記号のそれぞれに対して生成されたそれぞれの埋め込みを平均化することにより、平均埋め込み242を生成するようにさらに構成される。
【0044】
非ストリーミングモードでは、デコーダ206は共同ネットワーク230を使用して、カスケードエンコーダ204によって出力された第1の高次特徴表現212及び第2の高次特徴表現222を結合するだけでなく、予測ネットワーク240によって生成された平均埋め込み242を使用して、初期転写(例えば、デコーダ出力)232を生成する。デコーダ出力232は、N個の以前の非空白記号のシーケンス{yi-1...,yi-N}、及び入力xを所与として、現在のサブワードユニットyにわたる確率分布
【数6】

である場合がある。非ストリーミングモードでは、デコーダ出力232は、格子再スコアリングまたはn-best再ランク付けなどの技術を用いて、デコーダ206からの初期デコーダ出力232を再スコアリング/改善する第1のLM160に出力される。言い換えれば、デコーダ206は初期転写232を生成し、第1のLM160は、初期転写232を再スコアリングして、転写(例えば、再スコアリングされた初期転写)120を生成する。
【0045】
デコーダ206は、各出力ステップで、可能性のある音声認識仮説にわたる確率分布を含む初期転写232を生成するように構成される。別の言い方をすれば、ジョイント層230は、各出力ステップ(例えば、時間ステップ)において、可能性のある音声認識仮説にわたる確率分布を生成する。したがって、初期転写232は、本明細書で可能性のある音声認識仮説にわたる確率分布232と互換的に呼ばれる場合がある。ここで、「可能性のある音声認識仮説」は、それぞれが、指定された自然言語での書記素(例えば、記号/文字)またはワードピースを表す出力ラベル/記号(「音声単位」とも呼ばれる)のセットに対応する。例えば、自然言語が英語であるとき、出力ラベルのセットは二十七(27)個の記号、例えば、英語のアルファベットの26文字の各々に1つのラベル及びスペースを指定する1つのラベルを含み得る。したがって、共同ネットワーク230は、所定の出力ラベルのセットの各々の発生可能性を示す値のセットを出力し得る。この値のセットはベクトル(例えば、ワンホットベクトル)である場合があり、出力ラベルのセットにわたる確率分布を示す場合がある。いくつかの場合、出力ラベルは書記素(例えば、個々の文字、潜在的な句読点及び他の記号など)であるが、出力ラベルのセットはそれらに制限されない。例えば、出力ラベルのセットは、書記素に加えて、または書記素の代わりに、ワードピース及び/またはワード全体を含むことができる。出力ラベルはまた、音素または副音素など、他のタイプの音声単位でもあるであろう。共同ネットワークの出力分布は、異なる出力ラベルの各々に対する事後確率値を含むことができる。したがって、書記素または他の記号を表す100の異なる出力ラベルがある場合、共同ネットワークの出力は、出力ラベルごとに1つずつ、100の異なる確率値を含むことができる。次に、確率分布を使用して、初期転写232を決定するために、(例えば、ソフトマックス層による)ビーム探索法プロセスで候補となる正字要素(例えば、書記素、ワードピース、及び/またはワード)を選択し、スコアを割り当てることができる。
【0046】
図2A及び図2Bを引き続き参照すると、いくつかの構成では、ASRモデル200は、ストリーミングモードと非ストリーミングモードの両方で並行して動作する。ストリーミングモードと非ストリーミングモードの両方で同時に動作するとき、ASRモデル200は、最初に、第1のエンコーダ210を使用してオーディオデータ110に対してストリーミング音声認識を実行して、第2のエンコーダ220とデコーダ206の両方のために第1の高次特徴表現210を生成する。デコーダ206は次に、可能性のある音声認識仮説にわたる第1の確率分布232を生成し、第1の確率分布232は次に、第1のLM160によって再スコアリングされて、初期の音声認識結果120aを生成する。任意選択で、ストリーミングモードで、デコーダ206は、可能性のある音声認識仮説にわたる第1の確率分布232を直接出力し、それにより第1LM160を迂回し得る。ASRモデル200はまた、オーディオデータ110に対して非ストリーミング音声認識を実行し、ここで、第2のエンコーダ220は、第1のエンコーダ210から受け取った第1の高次特徴表現212を使用して、第2の高次特徴表現222を生成する。デコーダ206は次に、可能性のある音声認識仮説にわたる第2の確率分布232を生成し、第2の確率分布232は次に、第1のLM160によって再スコアリングされて、最終的な音声認識結果120bを生成する。
【0047】
他の構成では、ASRモデル200はストリーミングモードのみで動作する。これは、例えば、ユーザ104が、音声検索またはオンデバイスディクテーションなど、可能な限り小さいレイテンシを必要とするアプリケーションを使用しているときに発生する場合がある。ここで、ASRモデル200は、第1のエンコーダ210のみを使用してオーディオデータ110に対してストリーミング音声認識を実行して、デコーダ206のために第1の高次特徴表現212を生成する。デコーダ206は次に、可能性のある音声認識仮説にわたる第1の確率分布232を生成し、第1の確率分布232は次に、第1のLM160によって再スコアリングされて、初期の音声認識結果120aを生成する。ASRモデル200のストリーミングモードは、初期の音声認識結果120aを迅速に生成するため、用語のいかなる不正確さも概してユーザには許容可能である。
【0048】
さらに他の構成では、ASRモデル200は非ストリーミングモードのみで動作する。非ストリーミングモードは、例えば、ユーザ104が自分の電話に残されたボイスメールの転写を見ているときに発生する場合がある。上述のように、このタイプのアプリケーションは、処理回数の増加と引き換えに性能を向上させるために、将来のコンテキストを使用することから恩恵を受ける。ここで、ASRモデル200は、最初に、第1のエンコーダ210を使用して、第2のエンコーダ220のための第1の高次特徴表現212を生成するが、デコーダ206は、第1の高次特徴表現212を復号化しない。ASRモデル200は次に、符号化されたオーディオデータ110に対して非ストリーミング音声認識を実行し、ここで、第2のエンコーダ220は、第1のエンコーダ210から受け取った第1の高次特徴表現212を使用して、第2の高次特徴表現222を生成する。デコーダ206は次に、可能性のある音声認識仮説にわたる第2の確率分布232を生成し、第2の確率分布232は次に、第1のLM160によって再スコアリングされて、最終的な音声認識結果120bを生成する。ASRモデル200の非ストリーミングモードは、最終的な音声認識結果120bを正確に生成するため、正確な転写を表示するためのレイテンシは概してユーザには許容可能である。
【0049】
いくつかの例では、第1のLM160は、外部ニューラル言語モデルを含む。ここで、外部ニューラル言語モデルは、マルチヘッド(例えば、8ヘッド)のセルフアテンション層(例えば、12層)のスタックを含むことができ、ここで、各層は、768のモデル次元及び2048のフィードフォワード層の次元を含む。マルチヘッドセルフアテンション層のスタックは、トランスフォーマ層またはコンフォーマ層のスタックを含む場合がある。例えば、コンフォーマ層のスタックは、出力ワードピースモデル予測ごとに所定数のトークン(例えば、31のトークン)を遡る一方向コンフォーマ層を含み得る。ここで、第1のLM160は、4,096のワードピースを予測するように訓練される。いくつかの場合、第2のLM170 (図2A)は、第1のLM160と同じ構造を含む。
【0050】
ASRモデル200を外部LMと統合するには、通常、浅い融合が必要である。しかしながら、カスケードエンコーダ204及びデコーダ206の過信によって、重み付けは困難になり、多くの場合、ワードの高い削除率につながる可能性がある。ここで、訓練されたASRモデル200によって予測された、可能性のある音声認識仮説にわたる確率分布232を再スコアリングするように構成された訓練された第1のLM160は、浅い融合を使用して訓練されたASRモデル200と統合され得る。したがって、ASRモデル200の第1のエンコーダ210及び第2のエンコーダ220は、ハイブリッド自己回帰トランスデューサ(HAT)因数分解を使用して、トレーニングテキストサンプル130の第1のコーパスと、トレーニングセットサンプル130の第1のコーパス(図3A)に挿入されたカナリアテキストサンプル134のセットとを含む、テキストのみのデータで訓練された第1のLM160の統合を容易にするように訓練され得る。別の言い方をすれば、HAT因数分解は、ASRモデル200のトレーニング中に、カスケードエンコーダ204及びデコーダ206の内部損失スコアを取り除いて、以下に従ってデコーダ206を最適化することによって第1のLM160との統合を容易にするために利用され得る。
【数7】

式1では、p(y|x)はASRモデル200の対数事後スコアを表し、pILM(y)はASRモデル200の内部言語モデルスコアを表し、pLMは第1のLM160の言語モデルスコアを表し、(λ,λ)は補間重みを表す。
【0051】
ここで特に図2Aを参照すると、いくつかの実施態様では、第1のプロセス201は、第1のLM160が、カナリアテキストサンプル134ベースのセットごとにトレーニング(図3A)中にいずれかのカナリアテキストサンプル134を記憶したかどうかを検出するために検出損失モジュール150及び第2のLM170を実行する。すなわち、第1のトレーニングプロセス201は、どの特定のカナリアテキストサンプル134が記憶されたのかを特に識別することなく、第1のLM160が1つまたは複数のカナリアテキストサンプル134を記憶したかどうかを判断する。ここで、第1のプロセス201は、トレーニングが行われた後に、第1及び第2のLM160、170を実行する。とりわけ、第2のLM170は、第1のLM160による意図的でない記憶を検出するためのベースラインLMとしてのみ使用され、これにより、第2のLM170は、ASRシステム118による推論中に使用されない(図1)。簡単に言えば、第2のLM170はベースラインLMを表しており、これは、第2のLM170が、実際にはカナリアテキストサンプル134のいずれか1つも含まずに、カナリアテキストに類似するトレーニングサンプルを含むトレーニングテキストサンプル131(図3B)の第2のコーパスで訓練されたためである。
【0052】
それぞれのカナリアテキストサンプル134ごとに、第1のLM160は、対応する合成音声発話142のためにデコーダ206によって生成された初期転写232を再スコアリングして、転写120を生成する。同様に、それぞれのカナリアテキストサンプル134ごとに、第2のLM170は、対応する合成音声発話142のためにデコーダ206によって生成された初期転写を再スコアリングして、検出転写174を生成する。したがって、それぞれのカナリアテキストサンプル134ごとに、第1のプロセス201は、ともに同じそれぞれのカナリアテキストサンプル134と関連付けられた、対応する転写120及び対応する検出転写174を生成する。
【0053】
いくつかの例では、検出損失モジュール150は、それぞれのカナリアテキストサンプル134ごとに、第1のLMによって生成された転写120、及び第2のLM170によって生成された検出転写174を受け取って、それぞれのLM160、170ごとのWERを決定するように構成される。すなわち、検出損失モジュール150は、転写120を対応するカナリアテキストサンプル134(例えば、グラウンドトゥルースラベル)と比較することに基づいて、第1のLM160の第1のWER152を決定する。同様に、検出損失モジュール150は、検出転写174を対応するカナリアテキストサンプル134(例えば、グラウンドトゥルースラベル)と比較することに基づいて、第2のLM170の第2のWER154を決定する。したがって、第1及び第2のWER152、154は、カナリアテキストサンプル134のセット全体に対する集約WERを表す。第1及び第2のWER152、154は、対応するカナリアテキストサンプル134と、転写120または検出転写174それぞれとの間のコサイン類似度を含み得る。
【0054】
したがって、検出損失モジュール150は、第1のLM160の第1のWER152と第2のLM170の第2のWER154を比較することにより、第1のLM160がカナリアテキストサンプル134を記憶したことを検出し得る。特に、検出損失モジュール150は、第1のWER152と第2のWER154とのWERの差を決定し、WERの差が差閾値を満たすかどうかを判断し得る。差が差閾値を満たすと判断することに応答して、検出損失モジュール150は、どの特定のカナリアテキストサンプル134が記憶されたのかを特に識別することなく、第1のLM160がカナリアテキストサンプル134のセットごとに1つまたは複数のカナリアテキストサンプル134が記憶されたことを検出する。簡単に言えば、第1のLM160が、カナリアテキストサンプル134のセット全体で平均して、第2のLM170によって生成された検出転写174よりもはるかに正確なカナリアテキストサンプルのセットの転写120を生成する場合、検出損失モジュール150は、カナリアテキストサンプル134の1つまたは複数が、トレーニング中に第1のLM160によって記憶されたと判断する(図3A)。有利なことに、第1のプロセス201は、第1及び第2のLM160、170のWERを単に比較するだけで、一般的に第1のLM160に直接アクセスしないユーザには利用できない、第1のLM160によって生成されたN-bestリストまたは信頼度値にアクセスする必要がない。いくつかの例では、検出損失モジュール150は、第2のWER154を決して考慮することすらなく、第1のWER152がWER閾値を満たすかどうかを判断することにより、第1のLM160がカナリアテキストサンプル134を記憶したことを検出する。ここで、第1のLM160の第1のWER152が低いほど、第1のLM160によるカナリアテキストサンプル134の記憶の増加に対応する。
【0055】
ここで特に図2Bを参照すると、いくつかの実施態様では、第2のプロセス202は、第1のLM160がサンプルごとに、トレーニング中に(図3A)カナリアテキストサンプル134を記憶したかどうかを検出するために分類器180を実行する。とりわけ、第1のプロセス201(図2A)とは対照的に、第2のプロセス202は、第1のLM160によって記憶される特定のカナリアテキストサンプル134を識別する。さらに、第2のプロセス202は、いかなる他のLMも活用せずに、第1のLM160による記憶を検出する。
【0056】
いくつかのシナリオでは、TTSシステム140によって生成された合成音声発話142は明瞭すぎるため、デコーダ206は、第1のLM160を活用せずに音声を正確に転写する。他のシナリオでは、TTSシステム140によって生成された合成音声発話142は不明瞭すぎるため、デコーダ206は、音声のいかなる転写も生成せず、したがって第1のLM160は、転写を再スコアリングすることができない。その目的のために、TTSシステム140は、カナリアテキストサンプル134ごとに生成された合成音声発話142を拡張する。特に、TTSシステムは、対応する合成音声発話142の接頭辞部分146にいかなるノイズも追加せずに、対応する合成音声発話142の接尾辞部分144にノイズを追加することにより、拡張された合成音声発話142、142Aを生成する。TTSシステム140は、接尾辞部分144のみを拡張することにより、第2のプロセス202が、拡張された合成音声発話142Aを不明瞭にしすぎずに第1のLM160を活用して初期転写232を再スコアリングすることを確実にし、その結果、デコーダ206は、拡張された合成音声発話142Aのいかなる転写も生成しない。
【0057】
それぞれのカナリアテキストサンプル134ごとに、第1のLM160は、対応する拡張された合成音声発話142Aのためにデコーダ206によって生成された初期転写232を再スコアリングして、転写120を生成する。分類器180は、それぞれのカナリアテキストサンプル134ごとに、対応する拡張された合成音声発話142A及び対応するカナリアテキストサンプル134のために第1のLM160によって生成された転写120を受け取るように構成される。ここで、分類器180は、対応するカナリアテキストサンプル134と一致する対応する拡張された合成音声発話142Aのために生成された転写120に基づいて、対応するカナリアテキストサンプル134が第1のLM160を訓練するために使用されたと判断する。別の言い方をすると、分類器180は、第1のLM160を訓練するために使用されたカナリアテキストサンプル134が、トレーニング中に第1のLM160によって非意図的に記憶されたかどうかを判断する。ここで、分類器180は、それぞれのカナリアテキストサンプル134ごとに、第1のLM160によって生成された転写120が、転写120とそれぞれのカナリアテキストサンプル134との閾値差を満たすと判断することにより、第1のLM160がそれぞれのカナリアテキストサンプル134を記憶したかどうかを判断し得る。いくつかの構成では、転写120は、第1のLM160によって記憶されているとして分類されるそれぞれのカナリアテキストサンプル134と正確に一致しなければならない。したがって、分類器180は、それぞれのカナリアテキストサンプル134ごとに、それぞれのカナリアテキストサンプル134が、第1のLM160によって記憶されたのか、それとも記憶されなかったのかを示す対応するインジケータ182を出力する。
【0058】
しかしながら、プロセス201、202は、記憶を低減させることなく、第1のLM160がいずれかのカナリアテキストサンプル134を記憶したかどうかを単に検出するだけである。その目的のために、図3Aを参照し直すと、第1の例示的なトレーニングプロセス300aは、第1のLM160を訓練しながら、サンプルごとの勾配クリッピングを適用することにより、第1のLM160によるカナリアテキストサンプル134の検出された記憶を軽減することをさらに含み得る。いくつかの例では、第1の例示的なトレーニングプロセス300aは、各トレーニングテキストサンプル130の勾配を固定最大クリッピング基準までクリッピングし、次にランダムノイズを平均クリッピング勾配に追加する。これらの例では、勾配クリッピングは、推論中に一般化が低減されることを大幅に犠牲にして、第1のLM160の強固なプライバシーを保証する。したがって、第1の例示的なトレーニングプロセス300aは、カナリアテキストサンプル134それぞれにサンプルごとの勾配クリッピングを適用して、所定数のカナリアテキストサンプル134から勾配をクリッピングし、それによりカナリアテキストサンプルのクリッピングされた勾配の感度を制限する。有利なことに、このようにしてサンプルごとの勾配クリッピングを適用することにより、推論中に第1のLM160の一般化を犠牲にすることなく、第1のLM160による記憶が少なくなることが保証される。任意選択で、サンプルごとの勾配クリッピングは、トレーニングテキストサンプル130ごとに適用され得る。
【0059】
図4は、言語モデルが非意図的にカナリアテキストサンプルを記憶したことを検出するためのコンピュータ実装方法400の動作の例示的な配置のフローチャートである。データ処理ハードウェア510(図5)は、データ処理ハードウェア510に方法400の動作を実行させる、メモリハードウェア520(図5)に格納された命令を実行し得る。データ処理ハードウェア510は、ユーザデバイス10のデータ処理ハードウェア12、またはサーバ60に存在するデータ処理ハードウェアを含み得る。メモリハードウェア520は、ユーザデバイス10のメモリハードウェア14またはサーバ60に存在するメモリハードウェアを含み得る。動作402で、方法400は、カナリアテキストサンプル134のセットをトレーニングテキストサンプル130の第1のコーパスに挿入することを含む。動作404で、方法400は、トレーニングテキストサンプル130の第1のコーパス、及びトレーニングテキストサンプル130の第1のコーパスに挿入されたカナリアテキストサンプル134のセットで第1のLM160を訓練することを含む。カナリアテキストサンプル134のセット内のそれぞれのカナリアテキストサンプル134ごとに、方法400は動作406と408を実行する。動作406で、方法400は、TTSシステム140を使用して、それぞれのカナリアテキストサンプル134のために対応する合成音声発話142を生成することを含む。動作408で、方法400は、入力として、対応する合成音声発話142を受け取るように構成された訓練されたASRモデル200を使用して、対応する合成音声発話142のための初期転写232を生成することを含む。
【0060】
動作410で、方法400は、第1のLM160を使用して、対応する合成音声発話ごとに生成された初期転写232を再スコアリングすることを含む。ここで、第1のLM160によって出力される再スコアリングされた初期転写は、転写120に対応し得る。例えば、訓練されたASRモデル200がストリーミングモードで動作するとき、第1のLM160は、初期音声認識結果120、120aに対応する再スコアリングされた初期転写を出力する。一方、訓練されたASRモデル200が非ストリーミングモードで動作するとき、第1のLM160は、最終的な音声認識結果120、120bに対応する、再スコアリングされた初期転写を出力する。動作412で、方法400は、再スコアリングされた初期転写(例えば、転写)120及びカナリアテキストサンプル(例えば、グラウンドトゥルースラベル)134に基づいて、第1のLM160の第1のWER152を決定することを含む。動作414で、方法400は、第1のLM160の第1のWER152に基づいて、第1のLM160によるカナリアテキストサンプル134の記憶を検出することを含む。いくつかの例では、方法400は、第1のLM160の第1のWER152を第2のLM170の第2のWER154と比較することにより、カナリアテキストサンプル134の記憶を検出する。他の例では、方法400は、分類器180を使用することにより、カナリアテキストサンプルの記憶を検出する。
【0061】
図5は、本文書に記載のシステム及び方法を実装するために使用され得る例示的なコンピューティングデバイス(例えば、システム)500の概略図である。コンピューティングデバイス500は、ラップトップ、デスクトップ、ワークステーション、パーソナルデジタルアシスタント、サーバ、ブレードサーバ、メインフレーム、及び他の適切なコンピュータなど、様々な形式のデジタルコンピュータを表すことを意図している。ここで示されているコンポーネント、それらの接続と関係、及びそれらの機能は、例示のみを目的としており、この文書で説明及び/または特許請求されている本発明の実施態様を制限することを意図してはいない。
【0062】
コンピューティングデバイス500には、プロセッサ510、メモリ520、ストレージデバイス530、メモリ520及び高速拡張ポート550に接続する高速インターフェース/コントローラ540、ならびに低速バス570及びストレージデバイス530に接続する低速インターフェース/コントローラ560が含まれる。各コンポーネント510、520、530、540、550、及び560は、様々なバスを使用して相互接続されており、共通のマザーボードに据え付けられるか、または必要に応じて他の方法で存在することもできる。プロセッサ(例えば、データ処理ハードウェア)510は、メモリ520またはストレージデバイス530に格納された命令を含む、コンピューティングデバイス500内で実行するための命令を処理して、高速インターフェース540に接続されたディスプレイ580などの外部入出力デバイスにグラフィカルユーザインターフェース(GUI)のグラフィカル情報を表示することができる。他の実施態様では、複数のメモリ及びメモリの種類とともに、必要に応じて複数のプロセッサ及び/または複数のバスが使用される場合がある。また、複数のコンピューティングデバイス500が接続され、各デバイスが(例えば、サーババンク、ブレードサーバのグループ、またはマルチプロセッサシステムとして)必要な動作の部分を提供する場合がある。
【0063】
メモリ(例えば、メモリハードウェア)520は、コンピューティングデバイス500内に非一時的に情報を格納する。メモリ520は、コンピュータ可読媒体、揮発性メモリユニット(複数可)、または不揮発性メモリユニット(複数可)であってよい。非一時的メモリ520は、コンピューティングデバイス500による使用のために一時的または永続的にプログラム(例えば、命令のシーケンス)またはデータ(例えば、プログラム状態情報)を格納するために使用される物理デバイスであってよい。不揮発性メモリの例は、フラッシュメモリ及び読み出し専用メモリ(ROM)/プログラマブル読み出し専用メモリ(PROM)/消去可能なプログラマブル読み出し専用メモリ(EPROM)/電子的に消去可能なプログラマブル読み出し専用メモリ(EEPROM)(例えば、通常はブートプログラムなどのファームウェアに使用される)を含むが、これらに限定されない。揮発性メモリの例は、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM)、相変化メモリ(PCM)、及びディスクまたはテープを含むが、これらに限定されない。
【0064】
ストレージデバイス530は、コンピューティングデバイス500に大容量ストレージを提供することができる。いくつかの実施態様では、ストレージデバイス530はコンピュータ可読媒体である。様々な異なる実施態様では、ストレージデバイス530は、フロッピーディスク(登録商標)デバイス、ハードディスクデバイス、光ディスクデバイス、もしくはテープデバイス、フラッシュメモリもしくはその他の同様のソリッドステートメモリデバイス、またはストレージエリアネットワークもしくは他の構成のデバイスを含む、デバイスアレイであってよい。追加の実施態様では、コンピュータプログラム製品は、情報キャリアに有形に具現化される。コンピュータプログラム製品は、実行時に上述したような1つまたは複数の方法を実行する命令を含む。情報キャリアは、メモリ520、ストレージデバイス530、またはプロセッサ510上のメモリなどのコンピュータ可読媒体または機械可読媒体である。
【0065】
高速コントローラ540は、コンピューティングデバイス500の帯域幅集約動作を管理し、低速コントローラ560は、低帯域幅集約動作を管理する。そのような役割の割り振りは単なる例である。いくつかの実施態様では、高速コントローラ540は、メモリ520、ディスプレイ580(例えば、グラフィックプロセッサまたはアクセラレータを介して)、及び様々な拡張カード(図示せず)を受け入れることができる高速拡張ポート550に結合される。いくつかの実施態様では、低速コントローラ560は、ストレージデバイス530及び低速拡張ポート590に結合される。様々な通信ポート(例えば、USB、Bluetooth(登録商標)、イーサネット(登録商標)、ワイヤレスイーサネット)を含み得る低速拡張ポート590は、例えば、ネットワークアダプタを介して、キーボード、ポインティングデバイス、スキャナ、またはスイッチもしくはルータなどのネットワークデバイスなどの1つまたは複数の入出力デバイスに結合され得る。
【0066】
コンピューティングデバイス500は、図に示すように、多くの様々な形式で実装できる。例えば、それは、標準サーバ500aとして、またはそれらのようなサーバ500aのグループ内で複数回、ラップトップコンピュータ500bとして、またはラックサーバシステム500cの一部として実装されてよい。
【0067】
本明細書で説明するシステム及び技術の様々な実施態様は、デジタル電子及び/または光回路、集積回路、特別に設計されたASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、及び/またはそれらの組み合わせで実現できる。これらの様々な実施態様は、特殊または汎用であり得、ストレージシステムからデータ及び命令を受信し、ストレージシステムにデータ及び命令を送信するように結合された、少なくとも1つのプログラマブルプロセッサ、少なくとも1つの入力デバイス、及び少なくとも1つの出力デバイスを含むプログラム可能なシステムで実行可能及び/または解釈可能な1つまたは複数のコンピュータプログラムにおける実施態様を含むことができる。
【0068】
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、またはコードとしても知られる)は、プログラマブルプロセッサのための機械命令を含み、かつ高水準手続型及び/またはオブジェクト指向プログラミング言語、及び/またはアセンブリ/機械言語で実装することができる。本明細書で使用する場合、「機械可読媒体」及び「コンピュータ可読媒体」という用語は、機械可読信号として機械命令を受け取る機械可読媒体を含むプログラマブルプロセッサに機械命令及び/またはデータを提供するために用いられる、あらゆるコンピュータプログラム製品、非一時的コンピュータ可読媒体、装置及び/またはデバイス(例えば、磁気ディスク、光ディスク、メモリ、プログラマブルロジックデバイス(PLD))を指す。「機械可読信号」という用語は、機械命令及び/またはデータをプログラマブルプロセッサに提供するために用いられるあらゆる信号を指す。
【0069】
本明細書に説明するプロセス及び論理フローは、データ処理ハードウェアとも呼ばれる1つまたは複数のプログラマブルプロセッサが1つまたは複数のコンピュータプログラムを実行して、入力データに作用し、出力を生成することにより機能を実行することによって実行できる。プロセス及び論理フローはまた、特殊用途論理回路、例えば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)によって実行され得る。コンピュータプログラムの実行に適切なプロセッサは、例えば、汎用及び特殊目的のマイクロプロセッサの両方、ならびにいずれかの種類のデジタルコンピュータのいずれか1つまたは複数のプロセッサを含む。概して、プロセッサは、読み出し専用メモリ、ランダムアクセスメモリ、またはその両方から命令及びデータを受け取る。コンピュータの基本的な要素は、命令を実行するためのプロセッサ、ならびに命令及びデータを格納するための1つまたは複数のメモリデバイスである。概して、コンピュータはまた、データを格納するための1つまたは複数の大容量記憶デバイス、例えば、磁気ディスク、光磁気ディスク、または光ディスクを含む、またはそれらからデータを受け取るもしくはそれらにデータを送信する、あるいはその両方を行うよう動作可能に接続される。しかし、コンピュータがそのようなデバイスを有している必要はない。コンピュータプログラム命令及びデータを格納するのに適したコンピュータ可読媒体は、あらゆる形式の不揮発性メモリ、メディア、及びメモリデバイスを含み、例えば、EPROM、EEPROM、及びフラッシュメモリデバイスなどの半導体メモリデバイス、内蔵ハードディスクまたはリムーバブルディスクなどの磁気ディスク、光磁気ディスク、ならびにCD ROM及びDVD-ROMディスクを含む。プロセッサ及びメモリは、専用論理回路によって補完されるか、または専用論理回路に組み込まれ得る。
【0070】
ユーザとのインタラクションを提供するために、本開示の1つまたは複数の態様は、ユーザに情報を表示するためのディスプレイ装置(例えばCRT(ブラウン管)、LCD(液晶画面)モニタ)、またはタッチスクリーン、及び任意選択で、ユーザがそれによってコンピュータに入力を提供することができるキーボード及びポインティングデバイス、例えば、マウスまたはトラックボールを有するコンピュータに実装することができる。他の種類のデバイスもまた、ユーザとのインタラクションを提供するために使用でき、例えば、ユーザに提供されるフィードバックは、任意の形式の感覚的フィードバック、例えば視覚フィードバック、聴覚フィードバック、または触覚フィードバックであることができ、ユーザからの入力は、音響、音声言語、または触覚入力を含む、任意の形式で受け取られ得る。さらに、コンピュータは、例えば、ウェブブラウザから受け取った要求に応答して、ユーザが使用するデバイスに文書を送り、ユーザが使用するデバイスから文書を受け取ることで、ユーザとインタラクトできる。
【0071】
いくつかの実施態が説明されてきた。それにも関わらず、本開示の趣旨及び範囲から逸脱することなく、様々な修正を行い得ることが理解される。したがって、他の実施態様は、以下の特許請求の範囲内である。
【要約】
方法(400)は、カナリアテキストサンプル(134)のセットをトレーニングテキストサンプル(130)のコーパスに挿入することと、トレーニングテキストサンプルのコーパス、及びトレーニングテキストサンプルのコーパスに挿入されたカナリアテキストサンプルのセットで外部言語モデル(160)を訓練することとを含む。カナリアテキストサンプルごとに、方法はまた、対応する合成音声発話(142)を生成することと、対応する合成音声発話の初期転写(232)を生成することとを含む。本方法はまた、外部言語モデルを使用して、対応する合成音声発話ごとに生成された初期転写を再スコアリングすることを含む。方法はまた、再スコアリングされた初期転写とカナリアテキストサンプルとに基づいて外部言語モデルのワード誤り率(WER)(152)を決定することと、外部言語モデルのWERに基づいて、外部言語モデルによるカナリアテキストサンプルの記憶を検出することとを含む。
【選択図】図1
図1
図2A
図2B
図3
図4
図5