プログラミング
 Computer >> コンピューター >  >> プログラミング >> プログラミング

K-MeansとDBSCANの違いは何ですか?


K-Means

K-meansクラスタリングは、パーティショニングアルゴリズムです。 K-meansは、データセット内の各データを、形成された新しいクラスターの1つだけに再作成します。データまたはデータポイントは、距離または類似性の尺度を使用して隣接するクラスターに割り当てられます。

k-meansでは、オブジェクトは最も近い中心に生成されます。リンクできない制約を定義でき、k-meansの中心割り当てプロセスを最も近い適用可能な中心割り当てに変更します。

オブジェクトが順番に中央に作成されると、各ステップで、これまでのところ割り当てを提供でき、リンクできない制約を混乱させることはありません。オブジェクトは最も近い中心に作成されるため、割り当てはリンクできない制約を尊重します。

DBSCAN

DBSCANは、ノイズのあるアプリケーションの密度ベースの空間クラスタリングを表します。これは、密度ベースのクラスタリングアルゴリズムです。このアルゴリズムは、十分に高密度の領域をクラスターに改善し、ノイズのある空間データベース内の任意の構造のクラスターを検出します。クラスターを密度接続ポイントの最大セットとして定義します。

密度ベースのクラスターは、密度到達可能性に関して最大​​の密度接続オブジェクトのセットです。一部のクラスターに含まれていない各オブジェクトは、ノイズと見なされます。

DBSCANは、データベース内のすべてのポイントのε近傍をチェックすることにより、クラスターをチェックします。点pのε近傍にMinPtsを超える数が含まれている場合、コア要素としてpを持つ新しいクラスターが生成されます。 DBSCANは、これらの重要な要素から正確に密度に到達可能なオブジェクトを繰り返しアセンブルします。これには、いくつかの密度に到達可能なクラスターのマージが含まれる場合があります。このプロセスにより、どのクラスターにも新しいポイントを追加できない場合がなくなります。

K-MeansとDBSCANの比較を見てみましょう。

K-Means DBSCAN
K-meansは通常、すべてのオブジェクトをクラスター化します。 DBSCANは、ノイズとして定義したオブジェクトを破棄します。
K-meansには、プロトタイプベースのクラスターの概念が必要です。 DBSCANには密度ベースの概念が必要です。
K-meansは、非球状星団や複数のサイズのクラスターでは問題があります。 DBSCANは、複数のサイズと構造のクラスターを処理するために使用され、ノイズや外れ値の影響を強く受けません。
K-meansは、平均または中央値を含む、明確な重心を持つデータに使用できます。 DBSCANは、密度の従来のユークリッド概念に依存する密度の定義がデータにとって重要である必要がありました。
K-meansは、ファイルデータを含むスパースで高次元のデータに使用できます。 従来のユークリッド密度の定義は高次元データではうまく機能しないため、DBSCANは一般にそのような情報の実装が不十分です。
基本的なK-meansアルゴリズムは、すべてのクラスターがいくつかの平均を持つ球形のガウス分布に由来するが、共分散行列が等しいと見なす統計的クラスタリングアプローチ(混合モデル)に似ています。 DIISCANは、レコードの配布について何の仮定も作成しません。

  1. DirectX11とDirectX12の違いは何ですか?

    DirectXは、マルチメディアコンテンツをレンダリングし、グラフィカルハードウェアと通信するためにソフトウェアによって使用されるAPIまたはアプリケーションプログラミングインターフェイスのコレクションです。 DirectXの主要コンポーネントAPIであるDirect3Dは、ソフトウェアとグラフィックスハードウェア間の通信を処理します。すべてのハードウェアが異なるため、関数と呼び出しの標準化されたライブラリを使用してグラフィックカードと通信すると、ゲーム開発がスピードアップします。これはハードウェアアブストラクションと呼ばれ、APIの主な仕事です。 車について考えてみましょう。1台の車を運転

  2. |の違いは何ですかおよび|| C#の演算子?

    || 論理ORと呼ばれます 演算子と| ビットごとの論理ORと呼ばれます しかし、それらの基本的な違いは、実行方法にあります。 ||の構文および|次と同じ- bool_exp1 || bool_exp2 bool_exp1 | bool_exp2 1と2の構文は互いに似ていますが、実行方法がまったく異なります。 最初のステートメントでは、最初にbool_exp1が実行され、次にこの式の結果によって他のステートメントの実行が決定されます。 trueの場合、ORはtrueになるため、otherステートメントを実行しても意味がありません。 bool_exp2ステートメントは、bool