K-Means 看「離中心多近」,DBSCAN 則看「點擠不擠」。它把高密度的區域連成一群、把落單的點當成雜訊。好處是:不必先決定群數、能分出環形/月形這種怪形狀、還會自動標出離群點。
一句話:把「擠在一起」的點連成一群,落單的當雜訊。
DBSCAN 先用兩個參數把每個點分成三類。
切換資料形狀、調 ε 與 MinPts。滑鼠移到任一點上,會畫出它的 ε 搜尋圈並高亮鄰居。
| 比較 | DBSCAN | K-Means |
|---|---|---|
| 依據 | 密度(點擠不擠) | 到中心的距離 |
| 要先定 K? | 不用 | 要 |
| 群形狀 | 任意(環形、月形也行) | 偏球狀、大小相近 |
| 雜訊/離群 | 自動標出(可做異常偵測) | 沒有雜訊概念、對離群敏感 |
| 參數 | ε、MinPts | K |
先想再點開。
密度。用 ε(鄰域半徑)與 MinPts(成為核心點所需鄰居數)定義稠密區,把相連的稠密區連成一群,密度不足的點標為雜訊。
核心點:ε 內鄰居 ≥ MinPts;邊界點:鄰居不足,但落在某核心點的 ε 內;雜訊:都不是 → 離群。
不需先定 K、能找任意形狀的群(環形/月形)、會自動標出雜訊與離群;K-Means 要 K、只找球狀、對離群敏感。
用 k-距離圖找手肘轉折估 ε(MinPts 約 2×維度)。限制:各群密度差異大時單一參數難適配(用 HDBSCAN)、高維失效。
DBSCAN 是基於密度的分群法,iPAS 中級科目三考點。重點:把高密度區連成群、低密度點視為雜訊,不需先指定群數、能找任意形狀的群並自動偵測離群。易混點:與 K-means 差很多——K-means 需定 k、只找球狀、對離群敏感;DBSCAN 靠 eps(鄰域半徑)與 minPts 兩參數,對密度差異大的資料較吃力(可用 HDBSCAN)。情境:離群偵測、不規則形狀分群。
想練情境題與詳解 → AI 學習與考證地圖
以密度為基礎:用 eps(鄰域半徑)與 minPts(成為核心點所需的鄰居數)定義稠密區,把相連的稠密區聚成一群,密度不足的點標為雜訊(離群)。
不需事先指定群數、能找出任意形狀的群、能自動標出雜訊與離群點;K-means 需給 K 且假設群為球形。
minPts 經驗上常取約 2 倍維度;eps 可用 k-距離圖(把每點到第 k 近鄰的距離排序,找曲線的手肘轉折)來估,兩者需一起調。
當各群密度差異很大時,單一組 eps/minPts 難以同時適配(可改用 HDBSCAN);高維時距離鑑別力下降也會變難。
既不是核心點、也不在任何核心點鄰域內的點;能自然處理離群值是 DBSCAN 的特色。