王心儀,程劍鋒,劉育君
(1.中國(guó)鐵道科學(xué)研究院 研究生部,北京 100081;2.中國(guó)鐵道科學(xué)研究院集團(tuán)有限公司 通信信號(hào)研究所,北京 100081)
列車(chē)超速防護(hù)(ATP,Automatic Train Protection)系統(tǒng)是保障高速鐵路運(yùn)輸安全的關(guān)鍵設(shè)備,其安全性和功能性是高速鐵路信號(hào)系統(tǒng)列車(chē)控制的核心。ATP 車(chē)載設(shè)備在研發(fā)過(guò)程中,要進(jìn)行大量的仿真測(cè)試,須先將測(cè)試案例按照測(cè)試場(chǎng)景進(jìn)行分類,便于測(cè)試人員編寫(xiě)測(cè)試序列,利于后續(xù)問(wèn)題的查找和分析。目前,ATP 車(chē)載設(shè)備測(cè)試案例采用人工分類方式,依靠測(cè)試人員的經(jīng)驗(yàn)及對(duì)案例的理解,使得案例分類具有較大差異。因此,亟需設(shè)計(jì)一種方法,實(shí)現(xiàn)測(cè)試案例自動(dòng)分類,便于測(cè)試的流程化作業(yè)。
實(shí)現(xiàn)測(cè)試案例文本分類的核心,在于對(duì)文本特征詞的篩選及分類器的選擇。在研究分類的過(guò)程中,莊媛等人[1]利用詞頻—逆文檔頻率(TF-IDF,Term Frequency-Inverse Document Frequency)算法計(jì)算Web 服務(wù)質(zhì)量受位置、時(shí)間等環(huán)境因素影響的權(quán)重,結(jié)合樸素貝葉斯分類器算法,與基于經(jīng)典假設(shè)檢驗(yàn)的SPRT (Sequential Probability Ratio)方法進(jìn)行對(duì)比,實(shí)現(xiàn)了Web 服務(wù)質(zhì)量的有效監(jiān)控;周小燕[2]考慮了特征受到類內(nèi)和類間分布的影響,引入集中度和分散度,對(duì)TF-IDF 算法進(jìn)行優(yōu)化,結(jié)合LDA (Latent Dirichlet Allocation)主題模型得到的主題個(gè)數(shù)及隨機(jī)森林函數(shù)確定的屬性子集,實(shí)現(xiàn)用戶影評(píng)的分類;李新琴等人[3]采用ADASYN (Adaptive Synthetic Sampling)數(shù)據(jù)合成法對(duì)鐵路信號(hào)道岔設(shè)備故障樣本進(jìn)行處理,選擇TF-IDF 算法實(shí)現(xiàn)特征詞提取,集成BiGRU 和BiLSTM 兩個(gè)神經(jīng)網(wǎng)絡(luò),得到故障診斷模型,實(shí)現(xiàn)信號(hào)設(shè)備的故障分類;許麗等人[4]采用向量空間模型對(duì)網(wǎng)絡(luò)熱點(diǎn)新聞信息進(jìn)行處理,利用TFIDF 算法,結(jié)合樸素貝葉斯分類器,實(shí)現(xiàn)根據(jù)提案內(nèi)容推薦熱點(diǎn)信息,但隨著測(cè)試樣本的增多,穩(wěn)定性和準(zhǔn)確性都有所降低;王麗等人[5]研究了TF-IDF 和Word2vec 算法提取新聞文本關(guān)鍵詞的優(yōu)缺點(diǎn),利用KNN (K-Nearest Neighbor)算法,實(shí)現(xiàn)新聞數(shù)據(jù)分類,但不同類別的分類效果差異較大;景麗等人[6]針對(duì)特征詞提取不全面等問(wèn)題,對(duì)TF-IDF 算法的特征項(xiàng)分布和位置因素進(jìn)行了優(yōu)化,結(jié)合帶有注意力機(jī)制的LSTM 卷積網(wǎng)絡(luò)分類模型,實(shí)現(xiàn)了更精確的數(shù)據(jù)分類,但存在時(shí)間復(fù)雜度較大的問(wèn)題。
本文針對(duì)鐵路ATP 車(chē)載設(shè)備測(cè)試案例,選擇TFIDF 算法對(duì)測(cè)試案例文本描述進(jìn)行預(yù)處理和特征詞提取,依據(jù)選取的特征詞權(quán)重結(jié)合樸素貝葉斯算法作為測(cè)試案例的分類方法,提高分類效率及準(zhǔn)確性。
目前,CTCS-3 (Chinese Train Control System Level 3)級(jí)列車(chē)運(yùn)行控制(簡(jiǎn)稱:列控)車(chē)載系統(tǒng)采用 C2/C3 一體化設(shè)計(jì),設(shè)備的子系統(tǒng)間為分布式結(jié)構(gòu)[7]。ATP 車(chē)載設(shè)備主要結(jié)構(gòu)如圖1所示,包括車(chē)載安全計(jì)算機(jī)、人機(jī)交互界面(DMI,Driver Machine Interface)、應(yīng)答器信息傳輸模塊(BTM,Balise Transmission Module)、司法紀(jì)錄單元(JRU,Juridical Recording Unit)、軌道電路讀取器(TCR,Track Circuit Reader)等,圖中箭頭表示信息的傳遞方向。ATP 作為CTCS-3 級(jí)列控系統(tǒng)的車(chē)載關(guān)鍵設(shè)備及列車(chē)自動(dòng)控制系統(tǒng)的核心[8],能夠?qū)⒌孛孳壍离娐?、?yīng)答器、無(wú)線閉塞中心 (RBC,Radio Block Center)等傳送來(lái)的聯(lián)鎖設(shè)備信息、線路信息、距離位置信息等轉(zhuǎn)換為控車(chē)數(shù)據(jù),生成控車(chē)曲線,在列車(chē)運(yùn)行時(shí)監(jiān)控列車(chē)運(yùn)行速度,保障列車(chē)的安全間隔,并與車(chē)輛系統(tǒng)接口實(shí)現(xiàn)信息交互,JRU 通過(guò)以太網(wǎng)向動(dòng)態(tài)監(jiān)測(cè)系統(tǒng)(DMS,Dynamic Monitoring System)提供相關(guān)車(chē)載數(shù)據(jù)。
圖1 ATP 車(chē)載設(shè)備主要結(jié)構(gòu)
ATP 車(chē)載設(shè)備在投入使用前若存在設(shè)計(jì)問(wèn)題,極易引發(fā)重大事故,造成不可挽回的損失。因此,設(shè)備的研發(fā)需經(jīng)歷多場(chǎng)景、多輪次的測(cè)試,才能保障其安全性,降低在現(xiàn)場(chǎng)使用時(shí)發(fā)生故障的概率,確保行車(chē)安全。車(chē)載設(shè)備的測(cè)試不僅包括各項(xiàng)設(shè)計(jì)功能實(shí)現(xiàn)程度的檢測(cè),還包括運(yùn)用過(guò)程中出現(xiàn)故障的分析處理。常規(guī)的仿真測(cè)試主要分為功能性測(cè)試和特殊場(chǎng)景下的故障測(cè)試。為保障測(cè)試的全面性及系統(tǒng)性,需要測(cè)試人員根據(jù)系統(tǒng)測(cè)試需求,規(guī)范編寫(xiě)測(cè)試案例。
在遇到系統(tǒng)變更、故障分析等情況時(shí),測(cè)試人員可查找現(xiàn)有的測(cè)試案例進(jìn)行驗(yàn)證和分析。ATP 車(chē)載設(shè)備功能復(fù)雜,測(cè)試案例數(shù)目較多,依據(jù)ATP 的運(yùn)營(yíng)場(chǎng)景和功能需求等進(jìn)行測(cè)試案例分類,便于后續(xù)分析工作的開(kāi)展。通常將ATP 車(chē)載設(shè)備CTCS-3級(jí)測(cè)試案例按照中國(guó)國(guó)家鐵路集團(tuán)有限公司(簡(jiǎn)稱:國(guó)鐵集團(tuán))發(fā)布的《CTCS-3 級(jí)列控系統(tǒng)測(cè)試案例》進(jìn)行分類,包括制動(dòng)測(cè)試、通信會(huì)話管理、控車(chē)曲線、應(yīng)答器鏈接信息處理、無(wú)線消息接收、自動(dòng)過(guò)分相、版本檢查、前方軌道空閑(TAF,Track Ahead Free)信息接收和使用、DMI 顯示、緊急停車(chē)消息、故障處理等。
在進(jìn)行測(cè)試案例分類前,需要對(duì)案例文本進(jìn)行分詞處理,具體測(cè)試案例文本如表1所示。利用Python 中現(xiàn)有的jieba 分詞庫(kù)對(duì)測(cè)試案例文本進(jìn)行分詞(分詞方法見(jiàn)文獻(xiàn)[4]所述)。將文本進(jìn)行精確分詞,便于計(jì)算機(jī)準(zhǔn)確獲取文本中的詞語(yǔ)。
表1 測(cè)試案例文本示例
在利用TF-IDF 算法獲取特征詞在全部特征詞中的權(quán)重值之前,要將利用jieba 分詞處理后的測(cè)試案例語(yǔ)句與停用詞庫(kù)進(jìn)行比較,過(guò)濾無(wú)意義的詞。去掉停用詞后,可在一定程度上降低特征詞的維度,增強(qiáng)分類的確定性。
TF-IDF 算法是篩選文章特征詞的一種方法,該方法可評(píng)估前文選取的詞在文檔中是否具有代表性。如果一個(gè)詞在本篇文章中出現(xiàn)的頻率很高,在其他文章中出現(xiàn)頻率相對(duì)較低,則該詞即為本文的特征詞。上述關(guān)系可用公式(1)表示[5]。
其中,TF為進(jìn)行歸一化后的詞頻,公式為
逆文件頻率IDF表示在詞頻的基礎(chǔ)上,賦予每個(gè)特征詞的權(quán)重,公式為
貝葉斯算法適用于目標(biāo)變量個(gè)數(shù)較多的情況,是表達(dá)不確定問(wèn)題的有效模型之一。樸素貝葉斯算法在給定屬性相互獨(dú)立的情況下,簡(jiǎn)化了貝葉斯算法的復(fù)雜度[9]。本文選擇該算法實(shí)現(xiàn)測(cè)試案例的分類,即依據(jù)算法得到特征詞與預(yù)測(cè)分類間存在關(guān)系概率的大小,選擇測(cè)試案例適合的分類。
假設(shè)文檔集H中有 |C|個(gè)類別,其中,第k個(gè)類別表示為Ck(1 ≤k≤|C|);n為特征詞總數(shù);p(ωm|Ck)表示在類別Ck文檔中出現(xiàn)特征詞ωm(1 ≤m≤n)的概率;q為文檔總數(shù);Hi(1 ≤i≤q)表示文檔集H中第i個(gè)文檔;ωim表示第i個(gè)文檔中第m個(gè)特征詞;結(jié)合文獻(xiàn)[10]得到樸素貝葉斯算法分類公式為
傳統(tǒng)的樸素貝葉斯分類方法沒(méi)有考慮不同類別的特征詞權(quán)重不同的情況,本文利用TF-IDF 算法得到的權(quán)重對(duì)其改進(jìn)。
為簡(jiǎn)化表達(dá)式,設(shè)變量l=im,對(duì)于Hi中的特征詞 ωl,其特征權(quán)重計(jì)算公式為
根據(jù)公式(2)和公式(3)可得到
其中,N(Hi,ωl)表示特征詞 ωl在文檔Hi中出現(xiàn)的次數(shù);t表示全部特征詞在文檔中出現(xiàn)的次數(shù)總和;M(Hi,ωl)是Hi中含有該特征詞的文檔數(shù)目。因此,文本Hi中的特征詞 ωl的特征權(quán)重W(Hi,ωl)為
將公式(7)引入公式(4)可得到加權(quán)的樸素貝葉斯算法分類公式為
將篩選出的特征詞及權(quán)重帶入公式(8),結(jié)合已有的訓(xùn)練數(shù)據(jù),得到優(yōu)化后的分類結(jié)果。
本實(shí)驗(yàn)在Windows 操作平臺(tái)下運(yùn)行,采用 Python編程語(yǔ)言編寫(xiě)。本文選取了20 個(gè)測(cè)試案例類型的2001條測(cè)試案例,對(duì)TF-IDF 加權(quán)樸素貝葉斯的分類方法進(jìn)行驗(yàn)證,部分測(cè)試案例如表2所示。隨機(jī)選取1500 條案例作為訓(xùn)練數(shù)據(jù),501 條案例作為驗(yàn)證數(shù)據(jù),訓(xùn)練樣本與驗(yàn)證樣本的比例大致為3∶1。
表2 案例類型與文本詳情節(jié)選
具體實(shí)驗(yàn)參數(shù)設(shè)置如下:jieba 分詞處理后文檔選定的特征詞數(shù)量topK=300,返回特征詞權(quán)重with-Weight=True,特征詞數(shù)目選取max_features=300,測(cè)試案例比例test_size=0.25。
本文利用jieba 分詞得到的訓(xùn)練詞庫(kù)示例如圖2所示,利用TF-IDF 算法得到的特征詞及其對(duì)應(yīng)的權(quán)值示例如圖3所示,選取權(quán)值較大的前300 個(gè)詞進(jìn)行貝葉斯分類,得到測(cè)試案例的分類結(jié)果,測(cè)試案例分類流程如圖4所示。
圖2 利用jieba 分詞得到的訓(xùn)練詞庫(kù)示例
圖3 利用TF-IDF 算法得到的特征詞及其對(duì)應(yīng)權(quán)值示例
圖4 測(cè)試案例分類流程
4.2.1 分類結(jié)果分析
本文采用文獻(xiàn)[11]提到的準(zhǔn)確率、召回率及F1值作為判斷分類有效性的指標(biāo)。利用傳統(tǒng)樸素貝葉斯分類方法和TF-TDF 加權(quán)的樸素貝葉斯分類方法實(shí)現(xiàn)測(cè)試分類,其各自結(jié)果對(duì)應(yīng)的指標(biāo)變化如圖5、圖6、圖7所示。
從圖5、圖6、圖7可看出,相比于傳統(tǒng)算法,利用加權(quán)后的樸素貝葉斯算法得到的分類效果較好,對(duì)應(yīng)的評(píng)價(jià)指標(biāo)總體水平呈現(xiàn)提升的趨勢(shì)。如果用人工方式實(shí)現(xiàn)上述測(cè)試案例的分類,需要近3 天的時(shí)間,利用本算法僅需幾秒,從工作時(shí)間的對(duì)比可看出本算法顯著提高了工作效率。
圖5 準(zhǔn)確率指標(biāo)變化情況
圖6 召回率指標(biāo)變化情況
圖7 F1 值變化情況
4.2.2 分類指標(biāo)對(duì)比
依據(jù)文獻(xiàn)[12]提及的準(zhǔn)確度、宏平均及加權(quán)平均指標(biāo),結(jié)合表3得到的結(jié)果可發(fā)現(xiàn),在測(cè)試案例數(shù)目相同的情況下,利用TF-IDF 加權(quán)的樸素貝葉斯算法的加權(quán)平均值與傳統(tǒng)的樸素貝葉斯算法的加權(quán)平均值相比,準(zhǔn)確率指標(biāo)有6%的提升,召回率指標(biāo)有2%的提升,F(xiàn)1 值有3%的提升。實(shí)驗(yàn)證明了基于TF-IDF 加權(quán)的樸素貝葉斯算法分類的有效性與準(zhǔn)確性。
表3 分類報(bào)告對(duì)比
本文以實(shí)驗(yàn)室現(xiàn)有列控車(chē)載設(shè)備CTCS-3 實(shí)際生產(chǎn)數(shù)據(jù)為測(cè)試案例,選擇了基于文本挖掘的測(cè)試案例分類方法,利用TF-IDF 算法實(shí)現(xiàn)了高速鐵路列控車(chē)載設(shè)備CTCS-3 級(jí)案例中的特征詞及對(duì)應(yīng)權(quán)重的篩選,將得到的權(quán)重結(jié)合樸素貝葉斯算法實(shí)現(xiàn)了測(cè)試案例自動(dòng)分類,相比于傳統(tǒng)的人工分類法顯著提高了分類效率及準(zhǔn)確性。
實(shí)驗(yàn)結(jié)果表明,本文方法可為高速鐵路ATP 車(chē)載設(shè)備測(cè)試人員分類測(cè)試案例提供有力支撐,具有很強(qiáng)的實(shí)用性。后續(xù)將針對(duì)樸素貝葉斯分類器性能受屬性關(guān)系影響的問(wèn)題開(kāi)展進(jìn)一步的研究。