1. 程式人生 > >KNN分類算法補充

KNN分類算法補充

根據 標準 方法 補充 算法 經驗 影響 進行 是否

KNN補充:

1、K值設定為多大?

k太小,分類結果易受噪聲點影響;k太大,近鄰中又可能包含太多的其它類別的點。

(對距離加權,可以降低k值設定的影響)

k值通常是采用交叉檢驗來確定(以k=1為基準)

經驗規則:k一般低於訓練樣本數的平方根

2、類別如何判定最合適?

加權投票法更恰當一些。而具體如何加權,需要根據具體的業務和數據特性來探索

3、如何選擇合適的距離衡量?

高維度對距離衡量的影響:眾所周知當變量數越多,歐式距離的區分能力就越差。

變量值域對距離的影響:值域越大的變量常常會在距離計算中占據主導作用,因此應先對變量進行標準化。

4、訓練樣本是否要一視同仁?

在訓練集中,有些樣本可能是更值得依賴的。

也可以說是樣本數據質量的問題

可以給不同的樣本施加不同的權重,加強依賴樣本的權重,降低不可信賴樣本的影響

5、性能問題?

KNN是一種懶惰算法,平時不好好學習,考試(對測試樣本分類)時才臨陣磨槍(臨時去找k個近鄰)。

懶惰的後果:構造模型很簡單,但在對測試樣本分類的系統開銷大,因為要掃描全部訓練樣本並計算距離。

已經有一些方法提高計算的效率,例如壓縮訓練樣本量等。

KNN分類算法補充