K 近鄰(K-Nearest Neighbors)是什麼?

K 近鄰演算法是一種基於實例的學習方法,透過找出距離最近的 K 個鄰居,以投票方式決定資料點的分類|本頁含完整原理、應用場景、iPAS 考試重點與 3 個常見問答。

K 近鄰(K-Nearest Neighbors)是什麼? 機器學習統計方法

你遇到新資料時,為什麼只看最像它的幾個例子,就能做判斷?

你可以把它想成找附近最像你的幾個人,看看多數人怎麼選,你就先跟著那個方向走。

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

你可以把它想成一個把抽象概念拉回日常判斷的提示,先知道它解決什麼問題,再看技術細節。

容易混淆

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

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

記住這句就好

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

實際案例

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

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

算法與應用

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

情境判斷

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

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

iPAS 考題

出題方向: 這類概念常考定義、差異和實務用法。 題目 關於 K 近鄰演算法,下列何者正確? → 答案:C。 KNN 是惰性學習法,預測時才計算距離並做投票。A 錯在它不會先建立明確模型,B 錯在 K 越大不一定越準,D 錯在它也可以做回歸。

常見問題

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

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

什麼情況會用到 K 近鄰?

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

初學者最常錯在哪裡?

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