[發(fā)明專利]一種異質(zhì)集成的自承認技術(shù)債務(wù)自動檢測方法在審
| 申請?zhí)枺?/td> | 202110632822.1 | 申請日: | 2021-06-07 |
| 公開(公告)號: | CN113313184A | 公開(公告)日: | 2021-08-27 |
| 發(fā)明(設(shè)計)人: | 殷茗;朱奎宇;高存志;張小港;王嘉澤;周盼;陳楊;張淼 | 申請(專利權(quán))人: | 西北工業(yè)大學(xué) |
| 主分類號: | G06K9/62 | 分類號: | G06K9/62;G06N3/04;G06N3/08 |
| 代理公司: | 西北工業(yè)大學(xué)專利中心 61204 | 代理人: | 金鳳 |
| 地址: | 710072 *** | 國省代碼: | 陜西;61 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 集成 承認 技術(shù) 債務(wù) 自動檢測 方法 | ||
本發(fā)明公開了一種異質(zhì)集成的自承認技術(shù)債務(wù)自動檢測方法,分為兩個階段,包括模型的訓(xùn)練階段和預(yù)測階段。在訓(xùn)練階段,進行數(shù)據(jù)集的預(yù)處理、特征提取后基于GBDT、SGD和DT三種學(xué)習(xí)算法對SATD訓(xùn)練樣本進行學(xué)習(xí)以訓(xùn)練組件學(xué)習(xí)器,三種學(xué)習(xí)算法一共訓(xùn)練了3個組件學(xué)習(xí)器。在預(yù)測階段,使用訓(xùn)練好的組件學(xué)習(xí)器進行預(yù)測,根據(jù)3個組件學(xué)習(xí)器以“少數(shù)服從多數(shù)”進行投票,如果是自承認技術(shù)債務(wù)會被標(biāo)記為“positive”,否則標(biāo)記為“negative”;最終根據(jù)每個組件學(xué)習(xí)器的投票結(jié)果進行判斷,以投票多者為最終的結(jié)果。本發(fā)明的異質(zhì)集成學(xué)習(xí)方法,比現(xiàn)有技術(shù)方法在查準(zhǔn)率,查全率以及F1得分等指標(biāo)都有著明顯提高。
技術(shù)領(lǐng)域
本發(fā)明屬于軟件技術(shù)領(lǐng)域,具體涉及一種自承認技術(shù)債務(wù)自動檢測方法。
背景技術(shù)
技術(shù)債務(wù)作為一種隱喻,指的是在軟件開發(fā)過程中開發(fā)人員采用了非最優(yōu)的解決方案,從而導(dǎo)致的將來昂貴的維護問題。在短期內(nèi)可能會獲得收益,但從長遠來看,由于各種原因引入的技術(shù)債務(wù),例如截止日期壓力、低質(zhì)量代碼、不良的軟件過程等,在維護階段要花費巨大的精力來處理它所帶來的問題。目前,技術(shù)債務(wù)的研究主要聚焦于識別、分析和管理。其中,技術(shù)債務(wù)識別是至關(guān)重要的問題。
早期技術(shù)債務(wù)識別是基于模式的識別,例如代碼氣味。緊接著出現(xiàn)了自承認技術(shù)債務(wù)識別。自承認技術(shù)債務(wù)(SATD)是開發(fā)人員使用源代碼注釋進行記錄,并有意引入的技術(shù)債務(wù)。研究人員已經(jīng)手動提取了62種模式用于識別自承認技術(shù)債務(wù),然而基于62種模式的識別對于海量的數(shù)據(jù)集需耗費巨大的人力,并且使用62種模式識別SATD時會產(chǎn)生誤判,并且研究顯示誤判率高達20%以上,此外基于模式的方法會耗費很大的人力物力,并且很難自動化。為了解決這一問題,自然語言處理和集成文本挖掘為自動識別自承認技術(shù)債務(wù)提供了可能。
Maldonado提出了運用自然語言處理進行自動識別SATD,重點關(guān)注了設(shè)計債務(wù)和需求債務(wù)的識別,通過建立一個NLP的最大熵分類器,提取大量注釋來訓(xùn)練最大熵分類器,因此沒有進行特征選擇,從而使得訓(xùn)練分類器時比較耗時,且SATD識別的準(zhǔn)確度不高,并且只能自動識別出部分自承認技術(shù)債務(wù),如設(shè)計和需求自承認技術(shù)債務(wù)。
自承認技術(shù)債務(wù)還包括了缺陷債務(wù)、文件債務(wù)和測試債務(wù)。采用集成文本挖掘?qū)⑽谋就诰蚝蛷?fù)合分類器結(jié)合起來用于識別SATD,能夠比自然語言處理的方法識別出更多種類的自承認技術(shù)債務(wù),并且可以提高分類器效率和SATD識別的準(zhǔn)確度。但是現(xiàn)有研究中的集成學(xué)習(xí)多為同質(zhì)集成學(xué)習(xí),相比于異質(zhì)集成學(xué)習(xí),泛化能力較弱,分類性能一般。且存在三個問題,一是進行特征選擇雖然可以降低維度,但是容易過濾掉重要特征。二是進行的是同質(zhì)集成方法,也即組件學(xué)習(xí)器使用的是同一種算法,在泛化能力上弱于異質(zhì)集成方法。三是在訓(xùn)練組件學(xué)習(xí)器時,每一個組件學(xué)習(xí)器學(xué)習(xí)的是一個項目的數(shù)據(jù),而任務(wù)中項目之間有著較大的差異性,這就造成難以預(yù)測測試項目的真實標(biāo)簽。
發(fā)明內(nèi)容
為了克服現(xiàn)有技術(shù)的不足,本發(fā)明提供了一種異質(zhì)集成的自承認技術(shù)債務(wù)自動檢測方法,分為兩個階段,包括模型的訓(xùn)練階段和預(yù)測階段。在訓(xùn)練階段,進行數(shù)據(jù)集的預(yù)處理、特征提取后基于GBDT、SGD和DT三種學(xué)習(xí)算法對SATD訓(xùn)練樣本進行學(xué)習(xí)以訓(xùn)練組件學(xué)習(xí)器,三種學(xué)習(xí)算法一共訓(xùn)練了3個組件學(xué)習(xí)器。在預(yù)測階段,使用訓(xùn)練好的組件學(xué)習(xí)器進行預(yù)測,根據(jù)3個組件學(xué)習(xí)器以“少數(shù)服從多數(shù)”進行投票,如果是自承認技術(shù)債務(wù)會被標(biāo)記為“positive”,否則標(biāo)記為“negative”;最終根據(jù)每個組件學(xué)習(xí)器的投票結(jié)果進行判斷,以投票多者為最終的結(jié)果。本發(fā)明的異質(zhì)集成學(xué)習(xí)方法,比現(xiàn)有技術(shù)方法在查準(zhǔn)率,查全率以及F1得分等指標(biāo)都有著明顯提高。
本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案包括如下步驟:
步驟1:數(shù)據(jù)集預(yù)處理;
采用公開的源代碼注釋數(shù)據(jù)集,將源代碼注釋數(shù)據(jù)集中的每一條注釋過濾掉非英文字符,只保留英文字母并且將所有英文字母轉(zhuǎn)換成小寫字母并移除停止詞;
步驟2:特征提取;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于西北工業(yè)大學(xué),未經(jīng)西北工業(yè)大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110632822.1/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06K 數(shù)據(jù)識別;數(shù)據(jù)表示;記錄載體;記錄載體的處理
G06K9-00 用于閱讀或識別印刷或書寫字符或者用于識別圖形,例如,指紋的方法或裝置
G06K9-03 .錯誤的檢測或校正,例如,用重復(fù)掃描圖形的方法
G06K9-18 .應(yīng)用具有附加代碼標(biāo)記或含有代碼標(biāo)記的打印字符的,例如,由不同形狀的各個筆畫組成的,而且每個筆畫表示不同的代碼值的字符
G06K9-20 .圖像捕獲
G06K9-36 .圖像預(yù)處理,即無須判定關(guān)于圖像的同一性而進行的圖像信息處理
G06K9-60 .圖像捕獲和多種預(yù)處理作用的組合
- 減債方法及其設(shè)備
- 一種網(wǎng)式債權(quán)債務(wù)處理方法和系統(tǒng)
- 基于大規(guī)模債務(wù)網(wǎng)絡(luò)的債務(wù)抵銷方法
- 資產(chǎn)數(shù)據(jù)處理方法、裝置、存儲介質(zhì)和計算機設(shè)備
- 拍賣收益的分配方法及終端設(shè)備
- 一種智能合約處理方法、裝置、區(qū)塊鏈節(jié)點設(shè)備及介質(zhì)
- 基于區(qū)塊鏈的債務(wù)催收系統(tǒng)、方法、設(shè)備及存儲介質(zhì)
- 一種基于大數(shù)據(jù)的債務(wù)化解方法及系統(tǒng)
- 債務(wù)清理方法及系統(tǒng)
- 債務(wù)數(shù)據(jù)處理方法、裝置、設(shè)備及存儲介質(zhì)





