《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 融合用戶屬性信息的冷啟動推薦算法
融合用戶屬性信息的冷啟動推薦算法
2017年電子技術(shù)應(yīng)用第10期
魏琳東,黃永峰
清華大學(xué) 電子工程系,北京100084
摘要: 協(xié)同過濾算法廣泛應(yīng)用于個性化推薦系統(tǒng)中?,F(xiàn)有的基于社群相似性的協(xié)同過濾算法在新用戶新商品的冷啟動場景中難以使用,性能較差。對此,提出了一種基于矩陣分解和神經(jīng)網(wǎng)絡(luò)映射的冷啟動推薦算法。首先,使用矩陣分解方法求出用戶在潛在興趣空間的向量表示;然后,訓(xùn)練神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)從用戶屬性數(shù)據(jù)到潛在興趣向量的映射關(guān)系;最后,融合用戶的歷史評分?jǐn)?shù)據(jù)與屬性數(shù)據(jù)各自生成的興趣向量,給出平滑的推薦預(yù)測值。實驗表明,當(dāng)用戶的評分記錄很少時,預(yù)測性能有明顯提升,融合用戶的屬性信息能較好地改善“冷啟動”情況下推薦系統(tǒng)的性能。
中圖分類號: TP18
文獻(xiàn)標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.179020
中文引用格式: 魏琳東,黃永峰. 融合用戶屬性信息的冷啟動推薦算法[J].電子技術(shù)應(yīng)用,2017,43(10):137-140,144.
英文引用格式: Wei Lindong,Huang Yongfeng. Incorporating user attribute data in recommendation system[J].Application of Electronic Technique,2017,43(10):137-140,144.
Incorporating user attribute data in recommendation system
Wei Lindong,Huang Yongfeng
Department of Electronic Engineering,Tsinghua University,Beijing 100084,China
Abstract: Collaborative filtering algorithm is widely used in personalized recommender systems. However, prior collaborative filters which rely on pair-wise similarities, are barely applicable when faced with cold start scenarios, namely with new users or new items. To solve this problem, a novel recommender algorithm tailored for cold start is proposed, which is based on matrix factorization and neural network. Firstly, a matrix factorization is applied to the ratings, which finds out users′ vector representation in a latent preference space. Secondly, a neural network mapping users′ attribute data to their preference vector is trained. Finally, the recommender fuses the preference vectors originated from users′ historical ratings and from attribute data, to give smoothed recommendations to cold start users, veteran users and users in between. Empirical analysis on the MovieLens dataset demonstrates that when evaluated on new users, the proposed algorithm can boost prediction accuracy significantly.
Key words : recommender system;matrix factorization;cold start

0 引言

    隨著互聯(lián)網(wǎng)內(nèi)容的迅速增多,信息過載(information overload)造成的效率損失問題顯得日益嚴(yán)重——人們花費了越來越多的成本瀏覽網(wǎng)頁、比較選項、刷新朋友圈,卻越來越難以找到自己需要的內(nèi)容。錯誤的營銷方式也使得這個問題更加嚴(yán)重。由于無法精確定位用戶,部分商業(yè)公司為了搶占頭條、榜首,使用了刷榜、雇傭水軍等方式,這使得按熱度或者評分排序內(nèi)容的價值越來越低。用戶需要“私人訂制”的互聯(lián)網(wǎng)服務(wù),用戶的個性化需求需要被理解。為了滿足這樣的需求,提高用戶的使用體驗,增加商家的利益,20世紀(jì)90年代以來,推薦系統(tǒng)(recommender system)的研究得到了越來越多的關(guān)注[1-3]。

    按照依據(jù)的數(shù)據(jù)來源,推薦系統(tǒng)可以分成兩類:基于內(nèi)容的推薦(content-based recommender)和基于協(xié)同過濾的推薦(collaborative recommender)。

    基于內(nèi)容的推薦[4-7],分析商品的文本、圖像、語音內(nèi)容,建立其相似性度量的方式,從而為用戶推薦與其檔案(user profile)匹配的商品。用戶的檔案根據(jù)用戶登記的信息和他消費商品的歷史紀(jì)錄建立。這類推薦面臨兩個困難,一是內(nèi)容的分析技術(shù)會制約推薦的精確度,二是新推薦過度集中于用戶已經(jīng)消費過的商品(overspecialization)[1]??傮w來看,基于內(nèi)容的推薦性能上不如基于協(xié)同過濾的推薦[7]

    基于協(xié)同過濾[8-12]的推薦,使用用戶對商品的評分歷史(也包括隱式的交互,如瀏覽、收藏歷史),尋找與目標(biāo)用戶有共同點的其他用戶,根據(jù)這些“相鄰”用戶的歷史選擇為目標(biāo)用戶推薦商品。最常見的協(xié)同過濾算法是KNN[13]。協(xié)同過濾最大的困難在于需要大量的用戶歷史數(shù)據(jù),對于新用戶而言,缺乏歷史數(shù)據(jù)使得系統(tǒng)難以計算他和其余用戶的相似性,難以定位用戶的興趣與需求,從而降低了為新用戶推薦的準(zhǔn)確性——這個問題被稱作冷啟動(cold start)問題。

1 相關(guān)工作

    協(xié)同過濾算法包括基于啟發(fā)式相似性度量的近鄰?fù)扑]算法(heuristic similarity based recommender)和使用社群信息訓(xùn)練模型的推薦算法(model based recommender)。使用模型的協(xié)同過濾包括有使用聚類模型[14-15]、使用遺傳算法[16]、使用概率模型[17]、使用限制玻爾茲曼機[18]矩陣分解[19-23]的方法。在netflix prize的推薦系統(tǒng)比賽中,矩陣分解和限制波爾茲曼機的方法在評分預(yù)測準(zhǔn)確性上取得了良好的表現(xiàn)[24]。本文在利用歷史評分時,也使用了矩陣分解的算法。

    針對新用戶的冷啟動問題,一般考慮挖掘相關(guān)的其他信息(內(nèi)容、社交、人口統(tǒng)計信息等),搭建混合推薦系統(tǒng)。文獻(xiàn)[25]使用了跨層次關(guān)聯(lián)規(guī)則挖掘的算法,混入了內(nèi)容信息。文獻(xiàn)[26]使用了“代理用戶”,根據(jù)新用戶新商品的屬性信息打分。文獻(xiàn)[27]使用了尋找映射函數(shù),將用戶屬性信息映射到潛在因子空間的方法。文獻(xiàn)[28]通過在netflix數(shù)據(jù)上的實驗分析展示了相對于附加元信息,少量的評分?jǐn)?shù)據(jù)對于推薦預(yù)測的精度幫助也是很大的。本文在實驗中也發(fā)現(xiàn)了這個現(xiàn)象,因此,一個能有效兼顧新用戶場景和老用戶場景的算法非常重要。文獻(xiàn)[29]提出了將附加信息作為先驗來協(xié)調(diào)新老用戶過渡的場景。本文提出了一種加權(quán)矩陣分解得到的潛在因子和機器學(xué)習(xí)得到的潛在因子算法,平滑了新用戶場景到老用戶場景的系統(tǒng)評分策略調(diào)整。

2 方法原理

    在離線訓(xùn)練時,首先使用用戶的歷史評分?jǐn)?shù)據(jù)做矩陣分解,分析用戶和商品的潛在語義,可以視作用戶的潛在興趣和商品的潛在用途。然后使用用戶的屬性數(shù)據(jù)(如性別、年齡、城市等)和上述提取的用戶潛在興趣訓(xùn)練神經(jīng)網(wǎng)絡(luò)。

    在線給出推薦預(yù)測時,使用上文訓(xùn)練好的神經(jīng)網(wǎng)絡(luò),將目標(biāo)用戶的屬性數(shù)據(jù)映射到用戶的潛在興趣向量(predicted preference vector,簡寫為ppv)。而之前的離線訓(xùn)練環(huán)節(jié),已經(jīng)得到了用戶的另一個潛在興趣向量(matrix-factorization preference vector,簡寫為mfpv)。推薦器然后融合ppv和mfpv,得到融合興趣向量(fused preference vector,簡寫為fpv)。使用fpv和商品在潛在語義空間的向量索引,推薦系統(tǒng)給出用戶對商品的偏好評分預(yù)測。

2.1 潛在興趣要素分析

    首先,對用戶-商品評分做矩陣分解,找到合適的興趣要素空間。

jsj5-gs1-2.gif

    為了減少計算量,提高預(yù)測準(zhǔn)確度,式(1)并不對矩陣進(jìn)行填充,只在訓(xùn)練集已知得分上定義。

jsj5-gs3-5.gif

     在式(4)的訓(xùn)練中,可以使用交換最小乘方法,也可以使用隨機梯度下降法。本文使用了后者,訓(xùn)練過程中,使用了自適應(yīng)的步長調(diào)節(jié)。

2.2 使用神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)用戶屬性到興趣空間的變換關(guān)系

    部分有歷史評分記錄的用戶和商品,也有非評分?jǐn)?shù)據(jù)存在,例如用戶的年齡、性別、職業(yè)、居住地等。當(dāng)使用矩陣分解技術(shù),建立了用戶、商品的語義索引以后,可以使用機器學(xué)習(xí)算法,訓(xùn)練從非評分?jǐn)?shù)據(jù)到隱語義空間的映射。

    首先,根據(jù)用戶屬性信息,建立可以描述用戶的特征向量。例如,在movie-lens的數(shù)據(jù)集里,除了評分文件以外,還有u.user文件,記錄了用戶的人口統(tǒng)計學(xué)信息,包括年齡、性別、職業(yè)和郵編(代表了用戶的地理位置)。格式如下所示:

    user id∣age∣gender∣occupation∣zip code

    其中,occupation一項總共有把21種職業(yè),把它們處理成one-hot型的向量。記總的特征向量為av(attribute vector)。

    另一方面,對于已經(jīng)擁有評分記錄的用戶,已經(jīng)通過矩陣分解獲取了其在興趣要素空間中的向量表示mfpv。從而使用神經(jīng)網(wǎng)絡(luò)算法,學(xué)習(xí)av和mfpv的關(guān)系,如圖1所示。

jsj5-t1.gif

    本文采用了帶有一個隱藏層的前饋神經(jīng)網(wǎng)絡(luò),使用后向傳播(Back propagation)進(jìn)行網(wǎng)絡(luò)權(quán)重學(xué)習(xí)。對于新商品的情況,也可以類似地使用神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)商品屬性到興趣語義空間的向量表達(dá)。

2.3 線上預(yù)測推薦

    2.1節(jié)和2.2節(jié)是線下的訓(xùn)練環(huán)節(jié)。在線推薦時,首先輸入用戶的屬性信息av∈Rk,經(jīng)過神經(jīng)網(wǎng)絡(luò)到ppv∈Rf+1。

    另一方面,由矩陣分解預(yù)先得到用戶的mfpv∈Rf+1在融合mfpv和ppv的實驗中,本文發(fā)現(xiàn)對于老用戶,屬性信息的參考價值不大。對于全新的用戶,需要依賴其屬性預(yù)判興趣情況。系統(tǒng)應(yīng)該根據(jù)用戶情況,自動及平滑地調(diào)整mfpv和ppv的比重。為此,本文使用了式(6)、式(7)計算得到用戶的綜合興趣:

jsj5-gs6-8.gif

3 實驗

3.1 實驗數(shù)據(jù)集

    原始數(shù)據(jù)集:MovieLens數(shù)據(jù)集是由美國Minnesota大學(xué)的GroupLens研究小組創(chuàng)建并維護(hù)的。其中包括943個用戶對1 682部電影的100 000條評分記錄。評分值是從1~5的整數(shù)值,分?jǐn)?shù)越高表示客戶對相應(yīng)電影的評價越高。這個數(shù)據(jù)集的用戶-電影對中,只有6.305%的項有評分,比較稀疏。此外,數(shù)據(jù)集還包括用戶的年齡、性別、職業(yè)、郵政編碼信息。

    本文在movielens-100k的數(shù)據(jù)源上使用了如下兩個數(shù)據(jù)集。

    實驗數(shù)據(jù)集1(ua):對每位用戶隨機抽取10條評分作為測試集(ua.test),其余評分作為訓(xùn)練集(ua.base)。訓(xùn)練集共90 570條評分記錄,測試集共9 430條評分記錄。

    實驗數(shù)據(jù)集2(ucold):這組數(shù)據(jù)集是對原始數(shù)據(jù)集抽樣生成的,用來模擬新用戶的場景,總共有6個子數(shù)據(jù)集。具體抽樣方式如下:分別從943位用戶中隨機抽取100名用戶作為新用戶,新用戶隨機抽取0、1、2、4、8、16條歷史評分加入訓(xùn)練集,依次用來代表全新用戶到有部分歷史評分的用戶情況。訓(xùn)練集還包括其余843位老用戶的歷史評分。測試集是新用戶的其余評分。6個子數(shù)據(jù)集分別記為ut0、ut1、ut2、ut4、ut8、ut16。

3.2 實驗評價指標(biāo)

    文獻(xiàn)[30]將推薦系統(tǒng)的準(zhǔn)確性測量分為了三類,分別是預(yù)測準(zhǔn)確測量(如MAE、RMSE)、分類準(zhǔn)確測量(如ROC曲線)和排序準(zhǔn)確測量。由于本文主要考察冷啟動情況下算法對于新用戶偏好的預(yù)測性能,而不是生成TOP-N列表的性能,所以選用了第一類預(yù)測準(zhǔn)確性測量標(biāo)準(zhǔn)。

    分別是:

     jsj5-gs9-10.gif

3.3 實驗結(jié)果

3.3.1 算法在通常情況下的整體性能

    在實驗數(shù)據(jù)集1上,實驗結(jié)果如表1。

jsj5-b1.gif

    其中,pearson-knn是采用pearson相關(guān)系數(shù)作為相似性度量,基于用戶(50個鄰居)的推薦評分預(yù)測方法;MF是采用simon funk提出的矩陣分解的方法(10個潛在因子);FP(fused preference)是本文提出的方法??梢?,在一般數(shù)據(jù)集上,F(xiàn)P和MF性能接近,優(yōu)于基于用戶的協(xié)同過濾的方法。

3.3.2 算法在冷啟動情況下的性能

    在實驗數(shù)據(jù)集2的6個子數(shù)據(jù)集上,算法的性能如下:

    (1)ut0(完全的冷啟動):在測試集用戶沒有評分的情況下,由于相關(guān)系數(shù)至少要有兩個評分才能進(jìn)行計算,所以Pearson-knn不能給出有效結(jié)果,而MF也只有隨機的結(jié)果,此時,F(xiàn)P的MAE為0.815,RMSE為1.001,可見,F(xiàn)P仍能給出可以接受的推薦結(jié)果。

    (2)ut1~ut16(不同程度的新用戶,見圖2、圖3):在用戶評分極少的情形下,F(xiàn)P的性能顯著優(yōu)于另外兩種算法;隨著用戶評分的增多,F(xiàn)P和simon的MF分解性能趨近。這表明,F(xiàn)P在適用于新用戶冷啟動的同時,能平穩(wěn)地過渡到老用戶暖啟動的情形。

jsj5-t2.gif

jsj5-t3.gif

4 總結(jié)

    本文提出了一種融合用戶屬性信息進(jìn)行推薦的算法,提高了新用戶情形下推薦預(yù)測的準(zhǔn)確性。這種融合其他信息的方式也可以應(yīng)用于有其他附加信息的場景(如商品的屬性信息)。由于模型的訓(xùn)練工作都是在線下進(jìn)行,線上推薦時的即時性能夠得到保證。在實驗中發(fā)現(xiàn)用戶的歷史評分對于預(yù)測的準(zhǔn)確性作用很大,因此就算存在很少量的歷史評分,冷啟動推薦算法也應(yīng)該把它們考慮在內(nèi),從而兼顧全新用戶和有使用歷史的用戶,做到平穩(wěn)過渡。

參考文獻(xiàn)

[1] ADOMAVICIUS G,TUZHILIN A.Toward the next generation of recommender systems:a survey of the state-of-the-art and possible extensions[J].IEEE Transactions on Knowledge and Data Engineering,2005,17(6):734-749.

[2] GOLDBERG D E,NICHOLS D,OKI B M,et al.Using collaborative filtering to weave an information tapestry[J].Communications of The ACM,1992,35(12):61-70.

[3] RESNICK P,IACOVOU N,SUCHAK M,et al.GroupLens:an open architecture for collaborative filtering of netnews[C].Conference on Computer Supported Cooperative Work,1994:175-186.

[4] METEREN R V.Using content-based filtering for recommendation[Z].2000.

[5] MOONEY R J,ROY L.Content-based book recommending using learning for text categorization[C].Proceedings of the ACM Conference on Digital Libraries,F(xiàn),2000.

[6] BARRAGáNS-MARTíNEZ A B,COSTA-MONTENEGRO E,BURGUILLO J C,et al.A hybrid content-based and item-based collaborative filtering approach to recommend TV programs enhanced with singular value decomposition[J].Information Sciences,2010,180(22):4290-4311.

[7] CAMPOS L M D,F(xiàn)ERNáNDEZ-LUNA J M,HUETE J F,et al.Combining content-based and collaborative recommendations:A hybrid approach based on Bayesian networks[J].International Journal of Approximate Reasoning,2010,51(7):785-99.

[8] KONSTAN J A,MILLER B N,MALTZ D A,et al.GroupLens:applying collaborative filtering to Usenet news[J].Communications of The ACM,1997,40(3):77-87.

[9] CHEE S H S,HAN J,WANG K.RecTree:An Efficient Collaborative Filtering Method[C].2001,International Conference on Data Warehousing and Knowledge Discovery,2114:141-51.

[10] SARWAR B,KARYPIS G,KONSTAN J,et al.Item-based collaborative filtering recommendation algorithms[C].Proceedings of the International Conference on World Wide Web,F(xiàn),2001.

[11] KOREN Y.Factorization meets the neighborhood:a multifaceted collaborative filtering model[C].Proceedings of the ACM SIGKDD International Conference on Knowledge Discovery and Data Mining,F(xiàn),2008.

[12] SU X,KHOSHGOFTAAR T M.A survey of collaborative filtering techniques[J].Advances in Artificial Intelligence,2009(12):1-19.

[13] HERLOCKER J L,KONSTAN J A,BORCHERS A,et al.An algorithmic framework for performing collaborative filtering;proceedings of the SIGIR′99[C].Proceedings of the International ACM SIGIR Conference on Research and Development in Information Retrieval,August 15-19,1999,Berkeley,Ca,Usa,F(xiàn),1999.

[14] ROH T H,OH K J,HAN I.The collaborative filtering recommendation based on SOM cluster-indexing CBR[J].Expert Systems with Applications,2003,25(3):413-423.

[15] UNGAR L H,F(xiàn)OSTER D P.Clustering methods for collab-orative filtering[C].Aaai Workshop on Recommendation Systems,1998.

[16] GAO L,LI C.Hybrid personalized recommended model based on genetic algorithm[C].Proceedings of the International Conference on Wireless Communications,NETWORKING and Mobile Computing,F(xiàn),2008.

[17] HOFMANN T.Latent semantic models for collaborative filtering[J].ACM Transactions on Information Systems,2004,22(1):89-115.

[18] SALAKHUTDINOV R,MNIH A,HINTON G.Restricted Boltzmann machines for collaborative filtering[C].Proceedings of the International Conference on Machine Learning,F(xiàn),2007.

[19] RENDLE S.Factorization machines[C].IEEE International Conference on Data Mining,2010:995-1000.

[20] KOREN Y,BELL R,VOLINSKY C.Matrix factorization techniques for recommender systems[J].Computer,2009,42(8):30-37.

[21] SARWAR B,KARYPIS G,KONSTAN J,et al.Application of dimensionality reduction in recommender systems[C].In Acm Webkdd Workshop,2000.

[22] SREBRO N,RENNIE J D M,JAAKKOLA T.Maximummargin matrix factorization[J].Advances in Neural Information Processing Systems,2004,37(2):1329-1336.

[23] ZHU F,HONEINE P,KALLAS M.Kernel nonnegative matrix factorization without the pre-image problem[C].Proceedings of the IEEE International Workshop on Machine Learning for Signal Processing,F(xiàn),2014.

[24] BELL R M,KOREN Y.Lessons from the Netflix prize challenge[M].ACM,2007.

[25] LEUNG W K,CHAN C F,CHUNG F L.An empirical study of a cross-level association rule mining approach to cold-start recommendations[J].Knowledge-Based Systems,2008,21(7):515-529.

[26] PARK S T,PENNOCK D,MADANI O,et al.Naive filterbots for robust cold-start recommendations[C].Proceedings of the ACM SIGKDD International Conference on Knowledge Discovery and Data Mining,F(xiàn),2006.

[27] GANTNER Z,DRUMOND L,F(xiàn)REUDENTHALER C,et al.Learning attribute-to-feature mappings for cold-start recommendations[C].Data Mining,2010:176-185.

[28] TIKK D.Recommending new movies:even a few ratings are more valuable than metadata[C].Proceedings of the ACM Conference on Recommender Systems,F(xiàn),2009.

[29] ADAMS R P,DAHL G E,MURRAY I.Incorporating side information in probabilistic matrix factorization with Gaussian processes[J].Papeles De Población,2010,3(14):33-57.

[30] HERLOCKER J L,KONSTAN J A,TERVEEN L,et al.Evaluating collaborative filtering recommender systems[J].ACM Transactions on Information Systems,2004,22(1):5-53.



作者信息:

魏琳東,黃永峰

(清華大學(xué) 電子工程系,北京100084)

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。