丁建立,李 洋,王懷超
(中國民航大學 計算機科學與技術(shù)學院,天津 300300)
隨著民航領(lǐng)域的快速發(fā)展,民航客流量的不斷攀升,不文明旅客的數(shù)量也不斷增加,不文明旅客數(shù)據(jù)庫逐漸形成規(guī)模。如何對民航不文明旅客行為進行有效的監(jiān)控與分析;如何建立一套可量化、可測量的指標體系;通過社會不文明人員與民航不文明旅客進行相似性分析,來預測從事民航活動的社會人員發(fā)生不文明行為的潛在程度,對不文明旅客進行有效的監(jiān)控,便于輔助航空公司對旅客的管理決策和服務政策制定已經(jīng)成為民航業(yè)亟待解決的問題。
目前國內(nèi)外使用文本挖掘技術(shù)對于民航不文明旅客的研究較少,但在犯罪偵查項目中有所應用。亞利桑那州大學和警察機構(gòu)建立的犯罪偵查項目Coplink和Recap,采用命名實體抽取方法對犯罪敘述報告的實體進行識別。此外運用文本挖掘工程結(jié)合犯罪規(guī)范詞匯,從犯罪記錄和目擊者的敘述中提取相關(guān)實體,通過聚類方法和短文本相似性分析來匹配犯罪過程。目前對于犯罪或者不文明行為的分析主要是通過文本相似性度來進行研究。
為了達到對旅客有效監(jiān)控的目的,實現(xiàn)對從事民航活動旅客發(fā)生不文明行為潛在程度的預測,本文采用相似度匹配算法對不文明人員的民航行為和社會行為進行度量,并將不文明旅客的處罰規(guī)則特征引入了計算模型,針對不同行為間的隱式關(guān)系進行了挖掘,刻畫不文明人員特征,實現(xiàn)旅客潛在不文明水平的預測,維護航空安全。
目前國內(nèi)外對文本相似度的研究主要集中在對文本特征題提取和對比分析方面,通過統(tǒng)計文本中的TF-IDF(term frequency-inverse)值構(gòu)成文本特征向量,并運用卷積神經(jīng)網(wǎng)絡,和深度學習等方法對文本進行訓練,計算出文本的相似度值。
為了提高文本相似度計算的性能,Tian等[1]提出了具有多種文本特征的句子對匹模型,使用對齊特征(alignment feature)計算句子的語義相似性,但該方法僅考慮了兩個句子間同詞的共現(xiàn),忽略了文本上下文的聯(lián)系產(chǎn)生的影響。武永亮等[2]提出了文本關(guān)鍵詞尋優(yōu)算法,考慮了關(guān)鍵詞比例增加的臨界點問題,該算法通過更新類別關(guān)鍵詞和控制相似度閾值降低了噪聲文本加入的概率,但在使用TF-IDF值進行關(guān)鍵詞提取時,對于非關(guān)鍵詞語料的去除,忽略其潛在的語義聯(lián)系。Tang 等[3]提出了在文本中加入同義詞林的多粒度計算模型,將同義詞林加入文本共同訓練,但同義詞林的加入會導致計算復雜度的提高,降低效率。Mikolov等[4]在Word2vec的啟發(fā)下提出了Paragraph Vector,借助于詞向量方法的成功,對于句子和段落的向量表示工作正嘗試展開,從單詞向量的簡單附加組成到復雜的加權(quán)結(jié)構(gòu)[5-10]。通過疊加詞語的詞向量來獲得句子向量對整個句子的語義表達不夠準確。Wieting等[11]用單詞向量平均來學習句子向量,通過監(jiān)督句子釋義組來更新標準詞向量用于句子訓練,但需要重新訓練大量有標記的數(shù)據(jù)集。Neculoiu 等[12]通過循環(huán)神經(jīng)網(wǎng)絡結(jié)合Siamese模型學習變長文本序列的相似性度量,但仍需大量標注數(shù)據(jù)。Mrabet 等[13]受DNA序列啟發(fā)提出了考慮連續(xù)單詞順序性的獨立相似性度量算法,但忽略了共現(xiàn)詞帶來的影響。Alnajran 等[14]提出了一種啟發(fā)式驅(qū)動預處理方法來增強上下文相似性度量性能。Arora等[15]總結(jié)前人經(jīng)驗提出的一種簡單有效的句子向量表示新方法SIF(smooth inverse frequency)該方法非常適合于域適應設置,即在各種語料庫上訓練的單詞向量可用于計算不同測試平臺中的句子向量。
上述算法的訓練與測試往往是在同源數(shù)據(jù)中,但面對非同源數(shù)據(jù)的相似性匹配并不能起到很好的效果。本文對于民航不文明旅客行為分析和研究中需要面臨來自于社會和民航兩部分的非同源數(shù)據(jù),兩者數(shù)據(jù)在構(gòu)詞結(jié)構(gòu)和語義表達上有一定的不同,并不能直接使用上述算法;其次,對于民航不文明旅客的分析和研究中不能只考慮行為信息。不文明旅客之間存在造成相同結(jié)果的顯式關(guān)系和不同行為的隱式關(guān)系,且不同行為的隱式關(guān)系更具有挖掘價值,要考慮不文明旅客的處罰規(guī)則和結(jié)果在行為匹配中的相互影響,其行為嚴重程度取決于行為信息又受處罰結(jié)果的影響。
為了解決上述問題,本文在SIF算法的基礎(chǔ)上提出了對行為特征和處罰特征融合度量的民航不文明旅客聯(lián)合相似度匹配(incivilized passenger behavior similar-smooth inverse frequency,IPBS-SIF)算法,面對非同源數(shù)據(jù),創(chuàng)新性的將不文明旅客的處罰規(guī)則特征引入了計算模型,為處罰規(guī)則制定統(tǒng)一量化標準,針對不同行為間的隱式關(guān)系進行了挖掘,實現(xiàn)不文明旅客的多粒度聯(lián)合相似度分析,并對旅客在發(fā)生不文明行為之前的潛在程度進行合理預測。對比實驗數(shù)據(jù)表明,改進的IPBS-SIF算法在面對非同源數(shù)據(jù)時有很好的效果,預測準確度有一定提升。實現(xiàn)航空公司對旅客發(fā)生不文明行為之前進行有效監(jiān)控。
SIF算法是一種簡單有效的句子向量表示的新方法:該方法引入了“平滑”概念來計算句子中單詞向量的加權(quán)平均值,然后刪除第一個主成分上的平均向量的投影(公共成分去除)。該方法在各種文本相似性任務上表現(xiàn)出比未加權(quán)平均值明顯更好的性能,并且在大多數(shù)任務中甚至超過了一些經(jīng)測試的監(jiān)督方法,包括一些RNN和LSTM模型。該方法非常適合于域適應設置,即在各種語料庫上訓練的單詞向量可用于計算不同測試平臺中的句子向量。生成的句子向量還聯(lián)系了語料庫上下文語義,使句子表示更為準確。
核心算法如下
(1)
X←{vs∶s∈S}
(2)
vs←vs-uuTvs
(3)
式中:w代表一個詞,V代表整個語料庫生成的詞的全集,vw代表詞向量,即 {vw∶w∈V};s代表一個句子或段落,S代表數(shù)據(jù)中所有句子的全集,vs是句子向量,即 {vs∶s∈S}。 其中a為平滑反頻率參數(shù),p(w) 為單詞在整個語料庫中的頻率。為了句子向量和語義空間上下文建立聯(lián)系,將所有的句子向量組成矩陣X, 得到X的第一奇異向量u, 對式(1)中的vs進行更新。
SIF算法算法對于文本的向量的表示有著很好的效果,但對不文明旅客的分析研究中,面對非同源數(shù)據(jù)以及旅客造成相同處罰結(jié)果的顯式關(guān)系和不同行為的隱式關(guān)系時并不能發(fā)揮很好的效果,對社會不文明人員和民航不文明旅客的相似度匹配時準確度不夠;其次,不文明旅客行為記錄和處罰結(jié)果的數(shù)據(jù)格式與結(jié)構(gòu)不同,不能直接運用到不文明旅客的匹配與預測中去。因此本文做了如下改進。
在民航不文明旅客的懲處規(guī)則中根據(jù)其情節(jié)嚴重程度分有不同類型的不文明水平,在不文明旅客的分布規(guī)律中,旅客數(shù)量所占比隨著嚴重程度的提高而下降;在處罰結(jié)果中,也有拘留天數(shù),罰款數(shù)額的區(qū)別,因此需要對處罰規(guī)則進行標準化度量。
(1)不同類型的不文明旅客所占比例不同,因此為保證度量的合理性,引入處罰規(guī)則概率P
(4)
(2)不同旅客的處罰結(jié)果不同,因此引入不文明旅客行為嚴重程度歸標準化矩陣L
(5)
在不文明旅客的處罰結(jié)果中,也有拘留天數(shù),罰款數(shù)額的區(qū)別,因此需要對處罰規(guī)則進行標準化度量。其中:Cij為第i種處罰類型j處罰結(jié)果,Max(Cij) 為i類型中j處罰結(jié)果中的最大值,Max(Cij)+1 保證了Lij的值域?qū)儆?(0,1)。
(3)引入不文明旅客處罰規(guī)則的標準化度量矩陣PL
(6)
其中,將處罰規(guī)則的概率模型與標準化模型結(jié)合起來,形成對不文明旅客處罰規(guī)則的標準化度量矩陣PL。PL矩陣的構(gòu)建使得不同懲處類型與不同懲處結(jié)果的不文明旅客有了統(tǒng)一的度量標準,PL值代表著當前不文明行為在懲處規(guī)則庫中的行為嚴重程度的衡量。
民航不文明旅客依據(jù)其情節(jié)嚴重程度劃分共有4個類別:A、B、C、D這4類。旅客的不文明程度隨類別梯度的上升(A→D)而上升。將不文明旅客的處罰數(shù)據(jù)帶入到式(6)中運算,并得到每一類不文明旅客的平均PL值,結(jié)果見表1。
表1 不同不文明水平的平均PL值對比
不文明旅客的average(PL)值見表1,代表著對不同類型的不文明旅客處罰特征統(tǒng)一標準量化后的PL值對比情況,而對于不文明旅客的分布情況如圖1所示,代表著不同類型之間所占比例。由兩圖對比可以看出由于所占比例的大小不同使得不文明旅客的PL值并未跟隨處罰類型梯度上升(A→D)而增加,在實際應用中,為了達到理想預期效果,因此對PL的頻率模型進行更細致的參數(shù)尋優(yōu)。優(yōu)化后的標準化度量矩陣如式(8)所示。
圖1 不文明旅客類型分布
(4)引入概率模型尋優(yōu)參數(shù)β
(7)
(8)
其中,λ為處罰規(guī)則的平滑反頻率,β為反頻率參數(shù),β∈(10-4,100)。β的引入使得每一類的PL值隨處罰梯度上升而增加。本文以ω=2e-5作為步長使β在 (10-4,100) 上尋優(yōu),并記錄隨β值的變化各類average(PL)值的變化情況,實驗結(jié)果如圖2所示。
圖2 β尋優(yōu)分布
由圖2可知各類值PL隨著β的增加而上升,且β在(0.025,0.15)之間符合我們的標準,即各類PL值隨處罰梯度的上升(A→D)而上升,本文取β=0.1, 做實驗得到圖3結(jié)果,可以看出優(yōu)化前和優(yōu)化后的各類PL值對比情況,優(yōu)化后的PL值隨處罰梯度的上升而增加。
圖3 優(yōu)化前后平均PL值對比
對于社會不文明人員和民航不文明旅客的行為記錄是文本格式,為將不文明行為記錄進行聯(lián)合相似度匹配,本文使用word2vec對文本進行特征提取轉(zhuǎn)化為文本詞嵌入表示,再通過伴隨平滑反頻率詞向量加權(quán)平均獲得文本的句子級向量表示;其次,為減少不文明旅客之間存在造成相同結(jié)果的顯式關(guān)系和不同行為的隱式關(guān)系對預測準確度的影響,本文將標準化度量的處罰特征融入進相似度計算。該多粒度度量算法融合了不文明人員的不文明行為特征和懲處結(jié)果的處罰特征,豐富不文明旅客與社會不文明人員的特征表示,使得對不文明人員的定量刻畫更加充分。多粒度度量算法詳細如下所示。
算法1: 多粒度度量算法
輸入:
語料庫詞向量{vw∶w∈V}
不文明行為描述文本庫S{s∈S}
行為處罰規(guī)則庫{Ci,Cij∶i,j∈C}
輸出:
行為描述文本向量vs
處罰規(guī)則歸一化標準度量PLij
(1)for all s in S do
(3)end for
(4)Form matrixX←{vs∶s∈S},
(5)u=First_singular_vec(X)
(6)for all s in S do
(7)vs←uuTvs
(8)end for
(9)for all i,j in C do
(11)end for
具體步驟為:遍歷不文明行為描述文本庫,通過神經(jīng)網(wǎng)絡skip-gram模型將語料庫進行特征提取訓練獲得詞向量vw, 通過SIF算法對詞向量加權(quán)求和生成句子向量vs, 將所有文本的向量表示組成矩陣X并計算其奇異向量u對vs進行更新;遍歷行為處罰規(guī)則庫將不文明人員的懲處結(jié)果通過算法生成懲處特征標準度量值PLij, 算法結(jié)束。
面對非同源數(shù)據(jù),我們以文本特征相似性為主,處罰特征相似性為輔,進行聯(lián)合相似度匹配。使用余弦相似度來比較兩個文本向量的相似性。使用改進的反正切函數(shù)來比較兩個處罰特征統(tǒng)一度量值的相似性,并為聯(lián)合相似度匹配算法設置加權(quán)參數(shù)α。 聯(lián)合相似度算法如下所示
(9)
(10)
sims=α·cos(vi,vj)+(1-α)sim(PLi,PLj)
(11)
約束條件
α>(1-α),α∈(0,1)
聯(lián)合相似度匹配算法詳細如下所示。
算法2: 匹配預測算法
輸入:
不文明社會人員信息庫s_courps
不文明旅客信息庫a_courps
輸出:
不文社會人員預測結(jié)果
(1)for all s in s_courps do
(2) for all a in a_courps do
(3)sims_list=α·cos(vs,va)+(1-α)sim(PLs,PLa)
(4) end for
(5)sort_select(sims_list,top=1)
(6)end for
具體步驟:遍歷民航數(shù)據(jù)列表,使得社會數(shù)據(jù)列表中的每一條數(shù)據(jù)通過sims()函數(shù)與之做聯(lián)合相似度計算;通過sort_list()函數(shù)排序選擇出最相似的一條,并歸屬到這一類中。該類的不文明等級即為社會不文明人員在民航中的潛在不文明等級。算法結(jié)束。
本文實驗是采用中國航空運輸協(xié)會公布的2016年-2018年16批民航不文明旅客行為記錄數(shù)據(jù);來自于信用中國的民航旅客特定失信人數(shù)據(jù)2330條;來自于中國裁判文書網(wǎng)、人民檢察院信息公開網(wǎng)、法律圖書館、法律家的裁判文書數(shù)據(jù):包括危害國家安全,危害公共安全,侵犯財產(chǎn),妨害社會管理秩序4大類共12 043條數(shù)據(jù)。我們把所有數(shù)據(jù)的80%作為訓練集,20%作為測試集。來源于社會的數(shù)據(jù)依據(jù)其相似性已人工做好標注。民航不文明旅客依據(jù)其情節(jié)嚴重程度劃分共有4個類別:行政處罰、行政拘留、行政處罰+拘留、刑事拘留,本文將其定義為A、B、C、D這4類。旅客的不文明嚴重程度隨類別梯度的上升 (A→D) 而上升。民航不文明旅客信息樣例見表2,社會不文明人員信息樣例見表3。行為記錄數(shù)據(jù)多為30-60字符的短文本。
表2 民航不文明旅客行為信息樣例
表3 社會不文明人員信息樣例
正如表2和表3所示的數(shù)據(jù)樣例,在社會和民航這兩個非同源的領(lǐng)域,對于不文明人員和不文明旅客的行為記錄中,存在著構(gòu)詞結(jié)構(gòu)和語義上的差別,如民航記錄中中出現(xiàn)的‘航空’、‘航班’、‘乘機’等詞,社會記錄中出現(xiàn)的‘民警’、‘消防’、‘機動車’等詞。這會對兩個非同源數(shù)據(jù)相似性匹配的準確率產(chǎn)生影響。
本文采用Word2vec的深度神經(jīng)網(wǎng)絡模型Skip-gram生成詞向量,維數(shù)為200,單詞向量的維數(shù)較小不能完全表達單詞的語義信息,維數(shù)過大導致計算復雜度越大,計算越慢。窗口大小為5,迭代次數(shù)選擇50。在IPBS-SIF算法中參數(shù)a=10-3,β=0.1,α=0.8。
為了對本文匹配算法進行衡量,通過計算查準率P、召回率R、F1值、準確率A對實驗結(jié)果進行度量。在實際的匹配和預測行為中,查準率,召回率,F(xiàn)1值和準確率的定義如下
實驗過程中,使用社會不文明人員數(shù)據(jù)對民航不文明旅客相似度匹配,并預測其在民航發(fā)生不文明行為的潛在程度,通過本文改進的IPBS-SIF聯(lián)合相似度匹配算法與Doc2vec算法、詞向量平均算法AverVector、和SIF算法進行實驗,分析算法效率。
4.4.1 算法的查準率、查全率和F1值比較
圖4為4種算法的查準率比較圖,圖5為4種算法的查全率比較圖,圖6為4種算法的F1值比較圖。
圖4 不同算法的查準率比較
圖5 不同算法的查全率比較
圖6 不同算法的F1值比較
圖4,圖5可以看出不同算法之間在查準率和查全率之間的對比曲線。從圖中可以看出無論是查準率還是查全率IPBS-SIF算法都要優(yōu)于其它算法。在不文明水平A的實驗結(jié)果上,Doc2vec算法面對短文本并未發(fā)揮出優(yōu)勢,AverVec、SIF、IPBS-SIF這3種算法的查準率查全率相差不大,查準率和查全率都保持在80%以上,但隨著不文明水平梯度的上升,AverVec、SIF算法性能下降,本文改進的IPBS-SIF算法的效果高出其它算法10%-20%。面對語義差別較大的C類不文明水平的實驗結(jié)果,所有算法性能都有下降,但本文設計的IPBS-SIF算法仍能保持查準率在70%以上,查全率在80%以上;綜合兩者的數(shù)據(jù)觀察圖6中F1值可以看出Doc2vec算法在面對非同源數(shù)據(jù),語義相差較大的短文本時未能發(fā)揮其優(yōu)勢,SIF算法和AverVec水平相差不大,但面對非同源數(shù)據(jù),效果有時并不理想,隨著不文明水平梯度的上升性能有所下降,本文改進的IPBS-SIF算法將處罰特征納入考慮,彌補了這一缺點,使整體的準確性表現(xiàn)良好,相比其它算法有一定提高。驗證了改進后的算法是可以接受的。
4.4.2 算法準確率和耗時比較
在同一實驗平臺下對相同數(shù)據(jù)進行實驗,各算法的平均準確率和耗時情況見表4(實驗中采用的平臺為python 3.5集成開發(fā)環(huán)境,CPU為i5-4200m,內(nèi)存8 G)。
本文將(A→D)4類的準確率求取平均值來衡量算法的性能。由表4可以看出在4種匹配算法中,在平均準確率上,本文設計的IPBS-SIF算法在準確率上都要高于其它算法,IPBS-SIF算法相比改進之前的SIF算法平均準確率高出約0.136,相比AverVec算法平均準確率高出0.138;在時間性能比較上,Doc2Vec算法的耗時最小,AverVec算法和SIF算法的耗時相當相差不足1 s,IPBS-SIF算法的耗時處于平均水平,是可以被接受的。
表4 不同算法的平均準確率和耗時比較
4.4.3 不同算法相似度匹配結(jié)果
在數(shù)據(jù)中抽取的實驗數(shù)據(jù)樣例見表5,各算法對社會人員在民航中發(fā)生不文明行為潛在程度預測結(jié)果見表6。
表5 社會與民航實驗樣例
表6 不同算法的相似度和預測結(jié)果比較
表5是在實驗數(shù)據(jù)中抽取的社會與民航中的實驗樣例,表6為使用不同算法對表5中的數(shù)據(jù)進行相似度計算以及得到在民航中不文明等級的預測結(jié)果。由表5知,面對來自民航和社會的兩非同源數(shù)據(jù)。具有相同的顯式處罰結(jié)果拘留7天罰款1500元,但是對應其不同行為記錄,因非同源數(shù)據(jù)造成的構(gòu)詞差別如:民航中的“候機區(qū)”、“航空運輸”;社會中的“包房”、“公共安全”等造成不同行為之間的語義差別較大,影響預測準確度。本文設計的聯(lián)合相似度匹配算法引入懲處特征彌補了行為記錄語義差別的不足,使算法面對相同結(jié)果不同行為的顯隱式關(guān)系時仍有良好效果。從表6可以看出IPBS-SIF算法的聯(lián)合相似度比其它算法的語義相似度高出0.1-0.2,在預測結(jié)果中只有IPBS-SIF預測準確。本文設計的IPBS-SIF算法將處罰特征納入考慮,挖掘了相同結(jié)果與不同行為間的隱式關(guān)系,彌補了非同源數(shù)據(jù)構(gòu)詞不同、語義差別的缺點,使整體的準確性表現(xiàn)良好。
本文通過研究民航不文明旅客的行為信息和懲處規(guī)則提出了IPBS-SIF匹配算法,針對不文明旅客之間存在造成相同結(jié)果的顯式關(guān)系和不同行為的隱式關(guān)系,對不文明旅客行為特征分析的同時把處罰規(guī)則產(chǎn)生的影響納入考慮。對不文明旅客進行多粒度融合度量。并對社會不文明人員和民航不文明旅客進行聯(lián)合相似度匹配,預測其在從事民航活動中發(fā)生不文明行為的潛在程度。結(jié)果表明IPBS-SIF算法克服了因非同源數(shù)據(jù)構(gòu)詞結(jié)構(gòu)不同、語義差別問題所帶來的影響,提高了預測的準確度。為今后民航旅客不文明行為分析與監(jiān)控提供了新的解決思路。