JP7170920B2 - トリガードアテンションを用いたエンドツーエンド音声認識のためのシステムおよび方法 - Google Patents

トリガードアテンションを用いたエンドツーエンド音声認識のためのシステムおよび方法 Download PDF

Info

Publication number
JP7170920B2
JP7170920B2 JP2021575098A JP2021575098A JP7170920B2 JP 7170920 B2 JP7170920 B2 JP 7170920B2 JP 2021575098 A JP2021575098 A JP 2021575098A JP 2021575098 A JP2021575098 A JP 2021575098A JP 7170920 B2 JP7170920 B2 JP 7170920B2
Authority
JP
Japan
Prior art keywords
sequence
encoder
attention
output
decoder
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
Application number
JP2021575098A
Other languages
English (en)
Other versions
JP2022522379A (ja
Inventor
モーリッツ,ニコ
貴明 堀
ル・ルー,ジョナタン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of JP2022522379A publication Critical patent/JP2022522379A/ja
Application granted granted Critical
Publication of JP7170920B2 publication Critical patent/JP7170920B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/16Speech classification or search using artificial neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/02Feature extraction for speech recognition; Selection of recognition unit
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/32Multiple recognisers used in sequence or in parallel; Score combination systems therefor, e.g. voting systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/27Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
    • G10L25/30Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks

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)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Biophysics (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)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Telephonic Communication Services (AREA)
  • Machine Translation (AREA)

Description

本発明は、概して音声認識のためのシステムおよび方法に関し、より具体的にはエンドツーエンド(end-to-end)音声認識のための方法およびシステムに関する。
自動音声認識(ASR:automatic speech recognition)システムは、ボイスサーチ等の各種インターフェイスアプリケーション用に広く展開されている。しかしながら、高い認識精度を実現する音声認識システムの構築は難しい。なぜなら、このような音声認識システムを構築するには、ASRシステムが受け入れる対象言語に関する言語学的な深い知識が必要であるからである。たとえば、音素セット、語彙、および発音辞書は、このようなASRシステムの構築に不可欠である。音素セットは、その言語の専門家が入念に定義したものでなければならない。発音辞書は、10万語を超える単語を含む語彙の中の各単語に1つ以上の音素列を手動で割り当てることによって作成しなければならない。加えて、言語の中には明確な単語の境界がない言語があり、そうすると、テキストコーパスから語彙を作成するためにトークン化を行う必要がある場合がある。それゆえに、特に少数言語の場合、音声認識を開発することは極めて難しい。他の問題として、音声認識システムは、別々に最適化される音響モデル、辞書モデル、および言語モデルを含むいくつかのモジュールに因数分解されるという問題がある。各モデルは他のモデルとマッチするように訓練されるが、このアーキテクチャは結果として局所最適を生じさせる可能性がある。
近年、エンドツーエンドニューラルネットワークモデルおよびシーケンスツーシーケンス(sequence-to-sequence)ニューラルネットワークモデルは、それぞれが、ASRコミュニティにおいて関心および知名度の上昇を獲得している。エンドツーエンドASRシステムの出力は、通常、単体の文字、または単語の一部および単語全体のようなより大きな単位のいずれかである、一連の書記素(grapheme)である。エンドツーエンドASRの魅力は、ニューラルネットワークコンポーネントで構成されておりASRシステム構築のための言語の専門知識が不要なので、従来のASRシステムと比較してシステムアーキテクチャを簡素化できることである。エンドツーエンドASRシステムは、発音、音響および言語のモデルを含む音声認識装置のコンポーネントのすべてを直接学習することができるので、言語固有の言語学情報およびテキスト標準化は不要である。
エンドツーエンド音声認識は、従来のアーキテクチャを、深層学習の枠組みの中で1つのニューラルネットワークアーキテクチャに簡略化するという目標を有する。たとえば、エンドツーエンドASRシステムの中には、カーネギーメロン大学のChanら、Google Brain、ヤーコプス大学ブレーメンおよびモントリオール大学のBahdanauらが2015年に紹介した、アテンションベースニューラルネットワークを使用するものがある。アテンションベースニューラルネットワーク(米国特許第9,990,918号参照)は、エンドツーエンド音声認識における現在の技術水準の結果を示している。しかしながら、アテンションベースニューラルネットワークは、出力遅延があり、低遅延が求められるオンライン/ストリーミングASRへの適用性は低い。
したがって、エンドツーエンドおよび/またはシーケンスツーシーケンス音声認識のためのこのようなアテンションベースモデルアーキテクチャにより生じる出力遅延を低減することが必要である。
自動音声認識(ASR)は、シーケンスツーシーケンス問題とみなすことができ、この問題において、入力はオーディオフレームからある特定のレートで抽出された音響特徴のシーケンスであり、出力は文字のシーケンスである。いくつかの実施形態の目的は、エンドツーエンドおよび/またはシーケンスツーシーケンス音声認識のためのアテンションベースネットワークの性能を改善することである。これに加えてまたはこれに代えて、いくつかの実施形態の別の目的は、アテンションベースモデルアーキテクチャによって引き起こされる出力遅延を低減すること、および、エンドツーエンドアテンションベースASRシステムをストリーミング/オンライン方式の認識に適合させることである。
いくつかの実施形態は、アテンションベースASRシステムは、典型的には音声の区切りによってセグメントに分割される音声発話全体である入力シーケンスを観察し、出力シーケンスの各トランスクリプション出力の認識のために各入力フレームに重みを割り当てる必要がある、という認識に基づいている。たとえば、トランスクリプション出力は、単体のアルファベット文字、または、単語もしくは文の一部のような文字列を含み得る。次のトランスクリプション出力を認識するための、入力シーケンスのどの部分が関連しているかに関する先験的知識がなく、各入力フレームに重みを割り当てる必要があるので、アテンションベースネットワークは、通常は大きな入力シーケンスを処理する必要がある。このような処理は、発話のさまざまな部分にアテンションを配置することを利用できるが、出力遅延を増大させるので、ストリーミング/オンライン方式の音声認識における実用性はない。
本明細書で使用される、ASRの出力遅延は、音声発話の音響フレームを受けた時間と、受けた音響フレームを認識した時間との差である。たとえば、アテンションベースASRシステムが音声発話全体に対して作業する場合、この発話内の単語の認識は、発話の最後のオーディオサンプルを受ける時点まで遅れる。このような認識の遅延は、出力遅延の増大を招く。
いくつかの実施形態は、次のトランスクリプション出力の認識のための、入力シーケンスの異なる部分の関連性に関する先験的知識の一例は、入力シーケンス中の認識すべきトランスクリプション部分に対応するフレームの位置を示すものである、という認識に基づいている。実際、トランスクリプション部分の位置が分かっている場合、入力シーケンスを制限することで、当該既知のトランスクリプション部分の位置の周囲のエリアにより大きなアテンションを置くように、アテンションベースネットワークを制約することができる。このようにしてアテンションベースネットワークは、トランスクリプション出力ごとに、そのアテンションを入力シーケンス内の当該トランスクリプション部分の想定される位置の周囲のエリアに集中させることができる。このように導かれたアテンションは、大きな入力シーケンスを処理する必要を減じ、ひいては出力遅延を減じて、アテンションベースネットワークを、ストリーミング/オンライン方式の認識における実用性を有するものにする。
したがって、アテンションベースネットワークへの入力とアテンションベースネットワークの出力との位置のアライメント(対応関係)を求めることにより、出力遅延を減じる必要がある。しかしながら、残念なことに、ASRアプリケーションの場合、人間の発音は不規則なので、このアライメントは決して簡単ではない。たとえば、発音のスピードは、1回の発話の中であっても変化し、同じ発話の異なる単語間に、または、1つの単語の異なる文字間にさえ、さまざまな数の無音セグメントを導入する可能性がある。加えて、ほとんどのアテンションベースシステムは、最初に、エンコーダネットワークにより、音響特徴等の入力特徴を、本明細書においてエンコーダ状態と呼ぶ、異なる表現に変換する。そのため、入力音響特徴ではなくエンコードされた状態に対して所望のアライメントが実行される。
いくつかの実施形態は、文字、ビット、単語その他のようなトランスクリプション出力をエンコードするエンコーダ状態の位置を決定するように訓練されたアライメントネットワークを提供する必要がある、という認識に基づいている。たとえば、コネクショニスト時系列分類法(CTC:connectionist temporal classification)は、タイミングが可変である場合のシーケンス問題に対処するために長・短期記憶(LSTM:long short-term memory)ネットワーク等のリカレントニューラルネットワーク(RNN:recurrent neural network)を訓練するための、一種のニューラルネットワーク出力および関連するスコアリング関数である。CTCベースASRシステムは、アテンションベースASRシステムに代わるものである。CTCベースネットニューラルネットワークは、入力シーケンスの各フレームごとに出力を生成し、すなわち入力と出力とを同期させ、ビームサーチアルゴリズムを用いてニューラルネットワーク出力を折りたたんで出力トランスクリプションにする。アテンションベースASRシステムの性能は、CTCベースASRシステムよりも優れている可能性がある。しかしながら、いくつかの実施形態は、CTCベースASRシステムの中間作業で使用される入力および出力フレームのアライメントを、アテンションベースASRシステムが使用することで、先に述べたその出力遅延という欠点に対処できる、という認識に基づいている。
これに加えてまたはこれに代えて、いくつかの実施形態は、隠れマルコフモデル(HMM:hidden Markov model)ベースシステムは望ましいアライメントを提供できる、という認識に基づいている。具体的には、ハイブリッドディープニューラルネットワーク(DNN:deep neural network)または混合ガウスモデル(GMM:Gaussian Mixture Model)ベースHMMモデルのような従来のHMMベースASRシステムを用いることにより、アライメント情報を計算することができる。
したがって、一実施形態は、音響信号から発話のトランスクリプションを生成するように訓練された音声認識システムを開示する。この音声認識システムは、音響信号を処理することにより、エンコーダ状態のシーケンスを含むエンコードされた音響信号を生成するように構成されたエンコーダネットワークと、エンコーダ状態のシーケンスを処理することにより、トランスクリプション出力のアライメントを生成し、最も関連性の高い情報をエンコードするエンコーダ状態の位置を特定することにより、トランスクリプション出力を生成するように構成された、コネクショニスト時系列分類ベース(CTCベース)ニューラルネットワークおよび/またはHMMベースモデルのようなアライメントネットワークと、エンコーダ状態のサブシーケンスから発話のトランスクリプションの表現を決定するように構成されたアテンションベースニューラルネットワークとを含む。
そのために、音声認識システムは、受けた音響信号をエンコーダネットワーク内にサブミットすることによりエンコーダ状態のシーケンスを生成し、エンコーダ状態のシーケンスをアライメントネットワーク内にサブミットすることにより、エンコーダ状態のシーケンス内の、トランスクリプション出力をエンコードするエンコーダ状態の位置を特定し、特定したエンコーダ状態の位置に基づいてエンコーダ状態のシーケンスをパーティションのセットに分割し、パーティションのセットを順次アテンションベースニューラルネットワーク内にサブミットすることにより、サブミットされたパーティションのうちの各パーティションごとにトランスクリプション出力を生成する。このようにトランスクリプション出力を含むパーティションを順次処理するので、アテンションベースネットワークは、エンドツーエンドアテンションベースASRシステムを、ストリーミング/オンライン方式の認識に適合させる。
いくつかの実装形態において、エンコーダ、アライメントデコーダ、およびアテンションベースデコーダは、合同訓練に適したニューラルネットワークである。特に、CTCベースニューラルネットワークのようなアライメントデコーダは、元の音響特徴フレームではなく、エンコーダが生成したエンコーダ状態に対して作業することもできる。よって、CTCベースニューラルネットワークを、アテンションベースニューラルネットワークの訓練に使用されるものと同じエンコーダに対して訓練することにより、アテンションベースニューラルネットワークに入力として与えられたエンコーダ状態のアライメントを生成することができる。CTCベースニューラルネットワークが生成したアライメントは、発話のトランスクリプションの出力をエンコードするエンコードされた音響信号のフレームのシーケンス内のフレームの位置を示す。このアライメントにより、アテンションベースニューラルネットワークは、この先験的知識をアンカーポイントとして使用することで、次のトランスクリプション出力を認識するのに十分な情報を含む入力フレームのシーケンスを発見することができる。そうすると、このようなアライメントにより、トランスクリプションエラーを減じ、計算上の複雑さを減じ、および/またはアテンションベースネットワークをストリーミング/オンライン方式の認識に適合させることができる。
各種実施形態が対応するもう1つの問題は、位置のアライメントを如何にして使用してアテンションベースデコーダのアテンションを効率的に調節するか、という問題である。たとえば、一実施形態は、アテンションベースデコーダの構造を修正することにより、トランスクリプションのそれぞれの部分の位置をサイド情報として受け入れて、アテンションベースニューラルネットワークを訓練し、このサイド情報をアテンションの配置の際に使用する。別の実施形態は、アテンションベースニューラルネットワークに対する入力を、アライメントデコーダが検出した次のトランスクリプション出力の位置に基づいて、パーティションに分割する。このような分割は、アテンションベースデコーダに、アテンションを所望の入力フレームにのみ置くことを強制する。加えて、この分割により、発話の最後までの将来の入力フレームを受けるまで待つ必要を減じることができ、そうすると出力遅延は減少する。
たとえば、いくつかの実施形態において、ASRシステムは、エンコードされた音響信号を表すエンコーダ状態のシーケンスを、示された位置に従ってパーティションに分割する。このような、エンコードされた音響信号のパーティションを、アテンションベースデコーダで繰り返し処理することにより、発話のトランスクリプションを生成する。このようにして、異なる繰り返し作業が、入力信号全体の異なる部分を処理する。そうすることで、入力音響信号をストリーミング/オンライン方式で処理することができる。
たとえば、一実施形態において、アテンションベースデコーダのある繰り返しは、前の繰り返しによって発生した内部状態から開始されて、前の繰り返し中に処理されたパーティションと異なるパーティションを処理する。このように、アテンションベースニューラルネットワークの内部状態は、フレームの同じ入力シーケンスの文字の処理のためだけでなく、フレームの異なる入力シーケンスの文字の処理のためにも使用するために、保存される。このようにして、アテンションベースデコーダは、その内部状態を、異なる部分、すなわちフレームの異なるシーケンスを処理するために転送する。この区別化により、アテンションベースモデルは、そのアテンションを、発話の異なる部分に集中させて、たとえばトランスクリプション出力の削除/スキップにより生じるエラーを減じることができる。
たとえば、一実装形態において、各パーティションは、CTCベースニューラルネットワークによって特定された位置に対応し、フレームのシーケンスの一部分を、このシーケンスの最初から、いくつかのルックアヘッドフレームまで、含む。このようなパーティションは、新たな情報を入力フレームのシーケンスに徐々に追加する一方で、前に処理された情報を保存する。実際、このようなパーティションは、発話の同じ部分を複数回処理することを可能にするとともに重みを用いて発話の異なる部分に対するアテンションに優先順位を付けるアテンションベースモデルの原理に従う。しかしながら、前の部分は既にデコードされており追加された新たな部分はデコードすべき新たなトランスクリプション出力に対応するので、アテンションベースモデルは、新たに追加されたフレームに対する注目を大きくすることにより、デコードの精度を高めることができる。
これに加えてまたはこれに代えて、いくつかの実施形態は、将来の入力フレームの処理だけでなく、アテンションベースデコーダが処理すべき過去のフレームの数も制限する。たとえば、一実施形態は、エンコードされた音響フレームをパーティションに分割し、その際、各パーティションが、固定数のフレームを有する、フレームのシーケンスのサブシーケンスを含むようにする。この分割は、アライメントデコーダが特定した位置に従い、フレームのサブシーケンス内の特定した位置にフレームを含むように、行われる。たとえば、フレームのサブシーケンスが、対応する特定した位置のフレームを中心とするように、および/または特定した位置のフレームを中心とするフレームのサブシーケンスを含むように、してもよい。この実施形態は、アテンションベースニューラルネットワークが処理するパーティションのサイズを減じることにより、計算の複雑度を低下させる。
いくつかの実施形態において、エンコーダニューラルネットワーク、CTCベースニューラルネットワーク、およびアテンションベースニューラルネットワークを合同訓練することにより、トリガードアテンション(TA:triggered attention)ニューラルネットワークを形成する。このようにして、CTCベースニューラルネットワークおよびアテンションベースニューラルネットワークを、同じエンコーダニューラルネットワークの出力から訓練する。そうすることで、TAネットワークの異なるコンポーネント間の協働の精度が高くなり、TAネットワークをエンドツーエンド方式で訓練してエンドツーエンドASRシステムを生成することができる。
したがって、一実施形態は音声認識システムを開示し、音声認識システムはコンピュータメモリを備え、コンピュータメモリは、入力音響信号をエンコーダ状態のシーケンスに変換するように構成されたエンコーダと、トランスクリプション出力をエンコードするエンコーダ状態のシーケンス内のエンコーダ状態の位置を特定するように構成されたアライメントデコーダと、特定したエンコーダ状態の位置に基づいてエンコーダ状態のシーケンスをパーティションのセットに分割するように構成されたパーティションモジュールと、自身に入力としてサブミットされたエンコーダ状態の各パーティションごとにトランスクリプション出力を決定するように構成されたアテンションベースデコーダとを、格納するように構成される。音声認識システムはさらに、音声発話の少なくとも一部を表す音響信号を受けるように構成された入力インターフェイスと、ハードウェアプロセッサとを備える。ハードウェアプロセッサは、受けた音響信号をエンコーダにサブミットすることによりエンコーダ状態のシーケンスを生成し、エンコーダ状態のシーケンスをアライメントデコーダ内にサブミットすることによりトランスクリプション出力をエンコードするエンコーダ状態の位置を特定し、パーティションモジュールを用い、特定したエンコーダ状態の位置に基づいて、エンコーダ状態のシーケンスをパーティションのセットに分割しパーティションのセットをアテンションベースデコーダ内に順次サブミットすることにより、サブミットしたパーティションのうちの各パーティションごとにトランスクリプション出力を生成するように構成される。音声認識システムはさらに、トランスクリプション出力を出力するように構成された出力インターフェイスを備える。
別の実施形態は音声認識方法を開示し、方法は、この方法を実現する、格納された命令と結合されたプロセッサを使用する。プロセッサによって実行されると命令は、方法のステップ実施する。方法は、音声発話の少なくとも一部を表す音響信号を受けるステップと、音響信号をエンコーダ状態のシーケンスに変換するステップと、トランスクリプション出力をエンコードするエンコーダ状態のシーケンス内のエンコーダ状態の位置を特定するステップと、特定したエンコーダ状態の位置に基づいてエンコーダ状態のシーケンスをパーティションのセットに分割するステップと、パーティションのセットをアテンションベースデコーダ内に順次サブミットすることにより、サブミットしたパーティションのうちの各パーティションごとにトランスクリプション出力を生成するステップと、トランスクリプション出力を出力するステップとを含む。
もう1つの実施形態は、プロセッサが方法を実施するために実行可能なプログラムが実装された非一時的なコンピュータ読取可能媒体を開示する。この方法は、音声発話の少なくとも一部を表す音響信号を受けるステップと、音響信号をエンコーダ状態のシーケンスに変換するステップと、トランスクリプション出力をエンコードするエンコーダ状態のシーケンス内のエンコーダ状態の位置を特定するステップと、特定したエンコーダ状態の位置に基づいてエンコーダ状態のシーケンスをパーティションのセットに分割するステップと、パーティションのセットをアテンションベースデコーダ内に順次サブミットすることにより、サブミットしたパーティションのうちの各パーティションごとにトランスクリプション出力を生成するステップと、トランスクリプション出力を出力するステップとを含む。
いくつかの実施形態に係る、エンドツーエンド音声認識のために構成された音声認識システム(ASR)の概略図である。 いくつかの実施形態に係る、アライメントデコーダの概略図である。 いくつかの実施形態に係る、エンコーダ状態のシーケンスをパーティションに分割する例を示す図である。 いくつかの実施形態に係る、エンコーダ状態のシーケンスをパーティションに分割する例を示す図である。 いくつかの実施形態に係る、アテンションベースデコーダの一例を示す図である。 いくつかの実施形態に係る、音声認識システムのブロック図である。 一実施形態に係る、音声発話の後続の部分を表す後続の音響信号を受けてASRシステムが実行する方法のブロック図である。 一実施形態に係る、エンドツーエンド音声認識システムのトリガードアテンションニューラルネットワークのブロック図である。 いくつかの実施形態に係る、組み合わされたニューラルネットワークを示す概略図である。 いくつかの実施形態に係る、音声認識のパフォーマンス比較図である。 いくつかの実施形態に係る、システムおよび方法を実現するために各種構成において使用することができるいくつかのコンポーネントを示すブロック図である。
図1は、いくつかの実施形態に係る、エンドツーエンド音声認識のために構成された音声認識システム(ASR)100の概略図を示す。音声認識システム100は、入力音響シーケンスを得てこの入力音響シーケンスを処理することにより、トランスクリプション出力シーケンスを生成する。各トランスクリプション出力シーケンスは、対応する入力音響信号によって表される発話または発話の一部のトランスクリプションである。たとえば、音声認識システム100は、入力音響信号102を得て対応するトランスクリプション出力110を生成することができ、このトランスクリプション出力は、入力音響信号102によって表される発話のトランスクリプションである。
入力音響信号102は、発話のデジタル表現であるオーディオデータの複数フレームのシーケンス、たとえば連続データストリームを含み得る。オーディオデータの複数フレームのシーケンスは、時間ステップのシーケンスに対応していてもよく、その場合、たとえば、オーディオデータの各フレームは、オーディオデータの前のフレームからさらに10ミリ秒の時間だけシフトされた25ミリ秒のオーディオストリームデータに対応付けられる。オーディオデータの複数フレームのシーケンス内のオーディオデータの各フレームは、対応する時間ステップにおける発話の部分を特徴付けるこのフレームの特徴値を含み得る。たとえば、オーディオデータの複数フレームのシーケンスは、フィルタバンクスペクトル特徴ベクトルを含み得る。
トランスクリプション出力110は、入力音響信号102によって表される発話のトランスクリプションのシーケンスを含み得る。トランスクリプション出力は1つ以上の文字を含み得る。たとえば、トランスクリプション出力は、Unicode文字集合のうちの1つの文字または文字列であってもよい。たとえば、文字集合は、英語、アジア言語、キリル言語だけでなくアラビア語のアルファベットを含み得る。また、文字集合は、アラビア数字、スペース文字、および句読点を含み得る。これに加えてまたはこれに代えて、トランスクリプション出力は、ビット、単語、およびその他の言語構成物を含み得る。
音声認識システム100は、音響エンコーダ104と、アテンションベースデコーダ108とを含む。音響エンコーダ104は、入力音響信号102を処理し、エンコーダ状態のシーケンス106を生成することで、入力音響信号102に代わるもの、たとえばより高度な表現を提供する。エンコーダ状態のシーケンスは、時間ステップの第2のセットに対応するオーディオデータの複数フレームの代替シーケンスを含み得る。いくつかの実装形態において、入力音響シーケンスの代替表現は、より低いフレームレートでサブサンプリングされる。すなわち、代替表現の時間ステップの第2のセットは、入力音響シーケンスの時間ステップの第1のセットよりも小さい。アテンションベースデコーダ108は、入力音響信号102の代替表現を表すエンコーダ状態106を処理しアテンションベースデコーダ108に与えられたエンコーダ状態のシーケンスからトランスクリプション出力110を生成するように、訓練される。
いくつかの実施形態は、アテンションベースASRシステムは、音声の区切りによってセグメントに分割される音声発話全体を観察し、各トランスクリプション出力110の認識のために各入力フレームに重みを割り当てる必要があり得る、という認識に基づいている。次のトランスクリプション出力を認識するための、入力音響信号のどの部分が関連しているかに関する先験的知識がなく、各エンコーダ状態に重みを割り当てる必要があるので、アテンションベースデコーダは、通常は大きな入力シーケンスを処理する必要がある。このような処理は、発話のさまざまな部分にアテンションを配置することを利用できるが、出力遅延を増大させるので、ストリーミング/オンライン方式の音声認識における実用性はない。
本明細書で使用される、ASRの出力遅延は、音声発話の音響フレームを受けた時間と、受けた音響フレームを認識した時間との間の差である。たとえば、アテンションベースASRシステムが音声発話全体に対して作業する場合、この発話内の単語の認識は、発話の最後の単語を受ける時点まで遅れる。このような認識の遅延は、出力遅延の増大を招く。
いくつかの実施形態は、次のトランスクリプション出力の認識のための、入力シーケンスの異なる部分の関連性に関する先験的知識の一例は、入力シーケンス中の認識すべきトランスクリプション出力に対応するフレームの位置を示すものである、という認識に基づいている。実際、トランスクリプション出力の位置が分かっている場合、アテンションベースデコーダを、入力シーケンスを制限することで、分かっている位置により大きなアテンションを置きその他の位置にはより小さなアテンションを置くかアテンションを置かないように、強制することができる。このようにして、トランスクリプション出力ごとに、アテンションベースネットワークは、そのアテンションを、入力シーケンス内のその位置の周囲に集中させることができる。このように導かれたアテンションは、大きな入力シーケンスを処理する必要を減じ、ひいては出力遅延を減じて、アテンションベースデコーダを、ストリーミング/オンライン方式の認識における実用性を有するものにする。
そのために、ASR100は、文字、ビット、単語その他のようなトランスクリプション出力をエンコードするシーケンス106内のエンコーダ状態の位置125を求めるように訓練されたアライメントデコーダ120を含む。たとえば、コネクショニスト時系列分類法(CTC)は、タイミングが可変である場合のシーケンス問題に対処するために長・短期記憶(LSTM)ネットワーク等のリカレントニューラルネットワーク(RNN)を訓練するための、一種の目的関数および関連するニューラルネットワーク出力である。CTCベースASRシステムは、アテンションベースASRシステムに代わるものである。CTCベースネットニューラルネットワークは、入力シーケンスの各フレームごとに出力を生成し、すなわち入力と出力とを同期させ、ビームサーチアルゴリズムを用いて、ニューラルネットワーク出力を折りたたんで出力トランスクリプションにする前に、最適出力シーケンスを発見する。アテンションベースASRシステムの性能は、CTCベースASRシステムよりも優れている可能性がある。しかしながら、いくつかの実施形態は、CTCベースASRシステムの中間作業で使用される入力および出力フレームのアライメントを、アテンションベースASRシステムが使用することで、先に述べたその出力遅延という欠点に対処できる、という認識に基づいている。
アライメントデコーダ120から与えられたアライメント情報125を利用するために、ASRシステム100は、エンコーダ状態のシーケンス106を分割してパーティション135のセットにするように構成されたパーティションモジュール130を含む。たとえば、パーティションモジュール130は、特定されたエンコーダ状態の各位置125ごとにエンコーダ状態のシーケンスをパーティション分割し、その際、パーティション135の数が、トランスクリプション出力をエンコードする特定されたエンコーダ状態106の数によって定まる、たとえば、この数に等しくなるように、することができる。このようにして、アテンションベースデコーダは、入力として、シーケンス全体106ではなくこのシーケンスの部分135を受け入れ、各部分は、トランスクリプション出力シーケンス110を形成する新たなトランスクリプション出力を含む可能性ある。いくつかの実装形態において、アライメントデコーダとアテンションベースデコーダとパーティションモジュールとの組み合わせを、トリガードアテンションデコーダと呼ぶ。実際、トリガードアテンションデコーダは、発話の部分を受けたときに処理することで、ASRシステム100を、ストリーミング/オンライン方式の認識における実用性を有するものにすることができる。
図2Aは、いくつかの実施形態に係る、アライメントデコーダ120の概略図を示す。アライメントデコーダ120の目的の1つは、エンコーダ104によって生成されたエンコーダ状態のシーケンス106をデコードすることである。そのために、アライメントデコーダは、シーケンス106をデコードしてトランスクリプション出力のシーケンス126を生成するように訓練される。そのような訳で、本開示ではアライメントデコーダ120をデコーダと呼ぶ。しかしながら、少なくともいくつかの実施形態は、アライメントデコーダのデコードされたトランスクリプション出力を使用しない。その代わりに、いくつかの実施形態は、アライメントデコーダによって生成された中間アライメント情報を用いてエンコーダ状態のシーケンス106をデコードする。言い換えると、いくつかの実施形態は、アライメントデコーダによってデコードされたトランスクリプション出力を無視するが、シーケンス106内のエンコーダ状態の位置125を用いることにより、アテンションベースデコーダ108の性能を改善する。このアプローチの背景にある原理は、アテンションベースデコーダ108の性能はアライメントデコーダ120の性能よりも優れている可能性がある、という原理である。そのため、アライメントデコーダ120が生成した中間アライメント情報を用いることで、アテンションベースデコーダ108の性能をさらに改善する。
しかしながら、いくつかの実施形態では、アライメントデコーダ120がデコードしたトランスクリプション出力126を、さらに、アテンションベースデコーダ108がデコードしたトランスクリプション出力と組み合わせることで、認識の精度をさらに改善する。これらの実施形態において、アライメントデコーダ120は2度利用される。1度目は、アテンションベースデコーダ108のためにエンコーダ状態のシーケンスをパーティション分割することを支援し、2度目は、アテンションベースデコーダ108がデコードするトランスクリプション出力の精度をさらに改善する。
図2Aは、「dog」という単語の発話の典型的な部分を処理するためのアライメントデコーダの動作の一例を示す。指示されているシーケンスの要素を取囲んでいるボックスは、エンコーダ状態のシーケンス106におけるトランスクリプション出力をエンコードするエンコーダ状態の位置125を特定している。たとえば、エンコーダ104は、ログメル(log-mel)スペクトルエネルギのような音響特徴の入力音響シーケンスXを、T-エンコーダ状態シーケンスH:
H=Encoder(X)
に変換する。
Figure 0007170920000001
Figure 0007170920000002
Figure 0007170920000003
これに代えて、アライメントデコーダは、Z内の同一書記素に対応するフレームの各サブシーケンス内の最初または最後のフレームを、特定されたエンコーダ状態として識別してもよい。
図2Bおよび図2Cは、いくつかの実施形態に係る、エンコーダ状態のシーケンスをパーティションに分割する例を示す。各種実施形態において、パーティションに分割することは、アライメントデコーダ120とアテンションベースデコーダ108とエンコーダ104とに作動的に接続されたパーティションモジュール130によって行われる。パーティションモジュール130は、アライメントデコーダ120のアライメント情報125にアクセスし、エンコーダ104が生成したエンコーダ状態のシーケンスをパーティションに分割し、エンコーダ状態のシーケンスの部分135をアテンションベースデコーダに順次サブミットするように、構成されている。
たとえば、図2Bの一実施形態において、各パーティション135bは、エンコーダ状態を、エンコーダ状態のシーケンスの最初から、特定されたエンコーダ状態の位置を順方向に固定シフトだけシフトすることによって決まるルックアヘッドエンコーダ状態まで、含む。ルックアヘッドエンコーダ状態140の例は図1に示される。たとえば、固定シフトの値が5であり特定されたエンコーダ状態の位置がエンコーダ状態のシーケンス中の8番目である場合、パーティション135bは、最初の13個のエンコーダ状態を含む。次の特定されたエンコーダ状態の位置が11である場合、パーティション135bは、最初の16個のエンコーダ状態を含む。実際、各パーティションは、新たなトランスクリプション出力に対するエンコーダ状態を含む一方で、パーティションの長さを大きくしてアテンションベースデコーダがその長さを活用できるようにする。
図2Cの代替実施形態において、特定されたエンコーダ状態の位置に対応するパーティション135cは、予め定められた数のエンコーダ状態を含み、これらのエンコーダ状態の中心に、特定されたエンコーダ状態の位置がある。たとえば、エンコーダ状態の予め定められた数が7であり特定されたエンコーダ状態の位置がエンコーダ状態のシーケンス内の15番目である場合、パーティション135cは、エンコーダ状態のシーケンス106中の12番目と18番目との間のエンコーダ状態を含む。実際、各パーティションは、新たなトランスクリプション出力に対するエンコーダ状態を含み、一方で固定長のパーティションを有することで、アテンションベースデコーダに対する計算負荷を減じる。これに加えてまたはこれに代えて、特定されたエンコーダ状態の位置に対応するパーティション135cは、たとえば中央からシフトされた、特定されたエンコーダ状態の位置を中心として、予め定められた数のエンコーダ状態を含み、そうすることで中央からずれたカバレッジを提供する。
図3は、いくつかの実施形態に係る、一例としてのアテンションベースデコーダ108を示す。アテンションベースデコーダ108は、コンテキストベクトル生成器304と、デコーダニューラルネットワーク306とを含む。コンテキストベクトル生成器304は、入力として、前の時間ステップからのデコーダニューラルネットワーク306の隠れデコーダ状態312と、前の時間ステップからのコンテキストベクトル生成器のアテンション重み分布310と、代替表現135、すなわち図1を参照して先に述べた音響信号102の代替表現とを受ける。コンテキストベクトル生成器304は、デコーダニューラルネットワーク306の前の隠れデコーダ状態と、前のアテンション重み分布310と、代替表現135とを処理することにより、代替表現135の時間フレームにわたるアテンション重み分布を計算するとともに、この時間ステップのコンテキストベクトル314を出力として生成する。コンテキストベクトル生成器304は、この時間ステップのコンテキストベクトル314をデコーダニューラルネットワーク306に与える。
異なる繰り返しにおいて、アテンションベースデコーダ108は、異なるパーティション331、333、および335を受ける。たとえば、この一組のパーティションは、最初のパーティション331と後続のパーティション333および335とを含む。アテンションベースデコーダ108は、最初のパーティション331を処理することにより、最初のトランスクリプション出力を生成する。アテンションベースニューラルネットワークが、アテンションベースネットワークをその内部状態にする最初のパーティションの処理を終了した後に、アテンションベースデコーダ108は、後続のパーティションを、アテンションベースネットワークを用いて、アテンションベースネットワークの内部状態をリセットせずに処理することにより、後続のパーティションのトランスクリプション出力を次々に生成する。
実際、アテンションベースデコーダ108は、異なるパーティションを、アテンションベースネットワークの内部状態をリセットせずに処理することにより、前にデコードされた情報を利用する。アテンションベースデコーダ108は、音声発話の最後を判断すると、その内部状態をリセットするように構成されている。
デコーダニューラルネットワーク306は、入力として、当該時間ステップのコンテキストベクトル314と、前の時間ステップのトランスクリプション出力308および隠れデコーダ状態312とを受ける。デコーダニューラルネットワーク306は、当該時間ステップのコンテキストベクトル314および前の時間ステップからのトランスクリプション出力308を処理する前に、その内部隠れ状態を、前の隠れデコーダ状態312を用いて初期化することにより、当該時間ステップのトランスクリプション出力スコアのセット316を出力として生成する。いくつかの実装形態において、デコーダニューラルネットワーク306は、ソフトマックス出力層を有するリカレントニューラルネットワーク(RNN)である。各トランスクリプション出力スコアは、トランスクリプション出力のセットからの、それぞれのトランスクリプション出力に対応する。たとえば、図1を参照して先に述べたように、トランスクリプション出力のセットは、1つ以上の自然言語、たとえば英語、アジア語、キリル語、およびアラビア語のアルファベットを書くために使用されるUnicode文字集合からの文字または文字列であってもよい。また、トランスクリプション出力セットは、アラビア文字、スペース文字、および句読点を含み得る。所定のトランスクリプション出力のスコアは、対応するトランスクリプション出力が、発話のトランスクリプションである出力シーケンス中の、当該時間ステップにおける現在のトランスクリプション部分である尤度を表す。
音声認識システムは、各時間ステップごとにトランスクリプション出力スコア316を処理することにより、発話のトランスクリプションを表すトランスクリプション出力シーケンスを決定する。たとえば、各時間ステップごとに、音声認識システムは、トランスクリプション出力スコアのセットから、スコアが最も高いトランスクリプション出力を選択することにより、トランスクリプション出力シーケンスを求めてもよい。
図4は、いくつかの実施形態に係る、音声認識システム400のブロック図を示す。音声認識システム400は、システム400をその他のシステムおよびデバイスと接続する多くのインターフェイスを有し得る。ネットワークインターフェイスコントローラ450は、音声認識システム400を検知デバイスと接続するネットワーク490に、システム400をバス406を介して接続するように適合されている。たとえば、音声認識システム400は、マイクのような音響入力装置475からの入力を受けるように構成されたオーディオインターフェイス470を含む。入力オーディオインターフェイス470を通して、システム400は、音声発話の少なくとも一部を表す音響信号を受けることができる。
これに加えてまたはこれに代えて、音声認識システム400は、その他さまざまなタイプの入力インターフェイスから音響信号を受けることができる。入力インターフェイスの例は、ネットワーク490を通して音響シーケンス495を受けるように構成されたネットワークインターフェイスコントローラ(NIC)450を含み、これは、有線ネットワークと無線ネットワークのうちの一方またはその組み合わせであってもよい。これに加えてまたはこれに代えて、システム400は、ヒューマンマシンインターフェイス410を含み得る。システム400内のヒューマンマシンインターフェイス410は、システムをキーボード411およびポインティングデバイス412に接続し、ポインティングデバイス412は、とりわけ、マウス、トラックボール、タッチパッド、ジョイスティック、ポインティングスティック、スタイラス、またはタッチスクリーンを、含み得る。
音声認識システム400は、システム400のトランスクリプション出力を出力するように構成された出力インターフェイス460を含む。たとえば、出力インターフェイス460は、トランスクリプション出力を表示装置465に表示し、トランスクリプション出力を記憶媒体に格納し、および/またはトランスクリプション出力をネットワークを介して送信することができる。表示装置465の例は、とりわけ、コンピュータモニタ、カメラ、テレビ、プロジェクタ、またはモバイルデバイスを含む。システム400を、各種タスクの実行のためにこのシステムを外部装置485に接続するように適合されたアプリケーションインターフェイス480に接続することもできる。
システム400は、格納されている命令430を実行するように構成されたプロセッサ420と、プロセッサが実行可能な命令を格納するメモリ440とを含む。プロセッサ420は、シングルコアプロセッサ、マルチコアプロセッサ、コンピューティングクラスタ、または任意の数の他の構成であってもよい。メモリ440は、ランダムアクセスメモリ(RAM)、読出専用メモリ(ROM)、フラッシュメモリ、または任意の他の適切なメモリシステムを含み得る。プロセッサ420は、バス406を介して1つ以上の入力装置および出力装置に接続されてもよい。
命令430は、いくつかの実施形態に係るエンドツーエンド音声認識の方法を実現することができる。そのために、コンピュータメモリ440は、入力音響信号をエンコーダ状態のシーケンスに変換するように訓練されたエンコーダ104と、トランスクリプション出力をエンコードするエンコーダ状態の入力シーケンスにおける、エンコーダ状態の位置を求めるように訓練されたアライメントデコーダ120と、エンコーダ状態の各入力サブシーケンスごとにトランスクリプション出力を決定するように訓練されたアテンションベースデコーダ108とを格納する。いくつかの実施形態において、アテンションベースデコーダ108の出力は、システム400のトランスクリプション出力である。その他いくつかの実施形態において、アテンションベースデコーダ108およびアライメントデコーダ120の出力は、システム400のトランスクリプション出力である。
プロセッサ420は、音声発話の少なくとも一部を表す音響シーケンスを受けると、受けた音響シーケンスをエンコーダネットワーク104内にサブミットすることによって、エンコーダ状態のシーケンスを生成し、エンコーダ104が生成したエンコーダ状態のシーケンスをアライメントデコーダ120内にサブミットすることによって、エンコーダ状態のシーケンス内における、トランスクリプション出力をエンコードするエンコーダ状態の位置を特定し、パーティションモジュール130を実行することによって、特定したエンコーダ状態の位置に基づいてエンコーダ状態のシーケンスをパーティションのセットに分割し、パーティションのセットをアテンションベースデコーダ108に順次サブミットすることで、サブミットしたパーティションのうちの各パーティションごとにトランスクリプション出力を生成するように、構成されている。
インターフェイス460のような出力インターフェイスは、トランスクリプション出力を出力する。たとえば、一実施形態において、出力インターフェイスは、各トランスクリプション出力を個々に出力するように構成されている。たとえば、トランスクリプション出力が文字を表す場合、出力インターフェイスは文字単位で出力する。同様に、トランスクリプション出力が単語を表す場合、出力インターフェイスは単語単位で出力する。これに加えてまたはこれに代えて、一実施形態において、出力インターフェイスは、トランスクリプション出力のセットを蓄積して単語を形成し、音声発話内の各単語を個々に出力するように構成されている。たとえば、アテンションベースデコーダ108を、単語文字の最後を検出するように構成し、出力インターフェイスが、単語文字の最後を受けた時点で、累積されたトランスクリプション出力を出力してもよい。
いくつかの実施形態において、アテンションベースデコーダ108は、異なるパーティションを、アテンションベースネットワークの内部状態をリセットせずに処理するように構成される。プロセッサは、音声発話の終了を判断するとアテンションベースネットワークの内部状態をリセットするように構成される。そのために、いくつかの実施形態において、メモリ440は、音声発話の終了を検出するように構成された発話終了モジュール436も格納する。さまざまな実施形態がさまざまな技術を使用することによってモジュール436を実現する。たとえば、いくつかの実施形態は、音声アクティビティ検出(SAD:speech activity detection)モジュール、または、SADと補助エンドポイント検出システムとの組み合わせを用いることにより、発話の終了を検出する。
いくつかの実施形態において、アテンションベースASRシステム100は、ストリーミング/オンライン方式で認識するように構成される。たとえば、メモリ440は、音声発話を音響シーケンスのセットに分割するゲート434を含み得る。たとえば、いくつかの実施形態において、ゲートは、音声をその変換中に分割するオーディオインターフェイス470の一部として実現される。このセット内の各音響シーケンスの長さは、同一であってもよく、または発音音声の特徴に基づいて変化してもよい。このようにして、ASRシステム100は、入力音響シーケンスをストリームライン方式でトランスクライブ(transcribe)する。いくつかの実施形態において、ゲートは、音声発話を音響信号のブロックに分割し、入力インターフェイスが1度につき1ブロックの音響信号を受けるようにする。たとえば、ゲートはサウンドカードによって実現することができ、ブロック処理をサウンドカードのクロックで規定して、サウンドカードから受けた音声がブロックごとにサンプリングされるようにしてもよい。
図5は、一実施形態に係る、音声発話の後続の部分を表す後続の音響信号を受けてASRシステムが実行する方法のブロック図を示す。この方法は、後続の音響信号をエンコーダ104内にサブミットする(510)ことにより、エンコーダ状態の後続のシーケンス515を生成する。この方法は、エンコーダ状態の後続のシーケンス515をアライメントデコーダ120内にサブミットする(520)ことにより、エンコーダ状態の後続のシーケンス内の、トランスクリプション出力をエンコードするエンコーダ状態の位置525を特定する。この方法は、以前の音響信号の処理から得られたエンコーダ状態のシーケンス505を、エンコーダ状態の後続のシーケンス515と連結する(530)ことにより、連結されたエンコーダ状態のシーケンス535を生成する。この方法は、特定したエンコーダ状態の位置525に基づいて連結されたエンコーダ状態のシーケンス535をパーティションに分割する(540)ことにより、パーティションのシーケンスを更新する(545)。このようにして、入ってきた音響信号をともにスティッチング(stitch)することにより、シームレスなオンライントランスクリプションを実現する。
音声認識システムのいくつかの実装形態において、エンコーダ、アライメントデコーダ、およびアテンションベースデコーダは、合同訓練されるニューラルネットワークである。これらの実施形態は、ニューラルネットワークの動作の協働方式による合同訓練を利用することによって音声認識の精度を高める。
図6は、一実施形態に係る、エンドツーエンド音声認識システムのトリガードアテンションニューラルネットワーク600のブロック図を示す。この実施形態において、エンコーダ、アライメントデコーダ、およびアテンションベースデコーダは、ニューラルネットワークとして実現される。たとえば、アライメントデコーダ120は、コネクショニスト時系列分類法ベース(CTCベース)のニューラルネットワークである。そのために、トリガードニューラルネットワーク600は、エンコーダネットワークモジュール602と、エンコーダネットワークパラメータ603と、アテンションデコーダモジュール604と、デコーダネットワークパラメータ605と、パーティショニングモジュール606と、CTCモジュール608と、CTCネットワークパラメータ609とを含む。エンコーダネットワークパラメータ603、デコーダネットワークパラメータ605、およびCTCネットワークパラメータ609は記憶装置に格納され、対応するモジュール602、604、および608にパラメータをそれぞれ与える。音響特徴シーケンス601は、オーディオ波形データから抽出され、記憶装置に格納されてエンコーダネットワークモジュール602に与えられてもよい。オーディオ波形データを、オーディオデータ中の音声サウンドを受けて処理するデジタル信号処理モジュール(図示せず)を使用して、入力装置を介して取得してもよい。
エンコーダネットワークモジュール602は、エンコーダネットワークパラメータ603からパラメータを読み出すエンコーダネットワークを用いて音響特徴シーケンス601をエンコーダ特徴ベクトルシーケンスに変換するエンコーダネットワークを含む。CTCモジュール608は、エンコーダネットワークモジュール602から隠れベクトルシーケンスを受け、CTCネットワークパラメータ609および動的プログラミング技術を使用してラベルシーケンスのCTCベースの事後確率分布を計算する。計算後、CTCモジュール608は、最も確度が高いラベルの位置をパーティショニングモジュール606に与える。
アテンションデコーダネットワークモジュール604は、デコーダネットワークを含む。アテンションデコーダネットワークモジュール604は、パーティショニングモジュール606から、各々がエンコーダ特徴ベクトルシーケンスの一部を含むパーティションを受け、その後、デコーダネットワークパラメータ605からパラメータを読み出すデコーダネットワークを用いてラベルのアテンションベースの事後確率分布を計算する。
Figure 0007170920000004
エンドツーエンド音声認識において、p(Y|X)は、予め訓練されたニューラルネットワークにより、発音辞書なしで、かつ、重いWFSTベースのグラフサーチなしで、計算される。関連技術のアテンションベースエンドツーエンド音声認識の場合、ニューラルネットワークはエンコーダネットワークとデコーダネットワークとからなる。
エンコーダモジュール602は、音響特徴シーケンスX=x,…,xを隠れベクトルシーケンスH=h,…,h
H=Encoder(X)
に変換するエンコーダネットワークを含み、この関数Encoder(X)は、スタックされた1つ以上のリカレントニューラルネットワーク(RNN)および畳み込みニューラルネットワーク(CNN)を含み得る。あるRNNは、各隠れユニットに入力ゲートと忘却ゲートと出力ゲートとメモリセルとを有する長・短期記憶(LSTM)として実現されてもよい。別のRNNは、双方向RNN(BRNN)または双方向LSTM(BLSTM)であってもよい。BLSTMはLSTM RNNのペアであり、一方は順方向LSTM、他方は逆方向LSTMである。BLSTMの隠れベクトルは、順方向LSTMおよび逆方向LSTMの隠れベクトルを連結したものとして得られる。
Figure 0007170920000005

Figure 0007170920000006
Figure 0007170920000007

Figure 0007170920000008
Figure 0007170920000009
より好適な隠れベクトルを得るために、いくつかの実装形態は、複数のBLSTMのスタックを、第1のBLSTMの隠れベクトルを第2のBLSTMに与え、次に第2のBLSTMの隠れベクトルを第3のBLSTMに与え、以降同様にすることより、実現する。h´が1つのBLSTMによって得られた隠れベクトルである場合、これを別のBLSTMに与えるときにx=h´と仮定する。計算を減じるために、1つのBLSTMのすべての第2の隠れベクトルのみを別のBLSTMに与えてもよい。この場合、出力隠れベクトルシーケンスの長さは、入力音響特徴シーケンスの長さの2分の1になる。
Figure 0007170920000010

Figure 0007170920000011
Figure 0007170920000012

Figure 0007170920000013
Figure 0007170920000014
Figure 0007170920000015
Figure 0007170920000016

Figure 0007170920000017
アテンションベース音声認識において、正しいラベルを予測するためには適切なアテンション重みを推定することが極めて重要であり、なぜなら、式(17)に示されるようにコンテンツベクトルrはアライメント分布aに深く依存しているからである。音声認識において、コンテンツベクトルは、アライメント分布のピークの周りのエンコーダの隠れベクトルにおける音響情報を表し、音響情報は、ラベルyを予測するための最も重要な手掛かりである。それでもやはり、明確な制約がないので、アテンションメカニズムは不規則なアライメント分布を提供することが多く、そのため、yのインクリメンタル予測を行うときに分布のピークは時間に沿って単調に進行する。音声認識において、入力シーケンスと出力シーケンスとの間のアライメントは全般的に単調でなければならない。畳み込み特徴fltは不規則なアライメントの生成を低減するが、その回避を保証することはできない。
Figure 0007170920000018

Figure 0007170920000019

Figure 0007170920000020
Figure 0007170920000021

Figure 0007170920000022

Figure 0007170920000023
フレーム単位のラベルシーケンスZは、入力音響特徴シーケンスXと出力ラベルシーケンスYとの間のアライメントを表す。順方向確率を計算する場合、式(33)の反復は、Zが単調になることを強制し、アライメントZにおけるsのループまたは大きなジャンプを不能にする。なぜなら、α(s)を得るための反復は、せいぜいαt-1(s)、αt-1(s-1)、αt-1(s-2)しか考慮しないからである。このことは、時間フレームが1フレーム進んだときに、ラベルは前のラベルもしくは空白から変化する、または同じラベルのままであることを意味する。この制約は、アライメントが単調になることを強いる遷移確率p(zt|zt-1,Y)の役割を果たす。このため、p(Y|X)は、不規則な(単調ではない)アライメントに基づいて計算された場合、0または非常に小さな値となり得る。入力音響特徴シーケンスXと出力ラベルシーケンスYとの間のアライメントは、パーティショニングモジュール606によって使用されて、アテンションベースニューラルネットワーク604の動作を制御する。
いくつかの実施形態は、認識の精度が、CTCおよびアテンションベースデコーダからのデコーダ出力を組み合わせることでさらに改善できる、という理解に基づいている。たとえば、エンドツーエンド音声認識600の一実装形態において、式(34)のCTC順方向確率を式(14)のアテンションベース確率と組み合わせることで、より正確なラベルシーケンス確率を得る。
図7は、いくつかの実施形態に係る、組み合わされたニューラルネットワークを示す概略図である。組み合わされたニューラルネットワークは、エンコーダネットワークモジュール602と、アテンションデコーダネットワークモジュール604と、CTCモジュール608とを含む。各矢印は、変換を伴うまたは伴わないデータ転送を表し、各正方形または円形ノードは、ベクトルまたは予測されたラベルを表す。音響特徴シーケンスX=x,…,xは、エンコーダネットワークモジュール602に与えられ、このモジュールでは2つのBLSTMがスタックされ、第1のBLSTMのすべての第2の隠れベクトルが第2のBLSTMに与えられる。エンコーダモジュール602の出力は、隠れベクトルシーケンスH=h´,h´,…,h´であり、T´=T/2である。次に、HがCTCモジュール608およびデコーダネットワークモジュール604に与えられる。CTCベースシーケンス確率およびアテンションベースシーケンス確率は、それぞれCTCモジュール608およびデコーダネットワークモジュール604で計算され、組み合わされることで、ラベルシーケンス確率が得られる。
Figure 0007170920000024
Figure 0007170920000025
Figure 0007170920000026
Figure 0007170920000027
図8は、いくつかの実施形態に係る、音声認識のパフォーマンス比較図を示す。いくつかの実施形態に係るエンドツーエンドASRシステムの文字誤り率(CER:character error rate)が示されており、これらは、コンテキストベクトル314を計算するために使用される、ドット積ベースのアテンション810、コンテンツベースのアテンション820、および位置認識アテンション830である、3つの異なるアテンションメカニズムについて、ルックアヘッドパラメータ140の影響を評価するためのものである。しかしながら、いくつかの実施形態に係るエンドツーエンドASRシステムは、専ら例としての役割を果たすこれらの3つのアテンションメカニズムに限定される訳ではない。ドット積ベースアテンション810、コンテンツベースアテンション320、および位置認識アテンション830は、結果として、アテンションメカニズムの種類に応じて異なるルックアヘッドパラメータ設定が好適となり得ることを示している。たとえば、位置認識アテンションタイプは、より大きなルックアヘッド値に対してより低いCERを得るのに対し、ドット積ベースおよびコンテンツベースのアテンションは、低い誤り率を得るために、より小さなルックアヘッド値を好む傾向があり、このことも処理の遅延を減じる。
図9は、いくつかの実施形態に係る、システムおよび方法を実現するために各種構成において使用することができるいくつかのコンポーネントを示すブロック図である。たとえば、コンポーネント900は、環境1から音響信号8を含むデータを収集する、音響センサ等のセンサ2または複数のセンサと通信するハードウェアプロセッサ11を含み得る。さらに、センサ2は、音響入力を音響信号に変換することができる。ハードウェアプロセッサ11は、コンピュータストレージメモリ、すなわちメモリ9と通信し、メモリ9は、ハードウェアプロセッサ11によって実現可能な、アルゴリズム、命令、およびその他のデータを含む、格納データを含む。
任意的に、ハードウェアプロセッサ11を、データソース3、コンピュータデバイス4、携帯電話デバイス5、およびストレージデバイス6と通信するネットワーク7に接続することができる。さらに、任意的に、ハードウェアプロセッサ11を、クライアントデバイス15に接続されたネットワーク対応サーバ13に接続することができる。ハードウェアプロセッサ11を、任意的に外部メモリ装置17および/または送信機19に接続することができる。さらに、スピーカのテキストは、特定のユーザが意図する用途21に応じて出力することができる。たとえば、いくつかのタイプのユーザの用途は、モニタまたはスクリーン等の1つ以上の表示装置にテキストを表示すること、または、さらに分析するためにスピーカのテキストをコンピュータ関連デバイスに入力することなどを、含み得る。
ハードウェアプロセッサ11が特定用途の要件に応じて1以上のハードウェアプロセッサを含み得るものであり、当該プロセッサは内部プロセッサでも外部プロセッサでもよいということが、意図されている。当然ながら、他のデバイスの中でも特に出力インターフェイスおよびトランシーバを含むその他のコンポーネントを、コンポーネント900に組み込んでもよい。
ネットワーク7は、非限定的な例として1つ以上のローカルエリアネットワーク(LAN)および/またはワイドエリアネットワーク(WAN)を含み得る。ネットワーク環境は、企業規模のコンピュータネットワーク、イントラネット、およびインターネットと同様であってもよい。上述のコンポーネントのすべてについて、コンポーネント900とともに使用される、クライアントデバイス、ストレージコンポーネント、およびデータソースの数は任意であることが、意図されている。各々は、単一のデバイス、または分散環境において協働する複数のデバイスを含み得る。さらに、コンポーネント900は、1つ以上のデータソース3を含み得る。データソース3は、音声認識ネットワークを訓練するためのデータリソースを含む。データソース3が提供するデータは、トランスクライブされたデータおよびトランスクライブされていないデータのような、ラベル付けされたデータおよびラベル付けされていないデータを含み得る。たとえば、ある実施形態において、データは、1つ以上の音を含み、音声認識ネットワークを初期化するために使用できる対応するトランスクリプション情報またはラベルも含み得る。
さらに、データソース3内のラベル付けされていないデータは、1つ以上のフィードバックループから与えられてもよい。たとえば、検索エンジン上で実行される発話された検索クエリからの使用データは、トランスクライブされていないデータとして与えることができる。データソースの他の例は、限定ではなく例として、ストリーミングサウンドもしくはビデオ、ウェブクエリ、モバイルデバイスカメラもしくはオーディオ情報、ウェブカムフィード、スマートグラスおよびスマートウォッチフィード、顧客ケアシステム、セキュリティカメラフィード、ウェブ文書、カタログ、ユーザフィード、SMSログ、インスタントメッセージングログ、発話単語トランスクリプト、ボイスコマンドもしくは撮影画像(たとえば深度カメラ画像)等のゲーミングシステムユーザインタラクション、ツイート、チャットもしくはビデオコール記録、または、ソーシャルネットワーキング媒体を含む、各種発話言語オーディオまたは画像ソースを含み得る。使用される特定のデータソース3は、データが本質的に特定クラスのデータ(たとえば、データは、例としてマシンシステム、エンターテイメントシステムを含む特定種類の音だけに関連する)であるかまたは一般的なもの(クラス固有ではない)であるかを含めて、アプリケーションに基づいて決定することができる。
コンポーネント900は、第三者デバイス4、5を含む、またはそれに接続することができる。第三者デバイス4、5は、コンピューティングデバイス上に自動音声認識(ASR)システムが備わっていることが重要である場合等に、任意のタイプのコンピューティングデバイスを含み得る。たとえば、第三者デバイスは、コンピュータデバイス4またはモバイルデバイス5を含み得る。ユーザデバイスは、携帯情報端末(PDA)や、モバイルデバイス、たとえばスマートフォン、スマートウォッチ、スマートグラス(または他のウェアラブルスマートデバイス)、拡張現実ヘッドセット、仮想現実ヘッドセットとして実現し得るものであることが、意図されている。さらに、ユーザデバイスは、タブレット等のラップトップ、リモートコントロール、エンターテイメントシステム、車両コンピュータシステム、埋込型システムコントローラ、電気器具、ホームコンピュータシステム、セキュリティシステム、家庭用電子機器、または他の同様の電子機器等であってもよい。一実施形態において、クライアントデバイスは、デバイス上で動作している、本明細書に記載のASRシステムが使用可能なオーディオおよび画像情報等の入力データを受けることができる。たとえば、第三者デバイスは、オーディオ情報を受けるためのマイクもしくはライン入力端子、ビデオもしくは画像情報を受けるためのカメラ、または、そのような情報をインターネットもしくはデータソース3のような別のソースから受けるための通信コンポーネント(たとえばWi-Fi機能)を、有し得る。
音声認識ネットワークを使用するASRモデルは、入力されたデータを処理することにより、コンピュータで使用可能な情報を決定することができる。たとえば、ユーザがマイクに向かって話したクエリを処理することにより、たとえば質問が出された場合のクエリの内容を判断することができる。例としての第三者デバイス4、5は、任意的にコンポーネント900に含まれることで、ディープニューラルネットワークモデルをデプロイし得る環境を示すことができる。さらに、本開示のいくつかの実施形態は、第三者デバイス4、5を含まない場合もある。たとえば、ディープニューラルネットワークモデルは、サーバ上にあっても、クラウドネットワーク、システム、または同様の構成内にあってもよい。
ストレージ6に関して、ストレージ6は、データ、コンピュータ命令(たとえばソフトウェアプログラム命令、ルーチン、またはサービス)、および/または本明細書に記載の技術の実施形態で使用されるモデルを含む情報を記憶することができる。たとえば、ストレージ6は、1つ以上のデータソース3からのデータ、1つ以上のディープニューラルネットワークモデル、ディープニューラルネットワークモデルを生成し訓練するための情報、および1つ以上のディープニューラルネットワークモデルから出力されたコンピュータで使用可能な情報を記憶することができる。
実施形態
本明細書は、具体例としての実施形態のみを提供し、開示の範囲、適用可能性、または構成を限定することを意図していない。むしろ、具体例としての実施形態の以下の説明は、具体例としての1つ以上の実施形態を実装すること可能にする説明を、当業者に提供するであろう。添付の請求項に記載されている開示された主題の精神および範囲から逸脱することなく、要素の機能および構成に対してなされ得る、各種変更が意図されている。
具体的な詳細事項は、以下の記載において、実施形態の十分な理解のために与えられる。しかしながら、これらの具体的な詳細事項がなくても実施形態を実行できることを、当業者は理解できる。たとえば、開示された主題におけるシステム、プロセス、および他の要素は、実施形態を不必要な詳細で不明瞭にしないために、ブロック図の形態で構成要素として示される場合もある。他の例では、実施形態を不明瞭にしないよう、周知のプロセス、構造、および技術は、不必要な詳細事項を伴わずに示されることがある。さらに、各種図面における同様の参照番号および名称は同様の要素を示す。
また、個々の実施形態は、フローチャート、フロー図、データフロー図、構造図、またはブロック図として示されるプロセスとして説明される場合がある。フローチャートは動作を逐次プロセスとして説明することができるが、動作の多くは並列にまたは同時に実行することができる。さらに、動作の順序は入れ替え可能である。プロセスは、その動作が完了したときに終了されてもよいが、論じられていないかまたは図に含まれていない追加のステップを有する場合がある。さらに、具体的に記載されている何らかのプロセスにおけるすべての動作がすべての実施形態に起こり得る訳ではない。プロセスは、方法、関数、手順、サブルーチン、サブプログラムなどに対応し得る。プロセスが関数に対応する場合、関数の終了は、呼び出し関数または主関数に関数を戻すことに対応し得る。
さらに、開示された主題の実施形態は、少なくとも部分的に手動または自動のいずれかで実現することができる。手動または自動による実現は、マシン、ハードウェア、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語、またはそれらの任意の組み合わせの使用を通して行われてもよく、または少なくとも支援されてもよい。ソフトウェア、ファームウェア、ミドルウェア、またはマイクロコードで実現される場合、必要なタスクを実行するプログラムコードまたはコードセグメントは、マシン読取可能媒体に格納されてもよい。プロセッサは必要なタスクを実行できる。
さらに、本開示の実施形態および本明細書に記載の機能的動作は、デジタル電子回路において、有形で実装されるコンピュータソフトウェアもしくはファームウェアにおいて、本明細書に開示される構造およびそれらの構造的均等物を含むコンピュータハードウェアにおいて、または、それらのうちの1つ以上の組み合わせにおいて、実現することができる。さらに、本開示のいくつかの実施形態は、1つ以上のコンピュータプログラムとして、すなわちデータ処理装置が実行するためにまたはデータ処理装置の動作を制御するために、有形の非一時的なプログラムキャリア上に符号化されたコンピュータプログラム命令の1つ以上のモジュールとして、実現することができる。またさらに、プログラム命令は、人為的に生成された伝搬信号上に、たとえば、マシンによって生成された電気、光学、または電磁信号上に、符号化することができる。伝播信号は、データ処理装置が実行するために適切な受信装置に送信される情報を符号化するために生成される。コンピュータ記憶媒体は、マシン読取可能なストレージデバイス、マシン読取可能なストレージ基板、ランダムアクセスメモリデバイスもしくはシリアルアクセスメモリデバイス、またはそれらの1つ以上の組み合わせであってもよい。
本開示の実施形態に従うと、「データ処理装置」という用語は、例として、プログラム可能なプロセッサ、コンピュータ、または複数のプロセッサもしくはコンピュータを含む、データを処理するすべての種類の装置、デバイス、およびマシンを包含し得る。装置は、専用論理回路、たとえばFPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)を含み得る。この装置はまた、ハードウェアに加えて、当該コンピュータプログラムの実行環境を生成するコード、たとえば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはそれらの1つ以上の組み合わせを構成するコードを含み得る。
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、モジュール、ソフトウェアモジュール、スクリプト、またはコードと呼ばれるまたはそういうものとして説明されることもある)は、コンパイルされたもしくは解釈された言語、または宣言的もしくは手続き型言語を含む任意の形態のプログラミング言語で記述することができ、スタンドアロンプログラムとして、またはモジュール、コンポーネント、サブルーチン、もしくはコンピューティング環境での使用に適した他のユニットとして、任意の形態でデプロイすることができる。コンピュータプログラムは、ファイルシステム内のファイルに対応し得るが、対応していなくてもよい。プログラムは、他のプログラムまたはデータを保持するファイルの一部に、たとえばマークアップ言語文書に格納された1つ以上のスクリプト、対象プログラム専用の単一ファイル、またはコーディネートした複数のファイル、たとえば1つ以上のモジュール、サブプログラム、またはコードの一部を格納するファイルに、格納することができる。コンピュータプログラムは、1つのコンピュータ上で、または1つの場所に位置するかもしくは複数の場所に分散され通信ネットワークで相互に接続された複数のコンピュータ上で実行されるようにデプロイすることができる。コンピュータプログラムの実行に適したコンピュータは、一例として、汎用マイクロプロセッサもしくは専用マイクロプロセッサもしくはその両方、または任意の他の種類の中央処理装置に基づいていてもよい。一般的に、中央処理装置は、読出専用メモリまたはランダムアクセスメモリまたはその両方から命令およびデータを受ける。コンピュータの必須要素は、命令を実施または実行するための中央処理装置と、命令およびデータを記憶するための1つ以上のメモリデバイスとである。一般的に、コンピュータはまた、データを記憶するための1つ以上の大容量記憶装置、たとえば、磁気、光磁気ディスク、もしくは光ディスクを含むか、または、それからデータを受けるかまたはそれにデータを転送するかまたはその両方を行うように、上記ディスクに作動的に結合される。しかしながら、コンピュータはそのようなデバイスを有していなくてもよい。さらに、コンピュータは、別のデバイスに埋め込むことができる。たとえば数例を挙げると、携帯電話、携帯情報端末(PDA)、モバイルオーディオもしくはビデオプレーヤ、ゲームコンソール、グローバルポジショニングシステム(GPS)受信機、または携帯型記憶装置、たとえばユニバーサルシリアルバス(USB)フラッシュドライブに、埋め込むことができる。
ユーザとのやり取りを提供するために、本明細書に記載の主題の実施形態を、ユーザに情報を表示するための表示装置、たとえばCRT(陰極線管)またはLCD(液晶ディスプレイ)モニタと、ユーザがコンピュータに入力を提供できるようにするキーボードおよびポインティングデバイス、たとえばマウスまたはトラックボールとを有する、コンピュータ上で実現されてもよい。他の種類のデバイスを用いてユーザとのやり取りを提供してもよい。たとえば、ユーザに提供されるフィードバックは、任意の形態の感覚フィードバック、たとえば、視覚フィードバック、聴覚フィードバック、または触覚フィードバックであってもよく、ユーザからの入力は、音響入力、音声入力、または触覚入力を含む任意の形態で受けることができる。加えて、コンピュータは、ユーザとのやり取りを、ユーザが使用するデバイスに文書を送信し当該デバイスから文書を受信することによって、たとえばユーザのクライアントデバイス上のウェブブラウザに、ウェブブラウザから受信した要求に応じてウェブページを送信することによって、実現することができる。
本明細書に記載の主題の実施形態は、たとえばデータサーバとしてバックエンドコンポーネントを含む、または、ミドルウェアコンポーネント、たとえばアプリケーションサーバを含む、または、フロントエンドコンポーネント、たとえば本明細書に記載の主題の実装形態とユーザがやり取りできるようにするグラフィカルユーザインターフェイスもしくはウェブブラウザを有するクライアントコンピュータを含む、または、そのようなバックエンド、ミドルウェア、もしくはフロントエンドコンポーネントの1つ以上の任意の組み合わせを含む、コンピューティングシステムにおいて実現することができる。システムの構成要素は、デジタルデータ通信の任意の形態または媒体、たとえば通信ネットワークにより、相互に接続することができる。通信ネットワークの例は、ローカルエリアネットワーク(「LAN」)およびワイドエリアネットワーク(「WAN」)、たとえばインターネットを含む。
コンピューティングシステムは、クライアントおよびサーバを含み得る。クライアントおよびサーバは、一般的には互いに離れており、典型的には通信ネットワークを通してやり取りする。クライアントとサーバの関係は、各コンピュータ上で実行されクライアントとサーバの相互の関係を有するコンピュータプログラムから発生する。
本開示をいくつかの好ましい実施形態を用いて説明してきたが、その他さまざまな適合化および修正を本開示の精神および範囲の中で実施できることが理解されねばならない。したがって、本開示の真の精神および範囲に含まれるこのような変形および修正形をすべてカバーすることが以下の請求項の局面である。

Claims (15)

  1. 音声認識システムであって、前記音声認識システムは、
    コンピュータメモリを備え、前記コンピュータメモリは、
    入力音響信号をエンコーダ状態のシーケンスに変換するように構成されたエンコーダと、
    トランスクリプション出力をエンコードする前記エンコーダ状態のシーケンス内のエンコーダ状態の位置を特定するように構成されたアライメントデコーダと、
    前記特定したエンコーダ状態の位置に基づいて前記エンコーダ状態のシーケンスをパーティションのセットに分割するように構成されたパーティションモジュールと、
    自身に入力としてサブミットされたエンコーダ状態の各パーティションごとに前記トランスクリプション出力を決定するように構成されたアテンションベースデコーダとを、格納するように構成され、前記音声認識システムはさらに、
    音声発話の少なくとも一部を表す前記音響信号を受けるように構成された入力インターフェイスと、
    ハードウェアプロセッサとを備え、前記ハードウェアプロセッサは、
    前記受けた音響信号を前記エンコーダにサブミットすることにより前記エンコーダ状態のシーケンスを生成し、
    前記エンコーダ状態のシーケンスを前記アライメントデコーダ内にサブミットすることにより前記トランスクリプション出力をエンコードする前記エンコーダ状態の位置を特定し、
    前記パーティションモジュールを用い、前記特定したエンコーダ状態の位置に基づいて、前記エンコーダ状態のシーケンスを前記パーティションのセットに分割し、かつ、
    前記パーティションのセットを前記アテンションベースデコーダ内に順次サブミットすることにより、前記サブミットしたパーティションのうちの各パーティションごとにトランスクリプション出力を生成するように構成され、前記音声認識システムはさらに、
    前記トランスクリプション出力を出力するように構成された出力インターフェイスを備える、音声認識システム。
  2. 前記出力インターフェイスは、各トランスクリプション出力を、トランスクライブされた通りに個々に出力するように構成されている、請求項1に記載の音声認識システム。
  3. 前記出力インターフェイスは、トランスクリプション出力のセットを蓄積して単語を形成し各単語を個々に出力するように構成されている、請求項1に記載の音声認識システム。
  4. 前記プロセッサは、前記特定したエンコーダ状態の各位置ごとに前記エンコーダ状態のシーケンスをパーティションに分割し、特定したエンコーダ状態の数によってパーティションの数が定められる、請求項1に記載の音声認識システム。
  5. 各パーティションは、エンコーダ状態を、前記エンコーダ状態のシーケンスの始めから、前記特定したエンコーダ状態の位置を順方向に固定シフト分だけシフトさせることによって決まるルックアヘッドエンコーダ状態まで含む、請求項4に記載の音声認識システム。
  6. 特定したエンコーダ状態の位置に対応する各パーティションは、前記特定したエンコーダ状態の位置を中心として予め定められた数のエンコーダ状態を含む、請求項4に記載の音声認識システム。
  7. 前記パーティションのセットは第1のパーティションと後続のパーティションとを含み

    前記プロセッサは、前記第1のパーティションを前記アテンションベースデコーダを用いて処理することにより第1のトランスクリプション出力を生成し、
    前記アテンションベースデコーダが、前記アテンションベースデコーダをその内部状態にする前記第1のパーティションの処理を終了した後に、前記プロセッサは、前記アテンションベースデコーダの内部状態をリセットすることなく前記後続のパーティションを前記アテンションベースデコーダを用いて処理することにより、前記後続のパーティションのトランスクリプション出力を1つずつ生成する、請求項1に記載の音声認識システム。
  8. 前記アテンションベースデコーダは、異なるパーティションを、前記アテンションベースデコーダの内部状態をリセットすることなく処理するように構成され、
    前記プロセッサは、前記音声発話の終了を判断すると、前記アテンションベースデコーダの内部状態をリセットするように構成されている、請求項1に記載の音声認識システム。
  9. 前記プロセッサは、前記音声発話の後続部分を表す後続の音響信号を受けると、
    前記後続の音響信号を前記エンコーダにサブミットすることにより前記エンコーダ状態の後続のシーケンスを生成し、
    前記エンコーダ状態の後続のシーケンスを前記アライメントデコーダにサブミットすることにより、前記エンコーダ状態の後続のシーケンス内のトランスクリプション出力をエンコードするエンコーダ状態の位置を特定し、
    前記エンコーダ状態のシーケンスと前記エンコーダ状態の後続のシーケンスとを連結してエンコーダ状態の連結シーケンスを生成し、かつ、
    前記エンコーダ状態の連結シーケンスを前記特定したエンコーダ状態の位置に基づいてパーティションに分割することにより、前記パーティションのシーケンスを更新するように構成されている、請求項1に記載の音声認識システム。
  10. 前記入力インターフェイスが1回に1つの音響信号ブロックを受けるように、前記音声発話を音響信号のブロックに分割するゲートをさらに備える、請求項9に記載の音声認識システム。
  11. 前記エンコーダ、前記アライメントデコーダ、および前記アテンションベースデコーダは、合同訓練されるニューラルネットワークである、請求項1に記載の音声認識システム。
  12. 前記アライメントデコーダは、コネクショニスト時系列分類(CTC)ベースニューラルネットワーク、または隠れマルコフモデル(HMM)ベース分類器を含む、請求項11に記載の音声認識システム。
  13. 前記アライメントデコーダはコネクショニスト時系列分類ベース(CTCベース)ニューラルネットワークであり、前記アテンションベースデコーダはアテンションベースニューラルネットワークであり、
    前記アテンションベースニューラルネットワークが決定する前記トランスクリプション出力は、トランスクリプション出力の確率を含み、
    前記CTCベースニューラルネットワークはさらに、前記CTCベースニューラルネットワークに入力として与えられた前記エンコーダ状態におけるトランスクリプション出力の確率を求めるように訓練され、
    前記プロセッサは、前記エンコーダ状態のシーケンスを前記CTCベースニューラルネットワーク内にサブミットすることにより、前記音響信号におけるトランスクリプション出力の確率の第1のシーケンスを決定し、
    前記プロセッサは、前記エンコーダ状態のシーケンスのパーティションを前記アテンションベースニューラルネットワーク内にサブミットすることにより、前記音響信号におけるトランスクリプション出力の確率の第2のシーケンスを決定し、
    前記プロセッサは、前記トランスクリプション出力の確率の第1のシーケンスと第2のシーケンスとの組み合わせに基づいて、前記音響信号における前記トランスクリプション出力を決定するように構成されている、請求項11に記載の音声認識システム。
  14. 音声認識方法であって、前記方法は、前記方法を実現する、格納された命令と結合されたプロセッサを使用し、前記プロセッサによって実行されると前記命令は前記方法のステップを実行し、
    前記方法は、
    音声発話の少なくとも一部を表す音響信号を受けるステップと、
    前記音響信号をエンコーダ状態のシーケンスに変換するステップと、
    トランスクリプション出力をエンコードする前記エンコーダ状態のシーケンス内のエンコーダ状態の位置を特定するステップと、
    前記特定したエンコーダ状態の位置に基づいて前記エンコーダ状態のシーケンスをパーティションのセットに分割するステップと、
    前記パーティションのセットをアテンションベースデコーダ内に順次サブミットすることにより、前記サブミットしたパーティションのうちの各パーティションごとにトランスクリプション出力を生成するステップと、
    前記トランスクリプション出力を出力するステップとを含む、音声認識方法。
  15. プロセッサが方法を実施するために実行可能なプログラムが実装された非一時的なコンピュータ読取可能記憶媒体であって、前記方法は、
    音声発話の少なくとも一部を表す音響信号を受けるステップと、
    前記音響信号をエンコーダ状態のシーケンスに変換するステップと、
    トランスクリプション出力をエンコードする前記エンコーダ状態のシーケンス内のエンコーダ状態の位置を特定するステップと、
    前記特定したエンコーダ状態の位置に基づいて前記エンコーダ状態のシーケンスをパーティションのセットに分割するステップと、
    前記パーティションのセットをアテンションベースデコーダ内に順次サブミットすることにより、前記サブミットしたパーティションのうちの各パーティションごとにトランスクリプション出力を生成するステップと、
    前記トランスクリプション出力を出力するステップとを含む、非一時的なコンピュータ読取可能記憶媒体。
JP2021575098A 2019-03-25 2020-01-16 トリガードアテンションを用いたエンドツーエンド音声認識のためのシステムおよび方法 Active JP7170920B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/363,021 2019-03-25
US16/363,021 US11100920B2 (en) 2019-03-25 2019-03-25 System and method for end-to-end speech recognition with triggered attention
PCT/JP2020/002201 WO2020195068A1 (en) 2019-03-25 2020-01-16 System and method for end-to-end speech recognition with triggered attention

Publications (2)

Publication Number Publication Date
JP2022522379A JP2022522379A (ja) 2022-04-18
JP7170920B2 true JP7170920B2 (ja) 2022-11-14

Family

ID=69650675

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021575098A Active JP7170920B2 (ja) 2019-03-25 2020-01-16 トリガードアテンションを用いたエンドツーエンド音声認識のためのシステムおよび方法

Country Status (5)

Country Link
US (1) US11100920B2 (ja)
EP (1) EP3948850B1 (ja)
JP (1) JP7170920B2 (ja)
CN (1) CN113574595B (ja)
WO (1) WO2020195068A1 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11144721B2 (en) * 2019-05-31 2021-10-12 Accenture Global Solutions Limited System and method for transforming unstructured text into structured form
CN110648658B (zh) * 2019-09-06 2022-04-08 北京达佳互联信息技术有限公司 一种语音识别模型的生成方法、装置及电子设备
EP4062400B1 (en) 2020-01-21 2024-07-17 Google LLC Deliberation model-based two-pass end-to-end speech recognition
CN111292716A (zh) * 2020-02-13 2020-06-16 百度在线网络技术(北京)有限公司 语音芯片和电子设备
CN111427932B (zh) * 2020-04-02 2022-10-04 南方科技大学 出行预测方法、装置、设备和存储介质
US11562745B2 (en) * 2020-04-06 2023-01-24 Microsoft Technology Licensing, Llc Sequence-to-sequence speech recognition with latency threshold
GB2600987B (en) 2020-11-16 2024-04-03 Toshiba Kk Speech Recognition Systems and Methods
CN113539242A (zh) * 2020-12-23 2021-10-22 腾讯科技(深圳)有限公司 语音识别方法、装置、计算机设备及存储介质
CN114999463B (zh) * 2022-08-01 2022-11-15 深译信息科技(珠海)有限公司 语音识别方法、装置、设备及介质
CN115376538A (zh) * 2022-08-19 2022-11-22 思必驰科技股份有限公司 用于交互的语音降噪方法、系统、电子设备和存储介质
CN116230015B (zh) * 2023-03-14 2023-08-08 哈尔滨工程大学 一种基于音频时序信息加权的频域特征表示异音检测方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018207390A1 (en) 2017-05-11 2018-11-15 Mitsubishi Electric Corporation Speech recognition system and method for speech recognition

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9786270B2 (en) * 2015-07-09 2017-10-10 Google Inc. Generating acoustic models
US9799327B1 (en) 2016-02-26 2017-10-24 Google Inc. Speech recognition with attention-based recurrent neural networks
EP3510594B1 (en) * 2016-10-10 2020-07-01 Google LLC Very deep convolutional neural networks for end-to-end speech recognition
US10839790B2 (en) * 2017-02-06 2020-11-17 Facebook, Inc. Sequence-to-sequence convolutional architecture
US10373610B2 (en) * 2017-02-24 2019-08-06 Baidu Usa Llc Systems and methods for automatic unit selection and target decomposition for sequence labelling
US11133011B2 (en) * 2017-03-13 2021-09-28 Mitsubishi Electric Research Laboratories, Inc. System and method for multichannel end-to-end speech recognition
US10474709B2 (en) * 2017-04-14 2019-11-12 Salesforce.Com, Inc. Deep reinforced model for abstractive summarization
US10706840B2 (en) * 2017-08-18 2020-07-07 Google Llc Encoder-decoder models for sequence to sequence mapping
US11145293B2 (en) * 2018-07-20 2021-10-12 Google Llc Speech recognition with sequence-to-sequence models
US11335333B2 (en) * 2018-07-20 2022-05-17 Google Llc Speech recognition with sequence-to-sequence models
US10720151B2 (en) * 2018-07-27 2020-07-21 Deepgram, Inc. End-to-end neural networks for speech recognition and classification
CN109215662B (zh) * 2018-09-18 2023-06-20 平安科技(深圳)有限公司 端对端语音识别方法、电子装置及计算机可读存储介质

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018207390A1 (en) 2017-05-11 2018-11-15 Mitsubishi Electric Corporation Speech recognition system and method for speech recognition

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
MORITZ, NIKO, ET AL.,"Triggerd Attention for End-to-end Speech Recognition",2019 IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH AND SIGNAL PROCESSING(ICASSP),2019年05月17日,pp.5666-5670

Also Published As

Publication number Publication date
CN113574595A (zh) 2021-10-29
EP3948850B1 (en) 2023-01-18
US11100920B2 (en) 2021-08-24
CN113574595B (zh) 2023-11-24
WO2020195068A1 (en) 2020-10-01
EP3948850A1 (en) 2022-02-09
JP2022522379A (ja) 2022-04-18
US20200312306A1 (en) 2020-10-01

Similar Documents

Publication Publication Date Title
JP7170920B2 (ja) トリガードアテンションを用いたエンドツーエンド音声認識のためのシステムおよび方法
JP7490804B2 (ja) 非同期デコーダでエンド・ツー・エンド音声認識をストリーミングするためのシステムおよび方法
JP6802005B2 (ja) 音声認識装置、音声認識方法及び音声認識システム
JP7066349B2 (ja) 翻訳方法、翻訳装置及びコンピュータプログラム
JP7436760B1 (ja) サブワードエンドツーエンド自動音声認識のための学習ワードレベルコンフィデンス
JP7351018B2 (ja) エンド・ツー・エンド音声認識における固有名詞認識
JP7222153B1 (ja) デリバレーションモデルベースの2パスのエンド・ツー・エンド音声認識
JP2023545988A (ja) トランスフォーマトランスデューサ:ストリーミング音声認識と非ストリーミング音声認識を統合する1つのモデル
JP7375211B2 (ja) アテンションベースのジョイント音響およびテキストのオンデバイス・エンド・ツー・エンドモデル
KR20230158107A (ko) 효율적인 스트리밍 비-순환 온-디바이스 엔드-투-엔드 모델
JP2024513778A (ja) 自己適応型蒸留
US12057124B2 (en) Reducing streaming ASR model delay with self alignment
KR20240065125A (ko) 희귀 단어 스피치 인식을 위한 대규모 언어 모델 데이터 선택
WO2024129789A1 (en) Semi-supervised training scheme for speech recognition
JP2021503104A (ja) 自動音声認識装置及び方法
KR102637025B1 (ko) 자동 음성 인식을 위한 다언어 리스코어링 모델들
US20240185842A1 (en) Interactive decoding of words from phoneme score distributions

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210831

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220705

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220722

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: 20221004

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221101

R150 Certificate of patent or registration of utility model

Ref document number: 7170920

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150