YOLO26の紹介: 次世代のビジョンAI。
Ultralytics
Ultralytics用語集に戻る

K-Nearest Neighbors (KNN)

K-Nearest Neighbors(KNN)を探究します。この教師あり学習アルゴリズムが分類や回帰のためにどのように機能するか、視覚検索での使用法、そしてUltralytics YOLO26との統合について学びましょう。

K-Nearest Neighbors (KNN) は、教師あり学習の分野で分類タスクと回帰タスクの両方に使用される、堅牢で直感的なアルゴリズムです。そのシンプルさが特徴のKNNは、トレーニングフェーズでモデルを構築したりパラメータを学習したりしないため、「怠惰学習(lazy learner)」と分類されることがよくあります。その代わり、トレーニングデータセット全体を記憶し、予測が要求されたときにのみ計算を実行します。このアルゴリズムの核心は特徴の類似性に基づいています。つまり、類似した属性を持つデータポイントは、多次元特徴空間内で互いに近い場所に存在するという前提に立っています。

Link to this sectionアルゴリズムの動作#

K-Nearest Neighborsのメカニズムは、距離計算によって駆動されます。新しいクエリポイントが導入されると、アルゴリズムは保存されたデータセットを検索し、新しい入力に最も近い「K」個のトレーニングサンプルを特定します。

  1. 距離測定: システムは、クエリポイントとデータベース内の他のすべてのポイント間の距離を計算します。最も一般的な指標は、ポイント間の直線距離を測定するユークリッド距離です。データの種類によっては、マンハッタン距離(タクシー幾何学)やミンコフスキー距離などの他の指標が使用される場合もあります。

  2. 近傍選択: 距離を計算した後、アルゴリズムはそれらをソートし、上位「K」個の最も近いエントリを識別します。

  3. 意思決定: - 分類の場合: アルゴリズムは「多数決」システムを使用します。K個の近傍の中で最も頻繁に出現するクラスラベルが、クエリポイントに割り当てられます。これは基本的な画像分類タスクで広く使用されています。 - 回帰の場合: 予測は、K個の近傍の値を平均化して連続変数を推定することで計算されます。

Link to this section適切な「K」の選択#

最適な「K」の値を選択することは、ハイパーパラメータ調整における重要なステップです。Kの選択は、モデルのパフォーマンスと新しいデータに対する汎化能力に大きな影響を与えます。

  • 低いK値: 小さなK(例:K=1)は、モデルをデータ内のノイズや外れ値に対して非常に敏感にし、過学習を引き起こす可能性があります。
  • 高いK値: 大きなKは決定境界を滑らかにし、ノイズの影響を低減しますが、個別のパターンを曖昧にしてしまう可能性があり、結果として未学習を招くことがあります。

Link to this section実社会での応用#

ディープニューラルネットワークと比較してそのシンプルさは際立っていますが、KNNは現代のAI、特に高度な特徴抽出技術と組み合わせた場合に非常に有効であり続けています。

  • レコメンデーションシステム: KNNは、メディアストリーミングやeコマースにおける協調フィルタリングを容易にします。閲覧履歴や購買行動が類似しているユーザー(近傍)を特定することで、プラットフォームは「最も近い近傍」の好みに基づいて、ユーザーが好みそうな商品を提案できます。
  • 異常検知: サイバーセキュリティや金融の分野では、KNNは異常検知に使用されます。トランザクションやネットワークアクティビティは特徴空間にマッピングされ、「正常」なアクティビティの密集したクラスターから遠く離れた新しいデータポイントは、不正やセキュリティ侵害の可能性があるとしてフラグが立てられます。
  • Visual Search: Modern vector search engines often rely on Approximate Nearest Neighbor (ANN) algorithms—an optimized variation of KNN—to rapidly retrieve similar images based on high-dimensional embeddings generated by models like YOLO26.

Link to this section課題と考慮事項#

While effective, KNN faces the curse of dimensionality. As the number of features (dimensions) increases, data points become sparse, and distance metrics lose their effectiveness. Additionally, because it stores all training data, KNN can be memory-intensive and suffer from high inference latency on large datasets. To address this, practitioners often preprocess data using dimensionality reduction techniques like Principal Component Analysis (PCA) or use specialized data structures like KD-Trees to speed up the search. For enterprise-grade scaling of datasets and model training, utilizing the Ultralytics Platform can help manage the compute resources required for preprocessing complex data.

Link to this sectionKNNとK-Meansの区別#

名前が似ているために混同されやすいため、K-Nearest NeighborsとK-Meansクラスタリングを区別することが重要です。

  • KNNは、ラベル付きデータを使用して予測を行う教師あり学習アルゴリズムです。
  • K-Meansは、構造的な類似性に基づいてラベルのないデータをグループ化するために使用される**教師なし学習**アルゴリズムです。

Link to this section実装例#

次のコードスニペットは、一般的なScikit-learnライブラリを使用したシンプルなKNN分類ワークフローを示しています。コンピュータビジョンの文脈では、入力となる「特徴」は、通常YOLO26のようなディープラーニングモデルによって抽出された後、KNN分類器に渡されます。

from sklearn.neighbors import KNeighborsClassifier

# Simulated feature vectors (e.g., extracted from YOLO26) and labels
# Features: [Size, Redness], Labels: 0=Apple, 1=Orange
features = [[0.8, 0.9], [0.9, 0.8], [0.2, 0.3], [0.3, 0.2]]
labels = [0, 0, 1, 1]

# Initialize KNN with 3 neighbors
knn = KNeighborsClassifier(n_neighbors=3)
knn.fit(features, labels)

# Predict the class of a new object [Size=0.85, Redness=0.85]
prediction = knn.predict([[0.85, 0.85]])
print(f"Predicted Class: {prediction[0]} (0=Apple, 1=Orange)")

Explore solutions

Real-time AI that works with your team

ロボティクスにおけるAI

Ultralytics YOLOモデルで、よりスマートなマシンを実現しましょう。ロボティクスにおけるビジョンAIは、自律航行、認識、物体追跡、リアルタイム制御を推進します。
詳細はこちら
Real-time AI that works with your team

物流におけるAI

Ultralytics YOLOモデルで物流を効率化しましょう。ビジョンAIにより、荷物の検査、仕分け、車両追跡、リアルタイムの倉庫安全モニタリングが可能になります。
詳細はこちら
Real-time AI that works with your team

小売業界におけるAI

Ultralytics YOLOモデルで小売を再定義しましょう。ビジョンAIは、在庫追跡、棚のモニタリング、キュー管理、そしてより賢明な顧客インサイトを促進します。
詳細はこちら
Real-time AI that works with your team

ヘルスケアにおけるAI

Ultralytics YOLOモデルを使用してヘルスケアソリューションを構築しましょう。ヘルスケア分野におけるビジョンAIは、より高速な医療画像診断、よりスマートな診断、患者モニタリングを推進します。
詳細はこちら
Real-time AI that works with your team

製造におけるAI

Ultralytics YOLOモデルで製造を最適化しましょう。ビジョンAIは、品質管理、欠陥検出、PPEコンプライアンス、組立ラインの自動化を促進します。
詳細はこちら
Real-time AI that works with your operation

自動車におけるAI

Ultralytics YOLOモデルを使用して、自動車分野にコンピュータビジョンを適用しましょう。ビジョンAIは、道路の安全性、運転支援、車両の自動化を向上させ、よりスマートな道路を実現します。
詳細はこちら
Real-time AI tailored to your operation

農業におけるAI

Ultralytics YOLOモデルを使用して、スマート農業にビジョンAIを導入しましょう。作物モニタリング、家畜のトラッキング、精密農業を強化し、より高くスマートな収穫を実現します。
詳細はこちら
Real-time AI that works with your team

ロボティクスにおけるAI

Ultralytics YOLOモデルで、よりスマートなマシンを実現しましょう。ロボティクスにおけるビジョンAIは、自律航行、認識、物体追跡、リアルタイム制御を推進します。
詳細はこちら
Real-time AI that works with your team

物流におけるAI

Ultralytics YOLOモデルで物流を効率化しましょう。ビジョンAIにより、荷物の検査、仕分け、車両追跡、リアルタイムの倉庫安全モニタリングが可能になります。
詳細はこちら
Real-time AI that works with your team

小売業界におけるAI

Ultralytics YOLOモデルで小売を再定義しましょう。ビジョンAIは、在庫追跡、棚のモニタリング、キュー管理、そしてより賢明な顧客インサイトを促進します。
詳細はこちら
Real-time AI that works with your team

ヘルスケアにおけるAI

Ultralytics YOLOモデルを使用してヘルスケアソリューションを構築しましょう。ヘルスケア分野におけるビジョンAIは、より高速な医療画像診断、よりスマートな診断、患者モニタリングを推進します。
詳細はこちら
Real-time AI that works with your team

製造におけるAI

Ultralytics YOLOモデルで製造を最適化しましょう。ビジョンAIは、品質管理、欠陥検出、PPEコンプライアンス、組立ラインの自動化を促進します。
詳細はこちら
Real-time AI that works with your operation

自動車におけるAI

Ultralytics YOLOモデルを使用して、自動車分野にコンピュータビジョンを適用しましょう。ビジョンAIは、道路の安全性、運転支援、車両の自動化を向上させ、よりスマートな道路を実現します。
詳細はこちら
Real-time AI tailored to your operation

農業におけるAI

Ultralytics YOLOモデルを使用して、スマート農業にビジョンAIを導入しましょう。作物モニタリング、家畜のトラッキング、精密農業を強化し、より高くスマートな収穫を実現します。
詳細はこちら
Real-time AI that works with your team

ロボティクスにおけるAI

Ultralytics YOLOモデルで、よりスマートなマシンを実現しましょう。ロボティクスにおけるビジョンAIは、自律航行、認識、物体追跡、リアルタイム制御を推進します。
詳細はこちら
Real-time AI that works with your team

物流におけるAI

Ultralytics YOLOモデルで物流を効率化しましょう。ビジョンAIにより、荷物の検査、仕分け、車両追跡、リアルタイムの倉庫安全モニタリングが可能になります。
詳細はこちら
Real-time AI that works with your team

小売業界におけるAI

Ultralytics YOLOモデルで小売を再定義しましょう。ビジョンAIは、在庫追跡、棚のモニタリング、キュー管理、そしてより賢明な顧客インサイトを促進します。
詳細はこちら
Real-time AI that works with your team

ヘルスケアにおけるAI

Ultralytics YOLOモデルを使用してヘルスケアソリューションを構築しましょう。ヘルスケア分野におけるビジョンAIは、より高速な医療画像診断、よりスマートな診断、患者モニタリングを推進します。
詳細はこちら
Real-time AI that works with your team

製造におけるAI

Ultralytics YOLOモデルで製造を最適化しましょう。ビジョンAIは、品質管理、欠陥検出、PPEコンプライアンス、組立ラインの自動化を促進します。
詳細はこちら
Real-time AI that works with your operation

自動車におけるAI

Ultralytics YOLOモデルを使用して、自動車分野にコンピュータビジョンを適用しましょう。ビジョンAIは、道路の安全性、運転支援、車両の自動化を向上させ、よりスマートな道路を実現します。
詳細はこちら
Real-time AI tailored to your operation

農業におけるAI

Ultralytics YOLOモデルを使用して、スマート農業にビジョンAIを導入しましょう。作物モニタリング、家畜のトラッキング、精密農業を強化し、より高くスマートな収穫を実現します。
詳細はこちら

AIの未来を共に築き上げましょう!

機械学習の未来とともに旅を始めましょう