概要
paiza の話者認識について勉強。理解したことを記載する。
https://paiza.jp/works/ai_ml/primer/ml-challenge2
まだ完全には理解できていないので、間違いがあるかも?
判明次第修正予定。
前提として
音とは
Wikipediaから引用
物理学においては、音とは物体を通して縦波として伝わる力学的エネルギーの変動のことであり、波動としての特徴(周波数・波長・周期・振幅・速度など)を持つ音波として表せる。
音の高低
音の高さは周波数によって決まる。
音が低い場合は周波数が低く、高い場合は周波数が高い。
波の分解
周期性を持った波は、単純な波に分解できる。
ex. フーリエ変換
使用するライブラリ
librosa
音楽、音の分析に使うライブラリ。
https://librosa.github.io/librosa/
sklearn
SVMを使うため使用する。
Wikipediaから引用
サポートベクターマシン(英: support vector machine, SVM)は、教師あり学習を用いるパターン認識モデルの一つである。
学習した内容
単純な音声データでの予測から、フーリエ変換を使った予測精度の改善、MFCCを使った予測を学習。
単純な音声データでの予測
正解数は4/12で、システムに組み込むには予測精度が低すぎる。
フーリエ変換を使った予測精度の改善
パワースペクトルを特徴として使用。
SVMのパラメータを変更したところ、正解数が増えている。
正解数は8~10/12とそれなり。システムに組み込むには予測精度の低いと感じる。
複数の特徴量を使った予測
1つの音声から複数の特徴量を抽出する。
パワースペクトログラムを分割し、複数の特徴量として使う。
正解数はフーリエ変換を使った予測と変わらず。
キーワード: 短時間フーリエ変換、パワースペクトログラム
MFCCを使った予測
正解数は12/12となった。
システムに組み込めそうだが、もう少しテスト数を増やして確認したい。
今度やってみたいこと
今後こんなことをやってみたい。
- 同一の音声データをwavとmp3に変換して比較
- 10分程度の音声データの比較