K 近鄰 是什麼?

K-Nearest Neighbors — K 近鄰 的完整解釋

K 近鄰演算法是一種基於實例的學習方法,透過找出距離最近的 K 個鄰居,以投票方式決定資料點的分類

容易混淆

K-Means K-NN 是有標籤分類,K-Means 是沒有標籤的分群。

決策樹 決策樹是先學規則再預測,K-NN 幾乎不先學,預測時才找鄰居。

記住這句就好

找最近的 K 個鄰居,多數決。

實際案例

電影推薦 系統找出和你觀影習慣最像的用戶,看他們最常看的片,再推薦給你。

醫療分級 病人的檢驗數值和歷史病例比對,找最像的幾個病例,判斷風險高低。

算法與應用

K-NN 是典型的惰性學習法,訓練幾乎不做事,真正的成本在預測。距離函數、特徵標準化和 K 值選擇都很重要,否則最近鄰未必真的「最近」。

情境判斷

Q1(直覺題): 如果你現在遇到一個 電影推薦 的場景,這個概念會是第一個想到的工具嗎? → 看情況,但如果任務目標和這個概念的用途一致,就很可能是。核心還是先確認你要解決的是分類、分群、壓縮、檢索,還是最佳化。

Q2(判斷題): 如果你把它和 決策樹 一起用,結果反而變不穩,通常該怎麼想? → 看情況。先檢查資料分布、特徵定義和模型假設是否相容,很多時候不是概念本身有問題,而是使用條件不對,像距離尺度沒對齊、標註規則不一致,或輸入格式不合。

相關術語

常見問題

K 近鄰 最容易跟 K-Means 混淆嗎?

K-NN 是有標籤分類,K-Means 是沒有標籤的分群。

什麼情況會用到 K 近鄰?

你可以把它想成找附近最像你的幾個人,看看多數人怎麼選,你就先跟著那個方向走。 實務上只要你要處理和這個概念相符的任務,就會用到它。

初學者最常錯在哪裡?

決策樹是先學規則再預測,K-NN 幾乎不先學,預測時才找鄰居。