李文欣,文勇軍,唐立軍
(1.長沙理工大學 物理與電子科學學院,湖南 長沙 410114;2.長沙理工大學 近地空間電磁環(huán)境監(jiān)測與建模湖南省普通高校重點實驗室,湖南 長沙 410114)
近年來,國內外對個性化推薦技術研究越來越重視,個性化推薦技術廣泛應用于在社交網絡、電子商務等領域[1-2]。隨著網絡教育資源的爆發(fā)式增加,教育資源的查找效率越來越低,而教育資源的用戶數量越來越大,用戶需求迫切與教育資源利用率低的矛盾越來越突出,因此,教育資源的推薦方法研究和推薦系統(tǒng)的實現(xiàn)引起了國內外研究人員的高度重視[3-4]。文中利用大數據分析技術開展預測算法的研究,構建基于用戶和教育資源之間的預測模型,探討教育資源的推薦方法,設計并實現(xiàn)教育資源個性化推薦系統(tǒng)。
根據教育資源的更新頻率和權威性,文中選擇參考書、論文、教學資源(課件)和教育發(fā)展動態(tài)等四類關鍵資源為研究對象[5-6],選定四個官方網站公開信息作為本課題研究的數據:選取“中國高校教材圖書館”作為參考書的數據來源,選取“中國知網”作為論文的數據來源,選取“高等教育資訊網”下的“中國高校課件下載中心”作為教學資源(課件)的數據來源,選取“中國教育新聞網”作為教育發(fā)展動態(tài)的數據來源。
一般的推薦系統(tǒng)必須將一定范圍內的資源全面、準確、實時地推薦給用戶,文中針對教育資源推薦主要考慮推薦覆蓋率、推薦準確率、推薦實時性的要求。
(1)推薦覆蓋率:推薦的教育資源信息必須涵蓋參考書、論文、教學資源(課件)和教育發(fā)展動態(tài)等資源類型。
(2)推薦準確率:推薦的教育資源信息必須符合用戶的特征屬性,即必須與用戶的實際需求相關聯(lián),要求推薦準確率大于80%。
(3)推薦實時性:用戶自身特征值的改變,或教育資源的更新,系統(tǒng)能及時響應,自動調整用戶-教育資源模型參數,推薦出最新最適合用戶的教育資源信息。
(1)矩陣分解模型(GMF)。
GMF模型[7]是一種在推薦領域中常用來降低維數的技術,將原始矩陣分解為兩個或多個矩陣的乘積,用來彌補稀疏矩陣的缺陷,因此可用于推導和完善用戶和教育資源特征值信息,能夠很好地處理用戶和教育資源中的線性關系,如圖1所示。為獲得用戶-教育資源稀疏矩陣中的未知預測值,將用戶特征值u和教育資源特征值r作為參數輸入到GMF模型中,形成用戶特征值矩陣pT和教育資源特征值矩陣q,將用戶特征值矩陣與教育資源特征值矩陣進行點乘運算pT*q,得到用戶-教育資源關系矩陣中Y12、Y21、Y23等預測值,表示為:
(1)
圖1 教育資源預測中GMF原理
(2)多層感知機模型(MLP)。
(2)
將NeuMF預測模型[9]引入教育資源推薦中,結合上面討論的線性GMF模型和非線性的MLP模型,處理用戶-教育資源間線性和非線性關系,得到教育資源預測值。
NeuMF教育資源推薦模型流程如圖2所示。
圖2 NeuMF教育資源推薦模型流程
在NeuMF教育資源推薦模型中,線性的用戶-教育資源預測值由GMF模型輸出,用yGMF表示;非線性的用戶-教育資源預測值由MLP模型輸出,用yMLP表示。由式3可知,Sigmoid函數在特征比較中權值更新準確,使用Sigmoid函數激勵yGMF和yMLP,得到式4表示的最終教育資源預測值。
(3)
(4)
(1)爬蟲技術。
爬蟲技術[10],是按照一定規(guī)則,自動抓取互聯(lián)網信息的程序或者腳本,功能上分為數據采集、處理和儲存三部分,可以很好地用于教育資源數據獲取。實現(xiàn)方法分為分布式爬蟲、Python爬蟲和Java爬蟲等。文中采用Java爬蟲技術實現(xiàn)教育資源的獲取。
教育資源爬蟲技術中,設定資源名稱、資源類型、資源更新時間等作為爬蟲標簽,提取數據庫中教育資源信息網站庫中的URL,作為爬蟲URL隊列,模擬用戶發(fā)送訪問請求,得到特定網頁源代碼。通過對網頁源代碼的解析,根據資源標簽找到標簽中的資源名稱、資源類型和資源更新時間等內容。內容依照教育資源信息表中的資源名稱、資源類型、資源來源等字段格式化,存入本地MySQL。
通過MySQL定時任務,每天自動啟動Java爬蟲操作,模擬用戶請求,對URL隊列中資源信息進行及時更新,保證教育資源信息爬蟲的時效性。同時利用定時任務,定期啟動自動刪除操作,刪除過期的資源數據,保證MySQL中教育資源讀取效率。
(2)個性化推薦技術。
基于用戶-項目特征匹配的個性化推薦技術是一種用戶和項目矩陣分解的技術[11-13],其推薦模式可以直接應用到教育資源推薦。結合教育資源推薦的原理和方法,可以得到教育資源推薦中用戶-項目特征匹配推薦模式,教育資源中個性化推薦技術為提取用戶ID、專業(yè)領域、學習興趣、行為等特征值u和教育資源ID、資源名稱、資源類型等特征值r,作為模型參數,形成用戶特征值矩陣pT和教育資源特征值矩陣q,經過內積、求導等反復運算,ReLU函數激活,得到預測值。選取大于預定值K的預測值,根據預測值優(yōu)先級得到最終的推薦教育資源。
采用網絡爬蟲技術和基于NeuMF模型的特征匹配技術,設計實現(xiàn)教育資源個性化推薦系統(tǒng)。系統(tǒng)使用開源的Java語言開發(fā)設計,采用Liger UI框架,結合JavaScript和CSS技術,對系統(tǒng)的前端頁面進行設計。后臺采用SSM框架,Spring中實現(xiàn)業(yè)務對象管理,Spring MVC中的View層和Controller層響應用戶請求,Mybatis中的Dao層作為數據對象的持久化引擎,封裝數據庫中用戶和教育資源數據[14]。數據存儲采用關系型數據庫MySQL,其查找速率快和靈活性高等優(yōu)勢為系統(tǒng)性能提供保障。
教育資源個性化推薦系統(tǒng)包含教育資源獲取、教育資源信息、推薦資源信息、個人教育資源、學科信息管理等10個模塊,下面主要介紹教育資源獲取模塊和教育資源推薦模塊的實現(xiàn)。
1)教育資源獲取模塊的實現(xiàn)。
采用爬蟲技術中的Java爬蟲技術,在特定URL頁面,獲取需要的教育資源信息。將爬蟲獲取的數據格式化后存入到本地MySQL數據庫。
在特定的教育資源網站中,包含眾多公開的教育資源信息,首先要分析其教育資源信息發(fā)布頁面的源代碼,找出教育資源相關信息點位置及內容標簽結構,確定正則表達式或標簽選擇器作為爬取規(guī)則,再利用Java語言編寫爬蟲程序,獲取教育資源信息的標題、作者、分類屬性、鏈接地址等大數據信息[15-16]。將獲取的數據格式化后存入到本地MySQL數據庫。實現(xiàn)步驟如下:
(1)以HTTP Web Request為基類,創(chuàng)建DAL操作類Request Helper;
(2)通過Request Helper,創(chuàng)建實體Request;
(3)在Request中構造請求HTML,以Post方法提交給Remote server;
(4)獲得server 302響應后,Data flow合并寫入Document;
(5)調用專用文件操作類,逐條讀取文件;
(6)調用DAL,寫入MySQL。
2)教育資源推薦模塊的實現(xiàn)。
系統(tǒng)從本地MySQL數據庫中提取數據,將用戶特征值u和教育資源特征值r進行特征匹配,建立用戶-教育資源特征匹配模型進行分析預測,得到用戶-教育資源間的預測值,然后將預測值高于預定值K的教育資源信息推薦給Web用戶,完成教育資源信息推薦。
推薦流程如圖3所示。
圖3 推薦流程
教育資源個性化推薦系統(tǒng)設計完成后,通過實驗室模擬的方式對系統(tǒng)進行實驗測試,包括功能測試和性能測試。測試環(huán)境為:硬件平臺為Dell Inspiron 3420筆記本;操作系統(tǒng)為正版Windows7 64位;處理器為Intel(R) Core(TM) i5-3210M;內存(RAM)為8 G;數據庫為MySQL 5.7。
(1)功能測試。
測試方法:通過模擬系統(tǒng)用戶操作,登錄教育資源個性化推薦系統(tǒng)后,對各個一級模塊和二級模塊功能進行操作測試。
系統(tǒng)功能測試結果見表1。
表1 系統(tǒng)功能測試
表1表明,系統(tǒng)一級模塊和二級模塊等所有功能測試結果均已通過,操作正常,能夠正常工作。
(2)性能測試。
測試方法:推薦性能測試,模擬100個特征信息互不相同的用戶,通過讀取MySQL數據庫中1 000份教育資源信息,即參考書、論文、教學資源(課件)和教育發(fā)展動態(tài)各250份,對系統(tǒng)進行預測性能測試。實時性測試,在原基礎上改變用戶學科信息、學習興趣、行為等特征值,得到改變后用戶特征值的更新結果;改變教育資源,得到更新的教育資源特征值。在相同環(huán)境下對系統(tǒng)推薦性能重新測試,啟動10次系統(tǒng),查看推薦的教育資源更新情況。
測試結果見表2和表3。
表2 改變前的推薦結果
由表2可知,系統(tǒng)推薦信息涵蓋參考書、論文、教學資源(課件)和教育發(fā)展動態(tài)等資源類型,推薦準確率均大于80%,且能推薦最新資源,系統(tǒng)預測推薦性能良好。
表3 改變后的推薦結果
由表3可知,在改變用戶特征值和更新教育資源后,系統(tǒng)能夠得到新的推薦教育資源,推薦準確率沒有太大波動,且在推薦中包含最新的教育資源,可見系統(tǒng)推薦性能較好,能夠及時響應用戶-教育資源間的特征改變,達到教育資源推薦要求。
將社交網絡、電子商務等領域中應用廣泛的個性化技術引入到教育資源推薦中,通過對教育資源用戶-項目的特征匹配模型研究,構建了基于用戶和教育資源之間的預測模型,得到了教育資源的個性化推薦方法,設計并實現(xiàn)了教育資源個性化推薦系統(tǒng)。從測試結果來看,該教育資源個性化推薦方法實時性強、覆蓋率大,推薦效果好,可以推廣應用到教育資源推薦領域。