Yolo 深圳
深セン
今すぐ参加
用語集

K-平均法クラスタリング

K-Meansクラスタリングは、データをクラスタにグループ化するための重要な教師なし学習アルゴリズムです。そのプロセス、アプリケーション、および比較について学びましょう。

K-Meansクラスタリングは、教師なし学習の分野で広く使われているアルゴリズムである。 教師なし学習の分野で広く使われているアルゴリズムである。 クラスタリングは、データセットを異なる、重複しないサブグループに分割するために設計された、教師なし学習の分野で広く使用されているアルゴリズムである。より広い意味での 機械学習(ML)の広範な文脈では、この手法は次のように不可欠である。 ラベル付けされていないデータから隠れたパターンや構造を発見するために不可欠である。このアルゴリズムは、データ K$ 個のクラスターに整理することで動作し、各ポイントは平均が最も近いクラスターに属し、グループのプロトタイプとして機能する。 グループのプロトタイプとなる。このアプローチは、各クラスタ内の分散を最小化するのに役立ち、同じグループ内のデータ点が可能な限り類似していることを保証する。 異なるグループの区別を保ちながら、同じグループ内のデータ点が可能な限り類似していることを保証する。

アルゴリズムの仕組み

K-Meansのプロセスは反復的で、$K$個の初期セントロイドの選択から始まる。 を選択することから始まる。これらのセントロイドは、ランダムに選ぶこともできるし、次のような賢い初期化手法によって選ぶこともできる。 k-means++初期化 のような、より賢い初期化手法によって選択することができる。アルゴリズムはその後、結果が安定するまで2つの主要ステップを経る:

  1. 割り当て:学習データの各データ点は 学習データ中の各データ点は、最も近いセントロイド を割り当てる。 ユークリッド距離である。このステップにより データを$K$個のクラスタにグループ化する。
  2. 更新: 各クラスタの新しいセントロイドは、その特定のクラスタに割り当てられたすべてのデータポイント の平均を計算する。

このサイクルは、セントロイドが大きく動かなくなるまで繰り返され、アルゴリズムが収束したことを示す。 最適なクラスタ数を決定することはプロセスの重要な部分であり、しばしば エルボー法 または シルエットスコア を分析することによって達成されます。

AIの実世界での応用

K-Meansクラスタリングは汎用性が高く、データ・マイニングや分析タスクのために様々な産業で有用である。 データマイニングや分析タスクに利用されています。

  • 顧客セグメンテーション:企業はクラスタリングを活用し、購買行動やデモグラフィック、閲覧履歴に基づいて顧客をグループ化する。 をグループ化するために利用します。明確なグループを特定することで、企業はマーケティング戦略を調整することができる。 マーケティング戦略を調整することができる。 顧客ターゲティングや在庫管理が向上するのと同様である。
  • 画像圧縮:コンピュータビジョン コンピュータ・ビジョン(CV)の領域では、K-Meansが色量子化のために採用されている。 が採用されている。この技術は、ピクセル値をクラスタリングすることにより、画像内の固有の色の数を減らします、 効果的に 次元削減を効果的に行いながら 画像の視覚的完全性を維持しながら、効果的に次元削減を行います。
  • 異常の検出:正常なデータ・クラスターの構造を学習することで、システムは異常値を識別することができる。 を特定することができる。これはセキュリティ・アプリケーションやネットワーク・トラフィックの ネットワーク・トラフィックの異常検知

物体検出におけるK-Meansの歴史

のような最新の物体検出器では Ultralytics YOLO11のような 高度な回帰技術やアンカー・フリー・ヘッドを利用することが多いが、K-Meansは検出モデルの進化において極めて重要な役割を果たした。 検出モデルの進化において極めて重要な役割を果たした。YOLOv2からYOLOv5ような初期の反復では、COCOデータセットのバウンディング・ボックス次元のK-Meansクラスタリングを使用して、最適な検出モデルを決定していた。 最適なアンカー・ボックスを決定するために、COCO データセットのバウンディング・ボックス次元に対してK-Meansクラスタリングを使用していた。 アンカーボックスを決定した。これらの事前計算されたアンカーは は、物体の形状を予測するためのより良い事前分布をモデルに与え、学習の安定性と再現率を大幅に向上させた。

K-平均とK-最近傍(KNN)の比較

K-MeansとK-最近傍探索(KNN)を混同することはよくある。 K-Nearest Neighbors (KNN)と混同されがちだが、両者は基本的に異なる目的 根本的に目的が異なる。

  • K-Meansは クラスタリングに使用される教師なしアルゴリズムである。これは ラベル付けされたデータを必要とせず、データセット内の固有の構造を見つけることに重点を置く。
  • KNNは、画像の分類や回帰に使われる教師あり学習アルゴリズ 画像の分類と回帰に使用される教師あり学習アルゴリズムである。KNNは は、ラベル付けされた入力に依存し、最も近い近傍の多数決クラスに基づいて新しいデータ点をclassify する。

もう一つの関連概念は DBSCANは、中心点からの距離ではなく密度に基づいてクラスタリングする。K-Meansとは異なり、DBSCANは事前にクラスタ数を指定する必要がなく は,事前にクラスタ数を指定する必要がなく,外れ値の扱いに優れている.

コード例:色の量子化

以下のPython サンプルは、K-Meansを使用してピクセル・カラーをクラスタリングする方法を示しています。 使用する方法を示します。

import numpy as np
from sklearn.cluster import KMeans

# Simulate a small image (10x10 pixels) with 3 RGB channels
# In a real scenario, you would load an image using cv2.imread()
image_data = np.random.randint(0, 255, (10, 10, 3), dtype=np.uint8)
pixels = image_data.reshape(-1, 3)

# Apply K-Means to reduce the image to 3 dominant colors (clusters)
kmeans = KMeans(n_clusters=3, n_init="auto", random_state=42).fit(pixels)

# The cluster centers represent the dominant colors
print(f"Dominant RGB Colors:\n{kmeans.cluster_centers_}")

Ultralytics コミュニティに参加する

AIの未来を共に切り開きましょう。グローバルなイノベーターと繋がり、協力し、成長を。

今すぐ参加