模糊層次聚類算法及在軟件架構(gòu)重構(gòu)中的應(yīng)用研究
發(fā)布時(shí)間:2019-01-21 20:49
【摘要】:大數(shù)據(jù)時(shí)代的到來(lái),為我們帶來(lái)了更多的知識(shí)。作為知識(shí)的發(fā)掘工具之一,數(shù)據(jù)挖掘(Data Mining,DM)技術(shù)一直是學(xué)者們研究的基礎(chǔ)理論依托。層次聚類是DM中重要的研究部分,近些年來(lái),層次聚類已經(jīng)應(yīng)用在了許多不同的研究領(lǐng)域。計(jì)算機(jī)技術(shù)日新月異,作為軟件系統(tǒng)的主要成員——遺留系統(tǒng),越來(lái)越難以適應(yīng)復(fù)雜的軟件功能需求,對(duì)遺留系統(tǒng)的取舍成為企業(yè)頭疼的問(wèn)題。不僅如此,遺留系統(tǒng)開(kāi)發(fā)時(shí)間久遠(yuǎn),開(kāi)發(fā)文檔丟失,系統(tǒng)內(nèi)部功能結(jié)構(gòu)紊亂,這些問(wèn)題成為遺留系統(tǒng)后期維護(hù)和再開(kāi)發(fā)的絆腳石。對(duì)遺留系統(tǒng)進(jìn)行架構(gòu)重構(gòu),成為解決以上問(wèn)題的主要途徑。目前,對(duì)軟件系統(tǒng)進(jìn)行架構(gòu)重構(gòu)的方法主要分為兩類:(1)數(shù)學(xué)建模方法。(2)聚類的方法。其中,應(yīng)用聚類進(jìn)行軟件架構(gòu)重構(gòu)的方法有兩種:基于密度聚類的軟件架構(gòu)重構(gòu)和基于層次聚類的架構(gòu)重構(gòu)。近些年來(lái),基于層次聚類的軟件架構(gòu)重構(gòu)成為遺留系統(tǒng)架構(gòu)重構(gòu)的主要方法。但是,該方法仍然存在兩方面的問(wèn)題:(1)實(shí)體與實(shí)體特征間的二元關(guān)系無(wú)法區(qū)分實(shí)體特征對(duì)實(shí)體的影響程度。(2)相似度基于距離計(jì)算的層次聚類效果差。針對(duì)以上的問(wèn)題,本文在傳統(tǒng)的層次聚類的基礎(chǔ)上進(jìn)行了改進(jìn),給出了基于信息損失的模糊層次聚類算法(Fuzzy Hierarchical Clustering algorithm Based on Information Loss,FHCBIL),該算法主要在實(shí)體特征權(quán)值分配和相似度計(jì)算方法上進(jìn)行了改進(jìn),分別解決了傳統(tǒng)層次聚類算法中實(shí)體與實(shí)體特征間的二元關(guān)系和實(shí)體劃分準(zhǔn)確性低的問(wèn)題。本文進(jìn)一步將FHCBIL算法應(yīng)用在軟件架構(gòu)重構(gòu)中,生成軟件新架構(gòu),實(shí)現(xiàn)了軟件架構(gòu)的重構(gòu)。本文主要有以下三方面的貢獻(xiàn):(1)構(gòu)建基于模糊層次聚類的軟件架構(gòu)重構(gòu)系統(tǒng)模型。針對(duì)基于層次聚類的軟件架構(gòu)重構(gòu)后新架構(gòu)的實(shí)體劃分準(zhǔn)確性不高的問(wèn)題,本文融合了模糊關(guān)系與層次聚類,構(gòu)建了基于模糊層次聚類的軟件架構(gòu)重構(gòu)系統(tǒng)模型。該系統(tǒng)模型由軟件系統(tǒng)的數(shù)據(jù)提取、模糊層次聚類、新架構(gòu)評(píng)估三大模塊組成。其中,軟件系統(tǒng)的數(shù)據(jù)提取模塊實(shí)現(xiàn)軟件系統(tǒng)源代碼轉(zhuǎn)換和數(shù)據(jù)提取的功能;模糊層次聚類模塊實(shí)現(xiàn)生成軟件新架構(gòu)的功能;新架構(gòu)評(píng)估模塊實(shí)現(xiàn)新架構(gòu)的層次結(jié)構(gòu)合理性和實(shí)體劃分準(zhǔn)確性評(píng)估的功能。(2)給出改進(jìn)的模糊層次聚類算法FHCBIL。針對(duì)傳統(tǒng)層次聚類在無(wú)法區(qū)分實(shí)體特征對(duì)實(shí)體影響程度和實(shí)體間劃分準(zhǔn)確性較低兩方面的不足,本文給出相應(yīng)的改進(jìn)策略:一是擴(kuò)充了實(shí)體特征的權(quán)值分配,將實(shí)體特征權(quán)值分為全局權(quán)值和局部權(quán)值,這樣使實(shí)體特征以不同的隸屬度從屬于實(shí)體,實(shí)體與實(shí)體特征間由傳統(tǒng)的二元關(guān)系變?yōu)槟:P(guān)系。二是將信息損失作為FHCBIL算法的相似度計(jì)算方法;谝陨喜呗,本文進(jìn)一步給出改進(jìn)的模糊層次聚類算法FHCBIL,該算法分為三部分:數(shù)據(jù)預(yù)處理、FHCBIL算法聚類、生成樹(shù)形結(jié)構(gòu)。在數(shù)據(jù)預(yù)處理部分,首先采用Z-score方法對(duì)數(shù)據(jù)集進(jìn)行規(guī)范化處理。其次對(duì)規(guī)范化后的數(shù)據(jù)集進(jìn)行實(shí)體特征權(quán)值的分配,構(gòu)建實(shí)體特征向量。在聚類部分,首先選取每個(gè)數(shù)據(jù)對(duì)象作為簇中心。然后采用信息損失的方法計(jì)算實(shí)體間的相似度。最后合并相似度最大的實(shí)體,形成新的聚類簇。在生成樹(shù)形結(jié)構(gòu)部分,首先更新實(shí)體特征向量、聚類簇?cái)?shù)及聚類層數(shù)。其次迭代合并實(shí)體直到聚類簇的數(shù)目和聚類層數(shù)達(dá)到給定的閾值。最后形成樹(shù)形結(jié)構(gòu)。(3)實(shí)現(xiàn)基于FHCBIL算法的軟件架構(gòu)重構(gòu)系統(tǒng)。本文首先選取了面向?qū)ο蟮倪z留系統(tǒng)。其次對(duì)選定的遺留系統(tǒng)進(jìn)行源代碼轉(zhuǎn)換和數(shù)據(jù)提取。最后利用提取的數(shù)據(jù)集進(jìn)行FHCBIL算法聚類,生成樹(shù)形結(jié)構(gòu),實(shí)現(xiàn)基于FHCBIL算法的遺留系統(tǒng)架構(gòu)重構(gòu)。為了驗(yàn)證改進(jìn)的模糊層次聚類算法FHCBIL的聚類性能以及基于FHCBIL算法的軟件架構(gòu)重構(gòu)后新架構(gòu)的質(zhì)量,本文做了相應(yīng)的評(píng)估。在FHCBIL算法聚類性能評(píng)價(jià)方面,實(shí)驗(yàn)選取JC系數(shù)(Jaccard Coefficient,JC)、FMI(Fowlkes and Mallows Index,FMI)、RI(Rand Index,RI)作為評(píng)估指標(biāo),使用選定的遺留系統(tǒng)的數(shù)據(jù),與經(jīng)典的聚類效果好的聚類算法進(jìn)行對(duì)比實(shí)驗(yàn)與分析。實(shí)驗(yàn)結(jié)果表明:FHCBIL算法聚類性能好。在基于FHCBIL算法的軟件架構(gòu)重構(gòu)后新架構(gòu)質(zhì)量的評(píng)估方面,實(shí)驗(yàn)應(yīng)用幾種常用的進(jìn)行軟件架構(gòu)重構(gòu)的層次聚類算法和FHCBIL算法實(shí)現(xiàn)軟件架構(gòu)重構(gòu),對(duì)比分析重構(gòu)后新架構(gòu)的層次結(jié)構(gòu)以及實(shí)體劃分準(zhǔn)確率,實(shí)驗(yàn)結(jié)果表明:基于FHCBIL算法的軟件架構(gòu)重構(gòu)后的新架構(gòu)層次結(jié)構(gòu)合理,內(nèi)聚度高、耦合性低,并且新架構(gòu)的實(shí)體間劃分準(zhǔn)確性高。
[Abstract]:......
【學(xué)位授予單位】:西南大學(xué)
【學(xué)位級(jí)別】:碩士
【學(xué)位授予年份】:2017
【分類號(hào)】:TP311.5;TP311.13
[Abstract]:......
【學(xué)位授予單位】:西南大學(xué)
【學(xué)位級(jí)別】:碩士
【學(xué)位授予年份】:2017
【分類號(hào)】:TP311.5;TP311.13
【參考文獻(xiàn)】
相關(guān)期刊論文 前10條
1 伍恒;李文杰;蔣e,
本文編號(hào):2413026
本文鏈接:http://www.sikaile.net/kejilunwen/ruanjiangongchenglunwen/2413026.html
最近更新
教材專著