YOLO Vision 2026:
Ultralytics用語集に戻る

K-Nearest Neighbors (KNN)

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

K-Nearest Neighbors (KNN) は、supervised learningの分野において分類と回帰の両方のタスクに使用される、ロバストで直感的なアルゴリズムです。そのシンプルさが特徴であるKNNは、トレーニング段階でモデルを構築したりパラメータを学習したりしないため、「遅延学習器(レジー・ラーナー)」に分類されることがよくあります。代わりに、training dataセット全体を記憶し、予測がリクエストされた場合にのみ計算を実行します。アルゴリズムの核心となる原則は特徴量の類似性に依存しており、類似した属性を持つデータポイントは多次元特徴空間内で互いに近い近傍に存在するという前提に基づいています。

アルゴリズムの動作#

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

  1. 距離測定: システムは、クエリポイントとデータベース内の他のすべてのポイントとの間の距離を計算します。最も一般的なメトリックは点間の直線距離を測定するEuclidean distanceです。データタイプに応じて、Manhattan distance(タクシー幾何学)やMinkowski distanceなどの他のメトリックが使用される場合があります。

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

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

適切な「K」の選択#

'K'の最適な値を選択することは、hyperparameter tuningにおいて重要なステップです。Kの選択は、モデルのパフォーマンスと、新しいデータへ汎化する能力に大きな影響を与えます。

  • 低いK値: 小さなK(例:K=1)は、データ内のノイズや外れ値に対してモデルを非常に敏感にし、overfittingにつながる可能性があります。
  • 高いK値: 大きなKは決定境界を滑らかにし、ノイズの影響を軽減しますが、明確なパターンをぼやけさせる可能性があり、その結果underfittingを招きます。

実社会での応用#

ディープニューラルネットワークと比較してシンプルであるにもかかわらず、KNNは、特に高度なfeature extraction技術と組み合わせた場合に、現代のAIにおいて非常に高い関連性を維持しています。

  • 推薦システム: KNNは、メディアストリーミングやEコマースにおけるcollaborative filteringを容易にします。同様の視聴履歴や購入行動を持つユーザー(近傍)を特定することで、プラットフォームは「最も近い近傍」の好みに基づいてユーザーが楽しむ可能性の高い商品を提案できます。
  • 異常検知: サイバーセキュリティや金融において、KNNはanomaly detectionに使用されます。トランザクションやネットワークアクティビティが特徴空間にマッピングされ、「正常な」アクティビティの密集したクラスターから遠く離れた位置にある新しいデータポイントは、潜在的な不正行為やセキュリティ侵害としてフラグが立てられます。
  • ビジュアル検索: 現代のvector searchエンジンは、YOLO26などのモデルによって生成された高次元のembeddingsに基づいて類似画像を迅速に取得するために、KNNの最適化されたバリエーションである近似近傍探索(ANN)アルゴリズムに依存することがよくあります。

課題と考慮事項#

効果的である一方で、KNNはcurse of dimensionality(次元の呪い)に直面します。特徴量(次元)の数が増加するにつれて、データポイントはスパース(疎)になり、距離メトリックはその有効性を失います。さらに、すべてのトレーニングデータを保存するため、KNNはメモリを大量に消費し、大規模なデータセットでは高いinference latencyに悩まされる可能性があります。これに対処するため、実務者は、Principal Component Analysis (PCA)などのdimensionality reduction技術を使用してデータを前処理したり、KD-Treesのような特殊なデータ構造を使用して検索を高速化したりすることがよくあります。データセットやモデルトレーニングのエンタープライズグレードのスケーリングには、Ultralytics Platformを利用することで、複雑なデータの前処理に必要な計算リソースの管理を支援できます。

KNNとK-Meansの区別#

K-Nearest NeighborsをK-Means clusteringと区別することが重要です。名前が似ているため混乱を招くことがよくあるためです。

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

実装例#

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

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の未来を共に築き上げましょう!

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