999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

軟件測試用例標簽的自動化生成

2019-05-23 10:44:48周展鵬
電腦知識與技術 2019年8期
關鍵詞:機器學習模型

周展鵬

摘要:測試用例的標簽自動化生成涉及數據內容復雜、多標簽分類等問題,本文研究了對測試用例的數據處理,利用機器學習算法實現了對測試用例的多個標簽的自動生成,并對結果進行了評價。

關鍵詞:自然語言處理;多標簽分類;模型;機器學習

中圖分類號:TP311 文獻標識碼:A

文章編號:1009-3044(2019)08-0212-03

1 背景介紹

軟件的測試用例在設計或穩定執行后,通常會人為地進行分類或者打上標簽,以表明該用例的適用領域、范圍、場景。人工標簽雖然準確,但是當用例較多時,人工標簽效率低下且難以維持較高準確率。因此,標簽自動化生成的核心思想是利用機器學習技術對已有標簽進行學習,已達到自動生成用例標簽的目的。

2 數據探索

2.1 數據來源

本次項目的數據來自某軟件測試管理系統的歷史測試用例數據, 包含了9個軟件項目共近1200條測試用例數據。主要表單有:用例相關項目基本信息表,帶標簽的用例表,數據字典表等。項目基本信息表,包含了項目名稱、項目編號、項目需求部門、項目規模等信息;帶標簽的用例表,包含了用例ID、用例名稱、用例描述以及標簽等;數據字典包含對表中名詞的含義解釋。

2.2 數據問題

真實的用例數據存在各式各樣的問題,如大量的冗余字段,自然語言文本難以直接訓練,數據格式不統一等 ,經過分析統計,所給數據存在以下這些問題:

a.數據冗余:例如同樣的測試用例信息會在表格中多次出現。

b.數據格式混亂:例如在標簽欄中,有些用例沒有標簽,會有“無”表示,而有些用例沒有標簽則顯示為空白。此外許多用例同時含有若干標簽和“無”標簽。

c.數據缺失:例如在用例描述部分,不少測試用例顯示的是XXXX。

d.數據含義模糊:例如在通過ID下面,既有文本描述“通過”,也有含義不明的數字描述。

e.自然語言描述較多:例如在用例名稱,用例描述欄,包含關鍵信息,但是用自然語言的方式記錄,難以直接進行機器學習。

2.3 數據預處理

本節主要針對上節提出的問題進行數據預處理。對以下測試用例進行了刪除處理:

a.重復的測試用例信息

b.包含不明意義的數據信息的測試用例

c.關鍵字段信息缺失的測試用例

對于含有文本的關鍵信息(用例名稱、用例描述),為了便于機器學習,先進行了分詞處理,以提取出能夠影響標簽的信息。經分析,文本內容不長,上下語義關聯性不強,每個詞獨立出現,與其他詞語依賴性較低,故選擇jieba切詞工具中的詞袋模型進行切詞處理。選取了用例描述中的三例進行展示:

(1)打開已完成審批單查看流程圖

切詞后:打開,已完成,完成,審批,查看,流程圖

(2)點擊正在執行審批單的內核會議

切詞后:點擊,正在,執行,審批,內核,會議

(3)起草人反饋查看附件

切詞后:起草人,反饋,查看,附件

可以看出,對于關鍵字,如“流程圖”,“執行”等可能會影響最終標簽結果的信息提取,jieba的效果還是較為理想的,但是也不難發現會切出如“已”,“正在”這樣的無效關鍵字,因此需要對數據進行降維,具體的數據降維處理將會在3.1數據降維中說明。

2.4 數值化

為了更高效地進行數據處理,需要將測試用例的許多特征進行數值化處理,主要有兩類:

(1)將文本內容直接轉為數值:例如,用例級別的高中低,分別用3,2,1表示。測試用例的不同類型,兼容性、接口、界面等,用1,2,3等不同的數值進行替代。

(2)標簽的數值轉化:每個測試用例可能會含有多個標簽,將多標簽轉化為單標簽是一種較為實用的方法。為了將多標簽分類問題轉化為單標簽分類問題,我們將多標簽結果用二進制的方式表示成一個五位(共五個標簽)二級制數的單標簽。用“1”表示該標簽存在,用“0”表示標簽不存在。若是五位都為“0”,則表示該測試用例沒有標簽,或為“無”標簽。將多標簽問題轉化為了含有32種(包含“無”標簽)可能結果的單標簽問題。具體轉化如表1所示。

2.5 評價方法設計

從兩種角度進行評價方式設計:

1) 基于32種復合標簽評價:以轉化成的32種單標簽為對象,對模型預測的用例標簽進行結果統計分析。

2) 基于5種標簽評價:以人工標注的5種標簽為對象,對模型預測的用例標簽進行結果統計分析。

計算的指標有:

a.真假陰陽性統計: TP表示標簽存在,預測存在;FN表示標簽存在,預測不存在;FP表示標簽不存在,預測存在;TN表示標簽不存在,預測不存在。

b.召回率(敏感性):計算方式為, TP / (TP + FN )。

c.平均召回率:計算方式為, 該測試集中所有TP/該測試集中所有(TP + FN )。

d.特異性:計算方式為, TN / ( FP + TN ) 。

e.平均特異性:計算方式為,該測試集中所有TN / 該測試集中所有( FP + TN ) 。

f.準確度:計算方式為, ( TP + TN ) / ( TP + TN + FN + FP)。

g.平均準確度:計算方式為, 該測試集中所有( TP + TN ) / 該測試集中所有( TP + TN + FN + FP)。

h.精確度:計算方式為,TP / ( TP+FP )。

i.平均精確度:該測試集中所有TP / ( 該測試集中所有TP+該測試集中所有FP )。

j.標簽在用例中所占比例:計算方式為,該標簽在測試集中的用例數量/測試集中的用例綜述。

為了讓評價結果更有可信度,我們采用了5分法對數據進行交叉學習驗證。

3 模型訓練

3.1 數據降維

項目文本數據在轉為詞袋模型后,得到了五千多維的二值化矩陣,這便帶來了維度災難問題,許多算法如邏輯回歸、決策樹算法等眾多算法在低維空間表現良好,但當輸入高維度數據后算法往往失效。這是由于訓練數據維度的增高使得算法模型為了準確分類所需的數據量呈指數增加。因此需要對數據進行降維。

這里選用LDA(線性判別式分析)模型進行數據降維,LDA是一種監督式的線性降維算法,它通過在k維空間選擇一個投影超平面,使得不同類別在該超平面上的投影之間的距離盡可能近,同時不同類別的投影之間的距離盡可能遠,最終起到降維的效果。本項目數據經過反復測試,發現當維度降低到18時模型分類效果最好。

經過LDA模型,文本數據由五千多維01矩陣轉變為18維浮點數值矩陣,單行數據示例如下:

-1.7075 1.9503 -2.8726 -0.2466 0.2406 0.1693 2.5363 -0.3792 -1.8853 -2.2728 1.1057 0.3937 -2.0014 0.5809 -0.3731 0.7594 0.1070 -0.0264

可見輸入數據變為18維的特征向量,代表了某一條示例文本在18維向量空間上的投影。

3.2 模型設計

結合輸入數據特點和模型特點,經過對多組主流分類模型的多次重復試驗,有三類模型表現最為優秀,分別是邏輯回歸模型、KNN模型和SVM模型,其中以邏輯回歸模型表現最為穩定。本項目使用sklearn框架,模型的實現均調用sklearn中的方法。

邏輯回歸模型是線性回歸后與邏輯函數的結合,是一種有監督的統計學習方法,主要用于對模型的分類。模型采用newton-cg算法作為邏輯回歸模型的求解算法并使用L2范數作為規則化范數,可防止過擬合,提升模型的泛化能力。KNN模型和SVM模型同樣具有較好的分類效果,最終分類結果準確程度與邏輯回歸模型相差很小。

3.3 模型訓練

這里選用了經過降維的數據進行模型的訓練,由于訓練數據未涉及項目數據,僅使用了用例本身的名稱、描述、狀態等信息,因此訓練出的模型使用范圍不受不同項目背景影響,面對不同項目的數據分類的準確程度不會有較大波動,因此模型具有廣泛的適用性。

模型訓練數據的數目為總體數據的80%,共8285條數據,均是從總體數據中隨機抽取得來。其他20%的數據為驗證數據。對訓練集的選取使用了交叉驗證的方法,將整體數據分為五組,選取其中一組作為驗證集,另外四組作為訓練集進行模型的訓練,共進行五輪,使每組數據都作為過一次驗證集。

3.4 標簽生成

使用訓練完成的邏輯回歸模型,通過sklearn提供的predict方法進行分類標簽的生成,輸入驗證集數據,返回標簽,此時返回的標簽是經過數值化處理的標簽。經過解碼后即可得到標簽文本。

4 分析與結論

4.1 結果分析與對比

采用5分法,共產生了5次結果,結果都相近,選取其中一次并計算指標后展示如表2,表3:

4.2 結果分析

可以看出單個標簽的精確度是在96%左右,復合類標簽的平均精確度在92%左右。具體分析如下:

(1) 復合標簽平均精確率比單個標簽的平均精確度要低,主要原因是存在若干復合標簽的所占比例很低,如表11中的“權限類流程類數據校驗類”等,在整個測試集中僅占0.1%,所產生的精確度為0,很可能是訓練集中根本沒有分到該標簽或者僅分到很少的數量,所以不具備評價整個模型的價值;

(2) 目前訓練數據中,復合標簽不區分優先級,而實踐中,一個用例如果有多個標簽,相應存在一定的優先級,也導致了復合標簽精確度相對較低(認為每個標簽的優先級都一樣)。

(3) 人工標注為‘權限類數據校驗類,模型誤報為無任何標簽,一方面因為該類用例數量比例較低,1.2%左右,學習樣本不夠,另一方面一些與業務場景結合的有特殊含義的詞可能在降維過程中損失,后續可考慮補償機制。

總體來說,通過這次實驗,說明了標簽自動化生成的可行性,想要進一步的提升,可以通過改進多標簽算法,尋找用例相關的專業辭典進行切詞等方式提升準確率。

參考文獻:

[1] 李思男,李寧, 李戰懷. 多標簽數據挖掘技術:研究綜述[J]. 計算機科學, 2013, 40(4):14-21.

[2] 劉件, 魏程.中文分詞算法研究[J]. 網絡新媒體技術, 2008, 29(8):11-16.

【通聯編輯:梁書】

猜你喜歡
機器學習模型
一半模型
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
基于詞典與機器學習的中文微博情感分析
基于網絡搜索數據的平遙旅游客流量預測分析
時代金融(2016年27期)2016-11-25 17:51:36
前綴字母為特征在維吾爾語文本情感分類中的研究
科教導刊(2016年26期)2016-11-15 20:19:33
3D打印中的模型分割與打包
基于支持向量機的金融數據分析研究
機器學習理論在高中自主學習中的應用
FLUKA幾何模型到CAD幾何模型轉換方法初步研究
主站蜘蛛池模板: aaa国产一级毛片| 色婷婷天天综合在线| 亚洲欧美日韩精品专区| 人妻精品全国免费视频| 国产成人精品视频一区二区电影 | 美女免费精品高清毛片在线视| 99视频全部免费| 少妇精品久久久一区二区三区| 91九色视频网| 欧美人与性动交a欧美精品| 国产黑丝一区| 成人福利在线免费观看| 久久美女精品国产精品亚洲| 亚洲成aⅴ人在线观看| 亚洲v日韩v欧美在线观看| 亚洲色欲色欲www在线观看| 五月激情综合网| 亚洲欧洲日本在线| 欧美日韩免费| 欧美三级自拍| 欧美日韩专区| 亚洲精品无码在线播放网站| 精品一区二区三区水蜜桃| AV老司机AV天堂| 伊人成人在线视频| 超级碰免费视频91| 国产精品久久久久久久久| 亚洲侵犯无码网址在线观看| 国产亚洲美日韩AV中文字幕无码成人| 久久福利片| 免费一级大毛片a一观看不卡| 国产天天射| 精品综合久久久久久97| 欧美亚洲日韩中文| 婷婷色在线视频| 欧美精品v欧洲精品| 亚洲福利网址| 亚洲av成人无码网站在线观看| 亚洲天堂精品视频| 国产人妖视频一区在线观看| 亚洲欧美成人网| 91久久国产成人免费观看| 国产视频一区二区在线观看 | 国产网站免费观看| 国产精品亚洲一区二区三区在线观看| 国产草草影院18成年视频| 免费看的一级毛片| 国产H片无码不卡在线视频| 成人在线观看一区| 国产经典在线观看一区| 欧美中出一区二区| 欧美 亚洲 日韩 国产| 国产精品美女网站| 亚洲成人动漫在线观看 | 视频一区亚洲| 色香蕉网站| 无码专区在线观看| 国产av无码日韩av无码网站| 中文字幕第1页在线播| 九色最新网址| 免费一级成人毛片| 蝴蝶伊人久久中文娱乐网| 国产成人免费观看在线视频| av手机版在线播放| 国产剧情伊人| 欧美激情综合一区二区| 国产欧美日韩视频一区二区三区| 日本一区二区不卡视频| 国产 在线视频无码| 91久久夜色精品国产网站| 国产精品专区第1页| 久久精品中文字幕免费| 手机在线看片不卡中文字幕| 22sihu国产精品视频影视资讯| 国产污视频在线观看| 伊人中文网| 免费看一级毛片波多结衣| 91亚洲精品第一| 97青青青国产在线播放| 精品91视频| 婷婷六月综合| 精品精品国产高清A毛片|