《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于數(shù)據(jù)挖掘的學(xué)習(xí)推薦系統(tǒng)的研究
基于數(shù)據(jù)挖掘的學(xué)習(xí)推薦系統(tǒng)的研究
2014年微型機(jī)與應(yīng)用第23期
王曉波
(北京信息科技大學(xué) 信息管理學(xué)院,北京 100192)
摘要: 為了讓學(xué)習(xí)者在學(xué)習(xí)過(guò)程中能夠快速獲得所需的知識(shí)和核心內(nèi)容,首先給出一個(gè)采用xml格式的多層次知識(shí)庫(kù),并基于學(xué)習(xí)者的身份特征、學(xué)習(xí)行為和測(cè)試結(jié)果,利用改進(jìn)的協(xié)同過(guò)濾算法和基于約束的推薦算法,發(fā)現(xiàn)學(xué)習(xí)者的潛在學(xué)習(xí)需求,完成知識(shí)推送和個(gè)性化學(xué)習(xí)定制。最后,對(duì)學(xué)習(xí)推薦系統(tǒng)進(jìn)行了實(shí)現(xiàn)。所研制的系統(tǒng)滿足了學(xué)習(xí)者獲得所需知識(shí)和學(xué)習(xí)指導(dǎo)的需求,提高了學(xué)習(xí)者的學(xué)習(xí)效率。
Abstract:
Key words :

  摘 要: 為了讓學(xué)習(xí)者在學(xué)習(xí)過(guò)程中能夠快速獲得所需的知識(shí)和核心內(nèi)容,首先給出一個(gè)采用xml格式的多層次知識(shí)庫(kù),并基于學(xué)習(xí)者的身份特征、學(xué)習(xí)行為和測(cè)試結(jié)果,利用改進(jìn)的協(xié)同過(guò)濾算法和基于約束的推薦算法,發(fā)現(xiàn)學(xué)習(xí)者的潛在學(xué)習(xí)需求,完成知識(shí)推送和個(gè)性化學(xué)習(xí)定制。最后,對(duì)學(xué)習(xí)推薦系統(tǒng)進(jìn)行了實(shí)現(xiàn)。所研制的系統(tǒng)滿足了學(xué)習(xí)者獲得所需知識(shí)和學(xué)習(xí)指導(dǎo)的需求,提高了學(xué)習(xí)者的學(xué)習(xí)效率。

  關(guān)鍵詞知識(shí)推薦;學(xué)習(xí)需求;個(gè)性化;學(xué)習(xí)引導(dǎo)

0 引言

  《國(guó)家中長(zhǎng)期教育改革和發(fā)展規(guī)劃綱要》提出要“以學(xué)生為主體,以教師為主導(dǎo),充分發(fā)揮學(xué)生的主動(dòng)性”、“為每個(gè)學(xué)生提供適合的教育”、“把提高質(zhì)量作為教育改革發(fā)展的核心任務(wù)”。因此,為學(xué)生營(yíng)造一個(gè)可以主動(dòng)思考、個(gè)性化、自主學(xué)習(xí)的環(huán)境尤為重要。

  隨著計(jì)算機(jī)技術(shù)和網(wǎng)絡(luò)技術(shù)的迅速發(fā)展,具有個(gè)性化、自主性、主動(dòng)性和非時(shí)空性特征的網(wǎng)絡(luò)自主學(xué)習(xí)已經(jīng)成為人們關(guān)注的熱點(diǎn)。一些學(xué)校和機(jī)構(gòu)都紛紛建立教育資源共享服務(wù)平臺(tái),提供大規(guī)模的開(kāi)放課程,讓學(xué)生可以利用網(wǎng)絡(luò)化教學(xué)平臺(tái)進(jìn)行交互學(xué)習(xí),同時(shí)也開(kāi)發(fā)一些網(wǎng)站(如http://www.lifegrowing.com/ceha/)對(duì)自主學(xué)習(xí)模式進(jìn)行探索。

  當(dāng)前網(wǎng)絡(luò)自主學(xué)習(xí)存在如下問(wèn)題[1]:(1)為學(xué)習(xí)者所提供的網(wǎng)絡(luò)環(huán)境(平臺(tái))對(duì)于海量的學(xué)習(xí)資源無(wú)法進(jìn)行有效整合,學(xué)習(xí)者很難快速找到和定位自己所需要的學(xué)習(xí)資源;(2)不能根據(jù)學(xué)習(xí)者的行為特征,挖掘出學(xué)習(xí)者隱含的學(xué)習(xí)需求;(3) 缺乏個(gè)性化的知識(shí)推送及學(xué)習(xí)路徑的動(dòng)態(tài)生成機(jī)制;(4)學(xué)習(xí)資源的格式各種各樣,缺乏語(yǔ)義,機(jī)器難于理解和自動(dòng)處理。

  針對(duì)上述問(wèn)題,本文對(duì)學(xué)習(xí)需求的挖掘算法、知識(shí)推送算法和知識(shí)庫(kù)的構(gòu)建方法進(jìn)行了研究和探討。

1 學(xué)習(xí)推薦系統(tǒng)的設(shè)計(jì)

  學(xué)習(xí)推薦系統(tǒng)實(shí)質(zhì)是一個(gè)借助機(jī)器學(xué)習(xí)算法的系統(tǒng),該系統(tǒng)根據(jù)預(yù)先獲取的學(xué)習(xí)者基本信息、偏好、學(xué)習(xí)行為和測(cè)試結(jié)果,發(fā)現(xiàn)學(xué)習(xí)者的顯性和隱性學(xué)習(xí)需求,主動(dòng)從知識(shí)庫(kù)中搜索出符合學(xué)習(xí)者需求的知識(shí),動(dòng)態(tài)生成學(xué)習(xí)路徑,促使學(xué)習(xí)者更好的完成學(xué)習(xí)。

  1.1 系統(tǒng)總體框架

  學(xué)習(xí)推薦系統(tǒng)的總體框架如圖1所示。

001.jpg

  系統(tǒng)的主要流程如下:

  (1)對(duì)于首次使用系統(tǒng)的學(xué)習(xí)者,系統(tǒng)首先進(jìn)行問(wèn)卷調(diào)查,并記錄其個(gè)人信息,然后根據(jù)學(xué)習(xí)者的個(gè)人檔案和調(diào)查結(jié)果,從知識(shí)庫(kù)中提取并推薦專業(yè)領(lǐng)域的相關(guān)知識(shí),如知識(shí)體系、前沿資訊和主要參考文獻(xiàn)等,完成初步的知識(shí)推送。

 ?。?)學(xué)習(xí)者可以對(duì)推送的知識(shí)進(jìn)行評(píng)價(jià),在使用個(gè)性化知識(shí)推送系統(tǒng)過(guò)程中,系統(tǒng)會(huì)不斷收集學(xué)習(xí)者的所有學(xué)習(xí)行為,這些數(shù)據(jù)都被記錄在個(gè)人檔案及學(xué)習(xí)行為庫(kù)中。

 ?。?)系統(tǒng)根據(jù)個(gè)人信息和學(xué)習(xí)行為、測(cè)試結(jié)果等,發(fā)現(xiàn)潛在的學(xué)習(xí)興趣點(diǎn),即學(xué)習(xí)需求挖掘。

 ?。?)系統(tǒng)根據(jù)學(xué)習(xí)者的反饋結(jié)果、學(xué)習(xí)需求、學(xué)習(xí)績(jī)效以及各知識(shí)點(diǎn)之間的關(guān)系,提供知識(shí)推送。

 ?。?)學(xué)習(xí)者根據(jù)系統(tǒng)的推送內(nèi)容進(jìn)入下一環(huán)節(jié)或主題的學(xué)習(xí)。

  1.2 構(gòu)建個(gè)人檔案及學(xué)習(xí)行為庫(kù)

  “個(gè)人檔案及學(xué)習(xí)行為庫(kù)” 為學(xué)習(xí)需求的挖掘提供依據(jù),主要保存了學(xué)習(xí)者個(gè)人信息(如性別、年齡、專業(yè)、興趣愛(ài)好等)、學(xué)業(yè)信息(年級(jí)、學(xué)習(xí)目標(biāo)、學(xué)習(xí)計(jì)劃、學(xué)習(xí)進(jìn)度、學(xué)習(xí)績(jī)效等)、學(xué)習(xí)活動(dòng)記錄(學(xué)習(xí)者所學(xué)學(xué)科知識(shí)的學(xué)習(xí)情況、學(xué)習(xí)者進(jìn)行信息檢索和主題討論的記錄)、評(píng)價(jià)信息(學(xué)習(xí)者對(duì)所推薦的學(xué)習(xí)路徑、學(xué)習(xí)材料、信息搜索結(jié)果等的評(píng)價(jià)、學(xué)習(xí)者的自我評(píng)價(jià))等。所有這些信息都保存在數(shù)據(jù)庫(kù)中。以下是“個(gè)人檔案及學(xué)習(xí)行為庫(kù)”中的部分關(guān)系模式:

  學(xué)習(xí)者個(gè)人信息(學(xué)習(xí)者編號(hào),姓名,性別,專業(yè),電子郵箱,出生日期,照片)

  學(xué)習(xí)知識(shí)點(diǎn)(知識(shí)點(diǎn)編號(hào), 學(xué)習(xí)者編號(hào),開(kāi)始學(xué)習(xí)的時(shí)間,退出學(xué)習(xí)的時(shí)間,操作)

  信息檢索(編號(hào),關(guān)鍵詞,搜索結(jié)果,搜索時(shí)間)

  測(cè)試(測(cè)試編號(hào),學(xué)習(xí)者編號(hào),試卷編號(hào),用時(shí),分?jǐn)?shù),測(cè)試時(shí)間)

  提問(wèn)問(wèn)題(問(wèn)題編號(hào),學(xué)習(xí)者編號(hào),問(wèn)題內(nèi)容,提問(wèn)時(shí)間)

  主題討論(討論編號(hào),討論主題,讀帖數(shù)、發(fā)帖數(shù),進(jìn)入頁(yè)面時(shí)間,離開(kāi)頁(yè)面時(shí)間)

  1.3 構(gòu)建知識(shí)庫(kù)

  知識(shí)庫(kù)中存儲(chǔ)了專業(yè)、課程、知識(shí)點(diǎn)和相關(guān)的教學(xué)、科研資源。知識(shí)處理模塊負(fù)責(zé)將外部數(shù)據(jù)(本地其他教學(xué)網(wǎng)站的數(shù)據(jù)、互聯(lián)網(wǎng)上的教育資源)通過(guò)分類、清理、轉(zhuǎn)換生成基于xml格式的多層知識(shí)庫(kù)。知識(shí)庫(kù)的層次結(jié)構(gòu)如圖2所示。

002.jpg

  在知識(shí)庫(kù)的層次結(jié)構(gòu)中,專業(yè)為最高層,用一個(gè)majorList.xml文檔來(lái)描述專業(yè)信息以及每個(gè)專業(yè)所包含的課程(用課程ID來(lái)標(biāo)識(shí)課程),課程信息通過(guò)courseList.xml文檔來(lái)描述,專業(yè)和課程之間為多對(duì)多關(guān)系。每個(gè)課程包含一個(gè)多層次描述的章節(jié)知識(shí)樹(shù),用獨(dú)立的section_courseID.xml來(lái)描述,xml文檔內(nèi)的章節(jié)知識(shí)點(diǎn)均使用SectionNode來(lái)表示,SectionNode允許層次嵌套。每個(gè)章節(jié)知識(shí)點(diǎn)包含一個(gè)或多個(gè)元知識(shí)點(diǎn),用獨(dú)立的knowledgesectionID.xml來(lái)描述,元知識(shí)點(diǎn)是最小單位的知識(shí)點(diǎn),不能再分(如一個(gè)概念、一個(gè)定理等)。每個(gè)元知識(shí)點(diǎn)包含相關(guān)的教學(xué)資源、科研資源、背景資源、拓展資源和其他附件資源。這些資源的形式是多樣的,可以是word文件、PDF文件、文本和視頻等。在描述章節(jié)知識(shí)點(diǎn)和元知識(shí)點(diǎn)屬性時(shí),不僅包括編號(hào)、名稱、關(guān)鍵詞、難易程度、重要程度等,還要表明知識(shí)點(diǎn)之間的關(guān)系。知識(shí)點(diǎn)之間的關(guān)系主要有[2]:

  ⑴ 先后關(guān)系:在學(xué)習(xí)過(guò)程中,知識(shí)點(diǎn)和知識(shí)點(diǎn)之間存在先后順序,即一個(gè)知識(shí)點(diǎn)當(dāng)前是否可以學(xué)習(xí)取決于另外一些知識(shí)點(diǎn)是否學(xué)習(xí)過(guò)。

  ⑵ 選擇關(guān)系:在學(xué)習(xí)過(guò)程中,具有選擇關(guān)系的知識(shí)點(diǎn)具有共同的前驅(qū)知識(shí)點(diǎn),它們可以互相替換,可以使用不同的教學(xué)方法達(dá)到相同的教學(xué)目的,這樣可以根據(jù)學(xué)習(xí)者的喜好、特點(diǎn)等選擇最適合其學(xué)習(xí)的知識(shí)點(diǎn)。

 ?、?擴(kuò)展關(guān)系:有的知識(shí)點(diǎn)是另外一些知識(shí)點(diǎn)進(jìn)一步深化的內(nèi)容,可根據(jù)學(xué)習(xí)者的學(xué)習(xí)目標(biāo)、類型等選擇是否學(xué)習(xí)。

  1.4 學(xué)習(xí)需求的挖掘算法

  學(xué)習(xí)需求的獲取有兩種,一種是根據(jù)學(xué)習(xí)者的行為進(jìn)行自動(dòng)的收集和挖掘,發(fā)現(xiàn)其個(gè)性特點(diǎn)和興趣點(diǎn);另一種是根據(jù)學(xué)習(xí)者的身份特征(如:所學(xué)專業(yè)、當(dāng)前學(xué)習(xí)階段等)進(jìn)行學(xué)習(xí)需求的挖掘。

  1.4.1 根據(jù)學(xué)習(xí)者的身份特征進(jìn)行學(xué)習(xí)需求的挖掘

  如果學(xué)習(xí)者是首次使用本系統(tǒng),沒(méi)有學(xué)習(xí)行為數(shù)據(jù),此時(shí)采用基于用戶注冊(cè)信息來(lái)發(fā)現(xiàn)潛在的興趣點(diǎn)。算法的基本方法是:將學(xué)習(xí)者的性別、專業(yè)、出生日期、所在年級(jí)和愛(ài)好等屬性作為一種特征,計(jì)算每種特征的學(xué)習(xí)者感興趣的知識(shí)點(diǎn)。也就是說(shuō),對(duì)于每種特征f,計(jì)算具有這種特征的學(xué)習(xí)者對(duì)每個(gè)知識(shí)點(diǎn)的感興趣程度p( f, i )[3] :

  1.png

  其中N( i )是對(duì)知識(shí)點(diǎn)i感興趣的用戶集合,U( f )是具有特征f的用戶集合。

  用戶是否對(duì)知識(shí)點(diǎn)i感興趣可以通過(guò)用戶訪問(wèn)該知識(shí)點(diǎn)的學(xué)習(xí)資源所用時(shí)間以及訪問(wèn)頻率來(lái)判斷。由于學(xué)習(xí)資源內(nèi)容的多少對(duì)實(shí)際訪問(wèn)時(shí)間的影響,所以采用單位時(shí)間更合理。具體計(jì)算公式如下:

  2.png

  其中Fr(i,j)為用戶j訪問(wèn)知識(shí)點(diǎn)i 的單位時(shí)間,Dur(i,j) 為用戶j訪問(wèn)知識(shí)點(diǎn)i 的頻率。

  設(shè)定一個(gè)閾值k,當(dāng)q(i,j)大于閾值k時(shí)就可以認(rèn)為用戶j對(duì)知識(shí)點(diǎn)i感興趣。

  對(duì)每種特征設(shè)置一定的權(quán)重(如專業(yè)特征、愛(ài)好特征的權(quán)重設(shè)置大些,出生日期特征的權(quán)重設(shè)置小些),將計(jì)算出來(lái)的p( f, i )按照一定權(quán)重相加,就可以得到學(xué)習(xí)者的學(xué)習(xí)需求了。

  1.4.2 根據(jù)學(xué)習(xí)者的行為進(jìn)行學(xué)習(xí)需求的挖掘

  如果系統(tǒng)已經(jīng)保存了學(xué)習(xí)者的學(xué)習(xí)行為數(shù)據(jù),就可以利用這些數(shù)據(jù)來(lái)修正用戶潛在的興趣點(diǎn),使其貼近學(xué)習(xí)者的真實(shí)需求。具體算法描述如下:

 ?、?計(jì)算知識(shí)點(diǎn)之間的相似度[3]:

  3.png

 ?、?計(jì)算用戶u對(duì)一個(gè)知識(shí)點(diǎn)j的興趣:

  4.png

  其中,N(u)是學(xué)習(xí)者感興趣的知識(shí)點(diǎn)集合,S(j,k)是與知識(shí)點(diǎn)j最相似的k個(gè)知識(shí)點(diǎn)的集合, Wji是知識(shí)點(diǎn)j和i的相似度,rui是用戶u對(duì)知識(shí)點(diǎn)i的興趣(如果用戶u學(xué)過(guò)知識(shí)點(diǎn)i,即可令rui=1)。

  通過(guò)以上算法就可以得到和學(xué)習(xí)者歷史上感興趣的知識(shí)點(diǎn)關(guān)聯(lián)度高的知識(shí)點(diǎn)列表。所挖掘出來(lái)的知識(shí)點(diǎn)用于知識(shí)推薦。

  1.5 知識(shí)推薦算法

  系統(tǒng)根據(jù)學(xué)習(xí)者感興趣的知識(shí)點(diǎn)、知識(shí)點(diǎn)之間的關(guān)系和難易程度生成學(xué)習(xí)路徑,學(xué)習(xí)者選擇路徑中相應(yīng)知識(shí)點(diǎn)后,系統(tǒng)將組織好的個(gè)性化學(xué)習(xí)資源呈現(xiàn)給學(xué)習(xí)者。學(xué)習(xí)者學(xué)習(xí)到一定階段后,可進(jìn)行學(xué)習(xí)效果的測(cè)試和自評(píng),以檢驗(yàn)學(xué)習(xí)效果。系統(tǒng)根據(jù)檢驗(yàn)的學(xué)習(xí)效果,調(diào)整后續(xù)學(xué)習(xí)的內(nèi)容[4]。

  生成學(xué)習(xí)路徑的方法如下:

 ?、?根據(jù)學(xué)習(xí)需求,查詢知識(shí)庫(kù),找出與學(xué)習(xí)需求存在上下層關(guān)系、先后關(guān)系、選擇關(guān)系和擴(kuò)展關(guān)系的元知識(shí)點(diǎn),形成元知識(shí)點(diǎn)集合;

 ?、?如果查詢到的元知識(shí)點(diǎn)是相對(duì)獨(dú)立的,與其他知識(shí)點(diǎn)沒(méi)有關(guān)系,可以直接將與該知識(shí)點(diǎn)相關(guān)的學(xué)習(xí)資源推送給學(xué)習(xí)者;

  ⑶ 對(duì)于非獨(dú)立的知識(shí)點(diǎn),首先按照知識(shí)點(diǎn)的層次結(jié)構(gòu),生成初步的學(xué)習(xí)路徑,然后再結(jié)合學(xué)習(xí)者的主動(dòng)反饋或?qū)W習(xí)過(guò)程中的測(cè)試成績(jī),按照一定的規(guī)則調(diào)整學(xué)習(xí)內(nèi)容[5]。系統(tǒng)主要采用IF……THEN……的推理規(guī)則來(lái)調(diào)整下一階段的學(xué)習(xí)。例如: IF 學(xué)習(xí)者沒(méi)有達(dá)到當(dāng)前知識(shí)點(diǎn)的通過(guò)閾值并且有選擇關(guān)系的知識(shí)點(diǎn),THEN學(xué)習(xí)內(nèi)容為選擇關(guān)系的知識(shí)點(diǎn);IF學(xué)習(xí)者沒(méi)有達(dá)到當(dāng)前知識(shí)點(diǎn)的通過(guò)閾值并且沒(méi)有選擇關(guān)系的知識(shí)點(diǎn),THEN學(xué)習(xí)內(nèi)容為當(dāng)前知識(shí)點(diǎn);IF 學(xué)習(xí)者達(dá)到當(dāng)前知識(shí)點(diǎn)的通過(guò)閾值并且有后序知識(shí)點(diǎn),THEN學(xué)習(xí)內(nèi)容為后序知識(shí)點(diǎn)。

2 學(xué)習(xí)推薦系統(tǒng)實(shí)現(xiàn)

  系統(tǒng)采用三層B/S架構(gòu),使用ASP.NET進(jìn)行開(kāi)發(fā)。三層架構(gòu)的后端為數(shù)據(jù)庫(kù)服務(wù)層,選擇SQL Server數(shù)據(jù)庫(kù)保存?zhèn)€人檔案及學(xué)習(xí)行為信息,知識(shí)庫(kù)和測(cè)試題庫(kù)采用xml格式的文件;中間為應(yīng)用服務(wù)層,提供邏輯處理;前端為用戶客戶端,為用戶提供良好的人機(jī)交互畫(huà)面。

  學(xué)習(xí)推薦系統(tǒng)界面如圖3所示。

003.jpg

3 結(jié)論

  目前,以學(xué)習(xí)者為主體的個(gè)性化自主學(xué)習(xí)已經(jīng)成為網(wǎng)絡(luò)教學(xué)的一個(gè)發(fā)展趨勢(shì)和研究熱點(diǎn)。如何幫助學(xué)習(xí)者在學(xué)習(xí)過(guò)程中得到及時(shí)的指導(dǎo),減少學(xué)習(xí)的盲目性,本文給出了學(xué)習(xí)推薦系統(tǒng)總體框架,并對(duì)系統(tǒng)中的知識(shí)庫(kù)、學(xué)習(xí)需求挖掘算法、知識(shí)推薦算法等進(jìn)行了研究,給出了相應(yīng)的解決方案,具有較強(qiáng)的實(shí)用價(jià)值。

參考文獻(xiàn)

  [1] 方凌云,王侃. 網(wǎng)絡(luò)自主學(xué)習(xí)系統(tǒng)中個(gè)性化知識(shí)推送服務(wù)[J].高等工程教育研究, 2008(5):145-148.

  [2] 姜婷婷,韓捷. 淺談基于知識(shí)點(diǎn)建立領(lǐng)域知識(shí)庫(kù)[J]. 黑龍江科技信息,2011(36):112-113.

  [3] 項(xiàng)亮. 推薦系統(tǒng)實(shí)踐[M]. 北京:人民郵電出版社, 2012.

  [4] 陳毅波. 基于關(guān)聯(lián)數(shù)據(jù)和用戶本體的個(gè)性化知識(shí)服務(wù)關(guān)鍵技術(shù)研究[D]. 武漢:武漢大學(xué), 2012.

  [5] 殷鋒社. 個(gè)性化計(jì)算機(jī)輔助教學(xué)系統(tǒng)研究與實(shí)現(xiàn)[J]. 電子設(shè)計(jì)工程, 2010(18):31-33.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。