摘 要: 將課程教學資源融合到學生模型構建中,描述了包括領域知識拓撲結構的建立、條件概率表學習算法的推理的詳細過程,最終得到了學生模型中關于章節(jié)知識項的貝葉斯網(wǎng)絡結構圖,并通過一個實驗系統(tǒng)對個性化教學系統(tǒng)中學生模型建構的整個框架的可行性進行了驗證。
關鍵詞: 個性化教學;貝葉斯網(wǎng)絡;學生模型;建模
個性化教育是現(xiàn)代遠程教育最重要的特點之一,其中計算機網(wǎng)絡特有的信息、數(shù)據(jù)庫管理技術和雙向交互功能,為個性化教學提供了有效的實現(xiàn)途徑與條件。在個性化教學系統(tǒng)中,學生模型是學生的認知狀態(tài)表示。它的作用是為系統(tǒng)提供關于學生對知識的掌握情況的信息,以便能夠對學生進行正確的評價和預測,從而提供個性化的學習內(nèi)容。因此,如何建立一個準確、高效的學生模型是整個系統(tǒng)的核心。分析和表示學生模型的過程稱為學生建模[1-2]。
1 有關貝葉斯網(wǎng)絡理論知識
貝葉斯網(wǎng)絡(Bayesian Networks)也稱為信度網(wǎng)、因果網(wǎng),主要用于表示變量之間的依賴關系,并為任何全聯(lián)合概率分布提供一種簡明的規(guī)范。貝葉斯網(wǎng)表達了各個節(jié)點間的條件獨立關系,可以直觀地從貝葉斯網(wǎng)中得出屬性間的條件獨立以及依賴關系;另外可以認為貝葉斯網(wǎng)以另一種形式表示出了事件的聯(lián)合概率分布,根據(jù)貝葉斯網(wǎng)的網(wǎng)絡結構以及條件概率表(CPT)可以快速得到每個基本事件(所有屬性值的一個組合)的概率。貝葉斯學習理論利用先驗知識和樣本數(shù)據(jù)來獲得對未知樣本的估計,而概率(包括聯(lián)合概率和條件概率)是先驗信息和樣本數(shù)據(jù)信息在貝葉斯學習理論當中的表現(xiàn)形式。
2 學生模型中教學資源信息的建模
貝葉斯網(wǎng)絡的建模目的是對所包含的定性知識和定量知識進行結構描述,定性部分由網(wǎng)絡結構來描述,定量部分由條件概率分布函數(shù)來表示。從原始數(shù)據(jù)中構造貝葉斯網(wǎng)絡模型,實質(zhì)也是對原始數(shù)據(jù)進行數(shù)據(jù)挖掘:先找出最符合原始數(shù)據(jù)定性的網(wǎng)絡圖關系,然后根據(jù)網(wǎng)絡圖中的因果關系,計算節(jié)點間的條件概率。構造貝葉斯網(wǎng)絡可以分為4個階段:(1)定義域變量;(2)確定網(wǎng)絡結構;(3)確定條件概率分布函數(shù);(4)運用到實際系統(tǒng)中,并根據(jù)系統(tǒng)產(chǎn)生的數(shù)據(jù)優(yōu)化貝葉斯網(wǎng)絡。
在學生模型中教學資源信息的建模初期要考慮整個教學資源信息的網(wǎng)絡結構,然后再考慮局部的知識結構:知識點的前驅、后繼關系,知識點之間的相互影響程度,知識點的狀態(tài),以及與知識點相關的測試(包括識記、理解、應用、分析、綜合等狀態(tài)),只有經(jīng)過測試,才能實現(xiàn)個性化教學。整個過程為將來個性化的評估做準備,根據(jù)評估結果實現(xiàn)貝葉斯網(wǎng)絡的局部更新,也即學生知識狀態(tài)的更新,貝葉斯網(wǎng)絡根據(jù)更新過的學生狀態(tài),個性化地把內(nèi)容呈現(xiàn)給學生[3]。
2.1 學生模型中整體教學資源的知識結構
本文把教學資源分為6個層次:課程知識、主知識項(按章劃分)、一級知識項(按節(jié)劃分)、二級知識項(也稱復合知識項)、基本概念知識項、與上述知識相關的測試。層與層之間只有繼承關系,同層內(nèi)的知識可以是前驅和后繼的關系,也可以是平行和關聯(lián)等關系。可以認為前驅和后繼關系是關聯(lián)的一種特殊形式。
2.2 學生模型中局部教學資源的知識結構
2.2.1 定義域變量和確定網(wǎng)絡結構
學生模型的建模就是要針對學生所學課程掌握的知識結構進行建模,從而根據(jù)學生的知識狀況給出學生學習狀況的評價。
以《Delphi程序設計教程》為例,按照課程的章節(jié)安排列出課程的知識結構,為了簡化,只選取部分知識內(nèi)容做出說明,整體結構可依次類推。比如在基本程序控制結構這一章,一級知識項(章)為:基本程序控制結構;二級知識項(節(jié))有:順序結構、循環(huán)結構、選擇結構;復合概念有:While循環(huán)、For循環(huán)、Repeat循環(huán);基本概念有:關系運算符、賦值語句、變量、數(shù)據(jù)類型。需要在貝葉斯網(wǎng)絡中加入測試項作為輸入節(jié)點,也可稱之為觀測節(jié)點。每個節(jié)點代表一個測試該知識點的測試項。
節(jié)點的狀態(tài)表示學生對該知識項的掌握程度,例如可以用4個等級來表示學生對知識項的掌握程度,A:表示學生對特定知識項已完全熟練掌握; B:表示學生對知識項基本掌握,但是仍有一些問題;C:表示學生處在初級階段,有許多問題;D:表示學生對該知識項完全不了解。每一等級對應一個條件概率值(值的加權和為1),該值是基于對用戶的觀測值得到的用戶對知識項的掌握程度。在系統(tǒng)設計過程中,為了簡化,設置節(jié)點的狀態(tài)為True(掌握)、False(未掌握)。
2.2.2 條件概率估計
經(jīng)過上面的分析,接下來將討論如何獲得知識項之間的影響程度的條件概率表。
在貝葉斯網(wǎng)絡構建中所有節(jié)點都要給定條件概率,對于沒有父節(jié)點的節(jié)點,需要給定其先驗概率,條件概率可以通過樣本學習和通過專家估計獲得[4]。
(1)設計分析
在由數(shù)據(jù)類型(A)、關系運算符(B)、變量(C)、While循環(huán)(D)教學資源構成的網(wǎng)絡拓撲結構中,每個節(jié)點有兩個離散的狀態(tài):True和False,如果需要,節(jié)點也可以包括更多的狀態(tài)。設計網(wǎng)絡時,必須指定每個節(jié)點的條件概率表,需要獲得P(A)、P(C)、P(B)、P(D/C)、P(D/B)。
(2)樣本收集
經(jīng)驗數(shù)據(jù)來自于某校某班學生學習“基本程序控制結構”這一章節(jié)后,經(jīng)過測試,對其測試結果進行分析并獲得學習知識項之間的相互影響程度,這樣就確定了利用貝葉斯網(wǎng)絡所建學生模型中網(wǎng)絡拓撲知識項之間的條件概率函數(shù)。
將學生的得分情況分為100~90、90~80、80~70、70~60、60以下5個分數(shù)段。認為如果學生答對涉及到該知識項的題目,那么他對該知識項的知識狀態(tài)為True(掌握);反之,如果答錯,則認為他對該知識項的知識狀態(tài)為False(未掌握)。
(3)學習條件概率表[5-6]
算法的設計思想是:首先按照網(wǎng)絡構建中節(jié)點的拓撲順序,根據(jù)每個分數(shù)段隨機抽取n份考試的試卷用于對網(wǎng)絡中各節(jié)點的狀態(tài)進行賦值,當所有節(jié)點都被賦值一遍后就得到該網(wǎng)絡中的一次采樣樣本,依此重復,得到10 n個樣本,即一個樣本序列;然后對該樣本序列按相關列進行聯(lián)合統(tǒng)計可得到網(wǎng)絡近似推理結果。由于隨機采樣時考慮了節(jié)點的先驗信息,所以當樣本數(shù)n取很大時,這些采樣樣本的邊緣統(tǒng)計量和條件統(tǒng)計量就可以趨近于事件的真實發(fā)生概率和條件發(fā)生概率。
對所有節(jié)點都采樣了m遍,得到m組樣本,即樣本序列S,然后對樣本序列S按列進行單獨統(tǒng)計,得到節(jié)點的全概率;對多列進行聯(lián)合統(tǒng)計,得到節(jié)點間的聯(lián)合概率和條件概率。
所謂聯(lián)合統(tǒng)計,就是把證據(jù)節(jié)點和推理目標節(jié)點的采樣樣本聯(lián)合起來進行統(tǒng)計,就得到了給定證據(jù)后目標節(jié)點發(fā)生的條件概率和聯(lián)合概率。對網(wǎng)絡中的所有節(jié)點按拓撲順序采樣m次,得到樣本序列S,對樣本序列進行適當?shù)慕y(tǒng)計,可以得到網(wǎng)絡的近似推理結果。
節(jié)點Ni(i=1,…,n)發(fā)生的全概率就是單獨對該列進行統(tǒng)計的結果。例如,要知道學生對于“變量”(C)已經(jīng)True的情況的概率P(C=True),只要把對是T的那些樣本挑選出來,然后統(tǒng)計一下T的個數(shù),除以總的采樣次數(shù)m,就可以近似為C這一知識項學生已經(jīng)True(掌握)的概率,即:
節(jié)點Ni(i=1,…,n)發(fā)生的條件概率就是把那些條件節(jié)點和該節(jié)點所在的相關列聯(lián)合起來進行統(tǒng)計。例如,計算節(jié)點“D”在節(jié)點“B”已經(jīng)True(掌握)情況下發(fā)生T狀態(tài)(D也為True)的概率,也即求P(D=True|B=True),可以這樣進行:首先,把在“B”中是T的那些樣本挑選出來,形成新的樣本序列So,其組數(shù)為no;其次,把樣本序列So中在“D”中是T的那些樣本挑選出來,然后統(tǒng)計T的個數(shù),除以no,就可以近似為“D”在“B”取狀態(tài)為True的情況下發(fā)生False狀態(tài)的概率:
類似地,幾個節(jié)點的聯(lián)合概率則是把同時滿足這些節(jié)點狀態(tài)的樣本挑出來,得到的樣本組數(shù)除以總的樣本組數(shù)m即可。
單獨的節(jié)點狀態(tài)概率,可以使用條件概率規(guī)則,并沿著邊進行傳播。
網(wǎng)絡設計完成后,條件概率表進行了指定,網(wǎng)絡進行了傳播。
通過上面的分析,從定性方面完成了學生所學知識項的邏輯關系,并且通過經(jīng)驗數(shù)據(jù)獲得了關于這些知識項之間存在影響程度的定量數(shù)據(jù),最終構建成的個性化教學中關于《Delphi程序設計教程》課程中章節(jié)知識項的學生模型的框架如圖1所示。
2.2.3 學生模型原型系統(tǒng)的實現(xiàn)
根據(jù)上面理論方面的分析,已經(jīng)構建了個性化教學系統(tǒng)中學生模型的貝葉斯網(wǎng)絡結構圖,為了證明整個系統(tǒng)框架的可行性,需要把前面的理論構建與具體的技術相結合以實現(xiàn)可用的系統(tǒng)。
該系統(tǒng)設計中運用不同的顏色來標記知識項掌握的4種情況:綠色表示已掌握;紅色表示已學習但未掌握;黃色表示未學習,適合學習;灰色表示不適合學習。當貝葉斯網(wǎng)絡獲得證據(jù)信息后標記的顏色狀態(tài)會發(fā)生變化。基于貝葉斯網(wǎng)絡先驗概率,知識項全部標記為黃色,如圖2所示,新注冊用戶登錄系統(tǒng)時可在黃色節(jié)點中點擊選擇最初學習節(jié)點,學習后對相應知識項進行測試,根據(jù)系統(tǒng)導航,若測試合格則按引導進行下一知識項的學習,未通過系統(tǒng)會提示返回上一個節(jié)點重新學習。
從這個系統(tǒng)中可以看到:基于貝葉斯網(wǎng)絡的個性化教學系統(tǒng)既有交互性,又體現(xiàn)了個性化,通過系統(tǒng)的導航功能(不同顏色的應用)可以幫助進行學習的指導,當學生想學某一概念時系統(tǒng)會把它的前驅知識點以序列形式呈現(xiàn)給學生,不同學生要求不一樣,系統(tǒng)提供的導航也不一樣,真正體現(xiàn)了個性化教學。
隨著網(wǎng)絡教學平臺的不斷涌現(xiàn),個性化教學系統(tǒng)的研究和開發(fā)成為遠程教育中的關鍵問題和熱點。而在個性化教學系統(tǒng)中的學生模型是其中的重要組成部分,在遠程教育領域起著重要的作用。因此,研究如何設計和利用學生模型來實現(xiàn)遠程教育中的個性化教學有著重要的意義。
參考文獻
[1] 劉桓,曹紅菊.自適應學習系統(tǒng)的研究與設計[J].教育技術導刊,2006,(3):39-40.
[2] 余勝泉.適應性學習——遠程教育的發(fā)展趨勢.開放教育研究,2000,6(3):70-76.
[3] 冀俊忠,劉椿年.貝葉斯網(wǎng)及概率推理在智能教學中的應用[J].北京工業(yè)大學學報,2002,9(28):353-358.
[4] 翼俊忠,劉椿午,沙志強.貝葉斯模型的學習、推理和應用[J].計算機工程與應用,2003,7(5):145-147.
[5] 胡兆勇,屈梁生.貝葉斯網(wǎng)絡推理的一種仿真算法[J].系統(tǒng)仿真學報,2004,26(2):286-288.
[6] 劉偉娜,霍利民,張立國.貝葉斯網(wǎng)絡精確推理算法的研究[J].網(wǎng)絡與通信,2006,22(9):92-94.