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

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

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

特表2024-527533一貫性損失および対照的損失によるASR事前トレーニングにおけるテキストおよび音声の使用の促進
<>
  • 特表-一貫性損失および対照的損失によるASR事前トレーニングにおけるテキストおよび音声の使用の促進 図1
  • 特表-一貫性損失および対照的損失によるASR事前トレーニングにおけるテキストおよび音声の使用の促進 図2
  • 特表-一貫性損失および対照的損失によるASR事前トレーニングにおけるテキストおよび音声の使用の促進 図3A
  • 特表-一貫性損失および対照的損失によるASR事前トレーニングにおけるテキストおよび音声の使用の促進 図3B
  • 特表-一貫性損失および対照的損失によるASR事前トレーニングにおけるテキストおよび音声の使用の促進 図3C
  • 特表-一貫性損失および対照的損失によるASR事前トレーニングにおけるテキストおよび音声の使用の促進 図4
  • 特表-一貫性損失および対照的損失によるASR事前トレーニングにおけるテキストおよび音声の使用の促進 図5
  • 特表-一貫性損失および対照的損失によるASR事前トレーニングにおけるテキストおよび音声の使用の促進 図6
  • 特表-一貫性損失および対照的損失によるASR事前トレーニングにおけるテキストおよび音声の使用の促進 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-07-25
(54)【発明の名称】一貫性損失および対照的損失によるASR事前トレーニングにおけるテキストおよび音声の使用の促進
(51)【国際特許分類】
   G10L 15/06 20130101AFI20240718BHJP
   G10L 15/16 20060101ALI20240718BHJP
【FI】
G10L15/06 300Z
G10L15/16
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023579585
(86)(22)【出願日】2022-04-15
(85)【翻訳文提出日】2024-02-21
(86)【国際出願番号】 US2022025139
(87)【国際公開番号】W WO2023277993
(87)【国際公開日】2023-01-05
(31)【優先権主張番号】63/267,142
(32)【優先日】2022-01-25
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】63/202,950
(32)【優先日】2021-06-30
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.BLUETOOTH
2.イーサネット
(71)【出願人】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
【氏名又は名称原語表記】Google LLC
【住所又は居所原語表記】1600 Amphitheatre Parkway 94043 Mountain View, CA U.S.A.
(74)【代理人】
【識別番号】100108453
【弁理士】
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【弁理士】
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】アンドリュー・ローゼンバーグ
(72)【発明者】
【氏名】ジェフアイ・チェン
(72)【発明者】
【氏名】ブヴァナ・ラマバドラン
(72)【発明者】
【氏名】ペドロ・ジェイ・モレノ・メンヒバル
(72)【発明者】
【氏名】ゲイリー・ワン
(72)【発明者】
【氏名】ユ・ジャン
(57)【要約】
方法(600)は、非発話テキスト発声(320)、転写されていない非合成音声発声(306)、および転写された非合成音声発声(304)を含むトレーニングデータを受信することを含む。各非発話テキスト発声は、非合成音声のいかなる対応する発話された発声ともペアにされない。各転写されていない非合成音声発声は、対応する転写とペアにされない。各転写された非合成音声発声は、対応する転写(302)とペアにされる。方法はまた、テキスト音声モデル(330)を使用して、受信されたトレーニングデータの各非発話テキスト発声の対応する合成音声表現(332)を生成することも含む。方法はまた、共有された音声およびテキスト表現を共同で学習するようオーディオエンコーダに教えるために、非発話テキスト発声、転写されていない非合成音声発声、および転写された非合成音声発声のために生成された合成音声表現を基にして、オーディオエンコーダ(210)を事前トレーニングすることも含む。
【特許請求の範囲】
【請求項1】
データ処理ハードウェア(710)上で実行されると、前記データ処理ハードウェア(710)に、動作を実施させるコンピュータ実装方法(600)であって、前記動作が、
非発話テキスト発声(320)であり、各非発話テキスト発声(320)は非合成音声のいかなる対応する発話された発声ともペアにされない、非発話テキスト発声(320)と、
転写されていない非合成音声発声(306)であり、各転写されていない非合成音声発声(306)は対応する転写とペアにされない、転写されていない非合成音声発声(306)と、
転写された非合成音声発声(304)であり、各転写された非合成音声発声(304)は対応する転写(302)とペアにされる、転写された非合成音声発声(304)と
を含むトレーニングデータ(304、306、320)を受信することと、
テキスト音声モデル(330)を使用して、前記受信されたトレーニングデータ(304、306、320)の非発話テキスト発声(320)ごとに対応する合成音声表現(332)を生成することと、
共有された音声およびテキスト表現を共同で学習するようオーディオエンコーダ(210)に教えるために、前記非発話テキスト発声(320)、前記転写されていない非合成音声発声(306)、および前記転写された非合成音声発声(304)のために生成された前記合成音声表現(332)を基にして、前記オーディオエンコーダ(210)を事前トレーニングすることと
を含む、コンピュータ実装方法(600)。
【請求項2】
前記オーディオエンコーダ(210)が、マルチヘッド自己アテンション機構を各々含む自己アテンション層のスタックを含む、請求項1に記載のコンピュータ実装方法(600)。
【請求項3】
前記オーディオエンコーダ(210)を事前トレーニングすることが、
転写されていない非合成音声発声(306)ごとに、
前記転写されていない非合成音声発声(306)の対応する符号化表現(215)を生成することと、
前記転写されていない非合成音声発声(306)の前記対応する符号化表現(215)に適用される対照的損失(316)を基にして、前記オーディオエンコーダ(210)を事前トレーニングすることと、
合成音声表現(332)ごとに、
前記合成音声表現(332)の対応する符号化表現(215)を生成することと、
前記合成音声表現(332)の前記対応する符号化表現(215)に適用される対照的損失(316)を基にして、前記オーディオエンコーダ(210)を事前トレーニングすることと、
転写された非合成音声発声(304)ごとに、
前記転写された非合成音声発声(304)の対応する符号化表現(215)を生成することと、
前記転写された非合成音声発声(304)の前記対応する符号化表現(215)に適用される対照的損失(316)を基にして、前記オーディオエンコーダ(210)を事前トレーニングすることと
を含む、請求項1または2に記載のコンピュータ実装方法(600)。
【請求項4】
前記オーディオエンコーダ(210)を事前トレーニングすることが、
各合成音声表現(332)の複数の時間ステップの各々において、
補助デコーダ(390)を使用して、前記対応する合成音声表現(332)のための可能な合成音声認識仮説にわたる第1の確率分布(392)を生成することと、
可能な合成音声認識仮説にわたる前記第1の確率分布(392)と、前記対応する合成音声表現(332)に対応する前記非発話テキスト発声(320)とに基づいて、合成音声損失項(342)を決定することと、
前記合成音声損失項(342)に基づいて前記オーディオエンコーダ(210)を事前トレーニングすることと、
各転写された非合成音声発声(304)の複数の時間ステップの各々において、
前記補助デコーダ(390)を使用して、前記対応する転写された非合成音声発声(304)のための可能な非合成音声認識仮説にわたる第2の確率分布(394)を生成することと、
可能な非合成音声認識仮説にわたる前記第2の確率分布(394)と、前記転写された非合成音声発声(304)とペアにされる前記対応する転写(302)とに基づいて、非合成音声損失項(344)を決定することと、
前記非合成音声損失項(344)に基づいて前記オーディオエンコーダ(210)を事前トレーニングすることと
を含む、請求項1~3のいずれか一項に記載のコンピュータ実装方法(600)。
【請求項5】
可能な合成音声認識仮説にわたる前記第1の確率分布(392)が、可能な音素ラベルまたは可能なワードピースラベルのうちの一方を含み、
可能な非合成音声認識仮説にわたる前記第2の確率分布(394)が、前記可能な音素ラベルまたは前記可能なワードピースラベルのうちの一方を含む、
請求項4に記載のコンピュータ実装方法(600)。
【請求項6】
前記オーディオエンコーダ(210)を事前トレーニングすることが、
各合成音声表現(332)の前記複数の時間ステップの各々において、
別の補助デコーダ(390)を使用して、前記対応する合成音声表現(332)のための可能な合成音声認識仮説にわたる第3の確率分布(393)を生成することであり、可能な合成音声認識仮説にわたる前記第3の確率分布(393)が、前記可能な音素ラベルまたは前記可能なワードピースラベルのうちの他方を含む、生成することと、
可能な合成音声認識仮説にわたる前記第3の確率分布(393)と、前記対応する合成音声表現(332)に対応する前記非発話テキスト発声(320)とに基づいて、別の合成音声損失項(342)を決定することと、
前記他の合成音声損失項(342)に基づいて前記オーディオエンコーダ(210)を事前トレーニングすることと、
各転写された非合成音声発声(304)の前記複数の時間ステップの各々において、
前記他の補助デコーダ(390)を使用して、前記対応する転写された非合成音声発声(304)のための可能な非合成音声認識仮説にわたる第4の確率分布(395)を生成することであり、可能な非合成音声認識仮説にわたる前記第4の確率分布(395)が、前記可能な音素ラベルまたは前記可能なワードピースラベルのうちの他方を含む、生成することと、
可能な非合成音声認識仮説にわたる前記第4の確率分布(395)と、前記転写された非合成音声発声(304)とペアにされる前記対応する転写(302)とに基づいて、別の非合成音声損失項(344)を決定することと、
前記非合成音声損失項(344)に基づいて前記オーディオエンコーダ(210)を事前トレーニングすることと
をさらに含む、請求項5に記載のコンピュータ実装方法(600)。
【請求項7】
前記補助デコーダ(390)が、Connection Temporal Classification(CTC)デコーダ、Listen Attend Spell(LAS)デコーダ、またはRecurrent Neural Network-Transducer(RNN-T)デコーダのうちの1つを含む、請求項4~6のいずれか一項に記載のコンピュータ実装方法(600)。
【請求項8】
前記動作が、
トレーニング用発声ペア(301)のセットを取得することであり、各トレーニング用発声ペア(301)が、
前記受信されたトレーニングデータ(304、306、320)の前記転写された非合成音声発声(304)のうちの対応する1つと、
前記対応する転写された非合成音声発声(304)のペアの合成音声表現(334)であり、前記テキスト音声モデル(330)が前記転写された非合成音声発声(304)とペアにされる前記対応する転写(302)に対してテキスト音声変換を実行することによって生成されたペアの合成音声表現(334)と
を含む、取得することをさらに含み、
前記オーディオエンコーダ(210)を事前トレーニングすることが、トレーニング用発声ペア(301)の前記セット内の各トレーニング用発声ペア(301)の複数の出力ステップの各々において、
補助デコーダ(390)を使用して、前記対応する転写された非合成音声発声(304)のための可能な非合成音声認識仮説にわたる第1の確率分布(311)を生成することと、
補助デコーダ(390)を使用して、前記対応するペアの合成音声表現(334)のための可能な合成音声認識仮説にわたる第2の確率分布(394)を生成することと、
可能な非合成音声認識仮説にわたる前記第1の確率分布(311)、および可能な合成音声認識仮説にわたる前記第2の確率分布(394)に基づいて、前記対応するトレーニング用発声ペア(301)に対する一貫性損失項(352)を決定することと、
前記一貫性損失項(352)に基づいて、前記オーディオエンコーダ(210)を事前トレーニングすることと
を含む、請求項1~7のいずれか一項に記載のコンピュータ実装方法(600)。
【請求項9】
前記動作が、前記合成音声表現(332)を基にして前記オーディオエンコーダ(210)を事前トレーニングする前に、前記合成音声表現(332)のうちの1つまたは複数を拡張することをさらに含む、請求項1~8のいずれか一項に記載のコンピュータ実装方法(600)。
【請求項10】
前記非発話テキスト発声(320)が、1つまたは複数の言語モデル(404、406)を使用して生成および/または選択される、請求項1~9のいずれか一項に記載のコンピュータ実装方法(600)。
【請求項11】
前記非発話テキスト発声(320)が、背景言語モデル(406)と、ターゲット領域に関連付けられた転写された音声発声(304)においてトレーニングされた領域内言語モデル(404)とを使用して生成される、請求項1~10のいずれか一項に記載のコンピュータ実装方法(600)。
【請求項12】
前記動作が、前記オーディオエンコーダ(210)を事前トレーニングした後、転写された音声発声(304)に対して前記事前トレーニングされたエンコーダ(210)を微調整することをさらに含む、請求項1~11のいずれか一項に記載のコンピュータ実装方法(600)。
【請求項13】
システム(100)であって、
データ処理ハードウェア(710)と、
前記データ処理ハードウェア(710)と通信しているメモリハードウェア(720)とを備え、前記メモリハードウェア(720)が、前記データ処理ハードウェア(710)上で実行されると、前記データ処理ハードウェア(710)に動作を実行させる命令を記憶し、前記動作が、
非発話テキスト発声(320)であり、各非発話テキスト発声(320)は非合成音声のいかなる対応する発話された発声ともペアにされない、非発話テキスト発声(320)と、
転写されていない非合成音声発声(306)であり、各転写されていない非合成音声発声(306)は対応する転写とペアにされない、転写されていない非合成音声発声(306)と、
転写された非合成音声発声(304)であり、各転写された非合成音声発声(304)は対応する転写(302)とペアにされる、転写された非合成音声発声(304)と
を含むトレーニングデータ(304、306、320)を受信することと、
テキスト音声モデル(330)を使用して、前記受信されたトレーニングデータ(304、306、320)の非発話テキスト発声(320)ごとに対応する合成音声表現(332)を生成することと、
共有された音声およびテキスト表現を共同で学習するようオーディオエンコーダ(210)に教えるために、前記非発話テキスト発声(320)、前記転写されていない非合成音声発声(306)、および前記転写された非合成音声発声(304)のために生成された前記合成音声表現(332)を基にして、前記オーディオエンコーダ(210)を事前トレーニングすることと
を含む、システム(100)。
【請求項14】
前記オーディオエンコーダ(210)が、マルチヘッド自己アテンション機構を各々含む自己アテンション層のスタックを含む、請求項13に記載のシステム(100)。
【請求項15】
前記オーディオエンコーダ(210)を事前トレーニングすることが、
転写されていない非合成音声発声(306)ごとに、
前記転写されていない非合成音声発声(306)の対応する符号化表現(215)を生成することと、
前記転写されていない非合成音声発声(306)の前記対応する符号化表現(215)に適用される対照的損失(316)を基にして、前記オーディオエンコーダ(210)を事前トレーニングすることと、
合成音声表現(332)ごとに、
前記合成音声表現(332)の対応する符号化表現(215)を生成することと、
前記合成音声表現(332)の前記対応する符号化表現(215)に適用される対照的損失(316)を基にして、前記オーディオエンコーダ(210)を事前トレーニングすることと、
転写された非合成音声発声(304)ごとに、
前記転写された非合成音声発声(304)の対応する符号化表現(215)を生成することと、
前記転写された非合成音声発声(304)の前記対応する符号化表現(215)に適用される対照的損失(316)を基にして、前記オーディオエンコーダ(210)を事前トレーニングすることと
を含む、請求項13または14に記載のシステム(100)。
【請求項16】
前記オーディオエンコーダ(210)を事前トレーニングすることが、
各合成音声表現(332)の複数の時間ステップの各々において、
補助デコーダ(390)を使用して、前記対応する合成音声表現(332)のための可能な合成音声認識仮説にわたる第1の確率分布(392)を生成することと、
可能な合成音声認識仮説にわたる前記第1の確率分布(392)と、前記対応する合成音声表現(332)に対応する前記非発話テキスト発声(320)とに基づいて、合成音声損失項(342)を決定することと、
前記合成音声損失項(342)に基づいて前記オーディオエンコーダ(210)を事前トレーニングすることと、
各転写された非合成音声発声(304)の複数の時間ステップの各々において、
前記補助デコーダ(390)を使用して、前記対応する転写された非合成音声発声(304)のための可能な非合成音声認識仮説にわたる第2の確率分布(394)を生成することと、
可能な非合成音声認識仮説にわたる前記第2の確率分布(394)と、前記転写された非合成音声発声(304)とペアにされる前記対応する転写(302)とに基づいて、非合成音声損失項(344)を決定することと、
前記非合成音声損失項(344)に基づいて前記オーディオエンコーダ(210)を事前トレーニングすることと
を含む、請求項13~15のいずれか一項に記載のシステム(100)。
【請求項17】
可能な合成音声認識仮説にわたる前記第1の確率分布(392)が、可能な音素ラベルまたは可能なワードピースラベルのうちの一方を含み、
可能な非合成音声認識仮説にわたる前記第2の確率分布(394)が、前記可能な音素ラベルまたは前記可能なワードピースラベルのうちの一方を含む、
請求項16に記載のシステム(100)。
【請求項18】
前記オーディオエンコーダ(210)を事前トレーニングすることが、
各合成音声表現(332)の前記複数の時間ステップの各々において、
別の補助デコーダ(390)を使用して、前記対応する合成音声表現(332)のための可能な合成音声認識仮説にわたる第3の確率分布(393)を生成することであり、可能な合成音声認識仮説にわたる前記第3の確率分布(393)が、前記可能な音素ラベルまたは前記可能なワードピースラベルのうちの他方を含む、生成することと、
可能な合成音声認識仮説にわたる前記第3の確率分布(393)と、前記対応する合成音声表現(332)に対応する前記非発話テキスト発声(320)とに基づいて、別の合成音声損失項(342)を決定することと、
前記他の合成音声損失項(342)に基づいて前記オーディオエンコーダ(210)を事前トレーニングすることと、
各転写された非合成音声発声(304)の前記複数の時間ステップの各々において、
前記他の補助デコーダ(390)を使用して、前記対応する転写された非合成音声発声(304)のための可能な非合成音声認識仮説にわたる第4の確率分布(395)を生成することであり、可能な非合成音声認識仮説にわたる前記第4の確率分布(395)が、前記可能な音素ラベルまたは前記可能なワードピースラベルのうちの他方を含む、生成することと、
可能な非合成音声認識仮説にわたる前記第4の確率分布(395)と、前記転写された非合成音声発声(304)とペアにされる前記対応する転写(302)とに基づいて、別の非合成音声損失項(344)を決定することと、
前記非合成音声損失項(344)に基づいて前記オーディオエンコーダ(210)を事前トレーニングすることと
をさらに含む、請求項17に記載のシステム(100)。
【請求項19】
前記補助デコーダ(390)が、Connection Temporal Classification(CTC)デコーダ、Listen Attend Spell(LAS)デコーダ、またはRecurrent Neural Network-Transducer(RNN-T)デコーダのうちの1つを含む、請求項16~18のいずれか一項に記載のシステム(100)。
【請求項20】
前記動作が、
トレーニング用発声ペア(301)のセットを取得することであり、各トレーニング用発声ペア(301)が、
前記受信されたトレーニングデータ(304、306、320)の前記転写された非合成音声発声(304)のうちの対応する1つと、
前記対応する転写された非合成音声発声(304)のペアの合成音声表現(334)であり、前記テキスト音声モデル(330)が前記転写された非合成音声発声(304)とペアにされる前記対応する転写(302)に対してテキスト音声変換を実行することによって生成されたペアの合成音声表現(334)と
を含む、取得することをさらに含み、
前記オーディオエンコーダ(210)を事前トレーニングすることが、トレーニング用発声ペア(301)の前記セット内の各トレーニング用発声ペア(301)の複数の出力ステップの各々において、
補助デコーダ(390)を使用して、前記対応する転写された非合成音声発声(304)のための可能な非合成音声認識仮説にわたる第1の確率分布(311)を生成することと、
補助デコーダ(390)を使用して、前記対応するペアの合成音声表現(334)のための可能な合成音声認識仮説にわたる第2の確率分布(394)を生成することと、
可能な非合成音声認識仮説にわたる前記第1の確率分布(311)、および可能な合成音声認識仮説にわたる前記第2の確率分布(394)に基づいて、前記対応するトレーニング用発話ペア(301)に対する一貫性損失項(352)を決定することと、
前記一貫性損失項(352)に基づいて、前記オーディオエンコーダ(210)を事前トレーニングすることと
をさらに含む、請求項13~19のいずれか一項に記載のシステム(100)。
【請求項21】
前記動作が、前記合成音声表現(332)を基にして前記オーディオエンコーダ(210)を事前トレーニングする前に、前記合成音声表現(332)のうちの1つまたは複数を拡張することをさらに含む、請求項13~20のいずれか一項に記載のシステム(100)。
【請求項22】
前記非発話テキスト発声(320)が、1つまたは複数の言語モデル(404、406)を使用して生成および/または選択される、請求項13~21のいずれか一項に記載のシステム(100)。
【請求項23】
前記非発話テキスト発声(320)が、背景言語モデル(406)と、ターゲット領域に関連付けられた転写された音声発声(304)においてトレーニングされた領域内言語モデル(404)とを使用して生成される、請求項13~22のいずれか一項に記載のシステム(100)。
【請求項24】
前記動作が、前記オーディオエンコーダ(210)を事前トレーニングした後、転写された音声発声(304)に対して前記事前トレーニングされたエンコーダ(210)を微調整することをさらに含む、請求項13~23のいずれか一項に記載のシステム(100)。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、一貫性損失および対照的損失による自動音声認識(ASR)事前トレーニングにおけるテキストおよび音声の使用を進めることに関する。
【背景技術】
【0002】
自動音声認識(ASR)は、オーディオ入力を取り、オーディオ入力をテキストに転写するプロセスであり、モバイルデバイスおよび他のデバイスにおいて使用される非常に重要な技術となっている。一般に、自動音声認識は、オーディオ入力(たとえば、音声発声)を取ること、およびオーディオ入力をテキストに転写することによって、人物が言ったことの正確な転写を提供しようと試みる。最新のASRモデルは、深層ニューラルネットワークの進行中の開発に基づいて、正確さ(たとえば、低い単語誤り率(WER))とレイテンシ(たとえば、ユーザ発声と転写の間との遅延)の両方において向上し続ける。ただし、深層学習ベースのASRモデルを開発する際の1つの難題は、ASRモデルのパラメータが、トレーニングデータに過剰適合する傾向があり、そうすることによって、ASRモデルが、トレーニングデータが十分には大規模でないときに未知のデータを一般化するという問題点を有することになることである。その結果、比較的大きいトレーニングデータセットでASRモデルをトレーニングすると、ASRモデルの正確さが向上する。ASRモデルのトレーニングに使用されるトレーニングデータの量を増やすために、合成音声および/またはデータ拡張音声を組み込むことができる。
【発明の概要】
【課題を解決するための手段】
【0003】
本開示の一態様は、データ処理ハードウェア上で実行されると、データ処理ハードウェアに、音声およびテキストの共有された表現を共同で学習するためにオーディオエンコーダを事前トレーニングするための動作を行わせる、コンピュータ実装方法を提供する。動作は、非発話テキスト発声、転写されていない非合成音声発声、および転写された非合成音声発声を含むトレーニングデータを受信することを含む。各非発話テキスト発声は、非合成音声のいかなる対応する発話された発声ともペアにされない。各転写されていない非合成音声発声は、対応する転写とペアにされない。各転写された非合成音声発声は、対応する転写とペアにされる。動作はまた、テキスト音声モデルを使用して、受信されたトレーニングデータの各非発話テキスト発声の対応する合成音声表現を生成することも含む。動作はまた、共有された音声およびテキスト表現を共同で学習するようオーディオエンコーダに教えるために、非発話テキスト発声、転写されていない非合成音声発声、および転写された非合成音声発声のために生成された合成音声表現を基にして、オーディオエンコーダを事前トレーニングすることも含む。
【0004】
本開示の実装形態は、以下の任意選択の特徴のうちの1つまたは複数を含み得る。いくつかの実装形態では、オーディオエンコーダは、マルチヘッド自己アテンション機構を各々含む自己アテンション層のスタックを含む。いくつかの例では、オーディオエンコーダを事前トレーニングすることは、転写されていない非合成音声発声ごとに、転写されていない音声表現の対応する符号化表現を生成することと、転写されていない非合成音声発声の対応する符号化表現に適用される対照的損失を基にして、オーディオエンコーダを事前トレーニングすることと、合成音声表現ごとに、合成音声表現の対応する符号化表現を生成することと、合成音声表現の対応する符号化表現に適用される対照的損失を基にして、オーディオエンコーダを事前トレーニングすることと、転写された非合成音声発声ごとに、転写された非合成音声発声の対応する符号化表現を生成することと、転写されていない非合成音声発声の対応する符号化表現に適用される対照的損失を基にして、オーディオエンコーダを事前トレーニングすることとを含む。
【0005】
いくつかの実装形態では、オーディオエンコーダを事前トレーニングすることは、各合成音声表現の複数の時間ステップの各々において、補助デコーダを使用して、対応する合成音声表現のための可能な合成音声認識仮説にわたる第1の確率分布を生成することと、可能な合成音声認識仮説にわたる第1の確率分布と、対応する合成音声表現に対応する非発話テキスト発声とに基づいて、合成音声損失項を決定することと、合成音声損失項に基づいてオーディオエンコーダを事前トレーニングすることと、各転写された非合成音声発声の複数の時間ステップの各々において、補助デコーダを使用して、対応する転写された非合成音声発声のための可能な非合成音声認識仮説にわたる第2の確率分布を生成することと、可能な非合成音声認識仮説にわたる第2の確率分布と、転写された非合成音声発声とペアにされる対応する転写とに基づいて、非合成音声損失項を決定することと、非合成音声損失項に基づいてオーディオエンコーダを事前トレーニングすることとを含む。ここで、可能な合成音声認識仮説にわたる第1の確率分布は、可能な音素ラベルまたは可能なワードピースラベルのうちの一方を含み、可能な非合成音声認識仮説にわたる第2の確率分布は、可能な音素ラベルまたは可能なワードピースラベルのうちの一方を含む。
【0006】
これらの実装形態では、オーディオエンコーダを事前トレーニングすることは、各合成音声表現の複数の時間ステップの各々において、別の補助デコーダを使用して、可能な音素ラベルまたは可能なワードピースラベルのうちの他方を含む、対応する合成音声表現のための可能な合成音声認識仮説にわたる第3の確率分布を生成することと、可能な合成音声認識仮説にわたる第3の確率分布と、対応する合成音声表現に対応する非発話テキスト発声とに基づいて、別の合成音声損失項を決定することと、他の合成音声損失項に基づいてオーディオエンコーダを事前トレーニングすることと、各転写された非合成音声発声の複数の時間ステップの各々において、他の補助デコーダを使用して、可能な音素ラベルまたは可能なワードピースラベルのうちの他方を含む、対応する転写された非合成音声発声のための可能な非合成音声認識仮説にわたる第4の確率分布を生成することと、可能な非合成音声認識仮説にわたる第4の確率分布と、転写された非合成音声発声とペアにされる対応する転写とに基づいて、別の非合成音声損失項を決定することと、非合成音声損失項に基づいてオーディオエンコーダを事前トレーニングすることとをさらに含み得る。補助デコーダは、Connection Temporal Classification(CTC)デコーダ、Listen Attend Spell(LAS)デコーダ、またはRecurrent Neural Network-Transducer(RNN-T)デコーダのうちの1つを含む。
【0007】
いくつかの例では、動作は、受信されたトレーニングデータの転写された非合成音声発声のうちの対応する1つと、テキスト音声モデルが転写された非合成音声発声とペアにされる対応する転写に対してテキスト音声変換を実行することによって生成された対応する転写された非合成音声発声のペアの合成音声表現とを各々含むトレーニング用発声ペアのセットを取得することをさらに含む。これらの例では、オーディオエンコーダを事前トレーニングすることが、トレーニング用発声ペアのセット内の各トレーニング用発声ペアの複数の出力ステップの各々において、補助デコーダを使用して、対応する転写された非合成音声発声のための可能な非合成音声認識仮説にわたる第1の確率分布を生成することと、補助デコーダを使用して、対応するペアの合成音声表現のための可能な合成音声認識仮説にわたる第2の確率分布を生成することと、可能な非合成音声認識仮説にわたる第1の確率分布、および可能な合成音声認識仮説にわたる第2の確率分布に基づいて、対応するトレーニング用発声ペアに対する一貫性損失項を決定することと、非合成音声損失項に基づいてオーディオエンコーダを事前トレーニングすることとを含む。動作は、合成音声表現を基にしてオーディオエンコーダを事前トレーニングする前に、合成音声表現のうちの1つまたは複数を拡張することをさらに含み得る。
【0008】
いくつかの実装形態では、非発話テキスト発声は、1つまたは複数の言語モデルを使用して生成および/または選択される。いくつかの例では、非発話テキスト発声は、背景言語モデルと、ターゲット領域に関連付けられた転写された音声発声においてトレーニングされた領域内言語モデルとを使用して生成される。動作は、オーディオエンコーダを事前トレーニングした後、転写された音声発声に対して事前トレーニングされたエンコーダを微調整することをさらに含み得る。
【0009】
本開示の別の態様は、データ処理ハードウェアと、データ処理ハードウェア上で実行されるとデータ処理ハードウェアに動作を実施させる命令を記憶するメモリハードウェアとを含むシステムを提供する。動作は、非発話テキスト発声、転写されていない非合成音声発声、および転写された非合成音声発声を含むトレーニングデータを受信することを含む。各非発話テキスト発声は、非合成音声のいかなる対応する発話発声ともペアにされない。各転写されていない非合成音声発声は、対応する転写とペアにされない。各転写された非合成音声発声は、対応する転写とペアにされる。動作はまた、テキスト音声モデルを使用して、受信されたトレーニングデータの各非発話テキスト発声の対応する合成音声表現を生成することも含む。動作はまた、共有された音声およびテキスト表現を共同で学習するようオーディオエンコーダに教えるために、非発話テキスト発声、転写されていない非合成音声発声、および転写された非合成音声発声のために生成された合成音声表現を基にして、オーディオエンコーダを事前トレーニングすることも含む。
【0010】
本開示の実装形態は、以下の任意選択の特徴のうちの1つまたは複数を含み得る。いくつかの実装形態では、オーディオエンコーダは、マルチヘッド自己アテンション機構を各々含む自己アテンション層のスタックを含む。いくつかの例では、オーディオエンコーダを事前トレーニングすることは、転写されていない非合成音声発声ごとに、転写されていない音声表現の対応する符号化表現を生成することと、転写されていない非合成音声発声の対応する符号化表現に適用される対照的損失を基にして、オーディオエンコーダを事前トレーニングすることと、合成音声表現ごとに、合成音声表現の対応する符号化表現を生成することと、合成音声表現の対応する符号化表現に適用される対照的損失を基にして、オーディオエンコーダを事前トレーニングすることと、転写された非合成音声発声ごとに、転写された非合成音声発声の対応する符号化表現を生成することと、転写された非合成音声発声の対応する符号化表現に適用される対照的損失を基にして、オーディオエンコーダを事前トレーニングすることとを含む。
【0011】
いくつかの実装形態では、オーディオエンコーダを事前トレーニングすることは、各合成音声表現の複数の時間ステップの各々において、補助デコーダを使用して、対応する合成音声表現のための可能な合成音声認識仮説にわたる第1の確率分布を生成することと、可能な合成音声認識仮説にわたる第1の確率分布と、対応する合成音声表現に対応する非発話テキスト発声とに基づいて、合成音声損失項を決定することと、合成音声損失項に基づいてオーディオエンコーダを事前トレーニングすることと、各転写された非合成音声発声の複数の時間ステップの各々において、補助デコーダを使用して、対応する転写された非合成音声発声のための可能な非合成音声認識仮説にわたる第2の確率分布を生成することと、可能な非合成音声認識仮説にわたる第2の確率分布と、転写された非合成音声発声とペアにされる対応する転写とに基づいて、非合成音声損失項を決定することと、非合成音声損失項に基づいてオーディオエンコーダを事前トレーニングすることとを含む。ここで、可能な合成音声認識仮説にわたる第1の確率分布は、可能な音素ラベルまたは可能なワードピースラベルのうちの一方を含み、可能な非合成音声認識仮説にわたる第2の確率分布は、可能な音素ラベルまたは可能なワードピースラベルのうちの一方を含む。
【0012】
これらの実装形態では、オーディオエンコーダを事前トレーニングすることは、各合成音声表現の複数の時間ステップの各々において、別の補助デコーダを使用して、可能な音素ラベルまたは可能なワードピースラベルのうちの他方を含む、対応する合成音声表現のための可能な合成音声認識仮説にわたる第3の確率分布を生成することと、可能な合成音声認識仮説にわたる第3の確率分布と、対応する合成音声表現に対応する非発話テキスト発声とに基づいて、別の合成音声損失項を決定することと、他の合成音声損失項に基づいてオーディオエンコーダを事前トレーニングすることと、各転写された非合成音声発声の複数の時間ステップの各々において、他の補助デコーダを使用して、可能な音素ラベルまたは可能なワードピースラベルのうちの他方を含む、対応する転写された非合成音声発声のための可能な非合成音声認識仮説にわたる第4の確率分布を生成することと、可能な非合成音声認識仮説にわたる第4の確率分布と、転写された非合成音声発声とペアにされる対応する転写とに基づいて、別の非合成音声損失項を決定することと、非合成音声損失項に基づいてオーディオエンコーダを事前トレーニングすることとをさらに含み得る。補助デコーダは、Connection Temporal Classification(CTC)デコーダ、Listen Attend Spell(LAS)デコーダ、またはRecurrent Neural Network-Transducer(RNN-T)デコーダのうちの1つを含む。
【0013】
いくつかの例では、動作は、受信されたトレーニングデータの転写された非合成音声発声のうちの対応する1つと、テキスト音声モデルが転写された非合成音声発声とペアにされる対応する転写に対してテキスト音声変換を実行することによって生成された対応する転写された非合成音声発声のペアの合成音声表現とを各々含むトレーニング用発声ペアのセットを取得することをさらに含む。これらの例では、オーディオエンコーダを事前トレーニングすることが、トレーニング用発声ペアのセット内の各トレーニング用発声ペアの複数の出力ステップの各々において、補助デコーダを使用して、対応する転写された非合成音声発声のための可能な非合成音声認識仮説にわたる第1の確率分布を生成することと、補助デコーダを使用して、対応するペアの合成音声表現のための可能な合成音声認識仮説にわたる第2の確率分布を生成することと、可能な非合成音声認識仮説にわたる第1の確率分布、および可能な合成音声認識仮説にわたる第2の確率分布に基づいて、対応するトレーニング用発話ペアに対する一貫性損失項を決定することと、非合成音声損失項に基づいてオーディオエンコーダを事前トレーニングすることとを含む。動作は、合成音声表現を基にしてオーディオエンコーダを事前トレーニングする前に、合成音声表現のうちの1つまたは複数を拡張することをさらに含み得る。
【0014】
いくつかの実装形態では、非発話テキスト発声は、1つまたは複数の言語モデルを使用して生成および/または選択される。いくつかの例では、非発話テキスト発声は、背景言語モデルと、ターゲット領域に関連付けられた転写された音声発声においてトレーニングされた領域内言語モデルとを使用して生成される。動作は、オーディオエンコーダを事前トレーニングした後、転写された音声発声に対して事前トレーニングされたエンコーダを微調整することをさらに含み得る。
【0015】
本開示の1つまたは複数の実装形態の詳細について、添付図面および以下の説明に示す。他の態様、特徴、および利点は、説明および図面から、ならびに特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【0016】
図1】例示的音声認識システムの概略図である。
図2】回帰型ニューラルネットワークトランスデューサ(RNN-T)モデルアーキテクチャの概略図である。
図3A】音声認識モデルのオーディオエンコーダを事前トレーニングするための例示的なトレーニングプロセスを示す概略図である。
図3B】音声認識モデルのオーディオエンコーダを事前トレーニングするための例示的なトレーニングプロセスを示す概略図である。
図3C】音声認識モデルのオーディオエンコーダを事前トレーニングするための例示的なトレーニングプロセスを示す概略図である。
図4】特定の領域に関係する非発話テキスト発声を選択するための例示的な非発話テキスト選択プロセスを示す概略図である。
図5】非合成音声および合成音声の例示的な投影空間エンコーダ表現である。
図6】音声およびテキストの共有表現を共同で学習するためにオーディオエンコーダを事前トレーニングする方法のための動作の例示的な配置を示すフローチャートである。
図7】本明細書で説明するシステムおよび方法を実装するために使用され得る例示的なコンピューティングデバイスの概略図である。
【発明を実施するための形態】
【0017】
様々な図面における同様の参照符号は、同様の要素を示す。
【0018】
自動化音声認識は、オーディオからキャラクタシーケンスにマップするシーケンスツーシーケンス(Seq2Seq)モデルの導入に伴い、途方もない進歩をした。同時に、テキスト音声(TTS)または音声合成システムは、人間の耳にとって人間音声とは区別不可能であり得る、最先端の自然な、現実的に聞こえる合成された音声を取得するために、Seq2Seqモデルを適用することに成功している。
【0019】
深層学習ベースのASRモデルを開発する際の1つの難題は、ASRモデルのパラメータが、トレーニングデータに過剰適合する傾向があり、そうすることによって、ASRモデルが、トレーニングデータが十分には大規模でないときに未知のデータを一般化するという問題点を有することになることである。したがって、比較的大きいトレーニングデータセットでASRモデルをトレーニングすると、ASRモデルの正確さが向上する。たとえば、機械学習または他の統計方法を使用することによって、10,000時間以上の転写された音声を含むトレーニングデータセットでASRモデルをトレーニングすることができる。しかし、トレーニングデータに関連付けられた領域が、推論中にASRモデルが展開される領域と異なるとき、ASRモデルの性能が低下する。たとえば、ビデオ会議に関連付けられた領域で転写された音声でASRモデルをトレーニングすると、音声検索クエリに関連する音声を認識する効果は低くなり、その逆も同様である。
【0020】
合成音声は、ASRモデルをトレーニングするのに要するラベル付き人間音声の量を徹底的に制限する可能性があるとともに、異なる領域の間でASRモデルを動かす柔軟性も与える。一般に、最先端の合成音声の例は人間の音声と区別できないにもかかわらず、合成音声の使用は、人間の音声とは異なる影響をASRトレーニングに与えることが示されている。合成音声と人間の音声との間にこのギャップは、TTSシステムが解決しようとしている困難な1対多のマッピング問題から生じる、人間の音声データと合成音声データの不一致に起因する。すなわち、利用可能な合成音声の総合的な品質は非常に高いが、合成音声は人間の音声よりもはるかに変動が少なく、音声の乱れも最小限に抑えられている。その結果、合成音声データで排他的にASRモデルをトレーニングするのには、推論中に実際の音声発声を一般化することが困難になる。
【0021】
本明細書の実装形態は、ASRモデルをトレーニングするためのターゲット領域および/またはターゲット言語における大量の転写された音声(たとえば、非合成音声)が利用できないか、またはあまり普及していないとき、ASRモデルの精度を維持するために、音声を認識するためにASRモデルのトレーニングに合成音声を使用することを対象としている。より具体的には、実装形態は、転写されていない非合成音声発声、対応する合成音声表現を生成するための非発話テキスト発声、および音声表現とテキスト表現を共同で学習するための転写された非合成音声発声を含むトレーニングデータでASRモデルのオーディオエンコーダを事前トレーニングし、次いで、利用可能な転写された非合成音声発声を使用して事前トレーニングされたASRモデルを微調整(たとえば、ウォームスタートトレーニング)することを対象とする。明らかになるように、オーディオエンコーダの事前トレーニングは、トレーニングデータから導出された対照的な自己教師あり損失、教師あり損失、および一貫性損失の組合せに基づいて、オーディオエンコーダのパラメータを更新することを含む。
【0022】
対照的自己教師あり損失は、言語学習を促進するために、転写されていない非合成音声発声、合成音声表現、および転写された非合成音声発声のうちの対応するものからオーディオエンコーダによって生成された潜在音声表現から導出され得る。一方、教師あり損失は、合成音声表現と転写された非合成音声発声の対応するものからオーディオエンコーダによって生成された潜在音声表現に基づいて、1つまたは複数の補助デコーダによって予測された音声認識ラベルから導出され得る。ここで、合成音声表現を生成するために使用された、転写された非合成音声発声と対応する非発話テキスト発声とペアにされる対応する転写が、教師あり損失を導出するためのグランドトゥルースラベルとして機能する。最後に、一貫性損失は、同じ発声の非合成音声表現(たとえば、実際の/人間の)と合成音声表現の両方に対するオーディオエンコーダによる一貫性予測(たとえば、潜在音声表現)を促進するために、各転写された非合成音声発声および同じ発声の対応する合成音声表現から導出され得る。つまり、同じ発声の人間(非合成)の表現と合成(合成)表現との間の一貫性損失は、人間の音声および合成音声のトレーニング発声で一貫した動作をするようにオーディオエンコーダに促すことによって、教師なしトレーニングの側面を提供する。特に、テキスト音声(TTS)モデルは、各転写された非合成音声発声とペアにされる対応する転写を、同じ発声の対応する合成音声表現に変換することができる。
【0023】
追加の実装形態は、話者の違いに対するロバスト性を促進するために、合成された話者の特性を変化させることによって、トレーニング発声の多様な実現を合成するなどのデータ拡張技法を適用することを含む。本明細書で説明する技法は、ターゲット領域および/またはターゲット言語において利用可能な転写された人間の音声が比較的少ないときに特に有用である。
【0024】
図1は、ユーザ104のユーザデバイス102上および/またはユーザデバイス102と通信するリモートコンピューティングデバイス201(たとえば、クラウドコンピューティング環境において実行する分散型システムの、1つもしくは複数のサーバ)上に存在するASRモデル200を実装する自動化音声認識(ASR)システム100を示す。ユーザデバイス102はモバイルコンピューティングデバイス(たとえば、スマートフォン)として示されるが、ユーザデバイス102は、限定はしないが、タブレットデバイス、ラップトップ/デスクトップコンピュータ、装着可能デバイス、デジタルアシスタントデバイス、スマートスピーカー/ディスプレイ、スマート器具、車載インフォテインメントシステム、またはモノのインターネット(IoT)デバイスなど、任意のタイプのコンピューティングデバイスに対応してもよく、データ処理ハードウェア111およびメモリハードウェア113を備える。
【0025】
ユーザデバイス102は、ユーザ104によって発話された発声106を受信し(たとえば、ユーザデバイス102は、発話された発声106を記録するための1つまたは複数のマイクロフォンを含み得る)、発声106を、ASRシステム100によって処理されることが可能な入力音響フレーム110に関連付けられた対応するデジタルフォーマットに変換するように構成されたオーディオサブシステム108を含む。図示した例において、ユーザは、「What is the weather in New York City?」というフレーズに対する英語の自然言語で、それぞれの発声106を発話し、オーディオサブシステム108は、発声106を、ASRシステム100への入力用に、対応する音響フレーム110に変換する。その後、ASRモデル200は、入力として、発声106に対応する音響フレーム110を受信し、出力として、発声106の対応する転写120(たとえば、認識結果/仮定)を生成/予測する。図示した例において、ユーザデバイス102および/またはリモートコンピューティングデバイス201は、発声106の転写120の表現を、ユーザデバイス102のユーザ104に提示するように構成されたユーザインターフェースジェネレータ107も実行する。いくつかの構成では、ASRシステム100から出力された転写120は、たとえば、ユーザコマンドを実行するために、ユーザデバイス102またはリモートコンピューティングデバイス201上で実行する自然言語理解(NLU)モジュールによって処理される。追加または代替として、テキスト音声システム(たとえば、ユーザデバイス102またはリモートコンピューティングデバイス201のどの組合せにおいても実行する)は、転写を、別のデバイスによる可聴出力のための合成音声に変換してよい。たとえば、元の発声106は、ユーザ104が友人へ送っているメッセージに対応してよく、ここで転写120は、元の発声106において伝えられるメッセージを聴くべき友人への可聴出力のための合成音声に変換される。
【0026】
図2を参照すると、例示的なフレーム整列ベースのトランスデューサモデル200aは、対話型アプリケーションに関連付けられたレイテンシ制約を遵守する回帰型ニューラルネットワークトランスデューサ(RNN-T)モデルアーキテクチャを含む。RNN-Tモデルアーキテクチャの使用は例示的なものであり、フレームアライメントベースのトランスデューサモデル200は、特に、トランスフォーマ-トランスデューサおよびコンフォーマ-トランスデューサモデルアーキテクチャなど他のアーキテクチャを含み得る。RNN-Tモデル200は、小さい計算フットプリントを可能にし、従来のASRアーキテクチャよりも少ないメモリ要件を利用し、RNN-Tモデルアーキテクチャを完全にユーザデバイス102上で音声認識を実行するのに適したものにする(たとえば、リモートサーバとの通信を必要としない)。RNN-Tモデル200は、エンコーダネットワーク210、予測ネットワーク220、および共同ネットワーク230を含む。エンコーダネットワーク210は、概して旧来のASRシステムの音響モデル(AM)に類似しており、自己アテンション層(コンフォーマ層またはトランスフォーマ層など)のスタック、または積層長期短期記憶(LSTM)層のリカレントネットワークを含む。たとえばエンコーダは、d次元特徴ベクトルのシーケンス(たとえば、音響フレーム110(図1))x=(x1,x2,...,xT)を読み取り、式中、xt
【0027】
【数1】
【0028】
であり、各出力ステップで、より高次の特徴表現を生成する。このより高次の特徴表現は、
【0029】
【数2】
【0030】
, ...,
【0031】
【数3】
【0032】
と記される。
【0033】
同様に、予測ネットワーク220もLSTMネットワークであり、これは、言語モデル(LM)のように、最終ソフトマックス層240によってこれまで出力された非空白シンボルのシーケンス、すなわちy0、... . . 、yui-1を密な表現
【0034】
【数4】
【0035】
に処理する。最終的に、RNN-Tモデルアーキテクチャを用いて、エンコーダおよび予測/デコーダネットワーク210、220によって生成された表現は、結合ネットワーク230によって組み合わされる。予測ネットワーク220は、密な表現を処理する代わりに、ルックアップされた疎な埋め込みを出力することによって待ち時間を改善するために、埋め込みルックアップテーブルに置き換えることができる。共同ネットワークは次いで、
【0036】
【数5】
【0037】
を予測し、これは、次の出力シンボルにわたる分布である。別の言い方をすると、共同ネットワーク230は、各出力ステップ(たとえば、時間ステップ)において、可能な音声認識仮定にわたる確率分布を生成する。ここで、「可能な音声認識仮定」は、指定された自然言語でシンボル/キャラクタを各々が表す出力ラベルのセットに対応する。たとえば、自然言語が英語であるとき、出力ラベルのセットは、27個のシンボルを含んでよく、たとえば、英語アルファベットの26文字の各々用の1つのラベル、および空間を指定する1つのラベルである。したがって、共同ネットワーク230は、出力ラベルの所定のセットの各々の出現の見込みを示す値のセットを出力してよい。この値セットは、ベクトルであってよく、出力ラベルのセットにわたる確率分布を示すことができる。いくつかの場合には、出力ラベルは書記素(たとえば、個々のキャラクタ、また、可能性としては句読および他のシンボル)であるが、出力ラベルのセットは、そのように限定されるわけではない。たとえば、出力ラベルのセットは、書記素に加え、またはその代わりに、ワードピースおよび/または単語全体を含み得る。共同ネットワーク230の出力分布は、異なる出力ラベルの各々についての事後確率値を含み得る。したがって、異なる書記素または他のシンボルを表す100個の異なる出力ラベルがある場合、共同ネットワーク230の出力yiは、1つが各出力ラベルについてである、100個の異なる確率値を含み得る。確率分布は、したがって、転写120を決定するために(たとえば、ソフトマックス層240によって)ビーム探索プロセスにおいて候補綴字要素(たとえば、書記素、ワードピース、および/またはワード)にスコアを選択し、割り当てるために使用され得る。
【0038】
ソフトマックス層240は、分布における最も高い確率をもつ出力ラベル/シンボルを、対応する出力ステップにおいてRNN-Tモデル200によって予測される次の出力シンボルとして選択するための、任意の技法を利用してもよい。このように、RNN-Tモデル200は、条件付き独立仮定は行わず、むしろ、各シンボルの予測は、音響だけでなく、それまでに出力されたラベルのシーケンスも条件とする。RNN-Tモデル200は、出力シンボルが将来の音響フレーム110に依存しないと想定し、そうすることによって、RNN-Tモデルは、ストリーミング方式で利用されることが可能になる。
【0039】
いくつかの例では、RNN-Tモデル200のエンコーダネットワーク(すなわち、オーディオエンコーダ)210は、コンフォーマブロックなどの自己アテンション層/ブロックのスタックを含む。ここで、各コンフォーマブロックは、一連のマルチヘッド自己アテンション、深さ方向の畳み込み層、およびフィードフォワード層を含む。予測ネットワーク220は、2つの2,048次元LSTM層を有してよく、その各々に、やはり640次元投射層が続く。あるいは、予測ネットワーク220は、LSTM層の代わりに、トランスフォーマまたはコンフォーマブロックのスタック、または埋め込みルックアップテーブルを含むこともできる。最終的に、共同ネットワーク230も、640個の隠れユニットを有し得る。ソフトマックス層240は、複数のトレーニングデータセットですべて固有のワードピースまたは書記素を使用して生成される、統合ワードピースまたは書記素セットから成ってもよい。
【0040】
図3A図3Cは、ASRモデル200(図2)のオーディオエンコーダ210を事前トレーニングするための例示的なトレーニングプロセス300を示す。トレーニングプロセス300は、非発話テキスト発声(Xtext)320のセット、転写された非合成音声発声(Xsup)304のセット、および転写されていない非合成音声発声(Xunsup)306を含む利用可能なトレーニングデータを使用して、オーディオエンコーダ210を事前トレーニングすることができる。各非発話トレーニングテキスト発声320は、各非発話トレーニングテキスト発声320が発声の任意の対応する発話音声表現(スピーチ)とペアにされないようなテキストのみのデータ(すなわち、ペアにされないデータ)を含む。各転写されていない非合成音声発声306(単に「転写されていない音声発声306」とも呼ばれる)は、転写されていない音声発声306が任意の対応する転写とペアにされないような音声のみのデータ(すなわち、ペアにされないデータ)を含む。一方、各転写された非合成音声発声304(単に「転写された音声発声304」とも呼ばれる)は、対応する転写された非合成音声発声304の対応する非合成音声表現とペアにされる対応する転写302を含む。
【0041】
簡単のために、トレーニングプロセス300は、対照的自己教師あり損失部300a(図3A)、教師あり損失部300b(図3B)、および一貫性正則化部300c(図3C)を含む。トレーニングプロセス300は、非発話テキスト発声(Xtext)320、転写された非合成音声発声(Xsup)304のコーパス、および転写されていない非合成音声発声(Xunsup)306から対照的自己教師あり損失部300aを使用して導出された対照的損失(Lw2v)316、非発話テキスト発声(Xtext)320および転写された非合成音声発声(Xsup)304から教師あり損失部300bを使用して導出された教師あり損失(Laux)344、ならびに一貫性正則化部300cを使用して導出された一貫性損失(Lcons)352に基づいて全損失(Ltts4pretrain2)を基にしてオーディオエンコーダ210を事前トレーニングする。
【0042】
図3Aを参照すると、トレーニングプロセス300の対照的自己教師あり損失部300aは、複数の出力ステップの各々において、複数の非発話トレーニングテキスト発声320の各々に対する合成音声表現(たとえば、合成音声)332を生成するように構成されたテキスト音声(TTS)システム330を採用し得る。非発話トレーニングテキスト発声320(単に「非発話テキスト発声320」とも呼ばれる)は、各非発話テキスト発声(たとえば、Xtext)320が任意の合成音声または非合成音声とペアされていないような、テキストのみのデータ、すなわちペアにされていないデータである非発話テキストを含む。したがって、TTSシステム330は、非発話テキスト発声320の各々のための対応する合成音声表現332を生成する。特に、合成音声表現332は、オーディオエンコーダ210をトレーニングするためのメル周波数スペクトログラムフレームを含んでよく、そうすることによって、トレーニングプロセス300が、メル周波数スペクトログラムフレームを合成して合成音声にするためのボコーダおよび/またはシンセサイザを含む必要がなくなる。
【0043】
TTSシステム330は、非発話テキスト発声320を変換するときに話者埋め込みzを適用して、話者埋め込みに関連付けられた特定の話し方および韻律を有する合成音声表現332を生成し得る。TTSシステム330は、合成される合成音声表現332の結果として得られた発声の異なる話者特性に各々関連付けられた多数の異なる話者埋め込みzをそれぞれ適用することができる。同様に、TTSシステム330は、合成される発声の韻律および他の生成品質を変化させ得る。
【0044】
いくつかの例では、トレーニングプロセス300は、合成音声表現332のサンプル発声の少なくとも1つにデータ拡張を適用する。データ拡張には、限定はしないが、対応する音声表現にノイズを加える、タイミングを操作する(たとえば、ストレッチング)、残響を加えることを含み得る。データ拡張は、合成音声表現332に異なる合成録音条件を追加し得る。
【0045】
合成音声表現332のサンプル発声を生成するためのこの事前トレーニングバッチ生成プロセスは、トレーニング中に非発話テキスト発声320が観察されるたびに新しい話者および韻律条件付け値を有利にサンプリングし、その後の観察で多様な合成発声をもたらす。したがって、各バッチは合成発声と実際の(非合成)発声の両方を含む。損失寄与は、損失マスクσを使用することによってマスクされ得る(式4を参照)ので、適切なバッチ要素について損失が計算される。
【0046】
いくつかの例では、オーディオエンコーダ210は、マルチヘッド自己アテンション機構を各々含む自己アテンション層のスタックを含む。たとえば、自己アテンション層のスタックは、コンフォーマ層またはトランスフォーマ層のスタックを含み得る。図示の例では、オーディオエンコーダ210は、コンフォーマブロックのスタックを含むコンフォーマエンコーダを含み、各コンフォーマブロックは、一連のマルチヘッド自己アテンション層、深さ方向畳み込み層、およびフィードフォワード層を含む。コンフォーマエンコーダ210は、当然ながら、畳み込みサブサンプリングブロック212を含む特徴エンコーダと、線形層214およびコンフォーマブロック216のスタックを含むコンテキストネットワークとに分割することができる。いくつかの実装形態では、畳み込みサブサンプリングブロック212は、両方ともストライド(2、2)を有する2つの2次元畳み込み層を有し、その結果、特徴シーケンス長が4分の1に短縮される。畳み込みサブサンプリングブロック212は、各合成された音声表現332、各転写された非合成音声発声304、および各転写されていない非合成音声発声306に関連付けられた入力特徴/ベクトルのシーケンス(たとえば、図1の音響フレーム110のようなメル周波数スペクトログラム)を入力として受信し、複数の出力ステップの各々について、合成された音声表現332のうちの1つ、転写された非合成音声発声304のうちの1つ、または転写されていない非合成音声発声306のうちの1つのそれぞれに対応する符号化特徴211を出力として生成する。
【0047】
畳み込みサブサンプリングブロック212から出力された符号化特徴211は、マスキングモジュール218に供給され、符号化特徴211の一部がランダムに選択され、対応するマスクされた符号化特徴211mを提供するために、すべてのマスクされた時間ステップ間で共有されるトレーニングされた特徴ベクトルと置き換えられる。いくつかの例では、マスキングモジュール218は、すべての時間ステップのある割合pを開始インデックスとして置換なしでランダムにサンプリングすることによって、マスキングのためにランダムに選択された符号化特徴211をマスクし、次いで、すべてのサンプルインデックスから後続のM個の連続する時間ステップをマスクし、これにより、一部のスパンが重複する可能性がある。マスキングが適用された後、コンテキストネットワークの線形層214およびコンフォーマブロック216は、マスクされた符号化特徴211mを受信し、マスクされた符号化特徴211mから対応する対照的コンテキストベクトル(すなわち、対応する符号化表現)215を出力する。さらに、量子化器217は、符号化特徴211を入力として受信し、量子化ベクトル(すなわち、ターゲットコンテキストベクトル)219を出力として生成する。その後、対照的損失モジュール315は、マスク位置の対照的コンテキストベクトル215とターゲットコンテキストベクトル219との間の対照的損失(Lw2v)316を次のように導出する。
【0048】
【数6】
【0049】
式中、ctは、マスクされた時間ステップtを中心とする対照的コンテキストベクトル215であり、qtは、qtおよびK個のディストラクタを含むK+1個の候補ターゲットコンテキストベクトル219のセットにおける、時間ステップtにおけるターゲットコンテキストベクトル219を表す。ディストラクタは、同じ発声の他のマスクされた時間ステップから一様にサンプリングされ得る。
【0050】
対照的損失316は、マスク位置の対照的コンテキストベクトル215とターゲットコンテキストベクトル219との間で最適化される。事前トレーニングされたオーディオエンコーダ210は、転写されていない非合成音声発声306に収束した後、合成音声表現332と転写された非合成音声発声304の両方で事前トレーニング手順が繰り返される。したがって、対照的損失316は、図3Bを参照して以下でさらに詳細に説明するように、転写された非合成音声発声304および合成音声表現332に対する追加の補助的な損失を伴って、実際の/人間の(非合成)特徴と合成(TTSオーディオ)の特徴の両方に対して最適化される。したがって、トレーニングプロセス300は、オーディオエンコーダ210への入力として提供される各合成音声表現332、各転写された非合成音声発声304、および各転写されていない非合成音声発声306に関連付けられた対応する符号化特徴211に適用される導出された対照的損失316を基にして、オーディオエンコーダ210を事前トレーニングする。オーディオエンコーダ210の事前トレーニングは、対照的損失に基づいてオーディオエンコーダのパラメータを更新することを含み得る。
【0051】
図3Bを参照すると、トレーニングプロセス300の教師あり損失部300bは、転写された非合成音声発声304および非発話テキスト発声320に対してTTSシステム330によって生成された合成音声表現332から導出された教師あり損失項342、344に基づいて、事前トレーニング中にオーディオエンコーダ210に語彙情報を注入するように構成される。特に、教師あり損失部300bは、教師あり損失項344、346を生成するために、1つまたは複数の補助デコーダ390を活用している。補助デコーダ390は、Connectionist Temporal Classification(CTC)デコーダ、Listen Attend Spell(LAS)デコーダ、またはRNN-Tデコーダを含み得る。これらの補助デコーダ390は、音素のシーケンスを復号するように構成された音素デコーダまたはワードピースのシーケンスを復号するように構成されたワードピースデコーダの少なくとも一方を含み得る。補助デコーダ390は、書記素のシーケンスを復号するように構成された書記素デコーダも含み得る。いくつかの例では、トレーニングプロセス300は、合成音声表現332のサンプル発声の少なくとも1つにデータ拡張を適用し、所与の非発話トレーニングテキスト発声320に対して1つまたは複数の語彙的に多様な合成音声表現332を提供する。データ拡張には、限定はしないが、対応する音声表現にノイズを加える、タイミングを操作する(たとえば、ストレッチング)、残響を加えることを含み得る。データ拡張は、合成音声表現332に異なる合成録音条件を追加し得る。
【0052】
教師あり損失部300b中、オーディオエンコーダ210は、特徴/ベクトル(たとえば、図1の音響フレーム110のようなメル周波数スペクトログラム)のシーケンスとして、非発話テキスト発声320から生成された各合成音声表現332を入力として受信し、複数の時間ステップの各々について、対応する時間ステップにおける合成音声表現332に対応する第1の符号化表現(etext)312を出力として生成する。音素デコーダまたはワードピースデコーダを含む補助デコーダ390は、オーディオエンコーダ310から出力された各第1の符号化表現312を入力として受信し、対応する時間ステップにおける対応する合成音声表現332に対する可能な合成音声認識仮説にわたる第1の確率分布392を出力として生成する。いくつかの例では、可能な合成音声認識仮説にわたる第1の確率分布392は、可能な音素ラベルまたは可能なワードピースラベルのうちの一方を含む。その後、教師あり損失モジュール340は、可能な合成音声認識仮説にわたる第1の確率分布392と、対応する非発話テキスト発声320とに基づいて、合成音声損失項342を決定し得る。ここで、合成音声表現332が生成される対応する非発話テキスト発声320は、グラウンドトゥルース転写としても機能する。教師あり損失部300bは、オーディオエンコーダ210のパラメータを更新することによって、合成音声損失項342を基にして、オーディオエンコーダ210を事前トレーニングし得る。
【0053】
同様に、教師あり損失部300b中、オーディオエンコーダ210は、特徴/ベクトル(たとえば、図1の音響フレーム110のようなメル周波数スペクトログラム)のシーケンスとして、各転写された非合成音声発声304を入力として受信し、複数の時間ステップの各々について、対応する時間ステップにおける転写された非合成音声発声304に対応する第2の符号化表現(esup)314を出力として生成する。音素デコーダまたはワードピースデコーダを含む補助デコーダ390は、オーディオエンコーダ310から出力された各第2の符号化表現314を入力として受信し、対応する時間ステップにおける対応する転写された非合成音声発声304に対する可能な非合成音声認識仮説にわたる第2の確率分布394を出力として生成する。いくつかの例では、可能な合成音声認識仮説にわたる第2の確率分布394は、可能な音素ラベルまたは可能なワードピースラベルのうちの一方を含む。その後、教師あり損失モジュール340は、可能な非合成音声認識仮説にわたる第2の確率分布394と、転写された非合成音声発声304とペアにされる対応する転写302とに基づいて、非合成音声損失項344を決定し得る。ここで、対応する転写302は、グランドトゥルース転写として機能し、ターゲット音素および/またはターゲットワードピースのシーケンスを含み得る。教師あり損失部300bは、オーディオエンコーダ210のパラメータを更新することによって、非合成音声損失項344を基にして、オーディオエンコーダ210を事前トレーニングし得る。
【0054】
いくつかの実装形態では、トレーニングプロセス300の教師あり損失部300bは、別の補助デコーダ390を使用して、対応する時間ステップにおける合成音声表現332に対する第1の符号化表現(etext)312に基づいて、可能な合成音声認識仮説にわたる第3の確率分布393を生成し、これにより、教師あり損失モジュール340は、第3の確率分布および合成音声表現に対応する非発話テキスト発声320に基づいて、別の合成音声損失項342を決定し得る。ここで、他方の補助デコーダ390は、音素デコーダまたはワードピースデコーダのうちの他方を含み、可能な合成音声認識仮説にわたる第3の確率分布393は、可能な音素ラベルまたは可能なワードピースラベルのうちの他方を含む。これらの実装形態では、他の補助デコーダ290はまた、対応する時間ステップにおける対応する転写された非合成音声発声304に対する可能な非合成音声認識仮説にわたる第4の確率分布395を生成し、これにより、教師あり損失モジュール340は、第4の確率分布395と、転写された非合成音声発声304とペアになる対応する転写302とに基づいて、別の非合成音声損失項344を決定し得る。ここで、可能な非合成音声認識仮説にわたる第4の確率分布395は、可能な音素ラベルまたは可能なワードピースラベルのうちの他方を含む。トレーニングプロセス300の教師あり損失部300bは、同様に、他の合成音声損失項342および他の非合成音声損失項344を基にして、オーディオエンコーダ210を事前トレーニングすることができる。
【0055】
転写されていない非合成音声発声306および非発話テキスト発声320は各々、非発話テキスト発声(Xtext)320から導出された対照的損失(Lw2v)316(図3A)を、合成音声損失項342に関連付けられた教師あり損失Jauxと組み合わせて、次のように非発話テキスト損失関数Jtextを取得することができる「ペアにされない」トレーニングデータに対応する。
Jtext=Lw2v (x│θe )+Laux (y│x,θe,θ_d ) (2)
同様に、転写されていない非合成音声発声(Xunsup)306から導出された対照的損失(Lw2v)316(図3A)を使用して、教師なし音声損失関数、Junsup_speechを次のように表すことができる。
Junsup_speech= Jw2v (x*│θe ) (3)
【0056】
オーディオエンコーダ210の事前トレーニング中に、合成音声表現332と転写されていない非合成音声発声306が各バッチ内で混合される。オーディオエンコーダ210に合成音声と非合成音声(人間の/実際の)音声の両方に有効な表現を学習させるために、式2および式3の損失関数JtextおよびJunsup_speechを組み合わせるとき、損失マスクσが適用されて、ペアにされないデータ損失関数Junpairedが次のように取得される。
Junpaired=σ Jtext+(1-σ) Jspeech (4)
【0057】
転写された非合成音声発声304は、「ペアにされた」および「教師あり」トレーニングデータに対応し、これにより、導出された対照的損失(Lw2v)316(図3A)および非合成音声損失項344に関連付けられた導出された教師あり損失Jauxが組み合わされて、ペアにされたデータ損失関数Jpairedが次のように取得され得る。
Jpaired=Lw2v (x│θe )+Laux (y│x,θed ) (5)
【0058】
図3Cを参照すると、トレーニングプロセス300の一貫性正則化部300cは、転写された非合成音声発声(Xsup)304のうちの対応する1つを各々含むトレーニング用発声ペア301と、対応する転写された非合成音声発声304と同じ発声のペアの合成音声表現334との間で一貫性損失項(Jcons(θ))352を生成することによって、非合成音声(たとえば、実際の/人間の音声)と合成音声との間の一貫性予測を学習するようにオーディオエンコーダ210を促進するように構成されている。したがって、転写された非合成音声発声304と、各トレーニング発声のペアにされた合成音声表現は、同じグランドトゥルース転写に関連付けられる。要するに、同じトレーニング発声の非合成音声表現と合成音声表現との間の一貫性損失項は、トレーニング発声が非合成音声に属するか合成音声に属するかに関係なく、また、グランドトゥルース転写302と、補助デコーダ390によって出力される非合成音声認識仮説、および補助デコーダ390によって出力される合成音声認識仮説の各々との間の教師あり損失項とは無関係に、オーディオエンコーダ210が一貫して動作するように促すことによって、教師なしトレーニングの側面を提供する。
【0059】
図3Bの非発話テキスト発声320から生成された合成音声表現332と同様に、TTSシステム330は、転写された非合成音声発声304とペアにされる対応する転写302に対してテキスト音声変換を実行することにより、各ペアになった合成音声表現334を生成し得る。ここで、転写された非合成音声発声304は、グラウンドトゥルース転写302に関連付けられたテキストを合成オーディオに変換することによって、TTSシステム330によって生成された合成音声に関連付けられる。TTSシステム330は、グランドトゥルース転写(y*)302を変換するときに話者埋め込みzを適用して、話者埋め込みに関連付けられた特定の話し方および韻律を有する合成音声を取得し得る。ここで、グランドトゥルース転写(y*)302は、教師ありデータ拡張のためのソースと関連付けられており、TTSシステム330が、グランドトゥルース転写(y*)302に関連付けられた転写された非合成音声発声(Xsup)304と一致することが期待されるペアの合成音声表現334を生成する。いくつかの例では、トレーニングプロセス300は、転写された非合成音声発声304、またはトレーニング用発声ペア301の少なくとも1つのペアの合成音声表現334のうちの少なくとも一方にデータ拡張を適用する。データ拡張には、限定はしないが、対応する音声表現にノイズを加える、タイミングを操作する(たとえば、ストレッチング)、残響を加えることを含み得る。
【0060】
一貫性正則化部300c中、オーディオエンコーダ210は、特徴/ベクトル(たとえば、図1の音響フレーム110のようなメル周波数スペクトログラム)のシーケンスとして、各ペアの合成音声表現334を入力として受信し、複数の時間ステップの各々について、対応する時間ステップにおけるペアの合成音声表現334に対応する拡張符号化表現(e* sup)313を出力として生成する。音素デコーダまたはワードピースデコーダを含む補助デコーダ390は、オーディオエンコーダ210から出力された各拡張符号化表現313を入力として受信し、対応する時間ステップにおける対応するペアの合成音声表現334に対する可能な合成音声認識仮説にわたる第1の確率分布311を出力として生成する。いくつかの例では、可能な合成音声認識仮説にわたる第1の確率分布311は、可能な音素ラベルまたは可能なワードピースラベルのうちの一方を含む。
【0061】
同様に、オーディオエンコーダ210は、特徴/ベクトル(たとえば、図1の音響フレーム110のようなメル周波数スペクトログラム)のシーケンスとして、各転写された非合成音声発声304を入力として受信し、複数の時間ステップの各々について、対応する時間ステップにおける転写された非合成音声発声304に対応する非拡張符号化表現(esup)314を出力として生成する。音素デコーダまたはワードピースデコーダを含む補助デコーダ390は、オーディオエンコーダ310から出力された各非拡張符号化表現314を入力として受信し、対応する時間ステップにおける対応する転写された非合成音声発声304に対する可能な非合成音声認識仮説にわたる第2の確率分布394を出力として生成する。いくつかの例では、可能な合成音声認識仮説にわたる第2の確率分布394は、可能な音素ラベルまたは可能なワードピースラベルのうちの一方を含む。
【0062】
引き続き図3Cを参照すると、トレーニングプロセス300の一貫性正則化部300cは、可能な非合成音声認識仮説にわたる第1の確率分布311および可能な非合成音声認識仮説にわたる第2の確率分布394に基づいて、各トレーニング用発声ペア301の複数の時間ステップの各々において、対応するトレーニング用発声ペア301の一貫性損失項(Jcons(θ))352をさらに決定する。たとえば、トレーニングプロセス300は、各時間ステップにおいて、補助デコーダ390によって出力された対応する非合成音声および合成音声認識結果311、394を受信し、時間ステップにおいて対応するトレーニング用発声ペア301の一貫性損失項352を決定するように構成された一貫性損失項モジュール350を利用してよい。
【0063】
いくつかの例では、トレーニングプロセス300の一貫性正則化部300cは、可能な合成音声認識仮説にわたる第1の確率分布311と、可能な非合成音声認識仮説にわたる第2の確率分布394との間のカルバックライブラー(Kullback-Leibler)ダイバージェンス(DKL)に基づいて一貫性損失項352を決定する。DKLに基づく一貫性損失項352は、以下の式で表すことができる。
【0064】
【数7】
【0065】
ここで、各時間ステップにおいてトレーニング用発声ペア301について決定された一貫性損失項352は、補助デコーダ390の正確さに依存しない(たとえば、図3Bの教師あり損失項342、344に依存しない)「教師なし」損失項を提供し、したがって、同じ発声の非合成音声表現と合成音声表現との間の一貫性を促進するための、オーディオエンコーダ210のパラメータを更新するのに利用されてよい。バッチトレーニングでは、一貫した損失項352は、バッチについて取得された平均損失項に対応し得る。言い換えると、一貫性損失項352は、オーディオエンコーダ210が、トレーニング用発声が非合成音声に属すか合成音声に属すかにかかわらず、同じように振る舞う、たとえば、同じトレーニング用発声の非合成音声(たとえば、実際の/人間の音声)と合成音声(たとえば、合成音声)の両方に対して一貫性符号化表現予測を行うことを学習するのを許可する。
【0066】
最後に、トレーニングプロセス300は、ペアにされないデータ損失関数(Junpaired)、ペアになっているデータ損失関数(Jpaired)、および一貫性損失項(Jcons)を組み合わせて、次のように表され得る全体的な損失項Jtts4pretrain2を取得することができる。
Jtts4pretrain2= Junpaired1 Jpaired+λ2 Jcons (7)
式中、λ1は1.0に等しく、λ2は0.1に等しい可能性がある。トレーニングプロセス300は、オーディオエンコーダ210のパラメータを更新することにより、全体的な損失項Jtts4pretrain2を使用してオーディオエンコーダ210を事前トレーニングし、音声とテキストとの間の共有表現を学習するようにオーディオエンコーダ210に効果的に教えることができる。オーディオエンコーダ210を事前トレーニングした後、トレーニングプロセス300は、合成(たとえば、合成音声)と非合成(たとえば、人間の音声)の両方の教師ありトレーニングサンプルを含むことができる転写された音声発声に対して、事前トレーニングされたオーディオエンコーダを微調整することができる。
【0067】
いくつかの実装形態では、オーディオエンコーダ210を事前トレーニングするためのトレーニングプロセス300は、エンコーダの一貫性正則化を適用する。仮説ラベル(たとえば、転写302および非発話テキスト発声320)を必要とする一貫性正則化部300c中に補助デコーダに適用されるデコーダ一貫性正則化とは異なり、エンコーダ一貫性正則化は、仮説ラベルを必要とせず、したがって、すべてのトレーニングデータ304、306、320に適用することができるという利点を有する。エンコーダの一貫性正則化は、階層的対照的一貫性正則化(HCCR)技法を介して適用することができ、元の/非拡張音声および拡張音声からのエンコーダ活性化e、e*は、補助ネットワークを介して投影され、z、z*が生成される。その後、正負のペアが構成され、対照的損失lt,z,z*が以下のように計算される。
【0068】
【数8】
【0069】
HCCRに固有の、畳み込みニューラルネットワーク(CNN)投影ネットワークは、エンコーダ活性化eの長さが長くなるセグメント(30、50、120ms)における投影を計算して、3つのビュー(V)を生成し、短いセグメントの同じ発声から、および120msのセグメントを有するバッチ内の他の発声から負の例を引き出し得る。したがって、転写された非合成音声発声304(ペアの音声)、転写されていない非合成音声発声306(非ペアの音声)、および非発話テキスト発声320から生成された合成音声表現(合成音声)に対して、HCCR損失が次のように計算され得る。
【0070】
【数9】
【0071】
式9によって計算されるHCCR損失は、オーディオエンコーダ210の事前トレーニングに使用するための全体的な損失項Jtts4pretrain2の一部として、1e-3の係数で式7に追加され得る。
【0072】
図4を参照すると、対照的非発話テキスト選択プロセス400は、大規模な非発話テキストコーパス402からオーディオエンコーダ210の事前トレーニングに使用される非発話テキスト発声320を選択することができ、これにより、選択された非発話テキスト発声320は、オーディオエンコーダ210が学習するために事前トレーニングされている特定の領域に最も類似している。すなわち、テキスト選択プロセス400は、オーディオエンコーダ210の事前トレーニングに使用する非発話テキスト発声320に含めるために、非発話テキストコーパス402から領域内および領域近傍の非発話テキストを識別することができる。特に、テキスト選択プロセス400によって選択された非発話テキスト発声320は、非発話テキスト発声320がバッチ内にあるたびに、zおよび潜在変数Zを埋め込む新しい話者がサンプリングされ得るように、バッチ構築中にオンザフライで異なる発声を合成することを可能にする。
【0073】
非発話テキストのコーパス402は、広範囲の領域中からの多数の非発話トレーニングテキスト発声320、320a-nを含み、それにおいてオーディオエンコーダ210が学習するようにトレーニングされている特定の領域よりもはるかに大きい言語多様性を含む。前述したように、転写された非合成音声発声304のセットは、それらが特定の領域に関連し、各転写された非合成音声発声304が対応する転写302とペアにされるという点で、領域固有であり得る。非発話テキストのコーパス402は、発話された転写された非合成音声発声(すなわち、トレーニング発声)304と同じまたは異なるデータストア401に記憶され得る。非発話テキストのコーパス402は、新しい非発話テキスト発声320を組み込むように動的に変化してよい。非発話テキストコーパス402の中のすべての非発話テキスト発声320を単に使用することは、以下の理由で実現可能でなく、すなわち、i)各文に対して、音声モダリティは、符号化されるためにテキストよりもはるかに多くのメモリを必要とし、それによって、非発話テキストコーパス402中の全テキストを変換することが実行不可能になる、ii)転写された非合成音声発声304とペアにされる転写302と、非発話テキストコーパス402中の非発話テキスト発声320との間の膨大な量の違いは、それらの寄与の釣合いをとるために知的戦略を要する。
【0074】
テキスト選択プロセス400は、TTS合成のためのデータとして、非発話テキストコーパス402から利用可能な非発話テキスト発声320のサブセットを選択することを目的とし、これにより、図3Aおよび図3Bを参照して上述したトレーニングプロセス300の対照的損失および教師あり損失部300a、300bの間にオーディオエンコーダ210を事前トレーニングするために生成された合成音声表現332が得られる。別の言い方をすれば、テキスト選択プロセス400は、利用可能な非発話テキスト発声320の選択されたサブセットと、ターゲットにされている特定の領域との間の一致を向上させ、それによって、次に、大量の非領域固有データを活用するために必要とされる計算リソースを低減することを目的とする。したがって、テキスト選択プロセス400は、オーディオエンコーダ210が学習するようにトレーニングされている特定の領域に最良合致する非発話テキスト発声320を選択することによって、計算およびメモリコストを削減する。
【0075】
いくつかの例では、テキスト選択プロセス400は、非発話テキストコーパス402全体において事前にトレーニングされた背景LM406への入力として、特定の領域に関連付けられた領域識別子(図示せず)を単に提供することによって、特定の領域に最良に一致する、非発話テキストコーパス402からの利用可能な非発話テキスト発声320のサブセットを選択する。前述のように、非発話テキストコーパス402は、多数の異なる領域にわたる。これらの例では、背景LM406は、その内容全体が参照により本明細書に組み込まれる、2014年2月12日に出願された米国特許第9,842,592号に記載されているように、入力として領域識別子を随意に受け入れることが可能な最大エントロピー(MaxEnt LM)を含み得る。ここで、特定の領域に関連付けられた領域識別子は、MaxEnt LMが、特定の領域に関係する単語および/または句を含む可能性のある、非発話テキストコーパス402からの利用可能な非発話テキスト発声320のサブセットを出力することを可能にし得る。いくつかの構成では、単語の尤度を評価するのではなく、統計学的言語モデルは、特定の領域に関係する単語の統計分布に一致するテキスト句をランダムに生成するために、リバースモードで動作する。
【0076】
追加的な例では、また図4に示されているように、テキスト選択プロセス400は、人間の話者によって発話された転写された非合成音声発声304とペアにされる転写302を使用して、利用可能な非発話テキスト発声320のサブセットのうち、特定の領域に最も一致するものを非発話テキストコーパス402から選択する。ここで、転写された非合成音声発声304は、特定の領域に関係する単語、句、および/または他の専門用語を含む。随意に、転写された非合成音声発声304とペアにされる転写302に加えて、またはその代わりに、特定の領域に関係する異なる転写された発声のセットが、非発話テキスト発声320を選択するために使用され得る。このことは、すべての転写された非合成音声発声304が特定の領域に属することを必要としない利点を提供するようになる。
【0077】
第1の段階(段階A)の間、非発話テキスト選択プロセス400は、2つの言語モデル404、406を、非発話テキスト発声320の対照的選択を可能にするように組み立てる。ここで、領域固有言語LM410は、転写された非合成音声発声304のセット中の各転写302でトレーニングされる。転写された非合成音声発声304のセットは、オーディオエンコーダ210が学習するためにトレーニングされている特定の領域に属すると想定される。一方、背景LM406は、非発話テキストコーパス402全体における各非発話テキスト発声320においてトレーニングされる。前述のように、非発話テキストコーパス402は、多数の異なる領域にわたる。いくつかの例では、第1の段階は、nグラム言語モデルトレーニングを使用して、2つの言語モデル404、406を構築する。他の例では、第1の段階は、ニューラルネットワーク言語モデルトレーニングを使用して、2つの言語モデル404、406を構築する。
【0078】
第2の状態(段階B)の間、非発話テキスト選択プロセス400は、領域固有LM404中に現れる非発話テキスト発声320の中の各単語に関連付けられた第1の確率、すなわち
【0079】
【数10】
【0080】
を決定すること、およびバックグラウンドLM406中に現れる非発話テキスト発声320の中の各単語に関連付けられた第2の確率、すなわち
【0081】
【数11】
【0082】
を決定することによって、非発話テキストコーパス402の中の各非発話テキスト発声320を評価するのに、2つの対照的LM404、406を使用する。その後、非発話テキストコーパス402中の各非発話テキスト発声320について、テキスト選択プロセス400は、スコアラー408において、第1の確率、第2の確率、および対応する非発話テキスト発声320の中に現れる単語の数、すなわち#(w)に基づいてスコア、すなわちSを決定する。たとえば、各非発話テキスト発声320についてのスコアSは、次のように算出することができる。
【0083】
【数12】
【0084】
スコアを決定した後、非発話テキスト選択プロセス400は、NベストスコアSをもつ非発話テキスト発声320を、これらの非発話テキスト発声320が特定の領域に最良合致するとき、選択する。非発話テキストコーパス402は、数十億の非発話テキスト発声320を含み得る。テキスト選択プロセス400によって選択された非発話テキスト発声320は、何百万もの発声を含むことができるため、人間の話者によって発話される転写されていない非合成音声発声306の数をはるかに超える。上述したように、非発話テキスト発声320の内容は、オーディオエンコーダ210が学習するようにトレーニングされている特定の領域に対する言語的多様性を増加させ、非発話テキスト発声320から生成された対応する合成音声表現332は、オーディオエンコーダ210がASRモデル200内に統合されているときに、音声認識プロセスの一部としてオーディオエンコーダ210が符号化している音声に対する音響的/語彙的多様性を増加させる。
【0085】
図5は、合成(TTS)および非合成(実際の/人間の)音声発声のエンコーダ表現の例示的な投影空間500を示す。オーディオエンコーダの事前トレーニングのために、図3Cの一貫性正則化部300cを介して一貫性正則化を導入した後、結果として得られる学習された音声およびテキストエンコーダ表現は、一貫性正則化が適用されないときの音声およびテキストエンコーダ表現と比較して、互いにはるかに近い状態を維持する。したがって、投影空間500は、オーディオエンコーダ210を事前トレーニングするための教師ありトレーニングデータ(すなわち、転写された非合成音声発声)の使用が、改善された共有音声およびテキスト表現を効果的に生成することを示している。
【0086】
図6は、音声およびテキストの共有表現を共同で学習するためにオーディオエンコーダ210を事前トレーニングする方法600の動作の例示的な配置のフローチャートである。方法600は、メモリハードウェア720(図7)に記憶された命令を使用して、データ処理ハードウェア710(図7)上で実行され得る。データ処理ハードウェア710およびメモリハードウェア720は、コンピューティングデバイス700(図7)に対応する図1のリモートコンピュータ/サーバ201に常駐し得る。
【0087】
動作602において、方法600は、非発話テキスト発声320、転写されていない非合成音声発声306、および転写された非合成音声発声304を含むトレーニングデータを受信することを含み得る。各非発話テキスト発声320は、非合成音声のいかなる対応する発話された発声ともペアにされない。各転写されていない非合成音声発声306は、対応する転写とペアにされない。各転写された非合成音声発声304は、対応する転写302とペアにされる。
【0088】
動作604において、方法600はまた、テキスト音声(TTS)システム330を使用して、受信されたトレーニングデータの非発話テキスト発声320ごとに対応する合成音声表現332を生成することも含む。動作606において、方法はまた、共有された音声およびテキスト表現を共同で学習するようオーディオエンコーダ210に教えるために、非発話テキスト発声320、転写されていない非合成音声発声306、および転写された非合成音声発声304のために生成された合成音声表現332を基にしてオーディオエンコーダ210を事前トレーニングするステップを含む。事前トレーニングは、合成音声表現332、転写されていない非合成音声発声306、および転写された非合成音声発声304の各々から導出される対照的損失315に基づいて、オーディオエンコーダ210を事前トレーニングすることを含み得る。事前トレーニングはまた、合成音声表現332および転写された非合成音声発声304から導出される教師あり損失342、344(たとえば、補助デコーダ損失)に基づいてオーディオエンコーダ210を事前トレーニングすることも含み得る。最後に、事前トレーニングは、転写された非合成音声発声304から導出される一貫性損失352に基づいてオーディオエンコーダ210を事前トレーニングすることをさらに含み得る。
【0089】
ソフトウェアアプリケーション(すなわち、ソフトウェアリソース)は、コンピューティングデバイスにタスクを実行させるコンピュータソフトウェアを指すことがある。いくつかの例では、ソフトウェアアプリケーションは、「アプリケーション」、「アプリ」、または「プログラム」と呼ばれる場合がある。例示的アプリケーションは、限定はしないが、システム診断アプリケーション、システム管理アプリケーション、システム保守アプリケーション、文書処理アプリケーション、表計算アプリケーション、メッセージングアプリケーション、メディアストリーミングアプリケーション、ソーシャルネットワーキングアプリケーション、およびゲーム用アプリケーションを含む。
【0090】
非一時的メモリは、プログラム(たとえば、命令のシーケンス)またはデータ(たとえば、プログラム状態情報)を、コンピューティングデバイスによる使用のために、一時的または永続的に記憶するために使用される物理デバイスであり得る。非一時的メモリは、揮発性および/または不揮発性アドレス可能半導体メモリであってよい。不揮発性メモリの例は、フラッシュメモリおよび読取り専用メモリ(ROM)/プログラマブル読取り専用メモリ(PROM)/消去可能プログラマブル読取り専用メモリ(EPROM)/電子的消去可能プログラマブル読取り専用メモリ(EEPROM)(たとえば、通常は、ブートプログラムなどのファームウェアのために使用される)を含むが、それに限定されない。揮発性メモリの例は、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM)、相変化メモリ(PCM)ならびにディスクまたはテープを含むが、それに限定されない。
【0091】
図7は、本明細書で説明するシステムおよび方法を実装するために使用され得る、例示的なコンピューティングデバイス700の概略図である。コンピューティングデバイス700は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータなど、様々な形態のデジタルコンピュータを表すことを意図している。ここに示される構成要素、それらの接続および関係、ならびにそれらの機能は、例示であることのみを意図しており、本明細書で説明および/または請求する本発明の実装形態を限定することは意図していない。
【0092】
コンピューティングデバイス700は、プロセッサ710と、メモリ720と、記憶デバイス730と、メモリ720および高速拡張ポート750に接続する高速インターフェース/コントローラ740と、低速バス770および記憶デバイス730に接続する低速インターフェース/コントローラ760とを含む。構成要素710、720、730、740、750、および760の各々は、様々なバスを使用して相互接続され、共通マザーボード上に、または適宜に他の方法で搭載され得る。プロセッサ710は、グラフィカルユーザインターフェース(GUI)についてのグラフィカル情報を、高速インターフェース740に結合されたディスプレイ780などの外部入力/出力デバイス上に表示するための、メモリ720中または記憶デバイス730上に記憶された命令を含む、コンピューティングデバイス700内での実行のための命令を処理することができる。他の実装形態では、複数のプロセッサおよび/または複数のバスが、必要に応じて、複数のメモリおよび複数のタイプのメモリとともに使用されてよい。また、複数のコンピューティングデバイス700が接続されてよく、各デバイスは、必要な動作の部分を(たとえば、サーババンク、ブレードサーバのグループ、またはマルチプロセッサシステムとして)提供する。
【0093】
メモリ720は、コンピューティングデバイス700内に情報を非一時的に記憶する。メモリ720は、コンピュータ可読媒体、揮発性メモリユニット、または不揮発性メモリユニットであってよい。非一時的メモリ720は、プログラム(たとえば、命令のシーケンス)またはデータ(たとえば、プログラム状態情報)を、コンピューティングデバイス700による使用のために、一時的または永続的に記憶するのに使用される物理デバイスであってよい。不揮発性メモリの例は、フラッシュメモリおよび読取り専用メモリ(ROM)/プログラム可能読取り専用メモリ(PROM)/消去可能プログラマブル読取り専用メモリ(EPROM)/電子的消去可能プログラマブル読取り専用メモリ(EEPROM)(たとえば、通常は、ブートプログラムなどのファームウェア用に使用される)を含むが、それに限定されない。揮発性メモリの例は、ランダムアクセスメモリ(RAM)、動的ランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM)、相変化メモリ(PCM)ならびにディスクまたはテープを含むが、それに限定されない。
【0094】
記憶デバイス730は、コンピューティングデバイス700用の大容量記憶を提供することが可能である。いくつかの実装形態では、記憶デバイス730は、コンピュータ可読媒体である。様々な異なる実装形態では、記憶デバイス730は、フロッピーディスクデバイス、ハードディスクデバイス、光ディスクデバイス、またはテープデバイス、フラッシュメモリもしくは他の同様のソリッドステートメモリデバイス、あるいは、ストレージエリアネットワークまたは他の構成におけるデバイスを含むデバイスのアレイであり得る。追加の実装形態では、コンピュータプログラム製品が、情報キャリア中で有形に実施される。コンピュータプログラム製品は、実行されると、上記で説明したものなど、1つまたは複数の方法を実行する命令を含む。情報キャリアは、メモリ720、記憶デバイス730、またはプロセッサ710上のメモリなどの、コンピュータ可読媒体または機械可読媒体である。
【0095】
高速コントローラ740は、コンピューティングデバイス700のための帯域幅集約的な動作を管理するが、低速コントローラ760は、帯域幅低集約的な動作を管理する。義務のそのような割振りは、例示的なものにすぎない。いくつかの実装形態において、高速コントローラ740は、メモリ720、ディスプレイ780に(たとえば、グラフィックスプロセッサまたはアクセラレータを通して)、および様々な拡張カード(図示せず)を受ける場合がある高速拡張ポート750に結合される。いくつかの実装形態において、低速コントローラ760は、記憶デバイス730および低速拡張ポート790に結合される。低速拡張ポート790は、様々な通信ポート(たとえば、USB、Bluetooth、イーサネット、ワイヤレスイーサネット)を含み得るが、キーボード、ポインティングデバイス、スキャナなど、1つもしくは複数の入力/出力デバイス、またはスイッチもしくはルータなどのネットワークデバイスに、たとえば、ネットワークアダプタを通して結合され得る。
【0096】
コンピューティングデバイス700は、図に示すように、いくつかの異なる形態で実装され得る。たとえば、コンピューティングデバイス700は、標準的なサーバ700aとして、もしくはそのようなサーバ700aのグループで複数回、またはラップトップコンピュータ700bとして、またはラックサーバシステム700cの一部として実装され得る。
【0097】
本明細書で説明するシステムおよび技法の様々な実装形態は、デジタル電子および/もしくは光回路、集積回路、特別に設計されたASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、ならびに/またはそれらの組合せで実現され得る。これらの様々な実装形態は、少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステム上で実行可能および/または解釈可能な1つまたは複数のコンピュータプログラムにおける実装形態を含むことができ、プログラマブルプロセッサは、記憶システム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスからデータおよび命令を受信するように、かつそれらにデータおよび命令を送信するように結合された、専用または汎用であってもよい。
【0098】
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーションまたはコードとしても知られている)は、プログラマブルプロセッサ用の機械命令を含み、高水準手続き型および/もしくはオブジェクト指向プログラミング言語で、ならびに/またはアセンブリ/機械言語で実装され得る。本明細書で使用する「機械可読媒体」および「コンピュータ可読媒体」という用語は、機械命令を機械可読信号として受信する機械可読媒体を含むプログラマブルプロセッサに、機械命令および/またはデータを提供するために使用される、任意のコンピュータプログラム製品、非一時的コンピュータ可読媒体、装置および/またはデバイス(たとえば、磁気ディスク、光ディスク、メモリ、プログラマブル論理デバイス(PLD))を指す。「機械可読信号」という用語は、プログラマブルプロセッサに機械命令および/またはデータを提供するために使用される任意の信号を指す。
【0099】
本明細書で説明するプロセスおよび論理フローは、入力データに対して動作し、出力を生成することによって機能を実行するための1つまたは複数のコンピュータプログラムを実行する、データ処理ハードウェアとも呼ばれる1つまたは複数のプログラマブルプロセッサによって実行され得る。プロセスおよび論理フローは、専用論理回路、たとえば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)によっても実行され得る。コンピュータプログラムの実行に適したプロセッサは、例として、汎用および専用マイクロプロセッサの両方、ならびに任意の種類のデジタルコンピュータの任意の1つまたは複数のプロセッサを含む。概して、プロセッサは、読取り専用メモリもしくはランダムアクセスメモリまたは両方から、命令およびデータを受信することになる。コンピュータの本質的要素は、命令を実行するためのプロセッサ、ならびに命令およびデータを記憶するための1つまたは複数のメモリデバイスである。概して、コンピュータは、データを記憶するための1つまたは複数の大容量記憶デバイス、たとえば、磁気、光磁気ディスク、または光ディスクも含み、あるいは大容量記憶デバイスからデータを受信し、もしくはデータを転写し、または両方を行うように大容量記憶デバイスに動作可能に結合される。ただし、コンピュータは、そのようなデバイスを有する必要はない。コンピュータプログラム命令およびデータを記憶するのに適したコンピュータ可読媒体は、例として、半導体メモリデバイス、たとえば、EPROM、EEPROM、およびフラッシュメモリデバイスと、磁気ディスク、たとえば、内部ハードディスクまたは取外し可能ディスクと、光磁気ディスクと、CD-ROMおよびDVD-ROMディスクとを含む、すべての形態の不揮発性メモリ、媒体およびメモリデバイスを含む。プロセッサおよびメモリは、専用論理回路によって補完され得るか、専用論理回路に組み込まれ得る。
【0100】
ユーザとの対話を可能にするために、本開示の1つまたは複数の態様は、ユーザに情報を表示するためのディスプレイデバイス、たとえば、CRT(陰極線管)、LCD(液晶ディスプレイ)モニタ、またはタッチスクリーンと、随意に、それによってユーザがコンピュータに入力を与えることができるキーボードおよびポインティングデバイス、たとえば、マウスまたはトラックボールとを有する、コンピュータ上で実装され得る。他の種類のデバイスも、ユーザとの対話を提供するために使用されてよく、たとえば、ユーザに提供されるフィードバックは、任意の形態の感覚フィードバック、たとえば、視覚フィードバック、聴覚フィードバック、または触覚フィードバックであってよく、ユーザからの入力は、音響、音声、または触覚入力を含む、任意の形態で受信されてよい。さらに、コンピュータは、ユーザによって使われるデバイスへドキュメントを送信し、デバイスからドキュメントを受信することによって、たとえば、ウェブブラウザから受信された要求に応答して、ユーザのクライアントデバイス上のウェブブラウザへウェブページを送信することによって、ユーザと対話することができる。
【0101】
いくつかの実装形態について説明した。それにもかかわらず、本開示の趣旨および範囲から逸脱することなく、様々な修正が行われ得ることが理解されよう。したがって、他の実装形態が、以下の特許請求の範囲内にある。
【符号の説明】
【0102】
100 自動化音声認識(ASR)システム
102 ユーザデバイス
104 ユーザ
106 発声
107 ユーザインターフェースジェネレータ
108 オーディオサブシステム
110 音響フレーム
111 データ処理ハードウェア
113 メモリハードウェア
120 転写
200 ASRモデル
200 RNN-Tモデル
200a トランスデューサモデル
201 リモートコンピューティングデバイス
210 エンコーダネットワーク
210 オーディオエンコーダ
211 符号化特徴
211m マスクされた符号化特徴
212 畳み込みサブサンプリングブロック
214 線形層
215 対照的コンテキストベクトル
215 符号化表現
216 コンフォーマブロック
217 量子化器
218 マスキングモジュール
219 ターゲットコンテキストベクトル
220 予測ネットワーク
230 共同ネットワーク
240 ソフトマックス層
300 トレーニングプロセス
301 トレーニング用発声ペア
302 転写
300a 対照的自己教師あり損失部
300b 教師あり損失部
300c 一貫性正則化部
301 トレーニング用発声ペア
302 転写
304 転写された非合成音声発声
306 転写されていない非合成音声発声
312 第1の符号化表現
314 第2の符号化表現
315 対照的損失モジュール
316 対照的損失
320 非発話テキスト発声
330 テキスト声音声変換(TTS)システム
332 合成音声表現
334 ペアの合成音声表現
340 教師あり損失モジュール
342 教師あり損失項
344 教師あり損失項
346 教師あり損失項
350 一貫性損失項モジュール
352 一貫性損失
390 補助デコーダ
392 第1の確率分布
393 第3の確率分布
394 第2の確率分布
395 第4の確率分布
400 対照的非発話テキスト選択プロセス
401 データストア
402 非発話テキストコーパス
404 領域内言語モデル
404 領域固有LM
406 背景言語モデル
408 スコアラー
410 領域固有言語LM
500 投影空間
600 方法
700 コンピューティングデバイス
700a サーバ
700b ラップトップコンピュータ
700c ラックサーバシステム
710 データ処理ハードウェア
710 プロセッサ
720 メモリ
730 記憶デバイス
740 高速インターフェース/コントローラ
750 高速拡張ポート
760 低速インターフェース/コントローラ
770 低速バス
780 ディスプレイ
790 低速拡張ポート
図1
図2
図3A
図3B
図3C
図4
図5
図6
図7
【国際調査報告】