JP2024019082A - システム、コンピュータ実装方法、及びコンピュータプログラム(自動音声検出を改善するためのボイスアクティビティ検出統合) - Google Patents
システム、コンピュータ実装方法、及びコンピュータプログラム(自動音声検出を改善するためのボイスアクティビティ検出統合) Download PDFInfo
- Publication number
- JP2024019082A JP2024019082A JP2023121193A JP2023121193A JP2024019082A JP 2024019082 A JP2024019082 A JP 2024019082A JP 2023121193 A JP2023121193 A JP 2023121193A JP 2023121193 A JP2023121193 A JP 2023121193A JP 2024019082 A JP2024019082 A JP 2024019082A
- Authority
- JP
- Japan
- Prior art keywords
- vad
- computer
- rnn
- encoder
- outputs
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 76
- 238000004590 computer program Methods 0.000 title claims abstract description 18
- 230000000694 effects Effects 0.000 title claims description 16
- 238000001514 detection method Methods 0.000 title claims description 12
- 230000010354 integration Effects 0.000 title description 64
- 230000015654 memory Effects 0.000 claims abstract description 61
- 238000012549 training Methods 0.000 claims abstract description 44
- 238000013528 artificial neural network Methods 0.000 claims description 10
- 230000008014 freezing Effects 0.000 claims description 8
- 238000007710 freezing Methods 0.000 claims description 8
- 230000000306 recurrent effect Effects 0.000 claims description 7
- 238000003860 storage Methods 0.000 description 70
- 238000012545 processing Methods 0.000 description 34
- 238000010586 diagram Methods 0.000 description 30
- 238000004891 communication Methods 0.000 description 23
- 230000000670 limiting effect Effects 0.000 description 23
- 239000002609 medium Substances 0.000 description 17
- 230000008569 process Effects 0.000 description 16
- 238000012360 testing method Methods 0.000 description 15
- 238000002474 experimental method Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 10
- 230000006872 improvement Effects 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 8
- 230000006855 networking Effects 0.000 description 7
- 230000000153 supplemental effect Effects 0.000 description 7
- 230000009471 action Effects 0.000 description 6
- 238000005457 optimization Methods 0.000 description 6
- 238000013527 convolutional neural network Methods 0.000 description 5
- 238000007726 management method Methods 0.000 description 5
- 239000007787 solid Substances 0.000 description 5
- 230000005236 sound signal Effects 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 101100168695 Coffea arabica CS3 gene Proteins 0.000 description 4
- 101100329510 Coffea canephora MTL2 gene Proteins 0.000 description 4
- 238000013459 approach Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 238000003780 insertion Methods 0.000 description 4
- 230000037431 insertion Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 239000013598 vector Substances 0.000 description 4
- 101100168702 Coffea arabica MTL3 gene Proteins 0.000 description 3
- 101100429092 Coffea arabica XMT1 gene Proteins 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000004821 distillation Methods 0.000 description 3
- 230000007613 environmental effect Effects 0.000 description 3
- 230000008520 organization Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000001902 propagating effect Effects 0.000 description 3
- 230000011218 segmentation Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 238000013518 transcription Methods 0.000 description 3
- 230000035897 transcription Effects 0.000 description 3
- 238000004883 computer application Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000007405 data analysis Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000013140 knowledge distillation Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000005055 memory storage Effects 0.000 description 2
- 229920001690 polydopamine Polymers 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 230000006403 short-term memory Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000012384 transportation and delivery Methods 0.000 description 2
- 101100168701 Coffea arabica CS4 gene Proteins 0.000 description 1
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 101150055479 MTL1 gene Proteins 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000003416 augmentation Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000009172 bursting Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 238000013434 data augmentation Methods 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000007620 mathematical function Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003340 mental effect Effects 0.000 description 1
- 230000003278 mimic effect Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 239000002096 quantum dot Substances 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000013515 script Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000002269 spontaneous effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
- 239000006163 transport media Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 230000009012 visual motion Effects 0.000 description 1
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
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/27—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
- G10L25/30—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using 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/08—Speech classification or search
- G10L15/16—Speech classification or search using artificial neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
- G06N3/0442—Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- 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/20—Speech recognition techniques specially adapted for robustness in adverse environments, e.g. in noise, of stress induced speech
-
- 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/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- 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
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/03—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
-
- 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
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/78—Detection of presence or absence of voice signals
-
- 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
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/78—Detection of presence or absence of voice signals
- G10L25/84—Detection of presence or absence of voice signals for discriminating voice from noise
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Signal Processing (AREA)
- Biomedical Technology (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephonic Communication Services (AREA)
Abstract
【課題】VADセグメント化された発話が長い非音声部分を含む及び/又は非音声から成る場合、予期しないエラーが生じ得る。【解決手段】ASR情報を用いてRNN-Tをマルチタスク訓練することを促進するためのシステム、コンピュータ実装方法、及びコンピュータプログラム製品が提供される。一実施形態によると、システムは、コンピュータ実行可能コンポーネントを格納するメモリ及びメモリに格納されたコンピュータ実行可能コンポーネントを実行するプロセッサを備え得る。コンピュータ実行可能コンポーネントは、ASR情報を受信し得るRNN-Tを有し得る。コンピュータ実行可能コンポーネントは、ASR情報を用いてRNN-Tを訓練するVADモデルを有し得、RNN-Tは、エンコーダ及びジョイントネットワークを更に含み得る。エンコーダの1又は複数の出力は、ジョイントネットワーク及びVADモデルの1又は複数の出力と統合され得る。【選択図】図1
Description
本明細書における1又は複数の実施形態は、概して、ASRを実行するための、特に、ASR情報を受信するリカレントニューラルネットワークトランスデューサ(RNN-T)をマルチタスク訓練するためのボイスアクティビティ検出(VAD)モデルと共に一般的に展開される自動音声認識(ASR)システムに関する。
VADセグメント化された発話が長い非音声部分を含む及び/又は非音声から成る場合、予期しないエラーが生じ得る。
以下では、本明細書に記載される1又は複数の実施形態の基本的理解を提供するための概要を提示する。この概要は、主要又は重要な要素を識別すること、又は特定の実施形態の任意の範囲又は任意の特許請求の範囲を画定することを意図するものではない。概要の唯一の目的は、後に提示されるより詳細な説明に対する前置きとして、簡略化された形式の概念を提示することである。本明細書に記載される1又は複数の実施形態において、1又は複数の統計セットの訓練等の更新を促進し得るデバイス、システム、コンピュータ実装方法、装置及び/又はコンピュータプログラム製品が説明される。
一実施形態によると、システムは、コンピュータ実行可能コンポーネントを格納するメモリ及びメモリに格納されたコンピュータ実行可能コンポーネントを実行するプロセッサを備え得る。コンピュータ実行可能コンポーネントは、マルチタスク訓練を介して自動音声認識情報を受信するリカレントニューラルネットワークトランスデューサ(RNN-T)を有し得る。RNN-Tは、エンコーダを含み得、エンコーダの1又は複数の出力は、RNN-Tのジョイントネットワークと統合され得る。更に、エンコーダの1又は複数の出力は、ボイスアクティビティ検出(VAD)モデルの1又は複数の出力と統合され得る。
別の実施形態によると、コンピュータ実装方法は、プロセッサに動作可能なように結合されたシステムにより自動音声認識(ASR)情報を受信する段階を備え得る。コンピュータ実装方法はまた、プロセッサによりASR情報を用いてRNN-Tをマルチタスク訓練する段階を備え得る。コンピュータ実装方法は、ノイズロバスト性を改善するために、プロセッサによりRNN-TのエンコーダをRNN-Tのジョイントネットワーク及び/又はVADモデルの1又は複数の出力と統合し得る。
更に別の実施形態によると、RNN-TをVADモデルで訓練するためのコンピュータプログラム製品は、プログラム命令が具現化されたコンピュータ可読記憶媒体を備え得、プロセッサにより実行可能なプログラム命令は、プロセッサに、プロセッサによりASR情報を受信させ得る。プログラム製品は、プロセッサにASR情報を用いてRNN-Tをマルチタスク訓練させ、及び/又はRNN-TのエンコーダをRNN-Tのジョイントネットワーク及びVADモデルの1又は複数の出力と統合させ得る。
以下の詳細な説明は単に例示であり、実施形態及び/又は実施形態の用途又は使用を制限することを意図するものではない。更に、前述の背景又は概要の章、又はこの詳細な説明の章に提示される任意の明示的又は黙示的情報によって拘束される意図はない。
自動音声認識(ASR)システムを参照すると、ASRシステムは、有声音響信号に対してASRを実行するためのボイスアクティビティ検出(VAD)システムと共に展開され得ることが理解されるであろう。ASRシステムは、推論中に入力オーディオ信号から不要な非音声部分を取り除くことによりASRパフォーマンスを維持し得る;しかしながら、VADシステムが非音声セグメントから音声を正確に分離することに失敗した場合、エラーが伝搬し得る。ASRシステムは、一般的に、セグメント化された音声発話を用いて構築される。したがって、VADセグメント化された発話が長い非音声部分を含む及び/又は非音声から成る場合、予期しないエラーが生じ得る。VADシステムは、より顕著にASRにおける挿入エラーをトリガする、ノイズを伴う環境において及び/又は未知の音響ドメインにおいて、失敗する可能性がより高い。
更に、ASRシステムを参照すると、ASRシステムは、ヒューマンマシン通信において広く用いられるようになっていることが理解されるであろう。エンドツーエンドニューラルネットワークアーキテクチャを有する最近のASRシステムは、従来のハイブリッドASRシステムに比べてより少ない開発コストで著しく作動してきた。周知のニューラルASRシステムのうち、リカレントニューラルネットワークトランスデューサ(RNN-T)は、競争力のあるパフォーマンス及びオンライン音声認識のための能力と共に、他アーキテクチャ上で設計されたシステムと比べたより低い計算コストに起因し、広く用いられてきた。ASRは、ASRのデコード処理が開始する前に非音声部分を取り除くことにより入力オーディオ信号から実際の音声部分を抽出するVADシステムと組み合わされ得る。最近では、様々なノイズを伴う状況における音声の固有の特性を捕捉するために、ニューラルネットワークベースのVADが実装され得る。マルチタスク学習アプローチを特徴統合アーキテクチャと組み合わせることにより、システムは、音声及び長い非音声セグメントから成る混合データで単に訓練するシステムと比較して、非常に低い信号対ノイズ比(SNR)状況における10%までの相対的改善を生じ得る。
VADモデルは、話者が様々なタイミング及び場所において発話する現実的なシチュエーションにおける音声認識処理をサポートする;しかしながら、VADが入力オーディオにおける音声及び非音声セグメントを分割することに失敗した場合、重度の認識エラーが生じ得る。例えば、VADシステムが非音声オーディオセグメントを音声であるとして判断した場合、ASRは、空の音声入力からテキストを出力することを試みる。ASRシステムは、音声検出及び/又は判断エラーをもたらす十分にセグメント化された音声データ(例えば、データは、実際の音声セグメントの前及び/又は後の短い無音領域を含み得、及び/又は長い無音領域は、前もって訓練データから取り除かれ得る)で一般的に訓練される。したがって、VADが不正確に作動するノイズを伴う状況において、ASR正確性は、悪化し得る。
音声セグメント化及び認識パフォーマンスを改善するためにエンドツーエンドASR及びVADを統合する先行する例は、主に、クリーンな状況におけるセグメント化されていない長いオーディオにおけるASRに重点を置く。これらの例は、a)VADタスクを有するコネクショニスト時間分類(CTC)ベースのASR、ここで音声は、CTCソフトマックス出力からの空白のラベルを音声境界として想定することによりセグメント化され得る;b)ASR及びVADのためのマルチタスク学習フレームワーク、ここでASR及びVADは、(例えば、ASR及びVAD基準を介して更に最適化される)未加工の波形入力から潜在表現を抽出する共通層を共有する;及び/又はc)ビジュアル情報を活用するための、ノイズを伴う音声入力に対するオーディオビジュアルASR及びVAD間でのマルチタスク学習を含む。
これらの問題に少なくとも部分的に取り組んで、RNN-TベースのASRを訓練する中でVAD情報を明白に活用することは、ノイズを伴う状況における音声認識のロバスト性を改善し得る。VADの正確性を改善することは、ノイズを伴う状況における音声セグメント化の失敗により生じるASR脆弱性を低減させるための一般的なアプローチとなっている。
これらの問題を考慮に入れると、本明細書に記載される1又は複数の実施形態は、以下のプロセスを促進し得るシステム、コンピュータ実装方法、及び/又はコンピュータプログラム製品の形でこれらの問題のうちの1又は複数に対する解決策を生み出すために実装され得る:a)プロセッサにより自動音声認識(ASR)情報を受信する段階;b)プロセッサによりASR情報を用いてRNN-Tをマルチタスク訓練する段階;及び/又はc)ノイズを伴う状況における音声認識のロバスト性を改善するために、プロセッサによりRNN-TのエンコーダをRNN-Tのジョイントネットワーク及びVADモデルの1又は複数の出力と統合する段階。即ち、本明細書に記載される実施形態は、前述したプロセスのうちの1又は複数を促進し得る1又は複数のシステム、コンピュータ実装方法、装置、及び/又はコンピュータプログラム製品を含む。
更に、VADの正確性を改善することは、ASRのロバスト性を改善するための一般的なアプローチとなっている。しかしながら、本明細書に記載される1又は複数の実施形態は、VADエラーに対するASRロバスト性を改善する。即ち、本明細書に記載される実施形態は、特徴レベル統合及び/又はマルチタスク学習を介してVAD情報をASRへと統合し得る1又は複数のシステム、コンピュータ実装方法、装置、及び/又はコンピュータプログラム製品を含む。
以前には、RNN-Tにおけるマルチタスク学習は、稀なようワード認識のためのサブタスクとしてキーワードスポッティング及び言語モデリングと共に提案されてきた。スペクトロ-テンポラルを用いて畳み込みニューラルネットワーク(CNN)ベースのVADシステムにより生成されたフレームレベル音声/非音声ラベルが予測される場合、ノイズを伴うASRパフォーマンスを改善するために、マルチタスク学習は、ASR RNN-T損失及びVADエラーを共同で最小限に抑える。
追加的に、マルチタスク学習フレームワーク内の非トランスクライブオーディオデータが、知識の蒸留アプローチを介して、VADコンポーネントのための補助的訓練データとして利用され得る。通常、莫大なドメインの音声をカバーするASR訓練のためのトランスクライブデータを準備することは、非常にコストがかかる;したがって、ASRのための訓練データの量は、しばしば限定される。更に、実施形態において、多様な環境ドメインのデータを用いて訓練されたVADシステムは、様々な音響状況において十分に作動し得る。VADモデルは、ASRモデルのロバスト性を改善するのに有用であり得る周囲の音響環境を表す情報(例えば、非音声から音声を区別するための周囲の音響環境を表す情報)を含む。本明細書に記載される1又は複数の実施形態において、システムは、ASRロバスト性を改善するために追加的なトランスクライブデータを用いることなく、十分に訓練されたVADモデルに含まれた豊富な音響環境知識をASRネットワークへと蒸留し得、例えば、長い無音部分を有する英語の電話での会話での実験の結果は、システムが補助的VAD訓練データを用いることで新しい音響ドメインにおけるASRノイズロバスト性を改善したことを示す。
ここで、図面を参照して1又は複数の実施形態が記載され、全体を通して、同様の参照番号は、同様の要素を指すために用いられる。以下の説明において、1又は複数の実施形態のより完全な理解を提供するべく、説明の目的で、多数の具体的な詳細が記載される。しかしながら、様々なケースにおいて、これらの特定の詳細なしで、1又は複数の実施形態を実施できることは明白である。
図1は、ジョイントネットワークコンポーネント106、エンコーダコンポーネント108、及び/又はプレディクタコンポーネント110を有するRNN-Tを備える例示的、非限定的なシステム100のブロック図を示す。VAD統合システム100は、ノイズに対するロバスト性を改善するために、RNN-T102(例えば、ASR RNN-T)のエンコーダコンポーネント108をRNN-T102のジョイントネットワーク106及びVADモデル104の1又は複数の出力と共に統合し得る。本明細書に記載される他の実施形態において利用される同様の要素の繰り返しの説明は、簡潔さのために省略する。本発明の様々な実施形態におけるシステム(例えば、VAD統合システム100等)、装置又はプロセスの態様は、1又は複数のマシンを用いて具現化された(例えば、1又は複数のマシンと関連付けられた1又は複数のコンピュータ可読媒体において具現化された)1又は複数のマシン実行可能コンポーネントを構成し得る。1又は複数のマシン(例えば、コンピュータ、コンピューティングデバイス、仮想マシン、及び/又はそれらの組合せ等)によって実行された場合、このようなコンポーネントは、記載した動作をマシンに実行させ得る。
次に具体的に1又は複数の図について、まず図1について、この図は、本明細書に記載される1又は複数の実施形態による、プロセッサ124により自動音声認識(ASR)情報を受信する段階を促進する例示的、非限定的なシステム100のブロック図を示す。VAD統合システム100は、リカレントニューラルネットワークトランスデューサ(RNN-T)102及び/又はボイスアクティビティ検出(VAD)モデル104を備え得、これらは、クラウドコンピューティング環境1000(図10)と関連付けられ得る。例えば、限定されないが、RNN-T102は、自動音声認識のために構成されたRNN-T102であり得る。RNN-Tは、ジョイントネットワークコンポーネント106(例えば、ジョイントネットワーク)と接続されたプレディクタコンポーネント110を更に有し得る。VAD統合システム100は、1又は複数のRNN-T102、1又は複数のVADモデル104、1又は複数のネットワーク130、1又は複数の入力デバイス132、及び/又は1又は複数のコンピュータアプリケーション134により構成され得る。RNN-T102及び/又はVADモデル104は、VAD統合システム100により構成された1又は複数のマシンと接続され得る。本明細書において用いられるように、1又は複数のマシンは、コンピューティングデバイス、汎用コンピュータ、特定用途向けコンピュータ、量子コンピューティングデバイス(例えば、量子コンピュータ)、タブレットコンピューティングデバイス、ハンドヘルドデバイス、サーバクラスコンピューティングマシン及び/又はデータベース、ラップトップコンピュータ、ノートブックコンピュータ、デスクトップコンピュータ、携帯電話、スマートフォン、コンシューマ用電化製品及び/又は計装、産業用及び/又は商用デバイス、デジタルアシスタント、マルチメディアインターネット対応電話、及び/又は別のタイプのデバイスのうちの1又は複数を含み得る。
いくつかの例において、VAD統合システム100は、図10を参照して後述するクラウドコンピューティング環境1000及び/又は図11を参照して後述する1又は複数の機能抽象化層(例えば、ハードウェア及びソフトウェア層1160、仮想化層1170、管理層1180及び/又はワークロード層1190)に関連付けられ得る。
VAD統合システム100及び/又はそのコンポーネント(例えば、RNN-T102及び/又はVADモデル104)は、図10を参照して及び/又は図11を参照して後述する1又は複数の機能抽象化層(例えば、量子ソフトウェア及び/又は同様のもの)を参照して後述するクラウドコンピューティング環境の1又は複数のコンピューティングリソースを利用して、本明細書に記載される1又は複数の実施形態による1又は複数の動作を実行し得る。例えば、クラウドコンピューティング環境、及び/又は機能抽象化層1160、1170、1180及び/又は1190のうちの1又は複数は、システム及び/又はそのコンポーネントにより本明細書に記載される1又は複数の実施形態による1又は複数の動作を実行するために利用され得る、1又は複数の古典的コンピューティングデバイス(例えば、古典的コンピュータ、古典的プロセッサ、仮想マシン、及び/又はサーバ等)、量子ハードウェア及び/又は量子ソフトウェア(例えば、量子コンピューティングデバイス、量子コンピュータ、量子プロセッサ、量子回路シミュレーションソフトウェア、及び/又は超伝導回路等)を有し得る。例えば、システム及び/又はそのコンポーネントは、1又は複数の古典的及び/又は量子:数学関数、算出、及び/又は方程式;コンピューティング及び/又は処理スクリプト;アルゴリズム;モデル(例えば、人口知能(AI)モデル、マシン学習(ML)モデル及び/又は同様のモデル);及び/又は本明細書に記載される1又は複数の実施形態による別の動作を実行するために、1又は複数の古典的及び/又は量子コンピューティングリソースを利用し得る。
本明細書に記載される1又は複数の実施形態は、クラウドコンピューティングに関する詳細な説明を含むが、本明細書において言及される教示の実装は、クラウドコンピューティング環境に限定されるものではないことを理解されたい。むしろ、本明細書に記載される1又は複数の実施形態は、現在知られている又は後に開発される任意の他のタイプのコンピューティング環境と併せて実装されることが可能である。
クラウドコンピューティングは、管理の労力又はサービスのプロバイダとのインタラクションを最小限に抑えながら迅速にプロビジョニング及びリリースできる構成可能なコンピューティングリソース(例えば、ネットワーク、ネットワーク帯域幅、サーバ、プロセス、メモリ、ストレージ、アプリケーション、仮想マシン、及びサービス)の共有プールに対する便利なオンデマンドのネットワークアクセスを可能するための、サービス提供のモデルである。このクラウドモデルは、少なくとも5つの特徴、少なくとも3つのサービスモデル、及び少なくとも4つの展開モデルを含み得る。
特徴は、以下の通りである。
オンデマンドセルフサービス:クラウドコンシューマは、人間とサービスのプロバイダとのインタラクションを必要とすることなく、必要に応じて自動的に、サーバ時間及びネットワークストレージ等のコンピューティング能力を一方的にプロビジョニングし得る。
幅広いネットワークアクセス:ネットワークを介して能力を利用可能であり、異種混交のシンクライアントプラットフォーム又はシッククライアントプラットフォーム(例えば、モバイル電話、ラップトップ、及びPDA(登録商標))による使用を促進する標準的なメカニズムを通して能力がアクセスされる。
リソースプール:プロバイダのコンピューティングリソースはプールされ、マルチテナントモデルを用いて複数のコンシューマにサービスを提供し、異なる物理的及び仮想的リソースが需要に応じて動的に割当て及び再割当てされる。概してコンシューマは提供されるリソースの厳密なロケーションについての制御又は知識を有しないが、より高い抽象化レベル(例えば、国、州、又はデータセンタ)でロケーションを指定可能であり得るという点で、ロケーション独立性の感覚がある。
迅速な弾力性:能力を迅速に且つ伸縮自在に、場合によっては自動的にプロビジョニングし、即座にスケールアウトすることも、迅速にリリースして即座にスケールインすることもできる。コンシューマには、しばしば、プロビジョニングに利用可能な能力は無制限に見え、いつでも任意の数量で購入できる。
測定されたサービス:クラウドシステムは、サービスのタイプに適切な、いくらかの抽象化レベル(例えば、ストレージ、処理、帯域幅及びアクティブユーザアカウント)で、測定能力を活用することによって、リソース使用を自動的に制御及び最適化する。リソース使用量が監視、制御及びレポートされ得、利用されるサービスのプロバイダ及びコンシューマの両方に透明性を提供する。
サービスモデルは、以下の通りである。
ソフトウェア・アズ・ア・サービス(SaaS):コンシューマに提供される能力は、クラウドインフラストラクチャ上で実行するプロバイダのアプリケーションを用いることである。アプリケーションには、ウェブブラウザ(例えば、ウェブベースの電子メール)等のシンクライアントインタフェースを通して、様々なクライアントデバイスからアクセス可能である。コンシューマは、ネットワーク、サーバ、オペレーティングシステム、ストレージ、又は個々のアプリケーション能力を含む基礎のクラウドインフラストラクチャを管理又は制御しないが、限定されたユーザ特有のアプリケーション構成設定は例外である可能性がある。
プラットフォーム・アズ・ア・サービス(PaaS):コンシューマに提供される能力は、プロバイダによりサポートされるプログラミング言語及びツールを用いて作成される、コンシューマが作成した又は取得したアプリケーションをクラウドインフラストラクチャ上に展開することである。コンシューマは、ネットワーク、サーバ、オペレーティングシステム又はストレージを含む基礎のクラウドインフラストラクチャを管理又は制御しないが、展開されたアプリケーション及び場合によっては環境構成をホストするアプリケーションに対する制御を有する。
インフラストラクチャ・アズ・ア・サービス(IaaS):コンシューマに提供される能力は、処理、ストレージ、ネットワーク及び/又はコンシューマがオペレーティングシステム及びアプリケーションを含み得る任意のソフトウェアを展開及び実行し得ることが可能な他の基本的なコンピューティングリソース又をプロビジョニングすることである。コンシューマは、基礎のクラウドインフラストラクチャを管理又は制御しないが、オペレーティングシステム、ストレージ、展開されたアプリケーション及び/又は場合によっては選択されたネットワーキングコンポーネント(例えば、ホストファイアウォール)の限定された制御に対する制御を有する。
展開モデルは、以下の通りである。
プライベートクラウド:クラウドインフラストラクチャが、一組織のためだけに運用される。それは、その組織又はサードパーティによって管理され得、オンプレミス又はオフプレミスで存在し得る。
コミュニティクラウド:クラウドインフラストラクチャは、いくつかの組織によって共有され、共有された関心(例えば、役割、セキュリティ要件、ポリシー及び/又はコンプライアンス上の考慮事項)を有する特定のコミュニティをサポートする。それは、その組織又はサードパーティによって管理され得、オンプレミス又はオフプレミスで存在し得る。
パブリッククラウド:クラウドインフラストラクチャが、一般大衆又は大きな業界団体により利用可能になり、クラウドサービスを販売する組織により所有されている。
ハイブリッドクラウド:クラウドインフラストラクチャは、固有のエンティティであり続けるが、データ及びアプリケーションのポータビリティを可能にする標準化又はプロプライエタリ技術(例えば、クラウド間のロードバランシングのためのクラウドバースティング)によって共に結び付けられる2又はそれより多くのクラウド(プライベート、コミュニティ、又はパブリック)の複合である。
クラウドコンピューティング環境は、ステートレス、低結合性、モジュール性及び/又はセマンティックインターオペラビリティに対する重点を指向したサービスである。クラウドコンピューティングの中核には、相互接続されたノードからなるネットワークを含むインフラストラクチャが存在する。
更に、VAD統合システム100は、データ分析システム、データ処理システム、グラフ分析システム、グラフ処理システム、ビッグデータシステム、ソーシャルネットワークシステム、音声認識システム、画像認識システム、グラフィカルモデリングシステム、バイオインフォマティクスシステム、データ圧縮システム、人口知能システム、認証システム、構文パターン認識システム、医療システム、ヘルス監視システム、ネットワークシステム、コンピュータネットワークシステム、通信システム、ルータシステム、サーバシステム、高可用性サーバシステム(例えば、Telecomサーバシステム)、Webサーバシステム、ファイルサーバシステム、データサーバシステム、ディスクアレイシステム、動力付き挿入掲示板システム、又はクラウドベースのシステム等に関連付けられる又はこれに含まれ得る。それによると、VAD統合システム100は、ハードウェア及び/又はソフトウェアを用いて、本質的に非常に技術的であり、抽象的でなく、及び/又は人間による精神的な行動のセットとして実行され得ない問題を解決するために利用され得る。
次にVAD統合システム100の態様について、システム100は、1又は複数のRNN-T102、1又は複数のVADモデル104、1又は複数のシステムバス120、1又は複数のメモリ/ストレージコンポーネント122、1又は複数のプロセッサ124、1又は複数のネットワーク130、1又は複数の入力デバイス132、及び/又は1又は複数のコンピュータアプリケーション134を備え得る。
本明細書において開示されている様々な図面において図示されている実施形態は、図示するためのみのものであり、このため、実施形態のアーキテクチャは、システム、デバイス及び/又はその内部に図示されたコンポーネントにも、システム、デバイス及び/又はその内部に図示されたコンポーネントのいかなる特定の順序、接続及び/又は結合にも限定されないことが理解されるべきである。例えば、いくつかの実施形態において、VAD統合システム100は、動作環境900及び図9を参照して本明細書に記載される様々なコンピュータ及び/又はコンピューティングベースの要素を更に備え得る。いくつかの実施形態において、コンピュータ及び/又はコンピューティングベースの要素は、図1に又は本明細書において開示される他の図に関連して示され記載されているシステム、デバイス、コンポーネント及び/又はコンピュータ実装動作のうちの1又は複数を実装することに関連して用いられ得る。
メモリ122は、プロセッサ124(例えば、古典的プロセッサ、量子プロセッサ及び/又は同様のプロセッサ)によって実行された場合に、実行可能コンポーネント及び/又は命令によって定義される動作のパフォーマンスを促進し得る1又は複数のコンピュータ及び/又はマシン可読、書き込み可能及び/又は実行可能コンポーネント及び/又は命令を格納し得る。例えば、メモリ122は、プロセッサ124により実行された場合に、RNN-T102、VADモデル104、及び/又は1又は複数の実施形態の様々な図面を参照して又はせずに本明細書に記載されるVAD統合システム100に関連付けられた別のコンポーネントに関係する、本明細書に記載されるような様々な機能の実行を促進し得るコンピュータ及び/又はマシン可読、書き込み可能及び/又は実行可能コンポーネント及び/又は命令を格納し得る。
メモリ122は、1又は複数のメモリアーキテクチャを利用できる揮発性メモリ(例えば、ランダムアクセスメモリ(RAM)、静的RAM(SRAM)、及び/又は動的RAM(DRAM)等)及び/又は不揮発性メモリ(例えば、リードオンリメモリ(ROM)、プログラマブルROM(PROM)、電気プログラマブルROM(EPROM)、及び/又は電気消去可能プログラマブルROM(EEPROM)等)を含み得る。メモリ122の更なる例がシステムメモリ906及び図9を参照して後述される。メモリ122のこれらの例は、本明細書に記載される任意の1又は複数の実施形態を実装するために利用され得る。
プロセッサ124は、メモリ122に格納され得る1又は複数のコンピュータ及び/又はマシン可読、書き込み可能及び/又は実行可能コンポーネント及び/又は命令を実装し得る、1又は複数のタイプのプロセッサ及び/又は電子回路(例えば、古典的プロセッサ、量子プロセッサ及び/又は同様のプロセッサ)を含み得る。例えば、プロセッサ124は、限定されないが、ロジック、制御、入出力(I/O)、及び/又は算術等を含む、コンピュータ及び/又はマシン可読、書き込み可能、及び/又は実行可能コンポーネント及び/又は命令によって指定され得る様々な動作を実行し得る。いくつかの実施形態において、プロセッサ124は、1又は複数の中央処理ユニット、マルチコアプロセッサ、マイクロプロセッサ、デュアルマイクロプロセッサ、マイクロコントローラ、システムオンチップ(SOC)、アレイプロセッサ、ベクトルプロセッサ、量子プロセッサ及び/又は別のタイプのプロセッサを含み得る。プロセッサ124の追加的な例が処理ユニット904及び図9を参照して後述される。プロセッサ124の例は、本明細書に記載される任意の1又は複数の実施形態を実装するために利用され得る。
VAD統合システム100、RNN-T102、VADモデル104、ジョイントネットワークコンポーネント106、エンコーダコンポーネント108、プレディクタコンポーネント110、メモリ122、プロセッサ124、及び/又は本明細書に記載されるようなシステム100の別のコンポーネントは、システム100及び/又はそれと共に結合された任意のコンポーネントの機能を実行するために、バス120を介して、通信可能に、電気的に、動作可能なように及び/又は光学的に互いに結合され得る。バス120は、様々なバスアーキテクチャを利用し得る1又は複数のメモリバス、メモリコントローラ、ペリフェラルバス、外部バス、ローカルバス、量子バス及び/又は別のタイプのバスを含み得る。バス120の更なる例がシステムバス908及び図9を参照して後述される。バス120の例は、本明細書に記載される任意の1又は複数の実施形態を実装するために利用され得る。
VAD統合システム100は、プロセッサを含む任意のタイプのコンポーネント、マシン、デバイス、設備、装置、及び/又は計器を含み得、及び/又は有線及び/又はワイヤレスネットワークとの効果的及び/又は動作可能な通信が可能であり得る。このような全ての好適な実施形態が想定される。例えば、VAD統合システム100は、サーバデバイス、コンピューティングデバイス、汎用コンピュータ、特定用途向けコンピュータ、量子コンピューティングデバイス(例えば、量子コンピュータ)、タブレットコンピューティングデバイス、ハンドヘルドデバイス、サーバクラスコンピューティングマシン及び/又はデータベース、ラップトップコンピュータ、ノートブックコンピュータ、デスクトップコンピュータ、携帯電話、スマートフォン、コンシューマ用電化製品及び/又は計装、産業用及び/又は商用デバイス、デジタルアシスタント、マルチメディアインターネット対応電話、マルチメディアプレイヤ及び/又は別のタイプのデバイスを備え得る。
VAD統合システム100は、データケーブル(例えば、High-Definition Multimedia Interface(HDMI(登録商標))、推奨規格(RS)232、及び/又はEthernet(登録商標)ケーブル等)を介して、1又は複数の外部システム、ソース、及び/又はデバイス(例えば、古典的及び/又は量子コンピューティングデバイス、及び/又は通信デバイス等)に(例えば、通信可能に、電気的に、動作可能なように、及び/又は光学的に等で)結合され得る。いくつかの実施形態において、VAD統合システム100は、ネットワークを介して、1又は複数の外部システム、ソース及び/又はデバイス(例えば、古典的及び/又は量子コンピューティングデバイス、及び/又は通信デバイス等)に(例えば、通信可能に、電気的に、動作可能なように、及び/又は光学的に等で)結合され得る。
いくつかの実施形態において、ネットワークは、限定されないが、セルラーネットワーク、ワイドエリアネットワーク(WAN)(例えば、インターネット)、又はローカルエリアネットワーク(LAN)を含む1又は複数の有線及び/又はワイヤレスネットワークを有し得る。例えば、VAD統合システム100、RNN-T102、及び/又はVADモデル104は、限定されないが、ワイヤレスフィデリティ(Wi-Fi(登録商標))、モバイル通信のためのグローバルシステム(GSM(登録商標))、ユニバーサルモバイルテレコミュニケーションシステム(UMTS)、マイクロ波アクセスに関するワールドワイドインターオペラビリティ(WiMAX(登録商標))、強化型汎用パケット無線サービス(強化型GPRS)、第3世代パートナシッププロジェクト(3GPP(登録商標))ロングタームエボリューション(LTE)、第3世代パートナシッププロジェクト2(3GPP2)ウルトラモバイルブロードバンド(UMB)、高速パケットアクセス(HSPA)、Zigbee(登録商標)及び他の802.XXワイヤレス技術及び/又はレガシーテレコミュニケーション技術、BLUETOOTH(登録商標)、Session Initiation Protocol(SIP)、ZIGBEE(登録商標)、RF4CEプロトコル、WirelessHARTプロトコル、6LoWPAN(IPv6 over Low power Wireless Area Networks)、Z-Wave(登録商標)、ANT、超広帯域(UWB)規格プロトコル、及び/又は他のプロプライエタリ及び/又は非プロプライエタリの通信プロトコルを含む、事実上任意の所望の有線又はワイヤレス技術を用いて、1又は複数の外部システム、ソース及び/又はデバイス、例えば、コンピューティングデバイスと通信し得る(その逆もまた同様)。関係する例において、VAD統合システム100は、ハードウェア(例えば、中央処理ユニット(CPU)、トランシーバ、デコーダ、量子ハードウェア、及び/又は量子プロセッサ等)、ソフトウェア(例えば、スレッドのセット、プロセスのセット、実行中のソフトウェア、量子パルススケジュール、量子回路、及び/又は量子ゲート等)、及び/又はVAD統合システム100及び外部システム、ソース及び/又はデバイス(例えば、コンピューティングデバイス、及び/又は通信デバイス等)の間で情報を通信することを促進するハードウェア及びソフトウェアの組合せを備え得る。
VAD統合システム100は、プロセッサ124(例えば、古典的プロセッサ、及び/又は量子プロセッサ等)によって実行され場合に、このようなコンポーネント及び/又は命令によって定義される1又は複数の動作のパフォーマンスを促進し得る1又は複数のコンピュータ及び/又はマシン可読、書き込み可能及び/又は実行可能コンポーネント及び/又は命令を備え得る。更に、多数の実施形態において、1又は複数の実施形態の様々な図面を参照して又はせずに本明細書に記載されるようなVAD統合システム100に関連付けられている任意のコンポーネントは、プロセッサ124により実行された場合に、このようなコンポーネント及び/又は命令により定義される1又は複数の動作のパフォーマンスを促進し得る1又は複数のコンピュータ及び/又はマシン可読、書き込み可能及び/又は実行可能コンポーネント及び/又は命令を含み得る。例えば、ジョイントネットワークコンポーネント106(例えば、ジョイントネットワークへの接続及び/又はRNN-Tのネットワーク接続層)、エンコーダコンポーネント108(例えば、エンコーダネットワークへの接続及び/又はRNN-Tのエンコーダ接続層)、プレディクタコンポーネント110(例えば、プレディクタネットワークへの接続及び/又はRNN-Tのプレディクタ層)、及び/又は本明細書において開示されているVAD統合システム100と関連付けられた(例えば、システム100と通信可能に、電子的に、動作可能なように及び/又は光学的に結合されている及び/又はそれにより利用されている)任意の他コンポーネントは、このようなコンピュータ及び/又はマシン可読、書き込み可能及び/又は実行可能コンポーネント及び/又は命令を含み得る。その結果、多数の実施形態によると、本明細書において開示されるVAD統合システム100及び/又はそれと共に関連付けられた任意のコンポーネントは、プロセッサ124を利用して、このようなコンピュータ及び/又はマシン可読、書き込み可能及び/又は実行可能コンポーネント及び/又は命令を実行して、システム100及び/又はそれと共に関連付けられた任意のこのようなコンポーネントを参照して本明細書に記載される1又は複数の動作のパフォーマンスを促進し得る。
VAD統合システム100は、(例えば、プロセッサ124を介して)RNN-T102、VADモデル104、ジョイントネットワークコンポーネント106、エンコーダコンポーネント108、プレディクタコンポーネント110、及び/又は本明細書において開示されるシステム100と関連付けられた別のコンポーネントにより実行される及び/又はそれと関連付けられた動作のパフォーマンスを促進させ得る。例えば、詳細に後述しているように、VAD統合システム100は、プロセッサ124(例えば、古典的プロセッサ、及び/又は量子プロセッサ等)を介して、自動音声認識(ASR)情報を受信すること;ASR情報を用いてRNN-T102をマルチタスク訓練すること;及び/又はノイズに対するロバスト性を改善するために、RNN-T102のエンコーダコンポーネント108をRNN-T102のジョイントネットワークコンポーネント106及び/又はVADモデル104の1又は複数の出力と統合することを促進し得る。下から明らかになるように、1又は複数のシステムは、VADベースの知識をRNN-T102に転送するために利用され得る。例えば、限定されないが、VAD統合システム100は、特徴統合及び/又はマルチタスク訓練を介してノイズに対するロバスト性を改善するために利用され得る。
次に図1に示されるようなVAD統合システム100のコンポーネント等の図1に示すような追加的な態様について、システムの更なる機能性が記載される。機能性の追加的な説明が図2A、図2B、及び図3A~図3Dの例示的な実施形態を参照して更に後述され、ここでは、それぞれの実施形態において利用されている同様の要素及び/又はプロセスの繰り返しの説明が簡潔性のために省略されている。
図2A及び図2Bに概して示されているような実施形態において、VAD統合システム100は、音声フレーム入力シークエンス400(例えば、図4を参照)の特徴統合(例えば、特徴抽出)を含み得る。VAD統合システム100は、様々な接続方式/配向のうちの1又は複数での特徴統合を含み得る。VAD統合システム100は、エンコーダ前位置(例えば、図2Aを参照)及び/又はエンコーダ後位置(例えば、図2Bを参照)において統合されたVADモデル204を備え得る。更に、RNN-T202は、ジョイントネットワークコンポーネント206(例えば、ジョイントネットワークへの接続)、エンコーダコンポーネント208(例えば、エンコーダネットワークへの接続)、及び/又はプレディクタコンポーネント210(例えば、プレディクタネットワークへの接続)を有し得る。長さTのシーケンスx=(x1,...,xT)の音声特徴入力シーケンスが与えられると、RNN-T202は、入力及び出力の条件付き分布p(y|x)をモデリングすることにより、長さUのテキストトークンシーケンスy=(y1,...,yU)を出力する。実施形態において、特徴統合は、ASR特徴で別個に訓練されたVADモデルから生成されたボイスアクティビティクラス確率を連結することにより生じ得る。VADモデル204は、長さTのボイスアクティビティクラスのシーケンスv=(v1,...,vT)を同じ長さを有する音声フレームシーケンスxから予測し得る。VAD統合システム100は、VAD出力確率p(v|x)及び対応する音声フレームのASR特徴の間の特徴を連結し得る。
図2Aに示すように、システムは、エンコーダ前位置における連結を通したシングルタスクASR及びVAD特徴統合を備え得る。例えば、限定されないが、VADモデル204は、エンコーダコンポーネント208の前に接続され得、したがってエンコーダコンポーネント208へとフィードし得る。VAD統合システム100は、以下の式1により表されるようにエンコーダコンポーネント208の前で、VAD出力確率p(v|x)をRNN-Tに対する入力特徴xと連結し得、ここで、xcは、連結の後のエンコーダ入力特徴である。
式1:xc=((x1,p(v1|x)),...,(xT,p(vT|x))
図2Bに示すように、VAD統合システム100は、エンコーダ後位置における連結を通したシングルタスクASR及びVAD特徴統合を含み得る。例えば、限定されないが、VADモデル204は、エンコーダコンポーネント208の後に接続され得、その結果、VADモデル204からのVAD情報及びエンコーダコンポーネント208の出力は、連結され、ジョイントネットワーク206へと伝送され得る。VAD出力確率p(v|x)、及び以下に方程式2及び3により表されているRNN-Tエンコーダ出力h=(h1,...,hT)の間で特徴レベル統合が生じ得、hcは、ジョイントネットワークに渡される統合された特徴である。
式2:h=Encoder(x)
式3:hc=((h1,p(v1|x)),...,(hT,p(vT|x))
次に図3A、図3B、図3C及び/又は図3Dにより示されるシステムの態様について、VAD統合システム100は、ASRロバスト性を改善するために、RNN-T302及び/又はVADモデル304をマルチタスク訓練し得る。本明細書において概して記載されているような実施形態において、VAD統合システム100は、メインタスクとしてRNN-T302をASR情報(例えば、ASR基準)により訓練し得、及び/又はシステム100は、サブタスクとしてVADモデル304を訓練し得る。例えば、限定されないが、VAD統合システム100は、RNN-T302及びVADモデル304を同時に及び/又は代替的に訓練し得る。更に、様々な実施形態(例えば、図3A、図3B、図3C及び図3D)のうちの1又は複数において、ASR処理のためのRNN-Tのエンコーダ層は、(例えば、サブタスクとしての)VAD処理のためのエンコーダ層と共有され得る。
図3Aに概して示されているようないくつかの実施形態において、VAD統合システム100は、マルチタスク訓練を有効にするために、エンコーダ前共有アーキテクチャ(例えば、MTL1)を備え得る。よって、エンコーダコンポーネント308において生じる動作及び/処理のために、エンコーダコンポーネント308の前に、追加的なネットワークがRNN-T302に付加され得る。RNN-T302は、ジョイントネットワークコンポーネント306、エンコーダコンポーネント308、及び/又はプレディクタコンポーネント310を有する。VAD統合システム100は、エンコーダコンポーネント308に渡される予定のASR情報及びVADモデル304を表す入力を生み出し得る。実施形態において、VAD統合システム100は、双曲線正接関数を有する全結合ニューラルネットワーク312(例えば、FC)層のスタックから成る共有ネットワークを備える。VADモデル304は、サブタスクとして動作し得、及び/又はVADモデル304は、畳み込みニューラルネットワーク(CNN)から成り得る。
更に、図3Bに概して示されているような他の実施形態において、VAD統合システム100は、マルチタスク訓練を有効にするための部分的エンコーダ共有アーキテクチャ(例えば、MTL2)を備え得る。よって、RNN-T302(例えば、ASR RNN-T)及びVADモデル304は、ボトム層から少なくともRNN-T302の一部(例えば、VAD統合システム100の物理接続層、これによりVADモデル304及びRNN-T302は、ASR RNN-T302機能及びVADモデル304機能の両方のために、RNN-T302のエンコーダコンポーネント308に物理的に接続され得及び/又はエンコーダコンポーネント308により利用される処理を利用し得る)を共有する。RNN-T302は、ジョイントネットワークコンポーネント306、エンコーダコンポーネント308、及び/又はプレディクタコンポーネント310(例えば、VADモデル304と共に共有されるRNN-Tのエンコーダ層)を有し得る。VADモデル304(例えば、VADブランチ)には、入力(例えば、音声フレーム入力シーケンス)のVADクラスを予測する全結合層のスタックが後に続く。エンコーダコンポーネント308は、RNN-T302及びVADモデル304をマルチタスク処理することを有効にするために、1又は複数の長・短期記憶(LSTM)コンポーネント/プロセッサ314、316を含み得る。
図3Cに概して示されているようないくつかの実施形態において、VAD統合システム100は、マルチタスク学習を有効にするために、完全エンコーダ共有アーキテクチャ(例えば、MTL3)を備え得る。よって、ASR及びVADモデル304は、RNN-T302内の全てのエンコーダ層を共有ネットワークとして用い得る。RNN-T302は、ジョイントネットワークコンポーネント306、プレディクタコンポーネント310、及び/又はエンコーダコンポーネント320を有し得る(例えば、これは、マルチタスク学習のために、VADモデルと共に完全に共有され得る)。
更に、図3Dに概して示されるような他の実施形態において、VAD統合システム100は、マルチタスク訓練を有効にするために、完全エンコーダ共有及び特徴統合アーキテクチャ(例えば、MTL4)を備え得る。よって、VADソフト出力は、(例えば、RNN-T302の外部のVADモデル304と接続される)全結合層322を用いて、RNN-Tエンコーダ出力と同じ次元を有するベクトルへと射影され得る。図3Dの実施形態によると、ネットワーク全体(例えば、VAD統合システム100)は、VADモデル304及びRNN-T302のための共有層としてのエンコーダコンポーネント320層を用いて訓練され得る。システムは、要素毎合計動作を介して、VADソフト出力をRNN-Tエンコーダ出力と併合し得る。
VAD統合システム100は、補助的VADデータを独立に及び/又は図1~図3Dのシステムアーキテクチャとの組合せで用いて訓練され得ることが理解されるであろう。実施形態において、VAD統合システム100は、VADタスクに関係するネットワークの最適化のために、補助的非トランスクライブオーディオオンリデータ(例えば、補助的VADデータ)を利用して、ASRパフォーマンスを改善し得る。補助的VADデータは、1又は複数の訓練行動/手続を介してVAD統合システム100により利用され得る。
非コンポーネント態様にまず目を向けると、VAD統合システム100は、それと共に関連付けられた音声フレーム入力シークエンス400(例えば、オーディオ入力信号及び/又はストリーム)を有する。音声フレーム入力シークエンス400は、図4に概して示されているような様々な音声信号パターンのうちの1又は複数を含み得る。例えば、限定されないが、音声フレーム入力シークエンス400は、音声オンリセグメント402、非音声オンリセグメント404、及び/又は様々な音声及び非音声セグメント406のうちの1又は複数を含み得る。VADモデル104により受信される音声フレーム入力シークエンス400は、入力オーディオの両端に短い非音声セグメントを含み得る(例えば、408)。典型的なノイズを伴う状況下で、VADモデル104は、音声フレーム入力シークエンスの実際の音声セグメントの予測エラーを生み出しやすくなり得る。更に、システムのノイズロバスト性を改善するために、VAD情報は、RNN-T102ベースのASR訓練に組み込まれ得る。VAD情報は、特徴レベル統合及び/又はマルチタスク学習を通してASRへと統合され得る。
実施形態において、VAD統合システム100は、音声及び非音声セグメントの両方を用いて事前にASR及びVADモデル104を訓練し得る。例えば、限定されないが、音声オンリ訓練データは、音声セグメントの各サイドの前及び/又は後に非音声セグメントを人工的に追加することにより拡張され得る。VAD統合システム100は、拡張された訓練データのみでなく、音声オンリセグメント402及び非音声オンリセグメント404(例えば、ホワイトスペース)もまた利用し得る。更に、VAD統合システム100は、様々な文脈のうちの1又は複数における音声+非音声を処理し得る。例えば、限定されないが、VAD統合システム100は、音声フレーム入力シークエンス400上の前方無音406、デュアルサイド無音408、後方無音410、及び/又は中間無音412を処理し得る。
次に図5A及び5Bを参照すると、これらの図は共に、本明細書に記載される1又は複数の実施形態による、RNN-T302及びVADモデル304をマルチタスク訓練することを促進し得る例示的、非限定的なコンピュータ実装方法500のフロー図を示す。更に、図5A及び図5Bに概して示されているような実施形態において、RNN-T302及びVADモデル304をマルチタスク訓練する方法は、プロセッサにより自動音声認識情報を受信する段階(502)を備え得る。方法はまた、ASR情報を用いて、プロセッサによりRNN-T302を訓練する段階(504)を備え得る。更に、実施形態において、方法は、ノイズに対するロバスト性を改善するために、プロセッサによりRNN-T302のエンコーダコンポーネント308をRNN-T302のジョイントネットワークコンポーネント306及びVADモデル304の1又は複数の出力と統合する段階(506)を備え得る。
次に図5Bについて、RNN-T302のエンコーダコンポーネント308をVADモデル304と統合する行動(506)が更に詳細に示されている。508において、コンピュータ実装方法は、VADモデル304をRNN-T302を操作するサブタスクとして操作する段階を備え得る。更に、コンピュータ実装方法は、エンコーダコンポーネントを介して、予め訓練されたVADモデル304に関連して、RNN-T302の1又は複数の入力を1又は複数のボイスアクティビティクラスとして分類する段階(510)を備え得る。
512において、コンピュータ実装方法500は、プロセッサによりエンコーダコンポーネント308の1又は複数の出力をVADモデル304の1又は複数の出力と同じ次元へと統合する段階を備え得る。更に、実施形態において、514において、コンピュータ実装方法500は、要素毎総計動作をエンコーダ308の1又は複数の出力及びVADモデル304の1又は複数の出力の間で適用する段階を備え得る。
次に図6を参照すると、コンピュータ実装方法500は、補助的VADデータを用いてマルチタスク訓練する段階を更に備え得る。1又は複数の実施形態によると、ASRパフォーマンスは更に、(例えば、プロセス600に示されるように補助的VADデータを利用して)システムの1又は複数のパラメータを凍結することにより改善/最適化され得る。602において、コンピュータ実装方法600は、ASRタスクのためにRNN-T302を最適化する段階を備え得る。RNN-T302は、VADパラメータのみを凍結すること及びトランスクライブデータを用いることにより最適化され得る。更に、VAD統合システム100は、VADモデル304のパラメータを凍結することによりASR特有のタスクのために訓練され得る。バックプロパゲーションのための損失算出は、以下の式4により表され得る。
式4:Loss=LossASR
604において、コンピュータ実装方法600は、ASRパラメータ及び(例えば、RNN-T302及びVADモデル304の間の)共有層を凍結すること及びトランスクライブ及び補助的非トランスクライブデータを用いることによりVADモデル304を最適化する段階を備え得る。実施形態において、ASRパラメータを凍結することは、ジョイントネットワークコンポーネント306、エンコーダコンポーネント308、及び/又はプレディクタコンポーネント310を凍結することを含み得る。バックプロパゲーションのための損失算出は、以下の式5により表され得る。
式5:Loss=LossVAD
606において、コンピュータ実装方法600は、ASR(例えば、ASR RNN-T302)及びVADモデル304を共同で最適化する段階を備え得る。例えば、限定されないが、コンピュータ実装方法600は、VADモデル304及び共有層パラメータを更新(例えば、VADモデル304及び/又はエンコーダコンポーネント308を更新)して、VAD統合システム100を最適化する段階を備えてよい。コンピュータ実装方法600の各訓練エポックについて、VAD統合システム100は、VAD特有のデータを用いて最適化し得、及び/又はシステム100は、ASR-VADジョイント最適化を用いて最適化し得る。実施形態において、VAD統合システム100は、ASRタスクのみについて最適化(例えば、VADパラメータを凍結)し得、それに応じて、VAD統合システム100は、VAD最適化のみについて最適化(例えば、ASRパラメータを凍結)し得、及び/又は更にそれに応じて、VAD統合システム100は、ASR及びVADモデル304を共同で最適化し得る。システム100は、重み付き損失と共に非トランスクライブVAD訓練データを用いてVADモデル304及び共有層パラメータを更新し得る。重み付き損失算出は、以下の式6により表され得、ここでβは、ジョイント最適化のためのVADタスク損失重みについてのハイパーパラメータである。
式6:Loss=β・LossVAD
実施形態において、ASR及びVADパラメータを更新する段階は、VADモデル304、ジョイントネットワークコンポーネント306、エンコーダコンポーネント308、及び/又はプレディクタコンポーネント310のパラメータを更新する段階を有し得る。更に、実施形態において、ASR及びVADパラメータは、共有トランスクライブデータ及び以下の式7により表されるジョイント重み付き損失を用いて更新され得、ここで、αは、ASRタスク損失重みについてのハイパーパラメータである。
式7:Loss=α・LossASR+β・LossVAD
実施形態により、システムは、別個に十分に訓練されたVADモデルから生成された疑似ラベルを利用し得る。疑似ラベルのこのプロセスは、VADからASRへの知識の蒸留であるとして考えられ得る。知識の蒸留は、複雑な教師ネットワークを単純な生徒ネットワークで模倣するために実装され得る技法である。別個のVADモデル(例えば、教師VADモデル)は、生徒VADモデルのためにより良好な疑似ソフトラベルを生成するために、大量の訓練データで訓練され得、ここで生徒は、RNN-T ASRネットワークに接続されたサブタスクVADネットワークである。蒸留は、訓練資料内の音響特徴xから取得された疑似VADラベル
を通して実行され得る。蒸留技法は、以下の式8により表され得、ここで、
は、教師VADにより予測されたVADクラス事後確率である。であれば、vは、xが与えられたマルチタスクフレームワークにおける生徒VADのターゲットラベルとして利用され得る。
次に図7及び図8A~図8Dにおいて提供される結果について、4つの表700、表800、表802、及び/又は表804は、1又は複数の様々な実験の結果を示す。第1の実験において、電話での会話からの約300時間の複数話者のアメリカ英語音声から成るSwitchboard(SWB)コーパスが用いられ得る。データは、訓練資料に2秒より長い非音声セグメント(例えば、このようなセグメントは典型的に、一般的な訓練環境において放棄される)を含むことにより拡張され得る。データを拡張することは、SWBデータの標準267時間に加えて、非音声オンリデータの約88時間及び音声及び非音声セグメントと混合された発話の約599時間を生み出した。
第2の実験において、図6のマルチタスク学習フレームワークにおけるVAD基準での更新のための補助的VAD訓練データが準備され得る。データは、利用可能な転写無しの200時間の非音声と共に約200時間の英語のコールセンター(CC)会話を含む。このデータセットにおいて、環境ノイズは、モデル訓練のための訓練セットに追加された。結果として生じる平均音声対ノイズ比(SNR)は、14dBであった。
図3Bにおいて少なくとも部分的に具現化されているような実施形態において、RNN-Tは、方向毎に層毎に640個のセルを有する6つの双方向長短期記憶(Bi-LSTM)エンコーダ層及び1024個のセルのみを有する単一の一方向LSTM予測層を有し得る。ジョイントネットワークは、最後の層からの1280次元のスタックしたエンコーダベクトル及び1024次元の予測ネット埋め込みを256次元に射影し、及び/又は射影されたベクトルを組み合わせ得る。双曲線正接の適用後、出力は、42個のロジットに射影され、後に41文字に対応するソフトマックス層が続く。40次元の話者独立log-Melフィルタバンク特徴は、ASR特徴として10ms毎に抽出され得る。発話レベル平均及びグローバル分散正規化の後、これらの特徴は、デルタ及びダブルデルタ係数で拡張され得る。独立CNNベースのVADは、フレームレベルのVADラベルを生成し得、これは、特徴統合及び/又はマルチタスク学習システムを介して利用され得る。
更に実施形態において、隔離されたVADモデルは、それぞれ第1から最後の層からの入力チャネル3、16,32、及び2及び/又は音声フレームを音声、非音声、及び音楽クラスへの分類する際の3の出力クラス次元を有する4つの畳み込み層を備え得る。隔離されたVADは、自発的及び読み上げ音声の両方を含む様々なASRドメインから成る2000時間を超える英語音声データで訓練(例えば、実験)され得る。他方で、VADコンポーネントは、(3つのFC層のスタックから成る)MTL2、MTL3、及びMTL4のためのサブタスクである。MTL2において、最初3つのエンコーダ層は、ASR及びVADタスクの間で共有され得る。ASRのための学習速度は、2e-4の値を含み、マルチタスク学習フレームワークにおけるVADのための学習速度は、2e-5の値を含んだ。両方のシステムは、64のバッチサイズを有する確率的勾配降下法(SGD)を用いることにより最適化され得る。
更に、図7及び図8A~図8Dに示されるように、音声オンリセグメント、そしてVAD予測エラーをシミュレーションする非音声セグメントと組み合わせられたそれらを用いて実験が実行された。これらの実験の結果は、WER%として略されたASRワードエラー率及びEER%として略されたフレームレベルVAD等価エラー率と共に表700及び表702に示されている。ベースライン及び提案されたシステムは、修正されたSWB、及び様々な長さの非音声セグメントを音声の前、音声の後、又は2つの音声セグメントの間に人工的に追加することにより作成されたCallhome(CH)テストセットで評価された。各テスト発話に追加された非音声セグメントは、平均で5.5秒である。現実的な環境ノイズもまたこれらのテストセットに追加された。加えて、音声オンリ及びノイズオンリ(非音声)テストもまた実施された。
表700及び表800内の実験の結果は、元のSWB訓練コーパスで訓練された「拡張無」としてタグ付けされている標準RNN-Tが手動でセグメント化された理想的な音声オンリ入力状況下で十分に作動したが、長い非音声部分と組み合わされた音声を有するより現実的なケースでは、パフォーマンスが大幅に低下したことを示す。この状況下で、「標準RNN-T(拡張無)」によりデコードされたテキストは、非音声部分上に予期しない多くの挿入エラーを含む。対照的に、データセット(「標準RNN-T(拡張有))」を訓練するために非音声セグメントを追加することは、いくつかのそれらのエラーを著しく減少させ得、これもまた表800において見られ得る。
様々なテスト状況において、エンコーダ後特徴統合は、エンコーダ前特徴統合より良好に作動する(例えば、表700を参照)。「音声+非音声」及び「音声オンリ」入力ケースに対するエンコーダ後統合によるWERは、「標準RNN-T(拡張有)」と類似していたが、この技法は、800に示されるように、非音声オンリのテストケースにおいて挿入エラーを著しく低減させた。
次に、マルチタスク学習について、実験の結果がまた700及び800において表にされている。VAD補助的データが利用されなかった場合、「音声+非音声」テストケースにおいて、MTL4(β=0.01)が最も大きな改善を提供した。更なる改善がMTL2、MTL3、及びMTL4において補助的VAD訓練データ(VAD auxデータ)を利用することにより取得された。モデル及び/又は非限定的な実施形態は、補助的VADデータ無しのモデルと比較して、「音声+非音声」のみならず「音声オンリ」テストケースについてもまたWERを改善した。それぞれデータ拡張無し及び有りの標準RNN-Tと比較して、「音声+非音声」テストケースにおいて、21.5%及び3.6%の相対的な改善を生じた「MTL4+VAD auxデータ」が最も良好なパフォーマンスを示した。また、「MTL4+VAD auxデータ」は、「標準RNN-T(拡張有)」と比較して、音声オンリテストケースにおいて、4.6%の相対的改善を提供した。
実施形態において、実験は、(例えば、結果として、VADラベルを生成するために用いられ得る)別個のVADシステムにより自動でセグメント化されたオーディオ信号を用いて実施され得る。上記実験の結果は、表802下で図8Aに示されている。低SNRにおけるVAD結果における様々な種類のセグメント化エラーがノイズとしての音声セグメントの分類を含んだので、表802内の絶対WERは、平均して表700内のものと比べてより大きかった。しかしながらVAD統合システム100は、ベースラインシステムを超える一貫したゲインを示した。
次に、図8Aの表804は、(異なるSNRでのWERを含む)VAD補助的データと同じドメインである追加的なテストデータ(CC)を用いたVADサブタスク最適化を介した音響カスタマイズの結果を示す。CCは、音響的にドメイン外のテストセットであり、したがって絶対WERは、高い。VAD補助的データを訓練データに追加することにより、「MTL4+VAD auxデータ」は、あらゆるSNR状況におけるCC及びSWB/CHテストセットの両方について改善を生じた。WERにおける「標準RNN-T(拡張有)」及び「MTL4+VAD auxデータ」間のギャップは、SNRが減少するほど、より大きくなる傾向がある。
実施形態において、VAD統合システム100の更なる実験及び/又はパフォーマンスが図8B、図8C及び/又は図8Dを介して示され得る。VAD統合システム100は、モノラル記録、別個のチャネルA、又は別個のチャネルBについてのテストセット「CH」及び「内部CC」を介して実験され得る。表806は、車のノイズ音と混合された平均SNR4dBにおける手動でセグメント化された音声オンリのノイズを伴うオーディオに対するVAD統合システム100の有効性を示す実験結果を含む。追加的に、表808(例えば、図8C)は、手動でセグメント化された音声及び非音声に対するVAD統合システム100の有効性を示す実験結果を含む。例えば、限定されないが、非音声セグメントは、約2秒以上であり得る。
次に、図8Cの表810は、SWB及びCHテストセットを介したVAD統合システム100の実験の追加的な結果を示す。更に、表812は、様々なSNRレベル(例えば、14.2dB、4.2dB、及び/又は1.4dBのSNRレベル)における手動でセグメント化されたノイズを伴う音声からの実験結果を示す。加えて、実験は、表814及び/又は表816により示され得る。図8Dに示されるように、表814は、様々なSNRレベル(例えば、14dB、4.2dB、及び/又は1.4dBのSNRレベル)における手動でセグメント化されたノイズを伴う音声及び非音声により達成される実験の結果を示す。表816は、様々な音声セグメントにおけるVAD統合システムの有効性を示す。音声セグメントは、非音声オンリ404、前方無音406、後方無音410、及び/又は中間無音412(例えば、図4を参照)を含み得る。
ASRの教師なし及び半教師あり訓練を適用し得ない音響的に困難なデータでのシチュエーションにおいて、コンピュータ実装方法は、有望な改善を示し得、これは、比較的計算上安価である。表700、表800、表802、表804、表806、表808、表810、表812、表814及び/又は816の実験の結果は、ノイズを伴う環境に対するシステムロバスト性を向上するための能力を示す。
説明を簡潔にするべく、コンピュータ実装方法が一連の行動として図示及び説明される。主題のイノベーションは、示される行動及び/又は行動の順序によって限定されるものではないことが理解され、理解されるべきであり、例えば、行動は、本明細書において提示及び記載されない他の行動と共に、様々な順序で及び/又は同時に生じ得る。更に、示される全ての行動が開示された主題によるコンピュータ実装方法を実装するために必要であり得るわけではない。加えて、当業者であれば、コンピュータ実装方法が代替的に、状態図又はイベントを介して、相互に関連のある一連の状態として表され得ることを理解し、理解するであろう。追加的に、以降で、及び、本明細書全体を通して開示されるコンピュータ実装方法は、コンピュータ実装方法をコンピュータへ移送及び転送することを促進するために製品に格納されることが可能であることが更に理解されるべきである。製品という用語は、本明細書において用いられる場合、任意のコンピュータ可読デバイス又は記憶媒体からアクセス可能なコンピュータプログラムを包含するよう意図されている。
本明細書に記載される様々な実施形態についての追加的な文脈を提供するべく、図9及び以下の議論は、本明細書に記載される様々な実施形態実装され得る好適な動作環境900の一般的な説明を提供することを意図する。1又は複数のコンピュータ上で実行し得るコンピュータ実行可能命令の一般的文脈で実施形態が上で記載されてきたが、当業者は、実施形態が他のプログラムモジュールとの組合せで、及び/又はハードウェア及びソフトウェアの組合せとしてもまた実装され得ることを認識するであろう。
概して、プログラムモジュールは、特定のタスクを実行する及び/又は特定の抽象データタイプを実装するルーチン、プログラム、コンポーネント、及び/又はデータ構造等を含む。更に、当業者は、それぞれが1又は複数の関連付けられたデバイスと動作可能なように結合され得るシングルプロセッサ又はマルチプロセッサコンピュータシステム、ミニコンピュータ、メインフレームコンピュータ、モノのインターネット(IoT)デバイス、分散コンピューティングシステム、並びにパーソナルコンピュータ、ハンドヘルドコンピューティングデバイス、及びマイクロプロセッサベース又はプログラマブルコンシューマエレクトロニクス等を含む他のコンピュータシステム構成と共に、本発明の方法が実施され得ることを理解するであろう。
本明細書の実施形態の示された実施形態はまた、特定のタスクが通信ネットワークを通してリンクされたリモート処理デバイスによって実行される分散型コンピューティング環境において実施され得る。分散型コンピューティング環境において、プログラムモジュールは、ローカル及びリモートメモリストレージデバイスの両方に位置し得る。
コンピューティングデバイスは典型的には、コンピュータ可読記憶媒体、マシン可読記憶媒体及び/又は通信媒体を含み得る、様々な媒体を含み、この2つの用語は本明細書において、以下のように、互いと異なるように用いられる。コンピュータ可読記憶媒体又はマシン可読記憶媒体は、コンピュータによってアクセスされ得る任意の利用可能な記憶媒体であり得、揮発性媒体及び不揮発性媒体、取り外し可能又は取り外し不可能媒体の両方を含む。例として、限定ではないが、コンピュータ可読記憶媒体及び/又はマシン可読記憶媒体は、コンピュータ可読及び/又はマシン可読の命令、プログラムモジュール、構造化データ及び/又は非構造化データ等の情報のストレージのための任意の方法又は技術に関連して実装され得る。
コンピュータ可読記憶媒体は、限定されないが、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、電気消去可能プログラマブルリードオンリメモリ(EEPROM)、フラッシュメモリ又は他のメモリ技術、コンパクトディスクリードオンリメモリ(CD‐ROM)、デジタル多用途ディスク(DVD)、ブルーレイディスク(BD)、及び/又は他の光ディスクストレージ、磁気カセット、磁気テープ、ディスクストレージ、及び/又は他の磁気ストレージデバイス、ソリッドステートドライブ、及び/又は他のソリッドステートストレージデバイス、及び/又は所望の情報を格納するために用いられ得る他の有形及び/又は非一時的媒体を含み得る。これに関して、ストレージ、メモリ、又はコンピュータ可読媒体に適用される、本明細書における「有形」又は「非一時的」という用語は、修飾語としての、伝搬するのみの一時的信号自体を除外するものとして理解され、伝搬するのみの一時的信号自体でない、全ての標準的なストレージ、メモリ及び/又はコンピュータ可読媒体に対する権利を放棄しない。
コンピュータ可読記憶媒体は、1又は複数のローカル又はリモートコンピューティングデバイスによって、例えば、媒体によって格納される情報に関する様々な動作のための、アクセス要求、クエリ及び/又は他のデータ取得プロトコルを介してアクセスされ得る。
通信媒体は典型的には、コンピュータ可読命令、データ構造、プログラムモジュール、又は他の構造化又は非構造化データを、変調されたデータ信号、例えば、搬送波又は他の移送メカニズム等のデータ信号において具現化し、任意の情報提供又は移送媒体を含む。「変調されたデータ信号」という用語又は信号は、その特徴的なセットのうちの1又は複数を有する又は1又は複数の信号において情報を符号化するような方式で変更された信号を指す。例として、限定ではないが、通信媒体は、有線ネットワーク及び/又は直接有線接続等の有線媒体、及び/又は音、RF、赤外線及び/又は他のワイヤレス媒体等のワイヤレス媒体を含み得る。
再び図9を参照すると、本明細書に記載される態様の様々な実施形態を実装するための例示的な動作環境900は、コンピュータ902を含み得、コンピュータ902は、処理ユニット904、システムメモリ906及び/又はシステムバス908を含む。システムバス908は、限定されないが、システムメモリ906を含むシステムコンポーネントを処理ユニット904に結合し得る。処理ユニット904は、市販の様々なプロセッサのいずれかであり得る。デュアルマイクロプロセッサ及び/又は他のマルチプロセッサアーキテクチャは、処理ユニット904として利用され得る。
システムバス908は、様々な市販のバスアーキテクチャのいずれかを用いて、(メモリコントローラを用いて又は用いることなく)メモリバス、ペリフェラルバス及び/又はローカルバスに更に相互接続し得るいくつかのタイプのバス構造のいずれかであり得る。システムメモリ906は、ROM910及び/又はRAM912を含み得る。基本入出力システム(BIOS)は、ROM、消去可能プログラマブルリードオンリメモリ(EPROM)及び/又はEEPROM等の不揮発性メモリに格納され得、このBIOSは、起動中等、コンピュータ902内の要素間で情報を転送することを助ける基本ルーチンを含む。RAM912はまた、データをキャッシュするための静的RAM等の高速RAMを含み得る。
コンピュータ902は、内部ハードディスクドライブ(HDD)914(例えば、EIDE、SATA)、1又は複数の外部ストレージデバイス916(例えば、磁気フロッピディスクドライブ(FDD)、メモリスティック、又はフラッシュドライブリーダ、及び/又はメモリカードリーダ等)、及び/又はCD-ROMディスク、DVD、及び/又はBD等のディスク922から読み込み得る又は書き込み得る、例えば、ソリッドステートドライブ又は光学ディスクドライブ等のドライブ920を更に含み得る。代替的に、ソリッドステートドライブが関与する場合、分離されない限り、ディスク922は、含まれ得ない。内部HDD914がコンピュータ902内に位置するものとして示されるが、内部HDD914はまた、好適なシャーシ(不図示)における外部使用のために構成され得る。追加的に、動作環境900において不図示であるが、ソリッドステートドライブ(SSD)は、HDD914に加えて、又は、その代わりに用いられ得る。HDD914、外部ストレージデバイス916及びドライブ920は、HDDインタフェース924によって、システムバス908、外部ストレージインタフェース926、及びドライブインタフェース928にそれぞれ接続され得る。外部ドライブ実装のためのHDDインタフェース924は、ユニバーサルシリアルバス(USB)、及び、米国電気電子学会(IEEE)1394インタフェース技術の少なくとも一方又は両方を含み得る。他の外部ドライブ接続技術は、本明細書に記載される実施形態の構想内にある。
ドライブ及びその関連付けられたコンピュータ可読記憶媒体は、データ、データ構造、コンピュータ実行可能命令等の不揮発性ストレージを提供する。コンピュータ802については、ドライブ及び記憶媒体は、好適なデジタルフォーマットの任意のデータのストレージに対応する。上のコンピュータ可読記憶媒体の説明は、それぞれのタイプのストレージデバイスを指すが、当業者であれば、現在既存の又は将来開発される、コンピュータ可読である他のタイプの記憶媒体もまた例示的な動作環境において用いられ得ること、及び更に、任意のこのような記憶媒体が本明細書に記載される方法を実行するためのコンピュータ実行可能命令を含み得ることを理解するべきである。
いくつかのプログラムモジュールは、オペレーティングシステム930、1又は複数のアプリケーション932、他のプログラムモジュール934及び/又はプログラムデータ936を含むドライブ及びRAM912に格納され得る。オペレーティングシステム、アプリケーション、モジュール及び/又はデータの全て又は一部はまた、RAM912にキャッシュされ得る。本明細書に記載されるシステム及び方法は、様々な市販のオペレーティングシステム及び/又はオペレーティングシステムの組合せを利用して実装され得る。
コンピュータ902は任意選択的に、エミュレーション技術を含み得る。例えば、ハイパーバイザ(不図示)又は他の仲介者は、オペレーティングシステム930のためのハードウェア環境をエミュレートし得、エミュレートされたハードウェアは任意選択的に、図9に示されているハードウェアとは異なり得る。関連する実施形態において、オペレーティングシステム930は、コンピュータ902においてホストされる複数のVMのうち1つの仮想マシン(VM)を含み得る。更に、オペレーティングシステム930は、アプリケーション932のためのJAVA(登録商標)ランタイム環境又は.NETフレームワーク等のランタイム環境を提供し得る。ランタイム環境は、ランタイム環境を含む任意のオペレーティングシステム上でアプリケーション932が実行することを可能にする一貫した実行環境である。同様に、オペレーティングシステム930は、コンテナをサポートし得、アプリケーション932は、コンテナの形式であり得、コンテナは、例えば、コード、ランタイム、システムツール、システムライブラリ及び/又はアプリケーションのための設定を含むソフトウェアの軽量で、スタンドアロンで、実行可能なパッケージである。
更に、コンピュータ902は、信頼される処理モジュール(TPM)等のセキュリティ・モジュールに対応し得る。例えば、TPMにより、ブートコンポーネントは、時間的に次のブートコンポーネントをハッシュし、次のブートコンポーネントをロードする前に、セキュアな値に対する結果のマッチを待機する。このプロセスは、コンピュータ902のコード実行スタックの任意の層において発生し得、例えば、アプリケーション実行レベル及び/又はオペレーティングシステム(OS)カーネルレベルに適用され、それによって、コード実行の任意のレベルでセキュリティを可能にする。
ユーザエンティティは、1又は複数の有線/ワイヤレス入力デバイス、例えば、キーボード938、タッチ画面940、及び/又はマウス942等のポインティングデバイスを通してコマンド及び情報をコンピュータ902へと入力し得る。他の入力デバイス(不図示)は、マイク、赤外線(IR)リモート制御、無線周波数(RF)リモート制御、又は他のリモート制御、ジョイスティック、仮想現実コントローラ及び/又は仮想現実ヘッドセット、ゲームパッド、スタイラスペン、画像入力デバイス、例えば、カメラ、ジェスチャセンサ入力デバイス、視覚動作センサ入力デバイス、感情又は顔検出デバイス、バイオメトリクス入力デバイス、例えば、指紋又は光彩スキャナ、又は同様のものを含み得る。これらの及び他の入力デバイスは、システムバス908に結合され得る入力デバイスインタフェース944を通して処理ユニット904に接続され得るが、並列ポート、IEEE1394シリアルポート、ゲームポート、USBポート、IRインタフェース、及び/又はBLUETOOTH(登録商標)インタフェース等の他のインタフェースにより接続され得る。
モニタ946又は他のタイプのディスプレイデバイスはまた、ビデオアダプタ948等のインタフェースを介してシステムバス808に接続され得る。加えて、コンピュータは、典型的に、コンピュータは典型的には、スピーカ、及び/又はプリンタ等の他のペリフェラル出力デバイス(不図示)を含む。
コンピュータ902は、リモートコンピュータ950等の1又は複数のリモートコンピュータに対する有線及び/又はワイヤレス通信を介した論理接続を用いて、ネットワーク環境において動作し得る。リモートコンピュータ950は、ワークステーション、サーバコンピュータ、ルータ、パーソナルコンピュータ、ポータブルコンピュータ、マイクロプロセッサベースのエンタテイメント機器、ピアデバイス及び/又は他の一般的なネットワークノード、又であり得、典型的には、コンピュータ902に関して記載されている要素の多く又は全てを含み、ただし、簡潔にする目的で、メモリ/ストレージデバイス952のみが示される。図示されている論理接続は、ローカルエリアネットワーク(LAN)954及び/又はより大きいネットワーク、例えば、ワイドエリアネットワーク(WAN)956に対する有線/ワイヤレス接続を含む。LAN及びWANネットワーキング環境は、オフィス及び会社において一般的であり、イントラネット等の企業全体のコンピュータネットワークを促進し、それらは全て、グローバル通信ネットワーク、例えば、インターネットに接続され得る。
LANネットワーキング環境において用いられる場合、コンピュータ902は、有線及び/又はワイヤレス通信ネットワークインタフェース又はアダプタ958を通してローカルネットワーク954に接続され得る。アダプタ958は、LAN954への有線又はワイヤレス通信を促進し得、LAN954はまた、ワイヤレスモードにおいてアダプタ958と通信するためにその上に配設されるワイヤレスアクセスポイント(AP)を含み得る。
WANネットワーキング環境において用いられる場合、コンピュータ902は、モデム960を含み得、及び/又はインターネット等の手段によって、WAN956を介して通信を確立するための他の手段を介して、WAN956上の通信サーバに接続され得る。内部又は外部であり得るモデム960、及び、有線及び/又はワイヤレスデバイスは、入力デバイスインタフェース944を介してシステムバス908に接続され得る。ネットワーク環境において、コンピュータ902又はその一部に関して図示されるプログラムモジュールは、リモートメモリ/ストレージデバイス952に格納され得る。示されるネットワーク接続が例示的であり、コンピュータ間で通信リンクを確立するための他の手段が用いられ得ることが理解されるであろう。
LAN又はWANネットワーキング環境のいずれかにおいて用いられる場合、コンピュータ902は、これらに限定されないが、情報のストレージ又は処理の1又は複数の態様を提供するネットワーク仮想マシン等の上に記載された外部ストレージデバイス916に加えて、又はその代わりに、クラウドストレージシステム又は他のネットワークベースストレージシステムにアクセスし得る。概して、コンピュータ902とクラウドストレージシステムとの間の接続が、例えば、アダプタ958又はモデム960によって、それぞれLAN954又はWAN956を介して確立され得る。コンピュータ902を関連付けられたクラウドストレージシステムに接続すると、外部ストレージインタフェース926は、アダプタ958及び/又はモデム960の補助を用いて、外部ストレージの他のタイプを管理するように、クラウドストレージシステムによって提供されたストレージを管理し得る。例えば、外部ストレージインタフェース926は、それらのソースがコンピュータ902に物理的に接続されているかのように、クラウドストレージソースへのアクセスを提供するように構成され得る。
コンピュータ902は、ワイヤレス通信において動作可能なように配設された任意のワイヤレスデバイス又はエンティティ、例えば、プリンタ、スキャナ、デスクトップ、及び/又はポータブルコンピュータ、ポータブルデータアシスタント、通信衛星、電話、ワイヤレスで検出可能タグと関連付けられた任意の機器又はロケーション(例えば、キオスク、ニューススタンド、及び/又は店の棚等)、及び/又は電話と通信するように動作可能であり得る。これは、ワイヤレスフィデリティ(Wi-Fi)及びBLUETOOTH(登録商標)ワイヤレス技術を含み得る。よって、通信は、従来のネットワークと同様に予め定義された構造であり得、又は単に、少なくとも2つのデバイスの間におけるアドホック通信であり得る。
ここで、図10を参照すると、例示的なクラウドコンピューティング環境1050が図示されている。示されているように、クラウドコンピューティング環境1050は、例えば、パーソナルデジタルアシスタント(PDA)又は携帯電話1054A、デスクトップコンピュータ1054B、ラップトップコンピュータ1054C及び/又は自動車コンピュータシステム1054N等のクラウドコンシューマによって用いられるローカルコンピューティングデバイスが通信し得る1又は複数のクラウドコンピューティングノード1010を含む。図10には図示されていないが、クラウドコンピューティングノード1010は更に、クラウドコンシューマによって用いられるローカルコンピューティングデバイスが通信し得る量子プラットフォーム(例えば、量子コンピュータ、量子ハードウェア、及び/又は量子ソフトウェア等)を含み得る。クラウドコンピューティングノード1010は互いと通信し得る。これらは、上記したようなプライベートクラウド、コミュニティクラウド、パブリッククラウド又はハイブリッドクラウド又はこれらの組合せ等の1又は複数のネットワークにおいて、物理的又は仮想的にグループ化(不図示)され得る。これにより、クラウドコンピューティング環境1050は、インフラストラクチャ、プラットフォーム及び/又はソフトウェアを、クラウドコンシューマがそのためにローカルコンピューティングデバイス上にリソースを維持する必要がないサービスとして提供することが可能になる。図10に示されるコンピューティングデバイス1054A-Nのタイプは、例示のみを意図するものであり、クラウドコンピューティングノード1010及びクラウドコンピューティング環境1050は、(例えば、ウェブブラウザを用いて)任意のタイプのネットワーク及び/又はネットワークアドレス可能接続を介して任意のタイプのコンピュータ化デバイスと通信し得ることが理解される。
ここで、図11を参照すると、クラウドコンピューティング環境1050(図10)によって提供されるような機能抽象化層のセットが示される。図11に示されたコンポーネント、層、及び機能が例示のみを意図するものであり、本明細書に記載される実施形態がそれに限定されないことを、前もって理解されるべきである。図示するように、以下の層及び対応する機能が提供される。
ハードウェア及びソフトウェア層1160は、ハードウェア及びソフトウェアコンポーネントを含み得る。ハードウェアコンポーネントの例は、メインフレーム1161;RISC(Reduced Instruction Set Computer,縮小命令セットコンピュータ)アーキテクチャベースサーバ1162;サーバ1163;ブレードサーバ1164;ストレージデバイス1165;及びネットワーク及びネットワーキングコンポーネント1166を含む。いくつかの実施形態において、ソフトウェアコンポーネントは、ネットワークアプリケーションサーバソフトウェア1167、量子プラットフォームルーティングソフトウェア1168及び/又は量子ソフトウェア(図11に図示されていない)を含み得る。
仮想化層1170は、抽象化層を提供し得、抽象化層からは、仮想エンティティの以下の例、すなわち、仮想サーバ1171、仮想ストレージ1172;仮想プライベートネットワークを含む仮想ネットワーク1173;仮想アプリケーション及び/又はオペレーティングシステム1174;及び/又は仮想クライアント1175が提供され得る。
1つの例において、管理層1180は、後述されている機能を提供し得る。リソースプロビジョニング1181は、クラウドコンピューティング環境内のタスクを実行するために利用され得るコンピューティングリソース及び他のリソースの動的な調達を提供し得る。測定及び価格設定1182は、リソースがクラウドコンピューティング環境内で利用される際のコスト追跡及びこれらのリソースの消費に対する課金又は請求書送付を提供し得る。1つの例において、これらのリソースは、アプリケーションソフトウェアライセンスを含み得る。セキュリティは、クラウドコンシューマの身元確認及びタスク並びにデータ及び他のリソースのための保護を提供し得る。ユーザ(又は構成成分)ポータル1183は、コンシューマ及びシステム管理者に対し、クラウドコンピューティング環境へのアクセスを提供し得る。サービスレベル管理1184は、必要とされるサービスレベルが満たされるように、クラウドコンピューティングリソース割当て及び管理を提供し得る。サービスレベルアグリーメント(Service Level Agreement:SLA)プランニング及び遂行1185は、SLAに従い将来の要件が予想されるクラウドコンピューティングリソースに対する事前取決め及び調達を提供し得る。
ワークロード層1190は、クラウドコンピューティング環境が利用され得る機能性の例を提供し得る。この層から提供され得るワークロード及び機能の非限定的な例は、マッピング及びナビゲーション1191;ソフトウェア開発及びライフサイクル管理1192;仮想クラスルーム教育配信1193;データ分析処理1094;トランザクション処理1195;及び/又はアプリケーション変換ソフトウェア1196を含む。
本明細書に記載される実施形態は、統合の任意の可能な技術的詳細レベルにおけるシステム、方法、装置及び/又はコンピュータプログラム製品のうちの1又は複数を対象とし得る。コンピュータプログラム製品は、本明細書に記載される1又は複数の実施形態の態様をプロセッサに実行させるためのコンピュータ可読プログラム命令を有するコンピュータ可読記憶媒体(又は複数の媒体)を含み得る。コンピュータ可読記憶媒体は、命令実行デバイスにより用いられる命令を保持及び格納可能な有形デバイスであり得る。コンピュータ可読記憶媒体は例えば、電子ストレージデバイス、磁気ストレージデバイス、光学ストレージデバイス、電磁ストレージデバイス、半導体ストレージデバイス及び/又は前述の任意の好適な組合せに限定されるものではないことがあり得る。コンピュータ可読記憶媒体のより具体的な例の非包括的リストはまた、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、消去可能プログラマブルリードオンリメモリ(EPROM又はフラッシュメモリ)、静的ランダムアクセスメモリ(SRAM)、ポータブルコンパクトディスクリードオンリメモリ(CD-ROM)、デジタル多用途ディスク(DVD)、メモリスティック、フロッピディスク、命令が記録されたパンチカード又は溝における凸構造等のマシン的符号化デバイス、及び/又は前述の任意の好適な組合せを含み得る。コンピュータ可読記憶媒体は、本明細書において用いられる場合、電波又は他の自由に伝搬する電磁波、導波路又は他の伝送媒体を通して伝搬する電磁波(例えば、光ファイバケーブルを通過する光パルス)、又はワイヤを通して伝送される電気信号等の一時的信号それ自体とは解釈されるべきではない。
本明細書に記載されるコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体からそれぞれのコンピューティング/処理デバイスにダウンロードされ得、又はネットワーク、例えば、インターネット、ローカルエリアネットワーク、ワイドエリアネットワーク及び/又はワイヤレスネットワークを介して、外部コンピュータ又は外部ストレージデバイスにダウンロードされ得る。ネットワークは、銅伝送ケーブル、光伝送ファイバ、ワイヤレス伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ及び/又はエッジサーバを含み得る。各コンピューティング/処理デバイス内のネットワークアダプタカード又はネットワークインタフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、当該コンピュータ可読プログラム命令を、それぞれのコンピューティング/処理デバイス内のコンピュータ可読記憶媒体に格納するために転送する。本明細書に記載される1又は複数の実施形態の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路のための構成データ、又はSmalltalk(登録商標)、又はC++等のオブジェクト指向プログラミング言語、及び/又は「C」プログラミング言語又は類似のプログラミング言語等の手続型プログラミング言語を含む1又は複数のプログラミング言語の任意の組合せで書かれたソースコード又はオブジェクトコードのいずれかであり得る。コンピュータ可読プログラム命令は、ユーザのコンピュータ上で全体的に、ユーザのコンピュータ上で部分的に、スタンドアロンのソフトウェアパッケージとして、ユーザのコンピュータ上で部分的に及び/又はリモートコンピュータ上で部分的に、又はリモートコンピュータ又はサーバ上で全体的に実行し得る。後者のシナリオにおいて、リモートコンピュータは、ローカルエリアネットワーク(LAN)又はワイドエリアネットワーク(WAN)を含む任意のタイプのネットワークを通してユーザのコンピュータに接続され得るか、又は接続は、(例えば、インターネットサービスプロバイダを用いてインターネットを通して)外部コンピュータに行われ得る。いくつかの実施形態において、本明細書に記載される1又は複数の実施形態の態様を実行するべく、例えば、プログラマブルロジック回路、フィールドプログラマブルゲートアレイ(FPGA)及び/又はプログラマブルロジックアレイ(PLA)を含む電子回路は、コンピュータ可読プログラム命令の状態情報を利用して電子回路をパーソナライズすることによって、コンピュータ可読プログラム命令を実行し得る。
本明細書に記載される1又は複数の実施形態の態様は、本明細書に記載される1又は複数の実施形態による方法、装置(システム)、及びコンピュータプログラム製品のフローチャート図及び/又はブロック図を参照して本明細書に記載される。フローチャート図及び/又はブロック図の各ブロック、及び、フローチャート図及び/又はブロック図におけるブロックの組合せは、コンピュータ可読プログラム命令によって実装可能であることが理解されるであろう。これらのコンピュータ可読プログラム命令は、マシンを生み出すために、汎用コンピュータ、特定用途向けコンピュータ及び/又は他のプログラマブルデータ処理装置のプロセッサに提供され得、その結果、コンピュータ又は他のプログラマブルデータ処理装置のプロセッサを介して実行する命令は、フローチャート及び/又はブロック図のブロック又は複数のブロックにおいて指定される機能/行動を実装するための手段を作成する。これらのコンピュータ可読プログラム命令はまた、コンピュータ、プログラマブルデータ処理装置及び/又は他のデバイスに、特定の方式で機能するよう指示できるコンピュータ可読記憶媒体に格納され得、その結果、内部に命令を格納したコンピュータ可読記憶媒体は、フローチャート及び/又はブロック図のブロック又は複数のブロックにおいて指定された機能/行動の態様を実装する命令を含む、製品を含む。コンピュータ可読プログラム命令はまた、コンピュータ、他のプログラマブルデータ処理装置及び/又は他のデバイス上にロードされ得ることにより、一連の動作行動を、コンピュータ、他のプログラマブル装置又は他のデバイス上で実行させ、コンピュータ実装プロセスを生み出し、その結果、コンピュータ、他のプログラマブル装置及び/又は他のデバイス上で実行する命令が、フローチャート及び/又はブロック図のブロック又は複数のブロックにおいて指定される機能/行動を実装する。
図面内のフローチャート及びブロック図は、本明細書に記載される様々な実施形態によるシステム、コンピュータ実装可能方法及び/又はコンピュータプログラム製品の可能な実装のアーキテクチャ、機能性、及び動作を示す。これに関して、フローチャート又はブロック図における各ブロックは、指定された論理機能を実装するための1又は複数の実行可能命令を含む、モジュール、セグメント及び/又は命令の一部を表し得る。いくつかの代替的な実装において、ブロックに記載される機能は、図に記載された順序とは別の順序で生じ得る。例えば、実際に、連続して示される2つのブロックは、関与する機能性に応じて、実質的に同時に実行され得、又はブロックは場合によっては、逆の順序で実行され得る。また、ブロック図及び/又はフローチャート図の各ブロック、及びブロック図及び/又はフローチャート図におけるブロックの組合せは、指定された機能及び/又は行動を実行する特定用途向けハードウェアベースのシステムによって実装できる、又は特定用途向けハードウェア及び/又はコンピュータ命令の組合せを実行できることに留意されるであろう。
主題は、コンピュータ及び/又は複数のコンピュータ上で実行するコンピュータプログラム製品のコンピュータ実行可能命令の一般的文脈において上で説明されたが、当業者であれば、本明細書における1又は複数の実施形態がまた他のプログラムモジュールとの組合せで実装され得ることを認識し得る。概して、プログラムモジュールは、特定のタスクを実行する、及び/又は特定の抽象データタイプを実装するルーチン、プログラム、コンポーネント、及び/又はデータ構造等を含む。更に、当業者であれば、本発明のコンピュータ実装方法は、シングルプロセッサ又はマルチプロセッサコンピュータシステム、ミニコンピューティングデバイス、メインフレームコンピュータ、並びにコンピュータ、ハンドヘルドコンピューティングデバイス(例えば、PDA、電話)、及び/又はマイクロプロセッサベース又はプログラマブルコンシューマ用又は産業用エレクトロニクス等を含む他のコンピュータシステム構成で実施され得ることを理解するであろう。示される態様は、通信ネットワークを通してリンクされるリモート処理デバイスによってタスクが実行される分散型コンピューティング環境においてもまた実施され得る。しかしながら、1又は複数の実施形態の全ての態様とは言わないまでも、いくつかは、スタンドアロンのコンピュータで実施され得る。分散型コンピューティング環境において、プログラムモジュールは、ローカル及びリモート両方のメモリストレージデバイスに位置し得る。
本願において用いられる場合、「コンポーネント」、「システム」、「プラットフォーム」及び/又は「インタフェース」等の用語は、コンピュータ関連エンティティ又は1又は複数の特有の機能性を有する動作マシンに関連するエンティティを指し得る及び/又は含み得る。本明細書に開示されるエンティティは、ハードウェア、ハードウェア及びソフトウェアの組合せ、ソフトウェア、又は実行中のソフトウェアのいずれかであり得る。例えば、コンポーネントは、プロセッサ上で実行するプロセス、プロセッサ、オブジェクト、実行可能ファイル、実行のスレッド、プログラム及び/又はコンピュータであり得るが、これらに限定されるものではない。例示として、サーバ上で実行されるアプリケーション及び当該サーバの両方がコンポーネントであり得る。1又は複数のコンポーネントは、実行のプロセス及び/又はスレッドにおいて存在し得、コンポーネントは、1つのコンピュータに局在及び/又は2又はそれより多くのコンピュータの間で分散され得る。別の例において、それぞれのコンポーネントは、様々なデータ構造が格納された様々なコンピュータ可読媒体から実行し得る。コンポーネントは、1又は複数のデータパケット(例えば、ローカルシステム、分散システム、及び/又は信号を介する他のシステムとのインターネット等のネットワークにおける別のコンポーネントと相互作用する1つのコンポーネントからのデータ)を有する信号等に従って、ローカル及び/又はリモートのプロセスを介して通信し得る。別の例として、コンポーネントは、プロセッサによって実行されるソフトウェア又はファームウェアアプリケーションによって操作される電気又は電子回路によって操作されるマシン部品によって提供される特有の機能性を有する装置であり得る。このようなケースにおいて、プロセッサは、装置の内部又は外部にあり得、ソフトウェア又はファームウェアアプリケーションの少なくとも一部を実行し得る。更に別の例として、コンポーネントは、マシン部品を用いず電子コンポーネントを通して特有の機能性を提供する装置であり得、当該電子コンポーネントは、電子コンポーネントの機能性を少なくとも部分的に付与するソフトウェア又はファームウェアを実行するためのプロセッサ又は他の手段を含み得る。ある態様において、コンポーネントは、例えば、クラウドコンピューティングシステム内の仮想マシンを介して電子コンポーネントをエミュレートし得る。
加えて、「又は」という用語は、排他的な「又は」ではなく、包括的な「又は」を意味することが意図されている。即ち、別段の指定がない限り、又は文脈上明確でない限り、「XがA又はBを利用する」は、自然の包括的な入替えのいずれかを意味することが意図される。即ち、XはAを利用する;XはBを利用する;又はXはA及びBの両方を利用する場合、「XはA又はBを利用する」が前述のインスタンスのいずれかの下で満たされる。更に、本明細書及び添付の図面に用いられる冠詞「a」及び「an」は一般的に、単数形を対象としていることが別段に指定されない限り、又は文脈からそれが明確ではない限り、「1又は複数」を意味すると解釈されるべきである。本明細書において用いられる場合、用語「例」及び/又は「例示的」は、例、インスタンス、又は例示として機能することを意味するために利用される。疑義を回避するために、本明細書に開示される主題は、このような例に限定されるものではない。加えて、「例」及び/又は「例示的」として本明細書に記載される任意の態様又は設計は、他の態様又は設計よりも好ましいか、又は有利であると必ずしも解釈されず、当業者に知られている同等の例示的な構造及び技法を除外するよう意図されていない。
本明細書において利用される「プロセッサ」という用語は、これらに限定されないが、シングルコアプロセッサ;ソフトウェアマルチスレッド実行能力を有するシングルプロセッサ;マルチコアプロセッサ;ソフトウェアマルチスレッド実行能力を有するマルチコアプロセッサ;ハードウェアマルチスレッド技術を有するマルチコアプロセッサ、並列プラットフォーム;及び分散共有メモリを有する並列プラットフォームを含む実質的に任意のコンピューティング処理ユニット又はデバイスを指し得る。追加的に、プロセッサとは、集積回路、特定用途向け集積回路(ASIC)、デジタル信号プロセッサ(DSP)、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブルロジックコントローラ(PLC)、コンプレックスプログラマブルロジックデバイス(CPLD)、ディスクリートゲート又はトランジスタロジック、ディスクリートハードウェアコンポーネント、又は本明細書に記載される機能を実行するために設計されたそれらの任意の組合せを指し得る。更に、プロセッサは、空間利用を最適化し、又はユーザ機器のパフォーマンスを向上するべく、これらに限定されないが、分子及び量子ドットベースのトランジスタ、スイッチ、及びゲート等のナノスケールアーキテクチャを利用し得る。プロセッサはまた、コンピューティング処理ユニットの組合せとして実装され得る。本明細書において、「格納」、「ストレージ」、「データ格納」、「データストレージ」、「データベース」及びコンポーネントの動作及び機能性に関連する実質的に任意の他の情報ストレージコンポーネント等の用語は、「メモリ」又はメモリを含むコンポーネントにおいて具現化される「メモリコンポーネント」エンティティを指すために利用される。本明細書に記載されるメモリ及び/又はメモリコンポーネントは、揮発性メモリ又は不揮発性メモリのいずれかであり得るか、又は揮発性及び不揮発性メモリの両方を含み得ることが理解されるべきである。限定ではなく、例示として、不揮発性メモリは、リードオンリメモリ(ROM)、プログラマブルROM(PROM)、電気プログラマブルROM(EPROM)、電気消去可能ROM(EEPROM)、フラッシュメモリ及び/又は不揮発性ランダムアクセスメモリ(RAM)(例えば、強誘電体RAM(FeRAM))を含み得る。揮発性メモリは、例えば、外部キャッシュメモリとして行動し得るRAMを含み得る。限定ではなく例示として、RAMは、同期RAM(SRAM)、動的RAM(DRAM)、同期DRAM(SDRAM)、ダブルデータレートSDRAM(DDR SDRAM)、拡張SDRAM(ESDRAM)、Synchlink DRAM(SLDRAM)、ダイレクトRambus RAM(DRRAM)、ダイレクトRambus動的RAM(DRDRAM)及び/又はRambus動的RAM(RDRAM)等の多くの形式で利用可能である。追加的に、本明細書におけるシステム及び/又はコンピュータ実装方法の開示されるメモリコンポーネントは、これら及び任意の他の好適なタイプのメモリを含むことが意図されるが、これらに限定されない。
上で記載されてきたものは、システム及びコンピュータ実装方法の例を含むに過ぎない。当然、1又は複数の実施形態を説明する目的で、コンポーネント又はコンピュータ実装方法の想定されるあらゆる組合せを説明することは不可能であるが、当業者であれば、1又は複数の実施形態の多くの更なる組合せ及び入替えが可能であることを認識し得る。更に、「含む」、「有する」、及び「備える」等の用語が、詳細な説明、特許請求の範囲、付録、及び図面において用いられる範囲では、このような用語は、「備える」が請求項における移行ワードとして利用される場合に解釈されるような、用語「備える」と同様の方式で、包括的であるよう意図されている。
様々な実施形態の説明は、例示の目的で提示され、包括的又は開示される実施形態に限定的である意図はない。説明される実施形態の範囲及び趣旨から逸脱することのない多くの修正形態及び変形形態が、当業者には明らかになるであろう。本明細書において用いられる専門用語は、実施形態の原理、実用的な適用又は市場で見られる技術に対する技術的改善を最も良好に説明し、又は本明細書において開示される実施形態を他の当業者が理解することを可能にするように選択されている。
Claims (20)
- コンピュータ実行可能コンポーネントを格納するメモリ;及び
前記メモリに動作可能に結合されており、前記メモリに格納されている前記コンピュータ実行可能コンポーネントを実行するプロセッサ
を備え、前記コンピュータ実行可能コンポーネントは、
自動音声認識(ASR)情報を受信するリカレントニューラルネットワークトランスデューサ(RNN-T);
マルチタスク訓練を介して前記ASR情報を用いて前記RNN-Tを訓練するボイスアクティビティ検出(VAD)モデル
を有し;及び
前記RNN-Tは、エンコーダ及びジョイントネットワークを更に含み、前記エンコーダの1又は複数の出力は、前記ジョイントネットワーク及び前記VADモデルの1又は複数の出力と統合される
システム。 - 前記エンコーダは、前記VADモデル及び前記RNN-Tのアクティビティのための共有層として用いられる、請求項1に記載のシステム。
- 前記エンコーダは、予め訓練されたVADモデルを介して前記RNN-Tの1又は複数の入力を1又は複数のボイスアクティビティクラスとして分類する、請求項1又は2に記載のシステム。
- 前記VADモデルは、前記RNN-Tのサブタスクとして動作する、請求項1又は2に記載のシステム。
- 前記エンコーダの前記1又は複数の出力は、前記ジョイントネットワークに伝送される、請求項1又は2に記載のシステム。
- 全結合層を介して前記VADモデルの前記1又は複数の出力を前記エンコーダの前記1又は複数の出力と同じ次元へと射影することにより、前記エンコーダの前記1又は複数の出力は、前記VADモデルの前記1又は複数の出力と統合される、請求項1又は2に記載のシステム。
- ノイズに対するロバスト性を改善するために、要素毎総計動作が前記エンコーダの前記1又は複数の出力及び前記VADモデルの前記1又は複数の出力の間で適用される、請求項6に記載のシステム。
- 前記システムは、VADパラメータに基づいて最適化され;前記VADモデル及びRNN-Tは、共同で最適化される、請求項1又は2に記載のシステム。
- 前記システムは、バックプロパゲーションを判断するために、前記ASR情報及びVADパラメータのうちの少なくとも1つの1又は複数のパラメータを凍結させることにより更に最適化される、請求項8に記載のシステム。
- 前記VADモデル及び前記RNN-Tを事前に訓練するために、1又は複数の非音声セグメントが前記ASR情報の1又は複数の音声セグメントに追加される、請求項1又は2に記載のシステム。
- プロセッサにより自動音声認識(ASR)情報を受信する段階;
前記プロセッサにより前記ASR情報を用いてリカレントニューラルネットワークトランスデューサ(RNN-T)をマルチタスク訓練する段階;及び
ノイズに対するロバスト性を改善するために、前記プロセッサにより前記RNN-Tのエンコーダを前記RNN-Tのジョイントネットワーク及びボイスアクティビティ検出(VAD)モデルの1又は複数の出力と統合する段階
を備える、コンピュータ実装方法。 - 前記エンコーダは、前記VADモデル及び前記RNN-Tのアクティビティのための共有層として用いられる、請求項11に記載のコンピュータ実装方法。
- 前記プロセッサにより、予め訓練されたVADモデルに関連して前記RNN-Tの1又は複数の入力を1又は複数のボイスアクティビティクラスとして分類する段階
を更に備える、請求項11又は12に記載のコンピュータ実装方法。 - 前記VADモデルを前記RNN-Tを動作させるサブタスクとして動作させる段階
を更に備える、請求項11又は12に記載のコンピュータ実装方法。 - 全結合層を介して前記エンコーダの1又は複数の出力を前記VADモデルの1又は複数の出力と同じ次元へと統合する段階
を更に備える、請求項11又は12に記載のコンピュータ実装方法。 - 要素毎総計動作を前記エンコーダの前記1又は複数の出力及び前記VADモデルの前記1又は複数の出力の間に適用する段階
を更に備える、請求項15に記載のコンピュータ実装方法。 - リカレントニューラルネットワークトランスデューサ(RNN-T)をボイスアクティビティ検出(VAD)モデルで訓練するためのコンピュータプログラムであって、プロセッサに、
自動音声認識(ASR)情報を受信する手順;
前記ASR情報を用いて前記RNN-Tをマルチタスク訓練する手順;及び
前記RNN-Tのエンコーダを前記RNN-Tのジョイントネットワーク及び前記VADモデルの1又は複数の出力と統合する手順
を実行させるための、コンピュータプログラム。 - 前記プロセッサに、
予め訓練されたVADモデルに関連して、前記RNN-Tの1又は複数の入力を1又は複数のボイスアクティビティクラスとして分類する手順
を更に実行させるための、請求項17に記載のコンピュータプログラム。 - 前記プロセッサに、
全結合層を介して前記エンコーダの1又は複数の出力を前記VADモデルの前記1又は複数の出力と同じ次元へと統合する手順
を更に実行させるための、請求項17又は18に記載のコンピュータプログラム。 - 前記プロセッサに、
ノイズに対するロバスト性を改善するために、要素毎総計動作を前記エンコーダの前記1又は複数の出力及び前記VADモデルの前記1又は複数の出力の間で適用する手順
を更に実行させるための、請求項19に記載のコンピュータプログラム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/815,798 | 2022-07-28 | ||
US17/815,798 US20240038221A1 (en) | 2022-07-28 | 2022-07-28 | Voice activity detection integration to improve automatic speech detection |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2024019082A true JP2024019082A (ja) | 2024-02-08 |
Family
ID=89638572
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023121193A Pending JP2024019082A (ja) | 2022-07-28 | 2023-07-26 | システム、コンピュータ実装方法、及びコンピュータプログラム(自動音声検出を改善するためのボイスアクティビティ検出統合) |
Country Status (3)
Country | Link |
---|---|
US (1) | US20240038221A1 (ja) |
JP (1) | JP2024019082A (ja) |
CN (1) | CN117476035A (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220301561A1 (en) * | 2019-12-10 | 2022-09-22 | Rovi Guides, Inc. | Systems and methods for local automated speech-to-text processing |
-
2022
- 2022-07-28 US US17/815,798 patent/US20240038221A1/en active Pending
-
2023
- 2023-07-19 CN CN202310889460.3A patent/CN117476035A/zh active Pending
- 2023-07-26 JP JP2023121193A patent/JP2024019082A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
CN117476035A (zh) | 2024-01-30 |
US20240038221A1 (en) | 2024-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11842728B2 (en) | Training neural networks to predict acoustic sequences using observed prosody info | |
WO2023020262A1 (en) | Integrating dialog history into end-to-end spoken language understanding systems | |
US11011161B2 (en) | RNNLM-based generation of templates for class-based text generation | |
JP7356597B2 (ja) | 歌声変換 | |
US20170263269A1 (en) | Multi-pass speech activity detection strategy to improve automatic speech recognition | |
CN114450747B (zh) | 用于基于音频文件更新文档的方法、系统和计算机可读介质 | |
JP2024019082A (ja) | システム、コンピュータ実装方法、及びコンピュータプログラム(自動音声検出を改善するためのボイスアクティビティ検出統合) | |
WO2022121684A1 (en) | Alternative soft label generation | |
JP2024501173A (ja) | スピーチ認識のためのリカレントニューラルネットワークトランスデューサのカスタマイズ | |
KR20220133993A (ko) | 스피치 합성의 학습가능한 속도 제어 | |
WO2023139015A1 (en) | Data sorting for generating speech recognition models | |
WO2023046016A1 (en) | Optimization of lip syncing in natural language translated video | |
US20220343904A1 (en) | Learning singing from speech | |
JP2024505334A (ja) | マルチパーティ対話における談話解析のための構造自己認識モデル | |
US11843565B2 (en) | Dialogue system based on contextual information | |
JP2023541651A (ja) | 完全なトランスクリプトなしのエンドツーエンドの音声言語理解 | |
JP2023517004A (ja) | ピッチ敵対的ネットワークを用いた教師なし歌唱音声変換 | |
US20230237989A1 (en) | External language model information integrated into neural transducer model | |
US20220319494A1 (en) | End to end spoken language understanding model | |
US11942078B2 (en) | Chunking and overlap decoding strategy for streaming RNN transducers for speech recognition | |
US11908454B2 (en) | Integrating text inputs for training and adapting neural network transducer ASR models | |
US11996083B2 (en) | Global prosody style transfer without text transcriptions | |
US20230136842A1 (en) | Training data sequence for rnn-t based global english model | |
US20230386479A1 (en) | Techniques for improved zero-shot voice conversion with a conditional disentangled sequential variational auto-encoder | |
JP2023033160A (ja) | コンピュータ実装方法、システムおよびコンピュータプログラム(順序なしのエンティティを用いたエンドツーエンド音声言語理解システムのトレーニング) |