音声処理(シラバス 技術28)

学習目標

音声をコンピュータで扱うためのデジタル化と周波数分析の流れ、音声の特徴を表すスペクトル包絡・フォルマント・MFCCの意味を理解し、音声認識・音声合成・話者識別・感情分析で使われる代表的な手法を説明できるようにします。

要点

音をデジタルデータにする

マイクがとらえた空気の振動(アナログ信号)を数値の列に変えるのがA-D変換です。

  1. 標本化:一定の時間間隔で振幅の値を取り出します。1秒あたりの回数がサンプリング周波数です。
  2. 量子化:取り出した値を、決まった段階の数値に丸めます。段階の細かさは量子化ビット数で表します。
  3. 符号化:数値を0と1の符号に置き換えます。

この方式をパルス符号変調(PCM)といい、変換する回路をパルス符号変調器と呼びます。音楽CDは44.1kHz・16ビットのPCMです。サンプリング周波数の半分を超える周波数の音は、正しく記録できません。

周波数で音をとらえる

音声の性質は周波数ごとの成分の強さに表れるため、短い区間(フレーム)ごとにフーリエ変換で周波数成分を求めます。高速フーリエ変換(FFT)は、この計算を速く行う手法です。

  • スペクトル包絡:スペクトル(周波数ごとの強さ)の細かな凹凸をならした形です。口やのどの形で決まり、「あ」と「い」の違いはここに表れます。
  • フォルマント:スペクトル包絡の山の部分です。山の位置をフォルマント周波数と呼び、低いほうの2つで母音をおおよそ区別できます。
  • 声の高さ:声帯の振動の速さ(基本周波数)で決まり、包絡とは別の情報です。

メル尺度とMFCC

人の耳は、低い音の違いに敏感で、高い音の違いに鈍くなります。これに合わせた尺度がメル尺度です。メル周波数ケプストラム係数(MFCC)は、スペクトルをメル尺度の区切りで集計し、対数をとってから離散コサイン変換をかけた値です。スペクトル包絡を十数個の数値で表せ、音声認識で長く使われてきました。

音素と音韻

音素は、意味の違いを区別する最小の音の単位です。「かき」と「さき」は/k/と/s/の違いで別の語になります。音韻は、言語で区別される音の単位や体系を指し、音素とほぼ同じ意味でも使われます。

課題と代表的な手法

課題入力→出力代表的な手法
音声認識音声→文字隠れマルコフモデル、CTC
音声合成文字→音声WaveNet
話者識別音声→だれの声かMFCCなどの特徴量による分類
感情分析音声→感情声の高さや強さなどからの分類
  • 隠れマルコフモデル(HMM):見えない状態(音素など)が確率的に移り変わり、各状態から音の特徴が出るとみなすモデルです。従来の音声認識は、HMMの音響モデルに発音辞書と言語モデルを組み合わせていました。
  • CTC:音声のフレーム数は文字数よりずっと多くなります。CTCは「空白」の記号を加え、続けて出た同じ記号をまとめてから空白を除く規則で、フレームごとの正解なしに学習できるようにしました。音声から文字までを1つのモデルで学ぶEnd-to-End音声認識で使われます。
  • WaveNet:2016年にDeepMindが発表したモデルで、音声波形を、前のサンプルから1サンプルずつ予測して生成します。従来より自然な合成音声を実現しました。

G検定で問われる深さ

A-D変換から特徴量を取り出すまでの流れと各用語の役割、音声認識がHMMを使う方式からCTCなどを使うEnd-to-Endの方式へ移ったこと、WaveNetが波形を直接生成することを説明できれば十分です。FFTやMFCCの式、音素と音韻をめぐる言語学上の細かな定義の違いまでは不要です。

つまずきやすい点

  • FFTは周波数成分を速く計算するための計算方法(アルゴリズム)であり、それ自体が音声の特徴量ではない点
  • 声の高さは基本周波数で決まり、どの母音かは主にスペクトル包絡とその山であるフォルマントに表れる、という役割の違い
  • WaveNetは音声波形を生成する音声合成のモデルであり、CTCは音声認識で入力のフレーム数と出力の文字数の違いを扱う手法である点
  • メル尺度は人の聴覚に合わせた尺度で、低い音の違いを細かく、高い音の違いを粗く表す点

シラバスのキーワード

A-D変換、WaveNet、音韻、音声合成、音声認識、音素、隠れマルコフモデル、感情分析、高速フーリエ変換(FFT)、スペクトル包絡、パルス符号変調器(PCM)、フォルマント、フォルマント周波数、メル周波数ケプストラム係数(MFCC)、メル尺度、話者識別、CTC

練習問題

  1. 音声認識に使う特徴量
  2. 音声認識と音声合成の手法
  3. 標本化周波数と音声のデータ量
  4. 音素という単位の性質
  5. 話者識別と音声認識の違い
  6. 声の高さとフォルマントの関係
ほかの6問
  1. 音声からの感情の推定
  2. CTCの出力確率の計算
  3. FFTの周波数分解能
  4. メルフィルタバンクの帯域配置
  5. 音声合成の処理段階と誤り
  6. 隠れマルコフモデルの構造
ディープラーニングの応用例の中項目
  1. 画像認識
  2. 自然言語処理
  3. 音声処理
  4. 深層強化学習
  5. データ生成
  6. 転移学習・ファインチューニング
  7. マルチモーダル
  8. モデルの解釈性
  9. モデルの軽量化

表示設定

テーマ
文字の大きさ
問題演習