図 14.27 に実行例を示す. 実行後,MFBANK27_0.spec というファイルが生成される. このファイルは,リトルエンディアン,32 ビット浮動小数点数形式で表された 27 次元ベクトル列を格納している. うまく特徴抽出できないときは, data ディレクトリに f101b001.wav ファイルがあるかチェックしよう.
本サンプルに含まれるモジュールは,13 個である. MAIN (subnet) に 3 個 MAIN_LOOP (iterator) に 10 個のモジュールがある. MAIN (subnet) と MAIN_LOOP (iterator) を 図 14.28,14.29 に示す. 処理の概要は,AudioStreamFromWave モジュールで取り込んだ音声波形を MSLSExtraction で音響特徴量を計算し,SaveFeatures でファイルに書き出す 単純なネットワーク構成である. MSLSExtraction は, MSLS の計算に メルフィルタバンクの出力とパワースペクトルを必要とするため, 取り込んだ音声波形は, MultiFFT によって分析され, MatrixToMap と PowerCalcForMap によってデータ型を変換した後に MelFilterBank により メルフィルタバンクの出力を求める処理が入っている. MSLSExtraction は, MSLS 係数の他に 係数の格納領域をリザーブし,ベクトルを特徴量 として出力する( 係数の格納領域には 0 が入れられている). ここでは MSLSExtraction の USE_POWER プロパティを trueにしているので, 係数は, MSLS とデルタパワー項を含む. MSLSExtraction の FBANK_COUNT プロパティで指定した値+1 次元の 2 倍の次元数のベクトルを特徴量として出力する. Delta により, MSLS 係数とデルタパワー項が計算され格納される. 必要な係数は MSLS 係数と MSLS 係数とデルタパワー項であるため,不要な パワー項を削除する必要がある.削除には FeatureRemover を用いている. SaveFeatures は,入力 FEATURE を保存する.入力 SOURCES には ConstantLocalization で生成した正面方向の定位結果を与える.
表14.17 に主要なパラメータをまとめる.
ノード名 |
パラメータ名 |
型 |
設定値 |
MAIN_LOOP |
LENGTH |
subnet_param |
2 |
ADVANCE |
subnet_param |
3 |
|
SAMPLING_RATE |
subnet_param |
4 |
|
FBANK_COUNT |
subnet_param |
5 |
|
FBANK_COUNT1 |
subnet_param |
6 |
|
DOWHILE |
bool |
(空欄) |
|
MSLSExtraction |
FBANK_COUNT |
subnet_param |
FBANK_COUNT |
NORMALIZE_MODE |
string |
Cepstral |
|
USE_POWER |
bool |
true |
|
Delta |
FBANK_COUNT1 |
subnet_param |
FBANK_COUNT1 |
FeatureRemover |
SELECTOR |
Object |
<Vector<float> 13> |