動的タイムワーピング(DTW)を使用して時系列のクラスタリングを実行する方法は何ですか?
DTWを2つの時系列間の類似性を見つける方法として読みましたが、それらは時間的にシフトする可能性があります。この方法を、k-meansのようなクラスタリングアルゴリズムの類似性尺度として使用できますか?
動的タイムワーピング(DTW)を使用して時系列のクラスタリングを実行する方法は何ですか?
DTWを2つの時系列間の類似性を見つける方法として読みましたが、それらは時間的にシフトする可能性があります。この方法を、k-meansのようなクラスタリングアルゴリズムの類似性尺度として使用できますか?
回答:
時系列にk-meansを使用しないでください。
DTWは平均によって最小化されません。k-meansは収束しない場合があり、収束しても非常に良い結果は得られません。平均は、座標上の最小二乗推定量です。任意の距離ではなく分散を最小化し、k-meansは任意の距離ではなく分散を最小化するように設計されています。
2つの時系列があるとします。同じ周波数の2つの正弦波、およびかなり長いサンプリング期間。しかし、それらはによってオフセットされます。DTWはタイムワーピングを行うため、開始と終了を除き、完全に一致するように調整できます。DTWは、これら2つのシリーズにかなり短い距離を割り当てます。ただし、2つの系列の平均を計算すると、フラット0になります-それらは相殺されます。平均は動的なタイムワーピングを行わず、DTWが取得したすべての値を失います。そのようなデータでは、k-meansは収束に失敗する場合があり、結果は無意味になります。K-meansは実際には分散(=ユークリッドの2乗)または同等の場合(コサインのように、コサインの類似性が2 -と同じユークリッド距離の乗)
代わりに、DTWを使用して距離行列を計算し、シングルリンクなどの階層的なクラスタリングを実行します。k-meansとは対照的に、系列の長さは異なる場合があります。
はい、時系列の分類とクラスタリングにDTWアプローチを使用できます。私はこのまさにトピックに焦点を当てた以下のリソースをまとめました(私は最近、このサイトではなく、同様の質問に答えましたので、私は皆の便宜のためにここに内容をコピーしています):
最近の方法DTW Barycenter Averaging(DBA)は、Petitjeanらによって提案されました。平均時系列に。では、他の論文には、K-手段で時系列をクラスタ化するために使用することができますどのように経験的および理論的に証明しました。実装は、著者によってGitHubで提供されています(コードへのリンク)。
1 F. Petitjean、G。Forestier、GI Webb、AE Nicholson、Y。Chen、およびE. Keogh、「時系列の動的なタイムワーピングの平均化により、より高速で正確な分類が可能」、2014 IEEE International Conference on Data Mining、Shenzhen、2014 。
2 F. Petitjean、P。Gançarski、平均化による時系列セットの要約:シュタイナーシーケンスからコンパクトマルチプルアラインメントまで、Theoretical Computer Science、Volume 414、Issue 1、2012
ダイナミックタイムワープは、実現されたデータポイントを比較します。より厳密なアプローチは、望遠鏡距離と呼ばれる測定基準によって時系列の分布を比較することです。
このメトリックの優れた点は、SVMなどの一連のバイナリ分類子をフィッティングすることにより、経験的な計算が行われることです。
簡単な説明については、これを。
時系列のクラスタリングでは、DTWを上回ることが示されています。元の論文[1]の表1を参照してください。
[1] Ryabko、D.&Mary、J.(2013)。時系列分布間のバイナリ分類ベースのメトリックと、統計および学習問題での使用。Journal of Machine Learning Research、14(1)、2837-2856。
はい。素朴で潜在的に遅いアプローチは、
n! / k! / (n-k)!
です。これらは潜在的なセンターのようなものです。これを小さなプロジェクトに使用しました。これが、時系列クラスタリングに関する私のリポジトリと、これに関する他の回答です。