胡慧瑩,張帆
(中國汽車技術(shù)研究中心有限公司,天津 300300)
近年來中國新能源汽車市場飛速發(fā)展,無論是從企業(yè)推出的車型數(shù)量還是保有用戶的數(shù)量都在持續(xù)上漲。根據(jù)中國汽車技術(shù)研究中心有限公司CATARC調(diào)研2020年對中國新能源汽車用戶地調(diào)研,不同用戶的社會特征和購車特征差異很大。在用戶特征具有較大差異的背景下,如果將市場上的所有用戶作為一個整理來研究,用戶的特征和需求會非常分散,不僅不能挖掘出用戶的共性,而且會忽略具有不同特性的用戶。因此進行新能源汽車用戶的人群分類,將具有類似特征的用戶化為一個群體進行研究是非常重要的[1-4]。
目前新能源領(lǐng)域人群分類的方法主要是基于 kmeans聚類,該方法可以很好地對數(shù)值型數(shù)據(jù)進行分類,但是對文本型數(shù)據(jù)的分類效果不明顯,準確率不高。因此,本文提出一種“基于雙通道卷積模型”對人群的分類,該方法是以新能源汽車調(diào)研問卷為數(shù)據(jù)源,利用雙通道卷積模型對問卷的文本數(shù)據(jù)進行人群分類[5-7],該方法可以提高自然語言文本的分類效果,非常有利于對問卷的答案進行有效地分析。
數(shù)據(jù)是本文的基礎(chǔ),本數(shù)據(jù)來自CATARC新能源汽車調(diào)研問卷,通過近幾年的積累,積累了將近10000份樣本問卷,樣本問卷有關(guān)人群的問題及答案如下表1所示,由于篇幅原因,在這里只給出3個示例。
表1 樣本問卷有關(guān)人群的問題及答案
因為每個樣本的答案語句字數(shù)長度以及維度不一致,在這里利用正則表達式把每個樣本答案按照“,”,“。”等標點符號分隔開,目的是“大化小、長化短”,以便于后期計算方便,加快求解速度以及提高模型準確率,分割后的樣本數(shù)據(jù)如下表2所示。
表2 分割后的樣本數(shù)據(jù)
接下來對樣本答案進行分詞,采用的方法是基于python語言和維特比算法來進行分詞,下面介紹一下詞圖、節(jié)點間的距離計算以及維特比算法。
1.3.1 詞圖
對要分詞的語句利用有向無環(huán)圖進行分詞,每一條分支都是可以分詞路徑,比如對第一個樣本答案“表示我已經(jīng)取得成功”這句話進行分詞,那么這句話可以形成的詞圖可以用下面的圖1表示。
圖1 樣本數(shù)據(jù)的詞圖
由圖1可知,每一個分支都是從開始到結(jié)束形成一個有向無環(huán)圖,每個有向無環(huán)圖[8]。
1.3.2 計算節(jié)點之間的距離
在這里以圖 1詞圖中每條邊以二元語法的概率作為距離,那么中文分詞任務(wù)轉(zhuǎn)換為有向無環(huán)圖上的最長路徑問題[9]。為了使理論更加貼近實際工程在文本中分詞使用公式1,將浮點數(shù)概率值連續(xù)相乘轉(zhuǎn)化為負對數(shù)之間的加法。
圖1詞圖多個有向無環(huán)圖計算節(jié)點之間距離,添加計算節(jié)點之間距離的詞圖如下圖2所示。
圖2 計算節(jié)點間距離后的示意圖
1.3.3 詞圖的維特比算法
因為二元語法可以看作隱馬爾科夫模型的特例,只需要將此網(wǎng)中的詞語看作顯狀態(tài),只不過是隱狀態(tài)到顯狀態(tài)的發(fā)射概率為1。表1的樣本數(shù)據(jù)經(jīng)過維特比分詞得到的結(jié)果如表3所示。
對表3樣本中的數(shù)據(jù)給出分類標簽以及相對應(yīng)分詞結(jié)果的標簽,在本文中分為6類人群,維特比分詞后加標簽后的數(shù)據(jù)如下表3所示,由于篇幅原因,在這里只列舉出部分示例。
表3 維特比分詞后加標簽后的數(shù)據(jù)
1.5.1 模型介紹
雙通道中的一個通道指的是語句的輸入及相對應(yīng)的CNN模塊對句子進行卷積、另一個通道是指分詞短語的輸入及相對應(yīng)的 CNN模塊對分詞短語進行卷積,然后對二者的結(jié)果統(tǒng)一進行 softmax多分類操作[10-13],因此而形成雙通道卷積模型。
雙通道卷積模型是一種涉及 CNN的神經(jīng)網(wǎng)絡(luò)的模型,因此研究的內(nèi)容會包括卷積層、池化層和 softmax層等網(wǎng)絡(luò)結(jié)構(gòu),每個CNN模塊由以下五部分組成。
分句后的新句子包括標點符號最長有m個字數(shù),大約有m//2+1個詞語。
(1)原始數(shù)據(jù):因為新句子最長有m//2+1個詞語m個字數(shù),所以詞向量維度為m//2+1,字向量為m,那么整個句子矩陣大小為(m-1)×(m-1)(因為標點符號不參與計算);
(2)第一步:卷積核的區(qū)域大小可以?。╩1,m2,,m3)3種(如圖8,每相似顏色的為一種),每種又有兩個不同的取值(因為是雙通道模型,每個通道對應(yīng)一個取值),所以一共是有6個取值,即6個不同的卷積模板;
(3)第二步:特征模板制作,即數(shù)學(xué)中的積計算;即(m+2-mk(k=1,2,3)),計算出來是特征模板的大小,一共有3類(因為是雙通道,所以每類兩個)共有6個;
(4)第三、四步:因為用不同大小的卷積核獲取到的特征模板大小也不一樣,為了解決這個問題,添加一層最大池化層,即選取一個最大值,然后相同大小的組合在一起形成特征向量;
(5)第五步:基于特征向量利用邏輯回歸的多分類模型softmax進行分類。
注意:m的取值由分割后的語句決定,不需要利用模型來求出。
1.5.2 確定最佳參數(shù)
前文介紹模型以及模型的相關(guān)參數(shù),本小結(jié)來確定m1、m2、m3的參數(shù),在這里使用800樣本作為訓(xùn)練集,目的是訓(xùn)練出模型地最佳參數(shù);使用200樣本作為測試集,目的是測試模型的可靠性。利用控制變量法和損失函數(shù)在確定最佳參數(shù),模型經(jīng)過控制變量法訓(xùn)練之后,經(jīng)過10次迭代后確定最佳參數(shù):m1取值2、m2取值3、m3取值4。
經(jīng)過前文確定了模型及模型地最佳參數(shù),可以通過此模型對新的數(shù)據(jù)實現(xiàn)自動化分類,總體的正確率達到了80%左右,因為篇幅原因,下表4只給出了部分數(shù)據(jù)的預(yù)測結(jié)果。
表4 部分數(shù)據(jù)的預(yù)測結(jié)果
本模型正確率達到80%左右,基本可以達到企業(yè)的要求和目的,為了精益求精,文本后期可以增加多個卷積層來優(yōu)化此模型,或者增加多個樣本量加大模型訓(xùn)練基數(shù),以此來提高模型的精度。