knn常見問題彙總

2021-07-22 03:14:14 字數 2650 閱讀 9766

knn演算法又稱為k最近鄰

(k-nearest neighbor class

ification)

分類演算法。所謂的k最近鄰,就是指最接近的k個鄰居(資料),即每個樣本都可以由它的k個鄰居來表達。

knn演算法的核心思想是,在乙個含未知樣本的空間,可以根據離這個樣本最鄰近的k個樣本的資料型別來確定樣本的資料型別。

該演算法涉及3個主要因素:訓練集、距離

與相似的衡量、k的大小;

主要考慮因素:距離

與相似度的;

右圖中,綠色圓要被決定賦予哪個類,是紅色三角形還是藍色四方形?

如果k=3,由於紅色三角形所佔比例為2/3,綠色圓將被賦予紅色三角形那個類,如果k=5,由於藍色四方形比例為3/5,因此綠色圓被賦予藍色四方形類。

這裡有基於knn演算法的在matlab平台上的例項**:

knn演算法不僅可以用於分類,還可以用於過渡,比如在兩個色度之間取過渡色。

knn演算法當前主要使用

加權投票法,即

根據距離的遠近,對近鄰的投票進行加權,距離越近則權重越大(權重為距離平方的倒數)。

優點:易於實現

,無需估計引數,無需

訓練,支援增量學習,

能對超多邊形的複雜決策空間建模;

缺點:就是計算量較大,分析速度慢;

1、k值設定為多大?

k太小,分類結果易受雜訊點影響;k太大,近鄰中又可能包含太多的其它類別的點。(對距離加權,可以降低k值設定的影響)k值通常是採用交叉檢驗來確定(以k=1為基準)經驗規則:k一般低於訓練樣本數的平方根

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

投票法沒有考慮近鄰的距離的遠近,距離更近的近鄰也許更應該決定最終的分類,所以加權投票法更恰當一些。

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

高維度對距離衡量的影響:眾所周知當變數數越多,歐式距離的區分能力就越差。變數值域對距離的影響:值域越大的變數常常會在距離計算中佔據主導作用,因此應先對變數進行標準化。

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

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

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

5、效能問題?

knn是一種懶惰演算法,平時不好好學習,考試(對測試樣本分類)時才臨陣磨槍(臨時去找k個近鄰)。懶惰的後果:構造模型很簡單,但在對測試樣本分類地的系開銷大,因為要掃瞄全部訓練樣本並計算距離。

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

6、能否大幅減少訓練樣本量,同時又保持分類精度?

濃縮技術(condensing)、

編輯技術(editing)、

該小結內容節選自

基本思想:

根據傳統的向量空間模型, 文字內容被形式化為特徵空間中的加權特徵向量, 即 d=d(t1, w1; t2, w2; …; tn,wn)。

對於乙個測試文字, 計算它與訓練樣本集中每個文字的相似度, 找出 k 個最相似的文字, 根據加權距離和判斷測試文字所屬的類別。

即把每個資料形式化成多維度的向量資料,然後,把要測試的資料跟訓練樣本集中的向量進行相似度乘法,算出兩者的相似度,以此來決定該向量的分類。

具體演算法步驟如下:

(1) 對於乙個測試文字, 根據特徵詞形成測試文字向量。

(2) 計算該測試文字與訓練集中每個文字的文字相似度, 計算公式為:

式中: di 為測試文字的特徵向量,dj 為第 j 類的中心向量; m為特徵向量的維數; wk 為向量的第 k 維。k值的確定一般先採用乙個初始值, 然後根據實驗測試的結果調整 k 值, 一般初值定為幾百到幾千。

(3) 按照文字相似度, 在訓練文字集中選出與測試文字最相似的 k 個文字。

(4) 在測試文字的 k 個近鄰中, 依次計算每類的權重, 計算公式如下:

式中: x 為測試文字的特徵向量; sim(x,di) 為相似度計算公式; b 為閾值, 有待於優化選擇; 而 y(di,cj)的取值為 1 或 0, 如果 di 屬於 cj, 則函式值為 1, 否則為 0。

(5) 比較類的權重, 將文字分到權重最大的那個類別中。

knn 演算法的主要缺點是, 當訓練樣本數量很大時將導致很高的計算開銷。knn 演算法是懶散的分類演算法, 對於分類所需的計算都推遲到分類時才進行, 在其分類器中儲存有大量的樣本向量, 在未知類別樣本需要分類時, 再計算和所有儲存樣本的距離, 對於高維文字向量或樣本集規模較大的情況, 其時間和空間複雜度較高。

特徵降維&模式聚合

:(在精度下降有限的前提下,降低維度,減少演算法的計算量)

基於 fuzzy art 的 k- 最近鄰分類改進演算法,該演算法用模糊自適應共振理論(fuzzy art)對 k- 最近鄰的訓練樣本集進行濃縮, 以改善 k- 最近鄰的計算速度。

chi 概率統計方法進行初步特徵提取和模式聚合;(如果某一維在各個類別中取值基本相同, 那麼此維對於文字分類的貢獻率就相對較低, 如果在各個類別中取值有較大的差異, 那麼就具有較強的文字分類能力, 而方差正好是反應變數分布均勻狀態的主要指標。)

可引入cla(classifier』s local accuracy)技術進行分類可信度分析以實現兩種演算法的融合

Oracle常見問題彙總

1 如果建立了多個oracle例項,那麼訪問em的時候預設訪問的是第乙個例項的,如何訪問第二個呢?看下這個檔案就會明白了 oracle home install portlist.ini enterprise manager console http 埠 shili1 1158 enterprise...

ab常見問題彙總

測試伺服器ab 被測試伺服器apache apache版本2.2.25 問題一 socket too many open files 24 解決 在測試伺服器操作 1 檢視當前系統設定 open files n 1024為1024 root localhost ulimit a core file ...

EditText常見問題彙總

android edittext常見的一寫處理方法彙總,這裡會不斷更新。方案一 在 androidmainfest.xml中選擇哪個activity,設定windowsoftinputmode屬性為 adjustunspecified statehidden 這種方案只是讓鍵盤不顯示,並不能讓edi...