k-meansアルゴリズムでの循環


9

wikiによると、最も広く使用されている収束基準は「割り当ては変更されていません」です。このような収束基準を使用すると、サイクリングが発生するのではないかと思いました。サイクリングの例を挙げている記事や、これが不可能であることを証明する記事への参照を誰かが指摘してくれたら嬉しいです。


2
(これはしばしば見落とされがちなので)収束の証明には(二乗)ユークリッド距離が必要であることを強調します。これにより、距離関数と平均関数は同じ基準を最適化します。別の距離を使用する場合(実際には、距離を使用するのではなく、「最小二乗和」)、k平均の収束を失う可能性があります。
QUITあり-Anony-Mousse 2013年

回答:


7

この論文は、有限数のステップで収束を証明しているように見えます。


1
まさに私が探していたもの!
Tomek Tarczynski、2011

4

kkk


おかげで、目的関数が減少するのは直感的ですが、厳密に減少するかどうかはわかりませんでした。私は確かに何patological場合は、単に線形計画のようがないことを確認したかった
Tomek Tarczynski

はい、いいえ。収束する一方で、シンプレックスの場合と同じように、指数関数的な時間がかかる場合があります。さらに、両方の問題について、「平滑化された」バリアントが多項式時間に収束することを示すことができます
Suresh Venkatasubramanian

2

では有限精度、サイクリングが表示されることがあります。

サイクリングは、単精度では頻繁に発生し、倍精度では例外です。

極小値に近い場合、丸め誤差のために目的関数がわずかに増加することがあります。アルゴリズム関数が再び減少し、最終的に極小値に達するため、これは多くの場合無害です。しかし、時々、アルゴリズムは以前にアクセスした割り当てを踏んで、循環を開始します。

実際の停止基準の実装でサイクルを監視するのは簡単で安全です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.