一種基于中心向量的knn分類器訓(xùn)練樣本裁剪方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及數(shù)據(jù)挖掘分類技術(shù)領(lǐng)域,具體來說是一種基于中心向量的KNN分類器 訓(xùn)練樣本裁剪方法。
【背景技術(shù)】
[0002] KNN分類算法是一種典型的非參數(shù)的惰性學(xué)習(xí)方法,比較簡(jiǎn)單,實(shí)現(xiàn)起來比較容 易,在很多領(lǐng)域得到廣泛使用,如CP-KNN(天氣預(yù)報(bào))可以高精度的同時(shí)預(yù)測(cè)十七個(gè)氣候?qū)?性、酶的種類預(yù)測(cè)等。KNN的不足之處主要體現(xiàn)在四個(gè)方面,分類速度慢、屬性等同權(quán)重影響 了準(zhǔn)確率、樣本庫容量依懶性較強(qiáng)以及K值的確定問題。分類速度慢問題的實(shí)質(zhì)是由于KNN 是一種基于實(shí)例的分類方法,即在分類時(shí)需要分別計(jì)算待分類樣本和每個(gè)樣本之間的相似 性,按向量距離來度量,其時(shí)間復(fù)雜度與樣本數(shù)成正比,導(dǎo)致其分類速度慢,尤其是訓(xùn)練樣 本集較大時(shí),計(jì)算開銷非常高,難以在大規(guī)模海量信息處理中得到有效應(yīng)用。
[0003] 針對(duì)KNN分類算法計(jì)算量大、分類速度慢問題,目前的解決辦法主要是通過壓縮 訓(xùn)練樣本空間來改善,近年來學(xué)者們提出了許多改進(jìn)方法,如已經(jīng)提出了一種基于近鄰搜 索的快速KNN分類算法-超球搜索法。該方法通過對(duì)特征空間的預(yù)處理,使得能在以待分 樣本中心的超球內(nèi)進(jìn)行。K預(yù)先設(shè)定,然后增大超球半徑直至超球內(nèi)包含K個(gè)以上樣本為 止。縮小了算法搜索范圍,此外還可以通過加快搜索速度,如選一個(gè)基點(diǎn),并以此對(duì)所有其 他樣本按照距基準(zhǔn)樣本的距離進(jìn)行排序并建立索引表,分類時(shí)可以快速查找k個(gè)最近鄰, 減小查找范圍。當(dāng)前有學(xué)者從減少了相似度計(jì)算次數(shù)出發(fā),先將訓(xùn)練集中相似度大的文本 合并稱為一個(gè)簇,計(jì)算簇的中心向量,計(jì)算待分類文本和簇的中心向量的相似度,達(dá)到給定 閾值時(shí)再計(jì)算待分類文本和簇中每個(gè)文本的相似度。還有學(xué)者提出了結(jié)合向量投影理論以 及iDistance索引結(jié)構(gòu),通過比較待分類樣本和訓(xùn)練樣本的一維投影距離,獲得了最有可 能的臨近樣本點(diǎn),減少了訓(xùn)練樣本數(shù)。
[0004] 如何開發(fā)出一種能夠以KNN類中心剔除最不可能參與分類的樣本,利用形成新的 樣本集代替大量的原始樣本的裁剪方法,從而縮減KNN算法執(zhí)行時(shí)間,已經(jīng)成為急需解決 的技術(shù)問題。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明的目的是為了解決現(xiàn)有技術(shù)中KNN分類速度慢的缺陷,提供一種基于中心 向量的KNN分類器訓(xùn)練樣本裁剪方法來解決上述問題。
[0006] 為了實(shí)現(xiàn)上述目的,本發(fā)明的技術(shù)方案如下:
[0007]一種基于中心向量的KNN分類器訓(xùn)練樣本裁剪方法,包括以下步驟:
[0008] 將樣本集按決策屬性進(jìn)行子集劃分,劃分訓(xùn)練樣本和待測(cè)樣本,將訓(xùn)練樣本歸入 樣本數(shù)據(jù)集U,將樣本數(shù)據(jù)集U按照決策屬性種類數(shù)D,進(jìn)行子集劃分,分成n個(gè)子集合 (U1; U2, U3,. . . , Un);
[0009]計(jì)算子集合的中心向量,利用K-Means方法或K-中心方法,計(jì)算出n個(gè)子集合 (U1;U2,U3, ? ? ?,Un)的中心向量,記為CJQ,c2,c3, ? ? ?,cn);
[0010] 界定混合樣本數(shù)據(jù)集的范圍,對(duì)于任意樣本i,計(jì)算i到所有中心向量 CjCi,c2,c3, ? ? ?,cn)的距離;
[0011] 若i到其所屬的樣本集合的中心向量的距離大于其他中心向量的距離,將此樣本 i加入到混合數(shù)據(jù)集S中;否則,將此樣本i放入集合L中;
[0012] 計(jì)算混合數(shù)據(jù)集S的中心向量,記為cs;
[0013] 設(shè)定判別規(guī)則,利用混合樣本集及子集合的中心向量進(jìn)行樣本預(yù)測(cè),實(shí)現(xiàn)樣本集 的裁剪壓縮及預(yù)測(cè)分類;
[0014] 對(duì)于待測(cè)樣本t,計(jì)算t與中心向量Cn、Cs的距離;
[0015] 若t到混合數(shù)據(jù)集S的中心向量Cs的距離小于其他中心向量Cn,則在混合數(shù)據(jù)集 S上對(duì)待測(cè)樣本t進(jìn)行KNN方法分類;否則,把離其最近的中心向量的類標(biāo)號(hào)賦予樣本t,且 此樣本t被錯(cuò)分類,將此樣本t放入集合L中。
[0016] 還包括集合L的處理,其包括以下步驟:
[0017] 分別針對(duì)集合L的樣本t,計(jì)算其到混合數(shù)據(jù)集S的中心向量Cs的距離X ;
[0018] 對(duì)距離X進(jìn)行從小至大排序;
[0019] 根據(jù)需要選擇適量的距離X較小的樣本t加入混合數(shù)據(jù)集S。
[0020] 所述的決策屬性種類數(shù)D具體定義如下:
[0021] 若決策屬性D具有m個(gè)不同的取值,定義了m個(gè)不同的類Cji= 1,2,…,m),mjP 為決策屬性第i種可能的取值。
[0022] 所述的中心向量(;中C』類的中心向量計(jì)算公式如下:
[0023]
【主權(quán)項(xiàng)】
1. 一種基于中心向量的KNN分類器訓(xùn)練樣本裁剪方法,其特征在于,包括以下步驟: 11) 將樣本集按決策屬性進(jìn)行子集劃分,劃分訓(xùn)練樣本和待測(cè)樣本,將訓(xùn)練樣本歸入 樣本數(shù)據(jù)集U,將樣本數(shù)據(jù)集U按照決策屬性種類數(shù)D,進(jìn)行子集劃分,分成n個(gè)子集合 (U1;U2,U3,. . . ,Un); 12) 計(jì)算子集合的中心向量,利用K-Means方法或K-中心方法,計(jì)算出n個(gè)子集合 (U1;U2,U3, ? ? ?,Un)的中心向量,記為CJQ,C2,C3, ? ? ?,Cn); 13) 界定混合樣本數(shù)據(jù)集的范圍,對(duì)于任意樣本i,計(jì)算i到所有中心向量 (UQ,C2,C3, ? ? ?,Cn)的距離; 若i到其所屬的樣本集合的中心向量的距離大于其他中心向量的距離,將此樣本i加 入到混合數(shù)據(jù)集S中;否則,將此樣本i放入集合L中; 14) 計(jì)算混合數(shù)據(jù)集S的中心向量,記為Cs; 15) 設(shè)定判別規(guī)則,利用混合樣本集及子集合的中心向量進(jìn)行樣本預(yù)測(cè),實(shí)現(xiàn)樣本集的 裁剪壓縮及預(yù)測(cè)分類; 對(duì)于待測(cè)樣本t,計(jì)算t與中心向量Cn、Cs的距離; 若t到混合數(shù)據(jù)集S的中心向量Cs的距離小于其他中心向量Cn,則在混合數(shù)據(jù)集S上 對(duì)待測(cè)樣本t進(jìn)行KNN方法分類;否則,把離其最近的中心向量的類標(biāo)號(hào)賦予樣本t,且此 樣本t被錯(cuò)分類,將此樣本t放入集合L中。
2. 根據(jù)權(quán)利要求1所述的一種基于中心向量的KNN分類器訓(xùn)練樣本裁剪方法,其特征 在于,還包括集合L的處理,其包括以下步驟: 21) 分別針對(duì)集合L的樣本t,計(jì)算其到混合數(shù)據(jù)集S的中心向量Cs的距離X; 22) 對(duì)距離X進(jìn)行從小至大排序; 23) 根據(jù)需要選擇適量的距離X較小的樣本t加入混合數(shù)據(jù)集S。
3. 根據(jù)權(quán)利要求1所述的一種基于中心向量的KNN分類器訓(xùn)練樣本裁剪方法,其特征 在于,所述的決策屬性種類數(shù)D具體定義如下: 若決策屬性D具有m個(gè)不同的取值,定義了m個(gè)不同的類Cji= 1,2,…,m),mi即為 決策屬性第i種可能的取值。
4. 根據(jù)權(quán)利要求1所述的一種基于中心向量的KNN分類器訓(xùn)練樣本裁剪方法,其特征 在于,所述的中心向量(;中q類的中心向量計(jì)算公式如下:
其中,C/為k個(gè)條件屬性時(shí)類C」的中心向量;n為樣本數(shù)目;為類j時(shí)第k個(gè)屬性 第n個(gè)樣本。
【專利摘要】本發(fā)明涉及一種基于中心向量的KNN分類器訓(xùn)練樣本裁剪方法,與現(xiàn)有技術(shù)相比解決了KNN分類速度慢的缺陷。本發(fā)明包括以下步驟:將樣本集按決策屬性進(jìn)行子集劃分;計(jì)算子集合的中心向量;界定混合樣本數(shù)據(jù)集的范圍;計(jì)算混合數(shù)據(jù)集<i>S</i>的中心向量,記為<i>Cs</i>;設(shè)定判別規(guī)則,利用混合樣本集及子集合的中心向量進(jìn)行樣本預(yù)測(cè),實(shí)現(xiàn)樣本集的裁剪壓縮及預(yù)測(cè)分類。本發(fā)明提高了KNN算法執(zhí)行效率,不僅可以克服了KNN分類速度慢的缺陷,而且還可保持較高的分類準(zhǔn)確率。
【IPC分類】G06F17-30
【公開號(hào)】CN104573049
【申請(qǐng)?zhí)枴緾N201510028143
【發(fā)明人】陶剛, 閆永剛, 劉俊, 張小兵, 張曉花
【申請(qǐng)人】安徽科力信息產(chǎn)業(yè)有限責(zé)任公司
【公開日】2015年4月29日
【申請(qǐng)日】2015年1月20日