周俊妍, 薛文良, 魏孟媛, 劉蘊(yùn)瑩, 錢競芳, 丁 亦
(1. 東華大學(xué) 紡織面料技術(shù)教育部重點(diǎn)實(shí)驗(yàn)室,上海 201620; 2. 中華人民共和國 上海海關(guān),上海 200120)
隨著互聯(lián)網(wǎng)及自媒體的興起,消費(fèi)者可以在不同網(wǎng)絡(luò)平臺對商品進(jìn)行評價(jià),這些最貼合市場的用戶自生成內(nèi)容對商品質(zhì)量監(jiān)管而言,是相對實(shí)時(shí)、有價(jià)值、可信的。基于電商評論內(nèi)容,從專業(yè)角度挖掘服裝質(zhì)量特征,幫助消費(fèi)者及服裝企業(yè)和檢驗(yàn)機(jī)構(gòu)等使用者更好地了解服裝質(zhì)量的動態(tài)。商品評論中的產(chǎn)品特征挖掘方法主要是基于統(tǒng)計(jì)、規(guī)則和機(jī)器學(xué)習(xí)等方法。
基于統(tǒng)計(jì)的方法包括基于詞性、詞頻[1-3]、關(guān)聯(lián)規(guī)則及點(diǎn)互信息等。Hu等[4]提出產(chǎn)品特征集合中的頻繁項(xiàng)利用關(guān)聯(lián)規(guī)則提取,非頻繁項(xiàng)基于與頻繁項(xiàng)共現(xiàn)度高的形容詞集合抽取,這種方法易引入高頻非特征集合。Popescu等[5]通過計(jì)算候選特征和特征基準(zhǔn)詞間的PMI(pointwise mutual information)值對其進(jìn)行優(yōu)化,使準(zhǔn)確率提升20%。王永等[6]利用frequent pattern-growth(FP-growth)算法,進(jìn)一步降低關(guān)聯(lián)規(guī)則的復(fù)雜度。這類方法原理簡單且應(yīng)用較為廣泛,但受分詞效果局限,召回率普遍偏低,易忽視低頻非名詞特征詞。
基于規(guī)則的方法一般包括兩類:一是自定義語言規(guī)則,二是利用句法分析工具構(gòu)建句法規(guī)則集合[7]。李盛[8]提出詞組規(guī)則、特征詞和評價(jià)詞的雙向循環(huán)過濾規(guī)則,并建立特征詞庫。Kobayashi等[9]和Zhuang等[10]建立特征詞與觀點(diǎn)詞的共現(xiàn)規(guī)則,從而抽取特征詞。劉濤[11]利用依存句法分析工具,抽取5種主要依存關(guān)系構(gòu)建句法規(guī)則,再經(jīng)剪枝策略抽取產(chǎn)品特征。規(guī)則依賴于人工構(gòu)建,但很難覆蓋所有形式,這是因?yàn)樽匀徽Z言表達(dá)的多樣性和復(fù)雜性導(dǎo)致的。
基于機(jī)器學(xué)習(xí)的方法包括主題模型、條件隨機(jī)場[12]、深度學(xué)習(xí)等。主題模型(latent dirichlet allocation, LDA)對低頻屬性詞的召回率不高,且細(xì)粒度主題分類不夠精確[13]。Lafierty等[14]提出的條件隨機(jī)場(conditional random field, CRF)模型特征設(shè)計(jì)靈活,但特征工程構(gòu)建要求與標(biāo)注成本較高。深度學(xué)習(xí)模型憑借自動抽取深層抽象特征的優(yōu)勢,突破CRF依賴人工特征的限制。張俊飛等[15]優(yōu)化特征詞識別框架,該框架組合輸入層、BLSTM(bi-directional long short term memory)模塊和線性CRF模塊,可在不依賴于特征工程的情況下提高特征詞識別性能。與CRF相比,融合深度學(xué)習(xí)的模型效果更好,但計(jì)算開銷大,因此對小樣本而言適當(dāng)特征工程的CRF模型更為實(shí)用。
目前,針對服裝產(chǎn)品評論的質(zhì)量特征識別研究較少,以上方法抽取的特征粒度粗,層次混亂,如面料、衣服等粗粒度特征詞與服裝質(zhì)量沒有直接關(guān)聯(lián),可解釋性較差。為使抽取結(jié)果具有更深的行業(yè)應(yīng)用價(jià)值,提出一種服裝細(xì)粒度質(zhì)量特征挖掘方法。基于語料庫和先驗(yàn)知識建立服裝質(zhì)量特征詞庫與服裝質(zhì)量特征樹;基于特征詞庫與特征樹,利用詞庫匹配、CRF模型抽取特征;基于特征樹對抽取的特征詞集合進(jìn)行分類。
提出的細(xì)粒度服裝質(zhì)量特征挖掘方法框架圖如圖1所示。在建立服裝質(zhì)量特征詞庫與特征樹的基礎(chǔ)上,采用詞庫匹配與CRF模型結(jié)合的方式抽取質(zhì)量特征。具體分為5步:(1)數(shù)據(jù)采集與預(yù)處理,即在剔除重復(fù)無意義的評論數(shù)據(jù)后對文本進(jìn)行分詞與詞性標(biāo)注。(2)建立服裝質(zhì)量特征詞庫。利用FP-growth 算法、詞向量與聚類,結(jié)合行業(yè)知識,輸出特征詞庫。(3)基于紡織檢測專業(yè)知識,結(jié)合特征詞庫,建立服裝質(zhì)量特征樹。(4)實(shí)現(xiàn)評論細(xì)粒度服裝質(zhì)量特征抽取,包括詞庫匹配和CRF匹配。(5)基于服裝質(zhì)量特征樹,實(shí)現(xiàn)特征詞集合的細(xì)粒度分類。

圖1 細(xì)粒度服裝質(zhì)量特征挖掘方法框架Fig.1 Framework for fine-grained clothing quality feature mining method
本文的服裝質(zhì)量特征詞庫構(gòu)建方法由兩部分組成:一是基于產(chǎn)品知識;二是基于語料庫自動抽取。產(chǎn)品知識由服裝屬性描述、術(shù)語等組成,如顏色、版型、厚度、裁剪等;基于語料庫的自動抽取方法則結(jié)合了FP-growth、 word2vec等算法。自動抽取方法既能從詞頻角度高效檢索頻繁特征集合,又可通過與頻繁非特征集合的交叉過濾,提高服裝質(zhì)量特征詞庫的精準(zhǔn)性。
基于語料庫自動抽取建立特征詞庫的具體步驟如下:
(1) 調(diào)用Python的jieba模塊分詞,去除停用詞,詞性標(biāo)注,保存預(yù)處理語料庫C1。僅保留C1中的名詞另存為語料庫C2,在C2中抽取語料庫名詞集合Noun_set。
(2) 采用FP-growth算法掃描預(yù)處理后的評論集C2,獲得頻繁特征項(xiàng)集合I1。具體過程包括:統(tǒng)計(jì)名詞出現(xiàn)的頻率,刪除詞頻小于最小支持度S1(本文取0.5%)的名詞,得到集合I0;遍歷I0,構(gòu)建頻繁模式樹;從樹中遞歸獲取條件模式基,設(shè)定最小支持度S2(本文取2)時(shí)構(gòu)建條件頻繁模式樹,做頻繁模式挖掘,最終得到頻繁項(xiàng)集合I1。
(3) 利用Python中的gensim模塊對預(yù)處理語料庫C1進(jìn)行詞向量訓(xùn)練。訓(xùn)練算法取skip-gram,最低詞頻取 2,其余采用默認(rèn)參數(shù);加載詞向量模型,利用K-means聚類算法,對名詞集合Noun_set進(jìn)行聚類。K-means的聚類簇?cái)?shù)量取9,其余采用默認(rèn)參數(shù);分析聚類結(jié)果,抽取頻繁非特征集合N1。
(4) 步驟(1)所得的特征集合具有一定的頻率和語義關(guān)聯(lián)度,但為了盡可能多地提取特征詞,因此最小支持度設(shè)置得均較低,集合內(nèi)會出現(xiàn)大量無關(guān)詞。為降低無關(guān)詞對結(jié)果的影響,基于集合N1過濾集合I1,最終得到服裝質(zhì)量特征詞庫。
服裝電商評論的細(xì)粒度質(zhì)量特征挖掘要求特征集合與質(zhì)量高度相關(guān),特征分類結(jié)果與紡織品質(zhì)量檢測指標(biāo)有準(zhǔn)確的層次化映射關(guān)系,這將有利于消費(fèi)者評論與檢測指標(biāo)的有機(jī)結(jié)合,提高方法在服裝質(zhì)量管理方面的實(shí)際應(yīng)用價(jià)值。為實(shí)現(xiàn)該目標(biāo),考慮引入服裝領(lǐng)域質(zhì)量特征樹,基于專家先驗(yàn)知識,提高抽取特征的精細(xì)化表達(dá)能力。
建立服裝質(zhì)量特征樹的第一步是建立服裝質(zhì)量特征樹本體,簡稱本體。本體分為一級指標(biāo)和二級指標(biāo)。一級指標(biāo)又分為服裝類和檢測類,其中服裝類是款式、風(fēng)格等與質(zhì)量相關(guān)度不高的指標(biāo)。檢測類按照質(zhì)量特征粒度又分為檢測細(xì)類與檢測粗類。檢測細(xì)類的下級指標(biāo)指向明確的質(zhì)量問題,如規(guī)格偏差、色牢度不合格、力學(xué)性能不合格等。檢測粗類的下級指標(biāo)指向服裝的粗粒度屬性,如面料、輔料、品類、顏色等,這類指標(biāo)不直接反映質(zhì)量問題,但可進(jìn)一步挖掘消費(fèi)者對該屬性質(zhì)量的潛在觀點(diǎn)。二級指標(biāo)是在一級指標(biāo)的基礎(chǔ)上細(xì)化本體,其構(gòu)建難點(diǎn)在于檢測細(xì)類的細(xì)分。參考檢驗(yàn)檢疫機(jī)構(gòu)的高頻檢測項(xiàng)目以及評論中質(zhì)量相關(guān)的高頻特征詞,將檢測細(xì)類分為標(biāo)簽標(biāo)識、外觀質(zhì)量、物理性能及安全性能,這4類的細(xì)化指標(biāo)共同組成二級指標(biāo)體系。表1列舉了檢測細(xì)類中不同分類下二級指標(biāo)的具體內(nèi)容,檢測類一級指標(biāo)體系涵蓋常用紡織服裝用品的質(zhì)量檢測問題。

表1 檢測細(xì)類下的二級指標(biāo)示例
在構(gòu)建本體的基礎(chǔ)上,抽取評論語料庫中高頻服裝質(zhì)量描述詞,構(gòu)建二級指標(biāo)下的特征值種子詞集合。鑒于自然語言描述的多樣性,遍歷已建立的特征詞庫,通過比較特征詞與種子詞間的詞向量余弦相似度,達(dá)到擴(kuò)充特征詞表的目的。最終構(gòu)建的服裝質(zhì)量特征樹共3個(gè)一級指標(biāo),38個(gè)二級指標(biāo),其中檢測細(xì)類29個(gè)、檢測粗類7個(gè)、服裝類2個(gè)。服裝質(zhì)量特征樹示例見表 2。

表2 服裝質(zhì)量特征樹示例Table 2 An example of the clothing quality feature tree
本文提出的細(xì)粒度服裝質(zhì)量特征挖掘方法包括特征抽取與分類。特征抽取采用詞庫匹配與CRF結(jié)合的方式,既有利于提高特征識別效率與領(lǐng)域準(zhǔn)確性,又不局限于分詞結(jié)果,可以有效抽取詞庫外的新特征詞。特征分類則是在服裝質(zhì)量特征樹的基礎(chǔ)上通過計(jì)算相似度判斷特征所屬類別。
1.3.1 基于詞庫匹配的特征抽取
詞庫匹配方法:首先判斷分詞詞語是否屬于特征詞庫,若不是則計(jì)算分詞詞語與二級指標(biāo)下特征值的相似度。判斷方法:遍歷服裝質(zhì)量特征樹的二級指標(biāo),計(jì)算分詞詞向量與二級指標(biāo)所屬特征值詞向量間的余弦相似度均值Si,計(jì)算方式如式(1)所示,若maxSi大于閾值α,則抽取該分詞。
(1)
式中:Sij為第i個(gè)二級指標(biāo)中第j個(gè)特征值與分詞的詞向量間余弦相似度;count(Sij>β)為余弦相似度大于β的特征值個(gè)數(shù);sum(Sij>β)為余弦相似度大于β部分相似度求和。
1.3.2 基于CRF的特征抽取
若評論分詞結(jié)果不符合詞庫匹配標(biāo)準(zhǔn),或者分詞屬于檢測粗類,則將該評論保存至CRF待分類評論集,由CRF進(jìn)行特征識別。CRF屬于序列標(biāo)注模型,在文本命名實(shí)體識別方面應(yīng)用較好,這是一種根據(jù)輸入序列X(x1,x2,x3, …,xn)預(yù)測輸出序列Y(y1,y2,y3, …,yn)的判別式模型。序列的標(biāo)注樣例如圖2所示,特征詞的開始字符標(biāo)注為“B-FEA”,中間以及結(jié)尾字符標(biāo)注為“I-FEA”,其余無關(guān)字符標(biāo)注為“O”。

圖2 輸入序列與輸出序列的樣例示意圖Fig.2 Examples diagram of the input array and the out put array
模型訓(xùn)練時(shí),輸入經(jīng)過標(biāo)注的觀測序列X,通過極大似然估計(jì)得到條件概率模型P(y|x),如式(2)~(3)所示。 再利用改進(jìn)的迭代尺度法等優(yōu)化方法訓(xùn)練參數(shù),保存模型。
(2)
(3)
式中:fk(y,x)為轉(zhuǎn)移特征與狀態(tài)特征在各個(gè)位置的求和;wk為特征fk(y,x)的權(quán)值;Z(x)為規(guī)范化因子。
模型預(yù)測是對給定的輸入序列X,利用維特比算法求出條件概率最大的輸出序列Y,從中抽取符合要求的標(biāo)注子序列,解碼后以特征詞的形式輸出。
1.3.3 特征詞分類
比較抽取的特征詞與服裝質(zhì)量特征樹的二級指標(biāo)下特征值的相似度,判斷某特征應(yīng)屬于哪個(gè)二級指標(biāo),從而實(shí)現(xiàn)服裝質(zhì)量特征與檢測指標(biāo)結(jié)合的細(xì)粒度挖掘。
通過遍歷服裝質(zhì)量特征樹的二級指標(biāo),計(jì)算抽取的特征詞與第i個(gè)二級指標(biāo)所屬特征值的相似度均值SCi,計(jì)算方式如式(4)~(5)所示。若maxSCi大于閾值α,則說明該特征詞屬于第i個(gè)二級指標(biāo),反之,將該詞分屬為其他。
(4)
SCij=a×Svec+b×Sedit
(5)
式中:SCij為第i個(gè)二級指標(biāo)中第j個(gè)特征值與分詞的相似度;Svec為詞之間的詞向量余弦距離;Sedit為詞之間的編輯距離;a+b=1;count(SCij>β)為相似度大于β的特征值個(gè)數(shù);sum(SCij>β)為相似度大于β部分相似度求和。
采用Python編寫爬蟲程序,采集網(wǎng)易考拉平臺全品類服裝商品共39 222件,評論總計(jì)1 015 894條。清洗剔除不符合試驗(yàn)條件的無效評論,如文本重復(fù)、文本長度過短、系統(tǒng)默認(rèn)評論以及亂碼評論。按以上模式清洗后,基于保留的585 259條評論建立服裝評論語料庫C,存入MongoDB數(shù)據(jù)庫。
為提高方法對服裝全品類的適用性,以品類為標(biāo)準(zhǔn),如成人內(nèi)搭、外套、褲子、裙子、內(nèi)衣、童裝等,按各類商品數(shù)量占比從語料庫中隨機(jī)抽取評論,分句處理后,將最終得到的3 000條評論組成數(shù)據(jù)集,其中訓(xùn)練集2 200條、驗(yàn)證集400條、測試集400條。訓(xùn)練集與驗(yàn)證集用于CRF模型的訓(xùn)練與調(diào)整,測試集則用于整體方案的試驗(yàn)與評估。
先根據(jù)第1.1、 1.2節(jié)的步驟構(gòu)建服裝質(zhì)量特征詞庫與質(zhì)量特征樹,再人工標(biāo)注訓(xùn)練集與驗(yàn)證集,訓(xùn)練并保存CRF模型。模型參數(shù)設(shè)置:批處理大小取64;學(xué)習(xí)率取0.001; drop out取0.5;梯度閾值設(shè)為5。最后對測試集進(jìn)行預(yù)處理,利用jieba模塊分詞、去除停用詞、標(biāo)注詞性,應(yīng)用細(xì)粒度服裝質(zhì)量特征挖掘方法完成特征抽取分類。結(jié)果樣例如表3所示。

表3 服裝質(zhì)量特征抽取與分類的結(jié)果樣例
本文利用查全率(R)、查準(zhǔn)率(P)、綜合值F1評估方法效果,依次按式(6)~(8)計(jì)算。
(6)
(7)
(8)
式中:TP為抽取正確的產(chǎn)品屬性數(shù)量;FP為抽取錯(cuò)誤的產(chǎn)品屬性數(shù)量;FN為沒有被抽取出但屬于正確的產(chǎn)品屬性的數(shù)量。
細(xì)粒度服裝質(zhì)量特征抽取試驗(yàn)對比結(jié)果如表4所示。由表4可知,融合兩種模式的質(zhì)量特征抽取結(jié)果比兩種模式獨(dú)立抽取具有更好的表現(xiàn),查全率相比詞庫匹配方法提高了14.29%,查準(zhǔn)率與綜合值F1相比CRF方法分別提高了5.45%和3.60%。詞庫匹配模式準(zhǔn)確率較高,但限制新詞識別能力,因此在此基礎(chǔ)上融合CRF模型,不局限于分詞而且可以捕捉詞庫外的特征詞,提高查全率。
完成特征抽取后,為提高結(jié)果在服裝領(lǐng)域的應(yīng)用價(jià)值,以服裝質(zhì)量特征樹為基礎(chǔ),進(jìn)行質(zhì)量特征詞的細(xì)粒度分類。服裝質(zhì)量特征抽取分類結(jié)果示例如表5所示。由表5可知,在消費(fèi)者評論中,檢測粗類與服裝類特征更高頻地被提及,如面料、品類、款式、顏色等。此外,消費(fèi)者更關(guān)注外觀類問題,比如規(guī)格偏差、縫制疵點(diǎn)、色差、起毛起球、色牢度等,其中盡管起毛起球與色牢度是物理性能類指標(biāo),但從消費(fèi)者角度而言其優(yōu)劣是直接表現(xiàn)在外觀上的。從內(nèi)在性能來看,拉伸性能、異味、透氣性等也是消費(fèi)者關(guān)注的焦點(diǎn)。以上結(jié)論與購物體驗(yàn)相吻合,進(jìn)一步驗(yàn)證細(xì)粒度服裝質(zhì)量特征挖掘方法的有效性。

表4 細(xì)粒度服裝質(zhì)量特征抽取試驗(yàn)對比

表5 服裝質(zhì)量特征抽取分類結(jié)果示例
基于在線評論的服裝質(zhì)量特征細(xì)粒度挖掘方法,利用FP-growth算法結(jié)合專業(yè)知識構(gòu)建服裝質(zhì)量特征詞庫,建立服裝質(zhì)量特征樹;結(jié)合詞庫匹配、CRF模型等方式抽取服裝評論特征;同時(shí),基于質(zhì)量特征樹,對抽取的特征集合進(jìn)行分類。該方法有兩個(gè)優(yōu)點(diǎn):一是特征挖掘的粒度細(xì);二是結(jié)果的領(lǐng)域?qū)I(yè)性強(qiáng)。該方法致力于挖掘服裝真實(shí)質(zhì)量問題,細(xì)化特征類型,避免抽取大量缺少應(yīng)用價(jià)值的粗類特征;方法真正落地在行業(yè)生態(tài)中,與服裝檢測指標(biāo)結(jié)合,完成特征詞分類,提高后續(xù)應(yīng)用的針對性。其應(yīng)用對象廣泛,包括消費(fèi)者、服裝企業(yè)、質(zhì)量監(jiān)管部門等。該方法不足之處在于依賴于人工構(gòu)建質(zhì)量特征樹,需及時(shí)動態(tài)更新。另外未考慮隱性特征抽取,這將是課題未來的研究方向之一。