王佳齊
隨著網(wǎng)絡(luò)購(gòu)物時(shí)代的到來(lái),消費(fèi)者越來(lái)越多的選擇在網(wǎng)上購(gòu)買(mǎi)自己心儀的商品。其中淘寶網(wǎng)是當(dāng)前國(guó)內(nèi)最大的網(wǎng)絡(luò)購(gòu)物平臺(tái),據(jù)艾瑞咨詢①的調(diào)查結(jié)果顯示,在2016年淘寶網(wǎng)占據(jù)了國(guó)內(nèi)超過(guò)80%的網(wǎng)絡(luò)購(gòu)物市場(chǎng)份額。根據(jù)2013年的數(shù)據(jù)顯示,淘寶網(wǎng)在當(dāng)年的商品數(shù)量超過(guò)8億件,賣(mài)家數(shù)超過(guò)了700萬(wàn)。時(shí)至今日,淘寶網(wǎng)必然已經(jīng)有著更多的商品和賣(mài)家。
隨著商品種類和數(shù)量的激增,消費(fèi)者搜索和篩選的時(shí)間成本也會(huì)隨之增長(zhǎng)。因此,搜索、排序和推薦功能在互聯(lián)網(wǎng)購(gòu)物場(chǎng)景下扮演著非常重要的角色。如何在用戶搜索的過(guò)程中,高效地識(shí)別出用戶的個(gè)人偏好、客觀地評(píng)價(jià)所有商品的優(yōu)劣,以及生成最符合用戶期待的排序結(jié)果,就成為了電商平臺(tái)十分關(guān)心的問(wèn)題。目前的解決方案,卻存在著以下兩個(gè)方面問(wèn)題:
(1)現(xiàn)有排序結(jié)果主要依賴于買(mǎi)家打分的均值,主觀性較強(qiáng)。同時(shí),每個(gè)商品只有一個(gè)平均分,評(píng)價(jià)維度過(guò)于單一。
(2)買(mǎi)家的評(píng)論數(shù)據(jù)往往更加真實(shí)客觀,尤其能夠多元化、多維度地描述商品的真實(shí)情況。然而當(dāng)評(píng)論過(guò)多時(shí),會(huì)面臨嚴(yán)重的“信息過(guò)載”問(wèn)題。
基于此,本文提出了一種基于用戶偏好和評(píng)論情感分析的排序和推薦方法,該方法在用戶搜索時(shí)獲取用戶的偏好選擇,利用層次分析法建立偏好矩陣并形成偏好權(quán)重向量;之后,利用自然語(yǔ)言處理的方法將每條評(píng)論分詞并進(jìn)行語(yǔ)義情感分析,確定每條評(píng)論對(duì)用戶所關(guān)心屬性的褒貶情感,自動(dòng)生成單條評(píng)論相對(duì)客觀的分?jǐn)?shù);最后將偏好權(quán)重向量與相應(yīng)屬性的所有評(píng)論分?jǐn)?shù)進(jìn)行加權(quán)求和,最終得到每件商品的總分,進(jìn)而形成搜索排序結(jié)果。這種排序方法能夠很好地解決以上兩個(gè)問(wèn)題,為現(xiàn)有的搜索排序方法提供了新的啟發(fā)和解決方案。
對(duì)商品的用戶評(píng)論信息處理研究在近些年得到了廣泛關(guān)注,國(guó)外研究起步較早并取得了更領(lǐng)先的突破。其主要的思路和方法是建立研究領(lǐng)域?qū)?yīng)的情感詞庫(kù),根據(jù)評(píng)論中單詞的褒義和貶義程度進(jìn)行賦值和評(píng)分。其中Mike Y.Chen②對(duì)雅虎的股票留言板數(shù)據(jù)進(jìn)行提取分析,用來(lái)判斷投資者對(duì)不同股票的基本態(tài)度。而Turney③等人提出了基于語(yǔ)義空間模型的情感分類方法,利用PMI-IR算法計(jì)算評(píng)論單詞在“極差”和“極好”之間的差值,從而依次判斷該短語(yǔ)的情感傾向性,從而對(duì)一些評(píng)論數(shù)據(jù)進(jìn)行態(tài)度積極和消極的分類。
國(guó)內(nèi)的相關(guān)研究也有很多進(jìn)展,孫文?、艿热搜芯苛司W(wǎng)絡(luò)上對(duì)圖書(shū)的評(píng)論數(shù)據(jù),將情感分析方法與統(tǒng)計(jì)學(xué)方法結(jié)合起來(lái),建立了新的評(píng)價(jià)模型。丁宇新⑤等人對(duì)新聞評(píng)論的情感進(jìn)行分析和分類,引用了Na?ve Bayes Classi fi cation 的方法,并結(jié)合了最大熵模型。朱嫣嵐⑥⑦對(duì)知網(wǎng)HowNet詞庫(kù)進(jìn)行了詳細(xì)的劃分整理,共收集了超過(guò)三千情感詞匯,然后根據(jù)相似度匹配并確定評(píng)論傾向。
與前人的研究相比,本文創(chuàng)新點(diǎn)主要體現(xiàn)在以下幾個(gè)方面:
(1)研究主要針對(duì)于電商平臺(tái)的評(píng)論,具有很強(qiáng)的應(yīng)用針對(duì)性;
(2)利用自然語(yǔ)言處理的方法對(duì)每個(gè)分詞進(jìn)行了詞性標(biāo)定,在評(píng)價(jià)情感傾向的同時(shí)還計(jì)算該評(píng)價(jià)與用戶偏好屬性集之間的相關(guān)性;
(3)對(duì)句子形成整體的情感評(píng)分,并將某商品大量評(píng)論的評(píng)分與用戶自定義的屬性權(quán)重向量進(jìn)行加權(quán)求和,求出的商品綜合評(píng)分并依此排序。
本文提出的基于用戶偏好和評(píng)論情感分析的搜索排序解決方案,其主要流程包含三個(gè)部分的功能:
(1)在用戶執(zhí)行搜索操作時(shí),通過(guò)系統(tǒng)的問(wèn)題提示,用戶可通過(guò)屬性間的對(duì)比賦值體現(xiàn)自己對(duì)商品不同屬性的重視程度。根據(jù)用戶原始的賦值結(jié)果,利用層次分析法⑧生成用戶偏好矩陣P。之后對(duì)矩陣進(jìn)行一致性檢驗(yàn),對(duì)通過(guò)一致性檢驗(yàn)的偏好矩陣計(jì)算出用戶個(gè)性化的權(quán)重向量。
(2)針對(duì)單一條目的評(píng)論Cn,首先利用Sharp ICTLS分詞工具將語(yǔ)句劃分為短語(yǔ)集Rn,之后進(jìn)行相應(yīng)的詞性標(biāo)注?;诓煌木涫?,將短語(yǔ)集Rn中的名詞與屬性短語(yǔ)庫(kù)相對(duì)比,確定評(píng)論所描述的屬性;將Rn中的情感詞語(yǔ)與情感短語(yǔ)庫(kù)相對(duì)比分析,并根據(jù)褒義、貶義程度進(jìn)行評(píng)分,形成單句情感分?jǐn)?shù)。
(3)基于前兩步的方法和模型,對(duì)某商品的所有評(píng)論集合C進(jìn)行篩選,根據(jù)評(píng)論中的“屬性短語(yǔ)”與用戶關(guān)心屬性的相關(guān)度進(jìn)行分類,并最終確定相關(guān)較高的相關(guān)評(píng)論集Cr。之后,對(duì)相關(guān)評(píng)論集中的每條評(píng)論進(jìn)行單句評(píng)分,并根據(jù)相關(guān)度和用戶偏好屬性權(quán)重進(jìn)行加權(quán)求和,形成每個(gè)商品的總分。最終,可根據(jù)商品總分生成搜索排序結(jié)果。
基于第三章中的流程,我們?cè)O(shè)計(jì)了一套具體的算法,包含三個(gè)模塊,即基于層次分析法的用戶偏好模型、基于情感分析的評(píng)分生成模型和基于加權(quán)求和的排序推薦模型。
1.基于層次分析法的用戶偏好模型
由于在實(shí)際應(yīng)用中,每個(gè)商品都具有很多不同的屬性,而不同的用戶對(duì)這些屬性的偏好程度不僅相同,這個(gè)確定用戶個(gè)性化偏好程度的過(guò)程,就是一個(gè)多屬性排序的問(wèn)題??梢圆捎脤哟畏治龇ǎˋnalytic Hierarchy Process,簡(jiǎn)稱AHP)是來(lái)實(shí)現(xiàn),步驟為:
(1)遞階層次結(jié)構(gòu)由不同層次組成以確定權(quán)重。
目標(biāo)層(最高層O):指問(wèn)題的預(yù)定目標(biāo),即確定商品的屬性重要性權(quán)重;
準(zhǔn)則層(中間層R):指影響目標(biāo)實(shí)現(xiàn)的準(zhǔn)則,準(zhǔn)則層又分為更細(xì)化的指標(biāo);
指標(biāo)層(最底層I):指該商品諸多具體的指標(biāo),分為I1至In共n條屬性。
(2)構(gòu)造偏好矩陣并賦值
根據(jù)重要性標(biāo)度值,在用戶執(zhí)行搜索操作時(shí),完成判斷矩陣的信息填寫(xiě)。如果商品屬性過(guò)多,則可以改為對(duì)諸多商品屬性進(jìn)行重要性排序。重要性標(biāo)度的取值范圍為整數(shù)1到9,1表示兩者重要性一樣,數(shù)字越大代表兩個(gè)元素相比時(shí)前者的重要性越高。若元素I與元素j的重要性之比為aij,則元素j與元素I的重要性之比為aji=1/aij
基于以上方法的個(gè)性化賦值過(guò)程,可以最終生成某個(gè)用戶對(duì)一件商品條屬性的偏好矩陣,形如表1所示。
(3)權(quán)重計(jì)算及一致性檢驗(yàn)
比較矩陣對(duì)應(yīng)于最大特征值λmax的特征向量,經(jīng)歸一化后即為同一層次相應(yīng)指標(biāo)對(duì)于上一層次某準(zhǔn)則的相對(duì)重要性的排序權(quán)值。使用python可以很方便快捷地根據(jù)偏好矩陣計(jì)算出指標(biāo)層的屬性對(duì)于上個(gè)層次的影響權(quán)重。
表1 指標(biāo)層的個(gè)指標(biāo)的偏好矩陣示意
之后進(jìn)行一致性檢驗(yàn),基本步驟為:
通過(guò)以上流程,可以讓用戶在執(zhí)行搜索階段,利用一系列屬性的兩兩對(duì)比和重要性標(biāo)度,來(lái)實(shí)現(xiàn)對(duì)每個(gè)屬性重要程度的全局判斷,并得到偏好權(quán)重向量,用作后續(xù)的加權(quán)求和排序操作。
2.基于情感分析的評(píng)分生成模型
本部分模型主要實(shí)現(xiàn)對(duì)于某一條選定的評(píng)論來(lái)說(shuō),通過(guò)對(duì)其情感詞語(yǔ)的褒貶感情分析,來(lái)自動(dòng)生成該評(píng)論的情感評(píng)分的方法。其具體實(shí)現(xiàn)步驟為:
(1)選出將某商品N條評(píng)論中的任意一條,記做Cn。該評(píng)論由諸多漢字構(gòu)成,因此第一步我們應(yīng)用分詞工具Sharp ICTLS來(lái)對(duì)該評(píng)論進(jìn)行分詞操作。具體采用的是依據(jù)字符匹配進(jìn)行分詞操作的解決方案。
(2)詞性標(biāo)注。在對(duì)評(píng)論進(jìn)行分詞操作后,為了進(jìn)行后續(xù)的情感傾向分析,需要建立短語(yǔ)的結(jié)構(gòu)模型,即要對(duì)句子中的名詞、動(dòng)詞、形容詞等不同詞性進(jìn)行標(biāo)注和確認(rèn)。要確定語(yǔ)義情感傾向,就需要對(duì)句子的結(jié)構(gòu)格式進(jìn)行建模和定義。這里借鑒李永勝⑨等人的應(yīng)用的短語(yǔ)結(jié)構(gòu)進(jìn)行分析。
(3)與情感詞庫(kù)、屬性詞庫(kù)的詞語(yǔ)進(jìn)行比對(duì)。其中情感詞庫(kù)以知網(wǎng)的情感詞庫(kù)為準(zhǔn),分為褒義詞的情感詞庫(kù)和貶義詞的情感詞庫(kù)。而屬性詞庫(kù)則根據(jù)商品的屬性特征進(jìn)行定義和構(gòu)建,例如“顏色”、“色彩”都是和“顏色”屬性相關(guān)的詞語(yǔ),而“物流”、“快遞”、“送貨”都是和“物流”屬性相關(guān)的詞語(yǔ)。由于屬性詞庫(kù)具有很強(qiáng)的商品依賴性,所以在最初階段,需要人工建立該詞庫(kù),并在應(yīng)用過(guò)程中不斷補(bǔ)充。
(4)對(duì)短語(yǔ)的內(nèi)容進(jìn)行選取,基本原則為:先尋找評(píng)論中與屬性詞庫(kù)相匹配的詞語(yǔ),確定該評(píng)論評(píng)價(jià)的是哪方面的屬性;再尋找與情感詞庫(kù)相匹配的詞語(yǔ),明確該評(píng)論對(duì)于所評(píng)價(jià)屬性的感情態(tài)度。
(5)計(jì)算短語(yǔ)的感情價(jià)值。最終,通過(guò)分析、匹配和篩選,我們可以挑選出具有明確評(píng)價(jià)對(duì)象和明確感情色彩的短語(yǔ),作為評(píng)分生成的對(duì)象。本課題參考李永勝等人⑨的做法,通過(guò)統(tǒng)計(jì)一個(gè)短語(yǔ)模型中表示積極和消極短語(yǔ)出現(xiàn)的次數(shù)。同時(shí),為避免感情值過(guò)大或過(guò)小,使用對(duì)數(shù)函數(shù)進(jìn)行處理,并對(duì)有0次出現(xiàn)的情況進(jìn)行特殊處理,如下公式所示。
其中Good代表第i個(gè)短語(yǔ)模型中的積極感情出現(xiàn)次數(shù),而B(niǎo)ad表示第i個(gè)短語(yǔ)模型中消極感情出現(xiàn)的次數(shù)。
到底為止,該算法實(shí)現(xiàn)了對(duì)評(píng)論中的評(píng)論對(duì)象屬性的識(shí)別、以及對(duì)短語(yǔ)模型的情感評(píng)分的功能。接下來(lái),再參考用戶的個(gè)人偏好向量與短語(yǔ)模型的評(píng)分,最終確定排序的指標(biāo)和商品的總分。
3.基于加權(quán)求和的排序推薦模型
在短語(yǔ)感情價(jià)值計(jì)算的基礎(chǔ)上,假設(shè)商品有n個(gè)屬性、K條評(píng)價(jià),則通過(guò)遍歷該商品的所有評(píng)論,可以實(shí)現(xiàn)對(duì)所有n個(gè)屬性的感情評(píng)分Vi的分別計(jì)算,即得到屬性評(píng)價(jià)分?jǐn)?shù)向量 ,其中:
于是在前兩個(gè)模型的基礎(chǔ)上,假設(shè)一個(gè)用戶的對(duì)商品n個(gè)屬性的偏好權(quán)重向量:
則可以得到該商品綜合所有評(píng)論的最終情感傾向評(píng)分為:
最后,通過(guò)對(duì)不同商品加權(quán)后的商品總分進(jìn)行排序,就可以得到排序搜索的最終結(jié)果。
總的來(lái)說(shuō),整個(gè)算法實(shí)現(xiàn)該解決方案的流程包含以下三個(gè)步驟:
(1)在用戶執(zhí)行搜索操作時(shí),用戶通過(guò)屬性間的對(duì)比賦值體現(xiàn)自己對(duì)商品不同屬性的重視程度,進(jìn)而利用層次分析法生成用戶偏好矩陣P。之后對(duì)矩陣進(jìn)行一致性檢驗(yàn),對(duì)通過(guò)一致性檢驗(yàn)的偏好矩陣計(jì)算出用戶個(gè)性化的權(quán)重向量。
(2)針對(duì)單一條目的評(píng)論Cn,首先利用Sharp ICTLS分詞工具將語(yǔ)句劃分為短語(yǔ)集Rn,之后進(jìn)行相應(yīng)的詞性標(biāo)注。基于不同的句式,將短語(yǔ)集Rn中的名詞與屬性短語(yǔ)庫(kù)相對(duì)比,確定評(píng)論所描述的屬性;將Rn中的情感詞語(yǔ)與情感短語(yǔ)庫(kù)相對(duì)比分析,并根據(jù)褒義、貶義程度進(jìn)行評(píng)分,形成單句情感分?jǐn)?shù)。
(3)基于前兩步的方法和模型,對(duì)某商品的所有評(píng)論集合C進(jìn)行篩選,凡是對(duì)某個(gè)商品屬性表示明確感情態(tài)度的短語(yǔ),都存放在“相關(guān)短語(yǔ)集”中。對(duì)該短語(yǔ)集中的每個(gè)短語(yǔ)進(jìn)行獨(dú)立評(píng)分,匯總對(duì)每個(gè)商品屬性的評(píng)分上。最終評(píng)分向量與用戶偏好權(quán)重向量進(jìn)行加權(quán)求和,形成商品總分,并根據(jù)商品總分生成搜索排序結(jié)果。
1.研究對(duì)象的選取
我們以淘寶網(wǎng)為研究對(duì)象,以女式裙子為商品樣本,抓取了在淘寶網(wǎng)搜索“裙子”得到的默認(rèn)排名前100的商品所有的評(píng)論。
進(jìn)一步地,我們確定了該商品的屬性集。在這里,我們僅僅選取了5個(gè)屬性,作為原型系統(tǒng)的實(shí)現(xiàn)與功能驗(yàn)證。屬性的層次分類如圖1所示。
圖1 對(duì)樣本商品的屬性層次分類
3.實(shí)驗(yàn)的排序結(jié)果
對(duì)100件商品的評(píng)論進(jìn)行抓取評(píng)論原始數(shù)據(jù),對(duì)原始數(shù)據(jù)進(jìn)行如第四章所描述的處理,根據(jù)分詞結(jié)果,匹配情感短語(yǔ)庫(kù)和人工定義的屬性短語(yǔ)庫(kù),對(duì)短語(yǔ)進(jìn)行匹配和評(píng)分。
經(jīng)過(guò)對(duì)三個(gè)典型用戶的個(gè)人偏好建模和對(duì)商品評(píng)論分析和評(píng)分生成,我們對(duì)三個(gè)用戶的商品評(píng)分進(jìn)行了加權(quán)求和,并算出了最終每個(gè)商品的得分。對(duì)于5款商品,結(jié)合不同的用戶偏好最終得到了不同的排序結(jié)果,如表2所示。
表2 結(jié)合三個(gè)用戶偏好生成的五款商品評(píng)分
通過(guò)表2的結(jié)果可以看出,評(píng)分的確能夠根據(jù)不同用戶的不同偏好而有所差別。具體來(lái)說(shuō),用戶B和用戶C在前兩款產(chǎn)品,即G1和G2上評(píng)分有明顯差距。經(jīng)過(guò)對(duì)評(píng)論的仔細(xì)閱讀,發(fā)現(xiàn)G1商品的評(píng)價(jià)大多都在贊揚(yáng)穿著的舒適程度和顏色的鮮艷程度,同時(shí)也有不少在抱怨物流太慢、發(fā)貨不夠及時(shí);而G2商品的評(píng)論中,不少都在夸贊客服的耐心和細(xì)致,但也有不少評(píng)論描述了該商品的一些穿著上的缺陷可以看到,目前的原型系統(tǒng)已經(jīng)可以初步實(shí)現(xiàn)根據(jù)用戶不同的偏好類型而產(chǎn)生不同的評(píng)分和排序結(jié)果,體現(xiàn)出很好的應(yīng)用前景和潛力。然而,在目前的原型系統(tǒng)中,仍然存在以下幾個(gè)方面的問(wèn)題:
(1)由于中文表述的多義性,使得有些詞語(yǔ)的褒貶傾向很難獨(dú)立地判斷。
(2)目前原型系統(tǒng)沒(méi)有尚沒(méi)有開(kāi)發(fā)UI界面,也不能實(shí)時(shí)抓取淘寶的評(píng)論數(shù)據(jù)。
(3)目前原型系統(tǒng)的適用和體驗(yàn)用戶數(shù)量十分有限,沒(méi)有得到足夠的使用情況反饋。
隨著電子商務(wù)的不斷繁榮,商品種類和數(shù)量的激增,消費(fèi)者搜索和篩選的時(shí)間成本也會(huì)隨之增長(zhǎng)。因此,搜索、排序和推薦功能在互聯(lián)網(wǎng)購(gòu)物場(chǎng)景下扮演著非常重要的角色。
本研究創(chuàng)新地提出了基于用戶偏好和評(píng)論情感分析的排序和推薦方法,利用層次分析法建立用戶偏好矩陣并形成屬性權(quán)重向量;利用自然語(yǔ)言處理的方法進(jìn)行語(yǔ)義情感分析,自動(dòng)生成單條評(píng)論相對(duì)客觀的分?jǐn)?shù);最后將偏好權(quán)重向量與相應(yīng)屬性的所有評(píng)論分?jǐn)?shù)進(jìn)行加權(quán)求和,進(jìn)而形成搜索排序結(jié)果。這種排序方法能夠很好地反映用戶挑選商品時(shí)的個(gè)人偏好,并將根據(jù)評(píng)論自動(dòng)生成的分?jǐn)?shù)作為排序的重要指標(biāo)。原型系統(tǒng)的驗(yàn)證結(jié)果顯示,該方法確實(shí)能夠高效、快捷的篩選出最合乎用戶心意的商品。
未來(lái)的改進(jìn)之處如下:
(1)開(kāi)發(fā)“網(wǎng)絡(luò)購(gòu)買(mǎi)助手”APP或者插件,為用戶提供更多幫助。在服務(wù)用戶的同時(shí)獲取用戶的瀏覽和購(gòu)買(mǎi)記錄,根據(jù)用戶的行為數(shù)據(jù)進(jìn)行反饋驗(yàn)證,對(duì)搜索排序進(jìn)行不斷的優(yōu)化。
(2)需要進(jìn)一步解決小眾商品的屬性提取問(wèn)題,以及新上架商品的評(píng)論冷啟動(dòng)問(wèn)題。前者可以依靠人工打標(biāo)簽的方式解決;后者可以參考現(xiàn)有評(píng)分、賣(mài)家信息、用戶特征等數(shù)據(jù)進(jìn)行粗粒度推薦。
(3)可將該解決方案應(yīng)用在其他推薦場(chǎng)景中,例如電影推薦、餐廳推薦等。
引文:
①艾瑞咨詢.http://www.iresearch.com.cn/
②Chen M Y.Yahoo!for Amazon:Sentiment extraction from small talk on the web[J].Management Science,2007,53(9):1375-1388.
③Turney P D,Littman M L.Measuring praise and criticism:Inference of semantic orientation from association[J].ACM Transaction on Information System(TOIS),2003,21(4):315-346.
④孫文俊.圖書(shū)領(lǐng)域消費(fèi)者在線評(píng)論的有用性影響因素研究[J].江蘇商論,2011(5):58-60.
⑤丁宇新,王曉龍.使用機(jī)器學(xué)習(xí)方法進(jìn)行新聞的情感自動(dòng)分類[J].中文信息學(xué)報(bào),2007,21(6):95-100.
⑥朱嫣嵐,閔錦,周雅倩,等.基于HowNet的詞匯語(yǔ)義傾向計(jì)算[J].中文信息學(xué)報(bào),2006,20(1):14-20.
⑦朱嫣嵐.文本情感傾向分析若干問(wèn)題研究[D].復(fù)旦大學(xué),2007.
⑧郭金玉,張忠彬,孫慶云.層次分析法的研究與應(yīng)用[J].中國(guó)安全科學(xué)學(xué)報(bào),2008,18(5):148-153.
⑨李永勝.基于淘寶網(wǎng)的用戶評(píng)價(jià)的商品推薦系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].吉林大學(xué),2015.