構建軟件課程貝葉斯網絡的應用_第1頁
構建軟件課程貝葉斯網絡的應用_第2頁
構建軟件課程貝葉斯網絡的應用_第3頁
構建軟件課程貝葉斯網絡的應用_第4頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、構建軟件課程貝葉斯網絡的應用摘要貝葉斯網絡是將概率統計應用于復雜系統的不確定性推理和數據分析 的一種有效工具。本文基于某一高職學院軟件技術專業學生的專業課程成績構建 軟件課程貝葉斯網絡,并在軟件課程貝葉斯網上進行了推理預測。關鍵詞貝葉斯網絡;學生成績;軟件課程0引言隨著科技信息技術的高速發展,貝葉斯網絡以其不確定知識表達形式和豐富 的概率表達能力1-4 成為了目前研究的一個熱點。本文基于軟件專業學生成績為 訓練樣本數據,通過模擬退火算法構建軟件課程貝葉斯網絡,有效的描述了課程 之間的依賴關系,用條件概率表體現了依賴程度。1貝葉斯網絡1.1貝葉斯網絡定義貝葉斯網絡是一個有向無環圖,由代表變量節點

2、及連接這些節點有向邊構 成。定義如下:定義1設U是一個隨機變量集,U=X1,X2,Xn,其中Xi是從一有 限集Val(Xi)中取值。以8=表示一個建立在變量集U上的貝葉斯網絡,其中 G是一個有向無環圖,其頂點對應于有限集U中的隨機變量X1,X2,Xn, 其弧代表一個函數依賴關系。P是U中變量所組成的條件概率,每節點Xi都有 一個條件概率分布表:P (XilParents (Xi) I XiU),量化了在父節點Parents (Xi) 發生的條件下對節點Xi的條件概率,這個網絡所表示的聯合概率分布(U) 4,5 為:1.2構建貝葉斯網絡構建貝葉斯網絡的過程主要包括兩個部分:一部分是貝葉斯網絡的結

3、構學 習,另一部分是貝葉斯網絡的參數學習。結構學習是利用一定的方法建立貝葉斯 網絡結構的過程,在該過程中首先要對此貝葉斯網絡的應用背景進行分析,并確 定網絡模型中所要用到的變量,結構學習是參數學習環節的基礎。參數學習是量 化網絡的過程,它在網絡結構已知的情況下計算各節點Xi的條件概率。從數據集中學習貝葉斯網絡主要就是建立評分標準,用評分標準來衡量搜索 網絡結構。從所有可能的網絡結構空間搜索最佳的貝葉斯網絡的結構是一個NP 難問題,為了降低搜索空間,一般使用啟發式搜索算法。本文采用基于貝葉斯評 分函數的模擬退火搜索算法構建軟件課程貝葉斯網絡。1.2.1貝葉斯評分函數貝葉斯評分的基本相思是在給定的

4、數據集D中,利用貝葉斯公式計算后驗 概率,尋找最大后驗概率的結構作為貝葉斯網絡結構。命題1數據數據集為D=d1,d2,.,dn,設在D下的可能的兩網絡拓撲結構為 Bsi和Bsj,比較這兩個網絡結構的后驗概率用公式計算6:為了有效的計算P (Bs , D)假設:數據集D中的變量都是無缺失的離散 型變量,先驗概率分布是均勻分布的。這樣可得到下列公式5:(3)其中:ri為X中的離散變量xi取值的可能值:(vil,vi2,viri)的個 數,Bs為包含X中所有變量的任意一個貝葉斯網絡結構,Bs中的任意變量xi 的父節點集為ni,wij是在數據庫D中的第j個不同的取值。設ni有qi種不同 的取值,Nij

5、k為數據庫D中,變量xi取值為vij且ni取值為wij的記錄個數, 且定義。要使P (Bs,D)最大化,由于任意結構Bs的先驗概率P (Bs)是相等的, 可得到:(4)即在給定數據集D,求最大后驗概率的拓撲結構。1.2.2模擬退火搜索算法模擬退火搜索算法構建貝葉斯網絡結構,是從沒有任何一條邊的網絡結構開 始,然后,改變當前網絡結構一條邊的方向構造出一個新的網絡結構,用貝葉斯 評分標準選擇后驗概率大的網絡結構。模擬退火搜索算法可描述為:輸入:學生訓練數據集D,空的網絡結構B0輸出:葉斯網絡B初始化,從沒有弧的邊結構B0開始P (B0,D);在Bi的基礎上加一條邊或減一條邊,改變一條邊的方向,得到

6、P(Bi+1,D);3)如果 P (Bi+1,D) P (Bi,D),則以 P (Bi+1,D)代替 P (Bi,D),重復(2);4)當 P (Bi+1, D) -P (Bi, D) 0,時結束算法;5)輸出貝葉斯網B。2實驗結果本文的數據來源于某一高職學院軟件技術專業2006-2010年共73名學生所 學主要專業課程11門成績,隨機抽取57名學生的成績作為樣本數據集構建模型, 16名學生成績檢驗模型的精度。將各門課程作為貝葉斯網絡的節點,這些課程 分別為:C#語言、數據結構、數據庫原理、Windows XP的安裝與配置、基于 C#的.Net Framework程序設計、HTML語言、SQL

7、 Server 2000數據庫程序設計、 ADO.Net程序設計、安全性編程方法、基于C#的Windows應用程序設計、面 向.NET的Web應用程序設計。實驗在WEAK軟件平臺下首先對學生成績數據 進行數據預處理,然后進行樣本數據訓練得到軟件課程貝葉斯網絡。2.1數據預處理Weka平臺在構建貝葉斯網絡的數據集進行預處理時,需要滿足兩點6:所 有的實例都不能有缺損值和所有的變量都是離散型的有限變量。由于學生成績樣本數據中沒有缺失的成績,滿足Weka平臺的第一個條件。 考慮到算法的復雜性,本文將原始成績二值離散化以滿足Wake平臺的第二個條 件,將成績轉化為二值數據,以成績60分為分界點,即某學

8、生第i門課程成績 大于60記為1,低于60記為0。對學生成績數據訓練數據集運行結果的精度為94.7368%。用余下的16個學 生成績數據作為檢驗數據集,檢驗軟件課程貝葉斯網絡模型的準確度為93.75%, 與訓練集的準確度94.7368 %對比,此模型的準確性較接近,這表明此模型不會 在應用未知數據或未來數據時發生故障。2.3軟件課程貝葉斯網絡的推理預測如假設C#語言成績不及格小于60分c=0,推出數據結構不及格的概率p (d=0lc=0)是多少?即在證據C#語言被觀察到的情況下,根據軟件課程貝葉斯 網絡分類器計算數據結構數據結構=0的概率p(d=0lc=0)。根據全概率公式5,可知:由上式計算

9、表明,在沒有證據時數據結構不及格的先驗概率p(d=0)為0.078, 而如果已知證據C#語言不及格c=0后,數據結構不及格的后驗概率p(d=0lc=0)為0.160285。即數據結構不及格的可能性由0.078提高到了 0.160285。由圖1可直觀的得到各門課程之間的依賴關系。C#語言與7門課程直接相 連,因此這門專業基礎課程很重要,windows xp的安裝與配置、數據結構、HTML 語言、基于C#的.Net Framework作為專業基礎課程,順序排在前面,而SQL Server 2000數據庫程序設計、ADO.Net程序設計、安全性編程方法是實踐性較強的專 業應用課程順序偏后,而綜合性最

10、強的基于C#的Windows應用程序設計、面 向.NET的Web應用程序設計排在最后這是合理的。由此看來,要想學好實踐性 強的應用課程,就必須有較強的專業基礎課程成績作后盾。3結論高職院校培養學生的主要途徑是教學,在教學活動中科學、合理的學期課程 設置是保證教學質量的基礎和前提。本文以學生成績為訓練數據集,構建軟件課 程貝葉斯網絡,用有向邊直觀的揭示了各門課程的之間的依賴關系,條件概率表 體現了依賴程度。并在此軟件課程貝葉斯網絡基礎上推出了軟件課程的先后順序 和對學生后續課程的學習成績進行預測。這對高等職業院校的學期課程設置和師 資安排、學生的學習研究方向選擇,有一定的參考價值。參考文獻王麗珍

11、,周麗華,陳紅梅,鄒力鹍.數據倉庫與數據挖掘原理及應用M. 北京:科學出版社,2005.J.Pearl.Probabilistic reasoning in intelligent systems:network of plausible inferenceM.San Mates, California, Morgen Kaufmann publishers, Inc.,1998.D. Heckerman,M.P.Wellman.Bayesian networksJ. Communication of the ACM, Vol.38,No.3,pp: 27-30,1995.劉惟一,李維華,岳昆.智能數據分析M.北京:科學

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論