• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      最小局部方差優(yōu)化初始聚類中心的K-means算法

      2020-07-24 02:11王世其張文斌蔡潮森李建軍
      軟件導(dǎo)刊 2020年6期
      關(guān)鍵詞:means算法聚類

      王世其 張文斌 蔡潮森 李建軍

      摘要:針對(duì)傳統(tǒng)K-means算法隨機(jī)選取初始聚類中心導(dǎo)致聚類結(jié)果隨機(jī)性大、優(yōu)劣不定的缺點(diǎn),通過(guò)定義局部方差,利用方差反映數(shù)據(jù)密集程度的特性,提出一種基于最小局部方差優(yōu)化初始聚類中心的K-means算法。該算法選取數(shù)據(jù)集中局部方差最小的點(diǎn)作為一個(gè)初始聚類中心,并利用數(shù)據(jù)信息更新數(shù)據(jù)集,直到選到k個(gè)初始聚類中心,實(shí)現(xiàn)初始聚類中心優(yōu)化?;赨CI數(shù)據(jù)集與人工數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),與傳統(tǒng)K-means算法及最小方差優(yōu)化初始聚類中心的K-means算法進(jìn)行性能比較。實(shí)驗(yàn)結(jié)果表明,基于最小局部方差優(yōu)化初始聚類中心的K-means算法具有良好的聚類效果和很好的魯棒性,且聚類時(shí)間較短,驗(yàn)證了算法有效性和優(yōu)越性。

      關(guān)鍵詞:聚類;K-means算法;初始化聚類中心;局部方差;密集程度

      DOI:10.11907/rjdk.192061 開(kāi)放科學(xué)(資源服務(wù))標(biāo)識(shí)碼(OSID):

      中圖分類號(hào):TP312文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-7800(2020)006-0196-05

      0 引言

      針對(duì)K-means算法隨機(jī)選取初始聚類中心容易得到局部最優(yōu)解的缺點(diǎn),眾多學(xué)者提出優(yōu)化初始聚類中心的方法改進(jìn)傳統(tǒng)K-means算法,這些方法主要可分為3類:①基于樣本空間密度的初始聚類中心優(yōu)化,有時(shí)有較好的聚類結(jié)果,但該法依賴于參數(shù)選擇,可能會(huì)因選取到噪聲點(diǎn)或參數(shù)選取不當(dāng)造成聚類效果差;②全局K均值聚類算法,雖有良好的聚類結(jié)果,但因算法復(fù)雜,聚類時(shí)間過(guò)長(zhǎng);③基于最小方差選擇初始聚類中心,該方法不依賴參數(shù)選取,且多數(shù)情況聚類效果良好,在聚類效果和時(shí)間上優(yōu)于前面兩種方法,但在某些情況下聚類效果較差,因此在聚類效果和時(shí)耗上還有提升空間。

      僅基于方差選擇初始聚類中心的算法不依賴參數(shù)類型且復(fù)雜度較低,但該類方法以全局方差作為衡量數(shù)據(jù)密集度的指標(biāo)值。全局方差計(jì)算采用來(lái)自于不同類的全部數(shù)據(jù)計(jì)算,因此,不同數(shù)據(jù)點(diǎn)全局方差大小比較意義并不明顯。本文定義局部方差,選擇某數(shù)據(jù)點(diǎn)附近的局部數(shù)據(jù)計(jì)算方差,基于局部方差最小優(yōu)化初始聚類中心,提出最小局部方差優(yōu)化初始聚類中心的K-means算法,以期縮短時(shí)耗、提升聚類效果。

      1 算法改進(jìn)

      1.1 算法原理

      選取初始聚類中心時(shí)需保證兩點(diǎn):①K個(gè)初始聚類中心距離盡量遠(yuǎn);②每個(gè)初始中心附近數(shù)據(jù)點(diǎn)盡量密集?;谶@些前提,文獻(xiàn)利用方差反映數(shù)據(jù)密集程度的特性,提出基于最小方差初始化聚類中心的K-means算法。全局方差定義為用所有數(shù)據(jù)信息反映某一數(shù)據(jù)點(diǎn)附近數(shù)據(jù)的密集程度,但由于這些數(shù)據(jù)屬于不同的類,因此該定義有不合理之處;文獻(xiàn)通過(guò)去掉每個(gè)選取到的聚類中心周圍平均距離內(nèi)的點(diǎn),實(shí)現(xiàn)數(shù)據(jù)集更新,即認(rèn)為數(shù)據(jù)集中每個(gè)點(diǎn)的地位等同,但該觀點(diǎn)并不客觀,當(dāng)中心選取到離群點(diǎn)時(shí),以該方式更新數(shù)據(jù)集會(huì)產(chǎn)生很大問(wèn)題。

      為更確切地反映數(shù)據(jù)點(diǎn)附近的數(shù)據(jù)密集程度,本文重新定義數(shù)據(jù)點(diǎn)局部方差,并改變數(shù)據(jù)集更新方式,利用每個(gè)數(shù)據(jù)點(diǎn)附近的局部數(shù)據(jù)信息衡量該點(diǎn)數(shù)據(jù)密集度,提出最小局部方差優(yōu)化初始聚類中心的K-means算法。首先,計(jì)算所有數(shù)據(jù)點(diǎn)局部方差,選取局部方差最小的點(diǎn)作為第一個(gè)初始聚類中心,并計(jì)算距該點(diǎn)最遠(yuǎn)的點(diǎn)與該點(diǎn)之間的距離dismax,半徑取dismax/K,刪除以該點(diǎn)為圓心的圓域內(nèi)的點(diǎn),再計(jì)算每個(gè)數(shù)據(jù)點(diǎn)局部方差,選擇第二個(gè)初始聚類中心,第二次更新數(shù)據(jù)集時(shí),選取的半徑為dismax/(K-1),循序往后,直到選擇到K個(gè)初始聚類中心。

      1.2 基本概念

      假設(shè)待聚類的含n個(gè)數(shù)據(jù)點(diǎn)的s維數(shù)據(jù)集W={x1,x2,…,xn},其中xi=(xi1,xi2,…,xisT,將其劃分為K個(gè)類簇W1,W2,…,WK,K個(gè)類簇中心分別記為C1,C2,…,Ck,進(jìn)行以下定義。

      定義1 樣本數(shù)據(jù)xi,xj之間的歐氏距離為:

      1.3 算法步驟

      1.3.1 初始聚類中心選擇

      (1)選取首個(gè)初始聚類中心時(shí),k=l,根據(jù)定義1~4計(jì)算數(shù)據(jù)集中每一個(gè)樣本局部方差,在數(shù)據(jù)集w中選擇局部方差最小樣本x1將其作為第一個(gè)類簇初始聚類中心C1。令:

      否則,得到K個(gè)初始聚類中心C1,C2,…,Ck,轉(zhuǎn)至初始劃分構(gòu)造流程。

      (3)轉(zhuǎn)步驟(2)。

      1.3.2 初始劃分構(gòu)造

      (1)遍歷數(shù)據(jù),按照定義1定義的距離,將每個(gè)數(shù)據(jù)劃分到最近中心點(diǎn)所在的類中。

      (2)計(jì)算每個(gè)類簇的坐標(biāo)均值并作為新的中心點(diǎn)。

      (3)根據(jù)定義4,計(jì)算誤差平方和E。

      1.3.3 數(shù)據(jù)點(diǎn)再分配與聚類中心更新

      (1)遍歷數(shù)據(jù),按照定義1,將每個(gè)數(shù)據(jù)劃分到最近中心點(diǎn)所在的類中。

      (2)計(jì)算每個(gè)類簇的坐標(biāo)均值,作為新的中心點(diǎn)。

      (3)根據(jù)定義4,計(jì)算誤差平方和E'。如果|E'-E|<10-10,即聚類中心不再變化,則結(jié)束算法,輸出聚類結(jié)果;否則,令E=E,并轉(zhuǎn)至初始聚類中的選擇流程。

      綜上所述,相較于傳統(tǒng)K-means算法,本文算法改變了選取初始聚類中心的方式,后續(xù)聚類過(guò)程相同。

      2 聚類算法性能指標(biāo)

      (1)聚類誤差平方和。它是所有數(shù)據(jù)點(diǎn)到所屬類中心的距離平方和,通常作為迭代停止的準(zhǔn)則。一般來(lái)說(shuō),聚類誤差平方和越小,聚類效果越好,聚類準(zhǔn)確率越高。

      (2)聚類時(shí)間。聚類算法運(yùn)行時(shí)間越短,算法越好。

      (3)聚類準(zhǔn)確率。計(jì)算聚類準(zhǔn)確率需知道數(shù)據(jù)點(diǎn)真實(shí)類型,聚類準(zhǔn)確率越高,聚類效果越好。

      (4)蘭德系數(shù)。蘭德系數(shù)定義式為:

      其中n是數(shù)據(jù)集的數(shù)據(jù)點(diǎn)個(gè)數(shù),a表示在真實(shí)類中同類且在聚類結(jié)果中同類的數(shù)據(jù)對(duì)數(shù),b表示在真實(shí)類中異類、且在聚類結(jié)果中異類的數(shù)據(jù)對(duì)數(shù)。蘭德系數(shù)取值范圍為[0,1],越接近于l,聚類效果越好。

      (5)調(diào)整蘭德系數(shù)。為在隨機(jī)產(chǎn)生聚類結(jié)果時(shí)使指標(biāo)接近零,提出調(diào)整蘭德系數(shù)(Adjusted Rand Index)。設(shè)ui是聚類得到的類型,vj是真實(shí)類型,則對(duì)n個(gè)數(shù)據(jù)點(diǎn)的K類待聚類數(shù)據(jù)集如表l所示。

      其中nij表示屬于ui且屬于vj的數(shù)據(jù)點(diǎn)個(gè)數(shù),則調(diào)整蘭德系數(shù)定義式為:

      RI值通常較大,即便聚類效果較差,RI值也不會(huì)很小,ARI是RI的調(diào)整值,比RI更直觀,取值范圍為[-1,1],ARI越接近于1,聚類效果越好;反之ARI越小,聚類效果越差。

      3 數(shù)據(jù)仿真實(shí)驗(yàn)

      為檢驗(yàn)算法有效性,本文利用Matlab編程實(shí)現(xiàn)算法,與其它算法進(jìn)行比較。目前3類改進(jìn)方法只有第3類基于最小方差選擇初始聚類中心的算法不依賴參數(shù)選取且計(jì)算復(fù)雜度不高、聚類效果良好。該類算法特點(diǎn)基本一致,因此本文僅與傳統(tǒng)K-mean算法及文獻(xiàn)算法比較聚類結(jié)果。其中,文獻(xiàn)的算法與本文算法消除了K-means算法隨機(jī)性,每次聚類結(jié)果固定;傳統(tǒng)K-means聚類過(guò)程是隨機(jī)的,同一數(shù)據(jù)集確定的分類數(shù)K的每次聚類結(jié)果不盡相同。

      若以聚類誤差平方和大小為衡量聚類優(yōu)劣標(biāo)準(zhǔn),對(duì)同一組數(shù)據(jù)集確定的分類數(shù)K多次執(zhí)行傳統(tǒng)K-means算法,基本上均可得到一組最好的聚類結(jié)果和一組最差的聚類結(jié)果,大多數(shù)改進(jìn)方法得到的聚類結(jié)果介于這兩組聚類結(jié)果之間。因此利用這兩組結(jié)果比較本文算法和文獻(xiàn)算法的聚類效果。本文對(duì)每個(gè)數(shù)據(jù)集執(zhí)行100次傳統(tǒng)K-means算法,得到一組最好的結(jié)果和一組最差的結(jié)果,與執(zhí)行100次傳統(tǒng)K-means算法結(jié)果的平均值進(jìn)行對(duì)比。

      3.1 UCI數(shù)據(jù)集實(shí)驗(yàn)及結(jié)果比較

      本文選取10組不同的UCI數(shù)據(jù)集進(jìn)行仿真實(shí)驗(yàn),相關(guān)數(shù)據(jù)集信息如表2所示。

      分別用文獻(xiàn)的算法、本文算法與傳統(tǒng)K-means算法計(jì)算得到聚類誤差平方和,如表3所示,聚類時(shí)間如表4所示。

      由表3、表4可以看出在10個(gè)UCI數(shù)據(jù)集中,本文算法有9組聚類誤差平方和小于K-means算法平均值,接近于傳統(tǒng)K-means算法的最好情形,其中l(wèi)組Soybean-small優(yōu)于傳統(tǒng)算法最優(yōu)情形,只有l(wèi)組Wine數(shù)據(jù)集聚類結(jié)果較差;而文獻(xiàn)的算法有3組數(shù)據(jù)集Haberman、New thyroid和Balance-scale聚類結(jié)果較差,其余均接近于傳統(tǒng)算法最好情形;傳統(tǒng)K-means算法聚類時(shí)間最短,文獻(xiàn)的算法聚類時(shí)間最長(zhǎng),本文算法聚類時(shí)間介于兩者之間,與文獻(xiàn)的算法聚類時(shí)間基本相差一個(gè)數(shù)量級(jí)。

      計(jì)算聚類準(zhǔn)確率如圖1所示。

      計(jì)算RI與ARI,結(jié)果如圖2和圖3所示。

      首先通過(guò)聚類準(zhǔn)確率比較,可以看到本文算法聚類準(zhǔn)確率大多與傳統(tǒng)算法最好情形一致,其中Soybean-small聚類準(zhǔn)確率甚至略高于傳統(tǒng)算法最好情形,New-thyroid和Balance-sacle聚類準(zhǔn)確率介于傳統(tǒng)算法最好、最差之間,與較好情形相差不大,只有1組Wine數(shù)據(jù)集聚類準(zhǔn)確率較低;文獻(xiàn)算法聚類準(zhǔn)確率較低的數(shù)據(jù)集較多,包括New-thyroid、Balance-scale等。數(shù)據(jù)集Haberman聚類誤差平方和較小時(shí)聚類準(zhǔn)確率反而較低,這可能是因?yàn)樵摂?shù)據(jù)集分類不適用本文采用的相似性準(zhǔn)則,因此該組數(shù)據(jù)不作參考。

      其次是RI值和ARI值的比較,這兩個(gè)值相對(duì)大小基本一致,綜合來(lái)看本文算法對(duì)數(shù)據(jù)集Wine、New thyroid聚類的RI和ARI值較小;文獻(xiàn)算法對(duì)數(shù)據(jù)集New-thy.roid、Balance-scale的RI和ARI值較小,其余數(shù)據(jù)集兩個(gè)算法聚類得到的RI和ARI值較大,接近于傳統(tǒng)算法最好情形。

      3.2 人工數(shù)據(jù)集實(shí)驗(yàn)及結(jié)果比較

      分別用文獻(xiàn)的算法、本文算法、傳統(tǒng)K-means算法對(duì)各組數(shù)據(jù)進(jìn)行聚類,其聚類誤差平方和與聚類時(shí)間如表6、表7所示。

      由表6比較3種算法的誤差平方和,本文算法只有兩組較差,即噪聲比率10%和噪聲比率25%的數(shù)據(jù)集,其余組誤差平方和小于100次傳統(tǒng)算法平均值,且基本與傳統(tǒng)算法最好情形相同;而文獻(xiàn)算法對(duì)噪聲比率5%、20%、25%的數(shù)據(jù)集聚類結(jié)果較差。兩種算法均對(duì)噪聲有很強(qiáng)的免疫性,高噪聲比率不影響聚類效果。

      聚類時(shí)間與UCI數(shù)據(jù)集結(jié)果一致,本文算法聚類時(shí)間介于文獻(xiàn)算法與傳統(tǒng)K-means算法之間,且聚類時(shí)間小于文獻(xiàn)算法的1/10。進(jìn)一步計(jì)算3種算法聚類準(zhǔn)確率、蘭德系數(shù)RI、調(diào)整蘭德系數(shù)ARI,如圖4-圖6所示。

      聚類準(zhǔn)確率、RI值、ARI值相對(duì)大小基本一致,11組數(shù)據(jù)中,本文算法聚類結(jié)果多數(shù)較好,有9組數(shù)據(jù)聚類準(zhǔn)確率達(dá)到90%以上,有兩組較差,分別是10%噪聲組和25%噪聲組,其聚類準(zhǔn)確率只有50%左右;文獻(xiàn)算法聚類結(jié)果有3組較差,分別是5%噪聲組、20%噪聲組、25%噪聲組,其余組數(shù)據(jù)聚類結(jié)果良好。

      同時(shí)實(shí)驗(yàn)發(fā)現(xiàn),聚類準(zhǔn)確率、RI值與ARI值均隨噪聲比率的增大而減小,但基本保持很高的水平,說(shuō)明本文算法對(duì)數(shù)據(jù)噪聲有很強(qiáng)的免疫性。

      綜上所述,本文算法較文獻(xiàn)算法的聚類效果有一定提高,大部分?jǐn)?shù)據(jù)集的聚類結(jié)果接近傳統(tǒng)K-means算法的最好情形,絕大部分?jǐn)?shù)據(jù)集聚類效果好于傳統(tǒng)K-means算法平均效果,且對(duì)噪聲數(shù)據(jù)有很強(qiáng)的免疫性。同時(shí),在聚類時(shí)間方面,本文算法雖不及傳統(tǒng)K-means算法,但與文獻(xiàn)算法相比有大幅改善。

      4 結(jié)語(yǔ)

      針對(duì)傳統(tǒng)K-means算法隨機(jī)性引起聚類效果不穩(wěn)定的缺陷,本文提出了一種基于最小局部方差初始化聚類中心的K-means改進(jìn)算法。UCI數(shù)據(jù)集和人工數(shù)據(jù)集實(shí)驗(yàn)表明,本文算法較文獻(xiàn)算法更快、更有效,與傳統(tǒng)K-means算法相比,不僅提高了算法穩(wěn)定性和平均聚類準(zhǔn)確率,而且對(duì)噪聲數(shù)據(jù)有很強(qiáng)的免疫性、魯棒性及較快的聚類速度,是一種高效、穩(wěn)定、準(zhǔn)確的K-means改進(jìn)算法。但同時(shí)本文算法對(duì)個(gè)別數(shù)據(jù)集聚類效果不理想,下一步將考慮結(jié)合樣本空間密度進(jìn)一步擴(kuò)大算法適用范圍。

      猜你喜歡
      means算法聚類
      基于DBSACN聚類算法的XML文檔聚類
      SIFT算法在木材紋理分類上的應(yīng)用
      條紋顏色分離與聚類
      基于Spark平臺(tái)的K-means聚類算法改進(jìn)及并行化實(shí)現(xiàn)
      基于改進(jìn)的遺傳算法的模糊聚類算法
      一種層次初始的聚類個(gè)數(shù)自適應(yīng)的聚類方法研究
      基于數(shù)據(jù)抽樣的自動(dòng)k?means聚類算法
      自適應(yīng)確定K-means算法的聚類數(shù):以遙感圖像聚類為例
      建德市| 昭通市| 台南市| 南通市| 奉节县| 调兵山市| 安西县| 姜堰市| 青川县| 玉田县| 余干县| 雅江县| 特克斯县| 望都县| 靖宇县| 连云港市| 收藏| 灯塔市| 伊春市| 双鸭山市| 宿松县| 龙游县| 龙江县| 新绛县| 工布江达县| 万年县| 淳安县| 南安市| 通江县| 乌什县| 绥阳县| 崇州市| 长沙县| 商河县| 枞阳县| 林西县| 甘谷县| 桦川县| 内黄县| 双城市| 厦门市|