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

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

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

特表2024-515713非ストリーミングモデル蒸留によるストリーミング自動音声認識の改善
<>
  • 特表-非ストリーミングモデル蒸留によるストリーミング自動音声認識の改善 図1
  • 特表-非ストリーミングモデル蒸留によるストリーミング自動音声認識の改善 図2A
  • 特表-非ストリーミングモデル蒸留によるストリーミング自動音声認識の改善 図2B
  • 特表-非ストリーミングモデル蒸留によるストリーミング自動音声認識の改善 図2C
  • 特表-非ストリーミングモデル蒸留によるストリーミング自動音声認識の改善 図3A
  • 特表-非ストリーミングモデル蒸留によるストリーミング自動音声認識の改善 図3B
  • 特表-非ストリーミングモデル蒸留によるストリーミング自動音声認識の改善 図4
  • 特表-非ストリーミングモデル蒸留によるストリーミング自動音声認識の改善 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-04-10
(54)【発明の名称】非ストリーミングモデル蒸留によるストリーミング自動音声認識の改善
(51)【国際特許分類】
   G10L 15/06 20130101AFI20240403BHJP
   G10L 15/16 20060101ALI20240403BHJP
【FI】
G10L15/06 300Y
G10L15/16
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023564589
(86)(22)【出願日】2022-04-20
(85)【翻訳文提出日】2023-12-12
(86)【国際出願番号】 US2022025649
(87)【国際公開番号】W WO2022226128
(87)【国際公開日】2022-10-27
(31)【優先権主張番号】63/179,084
(32)【優先日】2021-04-23
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】17/348,118
(32)【優先日】2021-06-15
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.BLUETOOTH
(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)【発明者】
【氏名】ルオミン・パン
(72)【発明者】
【氏名】アルン・ナラヤナン
(72)【発明者】
【氏名】アナンヤ・ミスラ
(72)【発明者】
【氏名】ユ・ジャン
(72)【発明者】
【氏名】リアンリアン・カオ
(57)【要約】
ストリーミング自動音声認識(ASR)生徒モデル(152)をトレーニングするための方法(400)は、複数のラベルなし生徒トレーニング発話(220)を受信するステップを含む。本方法はまた、ラベルなし生徒トレーニング発話ごとに、複数の非ストリーミングASR教師モデル(210)を使用して、それぞれのラベルなし生徒トレーニング発話に対応するトランスクリプト(212)を生成するステップを含む。本方法は、複数の非ストリーミングASR教師モデルによって生成された対応するトランスクリプトとペアになった複数のラベルなし生徒トレーニング発話を使用してストリーミングASR生徒モデルをトレーニングすることによって、複数の非ストリーミングASR教師モデルからストリーミングASR生徒モデルを蒸留するステップをさらに含む。
【特許請求の範囲】
【請求項1】
データ処理ハードウェア(144)によって遂行されるとき、前記データ処理ハードウェア(144)に、
複数のラベルなし生徒トレーニング発話(222)を受信するステップと、
ラベルなし生徒トレーニング発話(222)ごとに、複数の非ストリーミング自動音声認識(ASR)教師モデル(210)を使用して、前記それぞれのラベルなし生徒トレーニング発話(222)に対応するトランスクリプト(212)を生成するステップと、
前記複数の非ストリーミングASR教師モデル(210)によって生成された前記対応するトランスクリプト(212)とペアになった前記複数のラベルなし生徒トレーニング発話(222)を使用して前記ストリーミングASR生徒モデル(152)をトレーニングすることによって、前記複数の非ストリーミングASR教師モデル(210)からストリーミングASR生徒モデル(152)を蒸留するステップと
を備える動作を実行させる、コンピュータ実装方法(400)。
【請求項2】
前記それぞれのラベルなし生徒トレーニング発話(222)に対応する前記トランスクリプト(212)を生成するステップが、
前記複数の非ストリーミングASR教師モデル(210)における入力として、前記それぞれのラベルなし生徒トレーニング発話(222)を受信するステップと、
各非ストリーミングASR教師モデル(210)において、前記それぞれのラベルなし生徒トレーニング発話(222)の初期トランスクリプト(212)を予測するステップと、
前記それぞれのラベルなし生徒トレーニング発話(222)について予測された各非ストリーミングASR教師モデル(210)の前記初期トランスクリプト(212)に基づいて、前記複数の非ストリーミングASR教師モデル(210)によって出力される前記それぞれのラベルなし生徒トレーニング発話(222)の前記トランスクリプト(212)を生成するステップと
を備える、請求項1に記載の方法(400)。
【請求項3】
前記それぞれのラベルなし生徒トレーニング発話(222)について予測された各非ストリーミングASR教師モデル(210)の前記初期トランスクリプト(212)に基づいて、前記複数の非ストリーミングASR教師モデル(210)によって出力される前記それぞれのラベルなし生徒トレーニング発話(222)の前記トランスクリプト(212)を生成するステップが、出力投票を使用して前記トランスクリプト(212)を構築するステップを備える、請求項2に記載の方法(400)。
【請求項4】
出力投票を使用して前記トランスクリプト(212)を構築するステップが、
フレームのシーケンスを定義するために、各非ストリーミングASR教師モデル(210)からの前記初期トランスクリプト(212)を調整するステップと、
各初期トランスクリプト(212)をトランスクリプト(212)セグメント(242)に分割するステップであって、各トランスクリプト(212)セグメントがそれぞれのフレームに対応する、ステップと、
それぞれのフレームごとに、すべての初期トランスクリプト(212)で最も繰り返されたトランスクリプト(212)セグメントを選択するステップと、
前記トランスクリプト(212)を形成するために、それぞれのフレームの前記最も繰り返されたトランスクリプト(212)セグメントを連結するステップと
を備える、請求項3に記載の方法(400)。
【請求項5】
前記ストリーミングASR生徒モデル(152)が、リカレントニューラルネットワークトランスデューサ(RNN-T)アーキテクチャを備える、請求項1から4のいずれか一項に記載の方法(400)。
【請求項6】
前記ストリーミングASR生徒モデル(152)がコンフォーマベースのエンコーダを備える、請求項1から5のいずれか一項に記載の方法(400)。
【請求項7】
各非ストリーミングASR教師モデル(210)が、コネクショニスト時間分類(CTC)アーキテクチャを備える、請求項1から6のいずれか一項に記載の方法(400)。
【請求項8】
前記CTCアーキテクチャが、それぞれの発話のコンテキスト情報をキャプチャするように構成された言語モデルを備える、請求項7に記載の方法(400)。
【請求項9】
各非ストリーミングASR教師モデル(210)がコンフォーマベースのエンコーダを備える、請求項1から8のいずれか一項に記載の方法(400)。
【請求項10】
前記複数の非ストリーミングASR教師モデル(210)が少なくとも2つの異なるリカレントニューラルネットワークアーキテクチャを備える、請求項1から9のいずれか一項に記載の方法(400)。
【請求項11】
第1の非ストリーミングASR教師モデル(210)がリカレントニューラルネットワークアーキテクチャを備え、第2の非ストリーミングASR教師モデル(210)がコネクショニスト時間分類(CTC)アーキテクチャを備える、請求項10に記載の方法(400)。
【請求項12】
データ処理ハードウェア(144)と、
前記データ処理ハードウェア(144)と通信するメモリハードウェア(146)と
を備え、前記メモリハードウェア(146)が、前記データ処理ハードウェア(144)上で遂行されるとき、データ処理ハードウェア(144)に、
複数のラベルなし生徒トレーニング発話(222)を受信することと、
ラベルなし生徒トレーニング発話(222)ごとに、複数の非ストリーミング自動音声認識(ASR)教師モデル(210)を使用して、前記それぞれのラベルなし生徒トレーニング発話(222)に対応するトランスクリプト(212)を生成することと、
前記複数の非ストリーミングASR教師モデル(210)によって生成された前記対応するトランスクリプト(212)とペアになった前記複数のラベルなし生徒トレーニング発話(222)を使用して前記ストリーミングASR生徒モデル(152)をトレーニングすることによって、前記複数の非ストリーミングASR教師モデル(210)からストリーミングASR生徒モデル(152)を蒸留することと
を備える動作を実行させる命令を記憶する、システム(100)。
【請求項13】
前記それぞれのラベルなし生徒トレーニング発話(222)に対応する前記トランスクリプト(212)を生成することが、
前記複数の非ストリーミングASR教師モデル(210)における入力として、前記それぞれのラベルなし生徒トレーニング発話(222)を受信することと、
各非ストリーミングASR教師モデル(210)において、前記それぞれのラベルなし生徒トレーニング発話(222)の初期トランスクリプト(212)を予測することと、
前記それぞれのラベルなし生徒トレーニング発話(222)について予測された各非ストリーミングASR教師モデル(210)の前記初期トランスクリプト(212)に基づいて、前記複数の非ストリーミングASR教師モデル(210)によって出力される前記それぞれのラベルなし生徒トレーニング発話(222)の前記トランスクリプト(212)を生成することと
を備える、請求項12に記載のシステム(100)。
【請求項14】
前記それぞれのラベルなし生徒トレーニング発話(222)について予測された各非ストリーミングASR教師モデル(210)の前記初期トランスクリプト(212)に基づいて、前記複数の非ストリーミングASR教師モデル(210)によって出力される前記それぞれのラベルなし生徒トレーニング発話(222)の前記トランスクリプト(212)を生成することが、出力投票を使用して前記トランスクリプト(212)を構築することを備える、請求項13に記載のシステム(1000。
【請求項15】
出力投票を使用して前記トランスクリプト(212)を構築することが、
フレームのシーケンスを定義するために、各非ストリーミングASR教師モデル(210)からの前記初期トランスクリプト(212)を調整することと、
各初期トランスクリプト(212)をトランスクリプト(212)セグメント(242)に分割することであって、各トランスクリプト(212)セグメントがそれぞれのフレームに対応する、分割することと、
それぞれのフレームごとに、すべての初期トランスクリプト(212)で最も繰り返されたトランスクリプト(212)セグメントを選択することと、
前記トランスクリプト(212)を形成するために、それぞれのフレームの前記最も繰り返されたトランスクリプト(212)セグメントを連結することと
を備える、請求項14に記載のシステム(100)。
【請求項16】
前記ストリーミングASR生徒モデル(152)が、リカレントニューラルネットワークトランスデューサ(RNN-T)アーキテクチャを備える、請求項12から15のいずれか一項に記載のシステム(100)。
【請求項17】
前記ストリーミングASR生徒モデル(152)がコンフォーマベースのエンコーダを備える、請求項12から16のいずれか一項に記載のシステム(100)。
【請求項18】
各非ストリーミングASR教師モデル(210)が、コネクショニスト時間分類(CTC)アーキテクチャを備える、請求項12から17のいずれか一項に記載のシステム(100)。
【請求項19】
前記CTCアーキテクチャが、それぞれの発話のコンテキスト情報をキャプチャするように構成された言語モデルを備える、請求項18に記載のシステム(100)。
【請求項20】
各非ストリーミングASR教師モデル(210)がコンフォーマベースのエンコーダを備える、請求項12から19のいずれか一項に記載のシステム(100)。
【請求項21】
前記複数の非ストリーミングASR教師モデル(210)が少なくとも2つの異なるリカレントニューラルネットワークアーキテクチャを備える、請求項12から20のいずれか一項に記載のシステム(100)。
【請求項22】
第1の非ストリーミングASR教師モデル(210)がリカレントニューラルネットワークアーキテクチャを備え、第2の非ストリーミングASR教師モデル(210)がコネクショニスト時間分類(CTC)アーキテクチャを備える、請求項21に記載のシステム(100)。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、非ストリーミングモデル蒸留(distillation)によるストリーミング自動音声認識(ASR)を改善することに関する。
【背景技術】
【0002】
音声認識システムは、今日の多くの日常アプリケーションにおいて音声をテキストにトランスクリプトするために使用されている。これらの音声認識システムは、スマートホームデバイスまたはスマートフォンなどのユーザデバイスに組み込まれたり、クラウド関連サービスにおいて使用されたりすることがある。通常、音声認識システムはストリーミングシステムまたは非ストリーミングシステムのいずれかになるように設計されている。非ストリーミング音声認識システムには、音声をトランスクリプトする際にオーディオのシーケンス全体を利用する機会が与えられるが、オーディオの完全なシーケンスを考慮するには、非ストリーミング音声認識システムはトランスクリプトを生成する前に音声シーケンス全体を受信する必要がある。対照的に、ストリーミング音声認識システムは、ユーザシスタントおよびリアルタイムキャプションなどのリアルタイム音声認識タスクのために開発された。しかし、ストリーミングの制約により、これらのストリーミング音声認識システムはオーディオシーケンスの完全なコンテキストを利用することができず、非ストリーミングの対応するシステムよりもパフォーマンスが低下する傾向がある。ストリーミング音声認識システムと非ストリーミング音声認識システムのパフォーマンスに差があるため、ストリーミング音声認識システムのパフォーマンスを向上させる必要がある。
【発明の概要】
【課題を解決するための手段】
【0003】
本開示の一態様は、ストリーミング自動音声認識生徒モデルをトレーニングするためのコンピュータ実装方法を提供する。本方法は、データ処理ハードウェアによって遂行されるとき、データ処理ハードウェアに動作を実行させる。本動作は、複数のラベルなし生徒トレーニング発話を受信するステップを含む。本動作はまた、ラベルなし生徒トレーニング発話ごとに、複数の非ストリーミング自動音声認識(ASR)教師モデルを使用して、それぞれのラベルなし生徒トレーニング発話に対応するトランスクリプトを生成するステップを含む。本動作は、複数の非ストリーミングASR教師モデルによって生成された対応するトランスクリプトとペアになった複数のラベルなし生徒トレーニング発話を使用してストリーミングASR生徒モデルをトレーニングすることによって、複数の非ストリーミングASR教師モデルからストリーミングASR生徒モデルを蒸留するステップをさらに含む。
【0004】
本開示の別の態様は、ストリーミング自動音声認識生徒モデルをトレーニングするためのシステムを提供する。本システムは、データ処理ハードウェアと、データ処理ハードウェアと通信するメモリハードウェアとを含む。本メモリハードウェアは、データ処理ハードウェア上で遂行されるとき、データ処理ハードウェアに動作を実行させる命令を記憶する。本動作は、複数のラベルなし生徒トレーニング発話を受信することを含む。本動作はまた、ラベルなし生徒トレーニング発話ごとに、複数の非ストリーミング自動音声認識(ASR)教師モデルを使用して、それぞれのラベルなし生徒トレーニング発話に対応するトランスクリプトを生成することを含む。本動作は、複数の非ストリーミングASR教師モデルによって生成された対応するトランスクリプトとペアになった複数のラベルなし生徒トレーニング発話を使用してストリーミングASR生徒モデルをトレーニングすることによって、複数の非ストリーミングASR教師モデルからストリーミングASR生徒モデルを蒸留することをさらに含む。
【0005】
本開示のコンピュータ実装方法またはシステムの実装形態は、以下のオプション機能のうちの1つまたは複数を含み得る。いくつかの実装形態では、それぞれのラベルなし生徒トレーニング発話に対応するトランスクリプトを生成するステップは、複数の非ストリーミングASR教師モデルにおける入力として、それぞれのラベルなし生徒トレーニング発話を受信するステップと、各非ストリーミングASR教師モデルにおいて、それぞれのラベルなし生徒トレーニング発話の初期トランスクリプトを予測するステップと、それぞれのラベルなし生徒トレーニング発話について予測された各非ストリーミングASR教師モデルの初期トランスクリプトに基づいて、複数の非ストリーミングASR教師モデルによって出力されるそれぞれのラベルなし生徒トレーニング発話のトランスクリプトを生成するステップとを含む。これらの実装形態では、それぞれのラベルなし生徒トレーニング発話について予測された各非ストリーミングASR教師モデルの初期トランスクリプトに基づいて、複数の非ストリーミングASR教師モデルによって出力されるそれぞれのラベルなし生徒トレーニング発話のトランスクリプトを生成するステップは、出力投票を使用してトランスクリプトを構築するステップを含む。出力投票を使用してトランスクリプトを構築するステップは、フレームのシーケンスを定義するために、各非ストリーミングASR教師モデルからの初期トランスクリプトを調整するステップと、各初期トランスクリプトをトランスクリプトセグメントに分割するステップであって、各トランスクリプトセグメントはそれぞれのフレームに対応する、ステップと、それぞれのフレームごとに、すべての初期トランスクリプトで最も繰り返されたトランスクリプトセグメントを選択するステップと、トランスクリプトを形成するために、それぞれのフレームの最も繰り返されたトランスクリプトセグメントを連結するステップとを含む。
【0006】
本方法またはシステムのこれらの実装形態では、ストリーミングASR生徒モデルは、リカレントニューラルネットワークトランスデューサ(RNN-T)アーキテクチャを含み得る。ストリーミングASR生徒モデルは、コンフォーマベース(conformer-based)のエンコーダを含み得る。各非ストリーミングASR教師モデルは、コネクショニスト時間分類(CTC)アーキテクチャを含み得る。ここで、CTCアーキテクチャは、それぞれの発話のコンテキスト情報をキャプチャするように構成された言語モデルを含む。各非ストリーミングASR教師モデルは、コンフォーマベースのエンコーダを含み得る。いくつかの例では、複数の非ストリーミングASR教師モデルは、少なくとも2つの異なるリカレントニューラルネットワークアーキテクチャを含む。これらの例では、第1の非ストリーミングASR教師モデルはリカレントニューラルネットワークアーキテクチャを含み、第2の非ストリーミングASR教師モデルはコネクショニスト時間分類(CTC)アーキテクチャを含む。
【0007】
本開示の1つまたは複数の実施形態の詳細は、添付の図面および以下の説明に記載される。他の態様、特徴、および利点は、説明および図面、ならびに特許請求の範囲から明らかになるであろう。
【図面の簡単な説明】
【0008】
図1】ストリーミング自動音声認識(ASR)生徒モデルを使用した例示的な音声環境の概略図である。
図2A】非ストリーミングASR教師モデルを使用してストリーミングASR生徒モデルをトレーニングするための例示的なトレーニングプロセスの概略図である。
図2B】非ストリーミングASR教師モデルを使用してストリーミングASR生徒モデルをトレーニングするための例示的なトレーニングプロセスの概略図である。
図2C】非ストリーミングASR教師モデルを使用してストリーミングASR生徒モデルをトレーニングするための例示的なトレーニングプロセスの概略図である。
図3A】非ストリーミングASR教師モデルのアンサンブルを使用してストリーミングASR生徒モデルをトレーニングするための例示的なトレーニングプロセスの概略図である。
図3B】非ストリーミングASR教師モデルのアンサンブルを使用してストリーミングASR生徒モデルをトレーニングするための例示的なトレーニングプロセスの概略図である。
図4】ストリーミングASR生徒モデルをトレーニングする方法の動作の例示的な配置を示すフローチャートである。
図5】本明細書で説明されるシステムおよび方法を実装するために使用され得る例示的なコンピューティングデバイスの概略図である。
【発明を実施するための形態】
【0009】
様々な図面における同様の参照符号は同様の要素を示す。
【0010】
自動音声認識(ASR)システムは、音声対応デバイスの要求をサポートするために絶えず開発され続けている。音声対応デバイスは、オンデバイスアプリケーションを含む様々な機能用のASRシステムを組み込んでいるため、オンデバイスの期待に応えるためにASRシステムが信頼されている。これらのオンデバイスの期待は、ユーザエクスペリエンスに悪影響を及ぼさない人間とコンピュータとの対話を容易にするために遅延を最小限に抑えた音声トランスクリプトを含む。遅延を最小限に抑える必要があるため、リモート通信では本質的にある程度の遅延が発生するため、これらのユーザデバイスまたは音声対応デバイスは通常、リモートASRシステム(たとえば、リモートコンピューティングシステム上に配置されたASRシステム)を活用することができない。音声対応デバイスは、最小限の遅延を要求することに加えて、多くの場合、デバイス上でローカルに利用できるリソースの量に関して制約を受ける。これらの理由により、ASRシステムは、オンデバイスの音声認識タスクにエンドツーエンドのストリーミングモデルを使用するように進化してきた。
【0011】
ストリーミングASRモデルは、リアルタイム(または、ほぼリアルタイム)で音声を文字に起こすために使用され得る、ASRシステムに展開された音声認識モデルを指す。リアルタイムでトランスクリプトを実行するために、ストリーミングASRモデルはフレームごとにトランスクリプト結果(すなわち、仮説または予測)を生成および更新する。フレームごとのトランスクリプト手法では、ストリーミングASRモデルは、所与の音声入力の将来のコンテキストをほとんど、またはまったく考慮しない。すなわち、ストリーミングASRモデルが2つの音声文を入力として受信する場合、ストリーミングASRモデルは、トランスクリプトを生成するために、入力の完全なコンテキストである2つの文を利用することはできないが、ストリーミングASRモデルが2つの文の一部(たとえば、単語片のフレーム)を受信するときにトランスクリプト結果を生成する。対照的に、非ストリーミングASRモデルは、そのトランスクリプト結果を生成するために、所与の音声入力の完全なコンテキストを活用する。したがって、非ストリーミングASRモデルが2つの音声文を入力として受信する場合、そのトランスクリプトを作成するために2つの文全体を考慮する。オンデバイスの音声認識タスクがストリーミングASRモデルを使用するようになった理由の1つは、音声入力全体を考慮してトランスクリプト結果を生成するための適切なメモリを確保するために、非ストリーミングASRモデルがかなり大規模なモデルになる可能性があるためである。このため、これらの非ストリーミングASRモデルはリソースを大量に消費する可能性があるため、非ストリーミングASRモデルはオンデバイスではなくリモートで展開されることがよくある。したがって、ストリーミングASRモデルは、非ストリーミングASRモデルと比較して、よりコンパクトなメモリフットプリントを提供し得、通常、ストリーミングASRモデルをオンデバイスでの使用により適するものにする。
【0012】
残念ながら、ストリーミングASRモデルがオンデバイスでますます一般的になるにつれて、ストリーミングASRモデルにも失敗(setbacks)がないわけではない。たとえば、フレームごとに動作することによって、ストリーミングASRモデルには非ストリーミングASRモデルのコンテキスト上の利点が得られない。言い換えれば、モデルがそのトランスクリプト結果を生成するために利用する可能性のあるコンテキストに関して制約を受けると、トランスクリプトの全体的な精度が低下する可能性がある。さらに、音声認識デバイスのユーザは、結果が常に最も正確であるとは限らない場合でも、音声認識システム(すなわち、ASRシステム)がリアルタイムまたはストリーミング方式で実行されることを好む場合がある。このトレードオフは広く受け入れられているが、特に非ストリーミングASRモデルなどのASRモデルが存在し、対応するストリーミングモデルよりもトランスクリプトパフォーマンスが優れている傾向があるという事実を考慮すると、トランスクリプト精度に関しては改善の余地も残されている。
【0013】
ストリーミングASRモデルのトランスクリプトパフォーマンスに対処するために、本明細書で説明する実装形態は、ストリーミングASR生徒モデルのトランスクリプトを生成するために非ストリーミングASRモデルを教師として利用することを目的としている。次いで、非ストリーミング教師モデルによって生成されたトランスクリプトは、知識をストリーミングASRモデルに蒸留するために使用され得る。この点で、非ストリーミングASRモデルは教師モデルとして機能するが、蒸留プロセスによって教えられるストリーミングASRモデルは生徒モデルである。ストリーミングASRモデルをトレーニングするためにこの蒸留手法を使用すると、ストリーミングASR生徒モデルは、非ストリーミングASR教師モデルの向上したトランスクリプト精度の一部が組み込まれた、所与の音声入力のトランスクリプトを生成する方法を学習する。すなわち、完全なコンテキストASRモデル(すなわち、非ストリーミングASRモデル)はストリーミングASRモデルよりもパフォーマンスが優れているため、非ストリーミングASRモデルは、より堅牢なストリーミングASR生徒モデルを育成する強力な教師として機能し得る。たとえば、実験では、ストリーミングASR生徒モデルの単語誤り率(すなわち、一般的な音声認識パフォーマンス指標)が、従来の手段で教えられたストリーミングASRモデルと比較して減少することが示されている。さらに、ストリーミングASR生徒モデルのトレーニングのために直接使用される非ストリーミングASR教師モデルを使用してトランスクリプトを生成することによって、この手法はアライメントの不一致などの問題を訂正するために追加の蒸留事前トレーニングを回避するという点で、この手法は比較的効率的である。
【0014】
蒸留手法には、様々な言語のASRモデル(たとえば、フランス語のストリーミングASRモデル、またはスペイン語のストリーミングASRモデル)に変換できるいくつかの利点もある。よくある問題の1つは、特定の言語でデータが不足している可能性があることである。つまり、現在、その特定の言語に対する適切なトレーニングデータのコーパスは存在しない。これにはいくつかの理由が考えられるが、そのような理由の1つは、通常、ASRモデルをトレーニングするために使用されるオーディオサンプルを、オーディオサンプルの対応するラベルまたはトランスクリプトと組み合わせる必要があることである。残念ながら、オーディオサンプルの不足に悩まされている一部の言語では、オーディオサンプルが対応するラベルを有することはさらにまれである。この事実だけでも、モデルが特定の予測精度レベルに達しているかどうかをラベルがトレーニングプロセスに通知するだけでなく、エンドツーエンド(E2E)モデルがデータを大量に消費することで悪名高いため、ストリーミングASRモデルのトレーニングが困難になる。一般的に、音声認識モデルは、各モデルが専用の目的を有していた複数のモデルから、オーディオ波形(すなわち、入力シーケンス)を出力文(すなわち、出力シーケンス)に直接マッピングするために単一のニューラルネットワークが使用される統合モデルに進化した。この統合により、オーディオ特徴のシーケンスが与えられると単語のシーケンス(または、書記素)を生成する、シーケンス対シーケンスの手法が実現した。統合された構造により、モデルのすべてのコンポーネントが、単一のE2Eニューラルネットワークとして共同でトレーニングされ得る。ここで、E2Eモデルは、アーキテクチャ全体がニューラルネットワークで構成されるモデルを指す。完全なニューラルネットワークは、外部および/または手動で設計されたコンポーネント(たとえば、有限状態トランスデューサ、辞書、またはテキスト正規化モジュール)なしで機能する。さらに、E2Eモデルをトレーニングする際、これらのモデルは通常、デシジョンツリーからのブートストラップや別のシステムからのタイムアライメントを必要としないが、多くの場合、大量のトレーニングデータのコーパスが必要になる。この要求により、E2EストリーミングASRモデルは特定の言語では実現できない可能性がある。しかし、教師と生徒の蒸留手法を使用すると、ストリーミングASR生徒モデルは、ラベルなしオーディオサンプルを使用して特定の言語でトレーニングされる可能性がある。たとえば、ラベルを予測する(すなわち、所与のオーディオサンプルのトランスクリプトを生成する)ようにすでにトレーニングされている非ストリーミングASR教師モデルは、ストリーミングASR生徒モデルのトレーニングデータセットを形成するために、ラベルなしオーディオサンプルを、非ストリーミングASR教師モデルによって生成された対応するラベルとペアにすることができるように、ラベルなしオーディオサンプルのラベルを生成する。したがって、これにより、ストリーミングASR生徒モデルをラベルなしオーディオサンプルから蒸留できるようになる。
【0015】
いくつかの構成では、ストリーミングASR生徒モデルは、複数の教師モデルから知識を蒸留して学習する。すなわち、最終的なトランスクリプトを形成するために複数の非ストリーミングASR教師モデルからのトランスクリプトを組み合わせて、次いで、ストリーミングASR生徒モデルをトレーニングするために蒸留プロセスにおいて使用される。この手法では、最終的なトランスクリプトは、任意の単一の教師モデルにおいて発生する可能性のある誤りを減らすように機能する。いくつかの実装形態では、ストリーミングASRモデルが複数の教師モデルから学習する場合、教師モデルは、最終的なトランスクリプトに多様に寄与する様々なタイプのニューラルネットワークを含む。たとえば、教師モデルは、コネクショニスト時間分類(CTC)モデル、リカレントニューラルネットワークトランスデューサ(RNN-T)モデル、コンフォーマモデルなど、またはそれらの任意の組合せを含み得る。教師モデルの多様なアンサンブルを使用すると、最終的なトランスクリプトは、どの単一のモデルよりも正確になる可能性がある(たとえば、任意の特定のモデルタイプの固有の制限により)。
【0016】
図1を参照すると、いくつかの実装形態では、音声環境のシステム100は、音声対応デバイス(デバイス110またはユーザデバイス110とも呼ばれる)と対話するためのユーザ対話12を提供するユーザ10を含む。ここで、ユーザ対話12は、デバイス110からの応答を求める、またはデバイス110にクエリによって指定されたタスクを遂行させるためのクエリまたはコマンドに対応する話された発話12、12Uである。この意味で、ユーザ10は、コンピューティング活動を実行したり、質問に対する答えを見つけたりするために、音声対応デバイス110と会話対話を行うことができる。
【0017】
デバイス110は、音声環境内の1人または複数のユーザ10から音声などのユーザ対話12をキャプチャするように構成されている。ユーザ10によって話された発話12Uは、デバイス110によってキャプチャされ、動作/タスクを実行するためにデバイス110上で遂行されるデジタルアシスタントインターフェース120に対するクエリまたはコマンドに対応し得る。デバイス110は、ユーザ10に関連付けられ、オーディオ信号を受信できる任意のコンピューティングデバイスに対応し得る。ユーザデバイス110のいくつかの例は、モバイルデバイス(たとえば、モバイル電話、タブレット、ラップトップ、電子書籍リーダなど)、コンピュータ、ウェアラブルデバイス(たとえば、スマートウォッチ)、音楽プレーヤ、キャスティングデバイス、スマート家電(たとえば、スマートテレビ)、モノのインターネット(IoT)デバイス、リモコン、スマートスピーカなどを含むが、これらに限定されない。デバイス110は、データ処理ハードウェア112と、データ処理ハードウェア112と通信し、データ処理ハードウェア112によって遂行されるとき、データ処理ハードウェア112に音声処理に関連する1つまたは複数の動作を実行させる命令を記憶するメモリハードウェア114とを含む。
【0018】
デバイス110は、音声環境内のオーディオデータをキャプチャして電気信号に変換するためのオーディオキャプチャリングデバイス(たとえば、1つまたは複数のマイクロフォンのアレイ)116を備えたオーディオサブシステムをさらに含む。図示される例では、デバイス110がオーディオキャプチャリングデバイス116(一般にマイクロフォン116とも呼ばれる)を実装しているが、オーディオキャプチャリングデバイス116はデバイス110上に物理的に常駐しないが、オーディオサブシステム(たとえば、デバイス110の周辺機器)と通信していてもよい。たとえば、デバイス110は、車両全体に配置されたマイクロフォンのアレイを活用する車両インフォテインメントシステムに対応し得る。
【0019】
音声対応インターフェース(たとえば、デジタルアシスタントインターフェース)120は、デバイス110によってキャプチャされた話された発話12Uにおいて伝えられるクエリまたはコマンドをフィールド化し得る。音声対応インターフェース120(インターフェース120またはアシスタントインターフェース120とも呼ばれる)は、一般に、発話12Uに対応するオーディオデータ124の受信と、応答122を生成するためのオーディオデータ124に対する音声処理または発話12Uから生じる他の活動との調整を容易にする。インターフェース120は、デバイス110のデータ処理ハードウェア112上で遂行し得る。インターフェース120は、発話12Uを含むオーディオデータ124を音声処理に関連する様々なシステムに運ぶ(channel)ことができる。たとえば、図1は、インターフェース120が音声認識システム150(たとえば、自動音声認識(ASR)システム)と通信することを示している。ここで、インターフェース120は、発話12Uに対応するオーディオデータ124を受信し、オーディオデータ124を音声認識システム150に提供する。いくつかの構成では、インターフェース120は、デバイス110のマイクロフォン116と音声認識システム150との間のオープン通信チャネルとして機能する。言い換えれば、マイクロフォン116は、オーディオストリーム16内の発話12Uをキャプチャし、インターフェース120は、オーディオストリーム16から変換された発話12Uに対応するオーディオデータ124を、処理のために音声認識システム150に通信する。より具体的には、音声認識システム150は、発話12Uのトランスクリプト154を生成するためにオーディオデータ124を処理する音声認識モデル152を含み、実行するべき適切なアクションを識別するために、トランスクリプト154に対して意味解釈を実行し得る。デバイス110においてユーザ10と対話するために使用されるインターフェース120は、インターフェース120の機能を遂行するように構成された任意のタイプのプログラムまたはアプリケーションであり得る。たとえば、インターフェース120は、デバイス110上でホストされる、またはデバイス110と通信する他のプログラムとインターフェースするアプリケーションプログラミングインターフェース(API)である。
【0020】
特に図1の例を参照すると、ユーザ10による発話12Uは、「誰がアレキサンダ大王を教えたのですか?」と述べている。ここで、インターフェース120によって発話12Uが受信されると、インターフェース120は、「誰がアレキサンダ大王を教えたのですか?」というクエリに対応するキャプチャされたオーディオデータを処理のために音声認識システム150に中継することになる。いくつかの例では、発話12Uは、デバイス110の(スリープまたは休止状態からの)ウェイクアップをトリガし、ホットワードおよび/またはホットワードに続く1つまたは複数の用語について音声認識を開始する、先行する呼出しフレーズとしてホットワードを含み得る。たとえば、ホットワード検出システム(たとえば、音声認識または意味分析を実行せずにホットワードを示す音響特徴を検出するように構成されたニューラルネットワークベースのモデル)によるホットワードの検出は、マイクロフォン116を開くためにインターフェース120をトリガし、「誰がアレキサンダ大王を教えたのですか?」というクエリに対応する、その後にキャプチャされたオーディオデータを、処理のために音声認識システム150に中継する。
【0021】
オーディオストリーム16内の発話12Uの受信に応答して、インターフェース120は、この発話12Uに対応するオーディオデータ124を音声認識システム150に中継し、音声認識システム150は、発話12Uの音声認識結果(たとえば、トランスクリプト)154を生成するために、オーディオデータ124に対して音声認識を実行する。音声認識システム150および/またはインターフェース120は、発話12Uがアレキサンダ大王を教育した人物の身元に関する検索クエリに対応すると決定するために、音声認識結果154に対して意味解釈を実行する。ここで、インターフェース120は、「誰がアレキサンダ大王を教えたのですか?」というクエリに対して「アリストテレス」を検索して検索結果162を返す検索エンジン160にトランスクリプト154を提出し得る。インターフェース120は、この「アリストテレス」の検索結果162を検索エンジン160から受信し、発話12Uのクエリに対する応答122として「アリストテレス」をユーザ10に伝える。いくつかの例では、応答122は、デバイス110から可聴出力される合成音声を含む。
【0022】
いくつかの実装形態では、デバイス110は、ネットワーク130を介してリモートシステム140と通信する。リモートシステム140は、リモートデータ処理ハードウェア144(たとえば、リモートサーバまたはCPU)および/またはリモートメモリハードウェア146(たとえば、リモートデータベースまたは他のストレージハードウェア)などのリモートリソース142を含み得る。デバイス110は、音声処理に関連する様々な機能を実行するために、リモートリソース142を利用し得る。たとえば、検索エンジン160は、リモートシステム140上に常駐し得る。一例では、音声認識システム150は、オンデバイスで自動音声認識(ASR)を実行するためにデバイス110上に常駐し得る。ここで、図1は、これらのコンポーネントがオンデバイス110またはサーバ側(すなわち、リモートシステム140)に常駐し得ることを示すために、点線のボックス内に検索エンジン160を示している。
【0023】
ここで、ASRモデル152は、リモートシステム140ではなくオンデバイスで展開されるストリーミングASR生徒モデル152である。これは、モデル152が、音声認識を実行するためにデバイス110のローカルリソース112、114を利用することを意味する。図1は、特定の状況において音声認識システム150がリモートシステム140のリモートリソース142を活用し得ることを示すために、ネットワーク130に接続された音声認識システム150を点線で示している。すなわち、モデル152の推論または展開の前(すなわち、実装の前)に、ストリーミングASRモデル152は、リモートシステム140内に配置される非ストリーミングASRモデル(たとえば、図2A図3Bに教師モデル210として示される)から音声認識結果(すなわち、トランスクリプト154またはラベル)を生成する方法を学習する。この意味で、モデル152は、従来のストリーミングASRモデルよりも音声認識パフォーマンスが大きく(すなわち、ローカルリソース112、114と比較して、より大量のリモートリソース142を利用する)、一般的により正確である非ストリーミングASRモデルから蒸留された知識を受信する。
【0024】
生徒モデル152は、様々なタイプのニューラルネットワークアーキテクチャを有し得る。いくつかの例では、生徒モデル152は、エンコーダ-デコーダアーキテクチャを備えたRNN-Tモデルである。生徒モデル152がRNN-Tモデルである場合、生徒モデル152は、単方向ロングショートタームメモリ(LSTM)セルの複数の層(たとえば、2048個のセルを有するLSTMの8個の層)を有するエンコーダネットワークを含み得る。ここで、各LSTMは、たとえば640個の出力の投影層を有し得る。このRNN-Tモデルの場合、生徒モデル152のデコーダは、2つの単方向LSTM(たとえば、エンコーダと同様に2048個のユニットおよび640個の投影を有する)であってもよい。RNN-Tのエンコーダ-デコーダアーキテクチャはまた、共同ネットワークを含み得る。共同ネットワークは、640個のユニットを備えた完全に接続された層であり得る。いくつかの構成では、生徒モデル152のエンコーダ(たとえば、生徒モデル152がRNN-Tモデルの場合)はコンフォーマエンコーダを使用するが、ストリーミングASRモデルとして、アテンション層および/または畳み込みは、ストリーミング機能を保証するために完全にはコンテキストに依存しない。
【0025】
図2A図2Cは、ストリーミングASRモデル152のトレーニングプロセス200を示し、図3Aおよび図3Bは、ストリーミングASRモデル152をトレーニングするために教師モデル210のアンサンブルを使用するこのトレーニングプロセス200の変形例を示しており、これをアンサンブルトレーニングプロセス300と呼ぶ。トレーニングプロセス200とアンサンブルトレーニングプロセス300の両方は、アンサンブルトレーニングプロセス300において最終的なトランスクリプト214を生成するために複数の教師モデル210、210a~nが使用されるという点を除いて、比較的類似していてもよい。これは、図示されていないが、アンサンブルトレーニングプロセス300はまた、そのプロセスフローにセグメンタ240およびオーグメンタ250などの追加コンポーネントを含み得ることを意味する。
【0026】
図2A図2Cを参照すると、トレーニングプロセス200は、非ストリーミングASRモデル210(非ストリーミングASR教師モデル210または単に教師モデル210と呼ばれる)がその知識をストリーミングASRモデル152(ストリーミングASR生徒モデル152または単に生徒モデル152とも呼ばれる)に蒸留する蒸留プロセスである。ここで、教師モデル210は、教師モデル210によって生成されたラベルまたはトランスクリプト212を少なくとも部分的に含む複数の生徒トレーニングサンプル232を用いて生徒モデル152をトレーニングすることによって、その知識を生徒モデル152に蒸留する。この意味で、トレーニングプロセス200中に、生徒モデル152は、教師モデル210によって生成されたトランスクリプト212から独自のトランスクリプト154を予測することを学習する。生徒モデル150は、フレームごとにトランスクリプト154を形成する音声認識結果を生成および更新するストリーミングモデルであるため、トレーニングプロセス200は、リアルタイム音声認識タスク用に展開される生徒モデル152の精度を向上させるために、より正確な非ストリーミングモデルトランスクリプト212を活用する。
【0027】
いくつかの実装形態では、トレーニングプロセス200中、教師モデル210は、ラベルなしトレーニングサンプル222のコーパス220からラベルなしトレーニングサンプル222を受信する。コーパス220は、一般に、ラベルなしオーディオデータの任意の集合(たとえば、オーディオデータサンプルのデータベースまたはデータストア)を指す。ラベルなしトレーニングサンプル222は、添付のラベルがないオーディオデータのサンプルを指す。すなわち、ラベルなしトレーニングサンプル222は、オーディオデータのサンプルにラベルを提供するための対応するトランスクリプトのない教師なしデータである。教師モデル210がラベルなしトレーニングサンプル222を入力として受信すると、教師モデル210は、ラベルなしトレーニングサンプル222のラベルを予測するトランスクリプト212を出力として生成するように構成される。したがって、教師モデル210によるこの予測関数は、ラベルなしトレーニングサンプル222のオーディオデータと教師モデル210によって生成された対応するトランスクリプト212の両方を含む生徒モデルトレーニングサンプル232を形成するために、ラベルなしトレーニングサンプル222にラベルを付ける。教師モデル210を使用することによって、ラベルなしトレーニングサンプル222の複数のコーパス220は、生徒トレーニングモデルサンプル232、232a~nのコーパス230に変換される。次いで、トレーニングプロセス200は、生徒モデル152が、教師モデル210によって生成されたその予測されたトランスクリプト212とともに、以前にラベル付けされていないサンプル222のオーディオデータに基づいて、トランスクリプト154を予測することを学習することを可能にするために、生徒トレーニングモデルサンプル232を生徒モデル152に供給する。このようにして、トレーニングプロセス200は、非ストリーミングASR教師モデル210からのラベルなしトレーニングサンプル222およびトランスクリプト212を使用して、ストリーミングASR生徒モデル152を蒸留する。さらに、このトレーニングプロセス200は、ラベルなしオーディオサンプルを使用するという利点を有する。これは、オーディオデータのサンプル(たとえば、特に特定の言語)について正確なラベルを取得または生成することがしばしば難しいため、有利である可能性がある。たとえば、いくつかのトレーニングプロセスは、ラベル付きのオーディオデータが不足している(すなわち、オーディオデータのトランスクリプトが不足している)ため、ラベルなしオーディオデータに手動でラベルを付けるか、より少ないトレーニングサンプル本体でモデルをトレーニングする必要がある。
【0028】
図2Bを参照すると、トレーニングプロセス200は、ラベルなしトレーニングサンプル222を受信し、ラベルなしトレーニングサンプル222からラベルなしセグメント242を生成するように構成されたセグメンタ240を含み得る。ラベルなしセグメント242は、ラベルなしトレーニングサンプル222のある長さまたは部分を指す。たとえば、ラベルなしトレーニングサンプル222は、様々な長さ(たとえば、時間期間)であってもよく、セグメンタ240は、ラベルなしトレーニングサンプル222を短い長さまたは有限の長さのセグメント242に分割してもよい。たとえば、ラベルなしトレーニングサンプル222のオーディオデータの長さが2分である場合、セグメンタ240は、10秒または15秒のセグメント242などのより小さい部分に分割し得る。この点において、セグメンタ240は、より多くのラベルなしオーディオデータサンプル(すなわち、セグメント242)を生成すること、トレーニングプロセス200中に教師モデル210に供給される均一長のサンプルを生成すること、および/または教師モデル210が、教師モデル210にとって処理するのが難しいサンプル(たとえば、サンプルの完全なコンテキストを含むトランスクリプト212を生成するためにかなりの量のメモリを必要とする長期間のもの)を受信するのを防止することを行うように機能し得る。いくつかの例では、セグメンタ240は、ラベルなしトレーニングサンプル222をランダムな長さのセグメント242に変換する。ここで、ランダムな長さは、たとえば特定の期間未満に制限される場合があるが、そうでない場合は、実装中に音声認識モデルが様々な長さの音声入力をどのように受信し得るか、その音声入力に対して正確な認識結果を生成できる必要があるかを表現しようとする。ラベルなしトレーニングサンプル222がセグメンタ240によってセグメント化されると、次いで、教師モデル210は、ラベルなしトレーニングサンプル222のラベルなしセグメント242を入力として受信し、教師モデル210がラベルなしトレーニングサンプル222を受信するとき(たとえば、図2Aに示されるように)と同様に、これらのラベルなしセグメント242に対するトランスクリプト212を予測する。前述したように、セグメンタ240は図3Aおよび図3Bのアンサンブルトレーニングプロセス300には示されていないが、同様の機能を備えたセグメンタも、アンサンブルトレーニングプロセス300中に同じ方法で使用され得る。
【0029】
図2Cを参照すると、トレーニングプロセス200はまた、(たとえば、セグメンタ240に加えて)オーグメンタ250を含み得る。オーグメンタ250は、教師モデル210が生徒トレーニングサンプル232を形成するためにラベルなしトレーニングサンプル222のトランスクリプト212を生成した後、ラベルなしトレーニングサンプル222に対応するオーディオデータを変更するように機能する。オーグメンタ250は教師モデル210の下流にあり、教師モデル210は生徒トレーニングサンプル232のトランスクリプト212をすでに生成しているので、オーグメンタ250は、予測されたトランスクリプト212に影響を及ぼさない程度にラベルなしトレーニングサンプル222のオーディオデータを拡張または変更する。オーグメンタによるこのオーグメンテーションプロセスは、生徒モデル152をトレーニングするために使用される拡張オーディオサンプル254を形成する。たとえば、オーグメンタ250は、ノイズを追加する、または、何らかの他のタイプのスペクトルオーグメンテーションを実行するために使用され得る。すなわち、オーグメンタ250は、生徒トレーニングサンプル232用の拡張オーディオサンプル252を形成するために、オーディオデータの波形を修正し得る。この点において、生徒モデル152は、生徒トレーニングサンプル232が、教師モデル210からのその予測されたトランスクリプト212とともに拡張オーディオサンプル252を含む、ノイズの多い生徒学習フレームワークから学習する。ノイズの多い学習フレームワークにより、生徒モデル152は、オーディオサンプルにおけるわずかな違いが同じトランスクリプト212をもたらす可能性があることを学習することができ、したがって、トレーニングプロセス200にさらなる程度の堅牢性を提供することができる。セグメンタ240と同様に、オーグメンタ250は、図3Aおよび図3Bのアンサンブルトレーニングプロセス300には示されていないが、同様の機能を有するオーグメンタも、アンサンブルトレーニングプロセス300中に同じ方法で使用され得る。
【0030】
図3Aおよび図3Bを参照すると、アンサンブルトレーニングプロセス300は、アンサンブルトレーニングプロセス300が複数の教師モデル210を使用して生徒モデル152をトレーニングするという点でトレーニングプロセス200とは異なる。すなわち、生徒モデル152は、教師モデル210によって生成された対応するトランスクリプト212とペアになったラベルなしトレーニング発話222を使用して生徒モデル152をトレーニングすることによって、複数の教師モデル210、210a~nから蒸留される。複数の教師モデル210を使用することによって、生徒モデル152は、(i)より多様なソース(すなわち、複数の教師モデル210、210a~n)、および(ii)トランスクリプト品質が改善された(たとえば、単一の教師モデル210からのトランスクリプトと比較した場合)教師モデル210のアンサンブルによって生成された最終的なトランスクリプト214から学習する。
【0031】
いくつかの例では、教師アンサンブルの各教師モデル210は、同じラベルなしトレーニングサンプル222(または、ラベルなしセグメント242)を受信し、受信したラベルなしトレーニングサンプル222のトランスクリプト212を生成する。たとえば、図3Bは、3つの教師モデル210、210a~cを示しており、第1の教師モデル210aは、ラベルなしトレーニングサンプル222に対する第1のトランスクリプト212、212aを生成し、第2の教師モデル210bは、ラベルなしトレーニングサンプル222に対する第2のトランスクリプト212、212bを生成し、第3の教師モデル210cは、ラベルなしトレーニングサンプル222の第3のトランスクリプト212、212cを生成する。各教師モデル210は独自のトランスクリプト212を独立して生成するため、たとえトランスクリプト212が同じラベルなしトレーニングサンプル222のラベルであることを意図しているとしても、ある教師モデル210のトランスクリプト212は、別の教師モデル210のトランスクリプト212と比較すると差異がある可能性がある。
【0032】
各教師モデル210が独自のトランスクリプト212を生成すると、これらのトランスクリプト212はマージされるか、そうでなければ生徒トレーニングサンプル232を形成するために最終的なトランスクリプト214に変換され、ここで、最終的なトランスクリプト214は、ラベルなしトレーニングサンプル222のラベルである。この意味で、各教師モデル210からのトランスクリプト212は、初期トランスクリプト212と呼ばれ得るが、最終的なトランスクリプト214は、生徒トレーニングサンプル232を形成するためにラベルなしトレーニングサンプル222に適用されるラベルである。独立して作成されたこれらのトランスクリプト212をマージする技法は様々であり得るが、一般に、マージ技法はトランスクリプト誤りを低減する技法である。たとえば、アンサンブルトレーニングプロセス300中に、最終的なトランスクリプト214を決定するために、ラベルなしトレーニングサンプル222(または、ラベルなしセグメント242)に対して生成されたトランスクリプト212のすべてが互いに比較され得る。
【0033】
これらのトランスクリプト212をマージする1つの手法は、投票プロセスを使用することである。たとえば、投票プロセスは、認識器出力投票誤り低減(ROVER: recognizer output voting error reduction)技法であってもよい。投票プロセスにおいて、教師モデル210によって生成された初期トランスクリプト212が整列されてセグメントSに分割され、各セグメントは整列フレームFに対応する。ここで、トランスクリプト212のセグメントSは、単語片、単語、フレーズなどであってもよい。すべてのトランスクリプト212が整列すると、特定のフレームF内のすべてのトランスクリプト212にわたって最も繰り返されたセグメントSが、最終的なトランスクリプト214に含まれるセグメントSとして投票される。この点において、フレーム内でセグメントSが出現するたびに投票が受信され、最大の投票数(すなわち、投票数の過半数)を獲得したセグメントSが最終的なトランスクリプト214に含まれる。次いで、アンサンブルトレーニングプロセス300は、最終的なトランスクリプト214を生成するために、フレームFごとに最も繰り返されるセグメントSのすべてを連結する。
【0034】
図3Bは、出力投票技法の例を示している。ここで、3つの教師モデル210a~cからの各トランスクリプト212は、5つのセグメントS、S1-5に分割され、各セグメントSは、5つのフレームF、F1-5の1つに対応する。この例では、各セグメントSは単一の単語(単語遷移ネットワーク(WTN)としても知られる)に対応する。第1のフレームF1では、3つの教師モデル210の各々が、単語「私は(I)」を含む同一のセグメントS1を有する。「私は」は第1のフレームF1内で最も繰り返されるセグメントである(たとえば、3票を受け取る)ため、最終的なトランスクリプト214の第1のフレームF1は単語「私は」を含むことになる。第2のフレームF2では、3つの教師モデル210の各々が、単語「好きです(like)」を含む同一のセグメントS2を有する。「好きです」は第2のフレームF2内で最も繰り返されるセグメントである(たとえば、3票を受け取る)ため、最終的なトランスクリプト214の第2のフレームF2は単語「好きです」を含むことになる。第3のフレームF3では、3つの教師モデル210のうちの2つは単語「りんご(apples)」を含む同一のセグメントS3を有し、3つの教師モデル210のうちの1つは単語「ステープル(staples)」を含む。「りんご」は第3のフレームF3内で最も繰り返されるセグメントである(たとえば、3票のうち2票を受け取る)ため、最終的なトランスクリプト214の第3のフレームF3は単語「りんご」を含むことになる。第4のフレームF4では、3つの教師モデル210のうちの2つは単語「と(and)」を含む同一のセグメントS4を有し、3つの教師モデル210のうちの1つはブランクを生成した。「と」は第4のフレームF4内で最も繰り返されるセグメントである(たとえば、3票のうち2票を受け取る)ため、最終的なトランスクリプト214の第4のフレームF4は単語「と」を含むことになる。第5のフレームF5では、3つの教師モデル210のうちの2つは単語「洋梨(pears)」を含む同一のセグメントS5を有し、3つの教師モデル210のうちの1つは単語「熊(bears)」を含む。「洋梨」は第5のフレームF5内で最も繰り返されるセグメントである(たとえば、3票のうち2票を受け取る)ため、最終的なトランスクリプト214の第5のフレームF5は単語「洋梨」を含むことになる。このプロセスに基づいて、最終的なトランスクリプト214、「私はリンゴと梨が好きです」を形成するために、フレームFの各勝利票が組み合わされる。このプロセスはまた、特定の教師モデル210の初期トランスクリプト212は誤りを有する可能性があるが、その誤りは、すべての初期トランスクリプト212に対して評価されると認識可能であり、最終的なトランスクリプト214への影響を防ぐことができる(または、影響を与える可能性が低い)ことも示している。たとえば、第2の教師モデル210bは、第3のフレームF3内の単語が「りんご」である可能性が高い場合、第3のフレームF3は「ステープル」であるべきであると考えた。
【0035】
教師モデル210などの非ストリーミングASRモデルは、様々なタイプのニューラルネットワークアーキテクチャを使用し得る。非ストリーミングASRモデルは、双方向エンコーディングおよび/またはアテンションメカニズムを使用し得る。非ストリーミングASRモデルのいくつかの例は、RNN-Tモデル、コンフォーマモデル、時間遅延ニューラルネットワーク(TDNN)モデル、コネクショニスト時間分類(CTC)モデルを含む。たとえば、コンフォーマトランスデューサモデルは、入力オーディオデータのローカルコンテキストとグローバルコンテキスト(すなわち、コンテキスト情報)をキャプチャするために、畳み込みニューラルネットワーク(CNN)とトランスフォーマモデルのエンコーダアーキテクチャの組合せを利用する。いくつかの実装形態では、教師モデル210は、エンコーダ内のいくつかのコンフォーマブロック(たとえば、16ブロック)と、(たとえば、640個の出力の)射影層を有する単一のロングショートタームメモリ(LSTM)デコーダ層(たとえば、2048個のセルを有するもの)とを有するコンフォーマモデルである。ここで、この教師モデル210では、アテンション層は、入力オーディオサンプルのすべてのフレームを同時にエンコードして、それを非ストリーミングモデルにする。TDNNモデルの一例として、教師モデル210は、マクロ層のスタック(たとえば、3つのマクロ層)を有するエンコーダと、単方向LSTM(たとえば、1024個の隠れユニットを備えたもの)を有するデコーダネットワークとを含み得る。各マクロ層は、1次元畳み込み、1次元最大プーリング、および3つの双方向LSTM層(たとえば、1536次元射影で各方向に512個の隠れユニットを備えたもの)から構築され得る。ここで、TDNNモデルアーキテクチャはまた、共同ネットワーク(たとえば、512個の隠れユニットを備えたもの)を含み得る。
【0036】
教師モデル210がRNN-Tアーキテクチャを有する場合、RNN-Tの正確なアーキテクチャは異なる可能性がある。たとえば、RNN-Tアーキテクチャの一構成では、エンコーダはいくつかのマクロ層(たとえば、17個のマクロ層)を含み、各マクロ層は複数のアテンションヘッド(たとえば、8個のアテンションヘッド)、1次元畳み込み(たとえば、カーネルサイズが15)、および相対位置埋め込み(たとえば、512次元)を有し、この構成では、RNN-Tのデコーダネットワークは、1024個の隠れユニットを備えた単一方向LSTMと、512個の隠れユニットを備えた共同ネットワークであり得る。ここで、RNN-Tアーキテクチャは、4k(4,000)の単語片モデルを使用する最終出力を有し得る。別のRNN-T構成では、エンコーダは4倍の時間短縮および640のチャネルサイズを有する3×3の2D畳み込み層の2つの層を含む。また、畳み込みを伴ういくつかのコンフフォーマブロック(たとえば、16個のブロック)も含む。これらの畳み込みのカーネルサイズは32であり、位置埋め込みサイズは128であり得る。このRNN-T構成では、デコーダ層は単一のLSTM(たとえば、2048個のセルと640個の出力の投影層)を有する。
【0037】
いくつかの例では、教師モデル210はCTCアーキテクチャを有する。教師モデル210のCTCアーキテクチャは、コンテキスト情報をキャプチャするための追加の言語モデルを含み得る。いくつかの実装形態では、教師モデル210のCTCバージョンは、RNN-Tと同様のエンコーダを有し、そのエンコーダは、4倍の時間短縮および640のチャネルサイズを有する3×3の2D畳み込み層の2つの層を含む。CTCエンコーダはまた、畳み込みを伴ういくつかのコンフォーマブロック(たとえば、16個のブロック)を含み得る。これらの畳み込みのカーネルサイズは32であり、位置埋め込みサイズは128であり得る。CTCアーキテクチャの場合、デコーダは、640ユニットの投影層を備えた4096個の隠れユニットの単一層を備えた簡易バージョンであるという点で、RNN-Tアーキテクチャのデコーダとは異なる場合がある。
【0038】
アンサンブルトレーニングプロセス300を使用する場合、複数の教師モデル210はすべて、サンプルタイプのニューラルネットワークアーキテクチャ、または様々なタイプのニューラルネットワークアーキテクチャを有し得る。すなわち、1つの教師モデル210は、他の教師モデル210とは異なるニューラルネットワークアーキテクチャを有し得る。たとえば、多様な初期トランスクリプト212を生成するために、複数の教師モデル210は、異なるニューラルネットワークアーキテクチャを有し得る。たとえば、第1の教師モデル210はCTCアーキテクチャを有し得、第2の教師モデル210はRNN-Tアーキテクチャを有し得る。いくつかの構成では、ニューラルネットワークのアーキテクチャは教師モデル210間で異なる場合があるが、ニューラルネットワークのエンコーダは同じまたは比較的同じままである場合がある。たとえば、すべての教師モデル210はコンフォーマベースのエンコーダを備えている。コンフォーマベースのエンコーダは、コンフォーマエンコーダがオーディオデータの特定の入力についてローカルコンテキストとグローバルコンテキストの両方を考慮できるという点で、教師モデル210などの非ストリーミングASRモデルにとって有益であり得る。
【0039】
図4は、ストリーミング生徒モデル152をトレーニングする方法400の動作の例示的な配置を示すフローチャートである。動作402において、方法400は、複数のラベルなし生徒トレーニング発話222を受信する。動作404において、ラベルなし生徒トレーニング発話222ごとに、方法400は、複数の非ストリーミングASR教師モデル210を使用して、それぞれのラベルなし生徒トレーニング発話222に対応するトランスクリプト212を生成する。動作406において、方法400は、複数の非ストリーミングASR教師モデル210によって生成された対応するトランスクリプト212とペアになった複数のラベルなし生徒トレーニング発話222を使用して、ストリーミングASR生徒モデル152を蒸留する。
【0040】
図5は、本明細書で説明されるシステム(たとえば、音声認識システム150)および方法(たとえば、トレーニングプロセス200、アンサンブルトレーニングプロセス300、および/または方法400)を実装するために使用され得る例示的なコンピューティングデバイス500の概略図である。コンピューティングデバイス500は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータなどの、様々な形式のデジタルコンピュータを表すことを意図している。本明細書に示されるコンポーネント、それらの接続と関係、およびそれらの機能は、例示のみを目的としており、本文書において説明および/または請求される発明の実装形態を限定することを意図するものではない。
【0041】
コンピューティングデバイス500は、プロセッサ510(たとえば、データ処理ハードウェア112、144)、メモリ520(たとえば、メモリハードウェア114、146)、ストレージデバイス530、メモリ520および高速拡張ポート550に接続する高速インターフェース/コントローラ540、ならびに低速バス570およびストレージデバイス530に接続する低速インターフェース/コントローラ560を含む。コンポーネント510、520、530、540、550、および560の各々は、様々なバスを使用して相互接続され、共通のマザーボード上に、または必要に応じて他の方法で搭載され得る。プロセッサ510は、高速インターフェース540に接続されたディスプレイ580などの外部入力/出力デバイス上のグラフィカルユーザインターフェース(GUI)用のグラフィック情報を表示するために、メモリ520またはストレージデバイス530に記憶された命令を含む、コンピューティングデバイス500内で遂行するための命令を処理することができる。他の実装形態では、複数のプロセッサおよび/または複数のバスが、複数のメモリおよびメモリのタイプとともに、必要に応じて使用され得る。また、複数のコンピューティングデバイス500が接続されてもよく、各デバイスは必要な動作の一部を提供する(たとえば、サーババンク、ブレードサーバのグループ、またはマルチプロセッサシステムとして)。
【0042】
メモリ520は、コンピューティングデバイス500内に情報を非一時的に記憶する。メモリ520は、コンピュータ可読媒体、揮発性メモリユニット、または不揮発性メモリユニットであってもよい。非一時的メモリ520は、コンピューティングデバイス500によって使用されるプログラム(たとえば、命令のシーケンス)またはデータ(たとえば、プログラム状態情報)を一時的または永続的に記憶するために使用される物理デバイスであってもよい。不揮発性メモリの例は、フラッシュメモリおよび読取り専用メモリ(ROM)/プログラマブル読取り専用メモリ(PROM)/消去可能なプログラマブル読取り専用メモリ(EPROM)/電子的に消去可能なプログラマブル読取り専用メモリ(EEPROM)(たとえば、通常、ブートプログラムなどのファームウェアに使用されるもの)を含むが、これらに限定されない。揮発性メモリの例は、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM)、相変化メモリ(PCM)、ならびにディスクまたはテープを含むが、これらに限定されない。
【0043】
ストレージデバイス530は、コンピューティングデバイス500に大容量ストレージを提供することができる。いくつかの実装形態では、ストレージデバイス530はコンピュータ可読媒体である。様々な異なる実装形態では、ストレージデバイス530は、フロッピーディスクデバイス、ハードディスクデバイス、光ディスクデバイス、またはテープデバイス、フラッシュメモリまたは他の同様のソリッドステートメモリデバイス、あるいは、ストレージエリアネットワークまたは他の構成内のデバイスを含むデバイスのアレイであってもよく、追加の実装形態では、コンピュータプログラム製品が情報担体に具体的に組み込まれる。コンピュータプログラム製品は、遂行されるとき、上記のような1つまたは複数の方法を実行する命令を含む。情報担体は、メモリ520、ストレージデバイス530、またはプロセッサ510上のメモリなどのコンピュータまたは機械可読媒体である。
【0044】
高速コントローラ540は、コンピューティングデバイス500の帯域幅を集中的に使用する動作を管理し、一方、低速コントローラ560は、より低い帯域幅を集中的に使用する動作を管理する。そのような役割の割当ては、単なる例示である。いくつかの実装形態では、高速コントローラ540は、メモリ520、ディスプレイ580(たとえばグラフィックプロセッサまたはアクセラレータを通じて)、および様々な拡張カード(図示せず)を受け入れることができる高速拡張ポート550に結合される。いくつかの実装形態では、低速コントローラ560は、ストレージデバイス530および低速拡張ポート570に接続されている。様々な通信ポート(たとえば、USB、Bluetooth、イーサネット、ワイヤレスイーサネット)を含み得る低速拡張ポート570は、たとえば、ネットワークアダプタを通じて、キーボード、ポインティングデバイス、スキャナなどの1つまたは複数の入力/出力デバイス、あるいはスイッチまたはルータなどのネットワーキングデバイスに結合され得る。
【0045】
コンピューティングデバイス500は、図面に示されるように、多くの異なる形式で実装され得る。たとえば、それは、標準サーバ500aとして、またはそのようなサーバ500aのグループ内で複数回、ラップトップコンピュータ500bとして、またはラックサーバシステム500cの一部として実装され得る。
【0046】
本明細書に記載されるシステムおよび技法の様々な実装形態は、デジタル電子回路および/または光回路、集積回路、特別に設計されたASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、および/またはそれらの組合せにおいて実現することができる。これらの様々な実装形態は、ストレージシステム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスからデータおよび命令を受信し、およびそこにデータおよび命令を送信するように結合された、専用または汎用であり得る少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステム上で遂行可能および/または解釈可能な1つまたは複数のコンピュータプログラムにおける実装形態を含むことができる。
【0047】
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、またはコードとしても知られる)は、プログラマブルプロセッサ用の機械命令を含み、高レベルの手続き型および/またはオブジェクト指向プログラミング言語、ならびに/あるいはアセンブリ/マシン言語で実装することができる。本明細書で使用される場合、「機械可読媒体」および「コンピュータ可読媒体」という用語は、機械可読信号として機械命令を受信する機械可読媒体を含む、プログラマブルプロセッサに機械命令および/またはデータを提供するために使用される、あらゆるコンピュータプログラム製品、非一時的コンピュータ可読媒体、装置および/またはデバイス(たとえば、磁気ディスク、光ディスク、メモリ、プログラマブルロジックデバイス(PLD))を指す。「機械可読信号」という用語は、機械命令および/またはデータをプログラマブルプロセッサに提供するために使用される任意の信号を指す。
【0048】
本明細書で説明するプロセスおよびロジックフローは、入力データを操作して出力を生成することによって機能を実行するために1つまたは複数のコンピュータプログラムを遂行する1つまたは複数のプログラマブルプロセッサによって実行することができる。プロセスおよびロジックフローは、たとえばFPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)などの専用論理回路によって実行することもできる。コンピュータプログラムの遂行に適したプロセッサは、例として、汎用マイクロプロセッサと専用マイクロプロセッサの両方、および任意の種類のデジタルコンピュータの任意の1つまたは複数のプロセッサを含む。一般に、プロセッサは、読取り専用メモリまたはランダムアクセスメモリ、あるいはその両方から命令とデータを受信する。コンピュータの必須要素は、命令を実行するためのプロセッサと、命令とデータを記憶するための1つまたは複数のメモリデバイスである。一般に、コンピュータはまた、データを記憶するための1つまたは複数の大容量ストレージデバイス、たとえば、磁気ディスク、光磁気ディスク、または光ディスクを含むか、それらとの間でデータを受信または転送する、あるいはその両方を行うために動作可能に結合される。しかしながら、コンピュータにそのようなデバイスが搭載されている必要はない。コンピュータプログラム命令およびデータを記憶するために適したコンピュータ可読媒体は、例として、半導体メモリデバイス、たとえばEPROM、EEPROM、およびフラッシュメモリデバイス、磁気ディスク、たとえば内蔵ハードディスクまたはリムーバブルディスク、光磁気ディスク、ならびにCD ROMおよびDVD-ROMディスクを含む、あらゆる形態の不揮発性メモリ、媒体、およびメモリデバイスを含む。プロセッサとメモリは、専用論理回路によって補完することもでき、専用論理回路に組み込むこともできる。
【0049】
ユーザとの対話を提供するために、本開示の1つまたは複数の態様は、情報をユーザに表示するためのディスプレイデバイス、たとえばCRT(陰極線管)、LCD(液晶ディスプレイ)モニタ、またはタッチスクリーン、ならびにオプションで、ユーザがコンピュータに入力することができるキーボードおよびポインティングデバイス、たとえばマウスまたはトラックボールを有するコンピュータ上で実装することができる。ユーザとの対話を提供するために、他の種類のデバイスを使用することができ、たとえば、ユーザに提供されるフィードバックは、視覚的フィードバック、聴覚的フィードバック、触覚的フィードバックなど、あらゆる形式の感覚的フィードバックとすることができる。ユーザからの入力は、音響、音声、または触覚入力を含む、あらゆる形式で受信することができる。さらに、コンピュータは、ユーザによって使用されるデバイスとの間でドキュメントを送受信することによって、たとえば、ウェブブラウザから受信したリクエストに応答して、ユーザのクライアントデバイス上のウェブブラウザにウェブページを送信することによって、ユーザと対話することができる。
【0050】
多くの実装形態が説明されてきた。それにも関わらず、本開示の趣旨および範囲から逸脱することなく、様々な修正が行われ得ることができることが理解されるであろう。したがって、他の実装形態も特許請求の範囲に含まれる。
【符号の説明】
【0051】
10 ユーザ
12 ユーザ対話
12U 発話
16 オーディオストリーム
100 システム
110 音声対応デバイス
110 ユーザデバイス
112 データ処理ハードウェア
112 ローカルリソース
114 メモリハードウェア
114 ローカルリソース
116 オーディオキャプチャリングデバイス
116 マイクロフォン
120 音声対応インターフェース
120 インターフェース
120 アシスタントインターフェース
120 デジタルアシスタントインターフェース
122 応答
124 オーディオデータ
130 ネットワーク
140 リモートシステム
142 リモートリソース
144 リモートデータ処理ハードウェア
146 リモートメモリハードウェア
150 生徒モデル
152 音声認識モデル
152 ASRモデル
152 ストリーミングASR生徒モデル
152 ストリーミングASRモデル
154 トランスクリプト
154 音声認識結果
160 検索エンジン
162 検索結果
200 トレーニングプロセス
210、210a~n 教師モデル
210 非ストリーミングASRモデル
210 非ストリーミングASR教師モデル
210 教師モデル
210a 第1の教師モデル
210b 第2の教師モデル
210c 第3の教師モデル
212 非ストリーミングモデルトランスクリプト
212 トランスクリプト
212 初期トランスクリプト
212、212a 第1のトランスクリプト
212、212b 第2のトランスクリプト
212、212c 第3のトランスクリプト
214 最終的なトランスクリプト
220 コーパス
222 ラベルなしトレーニングサンプル
222 ラベルなしトレーニング発話
222 ラベルなし生徒トレーニング発話
230 コーパス
232、232a~n 生徒トレーニングモデルサンプル
232 生徒トレーニングサンプル
240 セグメンタ
242 ラベルなしセグメント
250 オーグメンタ
252 拡張オーディオサンプル
254 拡張オーディオサンプル
300 アンサンブルトレーニングプロセス
400 方法
500 コンピューティングデバイス
500a 標準サーバ
500b ラップトップコンピュータ
500c ラックサーバシステム
510 プロセッサ
520 メモリ
530 ストレージデバイス
540 高速インターフェース/コントローラ
550 高速拡張ポート
560 低速インターフェース/コントローラ
570 低速バス
570 低速拡張ポート
580 ディスプレイ
図1
図2A
図2B
図2C
図3A
図3B
図4
図5
【手続補正書】
【提出日】2023-12-12
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
データ処理ハードウェア(144)によって遂行されるとき、前記データ処理ハードウェア(144)に、
複数のラベルなし生徒トレーニング発話(222)を受信するステップと、
ラベルなし生徒トレーニング発話(222)ごとに、複数の非ストリーミング自動音声認識(ASR)教師モデル(210)を使用して、前記それぞれのラベルなし生徒トレーニング発話(222)に対応するトランスクリプト(212)を生成するステップと、
前記複数の非ストリーミングASR教師モデル(210)によって生成された前記対応するトランスクリプト(212)とペアになった前記複数のラベルなし生徒トレーニング発話(222)を使用してストリーミングASR生徒モデル(152)をトレーニングすることによって、前記複数の非ストリーミングASR教師モデル(210)から前記ストリーミングASR生徒モデル(152)を蒸留するステップと
を備える動作を実行させる、コンピュータ実装方法(400)。
【請求項2】
前記それぞれのラベルなし生徒トレーニング発話(222)に対応する前記トランスクリプト(212)を生成するステップが、
前記複数の非ストリーミングASR教師モデル(210)における入力として、前記それぞれのラベルなし生徒トレーニング発話(222)を受信するステップと、
各非ストリーミングASR教師モデル(210)において、前記それぞれのラベルなし生徒トレーニング発話(222)の初期トランスクリプト(212)を予測するステップと、
前記それぞれのラベルなし生徒トレーニング発話(222)について予測された各非ストリーミングASR教師モデル(210)の前記初期トランスクリプト(212)に基づいて、前記複数の非ストリーミングASR教師モデル(210)によって出力される前記それぞれのラベルなし生徒トレーニング発話(222)の前記トランスクリプト(212)を生成するステップと
を備える、請求項1に記載の方法(400)。
【請求項3】
前記それぞれのラベルなし生徒トレーニング発話(222)について予測された各非ストリーミングASR教師モデル(210)の前記初期トランスクリプト(212)に基づいて、前記複数の非ストリーミングASR教師モデル(210)によって出力される前記それぞれのラベルなし生徒トレーニング発話(222)の前記トランスクリプト(212)を生成するステップが、出力投票を使用して前記トランスクリプト(212)を構築するステップを備える、請求項2に記載の方法(400)。
【請求項4】
出力投票を使用して前記トランスクリプト(212)を構築するステップが、
フレームのシーケンスを定義するために、各非ストリーミングASR教師モデル(210)からの前記初期トランスクリプト(212)を調整するステップと、
各初期トランスクリプト(212)をトランスクリプト(212)セグメント(242)に分割するステップであって、各トランスクリプト(212)セグメントがそれぞれのフレームに対応する、ステップと、
それぞれのフレームごとに、すべての初期トランスクリプト(212)で最も繰り返されたトランスクリプト(212)セグメントを選択するステップと、
前記トランスクリプト(212)を形成するために、それぞれのフレームの前記最も繰り返されたトランスクリプト(212)セグメントを連結するステップと
を備える、請求項3に記載の方法(400)。
【請求項5】
前記ストリーミングASR生徒モデル(152)が、リカレントニューラルネットワークトランスデューサ(RNN-T)アーキテクチャを備える、請求項1から4のいずれか一項に記載の方法(400)。
【請求項6】
前記ストリーミングASR生徒モデル(152)がコンフォーマベースのエンコーダを備える、請求項1から5のいずれか一項に記載の方法(400)。
【請求項7】
各非ストリーミングASR教師モデル(210)が、コネクショニスト時間分類(CTC)アーキテクチャを備える、請求項1から6のいずれか一項に記載の方法(400)。
【請求項8】
前記CTCアーキテクチャが、それぞれの発話のコンテキスト情報をキャプチャするように構成された言語モデルを備える、請求項7に記載の方法(400)。
【請求項9】
各非ストリーミングASR教師モデル(210)がコンフォーマベースのエンコーダを備える、請求項1から8のいずれか一項に記載の方法(400)。
【請求項10】
前記複数の非ストリーミングASR教師モデル(210)が少なくとも2つの異なるリカレントニューラルネットワークアーキテクチャを備える、請求項1から9のいずれか一項に記載の方法(400)。
【請求項11】
第1の非ストリーミングASR教師モデル(210)がリカレントニューラルネットワークアーキテクチャを備え、第2の非ストリーミングASR教師モデル(210)がコネクショニスト時間分類(CTC)アーキテクチャを備える、請求項10に記載の方法(400)。
【請求項12】
データ処理ハードウェア(144)と、
前記データ処理ハードウェア(144)と通信するメモリハードウェア(146)と
を備え、前記メモリハードウェア(146)が、前記データ処理ハードウェア(144)上で遂行されるとき、データ処理ハードウェア(144)に、
複数のラベルなし生徒トレーニング発話(222)を受信することと、
ラベルなし生徒トレーニング発話(222)ごとに、複数の非ストリーミング自動音声認識(ASR)教師モデル(210)を使用して、前記それぞれのラベルなし生徒トレーニング発話(222)に対応するトランスクリプト(212)を生成することと、
前記複数の非ストリーミングASR教師モデル(210)によって生成された前記対応するトランスクリプト(212)とペアになった前記複数のラベルなし生徒トレーニング発話(222)を使用してストリーミングASR生徒モデル(152)をトレーニングすることによって、前記複数の非ストリーミングASR教師モデル(210)から前記ストリーミングASR生徒モデル(152)を蒸留することと
を備える動作を実行させる命令を記憶する、システム(100)。
【請求項13】
前記それぞれのラベルなし生徒トレーニング発話(222)に対応する前記トランスクリプト(212)を生成することが、
前記複数の非ストリーミングASR教師モデル(210)における入力として、前記それぞれのラベルなし生徒トレーニング発話(222)を受信することと、
各非ストリーミングASR教師モデル(210)において、前記それぞれのラベルなし生徒トレーニング発話(222)の初期トランスクリプト(212)を予測することと、
前記それぞれのラベルなし生徒トレーニング発話(222)について予測された各非ストリーミングASR教師モデル(210)の前記初期トランスクリプト(212)に基づいて、前記複数の非ストリーミングASR教師モデル(210)によって出力される前記それぞれのラベルなし生徒トレーニング発話(222)の前記トランスクリプト(212)を生成することと
を備える、請求項12に記載のシステム(100)。
【請求項14】
前記それぞれのラベルなし生徒トレーニング発話(222)について予測された各非ストリーミングASR教師モデル(210)の前記初期トランスクリプト(212)に基づいて、前記複数の非ストリーミングASR教師モデル(210)によって出力される前記それぞれのラベルなし生徒トレーニング発話(222)の前記トランスクリプト(212)を生成することが、出力投票を使用して前記トランスクリプト(212)を構築することを備える、請求項13に記載のシステム(100)
【請求項15】
出力投票を使用して前記トランスクリプト(212)を構築することが、
フレームのシーケンスを定義するために、各非ストリーミングASR教師モデル(210)からの前記初期トランスクリプト(212)を調整することと、
各初期トランスクリプト(212)をトランスクリプト(212)セグメント(242)に分割することであって、各トランスクリプト(212)セグメントがそれぞれのフレームに対応する、分割することと、
それぞれのフレームごとに、すべての初期トランスクリプト(212)で最も繰り返されたトランスクリプト(212)セグメントを選択することと、
前記トランスクリプト(212)を形成するために、それぞれのフレームの前記最も繰り返されたトランスクリプト(212)セグメントを連結することと
を備える、請求項14に記載のシステム(100)。
【請求項16】
前記ストリーミングASR生徒モデル(152)が、リカレントニューラルネットワークトランスデューサ(RNN-T)アーキテクチャを備える、請求項12から15のいずれか一項に記載のシステム(100)。
【請求項17】
前記ストリーミングASR生徒モデル(152)がコンフォーマベースのエンコーダを備える、請求項12から16のいずれか一項に記載のシステム(100)。
【請求項18】
各非ストリーミングASR教師モデル(210)が、コネクショニスト時間分類(CTC)アーキテクチャを備える、請求項12から17のいずれか一項に記載のシステム(100)。
【請求項19】
前記CTCアーキテクチャが、それぞれの発話のコンテキスト情報をキャプチャするように構成された言語モデルを備える、請求項18に記載のシステム(100)。
【請求項20】
各非ストリーミングASR教師モデル(210)がコンフォーマベースのエンコーダを備える、請求項12から19のいずれか一項に記載のシステム(100)。
【請求項21】
前記複数の非ストリーミングASR教師モデル(210)が少なくとも2つの異なるリカレントニューラルネットワークアーキテクチャを備える、請求項12から20のいずれか一項に記載のシステム(100)。
【請求項22】
第1の非ストリーミングASR教師モデル(210)がリカレントニューラルネットワークアーキテクチャを備え、第2の非ストリーミングASR教師モデル(210)がコネクショニスト時間分類(CTC)アーキテクチャを備える、請求項21に記載のシステム(100)。
【国際調査報告】