web-dev-qa-db-ja.com

「k平均」と「ファジーc平均」目的関数の違いは何ですか?

両方のパフォーマンスを、それらが機能する目的関数に基づいて比較できるかどうかを確認しようとしていますか?

28
n0ob

ところで、 Fuzzy-C-Means (FCM)クラスタリングアルゴリズムはソフトK平均

目的関数は実質的に同一です。唯一の違いは、各クラスターへの特定の点の帰属のパーセンテージを表すベクトルの導入です。このベクトルは、より強い接続をより重要視することを目的とした(そして逆に、より弱い接続の重みを最小化することを目的とする)「硬さ」指数にかけられます。ちなみに、剛性係数が無限大に近づくと、結果のベクトルはバイナリマトリックスになり、FCMモデルはK平均のモデルと同じになります。

ポイントが割り当てられていないクラスターで発生する可能性のある問題を除いて、無限剛性係数(=変化する関数を導入することにより)をシミュレートすることにより、FCMのアルゴリズムでK平均アルゴリズムをエミュレートすることは可能だと思いますベクトルの指数の代わりに、ベクトルの最大値を1に、その他の値をゼロにします。これはもちろん、アルゴリズムが真のFCMと同じくらい多くの演算を実行する必要があるため、K-Meansを実行する非常に非効率的な方法です(1と0の値のみの場合、計算は単純になりますが、複雑さはありません)。

パフォーマンスに関して、FCMは各次元に対して、各ポイントに対してk(つまり、クラスターの数)の乗算を実行する必要があります(指数もカウントしません)剛性を考慮する)。これに加えて、近接ベクトルの計算と管理に必要なオーバーヘッドにより、FCMが単純なK平均よりもかなり遅い理由が説明されます。

しかし、FCM/Soft-K-Meansは、たとえば、細長いクラスター(他の次元で一貫していない点が特定の次元に沿って分散する傾向がある場合)の場合、Hard-K-Meansよりも「愚か」ではありません。それが理由です。まだ周り;-)

私の元の返信から:

また、私はこれについて考えただけですが、「数学的」考えを付けていません。FCMは、ハードK平均よりも速く収束し、FCMのより大きな計算要件を多少相殺します。

2018年5月の編集:

FCMの収束速度の高速化についての私の直感をサポートするものを特定できた確かな研究は実際にはありません。ありがとうベンジャミンホーン正直に言って;-)

25
mjv

K-MeansクラスタリングFuzzy-C Means Clustering は、アプローチが非常に似ています。主な違いは、Fuzzy-C平均クラスタリングでは、各ポイントに特定のクラスターに関連付けられた重みがあるため、クラスターへの関連付けが弱いまたは強いほど、「クラスター内」にポイントが置かれないことです。クラスターの中心までの逆距離によって決定されます。

Fuzzy-Cは、実際にはより多くの作業を行うため、Kの平均よりも実行が遅くなる傾向があります。各ポイントは各クラスターで評価され、各評価にはさらに多くの操作が含まれます。 K-Meansは距離計算を実行するだけでよく、fuzzy cは完全な逆距離重み付けを実行する必要があります。

17
Reed Copsey

C-meansはファジーですが、k-meansは困難です(ファジーではありません)。各ポイントはK-meansの重心に属していますが、fuzzy c-meansでは各ポイントは2つの重心に属していますが、品質は異なります。

enter image description here

各ポイントは、最初の重心または2番目の重心の一部ですが、C平均では、1つのポイントが最初の重心(90%)と2番目の重心(10%)の一部になることがあります。たとえば、学生は不合格または合格彼女/彼は49を持っています。それはどういうわけか成功し、現実は失敗します。

2
Wria Mohammed

人々は技術的に書いていて、それぞれの答えはよく書かれています。しかし、私が言いたいのは、素人の言葉でも同じです。 Kは、データセット全体をK個のクラスターにクラスター化することを意味し、データは1つのクラスターのみに属している必要があります。ファジーc-meansはk個のクラスターを作成し、各データを各クラスターに割り当てますが、それらはデータがそのクラスターにどれだけ強く属しているかを定義する要因になります。

1
sukhiray