国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一種基于稀疏搜索的激活噪聲快速聚類算法

2022-09-28 09:31:54郭林亮韓旭明張逸航
關(guān)鍵詞:子類個(gè)數(shù)聚類

郭林亮,韓旭明,張逸航

(1.長(zhǎng)春工業(yè)大學(xué)數(shù)學(xué)與統(tǒng)計(jì)學(xué)院,吉林 長(zhǎng)春 130012;2.暨南大學(xué)信息科學(xué)與技術(shù)學(xué)院,廣東 廣州 510632;3.長(zhǎng)春工業(yè)大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院,吉林 長(zhǎng)春 130012)

0 引言

聚類分析是無(wú)監(jiān)督學(xué)習(xí)中的重要方法.在樣本沒有給定類別信息的情況下,聚類分析根據(jù)計(jì)算樣本特征的相似性來確定樣本的分組,同一分組的樣本具有高度的相似性,而來自不同分組的樣本之間相異度高[1].聚類算法可以以無(wú)監(jiān)督的方式找到數(shù)據(jù)的特征分布結(jié)構(gòu),所以研究者們提出了很多不同類型的聚類算法,并被廣泛應(yīng)用于以空間信息處理為代表的眾多領(lǐng)域[2],例如,圖像分割、模式識(shí)別等[3-6].

大多數(shù)現(xiàn)有的聚類算法在處理局部和非線性數(shù)據(jù)模式方面都有很大的局限性[7].針對(duì)形狀復(fù)雜、噪聲比較多的數(shù)據(jù)集,這些聚類算法沒有很好地解決參數(shù)多且不易調(diào)節(jié)的問題,且對(duì)噪聲和緊鄰類之間的連接點(diǎn)的分配也不合理.

實(shí)現(xiàn)聚類的眾多方法中,基于密度的聚類方法是比較流行且高效的.文獻(xiàn)[8]利用密度可達(dá)的方式去鏈接eps鄰域獲得子簇;在此基礎(chǔ)上,研究者們提出了許多變體算法來獲得更好的聚類性能[9];文獻(xiàn)[10]提出了一種快速的近似KNN的算法來判斷和確定核心塊、非核心塊和噪聲塊;文獻(xiàn)[11](DPC)選取乘積較大的幾個(gè)點(diǎn)作為聚類中心,從而確定類的個(gè)數(shù);文獻(xiàn)[12](FSDPC)設(shè)計(jì)了一種新的稀疏搜索策略來衡量每個(gè)數(shù)據(jù)點(diǎn)的最近鄰居之間的相似性;文獻(xiàn)[13]設(shè)計(jì)了一種數(shù)據(jù)點(diǎn)關(guān)聯(lián)度轉(zhuǎn)移方法和分層方法來選擇聚類中心;文獻(xiàn)[14](DPC-DBFN)使用基于k近鄰的模糊核密度對(duì)決策圖進(jìn)行分區(qū)來確定類的個(gè)數(shù),同時(shí)分配邊界區(qū)域和噪聲;文獻(xiàn)[15]提出在一定半徑鄰域?qū)ふ易畲竺芏赛c(diǎn),并把它們作為聚類中心,避免了選擇聚類中心個(gè)數(shù)的問題;文獻(xiàn)[16]采用覆蓋樹的方法快速計(jì)算數(shù)據(jù)點(diǎn)密度;文獻(xiàn)[17]采用了樹的結(jié)構(gòu)獲得初始的子類,再計(jì)算這些子類的相似度來進(jìn)行層次聚類;文獻(xiàn)[18]先采用近鄰的方式獲得基本的簇,再通過圖的方式進(jìn)一步分割這些簇;文獻(xiàn)[19]以共享近鄰的方式確定數(shù)據(jù)點(diǎn)的密度,并選擇密度最大的幾個(gè)數(shù)據(jù)點(diǎn)作為代表點(diǎn)進(jìn)行層次聚類得出最后的聚類結(jié)果.

以上的聚類算法取得了一定的成就,但還存在以下不足:算法雖然減少了運(yùn)行時(shí)間成本,但卻降低了邊界點(diǎn)和噪聲分配的效率;在處理彼此靠近類的連接處的點(diǎn)時(shí),由于預(yù)設(shè)的參數(shù)較多,引起連鎖反應(yīng)導(dǎo)致噪聲點(diǎn)沒有有效分配,使聚類結(jié)果出現(xiàn)偏差.

為了解決這些問題,本文提出了一種基于稀疏搜索的激活噪聲快速聚類算法(ANSC).本文算法利用數(shù)據(jù)總體離散度與個(gè)體近鄰屬性的關(guān)系重構(gòu)密度函數(shù),把分布結(jié)構(gòu)復(fù)雜的數(shù)據(jù)點(diǎn)映射到簡(jiǎn)單的自定義密度函數(shù)上,通過觀察密度函數(shù)的性質(zhì)來激活潛在的噪聲.按照有規(guī)律的步長(zhǎng)規(guī)則快速尋找稀疏互連點(diǎn),并以粗化和細(xì)化分割數(shù)據(jù)點(diǎn)的方式共建這些互連點(diǎn)形成子類,利用子類間距離的分布特性來合并.在獲得初步的聚類結(jié)果后,根據(jù)噪聲的分布特點(diǎn)判斷是否形成新的目標(biāo)類.因此,對(duì)于不同形狀的數(shù)據(jù)集,針對(duì)如何處理噪聲、減少參數(shù)的數(shù)量和降低時(shí)間成本的問題,本文提出了ANSC.

1 ANSC

1.1 激活噪聲

提出的算法使用近鄰的方式確定數(shù)據(jù)點(diǎn)的密度,這種方式可以反映數(shù)據(jù)的總體離散度和個(gè)體近鄰之間的關(guān)系.當(dāng)一個(gè)數(shù)據(jù)點(diǎn)與周圍點(diǎn)的距離和標(biāo)準(zhǔn)差較大時(shí),它的密度會(huì)很小,甚至小于0.這種方式可以把分布結(jié)構(gòu)復(fù)雜的數(shù)據(jù)點(diǎn)映射到密度函數(shù)上,通過觀察函數(shù)的性質(zhì)挖掘潛在的噪聲.與神經(jīng)網(wǎng)絡(luò)中設(shè)置的激活函數(shù)的意義類似,認(rèn)為在密度小于0的數(shù)據(jù)點(diǎn)是不需要被關(guān)注的點(diǎn),并把這些點(diǎn)定義為噪聲,實(shí)現(xiàn)激活的作用.

為了減少重復(fù)的距離計(jì)算,算法采用快速k近鄰的方法(如kd-tree[20]),僅通過搜索近鄰以減少數(shù)據(jù)點(diǎn)間距離的計(jì)算次數(shù).此過程只設(shè)計(jì)一個(gè)易于調(diào)節(jié)的近鄰參數(shù)k.這種設(shè)置方式減少了聚類過程中參數(shù)的數(shù)量.

假設(shè)數(shù)據(jù)集為X={x1,x2,…,xn},其中n是數(shù)據(jù)點(diǎn)的個(gè)數(shù).數(shù)據(jù)點(diǎn)xi與所有近鄰距離的和Dis(xi)=sum(knn_dist(xi,:)),其中knn_dist(xi,:)代表數(shù)據(jù)點(diǎn)xi的近鄰距離的集合.定義Dis={Dis(x1),Dis(x2),…,Dis(xn)}.

借助數(shù)據(jù)近鄰和標(biāo)準(zhǔn)差與離散度的關(guān)系,定義了總體離散度Gdis的概念,定義為

(1)

其中:d是數(shù)據(jù)的維度,mean表示求數(shù)據(jù)的均值,max表示求數(shù)據(jù)的最大值,st是所有st(xi)的集合,st(xi)代表數(shù)據(jù)點(diǎn)xi與所有近鄰點(diǎn)的標(biāo)準(zhǔn)差.

為了體現(xiàn)數(shù)據(jù)個(gè)體與總體的離散關(guān)系,有效地確定噪聲,定義了數(shù)據(jù)點(diǎn)的密度函數(shù)為

(2)

從公式(2)可知,隨著總體離散度的增加,數(shù)據(jù)個(gè)體的密度在逐漸減小,當(dāng)密度小于0的時(shí)候,則認(rèn)定數(shù)據(jù)點(diǎn)為噪聲.如果一個(gè)數(shù)據(jù)集中密度小于0的點(diǎn)比較多,則數(shù)據(jù)集中的噪聲也很多,能夠反應(yīng)這個(gè)數(shù)據(jù)集的數(shù)據(jù)分布比較松散,為后續(xù)的識(shí)別和判斷噪聲的類別提供了基本的保障.在實(shí)驗(yàn)中可以改變近鄰的個(gè)數(shù)來實(shí)現(xiàn)數(shù)據(jù)點(diǎn)密度的變化,從而確定不同的噪聲點(diǎn)和類連接處的點(diǎn).

1.2 近鄰互連共建子類

與現(xiàn)有的構(gòu)建子類的方法不同,本文以步長(zhǎng)的方式稀疏搜索數(shù)據(jù)確定互連點(diǎn),再以先粗化后細(xì)化的分割方法共建這些點(diǎn)形成子類.按照類與類的性質(zhì),相似性大且距離比較近的點(diǎn)屬于一個(gè)類的幾率更大.

基于以上想法,本文提出在一個(gè)隨機(jī)數(shù)據(jù)點(diǎn)的最大近鄰索引的基礎(chǔ)上,設(shè)置一個(gè)步長(zhǎng)去尋找下一個(gè)數(shù)據(jù)點(diǎn)的方法.同時(shí),定義以這種方式尋找到的數(shù)據(jù)點(diǎn)為互連點(diǎn).如果互連點(diǎn)間滿足一定的閾值條件,就鏈接這些互連點(diǎn)形成子類,這個(gè)過程叫作粗化共建.在此基礎(chǔ)上,為了進(jìn)一步分裂彼此靠近的類,需要細(xì)化共建這些互連點(diǎn).選擇每個(gè)子類中密度最大的點(diǎn)為代表點(diǎn),代表子類,并把這些代表點(diǎn)稱為共建點(diǎn).

假定搜索到的互連點(diǎn)個(gè)數(shù)為n1,所有的數(shù)據(jù)點(diǎn)都是未訪問點(diǎn).

粗化共建:找到第一個(gè)未訪問的互連點(diǎn)xi及它的近鄰,在此基礎(chǔ)上,不斷尋找其他互連點(diǎn).若兩個(gè)數(shù)據(jù)點(diǎn)索引之間滿足以下條件,則停止粗化共建,并標(biāo)記這些互連點(diǎn)為已訪問:

Index(xi)-Index(xc)

(3)

此時(shí)xc是當(dāng)前需要判斷類別的數(shù)據(jù)點(diǎn),Index(xi)代表數(shù)據(jù)點(diǎn)xi的索引.

細(xì)化共建:在粗化共建的基礎(chǔ)上,尋找未訪問的第一個(gè)互連點(diǎn).若數(shù)據(jù)點(diǎn)索引之間滿足以下條件,則進(jìn)行細(xì)化共建,并標(biāo)記這些互連點(diǎn)為已訪問:

(4)

其中:knnj(xi)表示離xi最近的第j個(gè)點(diǎn),Round表示向上取整函數(shù).

1.3 識(shí)別和檢測(cè)噪聲

由共建點(diǎn)的定義可知,共建點(diǎn)是子類中密度最大的點(diǎn).如果兩個(gè)共建點(diǎn)之間的距離小于共建點(diǎn)間的最小距離均值時(shí),就認(rèn)為它們代表的子類應(yīng)該屬于一個(gè)類,所以需要合并一些相似度大的子類.這種合并的方式與層次聚類相似,但是實(shí)現(xiàn)途徑是不同的.本文算法中類的個(gè)數(shù)可以根據(jù)共建點(diǎn)的分布特點(diǎn)自動(dòng)地確定,無(wú)須的人為的干預(yù).對(duì)于所有的剩余點(diǎn),未訪問的點(diǎn)歸類于最近的類.

為了減少噪聲對(duì)聚類結(jié)果的影響,提出兩種分配噪聲的方法:一是連續(xù)出現(xiàn)噪聲的個(gè)數(shù)n3;二是噪聲與它的近鄰之間的關(guān)系.如果連續(xù)出現(xiàn)很多噪聲,則認(rèn)為這些噪聲可以構(gòu)成一個(gè)新的類,并把它們定義為近類噪聲.如果當(dāng)前噪聲與近鄰所屬的類距離比較遠(yuǎn),把這些點(diǎn)形成一個(gè)新的類,并定義它們?yōu)檫h(yuǎn)類噪聲.

假定當(dāng)前的聚類結(jié)果中有n2個(gè)子類,每個(gè)子類中數(shù)據(jù)點(diǎn)的個(gè)數(shù)分別是{num1,num2,…,numn2}.

近類噪聲:存在連續(xù)的噪聲,且它們的個(gè)數(shù)和為n3,如果滿足以下條件:

n3>(num1+num2+…+numn2)/n2.

(5)

遠(yuǎn)類噪聲:假定噪聲為點(diǎn)noi,它與最近鄰點(diǎn)knn1(noi)的距離為Ndis,它的第k個(gè)近鄰為knnk(noi),Kdis是knnk(noi)所有近鄰距離的平均值,滿足以下條件:

Ndis>n2*Kdis.

(6)

本文提出的算法由以上3個(gè)模塊組成,描述如下:

第1步:按照公式(2)獲取每個(gè)數(shù)據(jù)點(diǎn)的密度,根據(jù)密度的大小來確定噪聲點(diǎn);

第2步:隨機(jī)選擇一個(gè)初始點(diǎn),如果初始點(diǎn)的最大近鄰不是噪聲點(diǎn),則把最大近鄰點(diǎn)認(rèn)為是第一個(gè)互連點(diǎn),在此互連點(diǎn)的基礎(chǔ)上以4*k的步長(zhǎng)尋找下一個(gè)初始點(diǎn);否則以2*k的步長(zhǎng)尋找下一個(gè)初始點(diǎn),直到所有的數(shù)據(jù)點(diǎn)都被搜索結(jié)束;

第3步:通過第2步可以獲得很多個(gè)互連點(diǎn),把所有的互連點(diǎn)組成一個(gè)新的數(shù)據(jù)集,在此基礎(chǔ)上獲得共建點(diǎn),再按照公式(3)和(4)定義的方式獲得粗化共建和細(xì)化共建的子類;

第4步:就近分配未訪問點(diǎn),按照公式(5)和(6)的原則去分配近類噪聲或者遠(yuǎn)類噪聲;

第5步:得到最后的聚類結(jié)果.

1.4 時(shí)間復(fù)雜度分析

本文計(jì)算數(shù)據(jù)點(diǎn)密度的時(shí)間復(fù)雜度是O(nlogn).在近鄰互連共建子簇、合并子簇和分配剩余數(shù)據(jù)點(diǎn)的過程中,只計(jì)算互連點(diǎn)之間的距離,而互連點(diǎn)的個(gè)數(shù)遠(yuǎn)小于數(shù)據(jù)個(gè)數(shù),所以這部分的時(shí)間復(fù)雜度不高于O(n).綜上所述,ANSC的算法的時(shí)間復(fù)雜度為O(nlogn),小于對(duì)比算法的時(shí)間復(fù)雜度O(n2).

2 實(shí)驗(yàn)結(jié)果

2.1 實(shí)驗(yàn)對(duì)比

為了驗(yàn)證ANSC算法的有效性,使用最新聚類研究中經(jīng)常使用的10個(gè)人工和真實(shí)數(shù)據(jù)集進(jìn)行實(shí)驗(yàn).ANSC與最新的聚類算法進(jìn)行了比較,包括算法FSDPC[12]、DPC-DBFN[14].為了排除對(duì)比算法在改變參數(shù)時(shí)對(duì)聚類結(jié)果的影響,在實(shí)驗(yàn)過程中采取多次微調(diào)參數(shù)的方式,并選用最好的評(píng)價(jià)指標(biāo)作為聚類結(jié)果.所有算法的實(shí)驗(yàn)都是在MATLAB 2018 a環(huán)境上實(shí)現(xiàn)的.所有數(shù)據(jù)集的信息如表1所示,它們都來自UCI 數(shù)據(jù)庫(kù).

表1 全部數(shù)據(jù)集

2.2 性能評(píng)估

為了進(jìn)一步比較3種聚類算法在10種數(shù)據(jù)集上的聚類方法可靠性和性能,本文使用3種常見的外部聚類評(píng)價(jià)指標(biāo),包括準(zhǔn)確度(ACC)、歸一化互信息(NMI)[21]、調(diào)整蘭德系數(shù)(ARI)[22].若這些指標(biāo)的值越大越好,越接近1,則表示聚類算法的實(shí)際效果越好.在人工和真實(shí)數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果如表2所示.

表2 3種算法在3個(gè)評(píng)價(jià)指標(biāo)上的結(jié)果

在實(shí)驗(yàn)中,算法采用的聚類準(zhǔn)確度評(píng)價(jià)指標(biāo)ACC定義為

2.3 結(jié)果與分析

根據(jù)表2的實(shí)驗(yàn)結(jié)果可知,在解決不同形狀的人工和真實(shí)數(shù)據(jù)集時(shí),所提出的算法都是可行的,提高了聚類算法的性能指標(biāo),并且3個(gè)性能評(píng)價(jià)指標(biāo)都是最高的.對(duì)于對(duì)比算法,算法DPC-DBFN的聚類效果在解決非凸數(shù)據(jù)集時(shí),效果是最差的;算法 FSDPC比DPC-DBFN展示了更好的聚類結(jié)果,但是在解決密度不均勻的數(shù)據(jù)集時(shí),兩個(gè)算法的聚類結(jié)果表現(xiàn)都一般.

通過以上實(shí)驗(yàn)結(jié)果的分析,所提出的ANSC對(duì)非凸數(shù)據(jù)的邊界和類連接處點(diǎn)的處理方式是有效的;從3個(gè)聚類的評(píng)價(jià)指標(biāo)可知,相對(duì)于2個(gè)較新的對(duì)比算法,本文算法對(duì)非凸數(shù)據(jù)集是有效且高效率的聚類.

3 結(jié)論

本文針對(duì)聚類算法中對(duì)噪聲和邊界分配不合理的問題,提出了一種基于近鄰互連共建的ANSC.此算法包括3個(gè)核心部分:激活潛在的噪聲;以步長(zhǎng)的方式快速搜索互連點(diǎn)來達(dá)到共建子簇;判斷噪聲類型.本文算法利用數(shù)據(jù)總體離散度與個(gè)體近鄰屬性的離散關(guān)系重構(gòu)具有代表性的密度函數(shù)來獲得噪聲;通過快速確定近鄰互連點(diǎn)來獲得新的共建數(shù)據(jù)點(diǎn);通過噪聲的分布特點(diǎn)來優(yōu)化其類別.

與較新的聚類算法相比,在10個(gè)人工和真實(shí)數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明,本文提出的方法在噪聲和類連接處點(diǎn)的合理分配問題上是有效的和可靠的.在預(yù)設(shè)參數(shù)少和運(yùn)算時(shí)間成本低的情況下,提高了聚類算法的效率和性能.

猜你喜歡
子類個(gè)數(shù)聚類
怎樣數(shù)出小正方體的個(gè)數(shù)
卷入Hohlov算子的某解析雙單葉函數(shù)子類的系數(shù)估計(jì)
等腰三角形個(gè)數(shù)探索
怎樣數(shù)出小木塊的個(gè)數(shù)
怎樣數(shù)出小正方體的個(gè)數(shù)
關(guān)于對(duì)稱共軛點(diǎn)的倒星象函數(shù)某些子類的系數(shù)估計(jì)
基于DBSACN聚類算法的XML文檔聚類
基于改進(jìn)的遺傳算法的模糊聚類算法
一種層次初始的聚類個(gè)數(shù)自適應(yīng)的聚類方法研究
自適應(yīng)確定K-means算法的聚類數(shù):以遙感圖像聚類為例
厦门市| 陇西县| 秭归县| 贵溪市| 囊谦县| 唐河县| 和静县| 苏尼特右旗| 二连浩特市| 许昌市| 囊谦县| 娱乐| 高阳县| 苍南县| 新泰市| 梧州市| 昂仁县| 南部县| 诸城市| 达拉特旗| 汾阳市| 镇沅| 湖南省| 象山县| 正定县| 常德市| 丹东市| 元阳县| 侯马市| 湛江市| 静海县| 怀远县| 沅陵县| 成都市| 三原县| 佳木斯市| 左贡县| 平武县| 同江市| 新巴尔虎左旗| 齐齐哈尔市|