陳 平,皇甫大鵬①,林曼筠,趙現(xiàn)綱
(1.北京師范大學(xué)信息網(wǎng)絡(luò)中心,北京100875;2.中國氣象局國家衛(wèi)星氣象中心,北京100081)
基于主成分分析和運(yùn)行特征的軟件聚類分析*
陳 平1,皇甫大鵬1①,林曼筠2,趙現(xiàn)綱2
(1.北京師范大學(xué)信息網(wǎng)絡(luò)中心,北京100875;2.中國氣象局國家衛(wèi)星氣象中心,北京100081)
隨著教育領(lǐng)域的應(yīng)用軟件種類的不斷增加,如何為軟件提供合理的硬件資源和提高軟件的運(yùn)行效率受到越來越多的關(guān)注。本文提出了一套基于軟件運(yùn)行特征的軟件分型方法,該方法利用軟件運(yùn)行時(shí)資源消耗情況來刻畫軟件運(yùn)行特征。首先引用主成分分析方法對(duì)軟件運(yùn)行特征數(shù)據(jù)進(jìn)行分析;然后采用聚類算法對(duì)教育領(lǐng)域軟件進(jìn)行分型;結(jié)合主成分分析結(jié)果解釋各類軟件綜合運(yùn)行特征的意義,并將其作為優(yōu)化軟件硬件資源分配和提高軟件運(yùn)行效率的依據(jù)。
聚類算法;主成分分析;特征分析
隨著教育領(lǐng)域系統(tǒng)種類的快速增加和高性能計(jì)算軟件的需求的不斷增長(zhǎng),教育領(lǐng)域軟件和系統(tǒng)所依賴的軟硬件資源的運(yùn)行情況成為人們關(guān)注的重點(diǎn)工作。尤其是高校在化學(xué)、物理、天文、衛(wèi)星等領(lǐng)域高性能計(jì)算的方面的實(shí)時(shí)、高效方面提出了很大的要求,在無法監(jiān)控軟件內(nèi)部運(yùn)行的情況下,如何能夠通過軟件運(yùn)行特征分析軟件的運(yùn)行情況,成為研究的熱點(diǎn)。
本文采用的數(shù)據(jù)是北京師范大學(xué)用于教育和科研高性能計(jì)算等方面的軟件或系統(tǒng)的運(yùn)行特征數(shù)據(jù),首先,對(duì)采集原始軟件運(yùn)行特征數(shù)據(jù)進(jìn)行特征提取和加工,使其更好的表達(dá)軟件的特征;其次,使用主成分分析方法對(duì)采集的運(yùn)行特征進(jìn)行分析,計(jì)算主成分提取其特征,并分析其實(shí)際意義;然后使用加工后的軟件特征數(shù)據(jù)進(jìn)行 K-means算法進(jìn)行[4-6]聚類分析;最后結(jié)合主成分分析結(jié)果,描述每類軟件的特點(diǎn)。
1.軟件和硬件環(huán)境概述
本文的研究對(duì)象是用于教育軟件和科研高性能計(jì)算方面的軟件和硬件資源的運(yùn)行特征,軟件資源包括188個(gè)教育軟件;硬件資源包括3臺(tái)浪潮小型機(jī)和50臺(tái)普通服務(wù)器,詳細(xì)的配置見表1。
表1 硬件配置
2.軟件運(yùn)行特征數(shù)據(jù)采集
軟件運(yùn)行特征數(shù)據(jù)采集范圍包含188個(gè)應(yīng)用軟件,軟件運(yùn)行數(shù)據(jù)的采集方式:是通過定期調(diào)用linux命令和接口。軟件運(yùn)行特征數(shù)據(jù)采集類型包括CPU級(jí)、系統(tǒng)級(jí)、進(jìn)程級(jí)和作業(yè)級(jí)數(shù)據(jù)。
3.運(yùn)行特征數(shù)據(jù)刻畫
軟件特征分析還需將軟件的運(yùn)行特征盡量完整的表達(dá),并將每個(gè)軟件的運(yùn)行特征通過一個(gè)向量來表達(dá)??坍嬡浖\(yùn)行特征需要從兩個(gè)方面來考慮:(1)軟件運(yùn)行的時(shí)間序列特征;(2)消除平臺(tái)間差異和系統(tǒng)本身的資源消耗。
4.特征數(shù)據(jù)歸一化
原始數(shù)據(jù)中每個(gè)運(yùn)行特征的單位都不一樣,數(shù)據(jù)之間的大小差異很大,為了減少特征數(shù)據(jù)之間的差異,首先對(duì)數(shù)據(jù)進(jìn)行歸一化處理。本文選用Min-max標(biāo)準(zhǔn)化方法是對(duì)原始數(shù)據(jù)進(jìn)行線性變換。設(shè)minA和maxA分別為屬性A的最小值和最大值,將A的一個(gè)原始值x通過Min-max標(biāo)準(zhǔn)化映射成在區(qū)間[0,1]中的值x',其公式為:
主成分分析方法[1](Principal Component Analysis,PCA)是一種統(tǒng)計(jì)方法。通過正交變換將一組可能存在相關(guān)性的變量轉(zhuǎn)換為一組線性不相關(guān)的變量,轉(zhuǎn)換后的這組變量叫主成分。主成分分析的結(jié)果好壞,主要取決于指標(biāo)之間的相關(guān)性,如果相關(guān)性很強(qiáng)則主成分分析的結(jié)果會(huì)很好,反之則較差[2]。特征分析法的計(jì)算方法與步驟如下。
(1)根據(jù)原始數(shù)據(jù)矩陣計(jì)算相關(guān)矩陣
原始數(shù)據(jù)矩陣每行表示1個(gè)軟件的運(yùn)行特征,每列表示軟件1個(gè)運(yùn)行特征的值,通過SPSS軟件分析結(jié)果見表2。該矩陣反映了任意兩個(gè)軟件的運(yùn)行特征之間的相關(guān)性。
表3 解釋的總方差
通過表3和表4分析發(fā)現(xiàn),可以用1、2、3和4四個(gè)主成分代表原始矩陣的主要因素。在運(yùn)行過程中,表達(dá)式中的變量已經(jīng)不是原始變量,而是標(biāo)準(zhǔn)化變量,以第一主成分為例,可被其他標(biāo)準(zhǔn)化變量表示為:
表2 相關(guān)矩陣
(2)通過總方差提出主成分
根據(jù)文獻(xiàn)[2],當(dāng)ρ(累加%)≥0.8~0.9時(shí),就可以選用前面4-6個(gè)主分量代替原來的14個(gè)運(yùn)行特征,并且保留了原來14個(gè)運(yùn)行特征所包含的主要信息,這前4-6個(gè)主分量稱為公共影響因子。
(3)計(jì)算軟件主體成分
通過分析表4中的四個(gè)主成分系數(shù),選取相關(guān)性系數(shù)較大的運(yùn)行特征作為分析的因素。表5中可以發(fā)現(xiàn)第一類主成分中主要與運(yùn)行時(shí)長(zhǎng)和磁盤讀寫資源相關(guān);第二類主成分主要跟網(wǎng)絡(luò)資源和CPI有關(guān);第三類主成分主要與計(jì)算資源相關(guān);第四類主成分與內(nèi)存和緩存有關(guān)。
表4 成分矩陣
表5 主成分
通過表4和表5,提取新的主成分公式如下:
本文采用改進(jìn)K-means算法進(jìn)行聚類,聚類結(jié)果如下圖所示,共得出了三種類型:
結(jié)合主成分分析結(jié)果和聚類結(jié)果,容易得出以下結(jié)果:第一類中第四主成分值較高,其他值都較低,該類軟件對(duì)內(nèi)存和緩存的要求比較高,為內(nèi)存密集型軟件;第二類中4個(gè)主成分都很高,該類軟件屬于綜合密集型,對(duì)CPU、內(nèi)存、磁盤和網(wǎng)絡(luò)的需求量都比較大;第三類中4個(gè)主成分都比較低,屬于小規(guī)模資源密集型,該類軟件運(yùn)行時(shí)間比較短,對(duì)各種資源的需求量整體偏低。
圖1 軟件分型特征圖
圖2 軟件分型結(jié)果圖
通過上述兩幅圖表可以發(fā)現(xiàn),CPU的整體使用率偏低,可以降低CPU的配置或者在此服務(wù)器上增加應(yīng)用軟件。內(nèi)存使用比較密集且集中,可以增加內(nèi)存的容量以提升運(yùn)行速度。軟件對(duì)磁盤的讀寫速度要求比較高,突發(fā)性流量加大,建議磁盤配備轉(zhuǎn)速較高或者增加多級(jí)緩存資源,以降低磁盤讀寫對(duì)軟件計(jì)算的影響。經(jīng)調(diào)研和實(shí)驗(yàn)驗(yàn)證,上述結(jié)果與實(shí)際情況相符,可以作為軟硬件資源優(yōu)化的依據(jù)。
本文使用主成分分析法和聚類算法對(duì)教育和科研軟件進(jìn)行了特征分析,為軟件提供了特征圖和資源需求情況。該結(jié)論可進(jìn)一步用于分析軟件調(diào)度算法提高硬件利用率和降低軟件等待時(shí)間。
參考文獻(xiàn):
[1]馬金龍,景新幸,楊海燕.主成分分析和K-means聚類在說話人識(shí)別中的應(yīng)用 [J].計(jì)算機(jī)應(yīng)用,2015,35( S1):127-129.
[2]李柞泳,丁晶,彭莉紅著.環(huán)境質(zhì)量評(píng)價(jià)原理與方法[M].化學(xué)工業(yè)出版社,2004.
[3]尹成祥,張宏軍,張睿,綦秀利,王彬.一種改進(jìn)的K-Means算法[J].計(jì)算機(jī)技術(shù)與發(fā)展,2014,24(10):30-33.
[4]HUANGFU Dapeng,LIN Qianhui,ZHOU Jingmin,et al.An Improved Similarity Algorithm for Personalized Recommendation,Computer Science-Technology and Applications 2009,54-57.
[5]楊文波.信息資源個(gè)性化服務(wù)技術(shù)的研究與實(shí)現(xiàn)[D].北京:北京航空航天大學(xué),2006.
[6]孟洋,趙方.基于信息熵理論的動(dòng)態(tài)規(guī)劃特征選取算法[J].計(jì)算機(jī)工程與設(shè)計(jì),2010,31(17):3879-3881.
[7]原福永,張曉彩,羅思標(biāo).基于信息熵的精確屬性賦權(quán) K-means聚類算法 [J].計(jì)算機(jī)應(yīng)用,2011,31(6): 1675-1678.
[8]汪中,劉貴全,陳恩紅.一種優(yōu)化初始中心點(diǎn)的K-means算法[J].模式識(shí)別與人工智能,2009,22(2):299-304.
[9]李永森,楊善林,馬溪駿.空間聚類算法中的K值優(yōu)化問題研究[J].系統(tǒng)仿真學(xué)報(bào),2006,18(3):573-576.
[10]Mac Queen J.Some methods for classification and analysis of multivariate observations[C].Proceeding of the Berkeley symposium on mathematical statistics and probability.[s.1.][s.n.]1967:281-297.
(編輯:郭桂真)
TP391
:A
:1673-8454(2017)06-0078-04
①皇甫大鵬為本文通訊作者
*本文得到國家氣象局衛(wèi)星氣象中心項(xiàng)目支持(CNS部件級(jí)測(cè)試環(huán)境模擬軟件研究項(xiàng)目,項(xiàng)目號(hào):ZQC-H14187)