• 
    

    
    

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

      基于檢查點場景信息的軟件行為可信預測模型

      2018-10-18 11:21:56田俊峰郭玉慧
      通信學報 2018年9期
      關鍵詞:馬爾可夫檢查點神經網(wǎng)絡

      田俊峰,郭玉慧

      ?

      基于檢查點場景信息的軟件行為可信預測模型

      田俊峰1,2,郭玉慧1,2

      (1. 河北大學網(wǎng)絡空間安全與計算機學院,河北 保定 071002;2. 河北省高可信信息系統(tǒng)重點實驗室,河北 保定 071002)

      為了保證軟件可信性,通過動態(tài)監(jiān)測軟件行為,對軟件在一段時間內運行的可信狀態(tài)進行評估,提出了一種基于檢查點場景信息的軟件行為可信預測模型CBSI-TM。該模型通過在軟件運行軌跡中設置若干檢查點,并引入相鄰檢查點時間增量和CPU利用率變化量定義場景信息,用以反映相鄰檢查點場景信息的關系,然后利用徑向基函數(shù)(RBF, radial basis function)神經網(wǎng)絡分類器評估當前檢查點的狀態(tài)來判斷軟件的可信情況,并運用半加權馬爾可夫模型預測下一個檢查點的狀態(tài),達到對軟件未來運行趨勢的可信情況的評估。實驗結果證明了CBSI-TM模型能夠有效地預測軟件未來運行趨勢的可信情況,并驗證了該模型具有更優(yōu)的合理性和有效性。

      軟件可信性;檢查點;RBF神經網(wǎng)絡;半加權馬爾可夫模型

      1 引言

      軟件可信一直是人們普遍關注的問題。軟件可信是指軟件系統(tǒng)能夠按照其設定目標所預期的方式運行,軟件行為和用戶的預期相一致[1]。由于軟件本身的設計缺陷或軟件運行環(huán)境的變化可能導致軟件運行故障,從而偏離預期行為軌跡,最終給人們的工作和生活帶來不良影響甚至造成巨大損失。因此,研究軟件行為的可信性具有重要意義。

      當前對軟件行為的可信研究已有不少成果。李珍等[2]采取伴隨式分布軟件監(jiān)控機制,在節(jié)點內置入檢查點,引入適合復雜交互場景的交互關聯(lián)方法,提出了檢查點可信性及檢查點之間結構可信性的評估方法。劉玉玲等[3]提出一種基于軟件行為的檢查點風險評估信任模型,通過累積多個有疑似風險的檢查點,運用風險評估策略,判定有疑似不可信的檢查點,利用處罰或獎勵機制求出軟件行為的可信度,最終判別軟件行為是否可信。吳佳等[4]提出了一種基于隱馬爾可夫模型的軟件系統(tǒng)狀態(tài)預測方法,該方法通過收集系統(tǒng)的外在特征信息,利用隱馬爾可夫模型建立系統(tǒng)內部狀態(tài)與外部特征之間的聯(lián)系,實時了解并預測系統(tǒng)狀態(tài)。Guo等[5]提出了一個新的統(tǒng)一框架來表示硬件基礎設施和軟件程序,在統(tǒng)一框架的支持下,系統(tǒng)設計者/集成商將能夠從不可信的第三方供應商正式驗證與硬件和軟件集成的計算機系統(tǒng)的可信性。王德鑫等[6]根據(jù)從軟件開發(fā)過程的實體、行為以及制品3個方面獲取的可信證據(jù),提出了由37個可信規(guī)則、182個過程可信證據(jù)和108個制品可信證據(jù)組成的軟件過程可信度模型,并給出了基于該模型證據(jù)的軟件過程可信評價方法。賈曉輝等[7]提出了軟件質量模型及分級的可信軟件評估模型,將軟件的信任程度分為6個可信級別,基于決策樹給出了可信軟件等級的評價過程,并將其運用在可信構件平臺中。王犇等[8]提出了一種基于多屬性熵權合成的軟件可信等級評估方法,該方法重點解決了軟件可信性評估中可信證據(jù)合成時證據(jù)沖突、多屬性權重分配等問題,從而使軟件可信評估的結果更加準確和真實。Li等[9]提出了一個可靠性評估模型,著重分析了軟件可靠性的不同組成部分的影響,利用復雜網(wǎng)絡理論中最有影響力的節(jié)點發(fā)現(xiàn)算法來計算每個組件的影響因素,根據(jù)影響因素對軟件系統(tǒng)的可靠性進行了評估。Okamura等[10]提出了一個開放源碼軟件可靠性評估的統(tǒng)一建??蚣埽Y合經典的非齊次泊松過程的軟件可靠性增長模型(SRGM, software reliability growth model)與一個熟悉的回歸方案——廣義線性模型(GLM, generalized linear model),發(fā)展了一種新的框架,不僅可以估計軟件的可靠性,還可以研究軟件度量對故障檢測過程的影響。Liu等[11]構建了基于神經網(wǎng)絡的軟件可靠性的評價指標體系,并最終實現(xiàn)了軟件可靠性評估系統(tǒng)。這些研究大多是通過分析軟件行為來評估當前軟件系統(tǒng)的可信性,而通過針對軟件當前運行節(jié)點可信情況來預測下一個節(jié)點的行為可信性,即對軟件未來的運行趨勢進行評估的研究相對較少。

      因此,本文提出了一種基于檢查點場景信息的軟件行為可信預測模型,該模型的主要貢獻如下。

      1) 將獲取的檢查點場景信息輸入訓練好的RBF神經網(wǎng)絡,對當前檢查點處的軟件行為進行可信性評估。

      2) 在檢查點場景信息中,引入了時間增量和CPU利用率變化量,反映相鄰檢查點之間的系統(tǒng)狀態(tài)變化情況。

      3) 結合當前檢查點的場景信息和RBF對其可信性的評估結果,進一步運用改進的半加權馬爾可夫模型預測下一個檢查點的可信情況。

      4) 實驗結果表明,該模型可以針對性地預測軟件未來運行趨勢的可信性,便于及時管理軟件行為,加強軟件的可信性。

      2 軟件行為可信預測模型

      2.1 相關定義

      定義1 檢查點(check point)。軟件流程上的一些關鍵點,一般選取軟件獨立功能結束處和軟件分支處或比較重要的系統(tǒng)調用處作為檢查點,用以提取軟件的場景信息。

      定義3 行為軌跡。由軟件的運行軌跡和功能軌跡組成,是指軟件主體所實施的行為按照時間順序記錄下來形成的形式化序列。

      定義4 運行軌跡。是指按執(zhí)行順序將檢查點串聯(lián)起來的序列。

      定義5 功能軌跡。與運行軌跡相對應的檢查點場景信息序列。

      定義9 軟件行為監(jiān)測。是指軟件運行時,在檢查點處對行為信息進行收集、評估等操作,一般通過監(jiān)測(軟件)進行。

      2.2 場景信息的選擇

      檢查點的可信評估依賴于檢查點的行為信息。根據(jù)在軟件運行時監(jiān)測到的檢查點場景信息來分析檢查點行為的可信情況,當檢查點行為發(fā)生異常時,場景中的很多屬性信息會發(fā)生變化。吳佳等[4]選擇了變化比較直觀的CPU利用率、內存占用率和磁盤利用率等作為WebLogic服務器的系統(tǒng)特征。根據(jù)文獻[4]的研究,CBSI-TM模型選擇了檢查點時間、CPU利用率、內存利用率、網(wǎng)絡傳輸速度,同時為了研究相鄰檢查點之間發(fā)生的系統(tǒng)狀態(tài)變化,即通過軟件當前檢查點的狀態(tài)進而預測下一個檢查點的狀態(tài),CBSI-TM模型還選擇了相鄰檢查點時間增量Δ、CPU利用率變化量Δ,最終將以上6個影響因素作為檢查點的場景信息。

      因此,選擇以上這6個影響因素既能夠反映當前檢查點的系統(tǒng)狀態(tài),又能夠反映相鄰檢查點的系統(tǒng)狀態(tài)變化。

      2.3 相關方法的介紹

      2.3.1 RBF神經網(wǎng)絡

      RBF神經網(wǎng)絡[12]是一個具有單隱含層的3層前饋網(wǎng)絡,具有非線性逼近能力強、網(wǎng)絡結構簡單、學習速度快、不易陷入局部極小點和頑健性能好等優(yōu)點,利用RBF神經網(wǎng)絡有助于對大量、復雜的信息進行科學的分類。RBF神經網(wǎng)絡結構如圖1所示,包括輸入層、隱含層和輸出層。輸入層節(jié)點只傳遞輸入信息到隱含層,隱含層節(jié)點對輸入信號在局部產生響應,輸出層節(jié)點通常是簡單的線性函數(shù)。

      2.3.2 馬爾可夫模型

      馬爾可夫過程[13]是研究某一事件的狀態(tài)及狀態(tài)之間轉移規(guī)律的隨機過程理論,它通過分析某一時刻不同狀態(tài)的初始概率及狀態(tài)之間轉移概率的關系來研究未來某時刻狀態(tài)的變化趨勢。

      圖1 RBF神經網(wǎng)絡

      馬爾可夫鏈預測的理論基礎是馬爾可夫過程,對其運動變化的分析主要是研究鏈內有限馬爾可夫過程的狀態(tài)及其相互關系,進而預測鏈的未來狀況,并據(jù)此做出決策。馬爾可夫模型可表示為

      其中,()為時刻的狀態(tài)概率向量,(0)為初始時刻的狀態(tài)概率向量,為狀態(tài)轉移概率矩陣。

      由2.2節(jié)的分析可知,影響檢查點狀態(tài)變化的場景信息包括檢查點時間、CPU利用率、相鄰檢查點時間增量、CPU利用率變化量、內存利用率、網(wǎng)絡傳輸速度,這些影響因素具有很多不確定性和隨機時變特性,因此導致檢查點狀態(tài)發(fā)生改變時也呈現(xiàn)了很強的隨機時變特性,并且其變化趨勢只與前一個檢查點狀態(tài)的場景信息有關,而與其他檢查點的狀態(tài)無關。因此可以利用馬爾可夫模型的特性來預測檢查點的狀態(tài),進而對軟件的異常行為及時進行調整。

      2.4 軟件行為可信預測框架

      基于檢查點場景信息的軟件行為可信預測模型的框架如圖2所示。在每個檢查點都部署一個監(jiān)測器,并為每個被監(jiān)測檢查點創(chuàng)建一個獨立的信息存儲隊列。監(jiān)測器獲取到檢查點的場景信息后,將監(jiān)測數(shù)據(jù)暫存在對應的信息隊列中,同時添加在本地監(jiān)測信息庫中。對每個檢查點,設置一個RBF神經網(wǎng)絡分類器,對檢查點場景信息進行離線訓練和在線評估,步驟如下。

      圖2 基于檢查點場景信息的軟件行為可信預測模型的框架

      步驟1 離線訓練。從本地監(jiān)測信息庫獲取場景信息,訓練RBF神經網(wǎng)絡。檢查點場景信息通過輸入層傳遞到隱含層,隱含層神經元使用混合高斯激勵函數(shù)對輸入層的信息進行運算處理,輸出層神經元對隱含層神經元的輸出進行加權求和并輸出結果,訓練完成后,保存訓練好的RBF神經網(wǎng)絡。

      步驟2 在線評估。監(jiān)測器捕獲軟件運行時檢查點的場景信息并暫存在對應信息隊列,RBF神經網(wǎng)絡分類器從檢查點信息隊列獲取場景信息進行處理,評估當前檢查點的可信情況。

      然后通過半加權馬爾可夫模型,得到軟件在下一個檢查點處于不同狀態(tài)的概率或在當前檢查點進行調整的概率,分為離線訓練和在線評估2個步驟,介紹如下。

      步驟1 離線訓練。將軟件運行時的第個檢查點與第+1個檢查點的狀態(tài)信息作為樣本集,訓練得到第個檢查點的狀態(tài)概率向量,第個檢查點正?;蚺R界狀態(tài)a轉移到第+1個檢查點狀態(tài)a的概率P,用第個檢查點正?;蚺R界狀態(tài)對第+1個檢查點影響程度的權重對概率P加權;如果第個檢查點異常,則進行人工干預,調整為正常狀態(tài)的概率為P。對所有的轉移概率進行規(guī)范化,得到半加權馬爾可夫模型的轉移概率矩陣,建立半加權馬爾可夫模型。

      步驟2 在線評估。在軟件運行時,RBF分類器評估第個檢查點的狀態(tài),若異常,則在第個檢查點處進行人工干預檢查;否則,根據(jù)第個檢查點的狀態(tài)概率向量與加權轉移概率相乘得到第+1個檢查點的狀態(tài)概率向量,該向量中的最大概率對應第+1個檢查點的可能狀態(tài)。例如,檢查點以較高的概率進入異常狀態(tài),通過顯示器或報警器通知管理員干預檢查,甚至暫停運行,進而使軟件的異常運行及時得到調控。

      3 基于RBF神經網(wǎng)絡的檢查點狀態(tài)分類

      人們一般采用語言量對信任等級進行描述,借鑒文獻[14]的思想,該文將檢查點狀態(tài)劃分為3個等級:正常狀態(tài)、臨界狀態(tài)、異常狀態(tài)。首先需要檢查點場景信息樣本集對RBF神經網(wǎng)絡進行離線訓練,然后利用訓練好的RBF神經網(wǎng)絡對當前檢查點的狀態(tài)進行評估。

      采用基于偽逆的權值直接確定法[17],可直接得到隱含層和輸出層神經元之間的最優(yōu)連接權值。在RBF神經網(wǎng)絡中求解連接值時,隱含層與輸出層神經元的連接權值形成矩陣,利用式(2)確定連接權值,其中,為激勵矩陣,T為期望輸出矩陣,則有

      網(wǎng)絡輸出層第(=1,2,3)個神經元的輸出為

      定義網(wǎng)絡的平均輸出誤差[18]為

      通過訓練數(shù)據(jù)集訓練RBF神經網(wǎng)絡,計算網(wǎng)絡的平均輸出誤差min,然后利用校正數(shù)據(jù)集,計算網(wǎng)絡校正的平均輸出誤差cur,并增加隱含層神經元的個數(shù),若curmin,則刪除新增加的隱含層神經元個數(shù),此時網(wǎng)絡結構已達到最優(yōu)隱含層神經元數(shù)。

      RBF神經網(wǎng)絡在經過以上步驟訓練后,隱含層神經元中心、方差以及隱含層和輸出層之間的連接權值都被確定,這樣RBF分類系統(tǒng)就建立起來了。

      步驟2 在線評估。利用訓練好的RBF神經網(wǎng)絡分類器,就可以將監(jiān)測器捕獲到運行時的檢查點場景信息輸入RBF神經網(wǎng)絡,評估該檢查點的可信情況,若檢查點狀態(tài)正?;蚺R界,則利用半加權馬爾可夫模型預測下一個檢查點的可信情況,否則通知管理員進行干預,甚至暫停運行。

      4 基于半加權馬爾可夫的檢查點狀態(tài)預測

      4.1 檢查點的場景值計算

      由于場景信息中的各個因素對檢查點狀態(tài)的影響程度不同,因此半加權馬爾可夫模型對各個屬性因素采用加權的方法進行計算,求得綜合場景值。采用模糊層次分析法FAHP[19],求得各場景信息的權重,則檢查點場景值計算式為

      半加權馬爾可夫模型依據(jù)各場景信息的相對重要程度不同,在計算場景信息的權重時數(shù)量標度如表1所示。

      表1 數(shù)量標度

      根據(jù)表1,按場景信息元素的重要程度,通過兩兩比較,建立優(yōu)先關系矩陣[3]為

      由于檢查點的不同狀態(tài)對檢查點+1的影響程度不同,因此通過式(7)表示檢查點+1的狀態(tài),即

      在求解權重時,首先要將檢查點的正常狀態(tài)和臨界狀態(tài)對檢查點+1影響程度大小進行比較,然后建立優(yōu)先關系矩陣,轉換成模糊一致矩陣,利用式(6)計算權值。

      隨著社會人口老齡化和疾病譜的改變,老年人慢性非傳染性疾病的患病率高,其生活不能自理且臥床患者比例呈上升趨勢。目前,社區(qū)衛(wèi)生服務中心收治的對象90%以上是久臥病患,家屬及保姆或陪護工等已成為他們的主要照顧和護理者(照護者)。調查發(fā)現(xiàn),照護者們普遍缺乏防壓瘡的翻身護理知識和技能。由于照護者們對易發(fā)生壓瘡的這類高危人群未能正確及時掌握有效的防壓瘡翻身護理技能,導致發(fā)生壓瘡病例增多。因此,如何有效減少壓瘡的發(fā)生,對久臥病患照護者進行防壓瘡翻身護理培訓值得社區(qū)護理工作者的探索。1年多來,我們加強對照護者們防壓瘡翻身護理技能的指導和培訓,使照護者們防壓瘡的護理能力明顯提高,現(xiàn)報道如下。

      4.2 半加權馬爾可夫模型的確定

      當?shù)趥€檢查點處于異常時,就通知管理員對檢查點進行調控,檢查點從異常狀態(tài)轉移到干預狀態(tài),經過調整,檢查點從干預狀態(tài)轉為正常狀態(tài)。所以檢查點從異常狀態(tài)轉移到干預狀態(tài)和從干預狀態(tài)轉移到正常狀態(tài)是必然事件,其概率34、41都為1,而從異常狀態(tài)轉移到其他狀態(tài)是不可能事件,其概率33為0。

      對第個檢查點所有狀態(tài)轉移概率p,通過式(8)進行規(guī)范化變換,有

      通過以上過程即可建立初始半加權馬爾可夫模型,如圖3所示。

      圖3 半加權馬爾可夫狀態(tài)轉移模型

      4.3 檢查點的可信預測

      預測過程如下。

      1) 監(jiān)測器捕獲軟件運行時第個檢查點的場景信息,然后通過RBF神經網(wǎng)絡分類器判斷檢查點的狀態(tài)。

      2) 若檢查點處于異常狀態(tài),通過顯示器或報警器通知管理員干預檢查,甚至暫停運行。

      4) 若檢查點處于正?;蚺R界狀態(tài),則通過式(9)計算檢查點+1的狀態(tài)概率向量+1,其中,狀態(tài)概率的最大值所對應的狀態(tài)即為第+1個檢查點的預測狀態(tài);若顯示為異常,則通過顯示器或報警器通知管理員干預檢查,甚至暫停運行,否則,不進行任何調整。

      5 實驗與分析

      為了驗證所提模型的有效性,在配置CPU為Intel(R)i7-6700@3.40 GHz,內存為8.00 GB、Windows版本為Windows10家庭中文版的計算機上進行了仿真實驗。假設實驗是在無背景噪聲環(huán)境下進行的,以一個模擬累加計算器為目標程序,在程序第一輪累加開始處、第10輪累加結束處、第20輪累加結束處分別設置檢查點0、1、2,即在0、1、2處置入場景信息監(jiān)測器。

      在檢查點0與1之間隨機注入干擾程序t1.start(),而t1.start()是檢查點0與1之間的代碼,使累加器重復運行了檢查點0與1之間的代碼,會引起程序的系統(tǒng)狀態(tài)發(fā)生變化,例如,程序運行到檢查點2的時間變長;在檢查點0與1之間隨機注入干擾程序t1.join(),而t1.join()直接調用檢查點1與2之間的代碼,使累加器繞過檢查點1,運行了檢查點1與2之間的代碼,會引起程序的系統(tǒng)狀態(tài)發(fā)生變化,例如,程序運行到檢查點2時間變短;在檢查點1與2之間隨機注入干擾程序t1.start(),使累加器重復運行了檢查點0與1之間的代碼,會引起程序的系統(tǒng)狀態(tài)發(fā)生變化,例如,程序運行到檢查點2的時間變長;在檢查點1與2之間隨機注入干擾程序t1.join(),而t1.join()直接調用檢查點1與2之間的代碼,使累加器重復運行了檢查點1與2之間的代碼,會引起程序的系統(tǒng)狀態(tài)發(fā)生變化,例如,程序運行到檢查點2的時間變長。通過這4種隨機注入干擾程序的方式模擬目標程序異常運行。在收集數(shù)據(jù)時,通過監(jiān)測器捕獲了目標程序以及在檢查點0、1與2之間隨機注入干擾程序t1.start()或t1.join()這兩類程序后并行運行時檢查點0、1、2的場景信息。

      通過多次運行以上2類程序,直到收集了檢查點1的狀態(tài)轉移到檢查點2任一狀態(tài)的所有情況,共收集了8 794條數(shù)據(jù),每條數(shù)據(jù)包含檢查點場景信息的各個指標。對于收集的數(shù)據(jù)中重復的場景信息則沒有實驗參考價值,所以舍棄不合理的數(shù)據(jù)后,作為實驗的數(shù)據(jù)總共是8 082條。將收集的正常場景信息和異常場景信息輸入RBF神經網(wǎng)絡進行訓練,對于處于兩者之間的判定為臨界場景信息,根據(jù)訓練好的RBF神經網(wǎng)絡對每個檢查點的數(shù)據(jù)集進行分類判別。將收集的場景信息分為正常、臨界、異常狀態(tài)的樣本,然后利用分類好的樣本訓練半加權馬爾可夫模型的參數(shù)。RBF神經網(wǎng)絡和半加權馬爾可夫模型建立之后,就利用監(jiān)測器對運行程序進行監(jiān)測,根據(jù)檢查點1的狀態(tài)預測檢查點2的狀態(tài)。

      5.1 RBF神經網(wǎng)絡的建立

      RBF神經網(wǎng)絡在Matlab R2015a平臺上建立,網(wǎng)絡采用600條記錄,按照70%、15%、15%的比例分為訓練樣本集、校正樣本集、測試樣本集,預設精度為0.001,學習率設置為0.01。

      為了排除由于場景信息的各個指標因數(shù)量級或量綱上的差別而造成的影響,可用以下計算式進行歸一化。

      其中,max和min分別表示各指標中的最大值和最小值。

      在訓練RBF神經網(wǎng)絡時,將檢查點的場景信息作為輸入,檢查點狀態(tài)作為輸出,所以輸入層神經元數(shù)量為6個,輸出層神經元數(shù)量為3個,設1、2、3分別表示檢查點正常狀態(tài)、臨界狀態(tài)、異常狀態(tài),將這3個狀態(tài)的輸出形式分別設為[1,0,0]、[0,1,0]和[0,0,1]。若訓練后應用RBF神經網(wǎng)絡分類處理輸出為[1,0,0],則相關樣本屬于正常類;若RBF神經網(wǎng)絡分類處理輸出為[0,1,0],則相關樣本屬于臨界類;若RBF網(wǎng)絡分類處理輸出為[0,0,1],則相關樣本屬于異常類。

      根據(jù)神經網(wǎng)絡的運行機制分析可知[20],影響神經網(wǎng)絡泛化能力的因素可以分成兩類:一類是樣本的影響,另一類是來自神經網(wǎng)絡本身的影響。本實驗主要分析RBF神經網(wǎng)絡本身對其泛化能力的影響,即通過分析連接權值及訓練精度對泛化能力的影響,從而確定RBF神經網(wǎng)絡的結構。

      下面,通過訓練數(shù)據(jù)集、校正數(shù)據(jù)集對RBF神經網(wǎng)絡的連接權值及訓練精度進行確定,并以網(wǎng)絡的平均輸出誤差為評判指標,然后測試RBF神經網(wǎng)絡的預測能力,輸入測試樣本,以分類正確率為評判指標。初始設置隱含層神經元數(shù)為10個,并每次以10個訓練樣本進行迭代訓練RBF神經網(wǎng)絡,而且隱含層神經元個數(shù)隨著樣本的增加而增加,同時,通過式(2)得出網(wǎng)絡在每次迭代訓練的權值,通過式(4)得出網(wǎng)絡的平均輸出誤差,直到每一個訓練樣本都曾被用于隱含層神經元中心,然后通過校正樣本集增加隱含層神經元個數(shù),如果此時網(wǎng)絡的平均輸出誤差比訓練的誤差小,則校正網(wǎng)絡的權值及平均輸出誤差;隨著隱含層神經元個數(shù)的增加,如果此時網(wǎng)絡的平均輸出誤差比前一次增加的隱含層神經元校正的誤差大,則保持前一次增加的隱含層神經元個數(shù),說明網(wǎng)絡的平均輸出誤差已達到最小值,此時RBF神經網(wǎng)絡結構建立完成。然后通過測試數(shù)據(jù)集測試網(wǎng)絡的預測能力,檢查點1與檢查點2的RBF網(wǎng)絡訓練和校正的平均輸出誤差結果分別如圖4和圖5所示,測試分類的預測精度分別如表2和表3所示。

      圖4 檢查點e1的RBF網(wǎng)絡輸出誤差變化曲線

      圖5 檢查點e2的RBF網(wǎng)絡輸出誤差變化曲線

      表2 檢查點e1的測試分類矩陣

      表3 檢查點e2的測試分類矩陣

      注:沿行方向是期望類別結果,沿列方向是實際類別結果。

      從圖4和圖5可以看出,隨著隱含層神經元個數(shù)的增加,RBF神經網(wǎng)絡的平均輸出誤差降低,當輸出誤差達到最小時,繼續(xù)增加隱含層神經元個數(shù),輸出誤差會增大,刪除使輸出誤差增大的多余隱含層神經元個數(shù),確定檢查點1的RBF網(wǎng)絡的隱含層神經元數(shù)為480個,檢查點2的RBF網(wǎng)絡的隱含層神經元數(shù)為470個,所以此時檢查點1與2的RBF分類系統(tǒng)就建立起來了。

      圖6 評估檢查點e2狀態(tài)的散點

      表2和表3的狀態(tài)分類矩陣實驗結果表明,采用RBF神經網(wǎng)絡能夠完成對檢查點1與2狀態(tài)的正確分類,總的正確率分別達到95.93%和94.81%。因此可以確定此時RBF網(wǎng)絡的預測具有很好的泛化能力。

      5.2 半加權馬爾可夫模型的建立

      表4 0.1~0.9標度取值

      采用FAHP方法計算場景信息T、ΔT、P、ΔP、M、B對應的權重,構建優(yōu)先模糊矩陣為

      通過以上步驟,建立初始半加權馬爾可夫模型。

      5.3 半加權馬爾可夫模型的預測

      程序在檢查點1與2之間運行時間的增量最短是27.353 s,而通過檢查點1狀態(tài)預測檢查點2狀態(tài)的時間是16.239 s,這表明利用半加權馬爾可夫模型進行預測是有意義的。

      本實驗選擇50個程序周期對檢查點2的狀態(tài)進行評估,第1、5、8、11、15、17、23、30、37、41、44、48周期在檢查點0與1之間注入干擾程序t1.start(),并行運行目標程序和注入干擾后的程序;第4、7、20、22、33、39周期使累加器正常運行;第14、23、30、34、35、36、38、40、43周期在檢查點1與2之間注入干擾程序t1.join(),并行運行目標程序和注入干擾后的程序,收集這3種情況下的檢查點1、2的場景信息進行實驗。檢查點2狀態(tài)的散點評估如圖6所示。

      圖7 評估檢查點e2狀態(tài)總時間開銷的柱狀圖

      1) 本文CBSI-TM模型只是在第2、29、50周期對檢查點2狀態(tài)的預測稍有偏差,因為在計算加權轉移概率的權值時,除了檢查點1是軟件當前運行的場景值,檢查點2所有狀態(tài)的場景值都是均值,與實際稍有偏差,導致預測檢查點2的狀態(tài)有偏差,所以其正確率為94%,而且CBSI-TM可以對檢查點2的狀態(tài)進行雙重評估,從5.1節(jié)測試得出,RBF分類方法對檢查點2狀態(tài)評估的平均正確率為94.81%,所以CBSI-TM進行雙重評估的平均正確率為94.405%。

      2) 當采用CBRA-TM模型評估檢查點2的狀態(tài)時,在第6、17、37、42周期對檢查點2狀態(tài)的評估與實際狀態(tài)有所不同,因為通過檢查點發(fā)生風險的可能性與設定的閾值對比的方式來判斷檢查點的狀態(tài)時,閾值的設定會導致對檢查點狀態(tài)的評估有偏差,所以其正確率為92%。

      3) 當采用RBF神經網(wǎng)絡分類方法時,在第3、6周期對檢查點2狀態(tài)的評估與實際狀態(tài)有所不同,因此其正確率為96%。

      4) CBSI-TM模型評估的正確率低于RBF分類方法,這可能是因為在檢查點1、2之間存在干擾,在檢查點1預測時引起檢查點1場景信息變化不明顯,導致預測檢查點2異常狀態(tài)有偏差。

      因為CBSI-TM模型可以在程序運行到檢查點1時對檢查點2的狀態(tài)進行預測,而CBRA-TM模型和RBF神經網(wǎng)絡分類方法只有在程序運行到檢查點2時,才對檢查點2的狀態(tài)進行評估,所以從圖7可以得到以下結論。

      1) CBSI-TM模型評估檢查點2狀態(tài)的總時間開銷比CBRA-TM模型和RBF神經網(wǎng)絡評估檢查點2狀態(tài)的總時間開銷明顯少,RBF比CBRA-TM模型的時間開銷少,這是因為CBRA-TM模型需要計算場景值并與其正常范圍進行對比,才能評估檢查點2的狀態(tài),而RBF通過將檢查點2狀態(tài)信息輸入RBF神經網(wǎng)絡即可得到檢查點2的狀態(tài),因此處理檢查點2信息的時間比CBRA-TM模型少,但RBF與CBRA-TM模型均是在程序運行到檢查點2處,才對檢查點2狀態(tài)進行評估,所以總的時間開銷是相似的。

      2) 利用CBSI-TM模型對檢查點1的狀態(tài)進行評估后,預測檢查點2的狀態(tài)是合理和有效的,而且能實時調整半加權馬爾可夫模型的參數(shù),實現(xiàn)了動態(tài)預測。

      3) 該實驗也體現(xiàn)出CBSI-TM模型具有較強的針對性,只要在某個程序運行軌跡中設置檢查點,發(fā)現(xiàn)檢查點之間的狀態(tài)變化規(guī)律,就能較為直觀地反映軟件未來運行趨勢的可信情況,從而實現(xiàn)對軟件的異常行為提前做出調控。

      6 結束語

      本文提出了一種基于檢查點場景信息的軟件行為可信預測模型,該模型通過RBF神經網(wǎng)絡和半加權馬爾可夫模型實現(xiàn)對檢查點狀態(tài)的可信評估方法,利用半加權馬爾可夫模型有效地預測下一個檢查點的狀態(tài),并且可以在程序運行到下一個檢查點時,利用RBF神經網(wǎng)絡分類器評估下一個檢查點的狀態(tài),實現(xiàn)了對下一個檢查點狀態(tài)雙重評估的效果。實驗表明,該模型能夠較準確和合理地預測檢查點的狀態(tài)來判斷軟件未來運行趨勢的可信情況。下一步的工作將對軟件的行為軌跡進行分析,進一步提高評估軟件可信情況的合理性和精確度。

      [1] 萬爛軍, 李長云, 賀宗梅. 分布式軟件的交互行為監(jiān)測機制的研究[J]. 計算機工程與應用, 2011, 47(5): 60-64.

      WAN L J, LI C Y, HE Z M. Research on interactive behavior monitoring mechanism of distributed software[J]. Computer Engineering and Applications, 2011, 47(5): 60-64.

      [2] 李珍, 田俊峰, 常卓, 等. 基于檢查點的分布式軟件監(jiān)控與可信性評價[J]. 通信學報, 2016, 7(3): 7-18.

      LI Z, TIAN J F, CHANG Z, et al. Distributed software monitoring and trustworthiness evaluation based on checkpoints[J]. Journal on Communications, 2016, 37(3): 7-18.

      [3] 劉玉玲, 杜瑞忠, 馮建磊, 等. 基于軟件行為的檢查點風險評估信任模型[J]. 西安電子科技大學學報(自然科學版), 2012, 39(1): 179-190.

      LIU Y L, DU R Z, FENG J L, et al. Trust model of software behaviors based on checkpoint risk assessment[J]. Journal of Xidian University, 2012, 39(1): 179-190.

      [4] 吳佳, 曾惟如, 陳瀚霖, 等. 基于隱馬爾可夫模型的軟件狀態(tài)評估預測方法[J]. 軟件學報, 2016, 27(12): 3208-3222.

      WU J, ZENG W R, CHEN H L, et al. Approach of measuring and predicting software system state based on hidden Markov model[J]. Journal of Software, 2016, 27(12): 3208-3222.

      [5] GUO X, DUTTA R G, JIN Y. Eliminating the hardware-software boundary: a proof-carrying approach for trust evaluation on computer systems[J]. IEEE Transactions on Information Forensics and Security, 2017, 12(2): 405-417.

      [6] 王德鑫, 王青, 賀劼. 基于證據(jù)的軟件過程可信度模型及評估方法[J]. 軟件學報, 2017, 28(7): 1713-1731.

      WANG D X, WANG Q, HE J. Software process reliability model based on evidence and evaluation method[J]. Journal of Software, 2017, 28(7): 1713-1731.

      [7] 賈曉輝, 張文寧, 劉安戰(zhàn). 分級的軟件可信評估模型研究及應用[J]. 計算機科學, 2017, 44(4): 169-172.

      JIA X H, ZHANG W N, LIU A Z. Research and application of hierarchical software trustworthiness evaluation model[J]. Computer Science, 2017, 44(4): 169-172.

      [8] 王犇, 周興社, 楊亞磊. 基于多屬性熵權合成的軟件可信等級評估方法[J]. 微電子學與計算機, 2014, 31(6): 21-24.

      WANG B, ZHOU X S, YANG Y L. Software trustworthiness grade evaluation method based on multiattribute entropy weight synthesis[J]. Microelectronics & Computer, 2014, 31(6): 21-24.

      [9] LI K W, LIU L, ZHAI J N. Reliability evaluation model of component-based software based on complex network theory[J]. Quality and Reliability Engineering International, 2017, 33(3): 543-550.

      [10] OKAMURA H, DOHI T. Towards comprehensive software reliability evaluation in open source software[C]. IEEE International Symposium on Software Reliability Engineering. 2015: 121-129.

      [11] LIU L, JIANG Z. Research on software reliability evaluation technology based on BP neural network[C]//IEEE/ACIS International Conference on Computer and Information Science. 2016: 1-4.

      [12] 匡芳君, 王艷華, 唐賢瑛. 基于RBF神經網(wǎng)絡的客戶分類模型[J]. 長沙理工大學學報, 2005, 2(4): 70-73.

      KUANG F J, WANG Y H, TANG X Y. Customer classification model based on RBF neural network[J]. Journal of Changsha University of Science and Technology, 2005, 2(4): 70-73.

      [13] 許智慧. 馬爾可夫狀態(tài)轉移矩陣的求解方法研究[D]. 哈爾濱: 東北農業(yè)大學, 2013.

      XU Z H. Study on the solution of Markov state transition matrix[D]. Harbin: Northeast Agricultural University, 2013.

      [14] J?SANG A. A logic for uncertain probabilities[J]. International Journal of Uncertainty, Fuzziness and Knowledge-Based Systems, 2001, 9(3): 279-311.

      [15] 劉輝, 白峰衫. 基于混合高斯過程模型的高光譜圖像分類算法[J]. 高校應用數(shù)學學報, 2010, 25(4): 379-385.

      LIU H, BAI F S. Hyperspectral image classification based on mixed gaussian process model[J]. Applied Mathematics & A Journal of Chinese Universities, 2010, 25(4): 379-385.

      [16] 王愛萍, 張功營, 劉方. EM算法研究與應用[J]. 計算機技術與發(fā)展, 2009, 19(9): 108-110.

      WANG A P, ZHANG G Y, LIU F. Research and application of EM algorithm[J]. Computer Technology and Development, 2009, 19(9): 108-110.

      [17] 張雨濃, 李克訥, 譚寧. 中心、方差及權值直接確定的RBF神經網(wǎng)絡分類器[J]. 計算機技術與自動化, 2009, 28(3): 5-9.

      ZHANG Y N, LI K N, TAN N. RBF neural network classifier with center, variance and weight directly determined[J]. Computer Technology and Automation, 2009, 28(3): 5-9.

      [18] 張雨濃, 王茹, 廖柏林, 等. 權值與結構雙確定法的RBF神經網(wǎng)絡分類器[J]. 計算機技術與自動化, 2014, 33(3): 1-7.

      ZHANG Y N, WANG R, LIAO B L, et al. Both weights and structure determination method of RBF neural network classifier[J]. Computer Technology and Automation, 2014, 33(3): 1-7.

      [19] 張吉軍. 模糊層次分析法[FAHP][J]. 模糊系統(tǒng)與數(shù)學, 2000, 14(2): 80-88.

      ZHANG J J. Fuzzy analytical hierarchy process[J]. Fuzzy Systems and Mathematics, 2000, 14(2): 80-88.

      [20] 周文冬. 基于PSO的自組織RBF神經網(wǎng)絡優(yōu)化設計及應用研究[D]. 北京: 北京工業(yè)大學, 2016.

      ZHOU W D. Optimazation and applizaction of self-organizing network based on PSO[D]. Beijing: Beijing University of Technology, 2016.

      [21] 駱正清, 楊善林. 層次分析法中幾種標度的比較[J]. 系統(tǒng)工程理論與實踐, 2004(9): 51-60.

      LUO Z Q, YANG S L. Comparative study on several scales in AHP[J]. Systems Engineering Theory and Practice, 2004(9): 51-60.

      Software behavior trust forecast model based on check point scene information

      TIAN Junfeng1,2, GUO Yuhui1,2

      1. School of Cyber Security and Computer, Hebei University, Baoding 071002, China 2. Key Lab on High Trusted Information System in Hebei Province, Baoding 071002, China

      In order to ensure the trustworthiness of software, and evaluate the trusted status of the software after running for a period of time by monitoring software behavior dynamically, a software behavior trust forecast model on checkpoint scene information which was called CBSI-TM was presented. The model set up a number of checkpoints in the software running track, and introduced the time increment of adjacent checkpoints, and the change of CPU utilization rate to define the scene information, and reflected the relationship between adjacent checkpoints scene information. Then the RBF neural network classifier evaluated the status of the current checkpoint to judge the trustworthiness of the software, and the semi weighted Markov model predicted the situation of the next checkpoint to evaluate the trustworthiness of future running trend of the software. The experimental results show that the CBSI-TM model can predict the future trusted status of the software effectively, and verify that the model is more reasonable and effective.

      software trustworthiness, check point, RBF neural network, semi weighted Markov model

      TP393.08

      A

      10.11959/j.issn.1000?436x.2018163

      田俊峰(1965?),男,河北保定人,河北大學教授、博士生導師,主要研究方向為信息安全與分布式計算。

      郭玉慧(1992?),女,山西朔州人,河北大學碩士生,主要研究方向為信息安全與分布式計算。

      2018?01?09;

      2018?07?30

      國家自然科學基金資助項目(No.61170254);河北省自然科學基金資助項目(No.F2016201244)

      The National Natural Science Foundation of China (No.61170254), The Natural Science Foundation of Hebei Province (No.F2016201244)

      猜你喜歡
      馬爾可夫檢查點神經網(wǎng)絡
      Spark效用感知的檢查點緩存并行清理策略①
      免疫檢查點抑制劑相關內分泌代謝疾病
      神經網(wǎng)絡抑制無線通信干擾探究
      電子制作(2019年19期)2019-11-23 08:42:00
      免疫檢查點抑制劑在腫瘤治療中的不良反應及毒性管理
      保費隨機且?guī)в屑t利支付的復合馬爾可夫二項模型
      基于神經網(wǎng)絡的拉矯機控制模型建立
      重型機械(2016年1期)2016-03-01 03:42:04
      復數(shù)神經網(wǎng)絡在基于WiFi的室內LBS應用
      分布式任務管理系統(tǒng)中檢查點的設計
      基于SOP的核電廠操縱員監(jiān)視過程馬爾可夫模型
      應用馬爾可夫鏈對品牌手機市場占有率進行預測
      宣武区| 监利县| 高青县| 尉氏县| 正镶白旗| 海口市| 永济市| 新化县| 望都县| 宜春市| 平利县| 望谟县| 光山县| 石泉县| 临澧县| 日喀则市| 辛集市| 霍邱县| 双鸭山市| 沾化县| 眉山市| 尼木县| 嘉义县| 怀化市| 万宁市| 陆川县| 大新县| 肇东市| 许昌市| 柳州市| 新田县| 华阴市| 云龙县| 万宁市| 米脂县| 炉霍县| 来凤县| 长春市| 衡水市| 靖远县| 天门市|