劉亞波,吳秋軒
(杭州電子科技大學(xué)自動(dòng)化學(xué)院,浙江 杭州 310018)
在政府采購(gòu)電子化的趨勢(shì)下,發(fā)揮基于機(jī)器學(xué)習(xí)的大數(shù)據(jù)分析優(yōu)勢(shì),對(duì)電商大數(shù)據(jù)進(jìn)行同一性標(biāo)定,即在政府采購(gòu)海量電商大數(shù)據(jù)中找出同一種商品,對(duì)提升政府采購(gòu)決策水平和效率具有重要意義[1]。同一性標(biāo)定問(wèn)題實(shí)質(zhì)上是一個(gè)短文本相似度計(jì)算問(wèn)題,但在有些實(shí)際應(yīng)用場(chǎng)合,對(duì)標(biāo)定準(zhǔn)確率和標(biāo)定速度均有較高要求。
在短文本相似度計(jì)算方面,Ho等[2]基于離散小波變換將文本轉(zhuǎn)換成DNA序列,利用歐幾里得距離計(jì)算已序列化文本之間的相似度。但是,文本向量化解釋性不強(qiáng),Yao等[3]提出了基于改進(jìn)長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)LSTM(Long Short-Term Memory)的短文本相似度計(jì)算方法,并通過(guò)其實(shí)現(xiàn)的歸一算法來(lái)避免梯度消失。僅通過(guò)余弦距離計(jì)算相似度無(wú)泛化能力,馬慧芳等[4]通過(guò)加權(quán)計(jì)算將不同詞項(xiàng)內(nèi)外共現(xiàn)距離相關(guān)度與強(qiáng)類別特征相融合用于計(jì)算短文本相似度,但考慮的語(yǔ)義和語(yǔ)境信息有限。Wu等[5]將基于BTM(Biterm Topic Model)主題建模并采用JS(Jensen-Shannon)散度計(jì)算文本相似度和基于詞表征全局向量GloVe(Global Vectors for word representation)詞向量建模并用改進(jìn)詞重WMD(Word Mover’ Distance)衡量文本相似度進(jìn)行線性融合,作為距離函數(shù)實(shí)現(xiàn)K-means聚類,該方法在微博短文本上具有良好表現(xiàn),但建模過(guò)程與計(jì)算相對(duì)復(fù)雜。Flisar等[6]基于DBpedia Spotlight框架來(lái)識(shí)別短文本中的相關(guān)概念進(jìn)而實(shí)現(xiàn)短文本分類,但提取大量不相關(guān)特征降低了以相似度計(jì)算來(lái)實(shí)現(xiàn)分類任務(wù)的性能。Yang等[7]通過(guò)組合語(yǔ)料庫(kù)中單詞對(duì)的全局權(quán)重和在自身短文本中的局部權(quán)重來(lái)計(jì)算短文本相似度,對(duì)于全局和局部共現(xiàn)少的短文本,其樣本利用率低。Lee等[8]將詞嵌入模型運(yùn)用于保險(xiǎn)分析,提取索賠短文本描述特征,經(jīng)詞嵌入模型處理后進(jìn)行相似度計(jì)算進(jìn)而分類,具有良好的效果,但面對(duì)較長(zhǎng)文本描述以及一詞多義時(shí)有一定障礙。García-Méndez等[9]為實(shí)現(xiàn)個(gè)人銀行交易文本描述分類,經(jīng)分詞、除去停詞等預(yù)處理,基于Jaccard距離計(jì)算的文本相似度結(jié)果來(lái)減少訓(xùn)練樣本,進(jìn)而使用SVM實(shí)現(xiàn)分類,相似度計(jì)算方法準(zhǔn)確率低,而且訓(xùn)練樣本數(shù)量大時(shí)SVM訓(xùn)練速度慢。Maurya等[10]為降低不同發(fā)票文本描述處理成本和時(shí)間,針對(duì)在線反饋的格式不同但內(nèi)容相同的文本描述,基于相似性進(jìn)行排名,而針對(duì)不同內(nèi)容文本描述,采用分類相似度計(jì)算,由于反饋次數(shù)多,導(dǎo)致并未顯著降低整體時(shí)間成本。
本文考慮到以上工作的不足,提出了一種電商大數(shù)據(jù)同一性標(biāo)定新模型。該模型由文本分詞、重要性排序和相似度計(jì)算等3個(gè)子模型串聯(lián)組成,充分結(jié)合了級(jí)聯(lián)結(jié)構(gòu)和深度循環(huán)神經(jīng)網(wǎng)絡(luò)的優(yōu)勢(shì)。與傳統(tǒng)的同一性標(biāo)定相比,本文模型在重要性排序和相似度計(jì)算子模型中采用LSTM[11]作為分類器,不存在單獨(dú)的特征提取過(guò)程。另外,在模型中引入了分詞優(yōu)化、GloVe詞向量[12]、二分查找和詞序列語(yǔ)義校驗(yàn)等技術(shù),確保了面對(duì)易混淆商品時(shí)能標(biāo)定出同一商品,提升了標(biāo)定速度、準(zhǔn)確率和泛化能力。
本文的研究意義體現(xiàn)于:(1)嘗試構(gòu)建3級(jí)級(jí)聯(lián)網(wǎng)絡(luò)模型,利用長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)特性,提高同一性標(biāo)定的準(zhǔn)確率。(2)采用GloVe詞向量技術(shù)進(jìn)行每一級(jí)循環(huán)網(wǎng)絡(luò)模型的優(yōu)化訓(xùn)練,提高訓(xùn)練樣本利用率。(3)引入二分查找和詞序列語(yǔ)義校驗(yàn)等技術(shù),提高模型的標(biāo)定速度和泛化能力。
本文提出一種基于LSTM的同一性標(biāo)定模型。該模型分為3個(gè)子模型:分詞子模型、LSTM重要性排序子模型(LSTM importance sub-model)和LSTM相似度計(jì)算子模型(LSTM similarity sub-model),整體結(jié)構(gòu)如圖1所示。
Figure 1 Structure of the identity calibration model based on LSTM
供貨商更新的商品B能否上架到政府采購(gòu)平臺(tái),取決于平臺(tái)下歷史庫(kù)中是否存在商品A,其具體參數(shù)與B一模一樣,若不相同則B無(wú)法上架。商品B的文本描述被分詞子模型處理成詞序列,通過(guò)LSTM重要性排序子模型篩選出B的重要詞序列。同時(shí),商品A也完成了上述操作步驟,商品A和B的重要詞序列輸入到LSTM相似度計(jì)算子模型,輸出A和B的相似程度,根據(jù)閾值來(lái)標(biāo)定二者是否為同一商品,進(jìn)而決定B能否上架。
分詞處理是本文同一性標(biāo)定模型研究的基礎(chǔ),它會(huì)直接影響文本向量化,影響模型訓(xùn)練進(jìn)而決定模型輸出結(jié)果?,F(xiàn)語(yǔ)料庫(kù)規(guī)格龐大,人工進(jìn)行分詞處理效率低下。為統(tǒng)一規(guī)范分詞,在語(yǔ)言技術(shù)平臺(tái)LTP(Language Technology Platform)[13]基礎(chǔ)上構(gòu)建分詞子模型來(lái)完成此預(yù)處理過(guò)程。
主要思路如下:(1)將商品的文本描述分割成關(guān)鍵詞;(2)根據(jù)實(shí)際需求構(gòu)建一個(gè)強(qiáng)制詞典;(3)從詞典生成正則表達(dá)式,基于模糊匹配算法快速查找切分后的詞;(4)如果不同詞以組合形式存在于強(qiáng)制詞典中,則將詞進(jìn)行合并,否則跳過(guò)處理下一個(gè)商品。分詞子模型的優(yōu)勢(shì)在于能將錯(cuò)誤分割的詞進(jìn)行合并,并保證同一文本多個(gè)不能拆分的詞也能正確合并。
表1僅展示了筆記本電腦、單反相機(jī)、復(fù)印機(jī)這3類商品的標(biāo)題和LTP以及本文分詞模型的分詞結(jié)果。對(duì)“聯(lián)想(Lenovo)小新Pro13.3英寸全面屏超輕薄筆記本電腦(標(biāo)壓銳龍R5-3550H 16G 512G 2.5K QHD 100%sRGB)銀”這條筆記本電腦商品標(biāo)題而言,“小新Pro”顯然要比“小”和“新”這2個(gè)單獨(dú)的詞更符合分詞要求,而且本文分詞子模型將“Pro13.3”和“英寸”這種不太合理的分詞轉(zhuǎn)換成“小新Pro”和“13.3英寸”。對(duì)單反相機(jī)和復(fù)印機(jī)這2類商品標(biāo)題來(lái)說(shuō),將“單反”和“相機(jī)”組合成的“單反相機(jī)”和“多”與“功能”合并成的“多功能”等關(guān)鍵詞更有表征能力。綜上,本文分詞子模型使各類商品的分詞結(jié)果更能準(zhǔn)確表征商品信息,為后續(xù)LTSM重要性排序和相似度計(jì)算子模型研究提供良好的實(shí)驗(yàn)數(shù)據(jù)。
2.3.1 LSTM簡(jiǎn)介
對(duì)商品文本描述而言,詞或短語(yǔ)順序不同,整個(gè)語(yǔ)義也會(huì)隨之改變。循環(huán)神經(jīng)網(wǎng)絡(luò)RNN(Recurrent Neural Network)[14]能夠很好地處理此類序列信息。但是,RNN只有短期記憶,沒(méi)有長(zhǎng)期記憶。深度學(xué)習(xí)專家Schmidhuber提出了LSTM,專門(mén)用于解決RNN的長(zhǎng)期依賴問(wèn)題。因而本文基于LSTM來(lái)構(gòu)建重要性排序和相似度計(jì)算子模型。
2.3.2 GloVe詞向量化技術(shù)
考慮到無(wú)法直接輸入原始文本到神經(jīng)網(wǎng)絡(luò),此子模型采用詞表征全局向量GloVe實(shí)現(xiàn)文本向量化,實(shí)現(xiàn)步驟如下所示:
(1)建立共現(xiàn)矩陣X,矩陣中的Xij表示當(dāng)前商品詞序列中的第i個(gè)詞與上下文詞序列中的第j個(gè)詞在特定大小的上下文窗口內(nèi)共同出現(xiàn)的次數(shù)。
(2)詞向量和共現(xiàn)矩陣之間的近似關(guān)系可以用式(1)表示:
(1)
(3)為使詞向量wi,wj與共現(xiàn)次數(shù)Xij具有良好的一致性,即詞向量蘊(yùn)含共現(xiàn)次數(shù)信息,針對(duì)上述的詞向量表達(dá)式構(gòu)造損失函數(shù),目的在于迭代訓(xùn)練使二者盡可能接近:
(2)
其中,V表示詞序列中詞的個(gè)數(shù)。
此損失函數(shù)只是在最基本的均方損失的基礎(chǔ)上增加了一個(gè)權(quán)重函數(shù)f(Xij),采用了如式(3)所示的權(quán)重分段函數(shù):
Table 1 Comparison of word segmentation sub-model results
(3)
其中,α=0.75,xmax=100。當(dāng)詞序列中詞i與詞j的共現(xiàn)次數(shù)Xij小于最大共現(xiàn)次數(shù)xmax時(shí),f(Xij)遞增;當(dāng)Xij大于xmax時(shí),f(Xij)=1,不再變化,即保證詞序列中同時(shí)出現(xiàn)次數(shù)多的單詞的權(quán)重大于很少同時(shí)出現(xiàn)的單詞,且權(quán)重也不會(huì)過(guò)大。
2.3.3 在子模型中引入GloVe詞向量
將商品的文本描述被分詞子模型處理成的詞序列作為L(zhǎng)STM重要性排序子模型的輸入。圖2是LSTM重要性排序子模型的結(jié)構(gòu),商品詞序列中的wordi均被轉(zhuǎn)換成GloVe詞向量,以LSTM構(gòu)建的分類器預(yù)測(cè)該詞是詞序列中重要詞的概率。
Figure 2 Structure of LSTM importance ranking sub-model
針對(duì)標(biāo)題如“聯(lián)想(Lenovo)小新Pro13.3英寸全面屏超輕薄筆記本電腦(標(biāo)壓銳龍R5-3550H 16G 512G 2.5K QHD 100%sRGB)銀”的商品,利用LSTM重要性排序子模型篩選出其重要詞序列的步驟如下所示:首先將分詞子模型處理得到的商品詞序列中的詞全轉(zhuǎn)換成GloVe詞向量;然后獲得詞序列中每一個(gè)詞的重要程度,例如針對(duì)“16G”一詞,依次輸入從詞序列開(kāi)始到當(dāng)前所有詞的向量,將其共同建模到同一數(shù)組,此數(shù)組充分包含該詞及其全部上文語(yǔ)義信息,能有效提高重要詞預(yù)測(cè)的準(zhǔn)確率,并由Softmax層輸出“16G”為重要詞的概率,其它詞的處理方式類似;接下來(lái)通過(guò)概率對(duì)所有詞重要程度排序,根據(jù)事先設(shè)定的閾值,便可篩選出此商品中的重要性大的詞;最后將該商品的重要詞序列輸出到LSTM相似度計(jì)算子模型。
2.4.1 LSTM相似度計(jì)算子模型概述
由LSTM重要性排序子模型得到了商品的重要詞序列后,只需對(duì)不同商品重要詞序列進(jìn)行相似度計(jì)算,便可在電商大數(shù)據(jù)中標(biāo)定出同一種商品。LSTM相似度計(jì)算子模型的結(jié)構(gòu)如圖3所示。
Figure 3 Structure of LSTM similarity calculation sub-model
LSTM相似度計(jì)算子模型的學(xué)習(xí)樣本,一部分來(lái)源于LSTM重要性排序子模型的輸出,另一部分來(lái)源已有的先驗(yàn)知識(shí)。商品A、B的文本描述重要詞序列相似度計(jì)算步驟如下所示:
步驟1商品A、B的文本描述中重要詞數(shù)分別為na,nb,則最短序列長(zhǎng)度n=min(na,nb);
步驟2對(duì)商品A、B的文本描述中重要詞依次進(jìn)行相似度計(jì)算,將重要詞對(duì)輸入到LSTM分類器,分類器輸出該詞對(duì)相似的概率,進(jìn)行計(jì)算的次數(shù)為M=na×nb;
步驟3若M次計(jì)算中有m1次LSTM分類器輸出概率大于或者等于事先設(shè)定的閾值,則商品A、B的文本描述中有m1對(duì)重要詞相似。若m1≥n,則可標(biāo)定商品A、B為同一種商品。
經(jīng)實(shí)驗(yàn)發(fā)現(xiàn),采用詞袋模型BOW(Bag Of Words)向量化重要詞序列,效果最為理想。由于BOW未考慮每個(gè)詞在序列中的重要程度,因此引入詞頻-逆文檔頻率TF-IDF(Term Frequency-Inverse Document Frequency)計(jì)算詞序列中每個(gè)詞的權(quán)重大小。詞序列總數(shù)為N,詞序列d中的詞t的TF-IDF權(quán)重估算公式如式(4)所示:
(4)
其中,tf(t,d)為詞t在詞序列d中的頻次,而df(d,t)為包含詞t的詞序列d的數(shù)量。
2.4.2 在子模型中引入詞序列語(yǔ)義校驗(yàn)
雖然TF-IDF能彌補(bǔ)BOW未考慮詞序列中各詞的重要程度的不足,但對(duì)形如“ABBC”和“BBAC”這種二元詞組,其TF-IDF詞向量是相同的,導(dǎo)致LSTM相似度計(jì)算子模型的計(jì)算結(jié)果也相同,這是因?yàn)門(mén)F-IDF并未考慮詞序列中各詞的語(yǔ)義信息。
針對(duì)TF-IDF上述不足,本文引入了詞序列語(yǔ)義校驗(yàn)。在向量化的詞序列后面加上一位語(yǔ)義校驗(yàn)位,其作用在于判斷需要進(jìn)行相似度計(jì)算的二元詞組的語(yǔ)義是否一致。語(yǔ)義校驗(yàn)結(jié)果如表2所示,形如“ABBC”和“BBAC”這種二元詞組雖然詞向量相同,其語(yǔ)義檢驗(yàn)位卻為“False”。若作為學(xué)習(xí)樣本,此二元詞組被判定為負(fù)樣本。形如“ABBC”和“ABC”這種二元詞組詞向量不相同,語(yǔ)義校驗(yàn)位為“True”,作為學(xué)習(xí)樣本,根據(jù)先驗(yàn)知識(shí)和電商大數(shù)據(jù)同一性標(biāo)定任務(wù)需求,此二元詞組被判定為正樣本。
Table 2 Results of word sequence semantic verification
2.4.3 在子模型中引入二分法查找
政府采購(gòu)平臺(tái)的歷史庫(kù)和供貨商更新庫(kù)中商品數(shù)量巨大,同一性標(biāo)定計(jì)算量大。為提升在海量商品數(shù)據(jù)中標(biāo)定出同一種商品的速度,本文在LSTM相似度計(jì)算子模型中引入了二分法查找。
假設(shè)供貨商更新庫(kù)中的商品均能在政采平臺(tái)的歷史庫(kù)中標(biāo)定出來(lái),利用二分法查找,則歷史庫(kù)中某一商品平均成功的查找次數(shù)為庫(kù)中所有商品查找次數(shù)和與查找概率的乘積,如式(5)所示:
(5)
其中,n表示商品總數(shù),h表示當(dāng)前商品的查找次數(shù)。Pi表示商品i的查找概率,Ci表示商品i的查找次數(shù)。
當(dāng)查找次數(shù)最大時(shí),即h=log2n+1,二分查找的時(shí)間復(fù)雜度為T(mén)(n)=O(lgn)。若不采用二分法查找,其計(jì)算時(shí)間復(fù)雜度為T(mén)(n)=O(n),二者相比可見(jiàn)二分查找法大幅降低了LSTM相似度計(jì)算子模型的計(jì)算時(shí)間復(fù)雜度。特別需要指出的是,此二分法查找法是針對(duì)政府采購(gòu)平臺(tái)的歷史庫(kù)和供貨商更新庫(kù)中所有的商品,因此當(dāng)商品總數(shù)量n巨大時(shí),提升的查找速度是非??捎^的。
電商網(wǎng)站具有不定時(shí)更新的特點(diǎn),同時(shí)不同網(wǎng)站之間也存在差異,基于Python編寫(xiě)的商品信息獲取程序,能避免網(wǎng)站差異性,定時(shí)獲取商品信息,從而保證商品信息實(shí)時(shí)性。本文一共獲取了筆記本電腦、單反相機(jī)和復(fù)印機(jī)這3種品類共8.5萬(wàn)條商品標(biāo)題和商品詳細(xì)參數(shù),因而擁有了一定規(guī)模的電商領(lǐng)域語(yǔ)料庫(kù)。本文對(duì)商品的文本描述進(jìn)行了去除無(wú)用標(biāo)點(diǎn)符號(hào)等文本預(yù)處理,以方便在此基礎(chǔ)上進(jìn)行模型的研究和實(shí)驗(yàn)。
3.2.1 LSTM重要性排序子模型樣本制備
商品原始數(shù)據(jù)主要來(lái)源于商品信息獲取程序。將分詞子模型處理后得到的商品詞序列,作為L(zhǎng)STM重要性排序子模型學(xué)習(xí)樣本,根據(jù)先驗(yàn)知識(shí)和對(duì)商品的深入了解,將最能表征此商品的詞標(biāo)注為重要;大部分商品均包含的或不具表征能力的詞等標(biāo)注為不重要。
2.2節(jié)提及的3類商品標(biāo)題分詞處理得到的詞序列的標(biāo)注結(jié)果如表3所示,其中樣本標(biāo)簽為1表示重要,樣本標(biāo)簽為0表示不重要?!肮P記本電腦”是筆記本電腦類中的通用詞,因而不重要;“EOS 800D”是單反相機(jī)類中一特定商品的型號(hào),故重要;而“新款標(biāo)配”不具有表征復(fù)印機(jī)的能力,所以也不重要。
Table 3 Product segmentation
3.2.2 LSTM相似度計(jì)算子模型樣本制備
LSTM相似度計(jì)算子模型的學(xué)習(xí)樣本一部分來(lái)源于先驗(yàn)知識(shí)庫(kù),另外一部分是LSTM重要性排序子模型輸出組成的重要詞二元組。構(gòu)建此子模型的學(xué)習(xí)樣本庫(kù)的方式如表4所示,其中Label為1代表相似,Label為0代表不相似。
Table 4 Building LSTM similarity calculation sub-model learning sample library
正樣本包括先驗(yàn)知識(shí)庫(kù)中的相似詞二元組和LSTM重要性排序子模型輸出的相似重要詞二元組,多是一些型號(hào)、操作系統(tǒng)和品牌等重要詞的簡(jiǎn)寫(xiě)或者別稱等,這些二元詞組的格式全然不相同且涉及種數(shù)繁多,因此本文采用監(jiān)督學(xué)習(xí)來(lái)代替費(fèi)時(shí)費(fèi)力的人工判定方式。負(fù)樣本包括先驗(yàn)知識(shí)庫(kù)中的易混淆詞二元組和LSTM重要性排序子模型輸出的不相似重要詞二元組,主要是同一系列下編號(hào)很相似的型號(hào),如“R5-3550H”和“R5-3650H”;寫(xiě)法大致統(tǒng)一卻不相同的操作系統(tǒng),如“Windows8”和“Win10”等傳統(tǒng)方法難以區(qū)分開(kāi)的二元組。
考慮到基于LSTM的同一性標(biāo)定模型包含了2個(gè)用法不同的神經(jīng)網(wǎng)絡(luò)模型,樣本庫(kù)的量大而且還需要補(bǔ)充新樣本,完全靠本機(jī)訓(xùn)練測(cè)試,過(guò)于耗時(shí)。本文采用如圖4所示的訓(xùn)練測(cè)試策略。小型學(xué)習(xí)樣本庫(kù)采用本地訓(xùn)練測(cè)試,大型樣本庫(kù)采用華為云訓(xùn)練和本機(jī)測(cè)試。
Figure 4 Two training methods of identity calibration model based on LSTM
3.3.1 LSTM重要性排序子模型訓(xùn)練
LSTM重要性排序子模型采用監(jiān)督學(xué)習(xí)訓(xùn)練方式,所用的正負(fù)樣本的比例為3∶1,采用3萬(wàn)條正樣本和1萬(wàn)條負(fù)樣本進(jìn)行優(yōu)化訓(xùn)練LSTM。所有的詞序列樣本均被表征成GloVe詞向量。此外,設(shè)定的目標(biāo)函數(shù)為二元交叉熵BCE(Binary Cross Entropy)函數(shù),表達(dá)式如式(6)所示:
lg(1-pk)]
(6)
其中,yk和pk分別表示第k個(gè)樣本對(duì)應(yīng)的標(biāo)簽和被預(yù)測(cè)成正樣本的概率;m表示每次訓(xùn)練迭代樣例個(gè)數(shù);激活函數(shù)全部采用ReLU激活函數(shù)[15],對(duì)應(yīng)的表達(dá)式如式(7)所示:
f(z)=max(0,z)
(7)
ReLU可由f(z)=lg(1+ez)逼近,ReLU激活函數(shù)用于LSTM處理自然語(yǔ)言問(wèn)題取得了良好效果。另外學(xué)習(xí)率從0.01開(kāi)始下降,每訓(xùn)練100次降為原來(lái)的1/10。由于訓(xùn)練數(shù)據(jù)數(shù)量較大,訓(xùn)練的迭代次數(shù)設(shè)為100次。最后訓(xùn)練驗(yàn)證集的準(zhǔn)確率(Accuracy)曲線和損失(Loss)曲線如圖5所示。在LSTM重要性排序子模型訓(xùn)練次數(shù)達(dá)到20次時(shí),重要性排序準(zhǔn)確率逐步上升,準(zhǔn)確率在0.991~0.993波動(dòng);損失曲線在20次左右波動(dòng)范圍縮小,雖未飽和但也在可接受范圍之內(nèi)。
Figure 5 Training results curve of LSTM importance ranking sub-model
3.3.2 LSTM相似度計(jì)算子模型訓(xùn)練
LSTM相似度計(jì)算子模型的訓(xùn)練同樣采用監(jiān)督學(xué)習(xí)方式,并且目標(biāo)函數(shù)和激活函數(shù)均與重要性排序子模型一樣。此模型的輸入張量維度高于前者,因此訓(xùn)練的各參變量有所改變,此模型還利用了帶有語(yǔ)義校驗(yàn)位的IF-IDF詞向量來(lái)表征樣本詞序列。用正負(fù)樣本比例為3∶1的學(xué)習(xí)樣本訓(xùn)練LSTM相似度計(jì)算子模型,訓(xùn)練的迭代次數(shù)(epoch)為100次。最后訓(xùn)練驗(yàn)證集的準(zhǔn)確率Accuracy曲線和損失Loss曲線如圖6所示。
Figure 6 Training results curve of LSTM similarity calculation sub-model
由圖6可知:訓(xùn)練次數(shù)在達(dá)到100次時(shí),LSTM相似度計(jì)算子模型準(zhǔn)確率曲線趨近飽和,此刻準(zhǔn)確率達(dá)到最大值;損失曲線在100次左右就基本只在0.01~0.02小幅度波動(dòng)。
為了驗(yàn)證本文基于LSTM同一性標(biāo)定模型在電商大數(shù)據(jù)上的性能,特設(shè)置2組實(shí)驗(yàn)進(jìn)行測(cè)試分析。第1組為2個(gè)子模型與傳統(tǒng)模型的對(duì)比實(shí)驗(yàn);第2組實(shí)驗(yàn)在測(cè)試集上驗(yàn)證本文模型的性能。實(shí)驗(yàn)在GPU 1.2 GHz、顯存12 GB的華為云服務(wù)器上進(jìn)行訓(xùn)練,在CPU 2.4 GHz、內(nèi)存8 GB的Windows 10專業(yè)版64位操作系統(tǒng)的個(gè)人計(jì)算機(jī)上進(jìn)行測(cè)試,深度學(xué)習(xí)框架為Keras+TensorFlow,軟件編程環(huán)境為Python 3.6.6。
本實(shí)驗(yàn)的目的是測(cè)試和展現(xiàn)本文的同一性標(biāo)定模型與傳統(tǒng)模型相比在標(biāo)定準(zhǔn)確率、速度和泛化能力方面的提升。測(cè)試數(shù)據(jù)來(lái)自不同電商網(wǎng)站上獲取的商品標(biāo)題與詳細(xì)參數(shù)。實(shí)驗(yàn)分別給出LSTM重要性排序子模型和傳統(tǒng)模型的準(zhǔn)確率對(duì)比結(jié)果,LSTM相似度計(jì)算子模型與傳統(tǒng)模型相比,其準(zhǔn)確率、標(biāo)定速度和LSTM相似度計(jì)算子模型泛化能力的提升等。
在LSTM重要性排序子模型與傳統(tǒng)模型對(duì)比實(shí)驗(yàn)中,將此子模型與RNN模型(RNN model)和未采用GloVe詞向量的LSTM基本模型(簡(jiǎn)稱為No GloVe model)的準(zhǔn)確率進(jìn)行比較,結(jié)果如圖7a所示。類似地,在LSTM相似度計(jì)算子模型與傳統(tǒng)模型對(duì)比實(shí)驗(yàn)中,與單LSTM相似度計(jì)算模型(single LSTM model)和未帶有語(yǔ)義校驗(yàn)位LSTM相似度計(jì)算子模型(簡(jiǎn)稱為no Parity model)的準(zhǔn)確率對(duì)如圖7b所示。
Figure 7 Accuracy comparison of the two sub-models and the traditional models
LSTM相似度計(jì)算子模型與傳統(tǒng)未帶有語(yǔ)義校驗(yàn)位的子模型泛化能力對(duì)比如表5所示,LSTM相似度計(jì)算子模型與未引入二分法查找子模型的標(biāo)定速度對(duì)比如表6所示。
由圖7a知,在處理不同網(wǎng)站上書(shū)寫(xiě)格式不統(tǒng)一的商品詞序列時(shí),本文LSTM重要性排序子模型的準(zhǔn)確率遠(yuǎn)高于RNN模型和未采用GloVe詞向量的基礎(chǔ)LSTM模型的準(zhǔn)確率。由圖7b可知,本文LSTM相似度計(jì)算子模型的準(zhǔn)確率遠(yuǎn)高于單LSTM相似度計(jì)算模型的準(zhǔn)確率。未加入語(yǔ)義校驗(yàn)位的子模型準(zhǔn)確率雖然略低于LSTM相似度計(jì)
Table 5 Comparison of generalization ability between LSTM similarity sub-model and traditional model
Table 6 Comparison of model calibration speed before and after introducing binary search
算子模型的準(zhǔn)確率,但是由表5可知,未加入語(yǔ)義校驗(yàn)位的子模型會(huì)將形如“R5-3550H”與“R3-5550H”的詞二元組誤判為相似,這是因?yàn)槠洳⑽纯紤]語(yǔ)義,識(shí)別不出二者實(shí)際上表示不同的型號(hào)。而本文的LSTM相似度計(jì)算子模型考慮了語(yǔ)義,不會(huì)出現(xiàn)上述誤判。
由表6可見(jiàn),未引入二分法查找的子模型,計(jì)算出一對(duì)商品詞序列中所有詞組成的詞二元組相似度需要15 s,而引入二分法查找之后只需要1 s。LSTM相似度計(jì)算子模型在計(jì)算速度上有明顯的提升,因而本文提出的基于LSTM同一性標(biāo)定模型在電商大數(shù)據(jù)中標(biāo)定出同一種商品的速度也會(huì)隨之提高。
為進(jìn)一步驗(yàn)證本文模型性能,分別測(cè)試了LSTM重要性排序子模型和LSTM相似度計(jì)算子模型在測(cè)試集上的表現(xiàn),測(cè)試結(jié)果如圖8所示。其中LSTM重要性排序子模型測(cè)試集由8 918種商品文本描述經(jīng)分詞處理成的詞序列組成,重要性子模型能夠正確篩選8 751種商品文本描述中的重要詞,誤判的只有167種,預(yù)測(cè)結(jié)果與人工標(biāo)注相同的有4 029對(duì),準(zhǔn)確率達(dá)到了97%。
Figure 8 Performance of the proposed models on test sets
現(xiàn)對(duì)政府采購(gòu)平臺(tái)的歷史庫(kù)中抽出的77條筆記本電腦數(shù)據(jù),和供貨商更新庫(kù)取出的90條筆記本電腦數(shù)據(jù)組成的6 930例艱難樣本進(jìn)行同一性標(biāo)定。所謂艱難樣本是指同一品牌系列下型號(hào)只有微小差異而且配置參數(shù)非常接近的商品,或者是具體參數(shù)相同文本描述完全不一致的商品等,對(duì)艱難樣本的同一性標(biāo)定難度比一般樣本要大。表7展示是以筆記本電腦商品為例,6 930例艱難樣本中的某一例正樣本和負(fù)樣本,其中標(biāo)簽為1代表同一種商品,標(biāo)簽為0代表非同一種商品。
Table 7 Examples of hard samples for laptops
表7中正樣本其實(shí)是同一種商品,但這對(duì)商品文本描述不相同,它們字符串排列順序不一致,字符串長(zhǎng)度不相同,字母大小寫(xiě)不統(tǒng)一,同一參數(shù)的格式不統(tǒng)一(包括縮寫(xiě)、簡(jiǎn)寫(xiě)、人為可接受的誤寫(xiě)、中文或英文表達(dá)但語(yǔ)義相同、由先驗(yàn)知識(shí)才可判定)。如“聯(lián)想”與“Lenovo”和“1年保修”與“一年保修”語(yǔ)義一致,“14.0”與“14英寸”代表同一屏幕尺寸,“集成”與“集顯”代表集成顯卡,“I5-8250U”與“i58250u”代表同一CPU型號(hào)。負(fù)樣本不是同一種商品,但這對(duì)商品文本描述很相近,主機(jī)型號(hào)“ 440 G5-20014209059”與“ 440 G5-20014208159”只有細(xì)微差異,內(nèi)存容量雖然都是8 GB但類型不相同,分別為“DDR4”和“DDR3”,“I5-8250U”和“I5-8250”雖然只有微小區(qū)別,但根據(jù)先驗(yàn)知識(shí)二者的CPU型號(hào)并不相同。采用人為標(biāo)定這些易混淆的艱難樣本也具有一定難度,但本文模型能正確標(biāo)定。從圖8可以看出,本文模型(Identity calibration model)標(biāo)定正確的艱難商品共有6 798例。
針對(duì)政府采購(gòu)平臺(tái)品類繁雜且書(shū)寫(xiě)格式無(wú)統(tǒng)一規(guī)范的電商大數(shù)據(jù),本文提出了一種基于長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)(LSTM)的同一性標(biāo)定新模型。該模型將深度學(xué)習(xí)循環(huán)神經(jīng)網(wǎng)絡(luò)與級(jí)聯(lián)思想相結(jié)合,逐級(jí)進(jìn)行分詞處理、重要性排序和相似度計(jì)算來(lái)標(biāo)定出同一種商品。通過(guò)理論分析和實(shí)驗(yàn)得到如下結(jié)論:(1)本模型采用二分法查找后,標(biāo)定速度有一定的提升;(2)詞序列轉(zhuǎn)換成GloVe詞向量后,樣本利用率提高;(3)加入語(yǔ)義校驗(yàn)后,標(biāo)定泛化能力增強(qiáng);(4)本模型對(duì)于政府采購(gòu)平臺(tái)上筆記本電腦這一類商品的同一性標(biāo)定具有較高的準(zhǔn)確率;(5)本模型對(duì)于筆記本電腦這一類商品的艱難樣本標(biāo)定準(zhǔn)確率達(dá)98%。
下一步將會(huì)把此模型運(yùn)用于復(fù)印機(jī)和單反相機(jī)等品類商品的同一性標(biāo)定,以增強(qiáng)模型處理不同商品的通用性。另一方面擬利用哈希查找、雙向編碼器表征量BERT(Bidirectional Encoder Representations from Transformers)[16]文本向量化等,進(jìn)一步提高模型的準(zhǔn)確率、標(biāo)定速度、樣本利用率和泛化能力等。