Ultralytics YOLO27:
Ultralytics用語集に戻る

K-Nearest Neighbors (KNN)

K-Nearest Neighbors(KNN)について説明します。この教師あり学習アルゴリズムが分類と回帰で機能する仕組み、ビジュアル検索での利用、Ultralytics YOLO26との統合について学びます。

K最近傍法(KNN)は、分類と回帰の両方のタスクで教師あり学習の分野で使用される、堅牢で直感的なアルゴリズムです。KNNはシンプルであることから、トレーニングフェーズ中にモデルを構築したりパラメーターを学習したりしないため、「遅延学習器」と分類されることがよくあります。その代わり、トレーニングデータセット全体を記憶し、予測が要求されたときにのみ計算を実行します。このアルゴリズムの中核となる原理は特徴量の類似性に基づいており、多次元の特徴空間内では、属性が類似するデータポイント同士が近接して存在すると仮定します。

アルゴリズムの動作#

K最近傍法の仕組みは、距離の計算によって動作します。新しいクエリポイントが入力されると、アルゴリズムは保存されたデータセットを検索し、新しい入力に最も近い「K」個のトレーニングサンプルを見つけます。

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

  2. 近傍の選択: 距離を計算した後、アルゴリズムは距離を並べ替え、最も近い上位「K」個のエントリを特定します。

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

適切な「K」の選択#

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

  • 低いK値: 小さいK(例: K=1)では、モデルがデータ内のノイズや外れ値に非常に敏感になり、過学習につながる可能性があります。
  • 高いK値: 大きいKでは決定境界が平滑化され、ノイズの影響が軽減される一方で、明確なパターンがぼやける可能性があり、未学習が発生します。

実世界での利用例#

ディープニューラルネットワークと比較するとシンプルでありながら、KNNは現代のAIでも依然として高い関連性があり、特に高度な特徴抽出技術と組み合わせた場合に有用です。

  • レコメンデーションシステム: KNNは、メディアストリーミングやeコマースにおける協調フィルタリングを実現します。視聴履歴や購入行動が類似するユーザー(近傍)を特定することで、プラットフォームは「最近傍」のユーザーの好みに基づいて、ユーザーが気に入る可能性の高い商品を提案できます。
  • 異常検知: サイバーセキュリティや金融の分野では、KNNが異常検知に使用されます。取引やネットワークアクティビティは特徴空間にマッピングされ、「正常な」アクティビティの密なクラスタから大きく離れた新しいデータポイントは、不正行為やセキュリティ侵害の可能性があるとしてフラグ付けされます。
  • ビジュアル検索: 最新のベクトル検索エンジンでは、高次元の埋め込みに基づいて類似画像を迅速に取得するため、KNNを最適化した変種である近似最近傍(ANN)アルゴリズムに依存することがよくあります。これらの埋め込みは、YOLO26などのモデルによって生成されます。

課題と考慮事項#

KNNは効果的である一方、次元の呪いに直面します。特徴量(次元)の数が増えるとデータポイントが疎になり、距離指標の有効性が失われます。さらに、KNNはすべてのトレーニングデータを保存するため、メモリを大量に消費する可能性があり、大規模なデータセットでは推論レイテンシが高くなることがあります。これに対処するため、実務では次元削減技術(主成分分析(PCA)など)を使用してデータを前処理したり、KD-Treesなどの特殊なデータ構造を使用して検索を高速化したりします。データセットとモデルのトレーニングをエンタープライズ規模でスケーリングする場合は、Ultralytics Platformを利用することで、複雑なデータの前処理に必要なコンピュートリソースを管理できます。

KNNとK-Meansの違い#

名前が似ているため混同されることが多いK最近傍法とK-Meansクラスタリングを区別することが重要です。

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

実装例#

次のコードスニペットは、広く利用されている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

航空画像向けコンピュータービジョン

航空画像向けコンピュータービジョン

Ultralytics YOLOを使用して、ドローンや航空画像から農業、水産業、環境モニタリング、保全、地理空間分析向けのリアルタイムなインサイトを生成します。
詳細を見る
航空宇宙におけるコンピュータビジョン

航空宇宙におけるコンピュータビジョン

Ultralytics YOLOモデルを使用して、ビジョンAIを空中モニタリングに導入します。コンピュータビジョンソリューションで、ドローン、航空宇宙ワークフロー、環境保護、および地理空間産業を強力にサポートします。
詳細を見る

Ultralytics YOLOモデルであらゆるサイトを保護します。ビジョンAIは、境界モニタリング、脅威検出、ナンバープレート認識、職場安全をサポートします。
詳細を見る
ロボティクスのコンピュータービジョン

ロボティクスのコンピュータービジョン

Ultralytics YOLOモデルで、よりスマートなマシンを実現します。ロボティクスのVision AIにより、自律ナビゲーション、認識、物体追跡、リアルタイム制御を実現します。
詳細を見る
物流のコンピュータービジョン

物流のコンピュータービジョン

Ultralytics YOLOモデルで物流を効率化します。Vision AIにより、荷物検査、仕分け、車両追跡、倉庫の安全性に関するリアルタイム監視を実現します。
詳細を見る
小売のコンピュータービジョン

小売のコンピュータービジョン

Ultralytics YOLOモデルで小売を再構築します。Vision AIにより、在庫追跡、棚監視、待ち行列管理、より高度な顧客インサイトを実現します。
詳細を見る
ヘルスケア向けコンピュータービジョン

ヘルスケア向けコンピュータービジョン

Ultralytics YOLOモデルでヘルスケアソリューションを構築しましょう。ヘルスケア向けVision AIは、医用画像処理の高速化、より高度な診断、患者モニタリングを実現します。
詳細を見る
製造業向けコンピュータービジョン

製造業向けコンピュータービジョン

Ultralytics YOLOモデルで製造業を最適化しましょう。Vision AIは、品質管理、欠陥検出、PPE遵守、組立ラインの自動化を推進します。
詳細を見る
自動車分野のコンピュータビジョン

自動車分野のコンピュータビジョン

Ultralytics YOLOモデルで自動車分野にコンピュータビジョンを適用します。ビジョンAIにより、道路の安全性、運転支援、車両自動化を向上させ、よりスマートな道路を実現します。
詳細を見る
農業分野のコンピュータビジョン

農業分野のコンピュータビジョン

Ultralytics YOLOモデルでスマート農業にビジョンAIを導入します。作物のモニタリング、家畜の追跡、精密農業を支援し、より高くスマートな収穫量を実現します。
詳細を見る
航空画像向けコンピュータービジョン

航空画像向けコンピュータービジョン

Ultralytics YOLOを使用して、ドローンや航空画像から農業、水産業、環境モニタリング、保全、地理空間分析向けのリアルタイムなインサイトを生成します。
詳細を見る
航空宇宙におけるコンピュータビジョン

航空宇宙におけるコンピュータビジョン

Ultralytics YOLOモデルを使用して、ビジョンAIを空中モニタリングに導入します。コンピュータビジョンソリューションで、ドローン、航空宇宙ワークフロー、環境保護、および地理空間産業を強力にサポートします。
詳細を見る

Ultralytics YOLOモデルであらゆるサイトを保護します。ビジョンAIは、境界モニタリング、脅威検出、ナンバープレート認識、職場安全をサポートします。
詳細を見る
ロボティクスのコンピュータービジョン

ロボティクスのコンピュータービジョン

Ultralytics YOLOモデルで、よりスマートなマシンを実現します。ロボティクスのVision AIにより、自律ナビゲーション、認識、物体追跡、リアルタイム制御を実現します。
詳細を見る
物流のコンピュータービジョン

物流のコンピュータービジョン

Ultralytics YOLOモデルで物流を効率化します。Vision AIにより、荷物検査、仕分け、車両追跡、倉庫の安全性に関するリアルタイム監視を実現します。
詳細を見る
小売のコンピュータービジョン

小売のコンピュータービジョン

Ultralytics YOLOモデルで小売を再構築します。Vision AIにより、在庫追跡、棚監視、待ち行列管理、より高度な顧客インサイトを実現します。
詳細を見る
ヘルスケア向けコンピュータービジョン

ヘルスケア向けコンピュータービジョン

Ultralytics YOLOモデルでヘルスケアソリューションを構築しましょう。ヘルスケア向けVision AIは、医用画像処理の高速化、より高度な診断、患者モニタリングを実現します。
詳細を見る
製造業向けコンピュータービジョン

製造業向けコンピュータービジョン

Ultralytics YOLOモデルで製造業を最適化しましょう。Vision AIは、品質管理、欠陥検出、PPE遵守、組立ラインの自動化を推進します。
詳細を見る
自動車分野のコンピュータビジョン

自動車分野のコンピュータビジョン

Ultralytics YOLOモデルで自動車分野にコンピュータビジョンを適用します。ビジョンAIにより、道路の安全性、運転支援、車両自動化を向上させ、よりスマートな道路を実現します。
詳細を見る
農業分野のコンピュータビジョン

農業分野のコンピュータビジョン

Ultralytics YOLOモデルでスマート農業にビジョンAIを導入します。作物のモニタリング、家畜の追跡、精密農業を支援し、より高くスマートな収穫量を実現します。
詳細を見る
航空画像向けコンピュータービジョン

航空画像向けコンピュータービジョン

Ultralytics YOLOを使用して、ドローンや航空画像から農業、水産業、環境モニタリング、保全、地理空間分析向けのリアルタイムなインサイトを生成します。
詳細を見る
航空宇宙におけるコンピュータビジョン

航空宇宙におけるコンピュータビジョン

Ultralytics YOLOモデルを使用して、ビジョンAIを空中モニタリングに導入します。コンピュータビジョンソリューションで、ドローン、航空宇宙ワークフロー、環境保護、および地理空間産業を強力にサポートします。
詳細を見る

Ultralytics YOLOモデルであらゆるサイトを保護します。ビジョンAIは、境界モニタリング、脅威検出、ナンバープレート認識、職場安全をサポートします。
詳細を見る
ロボティクスのコンピュータービジョン

ロボティクスのコンピュータービジョン

Ultralytics YOLOモデルで、よりスマートなマシンを実現します。ロボティクスのVision AIにより、自律ナビゲーション、認識、物体追跡、リアルタイム制御を実現します。
詳細を見る
物流のコンピュータービジョン

物流のコンピュータービジョン

Ultralytics YOLOモデルで物流を効率化します。Vision AIにより、荷物検査、仕分け、車両追跡、倉庫の安全性に関するリアルタイム監視を実現します。
詳細を見る
小売のコンピュータービジョン

小売のコンピュータービジョン

Ultralytics YOLOモデルで小売を再構築します。Vision AIにより、在庫追跡、棚監視、待ち行列管理、より高度な顧客インサイトを実現します。
詳細を見る
ヘルスケア向けコンピュータービジョン

ヘルスケア向けコンピュータービジョン

Ultralytics YOLOモデルでヘルスケアソリューションを構築しましょう。ヘルスケア向けVision AIは、医用画像処理の高速化、より高度な診断、患者モニタリングを実現します。
詳細を見る
製造業向けコンピュータービジョン

製造業向けコンピュータービジョン

Ultralytics YOLOモデルで製造業を最適化しましょう。Vision AIは、品質管理、欠陥検出、PPE遵守、組立ラインの自動化を推進します。
詳細を見る
自動車分野のコンピュータビジョン

自動車分野のコンピュータビジョン

Ultralytics YOLOモデルで自動車分野にコンピュータビジョンを適用します。ビジョンAIにより、道路の安全性、運転支援、車両自動化を向上させ、よりスマートな道路を実現します。
詳細を見る
農業分野のコンピュータビジョン

農業分野のコンピュータビジョン

Ultralytics YOLOモデルでスマート農業にビジョンAIを導入します。作物のモニタリング、家畜の追跡、精密農業を支援し、より高くスマートな収穫量を実現します。
詳細を見る

AIの未来を一緒に築きましょう!

機械学習の未来への歩みを始めましょう