關(guān)鍵詞: 電子商務(wù);商品評(píng)價(jià);關(guān)鍵詞;協(xié)同過濾;推薦
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2024)28-0048-04
0 引言
近年來,隨著信息技術(shù)的飛速發(fā)展,電子商務(wù)在大數(shù)據(jù)時(shí)代呈現(xiàn)井噴式發(fā)展,形形色色的電商網(wǎng)站讓人眼花繚亂。用戶面對(duì)海量的商品信息時(shí)往往無所適從[1]。人們享受互聯(lián)網(wǎng)帶來的信息便利時(shí),也面臨著信息過載的問題,這種現(xiàn)象目前已經(jīng)非常嚴(yán)峻,快速準(zhǔn)確地定位所需信息變得異常困難,大量冗余的信息會(huì)讓用戶迷失其中,從而導(dǎo)致用戶大量流失[2]。相比于煩瑣的搜索過程,用戶可能更樂于接受滿足自身需求的自動(dòng)化信息服務(wù)。如何依據(jù)用戶的購物習(xí)慣,推測其可能的需求,并為其推薦合適的商品,成為當(dāng)下研究的熱點(diǎn)。
當(dāng)前很多研究將數(shù)據(jù)挖掘的協(xié)同過濾算法應(yīng)用到商品推薦系統(tǒng)中,取得了一定的成果。但在數(shù)據(jù)稀疏的情況下,存在著物品間相似性計(jì)算不準(zhǔn)確、推薦準(zhǔn)確度不高等問題。本文從商品評(píng)價(jià)入手,采用權(quán)重排序的方法提取商品評(píng)價(jià)中的關(guān)鍵詞,并使用關(guān)鍵詞重合度改進(jìn)了對(duì)商品相似度的計(jì)算,實(shí)驗(yàn)表明,本文提出的改進(jìn)方法提高了算法的推薦效果。
1 用戶網(wǎng)購行為研究
設(shè)計(jì)李克特量表[3],通過問卷的方式對(duì)不同年齡段,不同職業(yè)的用戶進(jìn)行深入的調(diào)查。結(jié)果如表1 所示。
通過表1可知,90.5%的用戶認(rèn)為,商品評(píng)價(jià)對(duì)其的購買行為具有很大的影響。通過對(duì)用戶購物行為的深入調(diào)研,總結(jié)出用戶網(wǎng)購時(shí)的基本流程如圖1所示。
通過對(duì)圖1分析可知用戶在購物時(shí),商品的評(píng)價(jià)信息往往對(duì)用戶是否購買該商品具有決定性的影響。商品的評(píng)價(jià)信息中隱藏著大量的有用信息,從中提取出關(guān)鍵因素,并將其應(yīng)用于商品推薦系統(tǒng)中,具有較好的實(shí)際意義。當(dāng)前有很多類似的研究,但沒有專門針對(duì)評(píng)價(jià)關(guān)鍵詞的推薦系統(tǒng)。
2 相關(guān)算法介紹
商品推薦算法起源于國外,研究者們從推薦結(jié)果的生成機(jī)制的角度將算法分為基于內(nèi)容的推薦和基于協(xié)同過濾的推薦。協(xié)同過濾算法是目前應(yīng)用較為廣泛的推薦算法。協(xié)同過濾算法最早是用來做電子郵件的過濾,由Goldberg等[4]首次提出。該算法的主要原理是將用戶以前的喜好和與其喜好相似用戶的選擇作為計(jì)算推薦商品的依據(jù)。在此基礎(chǔ)上,Linden 等[5]提出一種基于物品的協(xié)同過濾算法,能很好地解決傳統(tǒng)基于用戶的協(xié)同過濾中尋找用戶最近鄰法計(jì)算量過大的問題,使得計(jì)算過程與商品和用戶數(shù)量無關(guān),提高了算法的優(yōu)勢。但若電子商務(wù)網(wǎng)站規(guī)模較大,用戶和商品數(shù)量大量增加時(shí),會(huì)存在嚴(yán)重的冷啟動(dòng)和數(shù)據(jù)稀疏問題,從而影響推薦的效果。Shambour 等[6]將商品評(píng)分信任度的概念融入基于用戶的協(xié)同過濾推薦算法中,用一種新的方式計(jì)算商品相似度,實(shí)驗(yàn)表明這種改進(jìn)能在一定程度上避免數(shù)據(jù)稀疏性問題。薛美琦[7]提出了一種隱式反饋協(xié)同過濾推薦系統(tǒng),采用負(fù)采樣技術(shù)降低訓(xùn)練模型的復(fù)雜性,降低了訓(xùn)練時(shí)間,提高了訓(xùn)練效率,同時(shí)對(duì)系統(tǒng)的冷啟動(dòng)問題提出了改進(jìn)方案。但該方案只能優(yōu)化冷啟動(dòng)用戶問題,不能解決冷啟動(dòng)商品問題。楊佳莉[8]等提出一種自適應(yīng)混合協(xié)同推薦算法,引入目標(biāo)物品新鮮度和用戶活躍度兩個(gè)指標(biāo)對(duì)模型權(quán)重進(jìn)行調(diào)節(jié),在張量分解的基礎(chǔ)上對(duì)物品間相似度進(jìn)行計(jì)算,在一定程度上提高了推薦的準(zhǔn)確率。
在分析上述研究的基礎(chǔ)上,提出一種基于商品評(píng)價(jià)關(guān)鍵詞的協(xié)同過濾推薦算法。設(shè)計(jì)權(quán)重排序自學(xué)習(xí)的方法提取評(píng)價(jià)文本的關(guān)鍵詞,根據(jù)關(guān)鍵字重合度尋找用戶與商品,商品與商品之間潛在的關(guān)系。結(jié)合協(xié)同過濾算法將關(guān)鍵詞重合度引入商品相似性的計(jì)算中,最終生成用戶的偏好列表。
3 標(biāo)題
本文在協(xié)同過濾算法中評(píng)價(jià)矩陣稀疏的背景下,從用戶對(duì)商品的評(píng)價(jià)信息中獲取商品的內(nèi)容數(shù)據(jù),提取出評(píng)價(jià)的關(guān)鍵詞,通過商品評(píng)價(jià)關(guān)鍵詞之間的相似性度量商品之間的關(guān)聯(lián)性,最終生成推薦結(jié)果,使得商品推薦結(jié)果更加符合用戶的興趣,從而達(dá)到提升推薦效果的目的,算法流程如圖2所示。
該方法主要分為兩部分:一是評(píng)價(jià)文本關(guān)鍵詞提取算法;二是基于評(píng)價(jià)關(guān)鍵詞的協(xié)同過濾推薦算法。
4 關(guān)鍵詞提取技術(shù)
關(guān)鍵詞能準(zhǔn)確的概括文檔的核心內(nèi)容,在信息搜索,標(biāo)引論文特征方面有很廣泛的應(yīng)用。關(guān)鍵詞提取技術(shù)屬于文本挖掘的范疇,是文檔搜索、分類、比較和文本聚類等文本數(shù)據(jù)挖掘的基礎(chǔ)。
文本關(guān)鍵詞提取算法主要有兩類[9]:無監(jiān)督關(guān)鍵詞提取方法和有監(jiān)督關(guān)鍵詞提取方法。無監(jiān)督提取算法使用某些方法尋找文本中對(duì)文檔主題影響較大的詞作為關(guān)鍵詞,無需手工標(biāo)注語料。首先將候選詞抽取出來,之后對(duì)候選詞打分,選擇候選詞打分?jǐn)?shù)排名前N的詞作為關(guān)鍵詞。常見的候選詞打分策略有TF-IDF(詞頻-逆文件頻率計(jì)算法),TextRank(一種基于圖的用于關(guān)鍵詞抽取和文檔摘要的排序算法),LDA(基于概率模型的主題模型算法)等算法。有監(jiān)督關(guān)鍵詞提取方法可將提取過程視為二分類問題。先將文本切分為候選詞,然后為各個(gè)候選詞劃定是否為關(guān)鍵詞的標(biāo)簽,最后通過算法訓(xùn)練關(guān)鍵詞提取分類器,作為后續(xù)提取關(guān)鍵詞的依據(jù)。對(duì)需要進(jìn)行關(guān)鍵詞提取的新文本,首先切分出所有候選詞,然后利用訓(xùn)練好的關(guān)鍵詞提取分類器,對(duì)各個(gè)候選詞進(jìn)行分類,最終根據(jù)候選詞的標(biāo)簽選定關(guān)鍵詞。
無監(jiān)督方法無需人工標(biāo)注訓(xùn)練集合的過程,過程更加簡單快捷,但不能有效利用多種信息對(duì)候選關(guān)鍵詞排序,所以效果無法與有監(jiān)督方法媲美;而有監(jiān)督提取方法能夠通過對(duì)樣本的訓(xùn)練學(xué)習(xí)調(diào)節(jié)參數(shù)及權(quán)重對(duì)關(guān)鍵詞的影響程度,因此效果更優(yōu)。
4.1 標(biāo)題
數(shù)據(jù)預(yù)處理的主要目的是將一些與實(shí)際不符或不具有參考價(jià)值的評(píng)價(jià)篩選出去。
1) 去除停用詞:比如一些沒有實(shí)際意義的語氣詞“哈哈”“呵呵”等,還有一些純標(biāo)點(diǎn)符號(hào)的評(píng)價(jià)。
2) 長度過短的評(píng)價(jià):若長度過短,則關(guān)鍵詞提取的準(zhǔn)確率較低影響下一步商品相似度的計(jì)算,最終影響推薦結(jié)果的準(zhǔn)確性,因此要將其剔除。
3) 不具有參考價(jià)值的內(nèi)容:例如表情符號(hào)組成的評(píng)價(jià),以及為了刷排名大量重復(fù)的評(píng)價(jià)。
4.2 分詞處理
本文采用開源的jieba庫實(shí)現(xiàn)中文分詞[10]。jieba 庫是一款基于Python語言的強(qiáng)大的第三方中文分詞庫,支持三種分詞模式:精準(zhǔn)模式、全模式和搜索引擎模式。本文采用全模式進(jìn)行分詞,因?yàn)槿J侥軌驅(qū)⒕渥又兴锌赡艿脑~都切分出來,速度快效率高。
分詞的過程如下:
①首先,根據(jù)評(píng)價(jià)語句特點(diǎn)構(gòu)建登錄詞詞典。
②基于詞典實(shí)現(xiàn)詞圖掃描,生成被分詞語句中所有可能的詞語組合構(gòu)成的有向無環(huán)圖(DGA圖)。
③通過動(dòng)態(tài)規(guī)劃尋找概率最大的路徑,從而找到最優(yōu)的詞頻切分組合。
④對(duì)于不在詞典中的切分組合,采用基于漢字成詞能力的隱馬爾可夫模型(Hidden Markov Model,HMM),并使用Viterbi算法進(jìn)行詞性標(biāo)注。
分詞的主要工作是將原始樣本轉(zhuǎn)換為關(guān)鍵詞提取的樣本,過程如圖3所示。
4.3 關(guān)鍵詞提取算法設(shè)計(jì)
經(jīng)過分詞處理,得到分詞后的詞語集。jieba提供了兩種算法進(jìn)行關(guān)鍵詞提取,分別是:TF-IDF(TermFrequency-Inverse Document Frequency) 算法和Tex?tRank算法。
其中TF-IDF用來評(píng)估某個(gè)詞語對(duì)于一個(gè)文本集合中的某一個(gè)文本的重要程度。基于這樣一個(gè)假設(shè),某個(gè)詞在一個(gè)文本集合中某一個(gè)文本中出現(xiàn)的頻率高,而在其他文本中出現(xiàn)得少,則認(rèn)為該詞語具有很好的區(qū)分度,能夠代表該本文。TF-IDF易于理解,實(shí)現(xiàn)簡單,但其精度受語料庫的影響,并且不能反映詞語的位置信息,而詞語所在的位置信息,如標(biāo)題、首尾句中的詞語往往包含重要的信息,理應(yīng)賦予更高的權(quán)重,因此本文采用TextRank算法進(jìn)行關(guān)鍵詞提取。
TextRank關(guān)鍵詞提取算法是以文本圖排序?yàn)榛A(chǔ),源于Google的PageRank算法。將待提取關(guān)鍵詞的文本切分為若干個(gè)單元(詞語、語句)后建立圖模型,用PageRank迭代計(jì)算出每個(gè)單元的rank值,然后對(duì)rank值進(jìn)行排序,根據(jù)排序結(jié)果即可得到TopN關(guān)鍵詞列表,迭代計(jì)算公式如下:
4.4 關(guān)鍵詞列表輸出
考慮到評(píng)價(jià)語句特點(diǎn),為了保證更高的準(zhǔn)確率,通過統(tǒng)計(jì)分析構(gòu)建新詞庫,以便包含jieba詞庫里沒有的詞。通過Python實(shí)現(xiàn)基于jieba的關(guān)鍵詞提取算法,對(duì)物品評(píng)價(jià)文本關(guān)鍵詞進(jìn)行提取,最終得到物品-評(píng)價(jià)關(guān)鍵詞表如表2所示,用于下一步商品相似度計(jì)算。
5 基于評(píng)價(jià)關(guān)鍵詞的協(xié)同過濾推薦算法
傳統(tǒng)基于物品的協(xié)同過濾推薦算法(ItemCF) 指的是根據(jù)用戶喜歡的物品,推薦這些物品的相似物品[11]。把用戶對(duì)某物品的偏好作為衡量指標(biāo)計(jì)算物品間相似度,再結(jié)合某用戶歷史偏好預(yù)測該用戶對(duì)未涉及的物品的偏好,進(jìn)而生成推薦列表。本文將評(píng)價(jià)文本關(guān)鍵詞重合度引入物品相似度計(jì)算中,進(jìn)而提高推薦效果。
5.1 基于評(píng)價(jià)關(guān)鍵詞的協(xié)同過濾推薦算法設(shè)計(jì)
基于物品的協(xié)同過濾算法分為兩步,物品間相似度的計(jì)算和物品偏好程度計(jì)算。
對(duì)物品i 感興趣的用戶列表用N (i)表示,對(duì)物品j感興趣的用戶列表用N ( j )表示。但該公式會(huì)出現(xiàn)當(dāng)前熱門物品和其他任何物品的相似性都很大,為避免這種情況的發(fā)生,可用公式(3)計(jì)算相似度:
5.3 算法效率分析
本文采用數(shù)據(jù)源于阿里旗下天池大數(shù)據(jù)平臺(tái)下數(shù)據(jù)集Women's E-Commerce Clothing Reviews,該數(shù)據(jù)集是女裝電子商務(wù)評(píng)價(jià)數(shù)據(jù)集,包括23 486行和10 個(gè)特征變量[14],將數(shù)據(jù)隨機(jī)分為5份,其中4份為訓(xùn)練集和1份作為測試集。當(dāng)N取值為5、6、7、8、9、10時(shí)與傳統(tǒng)的ItemCF協(xié)同過濾算法進(jìn)行對(duì)比實(shí)驗(yàn),結(jié)果如圖5所示。
由結(jié)果可知,本文提出的推薦模型相對(duì)于傳統(tǒng)的基于物品的協(xié)同過濾算法具有較大的優(yōu)勢,在一定程度上提高了推薦的準(zhǔn)確率。隨著關(guān)鍵詞的增加,模型推薦結(jié)果的準(zhǔn)確率和召回率逐漸增加,但是當(dāng)關(guān)鍵詞數(shù)量增加到一定程度后,對(duì)算法的性能的影響不再增大。當(dāng)選取7個(gè)關(guān)鍵詞進(jìn)行計(jì)算時(shí),算法的表現(xiàn)最佳。
6 結(jié)束語
本文在傳統(tǒng)協(xié)同過濾推薦算法的基礎(chǔ)上,提出一種融合評(píng)論關(guān)鍵詞的協(xié)同過濾算法,將物品評(píng)論文本之間關(guān)鍵詞的重合度作為重要指標(biāo)引入物品相似度的計(jì)算中,能有效克服物品冷啟動(dòng)和數(shù)據(jù)稀疏問題,更具個(gè)性化,在很大程度上提高了推薦的準(zhǔn)確率。