請輸入產品關鍵字:
過濾方式的分析計論
點擊次數:881 發布時間:2015-9-10
隨著Internet的發展和電子商務的應用,網上已出現信息過載的現象,于是產生了協同過濾技術的個性化推薦系統。傳統推薦系統的基本思想是基于評分相似的zui近用戶鄰居的評分數據向目標用戶產生推薦。盡管傳統的推薦系統是當前使用zui成功的技術,但它也有許多不足之處。基于項目協同過濾算法的提出雖然避免了傳統的協同過濾算法計算用戶之間相似性的瓶頸,但依然存在一些缺陷。關鍵性問題是:每個用戶一般都只對很少的項目感興趣,整個用戶評分數據非常稀疏,這就導致用戶之間的相似性不準確,產生的zui鄰近的鄰居用戶不可靠;難以推薦或預測一個新項目。該文提出了一種基于語義相似性的項目協同過濾算法,該方法將基于用戶平分計算項目的相似性與語義相似性組合,能很好地解決上述問題。
1基于項目的協同過濾算法基于項目的協同過濾推薦根據用戶對相似項目的評分預測該用戶對目標項目的評分,基于該假設:如果大部分用戶對一些項目的評分比較相似,則當前用戶對這些項目的評分也比較相似?;陧椖康膮f同過濾推薦系統使用統計技術找到目標項目的若干zui近鄰居,由于當前用戶對zui近鄰居的評分與對目標項目的評分比較類似,可以根據當前用戶對zui近鄰居的評分預測當前用戶對目標項目的評分,產生對應的推薦列表。
1)項目相似性計算在基于項目協同過濾算法中,關鍵是計算項目之間的相似性,然后選擇zui相似的項目?,F在有許多不同的計算項目之間的相似性的方法,例如:余弦相似性、相關相似性、修正的余弦相似性,下面介紹修正的余弦相似性的方法。
修正的余弦相似性:設S(i,j)表示資源i與資源j之間的相似性,項目i和項目j共同評過分的用戶集合用U表示,則項目i和項目j之間的相似性S(i,j)為S(i,j)=∑C∈U(RC,i-RC)(RC,j-RC)∑C∈U(RC,i-RC)2∑C∈U(RC,j-RC)2(1)RC,i表示用戶C對項目i的評分,RC表示用戶C對項目的平均評分。
2)預測計算在計算項目之間的相似性之后,要選擇k個與目標項目zui相似的項目,并產生目標項目的預測值。采用相似資源評價的權重組合方法,生成用戶對目標資源的預測評價值。其計算式為Pa,i=∑kj=1(Pa,j×S(i,j))/∑kj=1S(i,j)(2)Pa,j表示用戶a對目標項目j的預測值,這里僅有k個預測值產生。
3)基于項目的協同過濾算法不足基于項目的協同過濾算法通過計算項目之間的相似性,選擇與目標項目的zui近鄰居集合,避免了計算用戶之間相似性的瓶頸,該算法比基于用戶協同過濾算法的擴展性強,度高。但還是存在數據稀疏性和新項目預測的問題。為了解決這2個問題,將采用基于語義相似性過濾算法。在算法中,從網頁中自動地抽取結構化的項目語義知識,并結合項目評分組合一種新的項目相似性方法。
2基于本體的語義相似性的協同過濾算法在協同過濾處理過程中,為了獲取項目的語義信息,必須從多個網頁或中抽取具有概念層次的結構化對象作為語義實體。但現在的網絡,其信息存儲為靜態HTML頁面,用于表達Web頁面信息的HTML標記語言存在著缺點:HTML語言的標記(tag)只是告訴瀏覽器如何顯示它所定義的信息,卻不包含語義信息。針對這個問題引入了本體技術。
1)本體與本體的學習一個本體提供了定義好的重要概念以及概念之間的語義關系的結構,目標是捕獲相關領域的知識,提供對該領域知識的共同理解,確定該領域內共同認可的詞匯,并從不同層次的形式化模式上給出這些詞匯(術語)和詞匯之間相互關系的明確定義。在特定的領域里,這樣一個結構建立了很好的層次知識,對于一個,領域本體一般包括概念、概念之間的關系以及存在于表示的領域概念之間的關系。為了從網頁或中抽取項目的語義信息,首要任務是建立一個特定領域本體。對于簡單的,領域本體可能很容易手工建立或從內容半自動化獲取。然而,對于大型,建造本體(特別是通用目的本體)是費時費力的過程,手工建立本體是一項艱巨的任務,希望能自動化地獲取領域本體。提出了TextToOnto系統和OntoLearn系統。綜合起來,提出了一個本體學習的框架。
2)基于本體的抽取項目語義信息建立了領域本體后,利用領域本體抽取項目的語義信息。在此方法中,使用特定領域包裝器代理結合領域本體抽取項目的語義信息。特定領域包裝器使用文本挖掘和啟發式規則從基于領域本體的抽取項目的語義信息。目前,不使用本體表示語言,如OWL,把本體中的類和類之間的關系看作一種關系數據庫。特定領域包裝器代理使用類的關系語法和基于文本線索的啟發式規則抽取類的實例和屬性,建立一個特定領域的語義分類樹。以一個銷售書籍為例,從書籍抽取出來的參考本體。從書籍抽取出來的實體都是這些類的實例,這些實例包含了語義信息。
3)語義相似性與協同過濾集成為了方便計算項目語義相似性,將抽取出來的實例屬性轉換為向量表示,使用向量空間模型表示項目的屬性,項目可以表示為Ti={(t1,W1),(t2,W2),…,(ti,Wi)},其中ti是項目Ti的一個屬性,Wi表示屬性ti對應于項目賦予的權重,描述屬性在項目中的重要程度。項目之間的相似性使用向量之間的距離度量,計算公式為S(i,j)=(∑Mk=1Wik×Wjk)/(∑Mk=1W2ik)(∑Mk=1W2jk)(3)采用TF2IDF公式計算屬性的權重值。其中ti是項目Tj的一個屬性。
W(ti,Tj)=tf(ti,Tj)×log(N/n1 0。01)/∑ti∈Tj[tf(ti,Tj)×log(N/n1 0。01)]2(4)其中W(ti,Tj)表示ti在項目Ti的權重,項目tf(ti,Tj)是ti在項目Tj中出現的頻率,N是項目總個數,n1為在項目集中出現ti的數目。zui終,對于一對項目,可以把語義相似性與協同過濾集成,組合成一個線性方式來度量項目的相似性。
SInte(i,j)=αSSem(Ti,Tj) (1-α)SRat(i,j)(5)其中α(0≤α≤1)是權重參數,當α=0時,組合的相似度SInte(i,j)=SRat(i,j);α=1時,組合的相似度SInte(i,j)=SSem(i,j)。從公式(5)看出,組合相似性算法具有2個優點:組合相似性算法能進一步說明用戶對特定的項目是否感興趣;在評分數據稀疏或沒有評分的情況下,依然可以使用語義相似性提供合理的推薦產品。利用該文組合相似性算法的思想,可以得到相應的預測評分或推薦,Pa,i是用戶對目標項目的預測評分值。
Pa,i為Pa,i=∑kj=1(Pa,j×SInte(i,j))/∑kj=1SInte(i,j)(6)3結果分析1)數據集采用一個銷售書籍的數據來測試算法,比較基于語義相似性和標準的項目協同過濾算法。該已有1600個用戶對3000本書籍評分數據,每個用戶對每本書的評分范圍為1―5,隨機抽取4000條數據作為實驗數據。為了實現基于語義相似性算法,使用本體學習框架方法從書籍抽取出書籍本體,利用包裝器代理從基于書籍本體的網絡書籍數據庫中抽取書籍實例,每個實例包含語義屬性。
2)評價標準評價推薦系統推薦質量的度量標準主要包括統計精度度量方法和決策支持精度度量方法2類。采用統計精度度量方法中的平均偏差MAE(meanabsoluteerror)進行度量。平均偏差MAE通過計算預測的用戶評分與實際的用戶評分之間的偏差來度量預測的準確性,MEA越小,推薦質量越高。
假設預測的用戶評分集合表示為{p1,p2,…,pn},對應的實際用戶評分集{t1,t2,…,tn},則平均偏差MAE定義為MAE=∑ni=1|ti-pi|/N(7)3)實驗結果分析考慮組合相似性算法中的α權重參數對MAE的影響,在使用組合相似性算法預測時,找出*α值的范圍。實驗的結果,由此得出結論,α的取值范圍在0。3―0。
5是*的。為了說明組合相似性算法能解決標準項目協同算法的2個缺點:數據的稀疏性問題;新項目預測問題(冷開始問題)。做了2個實驗比較這2種方法,2個實驗的α取值為0。
4.顯示了在預測項目都已評分的情況下2種算法的平均偏差結果,可以看出,組合相似性算法使用公式(4)計算項目的相似性比標準項目協同算法使用公式(1)計算項目相似性更。
解釋了組合相似性算法可以解決新項目問題。在預測項目沒有評分的情況下,基于項目協同過濾算法使用式(1)和式(2)無法預測,但組合相似性算法利用式(4)和式(5)依然可以進行預測。
從上述分析,通過語義相似性與標準項目協同算法集成,挖掘出項目之間的語義關系,抽取出項目的語義信息,不僅能很好的解決標準項目協同算法的項目評分的稀疏性問題、新項目預測問題以及提高推薦精度,還能進一步解釋說明用戶對特定的項目是否感興趣。
4結語通過集成項目的結構化語義信息計算項目的相似性,擴展了基于項目協同的過濾算法。通過本體學習建立了特定領域本體,并使用特定領域本體從中抽取項目的特性和聚集類的實例。相似性測量的方法是把基于領域的語義相似性與基于用戶與項目映射的項目相似性組合。實驗結果顯示了組合相似性算法的3個優點:1)保持了基于項目協同算法的計算優勢,組合相似性算法改善了預測精度。2)對于新項目或未評分的項目,能產生合理地的推薦,可以減輕標準項目協同過濾算法帶來的新項目問題。3)在數據非常稀疏的情況下,提供了較高的預測質量。
下一步工作任務是:1)將使用領域特征和機器學習技術,實現自動地確定語義組合參數值。2)深入研究對語義相似性自動抽取以及度量。3)進一步考慮領域本體結構使用其他語義相似性組合方法產生推薦