統計學習方法 第三章 k近鄰法

2021-09-22 18:28:50 字數 1505 閱讀 9811

k近鄰法是一種基本的分類與回歸方法,這裡只討論分類問題中的k近鄰法。

演算法描述:首先給定乙個訓練集,對於待分類的輸入資料,在訓練集中找到與該輸入資料最鄰近的k個樣本,這k個樣本中哪個類別最多,就把待分類資料分給這個類。

k近鄰法沒有顯式的學習過程。

k近鄰法的三個基本要素:(當這三個要素確定後,任何乙個新的輸入例項,它所屬的類別唯一確定)

距離度量

距離度量是用來衡量樣本之間距離的,不同的距離度量,所確定的最近鄰點是不一樣的。

k值的選擇

k太大或太小都不好。如果太小,**結果會對近鄰的例項點很敏感,模型複雜,容易過擬合;如果太大,較遠處的(不相似的)例項點也會起作用。(最極端情況,k=n,無論輸入什麼,都被分到訓練集中最多的類,模型過於簡單)

k值的一般選取原則:一般取乙個比較小的值,通常採用交叉驗證來選取最佳k值。

分類決策規則

一般採取多數表決規則,(多數表決規則等價於經驗風險最小化)

kd樹是乙個二叉樹,平衡kd樹是每次對半分(從中位數處切)

例題:給定訓練集 t = ,構造平衡kd樹。

解法步驟:

分別在座標系中標出這六個點,分別記為a~f,如圖所示

在x1方向上,選擇中位數處的節點,將x1方向一分為二,如下圖紅線所示,f節點作為根節點。左半空間變成了左子樹,右半空間變成了右子樹。

在x2方向上,對於左半空間(左子樹),選擇中位數處的點b,在x2方向上切一刀,如紅線所示,b節點作為根節點的左節點;右半空間同理,選擇c點,在x2方向上切一刀,選擇c點作為根節點的右子節點。

對於節點b來說,它的下半部分即為它的左子樹,上半部分是它的右子樹,所以a為b的左節點,d為b的右節點。切法如下圖紅線所示。

5.這樣就能構造出乙個kd平衡樹:

需要解決的問題是:對於乙個給定的kd樹,如何用它來進行k近鄰搜尋。這裡只講最近鄰,k近鄰也是同理的。

例子:如下圖,s點是待分類點,求s的最近鄰。

步驟:先在kd樹中找到s點所屬的葉節點d(s落在d的區域內)

以d作為s的最近鄰,以s為圓心,d為半徑畫圓,真正的最近鄰一定在圓的內部。

最後得到點e是點s的最近鄰。

統計學習方法筆記 第三章 K近鄰法

k近鄰法 knn 是一種基本的分類與回歸的方法,這裡只介紹其分類問題。knn演算法的基本思想 對於乙個新的輸入資料點,在訓練集中找到與它距離最近的k個點,若這k個點中大部分屬於a類,則該資料點也屬於a類。演算法流程 特殊地,若k 1,則相當於離輸入例項最近的乙個樣本例項直接決定了它的類別。knn模型...

統計學習方法(第三章)k近鄰演算法

k近鄰演算法 knn是通過測量不同特徵值之間的距離進行分類。它的的思路是 如果乙個樣本在特徵空間中的k個最相似 即特徵空間中最鄰近 的樣本中的大多數屬於某乙個類別,則該樣本也屬於這個類別。k通常是不大於20的整數。knn演算法中,所選擇的鄰居都是已經正確分類的物件。該方法在定類決策上只依據最鄰近的乙...

《統計學習方法》第三章 k近鄰演算法

給定乙個訓練集,對新的輸入例項,在訓練資料集彙總找到與該例項最鄰近的k個例項,這k個例項的多數屬於某個類,就把該輸入例項分為這個類.2.1 距離度量 特徵空間中兩個例項點的距離是兩個例項點相似程度的反映.距離度量可以使用歐式距離,或更一般的lp距離 minkowski距離.2.2 k值的選擇 在應用...