始める無料で始める

導関数的な特徴量:テンポグラム

データをクリーンアップする利点のひとつは、より高度な特徴量を計算できることです。たとえば、先ほど行ったエンベロープの計算は、テンポリズムの特徴量を算出する際によく使われる手法です。この演習では、librosa を使って心音データのテンポとリズムの特徴量を計算し、もう一度モデルに学習させます。

librosa の関数は、DataFrame ではなく numpy array に対して動作することが多い点に注意してください。そのため、Pandas のデータは .values 属性で Numpy 配列として取り出します。

この演習はコースの一部です

Pythonで学ぶMachine Learningによる時系列データ解析

コースを見る

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Calculate the tempo of the sounds
tempos = []
for col, i_audio in audio.items():
    tempos.append(lr.beat.____(y=i_audio.values, sr=sfreq, hop_length=2**10))

# Convert the list to an array so you can manipulate it more easily
tempos = np.array(tempos)

# Calculate statistics of each tempo
tempos_mean = tempos.____(axis=-1)
tempos_std = tempos.____(axis=-1)
tempos_max = tempos.____(axis=-1)
コードを編集して実行