面試回答 KNN和K Means的區別?

2021-10-03 01:13:02 字數 1083 閱讀 2580

一、knn和k-means的區別?

區別knn是一種監督學習演算法,解決分類問題,而k-means是非監督學習演算法,解決聚類問題。

knn是人為選定k,含義是考察k個最近的樣本,決定未知樣本的所屬分類,沒有明顯的訓練過程。

k-means也是人為選定k,含義是k個聚類中心,計算樣本到聚類中心的距離,得到初步的聚類結果,再由聚類結果更新聚類中心,迭代直至聚類中心不再變化為止。

相似點k值得選取會影響到分類/聚類結果。

都利用到了最近鄰的思想(nn,nears neighbor)。

二、knn的三要素是什麼並解釋?

k值的選取。

如下圖所示,綠色圓形未知樣本的分類與k值得選取密切相關。預設未知樣本屬於多數樣本規則的前提下,當k選3,時結果為三角形,當k取5時,結果為正方形。

k值的選擇還影響到模型的複雜度,k越小模型越複雜,k越大模型越簡單。考慮極端情況,k選擇整個資料集,如果用多數表決法,距離都不用算,未知樣本一定屬於佔比最多的那類樣本,模型就簡單,因為每次結果都一樣的。

距離的度量。

即採用什麼樣的距離度量標準,因為不同的距離計算公式,會決定未知樣本最近的樣本是哪些,進而影響到最終的分類結果。

常見的距離度量標準

歐式距離

空間中有兩個點a(x1,y1) b(x2,y2),距離d(a, b)=sqrt((x1-x2)^2 + (y1-y2)^2)。

曼哈頓距離

空間中有兩個點a(x1,y1) b(x2,y2),距離d(a, b)=|x1−x2|+|y1−y2|。

分類決策規則的選擇

k值選好了,距離算出來了,怎麼決定未知樣本的分類呢?

預設的分類決策規則是多數表決法,就是前面用到的,誰多,未知樣本就是誰那一類的。所謂近朱者赤近墨者黑。

有人可能會覺得這個規則不合理,直觀上覺得綠色圓就應該屬於三角形,因為圖里那兩個三角形離它太近了。所以又有新的分類決策規則:

加權多數表決法。

也就是說,不光考慮數量,還得考慮距離,距離近的樣本獲得的權重大,影響就大,遠的樣本權重小,影響就小。

KNN和K means深入理解

目標 1.knn 英文 2.knn的計算步驟 3.k means英文 4.k means計算步驟 1.knn knn,k nearestneighbor,k鄰近演算法 2.knn的計算步驟 1 算距離 給定測試物件,計算它與訓練集中的每個物件的距離 2 找鄰居 圈定距離最近的k個訓練物件,作為測試物...

KNN與K Means的區別

wikipedia上的 knn詞條 中有乙個比較經典的圖如下 knn的演算法過程是是這樣的 從上圖中我們可以看到,圖中的資料集是良好的資料,即都打好了label,一類是藍色的正方形,一類是紅色的三角形,那個綠色的圓形是我們待分類的資料。如果k 3,那麼離綠色點最近的有2個紅色三角形和1個藍色的正方形...

KNN與K Means的區別

from wikipedia上的 knn詞條 中有乙個比較經典的圖如下 knn的演算法過程是是這樣的 從上圖中我們可以看到,圖中的資料集是良好的資料,即都打好了label,一類是藍色的正方形,一類是紅色的三角形,那個綠色的圓形是我們待分類的資料。如果k 3,那麼離綠色點最近的有2個紅色三角形和1個藍...