王帥 馬景奕 周遠洋 王甫棣*
(1 國家氣象信息中心,北京 100081;2 中國氣象局氣象干部培訓學院甘肅分院,蘭州 730000)
氣象職工的在職教育是氣象部門人才隊伍建設的關鍵,針對不同個體如何設計出一套符合個人與單位情境需要的學習方案至關重要。所以引入信息智能技術,從氣象職工學習需求的內(nèi)生動力為切入點,通過教學數(shù)據(jù)自動分析獲取個體在組織情境影響下的學習需求數(shù)據(jù),有了這些數(shù)據(jù)就可以針對氣象部門內(nèi)不同的基層單位,開展具有單位特色的、個性化的學習型組織建設工作。為每個有學習需求的氣象職工推送時空差異化、知識個性化、課程碎片化[1]的學習資源,通過這種定時、定點、精準的資源推送機制,將大幅度提高氣象職工學習的針對性和培訓效益。
隨著學習資源呈指數(shù)級增長,氣象職工作為學習者在選擇相關的學習資源時會遇到信息過載的困難。推薦系統(tǒng)可以克服這一問題,即根據(jù)學習者的個性化偏好,過濾并推薦適合自身知識儲備和崗位特點的學習資源。學習資源推薦系統(tǒng)可以為學習者提供相關的、有用的在線學習資源建議[2]。推薦系統(tǒng)在虛擬經(jīng)濟、在線學習等領域中對用戶自動推薦相關條目起到了重要作用[3]。
現(xiàn)有的推薦技術如協(xié)同過濾CF(Collaborative Filtering)[4]和基于內(nèi)容CB(Content-Based)[5]的推薦算法分別依賴于用戶/物品評價和內(nèi)容特征來計算相似度、進行預測和生成對用戶的物品推薦。然而,在線學習資源推薦系統(tǒng)中,學習者的偏好會隨著情境的變化而變化。現(xiàn)有的推薦技術如CF和CB只涉及兩類實體,即條目和用戶,在進行推薦時不考慮學習者的情境[6]。因此,準確推薦學習資源需要結合學習者的情境信息,以提高推薦的個性化和準確性。在向目標學習者提出建議時,需要考慮學習目標、知識水平等情境信息。此外,由于不同的學習者對學習資源可能有不同的序列訪問模式,那么序列訪問模式也應該被整合到計算學習者的建議之中。通過將情境感知CA(Context Awareness)[7]和學習者的序列訪問模式[8]引入到推薦系統(tǒng)中,可以使推薦結果更加符合學習者的偏好。當前情境下,知識水平為初學者的學習者在未來情境中的知識水平變?yōu)橹屑墝W習者時,對學習資源的偏好可能會發(fā)生變化。在推薦學習的背景下,基于CA的推薦系統(tǒng)在建模學習者偏好和生成推薦時考慮到了學習者的背景[9]。Dec等[10]指出,整合用戶的其他附加信息(包括用戶情境、序列訪問等信息)對于提高推薦質(zhì)量十分重要。魏杰等[11]指出,序列模式挖掘SPM(Sequential Pattern Mining)關注于發(fā)現(xiàn)和挖掘一系列序列發(fā)生的事件,常被用于事務性的數(shù)據(jù)環(huán)境中。因此,基于SPM的CA推薦算法可以解決學習者情境特征差異引起的推薦問題。
本文將CF、CA和SPM算法中的GSP(Generalized Sequential Pattern)算法[12]結合到推薦系統(tǒng)中,提出了一種混合推薦算法來向?qū)W習者推薦學習資源。混合推薦算法中,CA被用來整合學習者的情境信息,如知識水平和學習目標;SPM被用來對網(wǎng)絡日志進行挖掘,發(fā)現(xiàn)學習者的序列訪問模式;CF被用來根據(jù)學習者的情境數(shù)據(jù)和序列訪問模式為目標學習者計算預測并生成建議,避免了CB等推薦算法對于學習者復雜屬性處理的局限和不足[13]。通過實驗證明,本文結合CF、CA和GSP算法的推薦算法比其他相關推薦算法提供了更準確、更有針對的學習資源推薦。
本文提出的混合推薦算法結合了CF、CA和GSP對學習資源的推薦。圖1中的混合推薦模型總結了混合推薦算法的具體功能。推薦模型的主要組成部分是學習者檔案、學習對象模型、情境化數(shù)據(jù)準備、推薦引擎、GSP算法和CA推薦組件。

圖1 混合推薦算法模型
學習者檔案組件存儲關于學習者的信息和偏好。學習者檔案部分包含的信息是通過隱式和顯式兩種算法獲得的。學習者的數(shù)據(jù),如個人信息數(shù)據(jù)(姓名、性別、年齡、專業(yè)、學歷、崗位、職稱等)以及學習者的背景信息(知識水平和學習目標等)都存儲在學習者檔案中。推薦系統(tǒng)利用學習者情境信息對學習者的特征和偏好進行個性化設置。
類似地,學習對象模型組件包含有關學習資源的信息。該組件存儲有關學習資源的信息,包括學習資源的格式、大小、內(nèi)容分類、知識點等,可以是文本、圖像、音頻或視頻。學習資源將根據(jù)學習者對學習資源和情境信息的評價推薦給目標學習者。
情境化數(shù)據(jù)準備組件包含清除web日志、準備學習者的情境信息和學習資源的數(shù)據(jù)以適合推薦系統(tǒng)的格式。
推薦引擎組件包含分析學習者偏好、情境信息和評價聚合而來的情境化數(shù)據(jù)。CF推薦引擎先收集學習者的情境預測目標、學習者的評價數(shù)據(jù),然后使用情境化的數(shù)據(jù)計算相似度,并根據(jù)情境化的學習者偏好生成前N個學習資源推薦。
GSP算法對Web日志進行挖掘,以發(fā)現(xiàn)學習者的序列訪問模式,并將發(fā)現(xiàn)的序列訪問模式應用于前N個學習資源推薦結果中,再根據(jù)學習者的序列訪問模式過濾推薦結果,最后結合CA得到學習者的情境化建議。
混合推薦算法包括3個主要步驟:①使用情境預過濾算法將情境信息整合到推薦過程中。②基于情境化數(shù)據(jù)計算學習者相似度并預測學習資源的評價。③為目標學習者生成前N個推薦,并采用GSP算法應用到結果中,根據(jù)學習者的序列訪問模式過濾最終的推薦。這些步驟在圖1所示的建議框架中總結,并在本小節(jié)中詳細說明。
1.2.1 將情境信息納入推薦系統(tǒng)
將情境信息合并到推薦系統(tǒng)中所采用的范例是由Adomavicius和Tuzhilin提出的情境預過濾算法[14]。采用情境預過濾算法的好處是很容易與任何現(xiàn)有的推薦系統(tǒng)集成。在這項研究中,學習者的情境信息的一個維度,即知識水平。在混合推薦算法中,知識水平作為情境維度隨著學習者知識水平的提高而發(fā)生變化。例如,對某一崗位專業(yè)背景知識很少的學習者,作為初學者可能不具有該專業(yè)知識水平的背景,然而,隨著時間的推移,學習者獲得更多的知識,知識水平情境會發(fā)生變化。初始情境數(shù)據(jù)知識水平在新學員帳戶注冊期間捕獲。在注冊到系統(tǒng)中時,通過在線評估問題對新學習者進行測試,根據(jù)測試分數(shù)確定學習者的知識水平。這種學習者知識等級數(shù)據(jù)獲取算法也被應用于基于本體的學習推薦系統(tǒng)的相關研究中。定期開展在線知識水平測試來跟蹤學習者的知識水平背景變化,更新推薦系統(tǒng)的學習者情境化數(shù)據(jù)。
情境化數(shù)據(jù)用于計算學習者相似度和目標學習者對學習資源的評價。為便于數(shù)據(jù)集計算和推薦系統(tǒng)使用,本文將知識水平情境定義為3個值:
知識水平={初級、中級、高級}={1,2,3}
知識水平{1,2,3}元素的賦值用于學習者、學習資源和情境價值的情境化評價矩陣。
1.2.2 學習者相似度測量與學習資源預測計算
一旦情境信息被推薦系統(tǒng)捕獲,推薦引擎組件計算學習者的相似性,并預測學習資源的情境化評價(圖1)。在計算學習者的相似性時,考慮了情境信息。在推薦系統(tǒng)中使用皮爾遜相關系數(shù)來計算學習者的相似性[15]。目標學習者l和學習者u之間的情境相似性S計算如下:
(1)

為了計算目標學習者l對學習資源b的情境化評價預測,使用式(1)中獲得的對學習資源b進行評價的最相似學習者的KNN(K鄰近)算法[16-17]。目標是使用其他類似學習者給b的評價來預測新學習資源b的等級Pl,b。為了計算目標學習者l對學習資源b的預測等級Pl,b,使用式(2)所示的預測公式。
(2)
其中,Pl,b是目標學習者l對學習資源b的預測,n表示鄰域內(nèi)的學習者總數(shù),Ru,b是學習者u對學習資源b的評價,S是目標學習者l和學習者u之間的情境相似性。
1.2.3 情境化推薦生成及GSP算法的應用
為了生成情境化的推薦,將SPM算法中改進的GSP算法應用于前N個推薦,根據(jù)學習者的序列訪問模式過濾前N個推薦結果。因為情境在學習資源方面的適應性和有效性,這項工作采用了GSP算法。針對目標學習者l的學習資源的前N個建議是基于情境化的學習者相似性和預測評價生成的。圖2展示了基于GSP算法生成最終情境化推薦的過程。圖中M是一組學習資源{a,b},學習資源a已被目標學習者評價,學習資源b表示目標學習者未評價的學習資源,目標學習者正在尋求對其評價的預測。C是本研究中代表知識水平的情境。知識水平的元素是{1,2,3}表示的{初級,中級,高級}。Pl,a是目標學習者l對學習資源a的評價,Pl,b是目標學習者l對未分級學習資源b的預測評價。其他表示為u的學習者將學習資源評為b一旦得到前N個推薦,則對推薦結果應用GSP算法,根據(jù)學習者的序列訪問模式過濾前N個推薦。

圖2 基于GSP算法生成情景化推薦流程
使用GSP算法發(fā)現(xiàn)序列訪問模式包括3個主要階段:①確定每個學習資源的支持度(第一階段);②潛在頻繁序列的生成(候選序列生成);③刪除支持數(shù)小于最小支持度的候選序列(剪枝階段)。在學習資源推薦中,學習者的序列訪問模式是重要的,在推薦過程中應加以考慮。因此,將GSP算法應用于初始推薦結果的前N個,根據(jù)學習者的序列學習訪問模式過濾推薦結果。
為了評估所提出的混合推薦算法(GSP-CA-CF)的性能,本文進行了一系列的實驗。數(shù)據(jù)集來自一所使用學習管理系統(tǒng)(LMS)[18]的大學。收集時間為6個月,從2015年9月到2016年3月。在實驗期間,使用LMS支持其學習的學習者總數(shù)為1200人。LMS允許學習者對學習資源按1~5分(1分非常不相關,2分相當不相關,3分不相關,4分相關,5分非常相關)。推薦系統(tǒng)能夠通過匹配學習者的偏好和情境信息向?qū)W習者推薦學習資源。初始情境信息(知識水平)是在學習者注冊到LMS時收集的,隨后隨著學習者使用LMS訪問在線學習資源并定期更新。學習者的情境信息,即知識水平,隨著學習者對某一學科知識的提高而不斷變化。學習者的知識水平分為初級、中級或高級。在數(shù)據(jù)集收集期間,從推薦系統(tǒng)數(shù)據(jù)庫中提取學習者評價和學習者情境信息,并使用GSP算法挖掘Web日志,得到序列訪問模式。然后將數(shù)據(jù)集分成訓練子集(80%)和測試子集(20%),以進行實驗評估。
為了評估所提出的混合推薦算法的有效性,在相同數(shù)據(jù)集上評估了其他三種算法,并對結果進行了比較。評估的算法是:①提出結合GSP、CA和CF算法的混合推薦算法(GSP-CA-CF);②基于CA結合CF的算法(CF-CA);③GSP算法;④CF算法。
2.2.1 精確度實驗
在改變鄰域大小的同時進行了一系列實驗,以確定最佳鄰域的大小,以便在后續(xù)實驗中使用。推薦系統(tǒng)中最近鄰的大小對推薦的預測精確度和質(zhì)量都有影響[19]。同樣,在不同鄰域大小下,對四種推薦算法的預測精確度進行了測試。使用平均絕對誤差MAE計算預測精確度。MAE值越低,預測精確度越高[20-21]。
(3)
其中,MAE表示平均絕對誤差,n表示測試集中的案例數(shù),pi表示項目的預測評價,ri表示真實評價。
圖3顯示了使用MAE測量的四種推薦算法對鄰域大小的敏感度和對最近鄰數(shù)的預測精確度。從圖3中可以看出,所提出的混合推薦算法(GSP-CA-CF)以及其他三種推薦算法(CF-CA,GSP和CF)隨著鄰域數(shù)從5個增加到25個,當最近鄰數(shù)目為25個時,達到最佳預測精確度,GSP和CF)穩(wěn)定增加。超過25后,四種算法(GSP-CA-CF,CF-CA,GSP和CF)的曲線開始以較小的間隔上升,四種算法的預測精確度會降低。因此,25作為剩余實驗的最佳鄰域大小。此外,從圖3可以觀察到,對于任意數(shù)量的最近鄰,與其他三種推薦算法相比,推薦算法(GSP-CA-CF)提供了更好的準確性。

圖3 不同算法隨鄰域大小的平均絕對誤差MAE
2.2.2 不同稀疏度實驗
通過不同稀疏度實驗對混合推薦算法預測精確度的影響。實驗采用之前鄰域?qū)嶒炛凶罴燕徲蛑禐?5的鄰域進行。原始數(shù)據(jù)稀疏度為93.7%。圖4顯示了稀疏度對預測精確度影響的結果。從圖4可以看出,混合推薦算法(GSP-CA-CF)在所有稀疏度級別上的MAE最低,優(yōu)于其他三種推薦算法。隨著稀疏度的增加,三種推薦算法(GSP-CA-CF,CF-CA,CF)的MAE也隨之增加。其中,因為在預測學習資源時使用了學習者的序列訪問模式,而不是評價,所以GSP算法的MAE隨稀疏度的增加變化不大。

圖4 不同稀疏度不同推薦算法預測平均絕對誤差MAE
2.2.3 性能評估實驗
為了衡量推薦算法(GSP-CA-CF)的性能,本文使用召回率、精確度和F1度量指標[22]進行評估。精確度(Precision)是指推薦的學習資源與所選學習資源數(shù)量的比率。召回率(Recall)是正確推薦的學習資源與相關學習資源的比率。
在使用精確度和召回率評估指標時,學習資源的等級為1~5。評價為1~3的學習資源被視為“不相關”,而評價為4~5的學習資源被視為“相關”。
(4)
(5)
其中,精確度P的tp表示被檢索到的推薦學習資源數(shù)量,fp表示應該未被檢索到的推薦學習資源數(shù)量;召回率R的tp同樣表示被檢索到的推薦學習資源數(shù)量,fn表示被檢索到的不推薦學習資源數(shù)量。
表1顯示了本文所提出的混合推薦算法(GSP-CA-CF)與其他三種推薦算法(CF-CA,GSP和CF)在不同推薦數(shù)量下的精確度P和召回率R方面的性能。從表1可以看出,對于任意數(shù)量資源的推薦,本文所提出的推薦算法(GSP-CA-CF)在精確度和召回率指標方面都優(yōu)于其他三種推薦算法。在增加推薦數(shù)量時會導致四種算法的精確度全部下降,隨著推薦數(shù)量的增加,四種算法的召回率也隨之增加。

表1 推薦算法性能對比試驗結果
F1度量指標是將精確度和召回率合并為一個值,以便于比較幾種算法的綜合性能指標,并獲得性能的平衡視圖。F1指標對精確度和召回率給予同等的重視。
(6)
其中,F1表示F1度量指標。
圖5顯示了所提出的混合推薦算法(GSP-CA-CF)與其他三種推薦算法(CF-CA、GSP和CF)的F1度量的性能相比,混合推薦算法(GSP-CA-CF)在所有實驗的推薦數(shù)量上都表現(xiàn)出良好的性能。

圖5 不同推薦算法F1指標隨推薦數(shù)的變化
各項實驗結果表明,將GSP、CA和CF相結合的混合推薦算法可以提高學習者個性化資源推薦的準確性和精確度,該混合算法相比其他三種算法(CF-CA、GSP和CF)的性能優(yōu)勢可用于各類在線學習資源推薦。
中國氣象局干部培訓學院甘肅分院基于GSP-CA-CF混合推薦算法設計開發(fā)了雲(yún)智培智能教學管理系統(tǒng),該系統(tǒng)主要針對西北區(qū)域氣象部門職工日常政務、黨務和業(yè)務知識學習和管理。目前,系統(tǒng)中氣象職工注冊用戶數(shù)達到3400余人,在線學習資源170000余份。
系統(tǒng)依靠氣象部門政務管理信息系統(tǒng)的氣象部門人力資源采集系統(tǒng)的人口統(tǒng)計數(shù)據(jù)、工作和學習背景等精準的氣象職工數(shù)據(jù)信息開展學習者信息初始化;借助學習者登錄系統(tǒng)時的培訓知識考試評估系統(tǒng),對資源進行評價,更新用戶情境。
系統(tǒng)采用自適應頁面方式展示,每頁默認顯示8份學習資源,盡量最大化程度滿足用戶需求。經(jīng)過1年左右穩(wěn)定運行,對部分用戶數(shù)據(jù)進行抽測,系統(tǒng)混合推薦資源準確率和召回率分別為48.7%和26.8%。準確率的提升主要是由于地域、單位和職責細化,情境特性相對明顯,有利于推薦系統(tǒng)相似度計算并對學習資源的評價。該系統(tǒng)用戶滿意度調(diào)查達93.7%。
本文提出了一種基于情境感知和序列模式挖掘的混合推薦算法,用于向在線學習環(huán)境中的學習者推薦學習資源。混合推薦算法使用GSP算法挖掘Web日志數(shù)據(jù)并發(fā)現(xiàn)學習者的序列訪問模式,通過情境感知合并學習者的情境信息(如知識水平),再由協(xié)作過濾生成基于情境化數(shù)據(jù)的推薦,并將GSP算法應用于情境化推薦,根據(jù)學習者的序列訪問模式對推薦進行過濾,生成最終的個性化推薦結果給學習者。該混合推薦算法結合多種推薦技術,根據(jù)學習者的情境和序列訪問模式進行個性化資源推薦,有助于緩解數(shù)據(jù)稀疏問題。實驗結果表明,該推薦算法具有更好的性能和推薦質(zhì)量。應用于氣象教學管理信息系統(tǒng)中資源的推薦也取得了較好的效果。
隨著國產(chǎn)化[23]和大數(shù)據(jù)分析模型[24]的不斷深化,混合推薦算法將以氣象決策管理協(xié)同支撐建設項目為抓手,應用于電子公文和制度樹的搜索與推薦,為氣象職工推薦準確的參考文件提供助力;同時,也可以與ElasticSearch[25]相結合,對異構數(shù)據(jù)進行重定位和價值挖掘,提升業(yè)務和管理歷史數(shù)據(jù)價值。