葛 婷,陳麗珍,2
(1.濰坊科技學(xué)院 農(nóng)圣文化研究中心,山東 壽光 262700;2. 山東大學(xué),山東 濟(jì)南 250100)
目前,電子商務(wù)已經(jīng)成為購(gòu)物的主流。因此,準(zhǔn)確的商品推薦成為拉攏用戶的重要手段,個(gè)性化商品推薦是商品推薦的重中之重[1-3]。常規(guī)推薦算法有協(xié)同過(guò)濾算法、混合推薦算法等。然而,協(xié)同過(guò)濾算法存在數(shù)據(jù)量少、需要積累用戶才能發(fā)揮作用的缺點(diǎn)。混合推薦算法推薦雖然融合多種計(jì)算方法,但是有數(shù)據(jù)難優(yōu)化的缺點(diǎn)[4,5]。
針對(duì)上述問(wèn)題,張鵬飛[6]等人提出融合標(biāo)簽和多元信息提出的個(gè)性化算法,但其在數(shù)據(jù)稀疏性和冷啟動(dòng)速率方面仍存在問(wèn)題。馬聞鍇[7]等人提出的基于標(biāo)簽的推薦算法,但該方法只考慮用戶興趣度與標(biāo)簽問(wèn)題,未考慮到興趣隨時(shí)間變化所標(biāo)注的興趣標(biāo)簽也會(huì)產(chǎn)生變化。
知識(shí)工程中的事件本體在知識(shí)的獲取、解析中占據(jù)重要位置,可有效避免知識(shí)體系語(yǔ)義表達(dá)不足以及知識(shí)結(jié)構(gòu)化低下問(wèn)題[8]。為此,本文研究基于事件本體的商品個(gè)性化推薦算法。通過(guò)構(gòu)建事件本體的商品標(biāo)簽?zāi)P?計(jì)算用戶標(biāo)注的標(biāo)簽使用頻率和標(biāo)注標(biāo)簽的時(shí)間來(lái)構(gòu)建用戶興趣模型,根據(jù)用戶興趣模型尋找相似用戶,再利用相似用戶使用的標(biāo)簽進(jìn)行模擬分類(lèi),選擇最優(yōu)商品推薦給用戶。而用戶在標(biāo)注商品標(biāo)簽時(shí)存在語(yǔ)義繁多、雜亂無(wú)章或者一詞多意等弊端,會(huì)限制商品個(gè)性化推薦的作用,從而使推薦準(zhǔn)確率低,用戶體驗(yàn)差。從事件本體角度出發(fā),規(guī)范商品標(biāo)簽及用戶標(biāo)簽的冗余及歧義所帶來(lái)的個(gè)性化推薦困擾,通過(guò)商品特征向量和用戶偏好等因素,研究用戶偏好與商品特征之間的關(guān)系,成為了商品個(gè)性化推薦的重要因素。
事件本體EO的邏輯結(jié)構(gòu)分為五個(gè)元素:EO=〈UECS,LECS,L,Rules,Individuals〉。其中,上層和下層事件類(lèi)型的層次結(jié)構(gòu)集合分別用UECS和LECS表示;每個(gè)事件(類(lèi))之間的聯(lián)系用L表示;推理規(guī)則為Rules;實(shí)例集合為Individuals。
事件本體模型結(jié)構(gòu)分為上下兩層,其中下層包括事件推理與通用的分類(lèi),上層包括事件類(lèi)關(guān)系組成的結(jié)構(gòu)如圖1所示。
圖1 事件本體模型
事件本體的商品標(biāo)簽?zāi)P椭饕w現(xiàn)在電子商務(wù)網(wǎng)站的用戶可以通過(guò)標(biāo)簽自由選擇自己喜歡的商品,也會(huì)通過(guò)網(wǎng)站發(fā)生的事件而優(yōu)先選擇想要的商品,比如優(yōu)惠活動(dòng)等。而許多電子商務(wù)網(wǎng)站會(huì)根據(jù)用戶的喜好分類(lèi),比如:“喜愛(ài)”、“興趣”、“共享”等。用戶可以將自己喜愛(ài)的物品分享給其他人,也可以從其他用戶中找到自己喜歡的商品。但用戶的所有標(biāo)簽數(shù)量都具有差異性,而多數(shù)用戶只是對(duì)自己喜歡的商品添加幾個(gè)標(biāo)簽,數(shù)量較少。為了獲得用戶的全部興趣愛(ài)好,電子商務(wù)網(wǎng)站不止關(guān)注用戶“喜愛(ài)”分類(lèi)的標(biāo)簽,還需要針對(duì)所有分類(lèi)中的標(biāo)簽。
事件本體的商品標(biāo)簽?zāi)P蜆?gòu)建主要分為:上層和下層事件類(lèi)的構(gòu)建、實(shí)物層的事件本體商品優(yōu)惠與實(shí)物分享[9]。上層模型主要是事件類(lèi)標(biāo)簽數(shù)據(jù)獲取,將事件類(lèi)商品標(biāo)簽進(jìn)行分層;下層事件類(lèi)的模型構(gòu)建主要基于事件本體商品標(biāo)簽對(duì)應(yīng)的商品屬性,通過(guò)商品屬性的層次關(guān)系和對(duì)應(yīng)關(guān)系,提高商品推薦效果。實(shí)物層是商家通過(guò)實(shí)物照片分享給用戶[10],用戶會(huì)將實(shí)物分享對(duì)應(yīng)到事件標(biāo)簽本體的商品上,又或者通過(guò)優(yōu)惠活動(dòng)等事件本體讓用戶可以有更多的參照及選擇。
首先將商務(wù)社區(qū)的用戶標(biāo)注的商品標(biāo)簽及其標(biāo)注時(shí)間數(shù)據(jù)提取,提取的數(shù)據(jù)均保存到云盤(pán),然后將提取的標(biāo)簽數(shù)據(jù)分成用戶以及商品標(biāo)簽,用戶開(kāi)始標(biāo)注的標(biāo)簽元素i可用i((tag1,time1),(tag2,time2),…(tagn,timen))表示,用戶i的所有標(biāo)簽數(shù)量用n表示,標(biāo)注時(shí)間為time。商品開(kāi)始標(biāo)注的標(biāo)簽元素s可用s((tag1,freq1),(tag2,freq2)…(tagm,freqm))表示,商品s沒(méi)有重復(fù)的標(biāo)簽數(shù)量用m表示,商品s的標(biāo)簽使用次數(shù)用freq表示。將云盤(pán)中的標(biāo)簽數(shù)據(jù)取出,將標(biāo)簽數(shù)據(jù)輸入ICTCLAS3.0分詞系統(tǒng),將詞頻統(tǒng)計(jì)的結(jié)果按照詞頻大小排序分層。
為提高商品推薦效果,將事件標(biāo)簽本體的商品標(biāo)簽通過(guò)本體分類(lèi)信息進(jìn)行規(guī)范化,提升用戶的購(gòu)買(mǎi)體驗(yàn)感,在電子商務(wù)網(wǎng)站中,有些用戶對(duì)的商品標(biāo)簽的標(biāo)注過(guò)于隨意,很難規(guī)范出標(biāo)簽的層次對(duì)應(yīng)關(guān)系,為了構(gòu)建服裝類(lèi)別的事件本體商品標(biāo)簽種類(lèi)和屬性關(guān)系構(gòu)建如圖2所示的模型。
圖2 基于事件本體的商品標(biāo)簽?zāi)P蜆?gòu)建
從圖2可以看出,當(dāng)輸入“服裝”時(shí),會(huì)出現(xiàn)“衣服”、“鞋子”、“包包”、“首飾”等品類(lèi);“衣服”品類(lèi)下還會(huì)出現(xiàn)“上衣”、“裙子”、“褲子”等,而根據(jù)商品特征條件還會(huì)出現(xiàn)“風(fēng)格”、“顏色”、“材質(zhì)”、“流行元素”等詞條。而根據(jù)事件本體商品還會(huì)出現(xiàn)“優(yōu)惠”標(biāo)簽,這些都是構(gòu)建事件本體商品標(biāo)簽?zāi)P偷幕疽亍?/p>
為了從商品標(biāo)簽中獲取用戶的隱性需求和偏好,需要建立用戶標(biāo)簽?zāi)P?通常是從頻率權(quán)重因素來(lái)計(jì)算基于事件本體商品標(biāo)簽的用戶偏好。在權(quán)重基礎(chǔ)上使用標(biāo)簽聚類(lèi)(TF-IDF)方法計(jì)算用戶與商品標(biāo)簽的關(guān)系程度。
設(shè)Y、T、P分別表示用戶、標(biāo)簽和商品集合;
1)在y∈Y時(shí),Py、Ty分別是y用戶標(biāo)注的商品和標(biāo)簽集合;
2)在t∈T時(shí),Pt、Yt分別是t標(biāo)簽標(biāo)注的商品和用過(guò)t標(biāo)簽的用戶集合;
3)在p∈P時(shí),Tp、Yp分別是標(biāo)注p商品的標(biāo)簽和用戶集合。而Tu(t1y(f1),t2y(f2),…tmy(fm))則表示所有用戶的標(biāo)簽集里使用過(guò)的一個(gè)標(biāo)簽向量[11]。其中標(biāo)簽數(shù)為m,用戶y的第m個(gè)標(biāo)簽和標(biāo)簽頻率是tmy、fm。
用TF-IDF公式計(jì)算fm,得到tmy(fm)的用戶偏好用式(1)描述
tmy(fm)=Tfy(fm)×IDFu(fm)
(1)
標(biāo)簽t的使用頻率用Tfy(ft)表示,公式如下
(2)
式中,用戶y標(biāo)注的標(biāo)簽t的數(shù)量是count(y,t),p商品被標(biāo)簽t標(biāo)注過(guò)的用戶用UserCount(t,p)表示,用戶標(biāo)注的某個(gè)標(biāo)簽用k表示,所有用戶的所有收藏和使用的標(biāo)簽用式(3)表示
(3)
其中,所有用戶為N,所有收藏和使用的標(biāo)簽為nt。將式(2)、(3)帶入式(1)可得到用戶與商品標(biāo)簽的關(guān)系程度,公式如式(4)
(4)
商品每個(gè)標(biāo)簽的使用頻率也可用式(5)表示
(5)
標(biāo)簽t標(biāo)注的某產(chǎn)品為q,relate(t,p)的數(shù)值直接影響用戶對(duì)該商品的使用優(yōu)先級(jí),數(shù)值越大,標(biāo)簽t標(biāo)注的相同商品的用戶越多,標(biāo)簽與該商品關(guān)系越契合。
本文提出基于事件-標(biāo)簽-本體的商品個(gè)性化推薦算法是通過(guò)建立事件本體商品標(biāo)簽與用戶偏好模型后,通過(guò)計(jì)算用戶與商品標(biāo)簽之間的關(guān)聯(lián)程度,將所有用戶與商品標(biāo)簽進(jìn)行分類(lèi),再將分類(lèi)好的標(biāo)簽與用戶偏好標(biāo)簽匹配,將相似度較高的商品標(biāo)簽標(biāo)注的商品推薦給用戶。
某種商品被標(biāo)注標(biāo)簽的次數(shù)越多,說(shuō)明這種商品使用次數(shù)越多。用戶在選擇商品時(shí),系統(tǒng)通過(guò)獲取用戶與同類(lèi)別商品標(biāo)簽兩者間的相似度,通過(guò)事件(用戶)本體,優(yōu)先計(jì)算并找出和用戶相同愛(ài)好的其他用戶,再借助所有同類(lèi)型用戶的標(biāo)簽及愛(ài)好利用協(xié)同推薦算法選出NN種商品推薦給用戶[12]。這樣用戶得到的商品推薦都是相似度高,與標(biāo)簽和偏好都相匹配的商品。
用式(6)表示用戶的標(biāo)簽向量
Ty=tiy(fi)×tiy(timei)
(6)
用式(7)表示商品標(biāo)簽向量
Tp=tjp(relate(tj,p))
(7)
將用向量表示的全部物品和加權(quán)后的用戶標(biāo)簽進(jìn)行余弦相似度計(jì)算,得到同一類(lèi)別內(nèi)的商品pj的標(biāo)簽與用戶標(biāo)簽的相似度公式
(8)
為了使商品與用戶具有相同偏好,需要設(shè)定一個(gè)預(yù)設(shè)閾值e,且e 將商品作為預(yù)選推薦,需要先計(jì)算用戶標(biāo)簽和商品向量的相似度,并且得到的數(shù)值大于閾值。當(dāng)所有預(yù)選推薦相似度全部計(jì)算完畢,將所有預(yù)選推薦商品按照相似度數(shù)值從大到小的順序排列形成TOP推薦,這樣所有用戶瀏覽網(wǎng)站時(shí)看到的信息就是自己喜歡的或者感興趣的商品。 為驗(yàn)證本文算法的有效性將從淘寶網(wǎng)站中的熱門(mén)標(biāo)注的商品中選取300個(gè)活躍用戶進(jìn)行仿真,主要以服飾類(lèi)商品為主,總數(shù)超過(guò)10萬(wàn)個(gè)標(biāo)簽。將這些信息用電子文檔保存。所需要的實(shí)驗(yàn)工具為:八爪魚(yú)采集器、Protégé、Excel、ICTCLA3.0。 本實(shí)驗(yàn)將從準(zhǔn)確率(P),召回率(R)以及F值三種指標(biāo)進(jìn)行比較。F值是P值與R值的調(diào)和值,其中準(zhǔn)確率、召回率和F值越高,說(shuō)明所使用的方法推薦性能越好。公式如下 (9) (10) F=2PR/(P+R) (11) 式中,P(y)、D(y)分別是給用戶y推薦列表和用戶y標(biāo)注標(biāo)簽的物品集合。 選取傳統(tǒng)的基于標(biāo)簽和多元信息的個(gè)性化推薦算法、基于標(biāo)簽的個(gè)性化推薦算法與本文算法進(jìn)行對(duì)比,分別計(jì)算三種方法的P和R值,所得到的直觀圖如圖3、4所示。其中,T值是預(yù)選推薦商品按照相似度數(shù)值從大到小的順序得到的TOP-T推薦商品的數(shù)值。 圖3 不同T值下的P值對(duì)比 分析圖3、圖4可知,隨著TOP-T推薦數(shù)值的增高準(zhǔn)確率隨之增加,本文算法最為突出。但是TOP-T小于12時(shí),本文算法與基于標(biāo)簽的算法的P值和R值相同,且三種算法的準(zhǔn)確率都比較低,有可能是用戶在搜索截然不同的兩種商品時(shí)描述某商品的屬性特征有可能是相同的,商品標(biāo)簽的品類(lèi)特征也可能因?yàn)橛脩裘枋霾粶?zhǔn)確被歸類(lèi)到相似屬性特征類(lèi),最后推薦給興趣不同的用戶,從而降低推薦的準(zhǔn)確率。而實(shí)際情況下,很多用戶都是通過(guò)識(shí)別圖片、優(yōu)惠活動(dòng)等更加直觀地找到用戶的興趣商品,在此方向進(jìn)行研究,會(huì)大大提高基于事件本體的商品推薦的準(zhǔn)確率。 圖4 不同T值下的R值對(duì)比 隨著T值的增加,所有算法的P、R值都有所提高,而本文算法的效率最高,提升效率最低的是基于標(biāo)簽和多元信息的算法。在T<12時(shí),本文算法與基于標(biāo)簽的算法準(zhǔn)確率相同。T>12時(shí),本文算法快速提升,均比其它辦法準(zhǔn)確率高,基于標(biāo)簽和多元信息的算法準(zhǔn)確率提升緩慢。由于本文算法在考慮標(biāo)簽使用頻率和標(biāo)注時(shí)間基礎(chǔ)上,通過(guò)事件本體的商品進(jìn)行用戶推薦,在短時(shí)間內(nèi)沒(méi)有變化的情況下,需要更加關(guān)注事件本體的商品對(duì)用戶偏好的影響。 圖5為利用三種算法得到的F值對(duì)比圖。 圖5 不同T值下的F值對(duì)比 綜合圖3、4、5三張對(duì)比圖可知,由于TOP-T值較少導(dǎo)致三種算法的準(zhǔn)確率、召回率以及F值都比較低,但隨著T值的增加,三種算法的曲線都呈上升趨勢(shì),尤其本文算法上升較為明顯。在T<12時(shí),本文算法與基于標(biāo)簽的算法的曲線變化幾乎相同;T>12時(shí),基于標(biāo)簽的算法雖然繼續(xù)快速增加,但是與本文算法提升速率相比仍然處在劣勢(shì)??傮w來(lái)說(shuō),本文算法的F值在三種辦法中數(shù)值最高,推薦的效果更好。實(shí)驗(yàn)進(jìn)一步印證了本文算法的可行性。 對(duì)于個(gè)性化推薦的商品,用戶通常更容易接受推薦列表中靠前的內(nèi)容,由此采用排名前16位的推薦商品進(jìn)行分析與評(píng)價(jià),利用平均排序度進(jìn)行三種算法的推薦對(duì)比試驗(yàn),試驗(yàn)結(jié)果如圖6所示。 圖6 推薦平均排序度對(duì)比結(jié)果 由圖6可知,隨著T值的增加,三種推薦算法的平均排序度隨之呈逐漸增加趨勢(shì),導(dǎo)致商品推薦的排序下降,雖然本文算法平均排序度呈微弱下降趨勢(shì),但是與兩種對(duì)比算法相比,本文算法的商品個(gè)性化推薦平均排序依舊靠前,表明本文算法能夠有效為用戶推薦具有個(gè)性化需求的商品。 目前社會(huì)處于一個(gè)多元化的時(shí)代,用戶應(yīng)接受符合自身需求的商品,推薦的商品需要多樣且符合用戶需求,以商品個(gè)性化推薦的豐富度進(jìn)行對(duì)比試驗(yàn),結(jié)果如圖7所示。 圖7 商品推薦豐富度對(duì)比示意圖 由圖7可知,隨著T值的增加,三種算法的推薦商品的豐富度均呈上升趨勢(shì),當(dāng)推薦商品數(shù)量較少的時(shí)候,對(duì)于推薦商品豐富度區(qū)別并不明顯,隨著商品數(shù)量逐漸增多,豐富度的區(qū)別越來(lái)越明顯,結(jié)果顯示,本文算法所推薦的商品最豐富最高,更符合當(dāng)下用戶對(duì)于商品的個(gè)性化的需求。 表1是基于三種算法仿真結(jié)果,測(cè)試的商品推薦數(shù)均為15604,而本法的準(zhǔn)確總數(shù)為70,其它方法的推薦總數(shù)為55、46,說(shuō)明本文算法更有優(yōu)越性,更能滿足用戶需求。 表1 推薦辦法仿真結(jié)果 本文提出了基于事件本體的商品個(gè)性化推薦算法,根據(jù)用戶標(biāo)注的標(biāo)簽信息與用戶偏好進(jìn)行商品個(gè)性化推薦計(jì)算。同時(shí)通過(guò)計(jì)算基于事件本體的商品標(biāo)簽相似度,找到相似度最高的TOP-T推薦給用戶。通過(guò)實(shí)驗(yàn)也發(fā)現(xiàn)隨著T值的提高,本文算法比傳統(tǒng)算法的準(zhǔn)確率更高,個(gè)性化推薦效果更好更好。 但由于存在用戶在標(biāo)注標(biāo)簽時(shí)用詞隨意、語(yǔ)義模糊、數(shù)據(jù)量較大等弊端,在推薦時(shí)需要大量數(shù)據(jù)計(jì)算來(lái)規(guī)范標(biāo)簽語(yǔ)義,這本身是一項(xiàng)復(fù)雜的工程,目前沒(méi)有合適的解決方法,還需深入研究。3 實(shí)驗(yàn)與結(jié)果分析
3.1 實(shí)驗(yàn)參數(shù)
3.2 實(shí)驗(yàn)對(duì)比分析
4 結(jié)論