【DL輪読会】wav2vec 2.0: A Framework for Self-Supervised Learning of Speech Representations (NeurIPS, 2020)

231 Views

January 22, 21

スライド概要

2021/01/22
Deep Learning JP:
http://deeplearning.jp/seminar-2/

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

DEEP LEARNING JP [DL Papers] wav2vec 2.0: A Framework for Self-Supervised Learning of Speech Representations (NeurIPS, 2020) Kazuki Fujikawa http://deeplearning.jp/ 1

2.

サマリ • 書誌情報 – wav2vec 2.0: A Framework for Self-Supervised Learning of Speech Representations • NeurIPS 2020 • Facebook AI • Alexei Baevski, Henry Zhou, Abdelrahman Mohamed, Michael Aul • 概要 – vq-wav2vecの事前学習を改良したモデル: wav2vec 2.0を開発 • 二段階で行われた事前学習を一段階で行えるように改良し、性能を改善 • ラベル付きデータが小規模しか得られない環境下で、vq-wav2vecベースの既存法と 比較してWERを1/3程度に下げる性能を確認 2

3.

アウトライン • 背景 • 関連研究 • 提案手法 • 実験・結果 3

4.

アウトライン • 背景 • 関連手法 • 提案手法 • 実験・結果 4

5.

背景 • 音声認識の分野では言語毎に大規模な訓練データを必要とする – 現在の実用的な音声認識システムでは、数千時間の音声の書き起こしデータが必要 – 世界中で話される7000以上の大部分の言語で上記を準備することは困難 少量のラベル付きデータで実用的な音声認識システムを構築したい 5

6.

アウトライン • 背景 • 関連研究 – wav2vec [Schneider+, 2019] – vq-wav2vec [Baevski+, ICLR2020] • 提案手法 • 実験・結果 6

7.

関連研究①: wav2vec [Schneider+, 2019] • 音声の表現を教師無しで学習 – Feature Encoder(𝑋 ⟼ 𝑍): 生の音声信号を入力とし、5層1DCNNで特徴抽出 • ストライドを大きくし、解像度を落とした特徴量を獲得(10ms単位) – Context Encoder(𝑍 ⟼ 𝐶) : 𝒛𝒊, . . , 𝒛𝒊−𝒗 を入力に、 𝒄𝒊 を出力 • 𝒄𝒊 が未来の特徴量 𝒛𝒊+𝒌 との内積が大きくなるよう、 Contrastive Lossを最小化 • 負例 𝒛෤ は同じ音声の別の部分から抽出する 𝑐𝑖 Context Encoder 𝑧𝑖 𝑧𝑖+1 𝑧𝑖+2 𝑧𝑖+3 Feature Encoder 7

8.

関連研究②: vq-wav2vec [Baevski+, ICLR2020] • 教師なし事前学習を2段階行う(詳細は後述) – ① wav2vec で行う教師なし表現学習を離散化 – ② 離散化された特徴量を使い、BERTのMLMで再事前学習 8

9.

関連研究②: vq-wav2vec [Baevski+, ICLR2020] • ① wav2vec で行う教師なし表現学習を離散化 – wav2vec同様、1DCNNで 𝒛𝒊 を算出 – ベクトル量子化で 𝒛𝒊 を離散化 • 𝒛𝒊 と コードブロック(Embedding)との積を取り、Gumbel Softmaxで 𝒛ො 𝒊 をサンプリング – 𝒄𝒊 が未来の特徴量 𝒛ො 𝒊+𝒌 との内積が大きくなるよう、 Contrastive Lossを最小化 𝒄𝒊 Context Encoder 𝒛ො 𝒊 𝒛ො 𝒊+𝟏 𝒛ො 𝒊+𝟐 𝒛ො 𝒊+𝟑 𝒛𝒊 𝒛𝒊+𝟏 𝒛𝒊+𝟐 𝒛𝒊+𝟑 コードブック (Embedding) Quantization Feature Encoder 𝑉 (ボキャブラリ) 𝒍 𝑑 (ロジット) (埋め込み次元) 9

10.

関連研究②: vq-wav2vec [Baevski+, ICLR2020] • ② 離散化された特徴量を使い、BERTのフレームワークでMLMを学習 – マスクされた箇所に該当するコードブロックのインデックスを当てる – 1箇所だけ当てるのは簡単すぎるので、連続した数トークンをマスクする (SpanBERT [Joshi+, TACL2020]の要領) Joshi+, TACL2020 10

11.

アウトライン • 背景 • 関連研究 • 提案手法 • 実験・結果 11

12.

提案手法: wav2vec 2.0 [Baevski+, NeurIPS2020] • vq-wav2vecを1ステップで事前学習できるように改良 – vq-wav2vec同様、Feature Encoder で特徴表現 𝒛𝒊 を得る – 𝒛𝒊 をランダムにマスクした上で、Context Encoder(Transformer)で音声全体を エンコードする – マスクされた箇所のコンテクスト 𝒄𝒊 が、𝒒𝒊 と近くなるようにメトリック学習する Contrastive loss L̀ Context representations 𝒄𝒊 C Transformer Context Encoder … … Masked Quantization Quantized representations Feature Encoder Latent speech representations Z raw waveform X Q q q q 𝒒𝒊 q q 𝒛𝒊 CNN Figure 1: Illustration of our framework which jointly learns contextualized speech representations and an inventory of discretized speech units. 12

13.

提案手法: wav2vec 2.0 [Baevski+, NeurIPS2020] • (補足)なぜContext Encoderの入力とLoss計算の入力が異なるのか – Context Encoderの入力 𝒛𝒊 : 量子化モジュール未使用 – Contrastive Lossの入力 𝒒𝒊 : 量子化モジュール使用 – 結論:その組み合わせが最も精度が良かったから Contrastive loss L̀ Context representations 𝒄𝒊 C Transformer … … Masked Quantized representations Q Latent speech representations Z raw waveform X q q q 𝒒𝒊 q q 𝒛𝒊 CNN Figure 1: Illustration of our framework which jointly learns contextualized speech representations and an inventory of discretized speech units. 13 on labeled data with a Connectionist Temporal Classification (CTC) loss [14, 4] to be used for

14.

アウトライン • 背景 • 比較手法 • 実験・結果 14

15.

実験: 問題設定 • タスク – オーディオブックの音声文字起こしをWord Error Rate(WER)で評価 • データセット – LibriVox (LV-60k) • 6万時間のオーディオブック音声データセット • ラベル無しデータとして利用 – Librispeech (LS-960) • LibriVoxの一部(1000時間)に対してTextと音声のアライメントを取ったもの • このデータのラベルを [10min, 1h, 10h, 100h] のみ利用した場合のモデルのパフォーマンス を比較する • clean (ノイズ無し)、other (ノイズ有り) それぞれで評価 • 評価 – WER (Word Error Rate): 文字起こし後のテキストの単語誤り率 15

16.

実験: 結果 • 低リソース環境での実験 – 10minのみのラベルありデータの利用で、 WER (clean/other): 4.8/8.2 を記録 – 既存法(Discrete BERT: vq-wav2vecベース) と比較して約1/3程度のエラー率を実現 – ラベルを増やした場合(1h, 10h, 100h) も同様の傾向であり、低リソース環境で本手法 の有効性を確認 16

17.

実験: 結果 • 低リソース環境での実験 – 10minのみのラベルありデータの利用で、 WER (clean/other): 4.8/8.2 を記録 – 既存法(Discrete BERT: vq-wav2vecベース) と比較して約1/3程度のエラー率を実現 – ラベルを増やした場合(1h, 10h, 100h) も同様の傾向であり、低リソース環境で本手法 の有効性を確認 17

18.

実験: 結果 • 低リソース環境での実験 – 10minのみのラベルありデータの利用で、 WER (clean/other): 4.8/8.2 を記録 – 既存法(Discrete BERT: vq-wav2vecベース) と比較して約1/3程度のエラー率を実現 – ラベルを増やした場合(1h, 10h, 100h) も同様の傾向であり、低リソース環境で本手法 の有効性を確認 18

19.

実験: 結果 • 低リソース環境での実験 – 10minのみのラベルありデータの利用で、 WER (clean/other): 4.8/8.2 を記録 – 既存法(Discrete BERT: vq-wav2vecベース) と比較して約1/3程度のエラー率を実現 – ラベルを増やした場合(1h, 10h, 100h) も同様の傾向であり、低リソース環境で本手法 の有効性を確認 19

20.

実験: 結果 • 高リソース環境での実験 – 事前学習無しでWER (clean/other): 2.1/4.6、 事前学習有り(Lv-60k)で1.8/3.3を達成 – ベースラインアーキテクチャがSoTAである ContextNet (1.9/3.9) に迫る性能 – 低リソース環境下で確認できたほどの有効性は 高リソース環境下では確認できなかった 20

21.

実験: 結果 • 高リソース環境での実験 – 事前学習無しでWER (clean/other): 2.1/4.6、 事前学習有り(Lv-60k)で1.8/3.3を達成 – ベースラインアーキテクチャがSoTAである ContextNet (1.9/3.9) に迫る性能 – 低リソース環境下で確認できたほどの有効性は 高リソース環境下では確認できなかった 21

22.

実験: 結果 • 高リソース環境での実験 – 事前学習無しでWER (clean/other): 2.1/4.6、 事前学習有り(Lv-60k)で1.8/3.3を達成 – ベースラインアーキテクチャがSoTAである ContextNet (1.9/3.9) に迫る性能 – 低リソース環境下で確認できたほどの有効性は 高リソース環境下では確認できなかった 22

23.

実験: 結果 • 高リソース環境での実験 – 事前学習無しでWER (clean/other): 2.1/4.6、 事前学習有り(Lv-60k)で1.8/3.3を達成 – ベースラインアーキテクチャがSoTAである ContextNet (1.9/3.9) に迫る性能 – 低リソース環境下で確認できたほどの有効性は 高リソース環境下では確認できなかった 23

24.

結論 • vq-wav2vecの事前学習を改良したモデル: wav2vec 2.0を開発 – vq-wav2vecで二段階で行われた事前学習を一段階で行えるように改良 – ラベル付きデータが小規模しか得られない環境下で、vq-wav2vecベースの既存法と 比較してWERを1/3程度に下げる性能を確認 • Broader Impact: より広範な言語への適用 – 世界には約7000の言語があり、さらに多くの方言が存在 – これらの言語に対して実用的な音声認識技術を提供できるようになることを期待する 24

25.

References • Baevski, Alexei, et al. "wav2vec 2.0: A framework for self-supervised learning of speech representations." In NeurIPS, 2020. • Schneider, Steffen, et al. "wav2vec: Unsupervised pre-training for speech recognition." arXiv preprint arXiv:1904.05862 (2019). • Baevski, Alexei, Steffen Schneider, and Michael Auli. "vq-wav2vec: Self-supervised learning of discrete speech representations." In ICLR, 2020. • Joshi, Mandar, et al. "Spanbert: Improving pre-training by representing and predicting spans.” In TACL, 2020. 25