Data augmentation using synthetic data for time series classification with deep residual networks 要約
読んだ論文
Data augmentation using synthetic data for time series classification with deep residual networks
Hassan Ismail Fawaz, Germain Forestier, Jonathan Weber, Lhassane Idoumghar, Pierre-Alain Muller
https://arxiv.org/abs/1808.02455
上記の論文を読んだので簡単にまとめます.International Workshop on Advanced Analytics and Learning on Temporal Data, ECML PKDDで発表されているようです.論文読んで気づきましたが,2日目に読んだTransfer learning for time series classificationの著者の人ですね.
3行でまとめる
- 時系列分類問題におけるデータ拡張手法を提案する.
- おなじみUCR公開データセットで評価して有用性を示した.
- 拡張だけでなく,拡張→アンサンブルResNetによって精度が向上しやすいことを示した.
提案手法
- 認識モデルにはResNet(ただし11層)を使用する.
- 入力は1次元の時系列データで,Conv1Dでつないでいく.
- データ拡張手法には1を応用する.この手法は基本的にはDTWの重み付きDBAを使用してデータ拡張を行うようですが,詳細は明日読むことにします.
- 1の手法に対して重みを決定する方法を変えたのが提案手法である.(他にもsoft-DTW等の手法はあるが本稿では検証を今後の課題としている.また不均衡クラスの問題も今後の課題にしている.)
Weighted DBAの重み決定方法
- ランダムに初期時系列を選定し,0.5の重みを割り当てる.
- ランダムに選択された上記の時系列はDBAの初期化に作用するらしい.
- 続いて,DTW距離を用いて5近傍の時系列を取得する.
- 5近傍のデータからランダムに2つを選択し,0.15の重みを割り当てる(この段階で合計の重みは0.8).
- 残った奴らで残りの重み0.2を共有する.
(元の手法を詳細に読まないとこの重み決定方法の理解が進まない...)
評価実験
- UCR time series datasets2を用いて提案手法を評価した.
- 相変わらず60以上のクラスタGPUを使用している.計算機の暴力.
- 全体を通しては大幅に精度が下がることはなかった.
- 一方,DiatomSizeReduction datasetでは精度が30%→96%に大幅な向上を果たした.
- これは,該当データセットが最も少数インスタンス(16データ)であり,提案手法の拡張が極端にうまく働く分布だったためと思われる.
- また本データセットは元のResNetでは最も精度が悪かったデータセットであり,データ拡張によりこれを改善できたことは興味深い.
- ただ,Wilcoxonの符号順位検定を行ったが,データ拡張有無で有意差は確認できなかった.
- そこでデータ拡張ありとなしでアンサンブルさせた手法でWilcoxonの符号順位検定を行ったところ有意差が確認できた.(拡張によって精度が下がったデータセットが31から20に減った.)
まとめ
- 時系列分類問題において,WeightedDBAを用いたデータ拡張手法に対する重み決定手法を提案した.
- データ拡張有無でアンサンブルしたResNetを用いることで多くのデータセットで精度改善を実現した.
所管
今回も選定後~読了まで1時間程度でした.手法自体は引用論文1に丸投げっぽかったので,明日はそちらを読みたいと思います.
-
Forestier, G., Petitjean, F., Dau, H.A., Webb, G.I., Keogh, E.J.: Generating syn-thetic time series to augment sparse datasets. In: IEEE International Conferenceon Data Mining. pp. 865–870 (2017) ↩ ↩2 ↩3
-
Y. Chen et al.(Jul. 2015).The UCR Time Series Classification Archive.[Online]. Available: http://www.cs.ucr.edu/~eamonn/time_series_data/ ↩