Copyright 2020 Michio Inoue
実行内容(前処理、学習、予測)については MusicComposerClassification_full.md を確認ください。
- OS: Microsoft Windows 10 Enterprise Version 10.0 (Build 19042)
- CPU: Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz 2.11 GHz
- RAM: 16.0 GB
- MATLAB R2020b (9.9.0.1467703)
- Audio Toolbox
- Signal Processing Toolbox
- Machine Learning and Statistics Toolbox
- Parallel Computing Toolbox (Recommended)
MusingComposerClassification_preprocess.mlx
内の以下のコードで
rng(100); % 乱数シード固定(再現用)
で設定しています。
詳細は entry_points.md を確認。
カレントディレクトリをスクリプトがある ./code
に移動した上で実行ください。
run('DataExploration.mlx')
run('DivideTestFiles.mlx')
run('DivideTrainFiles.mlx')
run('MusicComposerClassification_preprocess.mlx')
run('MusicComposerClassification_train.mlx')
run('MusicComposerClassification_predict.mlx')
上の手順で生成されるファイルはそれぞれ
- ファイル名・作曲家情報などのデータ(
trainDataSummary.mat
)はPROCESSED_DATA_DIR
- トレーニングデータの特徴量
trainFeatures.mat
はPROCESSED_DATA_DIR
- テストデータの特徴量
testFeatures.mat
はPROCESSED_DATA_DIR
- 予測モデル
modelknn.mat
はMODEL_DIR
に事前に保存していますので、以下のスクリプトを実行することで予測のみを実施可能です。
カレントディレクトリをスクリプトがある ./code
に移動した上で実行ください。
run('MusicComposerClassification_predict.mlx')
詳細は entry_points.md を確認
RAW_DATA_DIR
(settings.jsonで指定)に test.csv
、train.csv
、
そして RAW_DATA_DIR
以下の /train/
にトレーニングデータ、/test/
にテストデータがあることを想定しています。
run('DataExploration.mlx')
run('DivideTestFiles.mlx')
run('DivideTrainFiles.mlx')
run('MusicComposerClassification_preprocess.mlx')
run('MusicComposerClassification_train.mlx')
は事前に保存している以下のファイルを上書きします。
- ファイル名・作曲家情報などのデータ(
trainDataSummary.mat
)inPROCESSED_DATA_DIR
- トレーニングデータの特徴量
trainFeatures.mat
inPROCESSED_DATA_DIR
- テストデータの特徴量
testFeatures.mat
inPROCESSED_DATA_DIR
- 予測モデル
modelknn.mat
inMODEL_DIR