徐積文,張永棠
(廣東東軟學(xué)院 計(jì)算機(jī)學(xué)院,廣東 佛山 528225)
評論信息是消費(fèi)者選購商品的參考信息之一,對商品購買決策的影響非常重要[1],然而,評論信息形式為半結(jié)構(gòu)化或非結(jié)構(gòu)化,商品購買決策時(shí)面臨前所未有的挑戰(zhàn)[2]。文獻(xiàn)[3]采取基于內(nèi)容的熱門話題的個(gè)性化推薦,并且利用文本相似度計(jì)算方法計(jì)算微博話題與用戶之間的相似度,實(shí)現(xiàn)個(gè)性化的推薦。文獻(xiàn)[4]提出一種聯(lián)合K-means的個(gè)性化推薦方法,將具有相似特征的產(chǎn)品聚到一個(gè)類別內(nèi),然后將與每個(gè)聚類中心點(diǎn)最近的產(chǎn)品推薦給用戶。文獻(xiàn)[5]在新聞文本分類的文本分類算法中使用LDA進(jìn)行特征降維;文獻(xiàn)[6]在研究文本間的相似性問題時(shí),使用 LDA模型計(jì)算文本相似,根據(jù)文本相似度將搜索記錄數(shù)據(jù)結(jié)果集進(jìn)行分類。
這些推薦系統(tǒng)一般使用戶評分?jǐn)?shù)據(jù)的推薦算法,存在數(shù)據(jù)稀疏、評分信息不能夠真實(shí)有效地表達(dá)用戶興趣等問題。本文以網(wǎng)站商品評論為物品特征描述語料,使用隱含狄利克雷分布(Latent Dirichlet Allocation,LDA)[7]主題模型提取物品主題特征,在此基礎(chǔ)上,結(jié)合TF-IDF提取主題關(guān)鍵詞特征,作為物品描述文本信息的主題——關(guān)鍵詞特征集,以增強(qiáng)主題粗粒度特征對物品的描述能力,提高推薦的準(zhǔn)確率。與現(xiàn)有的算法相比,該算法能更好地解決冷起動問題。
LDA主題模型其實(shí)是基于“文本–主題–詞”的三層貝葉斯產(chǎn)生式模型[8],用LDA主題模型對產(chǎn)品的評論內(nèi)容進(jìn)行主題詞的抽取,用主題維度來代替原來的詞項(xiàng)維度,可以較好地降低文本表示的特征維度。本文通過使用主題模型,文本就被投影到k個(gè)主題上。
示文本Dn在主題Tk上的概率。
LDA的圖模型結(jié)構(gòu)如上圖 1所示,在 LDA模型中,一篇文檔生成的方式為:
圖1 LDA的三層貝葉斯網(wǎng)絡(luò)模型圖Fig.1 Three-layer Bayesian network model of LDA
(1)文檔規(guī)模的大小服從 Poisson分布,記作 N~Possion(ζ);
(2)文檔Dm主題分布參數(shù)的生成θm~ Dir(α),即狄利克雷分布生成文檔Dm的K維主題向量mθ,其中狄利克雷分布參數(shù)用α表示。這個(gè)操作需要重復(fù)N次,生成所有文檔主題隨機(jī)分布;
(3)生成文檔特征詞wm,n:以根據(jù)文檔的主題向量θm的多項(xiàng)式分布Mulitinomial(θ)選擇該詞對應(yīng)的某一隱藏主題zm,n,接著以多項(xiàng)式概率分布Mulitinomial(φ(z))即φk,從主題z中擇某一特征詞wm,n。
本文使用Google公司的開源工具Word2vec[9],處理及簡化向量空間中詞向量運(yùn)算,包含兩種語言模型。其中,CBOW根據(jù)上下文語境預(yù)測目標(biāo)詞語,Skip-Gram根據(jù)當(dāng)前單詞預(yù)測上下文語境窗口內(nèi)的詞語。
具體處理及簡化運(yùn)算的步驟如下:
Step.1通過爬蟲程序爬取評論信息,并進(jìn)行預(yù)處理;
Step.2訓(xùn)練主題模型,生成word2vec詞向量;
Step.3獲取文本關(guān)鍵詞語的詞向量,計(jì)算每條評論文本詞向量均值,做為每條評論文本的文本向量;
Step.4將有標(biāo)記的評論文本向量按4∶1比例分為訓(xùn)練集和測試集,采用 SVM 分類器,篩選出物品的正向評論、獲取物品正向評論率。物品i正向評論率posir為物i正向評論條數(shù)counti,與物品i總評論條數(shù) c ommentsi比值。
在給具體某用戶推薦物品時(shí)還需要考慮該用戶歷史評分,把用戶ui對物品 j的評分用Si,j進(jìn)行表示,用戶歷史記錄中有打分行為的物品數(shù)目為n,用戶ui對物品 j的評分偏好記為wi,j,則計(jì)算公式為:
其中posir是物品i的正向評論率,是物品i正向評論條數(shù)與其總評論條數(shù)比值。
實(shí)驗(yàn)數(shù)據(jù)采用爬蟲技術(shù)從豆瓣電影網(wǎng)站[9]采集共1 000部電影,830萬條評論信息,并獲取用戶對電影評分?jǐn)?shù)據(jù),部分評論數(shù)據(jù)如表1所示。按4∶1樣本進(jìn)行實(shí)驗(yàn)訓(xùn)練,計(jì)算推薦準(zhǔn)確率、召回率信息。
表1 部分電影信息Table 1 Some movie information
圖2和圖3分別展示了Top-N不同推薦長度下推薦準(zhǔn)確率、召回率。從圖上可以看出,在比較不同算法在相同的推薦長度下,本文的算法的優(yōu)勢明顯?;趦?nèi)容的推薦算法在推薦長度相同的情況下,準(zhǔn)確率和召回率均有所提高。
圖2 不同推薦長度下推薦準(zhǔn)確率Fig.2 Recommen dation accuracy under different recommendation length
圖3 不同推薦長度下推薦召回率Fig.3 Recommendation recall rate under different recommendation length
提出了一種融合用戶情感分析的個(gè)性化推薦算法,通過選取主題關(guān)鍵詞結(jié)合TF-IDF權(quán)重進(jìn)行物品主題關(guān)鍵詞特征拓展,分析用戶感興趣物品相似度較高的產(chǎn)品作為推薦列表進(jìn)行推薦。按4∶1樣本進(jìn)行實(shí)驗(yàn)訓(xùn)練,驗(yàn)證了該算法能更好地解決冷起動問題。