黃韻欣 劉晉澤 章藝云 李驍
[摘 ? ? ? ? ? 要] ?隨著信息技術的發(fā)展和在線教育的展開,人們逐漸從信息匱乏的時代走入了信息過載的時代,如何將海量課程資源與用戶需求進行匹配成為一大難題。面向職業(yè)教育學習平臺,研究基于協(xié)同過濾算法的個性化課程推薦模型,分別提出基于用戶的推薦模型UserCF和基于對象的推薦模型ItemCF,并引入多進程思想優(yōu)化模型訓練效率。其研究成果應用在某職業(yè)教育學習平臺,取得較好的效果。
[關 ? ?鍵 ? 詞] ?推薦系統(tǒng);職業(yè)教育;個性化學習
[中圖分類號] ?G642 ? ? ? ? ? ? ? ? ? [文獻標志碼] ?A ? ? ? ? ? ? ? ? [文章編號] ?2096-0603(2022)03-0154-03
一、研究背景
在信息技術和互聯(lián)網飛速發(fā)展的背景下,大數(shù)據時代已然來臨,信息過載問題普遍存在,尤其是在教育、電商、醫(yī)療、金融等領域。隨著職業(yè)教育全面推開,在線職業(yè)教育模式興起,課程建設知識體系日漸豐富。目前,某職業(yè)教育網絡服務平臺已上線課程萬余門,如何從海量資源中選擇感興趣的課程對學習者來說是一種挑戰(zhàn)。課程推薦技術,為學習者提供了一種解決方案。
某職業(yè)教育業(yè)務平臺當前采用基于數(shù)據統(tǒng)計的課程推薦方法,依據選課人次對平臺課程進行排序,將大多數(shù)平臺用戶感興趣的課程作為推薦項,即熱門選課排行榜。這種傳統(tǒng)的推薦方法有其優(yōu)點:(1)課程質量有保證,課程內容和授課方式為大多數(shù)人所接受;(2)能解決冷啟動問題,對于沒有學習記錄的平臺,新用戶能給出較好的課程推薦結果。同時也存在一些不足:(1)易導致長尾分布現(xiàn)象的出現(xiàn),用戶選課集中在少數(shù)熱門課程。(2)不能拓寬用戶知識面,所推薦課程集中在部分領域。(3)推薦方案缺乏個性化,所有用戶將無差別得到相同的推薦結果。
本文基于協(xié)同過濾的基本思想提出兩種個性化課程推薦方案,分別為基于用戶的推薦模型UserCF和基于對象的推薦模型ItemCF;采用多進程方案優(yōu)化訓練時間,提高模型訓練效率;在某職業(yè)教育網絡學習平臺上部署算法模塊,實現(xiàn)針對平臺活躍用戶的個性化、智能化課程推薦功能。
二、相關工作
1995年,美國人工智能協(xié)會上首次提出了“個性化推薦”的概念,最初應用在個性化導航系統(tǒng)Web Watcher上[1]。20世紀90年代開始,推薦算法的研究開始蓬勃發(fā)展。當前主流的推薦算法大致可歸類為基于內容推薦、協(xié)同過濾推薦、基于規(guī)則推薦、基于效用推薦和基于知識推薦五大類[2]。
然而現(xiàn)有成熟的推薦方案不能直接應用于本平臺:(1)受限于服務平臺硬件條件,需要較輕的負載。(2)考慮到信息的保密性和應用領域的特殊性,不能直接采用現(xiàn)有商業(yè)云服務。
三、系統(tǒng)方案
(一)總體架構
基于協(xié)同過濾的基本思想分別設計基于用戶的推薦模型UserCF和基于對象的推薦模型ItemCF。個性化課程推薦模型的總體架構如圖1所示,由離線訓練、在線推理、結果使用和效果評估四個功能模塊組成。
(二)離線訓練
(1)從服務平臺業(yè)務數(shù)據庫中抽取近n天平臺活躍用戶的課程學習行為數(shù)據,作為推薦模型的訓練數(shù)據。(2)采用基于協(xié)同過濾算法的基本思想,分別訓練基于用戶的推薦模型UserCF和基于對象的推薦模型ItemCF,并存儲在推薦模型數(shù)據庫中。(3)設置單獨的數(shù)據庫,用來存儲推薦系統(tǒng)配置參數(shù)。
(三)在線推理
圖3展示了個性化課程推薦系統(tǒng)在線推理階段的具體流程。(1)從平臺業(yè)務數(shù)據庫中抽取近n天的活躍用戶學習課程行為數(shù)據。(2)讀取推薦系統(tǒng)配置參數(shù)數(shù)據庫,取出協(xié)同過濾算法的主要參數(shù),包括K近鄰個數(shù)、推薦課程個數(shù)等。(3)對采集到的學習數(shù)據進行預處理,主要包括:基于離線訓練階段生成的ID映射數(shù)據庫對數(shù)據做ID映射、生成CSV表格數(shù)據。(4)從推薦模型數(shù)據庫中提取推薦模型,針對目標用戶啟動模型執(zhí)行線上推理。(5)基于ID映射數(shù)據庫,將推薦列表的課程ID映射為原始的課程ID。(6)將原始課程ID的推薦列表存入推薦結果數(shù)據庫,讀取推薦結果數(shù)據庫中的推薦列表進行平臺前端展示。
(四)結果使用
本階段的主要功能是基于活躍用戶的ID,從推薦結果數(shù)據庫中取出推薦模型為其推薦的原始課程ID列表,并以圖形化的形式展示在相應用戶的平臺頁面。
(五)效果評估
圖4為個性化課程推薦系統(tǒng)效果評估階段的具體流程。(1)從平臺業(yè)務數(shù)據庫中抽取前一次推薦系統(tǒng)執(zhí)行后m天內活躍用戶新學習的課程。(2)讀取推薦系統(tǒng)配置參數(shù)數(shù)據庫,取出協(xié)同過濾算法的主要參數(shù),包括K近鄰個數(shù)、推薦課程個數(shù)等。(3)從推薦結果數(shù)據庫中取出推薦的課程列表,比較推薦結果和用戶實際學習的課程,計算效果評價指標。(4)存儲此次效果評價指標的值,并且系統(tǒng)通過統(tǒng)計用戶是否注冊學習了向他推薦的課程作為推薦效果的反饋。
四、實驗與分析
(一)數(shù)據準備
從平臺抽取近90天活躍用戶的課程學習數(shù)據,得到的數(shù)據統(tǒng)計特征如下:
所有用戶的選課數(shù)直方圖如圖5所示,其中橫坐標代表用戶的活躍度K,縱坐標代表活躍度為K的用戶總數(shù)。直觀地看到平臺的用戶選課行為是符合長尾分布的。
(二)參數(shù)設置
為了保證所設計的機器學習算法具有最優(yōu)性能,對協(xié)同過濾算法進行調參,重點關注最近鄰參數(shù)K的不同取值對于算法的性能效果影響。選用選課數(shù)據子集,其中用戶數(shù)為4901,課程數(shù)為2024;選取K值為10、50、100、200,對基于對象的協(xié)同過濾算法測評四個指標以及計算耗時。
對比發(fā)現(xiàn),當K值取100的時候,四項測評指標的值呈現(xiàn)出的效果最好,且耗時最短,因此基于K取100部署最優(yōu)的協(xié)同過濾算法在平臺上。
(三)實驗結果
以單機單進程的訓練集、測試集為數(shù)據輸入,分別運行單機單進程的基于用戶的協(xié)同過濾算法和基于對象的協(xié)同過濾算法,得到計算耗時以及召回率、準確率、覆蓋率和平均流行度四項測評指標值,如表3所示。
引入多進程思想,優(yōu)化單機單進程版本為單機多進程形式,模型效率如表4所示。
(四)結果分析
從實驗結果可以得出以下結論:
(1)對比《推薦系統(tǒng)實驗》[3]中實驗的測評指標值,兩個算法的實現(xiàn)效果都比較好。(2)基于對象的協(xié)同過濾算法的四項測評值均優(yōu)于基于用戶的協(xié)同過濾算法的測評值。原因不難發(fā)現(xiàn):ItemCF適用于對象數(shù)明顯小于用戶數(shù)的場合,也適用于長尾物品豐富、用戶個性化需求強烈的領域,而平臺的數(shù)據正好是符合上述特征的。ItemCF算法的實時性好,能夠利用用戶的歷史行為給用戶做推薦解釋,可以令用戶比較信服,相較于UserCF而言是最好的選擇。(3)基于物品的協(xié)同過濾算法的耗時明顯大于基于用戶的協(xié)同過濾算法,且基于用戶的協(xié)同過濾算法的耗時也并不樂觀。引入多進程的思想,優(yōu)化單機單進程代碼為單機多進程的形式,可以看到時間明顯減少,多進程實驗效果顯著。
五、總結
個性化、智能化是發(fā)展在線教育的要素,本文研究基于協(xié)同過濾思想的個性化智能推薦系統(tǒng),并采用多進程思想優(yōu)化模型訓練效率。其研究成果集成在某職業(yè)教育學習平臺,應用結果表明,用戶對推薦結果滿意度較高。
參考文獻:
[1]趙守香,唐胡鑫,熊海濤,等.大數(shù)據分析與應用[M].北京:航空工業(yè)出版社,2015-12.
[2]楊旭,湯海京,丁剛毅.數(shù)據科學導論[M].2版.北京:北京理工大學出版社,2017-01.
[3]項亮.推薦系統(tǒng)實踐[M].北京:人民郵電出版社,2012-06.
◎編輯 魯翠紅