楊雅志,鐘 勇,李 駿
(1. 中國(guó)科學(xué)院成都計(jì)算機(jī)應(yīng)用研究所,四川 成都 610041;2. 成都工業(yè)學(xué)院,四川 成都 611730;3. 中國(guó)科學(xué)院大學(xué),北京 100049)
當(dāng)前,網(wǎng)絡(luò)數(shù)據(jù)量的飛速增長(zhǎng)不僅加快了信息傳輸速度,也對(duì)用戶造成了信息過(guò)載問(wèn)題,無(wú)法高效提取興趣信息。信息推薦技術(shù)不僅能夠?yàn)橛脩籼峁┛捎玫男畔⒎?wù),且在用戶沒(méi)有明確描述需求時(shí),只要通過(guò)用戶對(duì)其它物品的歷史行為信息,就能夠準(zhǔn)確挖掘其個(gè)性化需求,根據(jù)興趣偏好,為用戶主動(dòng)提供所需要的信息。信息推薦技術(shù)作為網(wǎng)絡(luò)個(gè)性化服務(wù)的關(guān)鍵環(huán)節(jié)之一,具有重要的研究意義與探索價(jià)值,也因此涌現(xiàn)出眾多相關(guān)學(xué)者對(duì)信息推薦技術(shù)展開(kāi)研究。
文獻(xiàn)[1]將用戶經(jīng)歷作為隱式反饋的累積數(shù)量定義,提出一種平衡系數(shù)的自適應(yīng)網(wǎng)絡(luò)智能信息推薦模型。采用用戶歷史經(jīng)歷數(shù)據(jù)替代平衡系數(shù),在模型中添加阻尼系數(shù),實(shí)現(xiàn)深入優(yōu)化,最后有效結(jié)合阻尼系數(shù)與用戶經(jīng)歷,架構(gòu)智能信息自適應(yīng)推薦模型。但是該模型的智能效果較差,應(yīng)用適應(yīng)性不理想。文獻(xiàn)[2]提出基于知識(shí)網(wǎng)絡(luò)的信息推薦模型。設(shè)定最近鄰優(yōu)先的候選知識(shí)選擇方案,結(jié)合最大可學(xué)習(xí)支撐度優(yōu)先的未學(xué)知識(shí)推薦算法以及知識(shí)關(guān)聯(lián)結(jié)構(gòu),對(duì)用戶知識(shí)需求進(jìn)行挖掘。但是該模型耗時(shí)較長(zhǎng),知識(shí)推薦時(shí)間沒(méi)有得到明顯縮短。文獻(xiàn)[3]提出基于矩陣分解模型的協(xié)同過(guò)濾推薦模型。將矩陣分解與協(xié)同過(guò)濾結(jié)構(gòu)進(jìn)行融合,得到耦合物品屬性信息相似度的推薦模型。但是該模型的應(yīng)用過(guò)程難度較高,無(wú)法進(jìn)行廣泛應(yīng)用。
為解決傳統(tǒng)方法存在的問(wèn)題,提出基于知識(shí)圖譜的智能信息推薦模型。采用三元組構(gòu)成的知識(shí)網(wǎng)絡(luò)與本體論,設(shè)計(jì)知識(shí)圖譜與結(jié)構(gòu)化模型;組建由課程實(shí)體間關(guān)系構(gòu)成的知識(shí)圖譜網(wǎng)絡(luò)結(jié)構(gòu);利用FP-Growth挖掘算法,獲取頻繁項(xiàng)集合與關(guān)聯(lián)規(guī)則,動(dòng)態(tài)更新知識(shí)圖譜,引入信息推薦路徑達(dá)成度與SVR檢測(cè)模型完成推薦。
將知識(shí)圖譜劃分成數(shù)據(jù)層與模式層。利用SPO三元組[4]表示各知識(shí),通過(guò)知識(shí)網(wǎng)絡(luò)生成知識(shí)圖譜;采用本體論對(duì)結(jié)構(gòu)化概念模板進(jìn)行架構(gòu),以有效控制知識(shí)冗余。邏輯結(jié)構(gòu)與構(gòu)建技術(shù)共同組成知識(shí)圖譜,其構(gòu)建技術(shù)部分如圖1所示。
圖1 知識(shí)圖譜技術(shù)結(jié)構(gòu)示意圖
技術(shù)模塊主要分為構(gòu)建階段與流程動(dòng)態(tài)更新兩部分,構(gòu)建階段是在初始數(shù)據(jù)內(nèi)采用一些策略對(duì)知識(shí)事實(shí)進(jìn)行提取,并將其以元素形式存儲(chǔ)到知識(shí)庫(kù)[5]的邏輯結(jié)構(gòu)中;而更新過(guò)程則包含三個(gè)階段:信息提取、知識(shí)匯總與知識(shí)處理。
智能學(xué)習(xí)信息推薦模型可以通過(guò)分析與挖掘?qū)W習(xí)數(shù)據(jù),獲取相關(guān)有效信息,進(jìn)一步輔助與指導(dǎo)教學(xué)活動(dòng)的順利進(jìn)行。該模型的設(shè)計(jì)目標(biāo)是為不同的學(xué)習(xí)者提供與之相匹配的學(xué)習(xí)路徑與學(xué)習(xí)內(nèi)容,實(shí)現(xiàn)因材施教的個(gè)性化學(xué)習(xí)策略。
圖2所示為經(jīng)過(guò)擴(kuò)展與改進(jìn)傳統(tǒng)各單元模型獲取知識(shí)圖譜下智能信息推薦模型,結(jié)構(gòu)部分有領(lǐng)域知識(shí)模型、學(xué)習(xí)者模型以及自適應(yīng)引擎模型三個(gè)模塊。
圖2 基于知識(shí)圖譜的智能信息推薦模型結(jié)構(gòu)示意圖
推薦模型可用性的判定依據(jù)為其工作流程對(duì)用戶的適用性,分別以模型管理者與學(xué)習(xí)者的角度,對(duì)基于知識(shí)圖譜的智能信息推薦模型進(jìn)行分析。
針對(duì)管理者方面,推薦模型應(yīng)具備資源上傳與管理等功能,若想防止該模型出現(xiàn)冷啟動(dòng)[6]問(wèn)題,則需要在資源上傳前進(jìn)行初始知識(shí)圖譜的架構(gòu),采用存儲(chǔ)于資源數(shù)據(jù)庫(kù)里的資源與知識(shí)圖譜模型數(shù)據(jù),為自適應(yīng)引擎模型提供可調(diào)用數(shù)據(jù),在學(xué)習(xí)資源得到一定積累后,通過(guò)關(guān)聯(lián)規(guī)則算法挖掘出知識(shí)之間相關(guān)性,從而動(dòng)態(tài)更新知識(shí)圖譜;
針對(duì)學(xué)習(xí)者方面的運(yùn)行流程則相對(duì)繁瑣,若首次使用推薦模型,則需要通過(guò)注冊(cè)基本信息,完成學(xué)習(xí)者模型的架構(gòu),為了便于今后的信息推薦,用戶需在下一次使用時(shí),先在登錄界面進(jìn)行相關(guān)信息的匹配,然后,依據(jù)個(gè)人信息選擇學(xué)習(xí)與測(cè)試內(nèi)容,模型通過(guò)分析處理采集到的學(xué)習(xí)數(shù)據(jù)與測(cè)試成績(jī),檢測(cè)學(xué)習(xí)者的認(rèn)知水平,將其與知識(shí)圖譜進(jìn)行結(jié)合,匹配可達(dá)學(xué)習(xí)路徑,根據(jù)推算的各學(xué)習(xí)路徑達(dá)成度,實(shí)現(xiàn)路徑推薦列表的創(chuàng)建,從而令學(xué)習(xí)者的進(jìn)一步學(xué)習(xí)更加便捷,而且,基于學(xué)習(xí)者模型的數(shù)據(jù),推薦模型將完成諸如知識(shí)點(diǎn)掌握程度與學(xué)習(xí)路徑等學(xué)習(xí)者能力圖譜的架構(gòu),使學(xué)習(xí)者的下一步學(xué)習(xí)內(nèi)容選取,能夠通過(guò)比較能力圖譜與知識(shí)圖譜得以實(shí)現(xiàn)。
采用知識(shí)圖譜對(duì)知識(shí)實(shí)體、實(shí)體間關(guān)系以及知識(shí)特性進(jìn)行知識(shí)表達(dá),是領(lǐng)域知識(shí)模型的主要功能。由于學(xué)習(xí)階段的最小知識(shí)體系單位是課程,知識(shí)圖譜的主要研究目標(biāo)是課程實(shí)體。
利用下列公式對(duì)知識(shí)表達(dá)三元組進(jìn)行描述
F={E,R,T}
(1)
式中,E為全部課程實(shí)體集合,R為各課程實(shí)體間的關(guān)系集合,T為課程實(shí)體內(nèi)部特征集合。
圖3所示為課程實(shí)體間關(guān)系所構(gòu)建的知識(shí)圖譜網(wǎng)絡(luò)框架示意圖。
圖3 知識(shí)圖譜網(wǎng)絡(luò)框架示意圖
圖3中各代數(shù)式的含義如下:具體課程實(shí)體為Ei,課程實(shí)體Ei和Ej的映射關(guān)系為Rij,與集合R相對(duì)應(yīng),課程實(shí)體Ei內(nèi)部特征集合為ETi。
領(lǐng)域知識(shí)模型的工作流程如圖4所示,初始架構(gòu)流程為圖4中的方框區(qū)域,框外區(qū)域則主要用于動(dòng)態(tài)更新知識(shí)模型。
圖4 領(lǐng)域知識(shí)模型結(jié)構(gòu)示意圖
動(dòng)態(tài)更新知識(shí)圖譜的目的是提升知識(shí)圖譜的適用性,需要采用關(guān)聯(lián)規(guī)則的FP-Growth[7]挖掘算法來(lái)完成,通過(guò)壓縮存儲(chǔ)事務(wù)數(shù)據(jù)集,對(duì)FP-Tree進(jìn)行架構(gòu),從而獲取全部頻繁項(xiàng)集合與關(guān)聯(lián)規(guī)則。
FP-Tree的創(chuàng)建步驟為:對(duì)數(shù)據(jù)庫(kù)D進(jìn)行掃描,達(dá)成各實(shí)體支持度的運(yùn)算,按照支持度降序?qū)λ玫念l繁1-項(xiàng)集合進(jìn)行排序,獲取頻繁項(xiàng)集合L;標(biāo)記tree根節(jié)點(diǎn)T為“null”;迭代運(yùn)算各學(xué)習(xí)路徑Di;按照頻繁項(xiàng)集合L的排列順序,對(duì)各學(xué)習(xí)路徑Di內(nèi)的實(shí)體進(jìn)行求取,獲取頻繁項(xiàng)集合,第一個(gè)實(shí)體為p,除此之外,頻繁項(xiàng)集其它實(shí)體構(gòu)成的項(xiàng)表為P;實(shí)現(xiàn)函數(shù)insert_tree([p|P],T)的調(diào)用。
FP-Tree的挖掘[8]流程為:空值是集合L的初始值;若tree僅有一個(gè)學(xué)習(xí)路徑P,那么,對(duì)該路徑實(shí)體所有組合進(jìn)行迭代運(yùn)算,并用β表示,將β內(nèi)實(shí)體極小的支持度值作為實(shí)體集合α∩β的支持度,最后返回到集合L與集合α∩β的交集;反之,則用αf表示tree頭表內(nèi)的各頻繁項(xiàng),將αf的支持度作為實(shí)體集合β=αf∪α的支持度,完成β條件模式基B的創(chuàng)建,從而對(duì)β的條件樹(shù)treeβ進(jìn)行求取,如果滿足treeβ≠Φ,那么界定fp_growth(tree,β),并停止挖掘。
智能信息推薦該模型主要組成部分為學(xué)習(xí)者的基本信息與知識(shí)狀態(tài)兩大模塊,用于對(duì)學(xué)習(xí)者當(dāng)前的知識(shí)狀態(tài)結(jié)構(gòu)進(jìn)行表征,推薦對(duì)象的個(gè)體屬性與認(rèn)知[9]性能。
當(dāng)已知測(cè)試題的所有參數(shù),評(píng)估學(xué)習(xí)者的認(rèn)知水平時(shí),若作答m個(gè)試題的學(xué)習(xí)者數(shù)量為N,θα為第α個(gè)推薦對(duì)象的權(quán)重指標(biāo),則1≤α≤N,第j個(gè)推薦信息的區(qū)分度、數(shù)據(jù)相似性以及猜測(cè)系數(shù)分別是ai、bi和ci,如果試題的評(píng)分標(biāo)準(zhǔn)為0~1,那么,表達(dá)式如下所示
(2)
利用下列公式對(duì)認(rèn)知水平Uα學(xué)習(xí)者對(duì)第m個(gè)試題的回答結(jié)果進(jìn)行描述
Uα=(Uα1,Uα2,…,Uαm)
(3)
其中,1≤α≤N。
所以,推導(dǎo)出關(guān)于m個(gè)推薦信息N個(gè)用戶回答結(jié)果,其矩陣函數(shù)U如下
(4)
式中,Uαj是隨機(jī)變量,取值0或1。
若uαj為觀測(cè)值,認(rèn)知水平θα的推薦對(duì)象權(quán)重指標(biāo)第j個(gè)屬性為Pαj,則
Pαj=P(uαj×1)
(5)
如果推薦內(nèi)容符合局部獨(dú)立性假設(shè)條件,那么,學(xué)習(xí)者回答結(jié)果概率L的表達(dá)式如下所示
(6)
設(shè)定待估算的認(rèn)知水平數(shù)值為似然函數(shù)L極大值的自變量數(shù)值,由于L與lnL的最大值點(diǎn)一致,所以,取L的對(duì)數(shù)得出下式
(7)
使lnL的參數(shù)偏導(dǎo)為0,則有
(8)
將上列兩式代入合并,得出下列表達(dá)式
(9)
采用牛頓-拉夫遜迭代法估算θα,下列公式為g(θα)的表達(dá)式
(10)
根據(jù)上式推導(dǎo)出下列計(jì)算認(rèn)知水平的迭代公式
(11)
迭代初始值θα0表達(dá)式如下所示
(12)
采用下列公式對(duì)迭代終止規(guī)則進(jìn)行描述
|θα(k+1)-θαk|<ε
(13)
該模型為實(shí)現(xiàn)推薦模型的重要環(huán)節(jié),功能是對(duì)前兩個(gè)模型進(jìn)行推薦路徑與推薦內(nèi)容進(jìn)行匹配。
利用推薦完成的平均概率來(lái)界定路徑[10-11]達(dá)成度,下列公式為定義表達(dá)式
(14)
式中,路徑含有的總數(shù)據(jù)量為n,相似識(shí)別對(duì)象第i個(gè)推薦內(nèi)容相關(guān)度為Ci。
根據(jù)所得的達(dá)成度,為數(shù)據(jù)推薦提供最優(yōu)推薦路徑。
自適應(yīng)引擎模型[12]中SVR模型的檢測(cè)階段相當(dāng)于機(jī)器學(xué)習(xí)的階段,主要用于解決分類與回歸問(wèn)題。
在智能推薦模型中信息任意選取n個(gè)學(xué)習(xí)者屬性x1,x2,…,xn,通過(guò)預(yù)處理得到訓(xùn)練樣本[x1,x2,…,xn,path_com],經(jīng)過(guò)訓(xùn)練與優(yōu)化SVR模型的參數(shù),依據(jù)輸入元組預(yù)估路徑達(dá)成度。若[x1,x2,…,xn]為預(yù)估樣本,則預(yù)估函數(shù)表達(dá)式為
F=f(x1,x2,…,xn)
(15)
為評(píng)估論文提出的智能信息推薦模型應(yīng)用性能,實(shí)驗(yàn)隨機(jī)抽取500名用戶作為實(shí)驗(yàn)樣本,此次試驗(yàn)將與文獻(xiàn)[1]模型、文獻(xiàn)[2]模型進(jìn)行對(duì)比。實(shí)驗(yàn)指標(biāo)為模型的推薦路徑完成度以及信息推薦召回率作為評(píng)價(jià)指標(biāo)。模型的推薦路徑完成度越高,說(shuō)明信息推薦的成功率越高。推薦召回率越高說(shuō)明模型應(yīng)用的精度越高,即模型的應(yīng)用效果越好。具體對(duì)比結(jié)果如圖5、圖6所示。
圖5 不同模型的信息推薦路徑完成度對(duì)比
分析圖5的三種模型推薦路徑完成度的波動(dòng)趨勢(shì)可知,隨著用戶數(shù)量的增多,推薦路徑的完成度均出現(xiàn)了下降情況,但是傳統(tǒng)方法的下降幅度更大,而所提模型在用戶人數(shù)較多情況下,仍然保持較高推薦路徑的完成度,說(shuō)明即使用戶數(shù)量較多,所提模型也能夠成功按照最優(yōu)推薦路徑完成信息推薦也說(shuō)明了所提方法具備較好穩(wěn)定性。
為進(jìn)一步驗(yàn)證本文模型的實(shí)際推薦精度,在不同用戶數(shù)量情況下,利用所提模型與現(xiàn)有模型推薦路徑進(jìn)行對(duì)比并記錄,具體對(duì)比結(jié)果如圖6所示。
圖6 不同模型推薦召回率
通過(guò)圖6的召回率波動(dòng)趨勢(shì)可知,傳統(tǒng)方法召回率最低值為0.7,而所提模型推薦召喚率峰值大于0.9,遠(yuǎn)高于傳統(tǒng)模型,這是因?yàn)樗崮P屠肍P-Growth挖掘算法,獲取頻繁項(xiàng)集合與關(guān)聯(lián)規(guī)則,知識(shí)圖譜的動(dòng)態(tài)更新能夠有效濾掉大誤差推薦信息。所以所提模型隨著用戶人數(shù)增加,召回率波動(dòng)幅度較為平穩(wěn),說(shuō)明所提模型具備較好穩(wěn)定性。
為實(shí)現(xiàn)用戶的個(gè)性化信息推薦、加強(qiáng)體驗(yàn)感與信息提取的可靠性,提出基于知識(shí)圖譜的智能信息推薦模型。通過(guò)數(shù)據(jù)層、模式層得到的邏輯結(jié)構(gòu)與流程動(dòng)態(tài)更新,改進(jìn)并擴(kuò)展傳統(tǒng)單元模型,基于初始知識(shí)圖譜模型,采用知識(shí)表達(dá)三元組,根據(jù)用戶與推薦內(nèi)容關(guān)系的知識(shí)圖譜網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行構(gòu)建,按照支持度降序排列所得頻繁項(xiàng)集合,實(shí)現(xiàn)函數(shù)調(diào)用,通過(guò)迭代運(yùn)算路徑實(shí)體的所有組合形式,達(dá)成全部頻繁項(xiàng)集合與關(guān)聯(lián)規(guī)則的挖掘,構(gòu)建并完善智能信息推薦模型。實(shí)驗(yàn)結(jié)果表明:所提方法推薦準(zhǔn)確率及效率遠(yuǎn)遠(yuǎn)高于現(xiàn)有方法,具有較好的魯棒性及實(shí)際應(yīng)用價(jià)值。該模型為未來(lái)的相關(guān)研究奠定了良好的數(shù)據(jù)基礎(chǔ),擁有重要的現(xiàn)實(shí)意義與實(shí)踐價(jià)值。