劉波等



摘 要:基于湖南國家農(nóng)村農(nóng)業(yè)信息化示范省建設項目農(nóng)業(yè)知識抽取與推薦研究,提出了基于用戶隱式評價的農(nóng)業(yè)知識協(xié)同過濾推薦算法。該算法主要針對協(xié)同過濾算法中用戶偏好描述粒度大和評價矩陣稀疏引起的相似度計算不準確問題,通過建立農(nóng)業(yè)知識標準特征矩陣和用戶評分項目內(nèi)容權重矩陣,然后基于內(nèi)容的特征對評價矩陣進行填充,再基于項目協(xié)同過濾算法推薦相應的知識。使用農(nóng)業(yè)數(shù)據(jù)集論證了本算法也適合農(nóng)業(yè)文本知識推薦。該方法既改善了數(shù)據(jù)稀疏性,同時又反映了用戶的個性興趣。
關鍵詞:協(xié)同過濾推薦;用戶偏好-項目評價矩陣;混合推薦算法;農(nóng)業(yè)知識服務
中圖分類號:TP311.13 文獻標識碼:A 文章編號:2095-1302(2015)08-00-04
0 引 言
當前農(nóng)業(yè)知識服務,主要是農(nóng)戶被動接受信息,導致涉農(nóng)組織、農(nóng)戶想要的信息得不到,不適用的信息卻很多。在這種背景下,推薦技術作為個性化服務的核心技術[1],相繼移植到農(nóng)業(yè)知識服務領域。大眾化的農(nóng)業(yè)知識推送,基于內(nèi)容的個性化推薦近些年取得了大量的成果,然而,推薦技術在個性化農(nóng)業(yè)知識服務上存在諸多挑戰(zhàn)[2],主要表現(xiàn)在:
(1)農(nóng)業(yè)信息的動態(tài)時效性、區(qū)域性給用戶興趣表示帶來多樣性;
(2)用戶文化層次較低,農(nóng)業(yè)知識的客觀性,農(nóng)業(yè)農(nóng)村信息基礎設施較差使系統(tǒng)很難顯式獲取用戶的評價行為;
(3)農(nóng)業(yè)用戶的小規(guī)模性和農(nóng)業(yè)知識的海量存儲,導致用戶評價矩陣稀疏,傳統(tǒng)的協(xié)同過濾算法難以直接應用。正是在這樣的背景下,湖南國家農(nóng)村農(nóng)業(yè)信息化示范省建設項目組開展基于協(xié)同過濾的農(nóng)業(yè)文本知識推薦模型與算法研究[3]。
1 相關定義
1.1 用戶偏好
用戶模型是個性化信息推薦的基礎,必須建立合適的用戶模型表示用戶偏好,并能有效的進行學習、更新,使其準確表示用戶特征。由于農(nóng)業(yè)典型的生態(tài)區(qū)域性和過程復雜性,涉農(nóng)用戶在組織從事農(nóng)業(yè)生產(chǎn)經(jīng)營活動中,與種植環(huán)境、養(yǎng)殖情景、流通節(jié)奏息息相關,如何反應這種動態(tài)變化的具有區(qū)域性、多樣化興趣是解決農(nóng)業(yè)個性化信息服務的關鍵問題之一。同時本文的研究對象主要是涉農(nóng)用戶,由于文化層次相對較低,上網(wǎng)獲取信息能力較差,對網(wǎng)絡深度應用不多,造成用戶偏好數(shù)據(jù)獲取困難。傳統(tǒng)的加權關鍵詞,表示用戶興趣模型,采用“用戶-興趣特征”兩級管理方式,沒有對用戶偏好進行分類,降低了推薦精度,文獻[4]針對此問題進行研究,改進為“用戶-興趣主題-興趣特征”的三級管理方式,文獻[5]基于層次矢量空間模型,采用用戶瀏覽行為計算網(wǎng)頁興趣度,具有較高的準確率和召回率。文獻[6]基于矢量空間模型構建了基于用戶興趣的信息檢索模型,進行了基于用戶興趣模型的個性化實現(xiàn)。
1.2 用戶興趣度量
用戶瀏覽內(nèi)容時伴隨多種瀏覽行為,用戶瀏覽一次相關頁面的行為形成相應的一條歷史記錄,研究表明用戶一定時間段內(nèi),許多瀏覽行為能很好反映用戶興趣,主要表現(xiàn)為保存頁面、打印頁面、收藏頁面,在一時間段內(nèi)訪問同一頁面次數(shù),在頁面上瀏覽停留時間[7,8]。目前研究中一般通過內(nèi)容關鍵詞,結合賦予這些行為以權值來表達網(wǎng)頁和用戶興趣相關性得到用戶特征矢量。對權值的處理通常有兩種方式[7]:第一種是把用戶瀏覽各種行為的權值相加;第二種是幾種行為同時發(fā)生的,取其中最大值。前者放大了網(wǎng)頁對用戶興趣表達的重要性,后者縮小了網(wǎng)頁對用戶興趣表達的重要性。文獻[9]研究表明,基于其訪問頁面次數(shù)、停留時間的用戶興趣度性能好且較接近,在實際瀏覽中,會出現(xiàn)頁面駐留時間遠超用戶正常瀏覽時間和遠小于用戶瀏覽時間的兩種異常情況[9,10]。
1.3 特征詞興趣值度量
根據(jù)用戶對特征詞,所在農(nóng)業(yè)知識條目頁面實際瀏覽時間、該特征詞在該用戶所有瀏覽記錄中出現(xiàn)的次數(shù)、瀏覽興趣度來表示。同時為了更精準表示用戶興趣值,用頁面停留時間平均值取代實際瀏覽時間。
1.4 用戶興趣向量
由于農(nóng)業(yè)知識復雜性,同一興趣關鍵詞可能屬于不同主題,同一關鍵詞也可能有多種表示形式,將用戶興趣組織為主題層次樹,對樹中的興趣主題和關鍵詞分別定義權值。這樣,樹結構既可表示用戶興趣主題,也可表示用戶興趣特征關鍵詞,還可表示對興趣主題或興趣特征詞的偏好程度。
2 用戶隱式評價的農(nóng)業(yè)知識協(xié)同過濾推薦算法
2.1 算法框架
基于用戶隱式評價的農(nóng)業(yè)知識協(xié)同過濾推薦算法CIECF (Collaborative Filtering Based on Agricultural Knowledge Content and Implicit Evaluation),其主要思想是在構建“用戶-農(nóng)業(yè)知識”評價矩陣中,將學習到的基于內(nèi)容的標準特征詞的用戶興趣向量融合到基于查詢、瀏覽行為的用戶隱式評分中,相對于純粹基于評分的評價矩陣具有更細的興趣粒度;推薦過程中,以用戶已評分項目的內(nèi)容特征計算其內(nèi)容權重,對未評分項目基于內(nèi)容的評分預測填充,以此使“用戶-農(nóng)業(yè)知識”評價矩陣稠密。在此基礎上,計算項目之間基于內(nèi)容特征和評分的相似性,選擇目標最近鄰,使用項目協(xié)同過濾,對近鄰的目標項目預測評分,從而預測目標用戶對未評分目標項目的評分,再對目標用戶所有未評分項目的預測評分值降序進行Top-N推薦。其框架如圖1所示。
2.2 算法具體描述
該算法分為以下幾個步驟:
步驟一:基于瀏覽評價的用戶內(nèi)容權重
“用戶-農(nóng)業(yè)知識”評價矩陣考慮農(nóng)業(yè)知識內(nèi)容特征較少,而實際上用戶瀏覽行為是對農(nóng)業(yè)知識特征詞感興趣,用戶已評分信息應反映對特征詞感興趣的權重;一般用戶對特征比較相似的農(nóng)業(yè)文本知識評價也是比較相似的。因此,可利用農(nóng)業(yè)文本知識的特征來反映用戶瀏覽項目的內(nèi)容權重。
設Ci類農(nóng)業(yè)知識標準特征屬性矩陣如下表示:
其中,n為農(nóng)業(yè)知識項目總數(shù),d為特征總數(shù),in(t)為項目in的第t個屬性,其值為0和1,1表示具有這種特征,0表示不具有這種特征。
用戶評分項目的內(nèi)容權重算法描述如下:
輸入:“用戶-農(nóng)業(yè)知識”評價矩陣Gi,農(nóng)業(yè)知識標準特征屬性矩陣feaMatrix。
輸出:用戶評分項目內(nèi)容權重矩陣UserMatrix。
Step1:對于“用戶-農(nóng)業(yè)知識”評價分矩陣Gi提取每個用戶的評分記錄;
Step2:從農(nóng)業(yè)知識標準特征屬性矩陣feaMatrix查詢用戶每個評分項目標準特征詞,得到用戶評價項目的特征;
Step3:在“用戶-農(nóng)業(yè)知識”評價矩陣中,統(tǒng)計該用戶瀏覽評價中包含有某標準特征詞的項目的數(shù)量,作為用戶瀏覽評價該標準特征詞的權重。得到以用戶為行,標準特征詞為列的內(nèi)容權重矩陣UserMatrix。
步驟二:基于內(nèi)容的評分預測填充
根據(jù)用戶對項目的評分計算出了用戶對瀏覽同類特征知識的內(nèi)容評價,用戶瀏覽知識具有一定的興趣主題,在“用戶-農(nóng)業(yè)知識”評價矩陣中表現(xiàn)為對同類型知識的評分和,因此對用戶ui未訪問農(nóng)業(yè)知識ij的預測評分,可用已瀏覽同類型農(nóng)業(yè)知識的評分和,除以用戶評價權重來反映。其算法描述為:
輸入:“用戶-農(nóng)業(yè)知識”評價矩陣Gi,農(nóng)業(yè)知識標準特征屬性矩陣feaMatrix,用戶評分項目內(nèi)容權重矩陣UserMatrix。
輸出:“用戶-農(nóng)業(yè)知識”評價稠密矩陣Gi'。
Step1:對于“用戶-農(nóng)業(yè)知識”評價分矩陣Gi提取每個用戶的評分記錄;
Step2:判斷每個用戶的評分項目,對未評分某個項目在feaMatrix矩陣查詢對應的特征信息(typeScore1, typeScore2,…, typeScore k),在“用戶-農(nóng)業(yè)知識”評價矩陣Gi中,計算具有相應特征typeScore1所有農(nóng)業(yè)知識的瀏覽評分和sum(typeScore1);再算包含其他特征typ-eScore k的農(nóng)業(yè)知識用戶瀏覽評分和sum(typeScore k);得到未評分項目基于農(nóng)業(yè)知識特征用戶瀏覽評分和typeScore =sum(sum(typeScore1), sum(typeScore2),…, sum(type-Score k))。
Step3:在UserMatrix內(nèi)查找此用戶未評分項目對應特征的用戶評分項目內(nèi)容權重并求和,即progType =sum(sum(progType1), sum(progType2),…,sum(progType k))。
步驟六:基于Gi的Top-N推薦
對步驟五產(chǎn)生的評分TOP-N排序,產(chǎn)生興趣主題Ci下的推薦Collectioncirecom;
步驟七:對其他主題下分矩陣Gi并行執(zhí)行前述六個步驟,產(chǎn)生相應推薦集合Collectioncirecom;
步驟八:最后根據(jù)每個興趣主題分類按主題權值在該用戶興趣模型中所占比例產(chǎn)生推薦集合CollectionTrecom。
3 仿真實驗
3.1 實驗環(huán)境與數(shù)據(jù)集
(1)硬件環(huán)境
仿真時可選用神舟優(yōu)雅A560P-i5 D4筆記本1臺, Intel Core i5-2450雙核移動處理器,8 G DDR3 1 333 MHz 內(nèi)存,500 G SATA2.0硬盤。
(2)軟件環(huán)境
操作系統(tǒng):Windows7 64位 旗艦版 SP1
模擬仿真環(huán)境:Matlab2012b
3.2 基于農(nóng)業(yè)知識數(shù)據(jù)的實證實驗
湖南省國家農(nóng)村農(nóng)業(yè)信息化示范省綜合服務平臺處于上線測試階段,通過對評分數(shù)據(jù)的預處理之后,獲得15個獨立用戶對59條農(nóng)業(yè)知識的69次評分數(shù)據(jù),數(shù)據(jù)集稀疏度為1-[69/(15×59)]≈0.922,整理后的數(shù)據(jù)如表1所列,數(shù)據(jù)記錄了用戶編號、農(nóng)業(yè)知識編號、用戶評分、農(nóng)業(yè)知識類型(已用數(shù)字1、2…進行了規(guī)范化處理),農(nóng)業(yè)知識類型用于代表農(nóng)業(yè)知識內(nèi)容特征。實驗中選擇最近鄰居算法中表現(xiàn)效果最好的BCF-PCC、CIECF-ACOS算法作為對照組實驗。
兩種推薦算法的預測準確性實驗結果如表2和圖2所示。此數(shù)據(jù)集下BCF-PCC算法的MAE值基本保持在恒值,通過分析算法運行過程,原因在于用戶共同評價農(nóng)業(yè)知識非常稀少,于是有可能:(1)本來興趣相似的兩個用戶因為共同評分項少,不會有太高的相似度;(2)興趣不太相似的兩個用戶因為在僅有的1、2個共同評分項中評分類似。
雖然相似度比較高,但相似度計算較不準確,實際上通過觀察發(fā)現(xiàn),上述算法計算過程中,相似度矩陣值絕大部分為零,因此,在當前數(shù)據(jù)集下,傳統(tǒng)協(xié)同過濾算法不具有適用性。本文提出的CIECF-ACOS算法在鄰居數(shù)為1、2、3、4、5、6時具有較高的預測精度,在最近鄰為3時,效果最好,本文的算法在農(nóng)業(yè)數(shù)據(jù)集和公共數(shù)據(jù)集下表現(xiàn)相似的推薦效果。
4 結 語
本文結合農(nóng)業(yè)知識條目特征和“用戶-農(nóng)業(yè)知識”評價矩陣,提出了基于用戶隱式評價的農(nóng)業(yè)知識協(xié)同過濾推薦算法,該算法通過對極端稀疏矩陣進行基于農(nóng)業(yè)知識內(nèi)容特征的評分填充,減少了稀疏性問題和語義粒度劃分大的問題對推薦效果的影響。通過實驗表明本文算法提高了知識推薦的準確率、推薦效果的穩(wěn)定性、降低在線推薦時間復雜度,適合農(nóng)業(yè)文本知識推薦,對湖南國家農(nóng)村農(nóng)業(yè)信息化示范省建設農(nóng)業(yè)知識智能推送研究有一定指導意義。
參考文獻
[1] DietmarJ.,Markus Z.,Alexander F.,et al.Recommender Systems[M].北京:人民郵電出版社,2013:1-200.
[2]郭平,劉波,沈岳.農(nóng)業(yè)云大數(shù)據(jù)自組織推送關鍵技術綜述[J].軟件,2013,34(3):1-6.
[3]劉波,沈岳,郭平,等.數(shù)字湖南農(nóng)業(yè)信息化建設關鍵策略探索[J].軟件,2013,34(10):1-6.
[4]費洪曉,蔣習翀,徐麗娟.基于樹狀向量空間模型的用戶興趣建模[J].計算機技術與發(fā)展,2009,19(5):79-81,85.
[5]郝水龍,吳共慶,胡學鋼.基于層次向量空間模型的用戶興趣表示及更新[J].南京大學學報(自然科學),2012, 48(2):190-197.
[6] Claypool M, Le P, Wased M, et al. Implicit Interest Indicators[C].Proc. of the 6th International Conference on Intelligent UserInterfaces. Santa Fe, New Mexico, USA: ACM Press, 2001: 33-40.
[7]南智敏.基于網(wǎng)頁興趣度的用戶興趣模型體系研究[D].上海:復旦大學,2012:24-38.
[8]楊晶.用戶興趣模型及實時個性化推薦算法研究[D].南京:南京郵電大學,2013:16-41.
[9]應曉敏.面向Internet個性化服務的用戶建模技術研究[D].長沙:國防科學技術大學,2003:55- 77.
[10]劉春,梁光磊,譚國平.基于用戶興趣變化融合的個性化推薦模型[J].計算機工程與設計,2013,34(8):2944- 2950.