孫玲芳, 李爍朋
(江蘇科技大學 經(jīng)濟管理學院, 江蘇 鎮(zhèn)江 212003)
隨著Web 2.0技術的發(fā)展,含有社會化標簽(social tag)數(shù)據(jù)的大眾標注(folksonomy)網(wǎng)站在電子商務領域蓬勃發(fā)展.為了給用戶提供有效的項目信息,多種推薦技術被廣泛運用在電子商務領域.而在大眾標注網(wǎng)站中,用戶通常會對自己感興趣的對象有一個標注行為,所產(chǎn)生的標簽(tag)數(shù)據(jù)會對推薦系統(tǒng)的推薦效果產(chǎn)生較大影響[1].而傳統(tǒng)的推薦方法,例如協(xié)同過濾系統(tǒng)通過計算用戶之間或是項目之間的相似度來完成推薦過程,若在大眾標注網(wǎng)站中忽略了大量的標簽數(shù)據(jù),則評價矩陣的數(shù)據(jù)稀疏性問題依然存在,并且會影響到推薦精度[2].提高推薦精度的傳統(tǒng)方法之一是利用矩陣奇異值分解(singular value decomposition, SVD),對數(shù)據(jù)矩陣進行分解后將無用數(shù)據(jù)去除,達到降噪和降低稀疏性的目的,但是對含有標簽數(shù)據(jù)集的多元數(shù)據(jù)矩陣改進效果不佳.奇異值分解對二維矩陣稀疏問題具有良好處理特性,在此基礎上,文中首先對標簽數(shù)據(jù)進行K-means聚類,然后以用戶(user)、標簽(tag)、項目(item)數(shù)據(jù)建立多維張量模型,運用K-means HOSVD(high order singular value decomposition)對模型進行分解運算,兩個算法皆是保證數(shù)據(jù)的非稀疏性.以書簽標注網(wǎng)站Decilous.com的數(shù)據(jù)為測試集對該模型的推薦效果進行檢驗.
SNS(social network service)網(wǎng)站的出現(xiàn)給用戶之間的交互過程提供了一個嶄新平臺,網(wǎng)絡社區(qū)由此建立,大眾標注的概念也因此而產(chǎn)生.大眾標注是眾多信息用戶根據(jù)自己的需求,選擇合適的網(wǎng)絡信息資源,并根據(jù)自己的認知水平,確定與之相匹配的社會化標簽進行標注的過程[3].用戶根據(jù)自身的理解與喜好程度,對自身感興趣的網(wǎng)絡資源添加“標簽”,便會對其他用戶共同所感興趣的對象提供一種推薦與參考.大眾標注研究最早起源于國外學者對Web 2.0系統(tǒng)的研究,其基本要素包括:含有標簽信息的元素、眾多用戶自下而上對資源進行標注與共享的過程,以及以人為本提供組建網(wǎng)絡社區(qū)與構建關系網(wǎng)絡等服務[4].
標簽的范圍也隨著大眾標注網(wǎng)站的發(fā)展而不斷擴大,從對書籍共享網(wǎng)站進行標注所形成的“書簽”,到音樂、照片、視頻、博客網(wǎng)站中各種信息資源形成的一種標注信息[5].國外學者認為,標簽是一種以自然語言形式出現(xiàn)的關鍵詞元數(shù)據(jù),概念、類別、分面與實體都可以成為標簽的要素[6].由于“標簽”的表述使用正常語言而非抽象的代碼,因此用戶之間通過標簽可以輕易挖掘出與自身喜好相近的其他用戶和資源,從而為構建網(wǎng)絡社區(qū)提供了基本群體要素.
大眾標注網(wǎng)站不同于其他電子商務網(wǎng)站,擁有標注數(shù)據(jù)的社區(qū)網(wǎng)站通常含有大量的語義分析元素.此時,用戶把在電子商務平臺中對商品或對象進行評分的過程,改為對自身感興趣的項目進行標注的行為[7].傳統(tǒng)算法,如協(xié)同過濾推薦系統(tǒng)是基于分析近鄰用戶之間的相似偏好來過濾信息,達到向其他用戶推薦的目的;但是標簽不是確定的評分數(shù)值而是含有大量語義信息的文本數(shù)據(jù),若仍采用傳統(tǒng)的推薦方法,雖也有一定的推薦效果,但推薦精度會隨著矩陣數(shù)據(jù)稀疏性的增加而下降.兩者數(shù)據(jù)類型之間的差異如表1,2.
Movie Lens是一個在線的電影評分網(wǎng)站;Last FM是基于用戶標簽的音樂網(wǎng)站,用戶對自己喜愛的歌手添加標簽,并與在線的其他用戶進行共享.
表1 數(shù)據(jù)來源為Movie Lens網(wǎng)站
表2 數(shù)據(jù)來源為Last FM網(wǎng)站
從表中數(shù)據(jù)可以看出兩者的差別之處,大眾標注網(wǎng)站包含更多的語義信息,因此兩者的推薦系統(tǒng)模型也有所差別.如何在大眾標注網(wǎng)站的海量信息中進行有效推薦,以及如何有效解決數(shù)據(jù)矩陣的稀疏性問題,是當前電子商務推薦系統(tǒng)研究的熱點問題.
Resnick & Varian于1997年首次定義了電子商務推薦系統(tǒng)[8],該系統(tǒng)利用網(wǎng)站平臺向客戶推薦相關的商品信息,以幫助客戶完成購買過程.推薦系統(tǒng)通過分析相關數(shù)據(jù)得到顧客的購買偏好,然后針對性地進行商品推薦.傳統(tǒng)的個性化推薦技術主要有以下3種:
1) 基于規(guī)則推薦.該算法對不同情況下如何提供不同的服務定義了許多規(guī)則,系統(tǒng)利用這些規(guī)則來產(chǎn)生推薦,因此推薦的質量依賴于規(guī)則的質量和數(shù)量.但是該方法所推薦的商品一定是曾經(jīng)被其他用戶瀏覽過的,所以新的商品在任意客戶瀏覽之前便無法獲得推薦,導致該算法個性化程度較低.規(guī)則數(shù)量隨著商品數(shù)量的添加而增多,規(guī)則質量難以保障,系統(tǒng)也趨于繁雜.
2) 內容過濾推薦.該算法通過相關特征的屬性來定義商品或項目,系統(tǒng)基于用戶評價商品的特征學習用戶興趣,依據(jù)用戶資料與待預測商品的匹配程度進行推薦.基于內容的推薦算法也存在缺點:模型有效性和過度特征化問題使得模型當中信息之間的關聯(lián)性無法很好體現(xiàn),導致系統(tǒng)無法識別客戶新發(fā)現(xiàn)的興趣資源;自主進化能力較差.若新的商品數(shù)量迅速增加,系統(tǒng)不能對這樣的新特征產(chǎn)生進化能力.
3) 協(xié)同過濾推薦.采用最近鄰技術利用客戶的歷史偏好信息計算用戶之間的距離.然后利用目標客戶的最近鄰居對商品評價的加權平均值來預測他對特定項(商品)的偏好程度.系統(tǒng)根據(jù)這一偏好程度來對目標客戶進行推薦[9].協(xié)同過濾推薦主要有3個步驟:① 評分矩陣,根據(jù)系統(tǒng)中用戶和評分的數(shù)據(jù)可以建立一個M×N階矩陣R來表示;② 相似度計算,相似度計算用來發(fā)現(xiàn)最近鄰居用戶,一般有余弦相似度和相關相似性2種方法;③ 最后是top-n推薦生成.
高階奇異值分解:HOSVD是在矩陣奇異值分解SVD的概念上的延伸.對于任意N階張量Y∈RI1×I2×IN,其中ai1, i2,iN為張量Y中的元素,定義張量Y的n-模(n-mode)分解矩陣A,把張量Y沿第n模式展開的矩陣A的操作稱為張量展開[10].
令U∈RJn×In,則A可表示為Y×nU.A的結果是一個(I1×I2×…×In-1×Jn×In+1×…×IN)階張量,張量Y與矩陣U的第n模式的Tucker積可由下列公式得到:
(1)
在大眾標注網(wǎng)站中,數(shù)據(jù)結構為用戶、標簽和項目的三元數(shù)據(jù),所以取n∈ {1, 2, 3},則展開矩陣A分別為A1∈RI1×I2I3,A2∈RI2×I1I3,A3∈RI3×I1I2.
當張量為2階時,對2維矩陣進行SVD分解,可得
F=S×1U(1)×2U(2)
(2)
Y′=S×1U(1)×2U(2)×3U(3)
(3)
式中:U(1),U(2)和U(3)均是對分解矩陣A1,A2和A3在列空間向量上的正交化處理,包含1-模、2-模和3-模的奇異值向量;S是具有完整正交性的核心張量,控制各子空間矩陣間的相互作用,類似于SVD中的奇異值矩陣,但不是對角結構;Y′是對張量Y的重新構建,包含了新的數(shù)據(jù)信息.
K-means聚類是一種經(jīng)典的距離聚類方法,在很多領域得到廣泛運用[11].文中根據(jù)大眾標注網(wǎng)站數(shù)據(jù)中所提供的標簽和項目之間的權重值來建立項目—標簽權重矩陣Wm×n(表3),其中M行代表M個項目,N列代表N個標簽,Wi,j表示項目Ii對標簽Tj的標簽權重.對該矩陣進行K-means聚類,將眾多分散的標簽和項目進行初步聚類得到相對密集的數(shù)據(jù)集,使數(shù)據(jù)具有初始的聚合性.
表3 項目—標簽權重矩陣Wm×n
基于項目—標簽矩陣Wm×n的K-means聚類過程如下:
輸入為項目聚類的數(shù)目K,用戶-標簽矩陣Wm×n
輸出:K個聚類.
方法:
1) 從矩陣Wm×n中檢索得到全部M個項目數(shù),記為I={i1,i2,…,in};
2) 從矩陣Wm×n中檢索得到全部N個標簽項,記為T={t1,t2,…,tn};
3) 隨機選擇K個項目作為初始聚類中心,記為集合Q={q1,q2,…,qk};
4)K個聚類P1,P2,…,Pk均初始化為空,各聚類與其聚類中心相對應;
5) 計算項目ii與各個聚類中心qj之間的歐氏距離如下式:
(4)
式中:Tij表示項目ii與作為聚類中心的項目qj共同標注過的標簽集合,Wii和Wqj分別是項目ii和qj的標簽權重;
6) 若D(ii,qj)=max {D(ii,q1),D(ii,q2), …,D(ii,qk)},則項目ii屬于聚類Pj;
7) 計算相同聚類中所有項目的標簽權重平均值,生成新的聚類中心;
8) 若聚類中心不再發(fā)生改變,則退出;否則轉到第5)步重新計算.
初始聚類完成后,將聚類數(shù)據(jù)輸入數(shù)據(jù)庫建立聚類信息表.通過對項目的初始聚類,可以將擁有相似標簽的項目分配到同一聚類中,使得同一聚類中的項目相似性盡可能高.同時,通過參照聚類后的標簽—權重數(shù)據(jù)可以確定項目所對應的標簽,再根據(jù)項目—標簽定位出用戶,此時用戶在一定程度上也完成了初始聚類.
根據(jù)先前的聚類數(shù)據(jù),將K組數(shù)據(jù)集中進行推薦,通過用戶、標簽和項目數(shù)據(jù)建立一個初始張量Bu×t×i[12].為了更好地表達模型概念,隨機從聚類數(shù)據(jù)集中選取4組數(shù)據(jù)為例進行建模(表4).
表4 用戶標注示例
注:數(shù)據(jù)來源為Delicious.com
表4中共有3個用戶,對2個項目用3個標簽做出了4次標注.設產(chǎn)生標注的權重為1,沒有產(chǎn)生標注的權重為0.則初始張量B如圖1.
圖1 張量B的圖例
B中的各個元素均為每個用戶用標簽標注項目后產(chǎn)生的權重.得到初始張量B后,將其沿第1,2,3模式展開得到3個展開矩陣A1,A2和A3如下:
S=Y×1(U(1))T×2(U(2))T×3(U(3))T
(5)
將核心張量S帶入公式(3),計算重新構建的張量Y′(圖2).
圖2 新的張量Y′圖例
在{U2,I2,T2}以及{U3,I1,T3}項的值由原來的0變?yōu)?.7,因此新的推薦生成.
文中采用Decilious.com網(wǎng)站的標簽數(shù)據(jù)進行分析.該網(wǎng)站是在線網(wǎng)頁書簽網(wǎng)站,用戶可以對各種網(wǎng)頁鏈接進行標注是該網(wǎng)站的一大特點.該數(shù)據(jù)包含165個用戶,368個書簽以及760個標簽.本實驗將數(shù)據(jù)集劃分為訓練集和測試集,其中75%作為訓練集,25%作為測試集.
推薦系統(tǒng)的準確性和有效性一般用精確度(Precision,P)、召回率(Recall,R)來測量,精確度的定義如下:
P=(命中的數(shù)目)/(推薦的數(shù)目)
R=(命中的數(shù)目)/(測試集的大小)
為避免精確度和召回率之間相互沖突,設定新的F測度,F的指標越好則模型的推薦質量越好.如下式:
(6)
K-means聚類的聚類數(shù)目K的選擇是一個關鍵,由于預處理數(shù)據(jù)中的三組數(shù)據(jù)相對于平均值有大于等于或小于兩種情況,因此設定K為2×2×2=8.在分析過程中對聚類結果的類別間距離進行方差分析,類別間距離差異的概率值均小于0.05,即聚類效果好.
在HOSVD模型中,對展開矩陣A進行SVD分解得到酉矩陣U的維數(shù)K進行實驗確定.保留的維數(shù)很重要,若K太小, 則不能得到評分矩陣中的重要結構;若K太大,則失去了矩陣降維的意義[13].
本實驗以經(jīng)典的協(xié)同過濾算法為比較對象,采用相同的數(shù)據(jù)集和評估標準.實驗按照top-n的值分別取3,5,10,15和20進行計算分析,計算結果見表5.根據(jù)表5可以得出文中算法和傳統(tǒng)算法的性能比較(圖3).
表5 兩種算法的F值比較
圖3 兩種算法性能比較
實驗數(shù)據(jù)證明,文中算法在推薦不同項目個數(shù)top-n的情況下具有較大的F值,因此文中的高階奇異值推薦算法比傳統(tǒng)推薦方法更加有效.
針對傳統(tǒng)推薦算法中存在的數(shù)據(jù)稀疏性導致推薦效果下降的問題,文中結合大眾標注網(wǎng)站中含有標簽的數(shù)據(jù),將K-means聚類和高階奇異值分解相結合對推薦算法進行了改進,使得原始數(shù)據(jù)中包含的標簽信息能夠充分利用,從而達到更好的推薦效果.
隨著電子商務網(wǎng)站數(shù)據(jù)量的不斷攀升,以及標簽作為重要的項目信息得到越來越廣泛的運用,傳統(tǒng)的推薦系統(tǒng)在處理此類問題上受到了挑戰(zhàn).如何有效提高推薦精度是當前推薦系統(tǒng)研究的熱門話題.文中算法以高階奇異值分解為基礎加入對原始數(shù)據(jù)的聚類步驟,以求進一步解決數(shù)據(jù)稀疏性問題.在今后的研究工作中還可以將其他算法進行揉合改進推薦系統(tǒng),以取得更加有效的推薦精度.
[1] 竇玉萌,趙丹群. 協(xié)作標注系統(tǒng)研究綜述[J]. 現(xiàn)代圖書情報技術,2009,175(2):9-17.
[2] Vozalis M G, Margaritis K G. Using SVD and demographic data for the enhancement of generalized collaborative filtering[J].InformationSciences,2007,177(15):3017-3037.
[3] 黃國彬. 大眾標注研究進展[J]. 圖書情報工作,2008,52(1):13-15.
[4] Mangold W G, Faulds D J. Social media: The new hybrid element of the promotion mix[J].BusinessHorizons,2009,52:357-365.
[5] Meo P D, Nocera A. Recommendation of similar users, resources and social networks in a social internetworking scenario[J].InformationSciences,2011,181(7):1285-1305.
[6] 程慧榮,黃國彬,孫坦. 國外基于大眾標注系統(tǒng)的標簽研究[J]. 圖書情報工作,2009,53(2):121-124.
[7] Nan Zheng,Qiudan Li. A recommender system based on tag and time information for social tagging systems[J].ExpertSystemswithApplications,2011,38(4):4575-4587.
[8] Resnick P,Hal R V. Recommender system[J].CommunicationsoftheACM,1997,40(3):56-58.
[9] 孫玲芳,張婧. 基于RFM 模型和協(xié)同過濾的電子商務推薦機制[J]. 江蘇科技大學學報:自然科學版,2010,24(3):285-289.
Sun Lingfang, Zhang Jing. Electronic recommendation mechanism based on RFM model and collaborative filtering[J].JournalofJiangsuUniversityofScienceandtechnology:NaturalScienceEdition,2010,24(3):285-289.(in Chinese)
[10] Symeonidis P, Nanopoulos A, Manolopoulos Y. A unified framework for providing recommendations in social tagging systems based on ternary semantic analysis[J].TransactionsonKnowledgeandDataEngineering,2010,22:179-191.
[11] 吳文亮. 聚類分析中K-均值與K-中心點算法的研究[D]. 廣州:華南理工大學,2011:15-18.
[12] Symeonidis P, Ruxanda M, Nanopoulos A. Ternary semantic analysis of social tags for personalized music recommendation [J].KnowledgeRepresentation,Tags,Metadata,2008(2):219-224.
[13] Markaki M, Stylianou Y. Discrimination of speech from nonspeeech in broadcast news based on modulation frequency features[J].SpeechCommunication, 2011,53:726-735.