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幾何模型轉換方法初步研究
主站蜘蛛池模板: 秋霞午夜国产精品成人片| 日本一本在线视频| 国内精品手机在线观看视频| 欧美在线黄| 2022精品国偷自产免费观看| 91免费精品国偷自产在线在线| 亚洲成年人网| 欧美丝袜高跟鞋一区二区| 亚洲欧美日本国产专区一区| 天天综合网站| 五月综合色婷婷| 国产精品亚洲专区一区| 久久久久国色AV免费观看性色| 女同久久精品国产99国| 四虎永久在线精品国产免费| 国产SUV精品一区二区| 91成人免费观看| 四虎影院国产| 国产在线一区视频| 中文字幕 91| 国产69囗曝护士吞精在线视频| 国产成人综合日韩精品无码不卡| 日韩成人高清无码| 国产丰满大乳无码免费播放 | 亚洲娇小与黑人巨大交| 2018日日摸夜夜添狠狠躁| 热re99久久精品国99热| 亚洲日本一本dvd高清| 色婷婷视频在线| 亚洲小视频网站| 国产精品所毛片视频| 日本成人精品视频| 国产亚洲高清视频| 亚洲无码37.| 91在线一9|永久视频在线| 国产精品爽爽va在线无码观看| 免费国产高清视频| 国产小视频免费| 乱人伦视频中文字幕在线| 成人在线综合| 久久综合伊人77777| 久久国产精品麻豆系列| 91丨九色丨首页在线播放| 91美女在线| 欧美成人手机在线观看网址| 超碰免费91| 日韩免费毛片视频| 国产婬乱a一级毛片多女| 国产人人干| 国产成人综合亚洲欧美在| 人妻丰满熟妇αv无码| 992Tv视频国产精品| 中文字幕人成乱码熟女免费 | 国产精品19p| 精品国产成人三级在线观看| 毛片一级在线| 国产经典免费播放视频| 欧美一区二区三区欧美日韩亚洲| 亚洲an第二区国产精品| 欧美在线国产| 5555国产在线观看| 激情综合激情| 久久精品人人做人人爽电影蜜月| 激情五月婷婷综合网| www.youjizz.com久久| 波多野结衣爽到高潮漏水大喷| 欧美日本在线| 亚洲青涩在线| 精品午夜国产福利观看| 久久国产乱子| 夜夜操狠狠操| 色悠久久综合| 久久亚洲美女精品国产精品| 亚洲无码精彩视频在线观看 | 456亚洲人成高清在线| 浮力影院国产第一页| 国产理论一区| 国产性爱网站| 久久香蕉欧美精品| 中国成人在线视频| 久久影院一区二区h| 欧美色综合网站|