JP7146038B2 - 音声認識システム及び方法 - Google Patents
音声認識システム及び方法 Download PDFInfo
- Publication number
- JP7146038B2 JP7146038B2 JP2021134779A JP2021134779A JP7146038B2 JP 7146038 B2 JP7146038 B2 JP 7146038B2 JP 2021134779 A JP2021134779 A JP 2021134779A JP 2021134779 A JP2021134779 A JP 2021134779A JP 7146038 B2 JP7146038 B2 JP 7146038B2
- Authority
- JP
- Japan
- Prior art keywords
- speech recognition
- machine learning
- learning model
- utterances
- recognition machine
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/26—Speech to text systems
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/02—Feature extraction for speech recognition; Selection of recognition unit
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/065—Adaptation
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/16—Speech classification or search using artificial neural networks
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/28—Constructional details of speech recognition systems
- G10L15/34—Adaptation of a single recogniser for parallel processing, e.g. by use of multiple processors or cloud computing
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
- G10L2015/0635—Training updating or merging of old and new templates; Mean values; Weighting
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Machine Translation (AREA)
Description
本明細書に説明される実施形態は、音声(speech)認識方法及びシステム、並びにそれを訓練するための方法に関する。
音声認識方法及びシステムは、音声オーディオを受信し、そのような音声オーディオの内容、例えば、そのような音声オーディオのテキスト内容を認識する。以前の音声認識システムは、ハイブリッドシステムを含み、音声オーディオの内容を決定するための、例えば音声を復号するための、音響モデル(AM)、発音レキシコン、及び言語モデル(LM)を含み得る。先のハイブリッドシステムは、音響モデル及び/又は言語モデルに対して隠れマルコフモデル(HMM)又は同様の統計方法を利用していた。後のハイブリッドシステムは、音響モデル及び/又は言語モデルのうちの少なくとも1つに対してニューラルネットワークを利用している。これらのシステムは、ディープ音声認識システムと呼ばれ得る。エンドツーエンドアーキテクチャを有する音声認識システムもまた導入されている。これらのシステムでは、音響モデル、発音レキシコン、及び言語モデルは、ニューラルネットワークに暗示的に一体化されると考えられることができる。
第1の実施形態では、1つ以上の属性を有する発話に第1の音声認識機械学習モデルを適応させるためのコンピュータ実装方法が提供される。方法は、1つ以上の属性を有するラベル付けされていない発話を受信することと、ラベル付けされていない発話の第1の書き起こしを生成することと、ラベル付けされていない発話の第2の書き起こしを生成することと、ここにおいて、第2の書き起こしは、第1の書き起こしとは異なる、第1の音声認識機械学習モデルが、第1の書き起こし及び第2の書き起こしについての事後確率を導出するために、ラベル付けされていない発話を処理することと、第1の書き起こし及び第2の書き起こしについての導出された事後確率に基づいて、損失関数に従って第1の音声認識機械学習モデルのパラメータを更新することと、を備える。
提供される方法は、1つ以上の属性を有する音声に音声認識機械学習モデルを適応させる。適応音声認識機械学習モデルは、1つ以上の属性を有する音声の内容をより良好に認識することができる。音声内容の認識における改善により、1つ以上の属性を有する音声の内容が、テキストにより正確に書き起こしされることができ、及び/又は正確なコマンドが、内容に基づいてより頻繁に実行されることができ、例えば、ユーザによって示された歌が認識され、故により頻繁に再生され得る。提供された方法の特定の利点は、適応を容易にし、故に、ラベル付けされていない発話、例えば書き起こしなしの音声オーディオを使用してこれらの改善を容易にすることである。このことから、提供するには時間が掛かり、且つ高価である限定された数の人間による書き起こしを伴わずに又は伴って、音声認識機械学習モデルを適応させることが可能である。限定された数の人間による書き起こしを伴わない又は伴う音声認識機械学習モデルの適応は、モデルの適応における少なくとも2つのコンピュータ生成された書き起こしの使用によって容易にされる。少なくとも2つのコンピュータ生成された書き起こしを使用することは、これらのコンピュータ生成された書き起こしの各々における誤りの影響を低減する。従って、各ラベル付けされていない発話についての少なくとも2つのコンピュータ生成された書き起こしを使用して適応された音声認識機械学習モデルは、属性(複数可)を有する音声内容をより良好に認識するのに対して、単一のコンピュータ生成された書き起こしが適応のために使用されることになった場合、その中の誤りの影響は、適応より前の音声認識機械学習モデルよりも、1つ以上の属性を有する音声の内容を認識するのがより不得意な音声認識機械学習モデルをもたらし得る。
更に、人間による書き起こしを提供することの時間の掛かる性質を考慮すると、音声認識機械学習モデルのユーザはそうしたがらない場合があるか、又は非常に少量のこれらしか提供したがらない場合があり、そのため、音声認識機械学習モデルはユーザ又はコンテキストに固有の属性、例えばそれらの特定のボイス又は環境に良好に適応されることができないので、音声認識機械学習モデルのインサイチュ(in situ)適応が容易にされ得る。しかしながら、ラベル付けされていない発話が録音されることができるので、ユーザの同意を得て、音声認識機械学習モデルの通常の使用では、これらのユーザ又はコンテキスト固有の属性への適応は、ユーザによる手動の労力なしに、又は少なくともより少ない手動の労力で実行されることができる。
第1の書き起こしは、複数の発話のものであり得る。
第2の書き起こしは、同じ複数の発話のものであり得る。第2の書き起こしは、第1の書き起こしが第2の音声認識機械学習モデルによって生成され、その一方で、第2の書き起こしが異なる第3の音声認識機械学習モデルによって生成されるという点において第1の書き起こしとは異なり得る。
第2の音声認識機械学習モデルは、第1のタイプの特徴(feature)を使用して訓練されている場合があり、第3の音声認識機械学習モデルは、異なる第2のタイプの特徴を使用して訓練されている場合がある。
第1の書き起こしは、第1のタイプの特徴を使用して訓練された第2の音声認識機械学習モデルによって生成され得る。第2の書き起こしは、第2のタイプの特徴を使用して訓練された第3の音声認識機械学習モデルによって生成され得る。
第1のタイプの特徴は、フィルタバンク特徴(filter-bank features)であり得る。第2のタイプの特徴は、サブバンド時間的包絡線特徴(subband temporal envelope features)であり得る。
第1の書き起こしは、第2の音声認識機械学習モデルの1最良仮説(1-best hypothesis)であり得る。第2の書き起こしは、第3の音声認識機械学習モデルの1最良仮説であり得る。
提供される方法は、 1つ以上の属性を有する1つ以上のラベル付けされた発話を受信することと、 1つ以上のラベル付けされた発話から第1のタイプの特徴を導出することと、 第1のタイプの導出された特徴と1つ以上のラベル付けされた発話のラベルとを使用して第2の音声認識機械学習モデルのパラメータを更新することと、 1つ以上のラベル付けされた発話から第2のタイプの特徴を導出することと、 第2のタイプの導出された特徴と1つ以上のラベル付けされた発話のラベルとを使用して第3の音声認識機械学習モデルのパラメータを更新することと、 を更に備え得る。
第1の書き起こし及び第2の書き起こしは、第2の音声認識機械学習モデルによって生成されたN最良書き起こし(N-best transcriptions)であり得る。第2の書き起こしは、第2の書き起こしが第1の書き起こしとは異なるNの値についてのものであるという点において第1の書き起こしとは異なり得る。
提供される方法は、1つ以上の属性を有する1つ以上のラベル付けされた発話を受信することと、1つ以上のラベル付けされた発話を使用して第1の音声認識機械学習モデルのパラメータを更新することと、を更に備え得る。
1つ以上の属性は、発話が所与のタイプの背景雑音を有することを備え得る。
1つ以上の属性は、発話が1つ以上の特色(traits)を有する背景雑音を有することを含み得る。1つ以上の特色は、背景雑音のレベル、背景雑音のピッチ、背景雑音の方向、背景雑音の音質(timbre)、背景雑音のソニックテクスチャ(sonic texture)、及び/又は背景雑音のタイプを含み得るか、又はそれらに基づき得る。
1つ以上の属性は、発話が所与のアクセントを有することを備え得る。
1つ以上の属性は、発話が所与の領域中にあることを備え得る。
1つ以上の属性は、発話が所与のユーザによるものであることを備え得る。
1つ以上の属性は、発話を話すボイスの1つ以上の特質(properties)を備え得る。1つ以上の特質は、発話を話すボイスが所与のユーザのボイスであることを含み得る。1つ以上の特質は、発話を話すボイスが所与のアクセントを有することを含み得る。
1つ以上の属性は、発話が所与の環境中で録音されることを備え得る。
ラベル付けされていない発話は、1つ以上の属性を有するように人工的に修正されている場合がある。
損失関数は、コネクショニスト時間的分類損失関数(connectionist temporal classification loss function)であり得る。
コネクショニスト時間的分類損失関数は、第2の仮説についての第2のコネクショニスト時間的分類損失による第1の書き起こしについての第1のコネクショニスト時間的分類損失の合計を備え得る。
第1の音声認識機械学習モデルは、双方向長短期記憶ニューラルネットワークを備え得る。
第2の実施形態によると、非一時的コンピュータ可読媒体上にオプションとして記憶されたコンピュータプログラムであって、プログラムがコンピュータによって実行されると、コンピュータに、第1の実施形態に記載の方法を行わせる、コンピュータプログラムが提供される。
第3の実施形態によると、1つ以上の属性を有する発話に第1の音声認識機械学習モデルを適応させるためのシステムが提供される。システムは、1つ以上のプロセッサ及び1つ以上のメモリを備える。1つ以上のプロセッサは、第1の実施形態に記載の方法を実行するように構成される。
第4の実施形態によると、音声認識のためのコンピュータ実装方法が提供される。方法は、1つ以上の属性を有する1つ以上の発話を受信することと、第1の実施形態に記載の方法に従って1つ以上の属性を有する発話に適応された音声認識機械学習モデルを使用して1つ以上の発話の内容を認識することと、認識された内容に基づいて機能を実行することと、ここにおいて、実行された機能は、テキスト出力、コマンド実行、又は音声対話システム機能のうちの少なくとも1つを備える、を備える。
第5の実施形態によると、非一時的コンピュータ可読媒体上にオプションとして記憶されたコンピュータプログラムであって、プログラムがコンピュータによって実行されると、コンピュータに、第4の実施形態に記載の方法を行わせる、コンピュータプログラムが提供される。
第6の実施形態によると、音声認識を実行するためのシステムが提供される。システムは、1つ以上のプロセッサ及び1つ以上のメモリを備える。1つ以上のプロセッサは、第4の実施形態に記載の方法を実行するように構成される。
第7の実施形態によると、音声認識を実行するためのシステムが提供される。システムは、1つ以上のプロセッサ及び1つ以上のメモリを備える。1つ以上のプロセッサは、1つ以上の属性を有する1つ以上の発話を受信することと、第1の実施形態に記載の方法に従って1つ以上の属性を有する発話に適応された音声認識機械学習モデルを使用して1つ以上の発話の内容を認識することと、認識された内容に基づいて機能を実行することと、ここにおいて、実行された機能は、テキスト出力又はコマンド実行のうちの少なくとも1つを備える、を行うように構成される。
音声認識を実行するためのシステムは、音声対話システム又はそのコンポーネントであり得る。
実例的なコンテキスト
例示を目的として、主題発明が適用されることができる実例的なコンテキストは、図1A~1Dに関連して説明される。しかしながら、これらは例証的であり、主題発明は任意の適したコンテキスト、例えば音声認識が適用可能な任意のコンテキストに適用され得ることが理解されるべきである。
例示を目的として、主題発明が適用されることができる実例的なコンテキストは、図1A~1Dに関連して説明される。しかしながら、これらは例証的であり、主題発明は任意の適したコンテキスト、例えば音声認識が適用可能な任意のコンテキストに適用され得ることが理解されるべきである。
ボイス支援システム
図1Aは、実例的な実施形態に従った、ボイス支援システム120の例示である。
図1Aは、実例的な実施形態に従った、ボイス支援システム120の例示である。
ボイス支援システム120は、例示されているように、スマートフォンであり得るか、若しくはスマートフォンを使用して実装され得るか、又は任意の他の適したコンピューティングデバイス、例えばラップトップコンピュータ、デスクトップコンピュータ、タブレットコンピュータ、ゲームコンソール、スマートハブ、若しくはスマートスピーカであり得る。
ボイス支援システム120が動作する環境は、背景雑音102を含み得る。背景雑音102は、ボイス支援システムが使用されているコンテキストに関連し得る所与のタイプの背景雑音であり得る。例えば、背景雑音102は、背景のお喋り及び食事の雑音などのカフェの雑音、交通の雑音などの通りの雑音、足音などの歩行者エリアの雑音、及び/又はエンジンの雑音などのバスの雑音であり得る。ボイス支援システム120は、背景雑音102を含む環境中で動作するように適応され得る。ボイス支援システム120はまた、所与の音響特性、例えば音の吸収、反射、及び/又は残響を有する環境中で動作するように適応され得る。ボイス支援システム120は、図2に関連して説明される方法及び/又は図3Aに関連して説明される方法によって、背景雑音を含む及び/又は所与の音響特性を有する環境中で動作するように適応されている音声認識機械学習モデルを含み得る。
ユーザ110は、ボイス支援システム120にコマンド112、114、116を話し得る。ユーザ110がコマンド112、114、116を話すことに応答して、ボイス支援システム120は、コマンドを実行し、それは、可聴応答を出力することを含み得る。コマンド112、114、116を話すユーザ110のボイスは、1つ以上の特質を有し得、例えば、ボイスは、所与のアクセント若しくは方言を有し、ボイスは、所与のユーザのものであり、ボイスは、所与の感情を伴って言われ、及び/又はボイスは、ある特定のトーン若しくは音質を有する。ボイス支援システム120は、1つ以上の特質を有するボイスで話されたコマンドで動作するように適応され得る。ボイス支援システム120は、図2に関連して説明される方法及び/又は図3Aに関連して説明される方法によって、1つ以上の特質を有する1つ以上のボイスに適応されている音声認識機械学習モデルを含み得る。
話されたコマンド112、114、116を受信するために、ボイス支援システム120は、マイクロフォンを含むか、又はマイクロフォンに接続される。可聴応答を出力するために、ボイス支援システム120は、スピーカを含むか、又はスピーカに接続される。ボイス支援システム120は、話されたコマンドを認識し、コマンドを実行するか若しくはコマンドを実行させ、及び/又は適した可聴応答を出力させるのに適した機能、例えばソフトウェア及び/又はハードウェアを含み得る。代替として又は追加として、ボイス支援システム120は、ネットワークを介して、例えばインターネット及び/又はローカルエリアネットワークを介して、話されたコマンドを認識し、コマンドを実行させるのに適した1つ以上の他のシステム(複数可)、例えばクラウドコンピューティングシステム及び/又はローカルサーバに接続され得る。機能の第1の部分は、ボイス支援システム120のハードウェア及び/又はソフトウェアによって実行され得、機能の第2の部分は、1つ以上の他のシステムによって実行され得る。いくつかの例では、機能又はその大半は、これらの1つ以上の他のシステムがネットワーク上でアクセス可能である1つ以上の他のシステムによって提供され得るが、機能は、例えばネットワークからのボイス支援システム120の切断及び/又は1つ以上の他のシステムの障害に起因して、これらの1つ以上の他のシステムがネットワーク上でアクセス可能でないときには、ボイス支援システム120によって提供され得る。これらの例では、ボイス支援システム120は、1つ以上の他のシステムへの接続なしに依然として動作することが可能でありながら、例えば、より広範な複数のコマンドを実行し、音声認識の品質を改善し、及び/又は可聴出力の品質を改善することが可能であるようにするために、1つ以上の他のシステムのより大きい計算リソース及びデータ利用可能性を活用することが可能であり得る。
例えば、コマンド112では、ユーザ110は、「Xって何?」と尋ねる。このコマンド112は、用語Xの定義を提供するための話されたコマンドとしてボイス支援システム120によって解釈され得る。コマンドに応答して、ボイス支援システム120は、用語Xの定義を取得するために、知識源、例えばローカルデータベース、リモートデータベース、又は別のタイプのローカル若しくはリモートインデックスにクエリし得る。用語Xは、それについて定義が取得されることができる任意の用語であり得る。例えば、用語Xは、辞書用語、例えば名詞、動詞若しくは形容詞、又は実体名、例えば人名若しくはビジネス名であり得る。定義が知識源から取得されたとき、定義は、文、例えば「Xは、[定義]です」の形式の文に合成され得る。文は、次いで、例えばボイス支援システム120のテキストトゥスピーチ機能を使用して可聴出力122に変換され、ボイス支援システム120中に含まれた又は接続されたスピーカを使用して出力され得る。
別の例として、コマンド114では、ユーザ110は、「ライトを消して」と言う。コマンド114は、1つ以上のライトを消すための話されたコマンドとしてボイス支援システムによって解釈され得る。コマンド114は、コンテキスト依存の形でボイス支援システム120によって解釈され得る。例えば、ボイス支援システム120は、それが位置する部屋を認識し、特にその部屋の中のライトを消し得る。コマンドに応答して、ボイス支援システム120は、1つ以上のライトを消させ、例えば、1つ以上のスマート電球がこれ以上発光しないようにさせ得る。ボイス支援システム120は、ボイス支援システムと1つ以上のライトとの間での、例えばBluetooth(登録商標)接続などのワイヤレス接続を通して、1つ以上のライトと直接対話することによって、又はライトと間接的に対話する、例えば、ライトを消すための1つ以上のメッセージをスマートホームハブ若しくはクラウドスマートホーム制御サーバに送ることによって、1つ以上のライトを消させ得る。ボイス支援システム120はまた、可聴応答124、例えば「ライトを消しました」と言う話されるボイスを生成し、コマンドがボイス支援システム120によって聞かれて理解されたことをユーザに確認し得る。
追加の例として、コマンド116では、ユーザ110は、「音楽を再生して」と言う。コマンド116は、音楽を再生するための話されたコマンドとしてボイス支援システムによって解釈され得る。コマンドに応答して、ボイス支援システム120は、ローカル音楽ファイル又は音楽ストリーミングサービスなどの音楽源にアクセスし、音楽源から音楽をストリーミングし、ストリーミングされた音楽126をボイス支援システム120中に含まれた又は接続されたスピーカから出力し得る。ボイス支援システム120によって出力される音楽126は、ユーザ110にパーソナライズされ得る。例えば、ボイス支援システム120は、例えばユーザ110のボイスの特質によってユーザ110を認識し得るか、又はユーザ110に静的に関連付けられ、次いで、ユーザ110によって以前に再生された音楽を再開し得るか、又はユーザ110にパーソナライズされたプレイリストを再生し得る。
ボイス支援システム120は、音声対話システムであり得、例えばボイス支援システム120は、テキストトゥスピーチ機能を使用してユーザ110と会話することが可能であり得る。
音声書き起こしシステム
図1Bは、実例的な実施形態に従った、音声書き起こしシステム140の例示である。
図1Bは、実例的な実施形態に従った、音声書き起こしシステム140の例示である。
音声書き起こしシステム140は、例示されているように、スマートフォンであり得るか、若しくはスマートフォンを使用して実装され得るか、又は任意の他の適したコンピューティングデバイス、例えばラップトップコンピュータ、デスクトップコンピュータ、タブレットコンピュータ、ゲームコンソール、若しくはスマートハブであり得る。
音声書き起こしシステム140が動作する環境は、背景雑音102を含み得る。背景雑音102は、音声書き起こしシステムが使用されているコンテキストに関連し得る所与のタイプの背景雑音であり得る。例えば、背景雑音102は、背景のお喋り及び食事の雑音などのカフェの雑音、交通の雑音などの通りの雑音、足音などの歩行者エリアの雑音、及び/又はエンジンの雑音などのバスの雑音であり得る。音声書き起こしシステム140は、背景雑音102を含む環境中で動作するように適応され得る。音声書き起こしシステム140はまた、所与の音響特性、例えば音の吸収、反射、及び/又は残響を有する環境中で動作するように適応され得る。音声書き起こしシステム140は、図2に関連して説明される方法及び/又は図3Aに関連して説明される方法によって、背景雑音を含む及び/又は所与の音響特性を有する環境中で動作するように適応されている音声認識機械学習モデルを含み得る。
ユーザ130は、音声書き起こしシステム140に話し得る。ユーザが話したことに応答して、音声書き起こしシステム140は、音声132の内容を表すテキスト出力142を生成する。ユーザ130のボイスは、1つ以上の特質を有し得、例えば、ボイスは、所与のアクセント若しくは方言を有し、ボイスは、所与のユーザのボイスであり、ボイスは、所与の感情を伴って言われ、及び/又はボイスは、ある特定のトーン若しくは音質を有する。音声書き起こしシステム140は、1つ以上の特質を有するボイスで話されたコマンドで動作するように適応され得る。音声書き起こしシステムは、図2に関連して説明される方法及び/又は図3Aに関連して説明される方法によって、1つ以上の特質を有する1つ以上のボイスに適応されている音声認識機械学習モデルを含み得る。
音声を受信するために、音声書き起こしシステム140は、マイクロフォンを含むか、又はマイクロフォンに接続される。音声書き起こしシステム140は、音声オーディオの内容を認識し、音声の内容を表すテキストを出力する、例えば音声の内容を書き起こしするのに適したソフトウェアを含み得る。代替として又は追加として、音声書き起こしシステム140は、ネットワークを介して、例えばインターネット及び/又はローカルエリアネットワークを介して、音声オーディオを認識し、音声の内容を表すテキストを出力するのに適した1つ以上の他のシステム(複数可)に接続され得る。機能の第1の部分は、音声書き起こしシステム140のハードウェア及び/又はソフトウェアによって実行され得、機能の第2の部分は、1つ以上の他のシステムによって実行され得る。いくつかの例では、機能又はその大半は、これらの1つ以上の他のシステムがネットワーク上でアクセス可能である1つ以上の他のシステムによって提供され得るが、機能は、例えばネットワークからの音声書き起こしシステム140の切断及び/又は1つ以上の他のシステムの障害に起因して、これらの1つ以上の他のシステムがネットワーク上でアクセス可能でないときには、音声書き起こしシステム140によって提供され得る。これらの例では、音声書き起こしシステム140は、例えば、1つ以上の他のシステムへの接続なしに依然として動作することが可能でありながら、音声書き起こしの品質を改善するために、1つ以上の他のシステムのより大きい計算リソース及びデータ利用可能性を活用することが可能であり得る。
出力されたテキスト142は、音声書き起こしシステム140中に含まれた又は接続されたディスプレイ上に表示され得る。出力されたテキストは、音声書き起こしシステム140、例えばメッセージングアプリ上で実行している1つ以上のコンピュータプログラムに入力され得る。
ボイス支援方法
図1Cは、実例的な実施形態に従った、ボイス支援を実行するための方法150のフロー図である。オプションのステップは、破線で示される。実例的な方法150は、1つ以上のコンピューティングデバイス、例えば、図7に関連して説明されるハードウェア700によって実行される1つ以上のコンピュータ実行可能命令として実装され得る。1つ以上のコンピューティングデバイスは、ボイス支援システム、例えば、ボイス支援システム120であり得るか、若しくはそれを含み得、及び/又はスマートフォン、デスクトップコンピュータ、ラップトップコンピュータ、スマートハブ、若しくはゲームコンソールなどの多目的コンピューティングデバイスに一体化され得る。
図1Cは、実例的な実施形態に従った、ボイス支援を実行するための方法150のフロー図である。オプションのステップは、破線で示される。実例的な方法150は、1つ以上のコンピューティングデバイス、例えば、図7に関連して説明されるハードウェア700によって実行される1つ以上のコンピュータ実行可能命令として実装され得る。1つ以上のコンピューティングデバイスは、ボイス支援システム、例えば、ボイス支援システム120であり得るか、若しくはそれを含み得、及び/又はスマートフォン、デスクトップコンピュータ、ラップトップコンピュータ、スマートハブ、若しくはゲームコンソールなどの多目的コンピューティングデバイスに一体化され得る。
ステップ152では、音声オーディオがマイクロフォン、例えば、ボイス支援システムのマイクロフォン又は多目的コンピューティングデバイスに一体化若しくは接続されたマイクロフォンを使用して受信される。音声オーディオは、1つ以上の属性を有し得、例えば、音声オーディオは、背景雑音102に関連して説明されたような背景雑音を有し得るか、又は音声オーディオ中でキャプチャされたボイスは、1つ以上の特質を有し得、例えば所与のアクセント若しくは方言があり得る。音声オーディオが受信されると、音声オーディオは、メモリ、例えばボイス支援システム又は多目的コンピューティングデバイスのメモリ中にバッファリングされ得る。
ステップ154では、音声オーディオの内容が認識される。音声オーディオの内容は、本明細書に説明される方法、例えば図4の方法400を使用して認識され得る。音声オーディオの認識される内容は、テキスト、構文的内容(syntactic content)、及び/又は意味論的内容(semantic content)であり得る。認識された内容は、1つ以上のベクトルを使用して表され得る。追加として、例えば、更なる処理の後に、又は代替として、認識された内容は、1つ以上のトークンを使用して表され得る。認識された内容がテキストである場合、各トークン及び/又はベクトルは、文字、音素、形態素若しくは他の形態学的単位、単語部分、又は単語を表し得る。
ステップ156では、コマンドが、音声オーディオの内容に基づいて実行される。実行されるコマンドは、図1Aに関連して説明されたコマンド112、114、116のうちの任意のものであり得るが、それらに限定されず、説明された形で実行され得る。実行されるコマンドは、認識された内容を1つ以上のコマンドフレーズ又はコマンドパターンとマッチングすることによって決定され得る。マッチングは、おおよそであり得る。例えば、ライトを消すコマンド114の場合、コマンドは、単語「ライト(lights)」及び「消して(off)」を含むフレーズ、例えば、「ライトを消して(turn the lights off)」又は「ライトを消して(lights off)」とマッチングされ得る。コマンド114はまた、「ライトを閉じて(close the lights)」又は「ランプを消して(lamp off)」などの、「ライトを消して(turn the lights off)」におおよそ意味的に対応するフレーズとマッチングされ得る。
ステップ158では、可聴応答が、例えば、ボイス支援システム又は多目的コンピューティングデバイス中に含まれた又は接続されたスピーカを使用して、音声オーディオの内容に基づいて出力される。可聴応答は、図1Aに関連して説明された可聴応答122、124、126のうちの任意のものであり得、説明されたものと同じ又は同様の形で生成され得る。可聴応答は、話される文、単語若しくはフレーズ、音楽、又は別の音、例えば効果音若しくはアラームであり得る。可聴応答は、音声オーディオそれ自体の内容に基づき得、及び/又は音声オーディオの内容に間接的に基づき得、例えば、それ自体が音声オーディオの内容に基づく実行されたコマンドに基づき得る。
可聴応答が話される文、フレーズ、又は単語である場合、可聴応答を出力することは、テキストトゥスピーチ機能を使用して、文、フレーズ、又は単語のテキスト、ベクトル、又はトークン表現を文、フレーズ、又は単語に対応する話されるオーディオに変換することを含み得る。文又はフレーズの表現は、音声オーディオそれ自体の内容及び/又は実行されたコマンドに基づいて合成されている場合がある。例えば、コマンドが「Xって何?」の形式の定義検索コマンド(definition retrieval command)である場合、音声オーディオの内容は、Xを含み、コマンドは、定義[定義]を知識源から検索させる。「Xは[定義]です」の形式の文が合成され、ここで、Xは、音声オーディオの内容からのものであり、[定義]は、コマンドが実行されたことによって知識源から検索された内容である。
別の例として、コマンドが、1つ以上のスマート電球を消させるライト消灯コマンド(turn lights off command)などの、スマートデバイスに機能を実行させるコマンドである場合、可聴応答は、機能が実行された又は実行されていることを示す効果音であり得る。
図に破線によって示されるように、可聴応答を生成するステップはオプションであり、いくつかのコマンドについては、及び/又はいくつかの実装形態では生じない場合がある。例えば、スマートデバイスに機能を実行させるコマンドのケースでは、機能は、可聴応答が出力されることなしに実行され得る。可聴応答は、コマンドが成功裏に完了した、例えばライトが消されたという他のフィードバックをユーザが有するので、出力されない場合がある。
音声書き起こし方法
図1Dは、実例的な実施形態に従った、音声書き起こしを実行するための方法160のフロー図である。実例的な方法160は、1つ以上のコンピューティングデバイス、例えば、図7に関連して説明されるハードウェア700によって実行される1つ以上のコンピュータ実行可能命令として実装され得る。1つ以上のコンピューティングデバイスは、デスクトップコンピュータ、ラップトップコンピュータ、スマートフォン、スマートテレビ、又はゲームコンソールなどのコンピューティングデバイスであり得る。
図1Dは、実例的な実施形態に従った、音声書き起こしを実行するための方法160のフロー図である。実例的な方法160は、1つ以上のコンピューティングデバイス、例えば、図7に関連して説明されるハードウェア700によって実行される1つ以上のコンピュータ実行可能命令として実装され得る。1つ以上のコンピューティングデバイスは、デスクトップコンピュータ、ラップトップコンピュータ、スマートフォン、スマートテレビ、又はゲームコンソールなどのコンピューティングデバイスであり得る。
ステップ162では、音声オーディオがマイクロフォン、例えば、コンピューティングデバイスに一体化又は接続されたマイクロフォンを使用して受信される。音声オーディオは、1つ以上の属性を有し得、例えば、音声オーディオは、背景雑音102に関連して説明されたような背景雑音を有し得るか、又は音声オーディオ中でキャプチャされたボイスは、1つ以上の特質を有し得、例えば所与のアクセント若しくは方言があり得る。音声オーディオが受信されると、音声オーディオは、メモリ、例えばコンピューティングデバイスのメモリ中にバッファリングされ得る。
ステップ164では、音声オーディオの内容が認識される。音声オーディオの内容は、本明細書に説明される方法、例えば図4の方法400を使用して認識され得る。認識された内容は、1つ以上のベクトルを使用して表され得る。追加として、例えば、更なる処理の後に、又は代替として、認識された内容は、1つ以上のトークンを使用して表され得る。認識された内容がテキストである場合、各トークン及び/又はベクトルは、文字、音素、形態素若しくは他の形態学的単位、単語部分、又は単語を表し得る。
ステップ166では、テキストが、音声オーディオの内容に基づいて出力される。音声オーディオの認識された内容がテキスト内容である場合、出力されるテキストは、テキスト内容であり得るか、又は認識されたテキスト内容から導出され得る。例えば、テキスト内容は、1つ以上のトークンを使用して表され得、出力されるテキストは、トークンをそれらが表す文字、音素、形態素若しくは他の形態学的単位、単語部分、又は単語に変換することによって導出され得る。音声オーディオの認識された内容が意味論的内容であるか又は意味論的内容を含む場合、意味論的内容に対応する意味を有する出力テキストが導出され得る。音声オーディオの認識された内容が構文的内容であるか又は構文的内容を含む場合、構文的内容に対応する構造、例えば文法的構造を有する出力テキストが導出され得る。
出力されたテキストが表示され得る。出力されたテキストは、メッセージングアプリケーションなどの1つ以上のコンピュータプログラムに入力され得る。更なる処理が、出力されたテキストに対して実行され得る。例えば、出力されたテキストにおける綴り及び文法の誤りがハイライトされ得るか、又は訂正され得る。別の例では、出力されたテキストは、例えば機械翻訳システムを使用して翻訳され得る。
ラベル付けされていない発話を使用する音声認識機械学習モデル適応
図2は、実例的な実施形態に従った、ラベル付けされていない発話を使用して第1の音声認識機械学習モデルを適応させるための方法200のフロー図である。実例的な方法は、1つ以上のコンピューティングデバイス、例えば、図7に関連して説明されるハードウェア700によって実行される1つ以上のコンピュータ実行可能命令として実装され得る。
図2は、実例的な実施形態に従った、ラベル付けされていない発話を使用して第1の音声認識機械学習モデルを適応させるための方法200のフロー図である。実例的な方法は、1つ以上のコンピューティングデバイス、例えば、図7に関連して説明されるハードウェア700によって実行される1つ以上のコンピュータ実行可能命令として実装され得る。
第1の音声認識機械学習モデルは、音声認識ニューラルネットワークであり得る。音声認識ニューラルネットワークは、エンドツーエンド音声認識ニューラルネットワークであり得るか、又は音響モデル、発音レキシコン、及び言語モデルを含み得る。音声認識ニューラルネットワークは、1つ以上の畳み込みニューラルネットワーク(CNN)層を含み得る。音声認識ニューラルネットワークは、1つ以上の回帰層、例えば、長短期記憶(LSTM:long short-term memory)層及び/又は勾配回帰ユニット(GRU:gradient recurrent unit)層を含み得る。1つ以上の回帰層は、双方向回帰層、例えば、双方向LSTM(BLSTM)層であり得る。代替として、音声認識ニューラルネットワークは、1つ以上のフィードフォワードニューラルネットワーク層(feed-forward neural network layers)及び1つ以上のセルフアテンションニューラルネットワーク層(self-attention neural network layers)を含むトランスフォーマネットワーク(transformer network)であり得る。
例では、第1の音声認識機械学習モデルは、VGG(visual geometry group)ネットワークアーキテクチャ(ディープCNN)の初期層と、それに続く6層ピラミッド(6-layer pyramid)BLSTM(サブサンプリングを有するBLSTM)とを含む。ディープCNNは、2つの連続する2D畳み込み層と、それに続く1つの2D最大プーリング層と、次いで別の2つの2D畳み込み層と、それに続く1つの2D最大プーリング層とを含む、6つの層を有する。畳み込み層中で使用される2Dフィルタは、3×3の等倍サイズを有する。最大プーリング層は、3×3のパッチ及び2×2のストライドを有する。6層BLSTMは、各層及び方向に1024個のメモリブロックを有し、線形射影(linear projection)の後に各BLSTM層が続く。BLSTMによって実行されるサブサンプリング係数は4である。
第1の音声認識機械学習モデルは、音響特徴の形式の発話を受信するように構成され得る。これらの音響特徴は、第1のタイプの音響特徴であり得る。音響特徴は、フィルタバンク特徴であり得る。例えば、音響特徴は、40次元対数メル(40-dimensional log-Mel)フィルタバンク(FBANK)特徴であり得る。FBANK特徴は、3次元ピッチ特徴で拡張され得る。デルタ及び加速度特徴(Delta and acceleration features)が、これらの特徴に付加され得る。代替として、音響特徴は、サブバンド時間的包絡線(STE)特徴、例えば、40次元STE特徴であり得る。STE特徴は、3次元ピッチ特徴で拡張され得る。デルタ及び加速度特徴が、STE特徴に付加され得る。サブバンド時間的包絡線特徴は、声道の共鳴特質を反映する知覚周波数帯域におけるエネルギーピークを追跡する。
第1の音声認識機械学習モデルは、複数のラベル付けされた発話を使用して訓練されている場合がある。複数のラベル付けされた発話又は複数のラベル付けされた発話の大部分は、以下に指定された1つ以上の属性を有さない場合があり、例えば、複数のラベル付けされた発話は、発話の一般のセットであり得る。複数のラベル付けされた発話の各々は、発話と発話のそれぞれの書き起こしとを含む。それぞれの書き起こしは、1つ以上の文字を含み得る。第1の音声認識機械学習モデルの訓練の場合、複数のラベル付けされた発話の各々の発話は、第1のタイプの音響特徴として提供され得る。
第1の音声認識機械学習モデルは、複数のラベル付けされた発話のうちの各発話についての1つのそれぞれの書き起こしについて第1の音声認識機械学習モデルによって導出された事後確率に基づいて、損失関数に従って第1の音声認識機械学習モデルのパラメータ、例えば重みを更新することによって訓練されている場合がある。パラメータの更新は、逆伝搬アルゴリズムと組み合わせて損失係数を最小化することに向けられた勾配降下法、例えば、確率的勾配降下法(stochastic gradient descent)を使用することによって実行され得る。
使用され得る損失関数の例は、コネクショニスト時間的分類(CTC)損失関数である。CTC損失関数は、以下のように定義され得る。各発話は、各フレームに対して提供される音響特徴、例えば第1のタイプの音響特徴を有するT個のフレームを含み得る。発話についてのT長の音響特徴ベクトル、例えば各フレームについての第1のタイプの音響特徴を考慮すると、
であり、ここで、
は、フレームtにおけるd次元特徴ベクトルであり、書き起こし
であり、それは、L個の文字から成り、ここで、
は、異なる文字のセットであり、CTC損失関数LCTCは、以下のように定義され得る:
LCTC=-logPθ(C|X)
ここで、θは、音声認識機械学習モデルのパラメータ、例えば音声認識機械学習ニューラルネットワークの重みである。Xが複数のラベル付けされた発話のうちの所与の発話についての音響特徴である場合、書き起こしCは、発話のそれぞれの書き起こしである。
LCTC=-logPθ(C|X)
ここで、θは、音声認識機械学習モデルのパラメータ、例えば音声認識機械学習ニューラルネットワークの重みである。Xが複数のラベル付けされた発話のうちの所与の発話についての音響特徴である場合、書き起こしCは、発話のそれぞれの書き起こしである。
CTC損失関数は、追加のラベル、例えば文字として空欄を追加し、ラベル、例えば文字の反復を可能にすることによって、入力特徴シーケンスと同じ長さを有することを出力文字シーケンスに強いるCTCパスを導入することによって計算され得る。CTC損失LCTCは、Cから展開された全ての可能なCTCパスB-1(C)にわたって積分することによって計算され得る:
CTC損失が上述されたが、他の適した損失関数、例えば回帰ニューラルネットワーク-トランスデューサ損失(transducer loss)、格子なし最大相互情報量(lattice-free maximum mutual information)、又は交差エントロピー損失(cross-entropy loss)が使用され得ることに留意されたい。
ステップ210では、1つ以上の属性を有する発話が受信される。ラベル付けされていない発話は、1つ以上の音声片(pieces of speech)であり得る。1つ以上の音声片の各々は、連続する音声片であり得る。1つ以上の音声片の各々は、ポーズで開始され、ポーズ又は話者の交代で終了し得る。発話は、オーディオデータ、例えば圧縮若しくは非圧縮オーディオストリーム、又は圧縮若しくは非圧縮オーディオファイルとして受信され得る。
1つ以上の属性は、発話が所与の領域中にあることを含み得る。領域は、専門エリア、例えば、医学、法律、又はデジタル技術であり得る。領域は、科目、例えば科学、歴史、地理、又は文学であり得る。領域は、例えば、使用事例、例えば自宅支援、オフィス支援、又は製造支援であり得る。
1つ以上の属性は、発話が所与のユーザによるものであることを含み得る。
1つ以上の属性は、発話を話すボイスの1つ以上の特質を含み得る。
1つ以上の特質は、発話を話すボイスが所与のユーザのボイスであることを含み得る。所与のユーザによって話された発話は、特定の声の特性を有し、例えば、所与のアクセントを有し、所与の方言があり、所与のリズムを有し、及び/又は所与の音質を有し得る。
1つ以上の特質は、発話を話すボイスが所与のアクセントを有することを含み得る。例えば、アクセントは、所与の国、地域、又は都市エリアに関連するアクセント、及び/又は所与のコミュニティに関連するアクセントであり得、ここで、所与のコミュニティは、地理的に局在され得るか、又は地理的に分散され得る。
1つ以上の属性は、発話が所与の環境中で録音されることを含み得る。所与の環境中で録音されている発話は、特定の音響特性を有し得、例えば、特定の音響特性は、環境内での音の吸収、残響、及び/又は反射の量を反映し得る。これらの発話はまた、環境中で通常遭遇される背景雑音を含み得る。
1つ以上の属性は、発話が所与のタイプの背景雑音を有することを含み得る。例えば、背景雑音は、背景のお喋り及び食事の雑音などのカフェの雑音、交通の雑音などの通りの雑音、足音などの歩行者エリアの雑音、エンジンの雑音などのバスの雑音、飛行機が離陸するなどの空港の雑音、ガヤガヤ、車の雑音、レストランの雑音、通りの雑音又は電車の雑音であり得る。
1つ以上の属性は、発話が1つ以上の特色を有する背景雑音を有することを含み得る。1つ以上の特色は、背景雑音が指定された雑音レベルのものであること、指定された雑音レベルを上回ること、指定された雑音レベルを下回ること、又は指定された範囲内の雑音レベルのものであることを含み得る。雑音レベルは、発話の信号対雑音比によって、又は雑音を定量化するための任意の他の適した測定基準を使用して雑音量として指定され得る。1つ以上の特色は、背景雑音が指定されたピッチのものであること、指定されたピッチを上回ること、指定されたピッチを下回ること、又は指定された範囲内のピッチのものであることを含み得る。1つ以上の特色は、背景雑音が背景雑音をキャプチャするデバイスに対する1つの指定された方向及び/又は方向範囲からのものであることを含み得る。1つ以上の特色は、指定された音質を有する背景雑音を含み得る。1つ以上の特色は、特定のソニックテクスチャを有する背景雑音を含み得る。1つ以上の特色は、背景雑音が所与のタイプのものであることを含み得る。
ラベル付けされていない発話は、1つ以上の属性を自然に有し得るか、又は1つ以上の属性を有するように人工的に修正されている場合がある。例えば、1つ以上の属性が、発話が所与のタイプの背景雑音を有することを含む場合、所与のタイプの背景雑音を有さない発話は、所与のタイプの背景雑音の録音又はシミュレーションと組み合わされている、例えば録音又はシミュレーション上に重ねられている場合がある。別の例として、1つ以上の属性が、発話が所与の環境中で録音されていることを含む場合、別の環境、例えばスタジオ環境中で録音されている発話は、発話が所与の環境中で録音されているようにシミュレートするように修正され得る。修正は、所与の環境の異なる音響特性を別の環境に反映するための発話の音響の変換、及び/又は発話を所与の環境中で遭遇された雑音の録音又はシミュレーションと組み合わせる、例えば重ねることを含み得る。
ステップ220では、ラベル付けされていない発話の第1の書き起こしが生成される。
第1の書き起こしは、第2の音声認識機械学習モデルによって生成され得る。第2の音声認識機械学習モデルは、第1の音声認識機械学習モデルに関連して説明されたタイプのうちの任意のものであり得る。第2の音声認識機械学習モデルは、第1のタイプの音響特徴、例えばFBANK特徴を受信するように構成され得る。第2の音声認識機械学習モデルは、第1の音声認識機械学習モデルと同じアーキテクチャを有し得る。第2の音声認識機械学習モデルは、第1の音声認識機械学習モデルと同じ形で及び/又は同じ訓練データを使用して訓練されている場合がある。第2の音声認識機械学習モデルは、教師あり適応を経験している場合があり、例えば、図3Aに関連して説明されるように、1つ以上の属性を有するラベル付けされた複数の発話を使用して1つ以上の属性を有する発話に適応されている場合がある。
第1の書き起こしは、第2の音声認識機械学習モデルを使用して発話を復号することによって生成され得る。復号は、ビームサーチアルゴリズムを使用して実行され得る。ビーム幅は、任意の適した値、例えば20に設定され得る。ビームサーチアルゴリズムは、1パスビームサーチアルゴリズムであり得る。CTCスコアが、ビームサーチアルゴリズム中で使用され得る。第1の書き起こしは、例えば1最良仮説を復号することによって生成されたN最良仮説であり得る。
ステップ230では、ラベル付けされていない発話の第2の書き起こしが生成される。
第2の書き起こしは、第3の音声認識機械学習モデルによって生成され得る。第3の音声認識機械学習モデルは、第1の音声認識機械学習モデルに関連して説明されたタイプのうちの任意のものであり得る。第3の音声認識機械学習モデルは、第1のタイプ以外のタイプの音響特徴を受信するように構成され得る。例えば、第1のタイプの音響特徴がFBANK特徴である場合、第3の音声認識機械学習モデルは、STE特徴を受信するように構成され得るか、又はその逆も同様であり得る。第3の音声認識機械学習モデルは、第1の音声認識機械学習モデル及び/又は第2の音声認識機械学習モデルと同じアーキテクチャを有し得る。第3の音声認識機械学習モデルは、第1の音声認識機械学習モデルと同じ形で及び/又は同じ若しくは同様の訓練データを使用して訓練されている場合がある。例えば、第3の音声認識機械学習モデルは、同じ複数のラベル付けされた発話を使用して訓練されている場合があるが、音響特徴は、第1のタイプ以外のタイプのもの、例えばFBANK特徴の代わりにSTE特徴であり得、又はその逆も同様であり得る。第3の音声認識機械学習モデルは、教師あり適応を経験している場合があり、例えば、図3Aに関連して説明されるように、1つ以上の属性を有するラベル付けされた複数の発話を使用して1つ以上の属性を有する発話に適応されている場合がある。
第2の書き起こしは、第3の音声認識機械学習モデルを使用してラベル付けされていない発話を復号することによって生成され得る。復号は、ビームサーチアルゴリズムを使用して実行され得る。ビーム幅は、任意の適した値、例えば20に設定され得る。ビームサーチアルゴリズムは、1パスビームサーチアルゴリズムであり得る。CTCスコアが、ビームサーチアルゴリズム中で使用され得る。第1の書き起こしは、例えば1最良仮説を復号することによって生成されたN最良仮説であり得る。
代替として、第2の書き起こしは、第2の音声認識機械学習モデルによって生成され得る。第2の書き起こしは、第2の音声認識機械学習モデルを使用してラベル付けされていない発話を復号することによって生成され得る第1の書き起こしとは異なる書き起こしであり得る。第2の書き起こしは、第1の書き起こしとは異なるNについてのN最良仮説であり得る。例えば、第1の書き起こしは、1最良仮説であり得、第2の書き起こしは、2最良仮説であり得る。他のN最良仮説が使用されることができ、例えば、1最良仮説が第1の書き起こしとして使用され得、3最良仮説が第2の書き起こしとして使用され得ることに留意されたい。
第1の書き起こし及び第2の書き起こしの生成が説明されたが、更なる書き起こしが生成され使用され得ることに留意されたい。例えば、更なる書き起こしは、1つ以上の更なる音声認識機械学習モデルを使用することによって生成され得る。別の例では、更なる書き起こしは、第1の書き起こし及び第2の書き起こしのために使用されるもの以外のNの値についての第2の音声認識機械学習モデルのN最良仮説を使用することによって生成され得る。更に、複数の書き起こしを生成するための説明された技法は組み合わされ得、例えば、複数のN最良書き起こしが複数の音声認識機械学習モデルを使用して生成され得る。
ステップ240では、第1の音声認識機械学習モデルのパラメータが、ラベル付けされていない発話、第1の書き起こし、及び第2の書き起こしを使用して更新される。ステップ240は、処理ステップ242及び更新ステップ244を含み得る。
処理ステップ242では、ラベル付けされていない発話が、第1の書き起こし及び第2の書き起こしについての事後確率を導出するために、第1の音声認識機械学習モデルによって処理される。
ステップ244では、第1の音声認識機械学習モデルのパラメータが、第1の書き起こし及び第2の書き起こしについての導出された事後確率に基づいて、損失関数に従って更新される。
更新されるパラメータは、重み、例えば、第1の音声認識機械学習モデルがニューラルネットワークであるか又はニューラルネットワークを含むニューラルネットワークの重みであり得る。パラメータの更新は、逆伝搬アルゴリズムと組み合わせて損失係数を最小化することに向けられた勾配降下法、例えば、確率的勾配降下法を使用することによって実行され得る。
損失関数は、多重仮説損失関数(multiple hypotheses loss function)、例えば、発話の内容について、書き起こしなどの多重仮説を使用して損失値を導出するように構成された損失関数であり得る。損失関数は、多重仮説CTC損失関数
であり得、それは、以下のように定義され得る:
ここで、
は、第1、第2、・・・、第Nの書き起こしである。Nは、使用された書き起こしの数に基づいて選ばれることができ、ここで、第1の書き起こし及び第2の書き起こしが存在するが、更なる書き起こしは存在せず、Nは、2であり得る。複数の書き起こしの使用は、CTC損失関数の計算に対する書き起こしにおける誤りの影響を軽減し得る。対数の特質を使用して、上記の式は以下のように書き換えられることができる:
ここで、aiは、書き起こし
及び音響特徴シーケンスXをリンクするCTCパスである。
2つの書き起こしが使用される場合、上記の式は、以下のようになる:
ここで、ai及びbjは、書き起こし
を音響特徴シーケンスXとそれぞれリンクするCTCパスのうちの1つである。この式から、CTCパスaiを使用することによって計算された確率Pθ(ai|X)が全ての確率
で乗算されるであろうことが分かる。この重み付けは、
における異なるCTCパスから計算された確率に基づいて、CTC損失
の計算に対する、
における書き起こし誤りによって引き起こされたCTCパス
における不確実性の影響を軽減することができる。
ラベル付けされた発話を使用する音声認識機械学習モデル適応
図3Aは、実例的な実施形態に従った、ラベル付けされた発話を使用して2つの音声認識機械学習モデルを適応させるための方法300Aのフロー図である。実例的な方法は、1つ以上のコンピューティングデバイス、例えば、図7に関連して説明されるハードウェア700によって実行される1つ以上のコンピュータ実行可能命令として実装され得る。
図3Aは、実例的な実施形態に従った、ラベル付けされた発話を使用して2つの音声認識機械学習モデルを適応させるための方法300Aのフロー図である。実例的な方法は、1つ以上のコンピューティングデバイス、例えば、図7に関連して説明されるハードウェア700によって実行される1つ以上のコンピュータ実行可能命令として実装され得る。
ステップ310では、1つ以上の属性を有する1つ以上のラベル付けされた発話が受信される。1つ以上のラベル付けされた発話の各々は、発話と発話のそれぞれの書き起こしとを含む。それぞれの書き起こしは、1つ以上の文字を含み得る。1つ以上の属性は、方法200のステップ210に関連して上述された属性のうちの任意のもの又は任意の組み合わせを含み得る。
ステップ320では、第1のタイプの特徴が、1つ以上のラベル付けされた発話から導出される。第1のタイプの特徴は、音響特徴であり得る。音響特徴は、フィルタバンク特徴であり得る。例えば、音響特徴は、40次元対数メルフィルタバンク(FBANK)特徴であり得る。FBANK特徴は、3次元ピッチ特徴で拡張され得る。デルタ及び加速度特徴が、これらの特徴に付加され得る。代替として、音響特徴は、サブバンド時間的包絡線(STE)特徴、例えば、40次元STE特徴であり得る。STE特徴は、3次元ピッチ特徴で拡張され得る。デルタ及び加速度特徴が、STE特徴に付加され得る。
ステップ330では、第2の音声認識機械学習モデルのパラメータが、第1のタイプの導出された特徴と1つ以上のラベル付けされた発話のラベルとを使用して更新される。
第2の音声認識機械学習モデルは、第1のタイプの特徴を受信するように構成され得る。第2の音声認識機械学習モデルは、方法200の第1の音声認識機械学習モデルに関連して説明されたタイプのうちの任意のものであり得る。第2の音声認識機械学習モデルは、第1のタイプの特徴、例えばFBANK特徴を受信するように構成され得る。第2の音声認識機械学習モデルは、方法200の第1の音声認識機械学習モデルと同じ形で及び/又は同じ訓練データを使用して訓練されている場合がある。
第2の音声認識機械学習モデルのパラメータは、重みであり得、例えば、ここで、第2の音声認識機械学習モデルは、ニューラルネットワークである。パラメータは、1つ以上の属性を有する1つ以上のラベル付けされた発話のうちの各発話についてのそれぞれの書き起こしについて第2の音声認識機械学習モデルによって導出された事後確率に基づいて、損失関数に従って更新され得る。パラメータの更新は、逆伝搬アルゴリズムと組み合わせて損失係数を最小化することに向けられた勾配降下法、例えば、確率的勾配降下法を使用することによって実行され得る。損失関数は、CTC損失関数であり得るか、又は交差エントロピー損失関数などの別の適した損失関数であり得る。
ステップ340では、第2のタイプの特徴が、1つ以上のラベル付けされた発話から導出される。第2のタイプの特徴は、音響特徴であり得る。第2のタイプは、第1のタイプに関連して説明されたタイプのうちの任意のものであり得るが、第1のタイプとは異なるタイプである。例えば、第1のタイプの特徴がFBANK特徴である場合、第2のタイプの特徴は、STE特徴であり得るか、又はその逆も同様であり得る。
ステップ350では、第3の音声認識機械学習モデルのパラメータが、第2のタイプの導出された特徴と1つ以上のラベル付けされた発話のラベルとを使用して更新される。
第3の音声認識機械学習モデルは、方法200の第1の音声認識機械学習モデルに関連して説明されたタイプのうちの任意のものであり得る。第2の音声認識機械学習モデルは、第2のタイプの特徴、例えばSTE特徴を受信するように構成され得る。第3の音声認識機械学習モデルは、方法200の第1の音声認識機械学習モデルと同じ形で及び/又は同じ訓練データを使用して訓練されている場合がある。
第3の音声認識機械学習モデルのパラメータは、ステップ330における第2の音声認識機械学習モデルのパラメータの更新に関連して説明されたのと同じ又は同様の方法で更新され得る。
図3Bは、実例的な実施形態に従った、ラベル付けされた発話を使用して第1の音声認識機械学習モデルを適応させるための方法300Bのフロー図である。実例的な方法は、1つ以上のコンピューティングデバイス、例えば、図7に関連して説明されるハードウェア700によって実行される1つ以上のコンピュータ実行可能命令として実装され得る。
ステップ310では、1つ以上の属性を有する1つ以上のラベル付けされた発話が受信される。
ステップ360では、第1の音声認識機械学習モデルのパラメータが、1つ以上のラベル付けされた発話を使用して更新される。第1の音声認識機械学習モデルのパラメータは、方法300Aのステップ330における第2の音声認識機械学習モデルのパラメータの更新に関連して説明されたのと同じ又は同様の方法で更新され得る。
音声認識方法
図4は、実例的な実施形態に従った、音声認識を実行するための方法400のフロー図である。実例的な方法は、1つ以上のコンピューティングデバイス、例えば、図7に関連して説明されるハードウェア700によって実行される1つ以上のコンピュータ実行可能命令として実装され得る。
図4は、実例的な実施形態に従った、音声認識を実行するための方法400のフロー図である。実例的な方法は、1つ以上のコンピューティングデバイス、例えば、図7に関連して説明されるハードウェア700によって実行される1つ以上のコンピュータ実行可能命令として実装され得る。
ステップ410では、1つ以上の属性を有する1つ以上の発話が受信される。1つ以上の属性は、方法200のステップ210に関連して上述された属性のうちの任意のもの又は任意の組み合わせを含み得る。
ステップ420では、1つ以上の発話の内容が、1つ以上の属性を有する発話に適応された音声認識機械学習モデルを使用して認識される。音声認識機械学習モデルは、方法200及び/又は方法300Bを使用して1つ以上の属性を有する発話に適応されている場合がある。内容を認識することは、音声認識機械学習モデルを使用して1つ以上の発話を復号することを含み得る。復号は、ビームサーチアルゴリズムを使用して実行され得る。ビーム幅は、任意の適した値、例えば20に設定され得る。ビームサーチアルゴリズムは、1パスビームサーチアルゴリズムであり得る。CTCスコアが、ビームサーチアルゴリズム中で使用され得る。復号の結果は、1つ以上の属性の書き起こしであり得る。1つ以上の発話の書き起こしは、1つ以上の発話のテキスト内容であり得る。代替として又は追加として、音声認識機械学習モデルは、1つ以上の発話の意味論的内容、表現内容(expression content)、及び/又は他の非テキスト内容を認識し得る。
ステップ430では、機能が、認識された内容に基づいて実行される。機能を実行することは、コマンド実行、テキスト出力、及び/又音声対話システム機能のうちの少なくとも1つを含む。コマンド実行の例及び実装は、図1A及び図1Cに関連して説明される。テキスト出力の例及び実装は、図1B及び図1Dに関連して説明される。
音声対話システムは、ユーザと会話することが可能なシステムである。音声認識を実行することに加えて、音声対話システム機能の例は、自然言語理解機能、例えば、1つ以上の発話の認識された内容から概念的及び/若しくは意味論的内容を推論することができる機能、ユーザとの会話を構築し、例えば1つ以上の発話及び/若しくは1つ以上の以前の発話の認識された及び/若しくは推論された内容に基づいて会話を方向付けることができる対話管理機能、1つ以上の発話の内容に対する応答を生成する際に使用するための情報を、例えばデータストア若しくはインターネットから検索する領域推理(domain reasoning)若しくはバックエンド機能(backend functionality)、及び1つ以上の発話の内容、検索された情報、対話マネージャの状態、及び/若しくは推論された概念的及び/若しくは意味論的内容に基づいて応答を生成する応答生成機能を含み、並びに/又はテキスト若しくはトークンとして生成され得る生成された応答を話されるオーディオに変換するためのテキストトゥスピーチ機能を含む。
音声認識機械学習モデルの教師あり適応のためのシステム
図5は、実例的な実施形態に従った、音声認識機械学習モデルの教師あり適応のためのシステム500の概略的ブロック図である。システム500は、1つ以上のコンピューティングデバイス、例えば、図7に関連して説明されるハードウェア700上の1つ以上のコンピュータ実行可能命令を使用して実装され得る。
図5は、実例的な実施形態に従った、音声認識機械学習モデルの教師あり適応のためのシステム500の概略的ブロック図である。システム500は、1つ以上のコンピューティングデバイス、例えば、図7に関連して説明されるハードウェア700上の1つ以上のコンピュータ実行可能命令を使用して実装され得る。
システムは、1つ以上のラベル付けされた発話510と1つ以上のラベル付けされた発話のラベル540、例えば書き起こしとを使用して教師あり適応を実行する。1つ以上のラベル付けされた発話510は、1つ以上の属性を有する発話である。
システムは、1つ以上のラベル付けされた発話510から第1のタイプの特徴である特徴1と、第2のタイプの特徴である特徴2とを抽出する特徴抽出モジュール520を含む。第1のタイプの特徴は、FBANK特徴であり得、第2のタイプの特徴は、STE特徴であり得る。
システム500は、初期音声認識機械学習モデル530を含む。少なくとも2つの初期音声認識機械学習モデル530が存在する。初期音声認識機械学習モデル530のうちの少なくとも一方は、第1のタイプの特徴である特徴1を受信し、初期音声認識機械学習モデル530の少なくとも1つの他方は、第2のタイプの特徴である特徴2を受信する。音声認識機械学習モデルは、1つ以上の発話のラベル、例えば書き起こしについての事後確率を導出するように使用可能である。例えば、音声認識機械学習モデルは、それぞれのタイプの特徴を受信することに応答して確率ベクトルを出力し得、確率ベクトルは、それらの特徴の異なる書き起こし又はラベルの尤度、例えば、受信された特徴が所与の文字に対応する確率を示す。
システム500は、損失関数モジュール550を含む。損失関数モジュール550は、1つ以上のラベル付けされた発話のラベル540と初期音声認識機械学習モデル530の出力とを受信する。損失関数モジュール550は、これらを利用して、初期音声認識機械学習モデル530の各々についてのそれぞれの損失値を算出する。損失関数モジュールは、CTC損失関数又は別の適した損失関数、例えば、交差エントロピー損失関数を使用してそれぞれの損失値を算出し得る。
システム500は、パラメータ更新モジュール560を含む。パラメータ更新モジュール560は、損失関数モジュール550から初期音声認識機械学習モデル530及びそれぞれの損失値を受信する。パラメータ更新モジュール560は、対応する損失値に従って初期音声認識機械学習モデル530の各々のパラメータを更新する。
パラメータ更新の結果は、1つ以上の属性を有する発話に適応される適応音声認識機械学習モデル570である。
半教師あり音声認識機械学習モデル適応のためのシステム
図6は、実例的な実施形態に従った、音声認識機械学習モデルの半教師あり適応のためのシステムの概略的ブロック図である。システム600は、1つ以上のコンピューティングデバイス、例えば、図7に関連して説明されるハードウェア700上の1つ以上のコンピュータ実行可能命令を使用して実装され得る。
図6は、実例的な実施形態に従った、音声認識機械学習モデルの半教師あり適応のためのシステムの概略的ブロック図である。システム600は、1つ以上のコンピューティングデバイス、例えば、図7に関連して説明されるハードウェア700上の1つ以上のコンピュータ実行可能命令を使用して実装され得る。
システム600は、1つ以上のラベル付けされた発話510と1つ以上のラベル付けされた発話のラベル540、例えば書き起こしと、1つ以上のラベル付けされていない発話610とを使用して半教師あり適応を実行する。
システム600は、1つ以上のラベル付けされた発話510及び1つ以上のラベル付けされていない発話610から第1のタイプの特徴である特徴1と、第2のタイプの特徴である特徴2とを抽出する特徴抽出モジュール520を含む。第1のタイプの特徴は、FBANK特徴であり得、第2のタイプの特徴は、STE特徴であり得る。
システム600は、初期音声認識機械学習モデル620を含む。初期音声認識機械学習モデル620は、ラベル付けされた発話510及びラベル付けされていない発話610の両方についての第1のタイプの抽出された特徴を受信する。
復号モジュール630は、対応する適応音声認識機械学習モデル570を使用して第1のタイプの抽出された特徴及び第2のタイプの抽出された特徴から書き起こしを生成する。言い換えれば、復号モジュール630は、そのような特徴を受信する適応音声認識機械学習モデル570のうちのモデルによって第1のタイプの特徴からものである可能性が最も高いと推定される1つ以上のラベル付けされていない発話の第1の書き起こしを決定し、また、そのような特徴を受信する適応音声認識機械学習モデル570のうちのモデルによって第2のタイプの特徴からものである可能性が最も高いと推定される1つ以上のラベル付けされていない発話の第2の書き起こしを決定する。第1の書き起こし及び第2の書き起こしは、1最良仮説640である。
システム600は、損失関数モジュール650を含む。ラベル付けされた発話の場合、損失関数モジュール550は、1つ以上のラベル付けされた発話のラベル540と初期音声認識機械学習モデル620の対応する出力とを受信する。損失関数モジュール650は、これらを利用して、それぞれの損失値を算出する。ラベル付けされていない発話の場合、損失関数モジュールは、1最良仮説と初期音声認識機械学習モデル620の対応する出力とを受信する。損失関数モジュール650は、これらを利用して、それぞれの損失値を算出する。損失関数モジュール650は、それぞれの損失値を算出するために使用される多重仮説損失関数を実装する。多重仮説損失関数は、前述されたように、多重仮説CTC損失関数
であり得る。多重仮説損失関数は、ラベル付けされた発話及びラベル付けされていない発話の両方のために使用される。ラベル付けされていない発話の場合、多重仮説は、1最良仮説、例えば適応モデル570の各々についての1最良仮説である。ラベル付けされた発話の場合、多重仮説損失関数が使用されるが、仮説の各々は同じであり、ラベル付けされた発話のラベル540である。言い換えれば、多重仮説と連携する損失関数は、ラベル付けされた発話についての損失値を算出するときに使用されるが、単一の正しい仮説、例えばラベルが知られている場合、この単一の仮説は、損失関数によって使用される全ての仮説のために使用される。これは、単一の損失関数がラベル付けされていない発話及びラベル付けされた発話の両方のために使用されることができることを意味するので有益である。
パラメータ更新モジュール560は、損失関数モジュール650から初期音声認識機械学習モデル620及び損失値を受信する。パラメータ更新モジュール560は、損失値に従って初期音声認識機械学習モデル620のパラメータを更新する。
パラメータ更新の結果は、1つ以上の属性を有する発話に適応される適応音声認識機械学習モデル660である。
コンピューティングハードウェア
図7は、実施形態に従った方法を実装するために使用されることができるハードウェアの概略図である。これはただの一例に過ぎず、他の配置が使用されることができることに留意されたい。
図7は、実施形態に従った方法を実装するために使用されることができるハードウェアの概略図である。これはただの一例に過ぎず、他の配置が使用されることができることに留意されたい。
ハードウェアは、コンピューティングセクション700を備える。特にこの例では、このセクションのコンポーネントは、共に説明される。しかしながら、それらは必ずしもコロケートされないことが理解されるであろう。
コンピューティングセクション700のコンポーネントは、(中央処理ユニット、CPUなどの)処理ユニット713、システムメモリ701、システムメモリ701を含む様々なシステムコンポーネントを処理ユニット713に結合するシステムバス711を含み得るが、それらに限定されない。システムバス711は、メモリバス又はメモリコントローラ、ペリフェラルバス、及び様々なバスアーキテクチャのうちの任意のものを使用するローカルバス、等を含む、いくつかのタイプのバス構造のうちの任意のものであり得る。コンピューティングセクション700はまた、バス711に接続された外部メモリ715を含む。
システムメモリ701は、読取専用メモリなどの揮発性及び/又は不揮発性メモリの形式のコンピュータ記憶媒体を含む。スタートアップ中などにコンピュータ内の要素間での情報の転送を助けるルーチンを含む基本入力出力システム(BIOS:basic input output system)703は、典型的には、システムメモリ701中に記憶される。加えて、システムメモリは、CPU713によって使用されているオペレーティングシステム705、アプリケーションプログラム707、及びプログラムデータ709を含む。
また、インターフェース725は、バス711に接続される。インターフェースは、コンピュータシステムが更なるデバイスから情報を受信するためのネットワークインターフェースであり得る。インターフェースはまた、ユーザがある特定のコマンド等に応答することを可能にするユーザインターフェースであり得る。
この例では、ビデオインターフェース717が提供される。ビデオインターフェース717は、グラフィックス処理メモリ721に接続されたグラフィックス処理ユニット719を備える。
グラフィックス処理ユニット(GPU)719は、ニューラルネットワーク適応などの、データ並列演算へのその適応により、音声認識機械学習モデルを適応させるのに特に良く適している。従って、実施形態では、音声認識機械学習モデルを適応させるための処理は、CPU713とGPU719との間で分割され得る。
いくつかの実施形態では、異なるハードウェアが、音声認識機械学習モデルを適応させ、音声認識を実行するために使用され得ることに留意されたい。例えば、音声認識機械学習モデルの適応は、1つ以上のローカルデスクトップ若しくはワークステーションコンピュータ上又はクラウドコンピューティングシステムのデバイス上で生じ得、それは、1つ以上のディスクリートデスクトップ又はワークステーションGPU、1つ以上のディスクリートデスクトップ又はワークステーションCPU、例えばPC向けアーキテクチャを有するプロセッサ、及びかなりの量、例えば16GB以上の揮発性システムメモリを含み得る。例えば、音声認識の実行は、モバイル又は埋め込み型ハードウェアを使用し得るが、それは、システムオンチップ(SoC)の一部としてモバイルGPUを含み得るか、又はGPUを含まない場合があり、1つ以上のモバイル又は埋め込み型CPU、例えばモバイル向けアーキテクチャ又はマイクロコントローラ向けアーキテクチャを有するプロセッサ、及びより少ない量、例えば1GB未満の揮発性メモリを含み得る。例えば、音声認識を実行するハードウェアは、仮想アシスタント又はスマートスピーカを含む携帯電話などのボイス支援システム120であり得る。音声認識機械学習モデルを適応させるために使用されるハードウェアは、著しくより多くの計算能力を有し得、例えば、エージェントを使用してタスクを実行するために使用されるハードウェアよりも多くの動作を毎秒実行し、より多くのメモリを有することが可能であり得る。例えば、1つ以上のニューラルネットワークを使用して推論を実行することによって音声認識を実行することは、例えば、1つ以上のニューラルネットワークのパラメータを更新することによって音声認識機械学習モデルを適応させるよりも、実質的に、計算的により少ないリソース集中になるので、より少ないリソースを有するハードウェアを使用することが可能である。更に、技法は、音声認識を実行するために、例えば、1つ以上のニューラルネットワークを使用して推論を実行するために使用される計算リソースを低減するために用いられることができる。そのような技法の例は、モデル蒸留を、及びニューラルネットワークでは、枝刈り及び量子化などのニューラルネットワーク圧縮技法を含む。
いくつかの実施形態では、同じハードウェアが、音声認識機械学習モデルを適応させ、音声認識を実行するために使用され得る。音声認識機械学習モデルの適応は、音声認識機械学習モデルの初期訓練と比較して比較的少量のデータを使用して実行され得、このことから、音声認識のために使用されるモバイル又は埋め込み型ハードウェア上でより実行しやすい。音声認識自体のために使用されるモバイル又は埋め込み型ハードウェア上で適応を実行することは、外部コンピューティングデバイス、例えばクラウドコンピューティングシステムのサーバにこれらの機密の発話を送信することを回避するので、モバイル又は埋め込み型ハードウェア上で適応を実行することは、適応のために使用される発話が機密、例えば極秘又は内密である場合に特に有利であり得る。このことから、そのような機密情報に関連付けられた属性を有する発話への音声認識機械学習モデルの適応は、プライバシー、セキュリティ、又は機密性を損なうことなしに実行されることができる。例えば、音声認識機械学習モデルは、ユーザによる内密の発話に基づいてユーザのボイスに適応され得るか、又は極秘の商業的機密情報を含み得る発話に基づいて企業のオフィス中の背景雑音に適応され得る。モバイル又は埋め込み型ハードウェア上での適応の実行はまた、例えば、インターネット接続又は別のコンピュータへの他のタイプの接続なしに適応がオフラインで実行されることを可能にし、そのような接続が利用可能な場合であっても、さもなければ、別のコンピュータに発話を送り、適応モデルを受信するためにモバイル又は埋め込み型ハードウェアによって使用されるであろうネットワークリソースを低減する。
実験
音声認識機械学習モデルの半教師あり適応の有効性を評価するために実行された実験が以下に提示される。
音声認識機械学習モデルの半教師あり適応の有効性を評価するために実行された実験が以下に提示される。
以下に説明される実験では、音声認識機械学習モデルの各々は、VGGネットアーキテクチャ(ディープCNN)と、それに続く6層ピラミッドBLSTM(サブサンプリングを有するBLSTM)を有するニューラルネットワークアーキテクチャである。6層CTCアーキテクチャは、2つの連続する2D畳み込み層と、それに続く1つの2D最大プーリング層と、次いで別の2つの2D畳み込み層と、それに続く1つの2D最大プーリング層とを有する。畳み込み層中で使用される2Dフィルタは、3×3の等倍サイズを有する。最大プーリング層は、3×3のパッチ及び2×2のストライドを有する。6層BLSTMは、各層及び方向に1024個のメモリブロックを有し、線形射影の後に各BLSTM層が続く。BLSTMによって実行されるサブサンプリング係数は4である。これらの音声認識機械学習モデルが復号において使用されるとき、CTCスコアを使用する1パスビームサーチアルゴリズムが実行され、ビーム幅は、20に設定される。
実験は、クリーン訓練データ(clean training data)を使用して訓練された音声認識機械学習モデルと、多条件訓練データ(multi-condition training data)を使用して訓練された音声認識機械学習モデルとの両方に対して実行された。
実験において使用されたクリーン訓練データは、読まれた音声のコーパスであるWSJコーパスからのものだった。コーパスにおける全ての音声発話は、16kHzでサンプリングされ、かなりクリーンである。WSJの標準訓練セットtrain_si284は、81時間ほどの音声から成る。訓練中、1時間ほどの音声から成る標準開発セットtest_dev93が、交差検証のために使用された。
多条件訓練データは、全体で189時間ほどの音声から成るCHiME-4コーパスからのものだった。CHiME-4多条件訓練データは、WSJ訓練コーパスからのクリーンな音声発話と、シミュレートされた及び本物の雑音データ(simulated and real noisy data)とから成る。本物のデータは、4つの環境、カフェ、交差点、公共交通機関(バス)、及び歩行者エリアにおいて話されたWSJコーパスからの発話の6チャネル録音から成る。シミュレートされたデータは、WSJのクリーンな発話を4つの述べられた環境からの環境背景録音とミキシングすることによって構築された。全てのデータは、16kHzでサンプリングされた。全てのマイクロフォンチャネルから録音されたオーディオは、CHiME-4多条件訓練データ中に含まれる。dt05_multi isolated_1ch_trackセットは、訓練中の交差検証のために使用された。
実験のためのテスト及び適応データは、Aurora-4コーパスのテストセットから作成された。Aurora-4コーパスは、5~15dBのSNRで、1次マイクロフォン及び2次マイクロフォンによって録音された2つのクリーンテストセットを6つのタイプの雑音(空港、ガヤガヤ、車、レストラン、通り、及び電車)で破損することによって作成された14個のテストセットを有する。2つのクリーンテストセットもまた、14個のテストセット中に含まれた。各テストセット中に330個の発話が存在する。Aurora-4中の雑音は、CHiME-4多条件訓練データ中の雑音とは異なる。1次マイクロフォンによって録音されたクリーンテストセットから作成された7つのテストセットからの「.wv1」データは、テスト及び適応セットを作成するために使用される。「.wv1」データの7つのテストセットから取られた2310個の発話から、1400個の発話のテストセット(おおよそ2.8時間の音声)、300個の発話のラベル付けされた適応セット(おおよそ36分)、及び610個の発話のラベル付けされていない適応セット(おおよそ1.2時間)が分離される。3つのセット中の発話の選択はランダムである。3つのセット中の発話は重複しない。これらのセットは、クリーン訓練シナリオ及び多条件訓練シナリオの両方におけるテスト及び適応のために使用される。
クリーン訓練データでの実験及び多条件訓練データでの実験の両方のために、半教師あり適応が以下のように実行された。
まず、逆伝搬アルゴリズムが、300個の発話のラベル付けされた適応セットを使用して教師ありモードでモデル
を微調整、例えばそのパラメータを更新して、適応モデル
をそれぞれ取得するために使用される。これは、利用可能なラベル付けされた適応を利用して、音声認識機械学習モデルの単語誤り率(WER:word error rate)を更に低減するために行われる。
モデル
は、610個の発話のラベル付けされていない適応セットを復号するためにその後使用される。
が、これらの復号から取得された1最良仮説のセットであり、
が、300個の発話セットために利用可能な手動書き起こしのセットであり、300発話及び610発話セットが、ラベルが
のうちのいずれかであり得る910個の発話の適応セットを作成するためにグループ化されると仮定する。
610個の発話が手動書き起こしを有さない910発話適応セットは、300個の発話しか手動書き起こしを有さないので、半教師ありモードで初期FBANKベースのモデルを適応させるために使用される。910発話適応セットを使用する従来の半教師あり適応は、
からのラベルで行われることができる。この適応は、標準CTC損失LCTCを使用する。MH-CTCと示される、本明細書に説明される多重仮説CTCベースの適応方法(multiple-hypotheses CTC-based adaptation method)は、
手動書き起こしと1最良仮説
の両方のセットとを使用する。この適応は、
損失を使用する。
全ての述べられた適応方法のための上限性能(upper bound performance)と見なされることができる参照された性能は、全ての910個の発話が手動書き起こし
を有する教師あり適応で取得されるものである。適応中、学習率は、この構成が訓練及び適応中に異なる学習率を使用するよりも良好な性能をもたらすので、訓練中に使用される学習率と比較して変更されずに保持される。1最良仮説は、復号の1パス後に取得される。
結果
システムがWSJクリーン訓練データ上で訓練され、1400個のAurora-4発話から成るテストセット上でテストされるシナリオでは、モデル
をそれぞれ使用した初期システムは、55.2%及び60.3%のWERをそれぞれ有する。
システムがWSJクリーン訓練データ上で訓練され、1400個のAurora-4発話から成るテストセット上でテストされるシナリオでは、モデル
異なる適応方法をFBANKベースのモデルに適用する結果は、以下の表に示される。表は、異なる適応方法での、WSJクリーン訓練セット上で訓練されたFBANKベースのモデルの適応についての結果を示す。
は、クリーン訓練モデルを使用する復号において取得される。
300個の発話のラベル付けされた適応セットで初期FBANKベースの及びSTEベースのモデルを適応させることは、1400発話テストセット上で測定されたこれらのシステムのWERを27.2%及び24.5%にそれぞれ低減する。610発話のラベル付けされていない適応セット上で測定された対応するWERは、それぞれ29.1%及び25.6%である。
手動書き起こし
を有する300発話適応セットを使用する教師あり適応は、ベースラインとして使用される。多重仮説CTCベースの適応方法は、ベースラインと比較して6.6%の相対WER低減をもたらす。対照的に、手動書き起こしと1最良仮説
のセットのうちの1つとの両方を使用する2つの従来の半教師あり適応は、FBANKベースのベースラインモデルと比較してWER低減をもたらさない。
上記の実験はまた、多条件訓練データシナリオのために実行される。CHiME-4の多条件訓練データ上で訓練され、Aurora-4からの1400発話テストセット上でテストされているとき、FBANK特徴及びSTE特徴を使用する初期CTCベースのエンドツーエンドASRシステムは、31.0%及び33.8%のWERをそれぞれ有する。300個の発話のラベル付けされた適応セットで初期FBANKベースの及びSTEベースのモデルを適応させることは、1400発話テストセット上で測定されたこれらのシステムのWERを17.2%及び17.3%にそれぞれ低減する。610発話のラベル付けされていない適応セット上で測定された対応するWERは、それぞれ18.3%及び18.9%である。
適応方法を多条件訓練データシナリオ中で適用する結果は、以下の表に示される。表は、異なる適応方法での、CHiME-4多条件訓練セット上で訓練されたFBANKベースのモデルの適応についての結果を示す。
は、多条件訓練モデルを使用する復号において取得される。
変形形態
ある特定の実施形態が説明されたが、これらの実施形態は、例としてのみ提示されており、本発明の範囲を限定することを意図されない。実際に、本明細書に説明された、新規のデバイス及び方法は、様々な他の形式で具現化され得、更に、本明細書に説明されたデバイス、方法、及び製品の形式における様々な省略、置換、及び変更が、本発明の趣旨から逸脱することなく行われ得る。添付の特許請求の範囲及びそれらの同等物は、本発明の範囲及び趣旨内にあるような形式及び修正をカバーすることを意図される。
ある特定の実施形態が説明されたが、これらの実施形態は、例としてのみ提示されており、本発明の範囲を限定することを意図されない。実際に、本明細書に説明された、新規のデバイス及び方法は、様々な他の形式で具現化され得、更に、本明細書に説明されたデバイス、方法、及び製品の形式における様々な省略、置換、及び変更が、本発明の趣旨から逸脱することなく行われ得る。添付の特許請求の範囲及びそれらの同等物は、本発明の範囲及び趣旨内にあるような形式及び修正をカバーすることを意図される。
Claims (20)
- 1つ以上の属性を有する発話に第1の音声認識機械学習モデルを適応させるためのコンピュータ実装方法であって、
前記1つ以上の属性を有するラベル付けされていない発話を受信することと、
前記ラベル付けされていない発話の第1の書き起こしを生成することと、
前記ラベル付けされていない発話の第2の書き起こしを生成することと、ここにおいて、前記第2の書き起こしは、前記第1の書き起こしとは異なる、
前記第1の音声認識機械学習モデルが、前記第1の書き起こし及び前記第2の書き起こしについての事後確率を導出するために、1つ以上の前記ラベル付けされていない発話を処理することと、
前記第1の書き起こし及び前記第2の書き起こしについての前記導出された事後確率に基づいて、損失関数に従って前記第1の音声認識機械学習モデルのパラメータを更新することと、
を備える、方法。 - 前記第2の書き起こしは、前記第1の書き起こしが第2の音声認識機械学習モデルによって生成され、その一方で、前記第2の書き起こしが異なる第3の音声認識機械学習モデルによって生成されるという点において前記第1の書き起こしとは異なる、請求項1に記載の方法。
- 前記第2の音声認識機械学習モデルは、第1のタイプの特徴を使用して訓練され、前記第3の音声認識機械学習モデルは、異なる第2のタイプの特徴を使用して訓練されている、請求項2に記載の方法。
- 前記第1のタイプの特徴は、フィルタバンク特徴である、請求項3に記載の方法。
- 前記第2のタイプの特徴は、サブバンド時間的包絡線特徴である、請求項3又は請求項4に記載の方法。
- 前記第1の書き起こしは、前記第2の音声認識機械学習モデルの1最良仮説であり、前記第2の書き起こしは、前記第3の音声認識機械学習モデルの1最良仮説である、請求項3~5のうちのいずれか一項に記載の方法。
- 前記1つ以上の属性を有する1つ以上のラベル付けされた発話を受信することと、
前記1つ以上のラベル付けされた発話から前記第1のタイプの特徴を導出することと、
前記第1のタイプの前記導出された特徴と前記1つ以上のラベル付けされた発話のラベルとを使用して前記第2の音声認識機械学習モデルのパラメータを更新することと、
前記1つ以上のラベル付けされた発話から前記第2のタイプの特徴を導出することと、
前記第2のタイプの前記導出された特徴と前記1つ以上のラベル付けされた発話の前記ラベルとを使用して前記第3の音声認識機械学習モデルのパラメータを更新することと、
を更に備える、請求項3~6のうちのいずれか一項に記載の方法。 - 前記第1の書き起こし及び前記第2の書き起こしは、第2の音声認識機械学習モデルによって生成されたN最良書き起こしであり、前記第2の書き起こしは、前記第2の書き起こしが前記第1の書き起こしとは異なるNの値についてのものであるという点において前記第1の書き起こしとは異なる、請求項1に記載の方法。
- 前記1つ以上の属性を有する1つ以上のラベル付けされた発話を受信することと、
前記1つ以上のラベル付けされた発話を使用して前記第1の音声認識機械学習モデルの前記パラメータを更新することと、
を更に備える、請求項1~8のうちのいずれか一項に記載の方法。 - 前記1つ以上の属性は、前記発話が所与のタイプの背景雑音を有することを備える、請求項1~9のうちのいずれか一項に記載の方法。
- 前記1つ以上の属性は、前記発話が所与の領域中にあることを備える、請求項1~10のうちのいずれか一項に記載の方法。
- 前記1つ以上の属性は、前記発話が所与のユーザによるものであることを備える、請求項1~11のうちのいずれか一項に記載の方法。
- 前記1つ以上の属性は、前記発話が所与の環境中で録音されることを備える、請求項1~12のうちのいずれか一項に記載の方法。
- 前記ラベル付けされていない発話は、前記1つ以上の属性を有するように人工的に修正されている、請求項1~13のうちのいずれか一項に記載の方法。
- 前記損失関数は、コネクショニスト時間的分類損失関数である、請求項1~14のうちのいずれか一項に記載の方法。
- 前記コネクショニスト時間的分類損失関数は、第2の仮説についての第2のコネクショニスト時間的分類損失による前記第1の書き起こしについての第1のコネクショニスト時間的分類損失の合計を備える、請求項15に記載の方法。
- 前記第1の音声認識機械学習モデルは、双方向長短期記憶ニューラルネットワークを備える、請求項1~16のうちのいずれか一項に記載の方法。
- 音声認識のためのコンピュータ実装方法であって、
1つ以上の属性を有する1つ以上の発話を受信することと、
請求項1~17のうちのいずれか一項に記載の方法に従って前記1つ以上の属性を有する発話に適応された音声認識機械学習モデルを使用して前記1つ以上の発話の内容を認識することと、
前記認識された内容に基づいて機能を実行することと、ここにおいて、前記実行された機能は、テキスト出力、コマンド実行、又は音声対話システム機能のうちの少なくとも1つを備える、
を備える、方法。 - 非一時的コンピュータ可読媒体上にオプションとして記憶されたコンピュータプログラムであって、前記プログラムがコンピュータによって実行されると、前記コンピュータに、請求項1~18のうちのいずれか一項に記載の方法を行わせる、コンピュータプログラム。
- 音声認識を実行するためのシステムであって、前記システムは、1つ以上のプロセッサ及び1つ以上のメモリを備え、前記1つ以上のプロセッサは、
1つ以上の属性を有する1つ以上の発話を受信することと、
請求項1~18のうちのいずれか一項に記載の方法に従って前記1つ以上の属性を有する発話に適応された音声認識機械学習モデルを使用して前記1つ以上の発話の内容を認識することと、
前記認識された内容に基づいて機能を実行することと、ここにおいて、前記実行された機能は、テキスト出力又はコマンド実行のうちの少なくとも1つを備える、
を行うように構成される、システム。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| GB2100772.9A GB2602976B (en) | 2021-01-20 | 2021-01-20 | Speech recognition systems and methods |
| GB2100772.9 | 2021-01-20 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2022111977A JP2022111977A (ja) | 2022-08-01 |
| JP7146038B2 true JP7146038B2 (ja) | 2022-10-03 |
Family
ID=74678992
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2021134779A Active JP7146038B2 (ja) | 2021-01-20 | 2021-08-20 | 音声認識システム及び方法 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US20220230641A1 (ja) |
| JP (1) | JP7146038B2 (ja) |
| GB (1) | GB2602976B (ja) |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US12288034B2 (en) * | 2022-07-27 | 2025-04-29 | Dell Products L.P. | Automatically summarizing event-related data using artificial intelligence techniques |
| JP7838491B2 (ja) * | 2023-01-10 | 2026-04-01 | トヨタ自動車株式会社 | 移動装置 |
| CN116431775A (zh) * | 2023-02-10 | 2023-07-14 | 招联消费金融有限公司 | 意图类别识别模型的确定方法、装置、设备和存储介质 |
| JP7642146B1 (ja) * | 2024-10-03 | 2025-03-07 | PayPay株式会社 | 情報処理装置、情報処理方法、及び情報処理プログラム |
| CN119763545B (zh) * | 2024-12-23 | 2025-09-23 | 科大讯飞股份有限公司 | 语音合成方法、装置、电子设备和存储介质 |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN111833852A (zh) | 2020-06-30 | 2020-10-27 | 苏州思必驰信息科技有限公司 | 一种声学模型的训练方法、装置以及计算机可读存储介质 |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP2862164B1 (en) * | 2013-08-23 | 2017-05-31 | Nuance Communications, Inc. | Multiple pass automatic speech recognition |
| KR102492318B1 (ko) * | 2015-09-18 | 2023-01-26 | 삼성전자주식회사 | 모델 학습 방법 및 장치, 및 데이터 인식 방법 |
| US11250838B2 (en) * | 2018-11-16 | 2022-02-15 | Deepmind Technologies Limited | Cross-modal sequence distillation |
| US11586930B2 (en) * | 2019-04-16 | 2023-02-21 | Microsoft Technology Licensing, Llc | Conditional teacher-student learning for model training |
| US11302309B2 (en) * | 2019-09-13 | 2022-04-12 | International Business Machines Corporation | Aligning spike timing of models for maching learning |
| CN110910865B (zh) * | 2019-11-25 | 2022-12-13 | 秒针信息技术有限公司 | 语音转换方法和装置、存储介质及电子装置 |
-
2021
- 2021-01-20 GB GB2100772.9A patent/GB2602976B/en active Active
- 2021-08-16 US US17/403,786 patent/US20220230641A1/en not_active Abandoned
- 2021-08-20 JP JP2021134779A patent/JP7146038B2/ja active Active
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN111833852A (zh) | 2020-06-30 | 2020-10-27 | 苏州思必驰信息科技有限公司 | 一种声学模型的训练方法、装置以及计算机可读存储介质 |
Also Published As
| Publication number | Publication date |
|---|---|
| GB202100772D0 (en) | 2021-03-03 |
| GB2602976A (en) | 2022-07-27 |
| GB2602976B (en) | 2023-08-23 |
| JP2022111977A (ja) | 2022-08-01 |
| US20220230641A1 (en) | 2022-07-21 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10559299B1 (en) | Reconciliation between simulator and speech recognition output using sequence-to-sequence mapping | |
| KR102725826B1 (ko) | 비음성 텍스트 및 스피치 합성을 사용한 스피치 인식 | |
| EP3857543B1 (en) | Conversational agent pipeline trained on synthetic data | |
| CN111933129B (zh) | 音频处理方法、语言模型的训练方法、装置及计算机设备 | |
| JP7540080B2 (ja) | 声変換および音声認識モデルを使用した合成データ拡大 | |
| JP7146038B2 (ja) | 音声認識システム及び方法 | |
| US10163436B1 (en) | Training a speech processing system using spoken utterances | |
| CN112017644A (zh) | 一种声音变换系统、方法及应用 | |
| US12100383B1 (en) | Voice customization for synthetic speech generation | |
| JP2022079397A (ja) | 音声認識システムおよび方法 | |
| CN105280177A (zh) | 语音合成字典创建装置、语音合成器、以及语音合成字典创建方法 | |
| KR20240122776A (ko) | 뉴럴 음성 합성의 적응 및 학습 | |
| JP7773571B2 (ja) | 自己教師あり音声事前トレーニングにおけるテキストの挿入 | |
| CN121096357A (zh) | 基于Transformer的语音纠正系统及方法 | |
| WO2024167660A1 (en) | Speech translation with performance characteristics | |
| Simha | Improving Automatic Speech Recognition on Endangered Languages | |
| CN121306104A (zh) | 结合大语言模型纠错的语言识别系统、方法、设备及介质 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210823 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20220823 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220920 |
|
| R151 | Written notification of patent or utility model registration |
Ref document number: 7146038 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |