音声認識のためのBERT
3つの要点
✔️ 音声認識のためのfine-tune BERTというシンプルな手法
✔️ BERT のような強力な言語モデルの可能性を活用する
✔️ マンダリン(中国語の官話)音声認識データセットでの検証とベンチマーク
Speech Recognition by Simply Fine-tuning BERT
written by Wen-Chin Huang, Chia-Hua Wu, Shang-Bao Luo, Kuan-Yu Chen, Hsin-Min Wang, Tomoki Toda
(Submitted on 30 Jan 2021)
Comments: Accepted to ICASSP 2021.
Subjects: Sound (cs.SD); Computation and Language (cs.CL); Audio and Speech Processing (eess.AS)
はじめに
従来の音声認識システムは、言語モデル(LM)、音響モデル、辞書から構成されています。最近では、単一の統一モデルで構成されたend-to-endの自動音声認識システム(ASR)が登場しています。これらのモデルは、大量のラベル付けされたデータに対して学習する必要があります。また最近では、自己学習に基づく言語モデル(BERT, GPT)の開発が急速に進み、 BERTのようなこれらの言語モデル(LM)は、インターネットから比較的簡単に入手できるラベル付けされていないテキストデータの大規模なコーパス上で学習されています。
LMは従来の音声認識において重要な役割を果たしてきました。End-to-endのASRにLMを追加することで性能が向上することがわかっています。また私たち人間にとっては、語彙力の向上は、より多くの単語を認識できるようになることを意味します。したがって、ASRシステムのように動作させるためには、どの程度の知識が必要なのだろうかと考えるのは直感的です。本論文では、この直感に基づいて、音声認識のためのBERTモデルを微調整することを試みています。
そもそもBERTって?
BERTはmulti-layer transformer encoder層からなる言語モデルです(Googleが開発した自然言語処理の看板技術BERTの研究はどこまで進んでいる? BERTologyの最前線)。学習のために、学習コーパスからユニークな単語とそのn-gram(bigramsとtrigrams)で構成された語彙が作成されます。また、文の分離のための[SEP]や分類タスクを表す[CLS]のような特殊なエントリも含まれています。次に、語彙の各エントリは連続的にトークン化され、学習中に、いくつかのマスクされた単語(~15%)を含む文を取得し、それらの単語を予測するためにBERTを最適化しています。BERTは、語彙内のすべての単語にわたる確率分布を予測するように学習されています。
BERTは、感情分析、質問応答、テキスト要約、ニューラル機械翻訳などの様々なタスクにfine-tuningされています。Fine-tuningの際には、モデルのいくつかの構造的な構成要素が調整され、タスク固有のデータが使用されます。
音声認識のためのBERT
LibriSpeech D = {Xi,Yi}i=1~N のようなASRデータセットがあると仮定します。ここで、Xi={xi1,xi2,...xik}は音響特徴量、Yi={yi1,yi2,...yil}は対応するテキストです。音響特徴量は次元d、語彙数はVです。
確率言語モデルの微調整:BERT-LM
確率LMの微調整は非常に簡単です。このモデルは常に文中の次の単語を予測するように作られています。最初の単語y1を得るために、単語t=1の形式で開始し、入力シーケンスはトークン[CLS]だけです。次に、予測されたシーケンスを反復的にモデルに通し、シーケンス内の次の単語を得ることで、予測された単語を積み上げていきます。以下の式は、この概念を要約したものである。
自動音声認識モデルの微調整:BERT-ASR
BERT-ASR モデルは、BERT-LM と同様の方法でfine-tuneされます。2 番目の図に示すように、このモデルは、言語モデルと同様に、シーケンス内の次の単語を予測するように学習されます。しかし、上の画像に描かれているように、BERTで使用される他の3つの埋め込みと音響埋め込みを合算しています。これらの音響エンベッディングは、後述する音響エンコーダーによって生成されます。
テキストと音響の特徴を揃える
ここでは、音響特徴量Xのフレームはすでにそれぞれの単語にリンクされています、つまりXの連続したフレームの範囲がYの特定の単語に割り当てられているという前提が存在があるということです。実際には、HMM/DNNを使用して実行できます。そしてASRの場合、式(1)は次のように変換されます。
ここで、Ftは単語yに対応する音響特徴量である。
音響モデル
音響特徴量を音響エンベッディングに変換するための音響モデルを2種類紹介します。
- Average Encoder
これは、セグメント化された音響モデルを時間軸に沿って平均化するという、かなりシンプルなアプローチです。 次に、平均化されたデータは、情報を蒸留し、寸法を他のエンベッディング(トークンエンベッディング、位置エンベッディング、セグメントエンベッディング)の寸法にスケーリングするために線形層に渡されます。 - Conv1d-Resnet
平均的なエンコーダは、音響特徴量のフレーム間の時間的な依存性を省いています。これらの依存性をエンベッディングで適切に表現するために、特徴を単に平均化するのではなく、一連の残差ブロックに通します。
実験
BERT-ASR および BERT-LM は、北京語の音声認識のためのコーパスであるAISHELL-1 データセットで検証されます。中国語ウィキペディアで学習された事前訓練済みのBERTモデルをタスクに使用しています。また、テキストへの音響特徴のアラインメントは、同じくAISHELL-1のトレーニングセットで学習されたHMM/DNNモデルを使用して行われます。アライメントがアクセス可能と仮定したオラクルデコーディング(Orac.)と線形(1ワードあたり25フレーム)と仮定した実用デコーディング(Prac.)、ビームサイズはどちらの場合も10としました。その結果を以下に示します。
AISHELL-1 データセットの CER: Character Error rate と PPL: Perplexity の結果
CNNのresnetエンコーダが平均的なエンコーダよりも優れていることは明らかであり,オラクル復号化はリニアアライメントよりも優れた結果を達成しています。詳細は原著論文を参照してください。
まとめ
本論文では、BERTのような言語モデルを音声認識のために微調整するというアイデアを紹介しました。AISHELL-1の結果は驚くべきものであり、印象的でしたが、まだ長い道のりがあります。
誤りの原因は、北京語が文字ベースの言語であり、同じ発話が異なる文字にマッピングされる可能性があるという事実にも起因していると考えられます。また、このモデルは、単語が少ない、または全くない状態で、初期は非常に不十分な文脈性を持っています。これがエラーを伝播させ、モデルの性能を低下させています。しかし、このアプローチが他の言語やAlBERTやGPTのような他の言語モデルでどのように機能するかを見るのは興味深いことです。
この記事に関するカテゴリー