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

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

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

K-Means Clustering is a fundamental and widely used algorithm in the field of unsupervised learning designed to uncover hidden structures within unlabeled data. Its primary objective is to partition a dataset into distinct subgroups, known as clusters, such that data points within the same group are as similar as possible, while those in different groups are distinct. As a cornerstone of data mining and exploratory analysis, K-Means empowers data scientists to automatically organize complex information into manageable categories without the need for predefined labels or human supervision.

アルゴリズムの仕組み

The operation of K-Means is iterative and relies on distance metrics to determine the optimal grouping of the training data. The algorithm operates by organizing items into K clusters, where each item belongs to the cluster with the nearest mean, or centroid. This process minimizes the variance within each group. The workflow generally follows these steps:

  1. 初期化:アルゴリズムはK個の初期点を中心点として選択する。これらはランダムに選択するか、収束を早めるためにk-means++のような最適化手法を用いて選択することができる。
  2. 課題:データセット内の各データポイントは、特定の距離測定基準(最も一般的なのはユークリッド距離)に基づいて、最も近い重心点に割り当てられる。
  3. 更新:クラスタに割り当てられた全データポイントの平均(算術平均)を算出することで、 中心点が再計算されます。
  4. 反復処理:ステップ2と3は、中心点が著しく移動しなくなるか、最大反復回数に達するまで繰り返される。

クラスタの適切な数(K)を決定することは、このアルゴリズムを使用する上で重要な側面である。実務者は、エルボー法のような手法を用いたり、シルエットスコアを分析したりして、結果として得られるクラスタがどれだけ分離されているかを評価することが多い。

AIの実世界での応用

K-Meansクラスタリングは汎用性が高く、様々な産業分野においてデータの簡素化や前処理に活用されています。

  • Image Compression and Color Quantization: In computer vision (CV), K-Means helps reduce the file size of images by clustering pixel colors. By grouping thousands of colors into a smaller set of dominant colors, the algorithm effectively performs dimensionality reduction while preserving the visual structure of the image. This technique is often used before training advanced object detection models to normalize input data.
  • Customer Segmentation: Businesses leverage clustering to group customers based on purchasing history, demographics, or website behavior. This allows for targeted marketing strategies, a key component of AI in retail solutions. By identifying high-value shoppers or churn risks, companies can tailor their messaging effectively.
  • Anomaly Detection: By learning the structure of "normal" data clusters, systems can identify outliers that fall far from any centroid. This is valuable for fraud detection in finance and anomaly detection in network security, helping to flag suspicious activities that deviate from standard patterns.
  • Anchor Box Generation: Historically, object detectors like older YOLO versions utilized K-Means to calculate optimal anchor boxes from training datasets. While modern models like YOLO26 utilize advanced anchor-free methods, understanding K-Means remains relevant to the evolution of detection architectures.

実施例

While deep learning frameworks like the Ultralytics Platform handle complex training pipelines, K-Means is often used for analyzing dataset statistics. The following Python snippet demonstrates how to cluster 2D coordinates—simulating object centroids—using the popular Scikit-learn library.

import numpy as np
from sklearn.cluster import KMeans

# Simulated coordinates of detected objects (e.g., from YOLO26 inference)
points = np.array([[10, 10], [12, 11], [100, 100], [102, 101], [10, 12], [101, 102]])

# Initialize K-Means to find 2 distinct groups (clusters)
kmeans = KMeans(n_clusters=2, random_state=0, n_init="auto").fit(points)

# Output the cluster labels (0 or 1) for each point
print(f"Cluster Labels: {kmeans.labels_}")
# Output: [1 1 0 0 1 0] -> Points near (10,10) are Cluster 1, near (100,100) are Cluster 0

関連アルゴリズムとの比較

プロジェクトに適切なツールを選択するためには、K-Meansを類似した名称や機能を持つ他のアルゴリズムと区別することが重要です。

  • K-MeansとK-Nearest Neighbors (KNN):これらは名称に「K」が含まれるため、しばしば混同される。 K-Meansはラベル付けされていないデータのクラスタリングに用いられる教師なしアルゴリズムである。一方、K-Nearest Neighbors(KNN)画像分類や回帰に用いられる教師あり学習アルゴリズムであり、ラベル付きデータに依存し、近傍の多数派クラスに基づいて予測を行う。
  • K-Means vs. DBSCAN: While both cluster data, K-Means assumes clusters are spherical and requires the number of clusters to be defined beforehand. DBSCAN groups data based on density, can find clusters of arbitrary shapes, and handles noise better. This makes DBSCAN superior for complex spatial data found in datasets with irregular structures where the number of clusters is unknown.

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

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

今すぐ参加