読むだけでちょっと賢くなる、架空のまとめスレ

【疑問】音声をデータにする、A-D変換・PCM・FFT・スペクトル包絡・フォルマント・メル尺度・MFCC【G検定】

12レスカテゴリ:AI・機械学習
1: 名無しさん

音声認識の前に、音声をどうやってデータにするかが出てくる。A-D変換・PCM・FFT・MFCCと用語が多い

2: 名無しさん

前提のおさらい。微分は「少し変えたらどれだけ変わるか」。音は空気の圧力が時間とともに変わる波で、その変わり方の速さ(周波数)が音の高さを決める

3: 名無しさん

>>1
A-D変換は、マイクの連続した電気の波を、コンピュータが扱えるとびとびの数字にすること
標本化:一定の時間ごとに値を読む。1秒に16000回なら16kHz
量子化:読んだ値を決まった段階の数に丸める。16ビットなら 段階
こうして数字の列にしたものをPCM(パルス符号変調)という。16kHz・16ビットなら、1秒あたり ビット

4: 名無しさん

>>3
16kHzで読んだら、何Hzまでの音が表せるん?

5: 名無しさん

>>4
読む回数の半分、8000Hzまで。それより高い音は、正しく表せずに別の低い音に化ける
人の声の聞き分けに大事な成分はおおむねその範囲に入るから、音声認識では16kHzがよく使われる

6: 名無しさん

数字の列のままやと、どんな高さの音がどれだけ入ってるかが分からん。そこで周波数ごとの強さに分ける(フーリエ変換)
FFT(高速フーリエ変換)は、それを速く計算する方法。1024個の点なら、そのままの計算は約 万回、FFTは約 回で、約100倍速い

7: 名無しさん

>>6
周波数ごとの強さのグラフ(スペクトル)を、細かいギザギザを無視してなめらかになぞった線がスペクトル包絡。のどや口の形で決まる
スペクトル包絡の山の部分がフォルマント。周波数の低いほうから第1・第2フォルマントと呼ぶ。「あ」と「い」の違いは、主にこの山の位置の違い

8: 名無しさん

>>7
メル尺度は?

9: 名無しさん

>>8
人の耳が感じる音の高さに合わせた目盛り。人は低い音の違いには敏感で、高い音の違いには鈍い
よく使われる式 だと、1000Hz は約1000、4000Hz は約2146、8000Hz は約2840。周波数が4倍になっても、メルは2倍ちょっとにしかならん

10: 名無しさん

>>9
MFCC(メル周波数ケプストラム係数)は、スペクトルをメル尺度で区切って強さの対数をとり、そこからスペクトル包絡の形を十数個の数で表したもの。音声認識の入力として長く使われてきた

11: 名無しさん

>>10
今のディープラーニングのモデルは、MFCCまで縮めずに、メル尺度のスペクトルをそのまま入れることも多い。どこまで人が手で加工するかは、モデルとデータの量で変わる

12: 名無しさん

音素は、その言語で語の意味を区別する一番小さい音の単位。「かさ」と「かた」は /s/ と /t/ の1つで意味が変わる
音韻は、そうした音の区別の体系のこと。日本語では英語の l と r を区別しないように、言語ごとに違う

管理人のひとこと