日本国产欧美大码a视频,亚洲美女久久,人人爱人人搞,亚洲18在线观看,aaa少妇高潮大片免费下载,日日干夜夜草,99免费在线观看

一種多特征融合軟件缺陷定位方法、裝置、設備及介質

文檔序號:42297478發(fā)布日期:2025-06-27 18:36閱讀:5來源:國知局

本發(fā)明涉及軟件缺陷定位問題的,尤其涉及一種多特征融合軟件缺陷定位方法、裝置、設備及介質。


背景技術:

1、近年來,機器學習和深度學習技術在軟件缺陷定位中的應用引起了廣泛關注。軟件缺陷定位作為軟件質量保證的關鍵環(huán)節(jié),涉及代碼分析、缺陷識別和智能推薦等復雜任務。隨著軟件系統(tǒng)規(guī)模的擴大和代碼復雜性的增加,傳統(tǒng)的缺陷定位方法難以高效應對大規(guī)模代碼庫中的缺陷排查需求,往往依賴人工分析,效率低下且易于出錯。深度學習,特別是自然語言處理和圖神經(jīng)網(wǎng)絡技術的進展,為軟件缺陷定位提供了新的智能化解決方案,能夠在提高效率的同時增強定位的準確性。

2、盡管深度學習在軟件缺陷定位中的應用前景廣闊,但也面臨一些挑戰(zhàn),例如缺陷報告與源代碼匹配的復雜性、模型的泛化能力以及高效處理大規(guī)模代碼庫的需求等。在實際應用中,如何提升模型在復雜缺陷定位場景中的表現(xiàn),尤其是處理多種特征和多模態(tài)數(shù)據(jù)的能力,仍然是當前研究的重要方向。通過持續(xù)的技術創(chuàng)新和實踐探索,深度學習和自然語言處理有望進一步提升軟件缺陷定位的智能化水平,為軟件開發(fā)過程中的調試和維護提供更高效的解決方案,推動軟件行業(yè)的質量提升和研發(fā)效率的優(yōu)化。


技術實現(xiàn)思路

1、為至少一定程度上解決現(xiàn)有技術中存在的技術問題之一,本發(fā)明的目的在于提供一種基于缺陷類別的多特征融合軟件缺陷定位方法、裝置、設備及介質。

2、本發(fā)明所采用的第一技術方案是:

3、一種多特征融合軟件缺陷定位方法,包括以下步驟:

4、進行數(shù)據(jù)采集,基于缺陷報告、對應缺陷文件和缺陷版本中的所有源代碼文件構建缺陷定位數(shù)據(jù)集;

5、對缺陷報告進行無監(jiān)督聚類,以將缺陷劃分為不同類別;

6、基于多任務學習構建多特征的缺陷定位模型,在缺陷定位模型中加入多門控網(wǎng)絡,以控制不同缺陷類別下不同特征的權重大??;

7、基于聚類劃分結果,采用缺陷定位數(shù)據(jù)集對缺陷定位模型進行有監(jiān)督訓練;

8、獲取標注類別的缺陷報告和項目源代碼文件,并輸入訓練后的缺陷定位模型,獲得所有文件的缺陷概率排序結果。

9、進一步地,所述對缺陷報告進行無監(jiān)督聚類,以將缺陷劃分為不同類別,包括:

10、基于缺陷報告的文本信息,采用文本聚類算法對缺陷報告進行無監(jiān)督聚類,以劃分缺陷類別。

11、進一步地,所述采用文本聚類算法對缺陷報告進行無監(jiān)督聚類,以劃分缺陷類別,包括:

12、采用隱含狄利克雷分布進行文本主題建模并通過k-means進行聚類;其中隱含狄利克雷分布的核心思想是將每個文檔表示為若干主題的概率分布,每個主題又是詞的概率分布:

13、通過采樣文檔主題分布和采樣主題詞分布構建聯(lián)合分布:

14、

15、式中,p(·)表示概率;α和β分別表示采樣文檔主題分布和采樣主題詞分布;w表示所有文檔的單詞集合,z表示每個單詞的主題分布,θ表示文檔的主題分布,表示主題的單詞分布;zd,n表示第d篇文檔中第n個詞的主題,wd,n表示第d個文檔中第n個單詞;θd表示文檔d的主題分布,表示主題k的詞分布;m表示文檔總數(shù),nd表示文檔d中單詞的數(shù)量,k表示主題的總數(shù);

16、通過變分推斷或gibbs采樣估計θd和得到主題分布θd作為文檔的特征向量,表示文檔在k個主題上的概率分布:

17、θd=[θd,1,θd,2,···,θd,k]??(2)

18、式中,θd,k表示第d個文檔中在第k個主題上的概率分布;

19、基于每個文檔的主題分布θd,采用k-means聚類算法劃分為c個聚類,初始化c個質心,并將其余文檔迭代地分配到最近的質心,目標是最小化簇內的平方誤差總和:

20、

21、式中,是指示函數(shù),yi是文檔i的聚類標簽,μj是第j個簇的質心,θi是第i篇文檔的主題分布;

22、最終將缺陷報告標注為c個不同的類別。

23、進一步地,所述基于多任務學習構建多特征的缺陷定位模型,在缺陷定位模型中加入多門控網(wǎng)絡,以控制不同缺陷類別下不同特征的權重大小,包括:

24、搭建多特征提取網(wǎng)絡,針對多種圖表示使用對應的圖神經(jīng)網(wǎng)絡進行特征提??;所述圖表示包括代碼的抽象語法樹(abstract?syntax?tree,簡稱ast)、控制流圖(controlflow?graph,簡稱cfg)以及程序依賴圖(program?dependency?graph,簡稱pdg),經(jīng)由多特征提取網(wǎng)絡,可以分別得到代碼在語法結構、執(zhí)行順序(功能語義)、語句間依賴關系等方面的特征,這些特征不僅可用于幫助模型識別代碼的語法錯誤、以及循環(huán)賦值等功能語義方面的缺陷,同時提供代碼抽象層面的語義,使得模型能夠學習到代碼的高級語義特征,進一步緩解缺陷報告和代碼文件之間的語義鴻溝;

25、針對代碼文本語義和缺陷報告文本語義的提取,進行語義嵌入,并結合cnn提取文本的局部語義信息;

26、設計與缺陷類別一一對應的多門控網(wǎng)絡,訓練不同類別下多特征的權重參數(shù)。

27、進一步地,所述設計與缺陷類別一一對應的多門控網(wǎng)絡,訓練不同類別下多特征的權重參數(shù),包括:

28、對于每個類別t,門控網(wǎng)絡會根據(jù)輸入特征生成一個權重向量g(t),以調整該類別的特征重要性;

29、基于門控網(wǎng)絡得到的權重向量g(t)計算特征加權,生成用于類別t的特征向量h(t);

30、對于每個類別t,將加權后的特征向量h(t)輸入到相應的任務網(wǎng)絡中,計算任務的輸出y(t)。

31、進一步地,所述權重向量g(t)的計算公式為:

32、g(t)=σ(w(t)br+b(t))??(4)

33、式中,是類別t的門控網(wǎng)絡權重矩陣,是偏置向量,br表示缺陷報告文本的特征向量,σ(·)表示激活函數(shù),可以采用sigmoid或者softmax函數(shù);

34、所述特征向量h(t)的計算公式為:

35、h(t)=g(t)⊙f??(5)

36、式中,表示由圖特征和語義特征組成的n行d列的多特征矩陣,⊙表示元素逐位相乘運算;

37、所述輸出y(t)的計算公式為:

38、y(t)=f(h(t))??(6)

39、其中f(·)表示最終的缺陷概率預測函數(shù)。

40、進一步地,所述缺陷定位模型的輸入為缺陷報告和源代碼文件的文本,輸出為源代碼文件的缺陷概率;

41、在模型訓練過程中,將損失函數(shù)設置為focalloss函數(shù):

42、lloc=-αt(1-pt)γlog(pt)??(7)

43、式中,pt為預測的概率,αt表示平衡參數(shù),用于控制正負樣本在損失中的權重,γ為聚焦參數(shù),控制難易樣本的權重。

44、本發(fā)明所采用的第二技術方案是:

45、一種多特征融合軟件缺陷定位裝置,包括:

46、數(shù)據(jù)采集和預處理模塊,用于進行數(shù)據(jù)采集,基于缺陷報告、對應缺陷文件和缺陷版本中的所有源代碼文件構建缺陷定位數(shù)據(jù)集;

47、缺陷聚類模塊,用于對缺陷報告進行無監(jiān)督聚類,以將缺陷劃分為不同類別;

48、模型構建模塊,用于基于多任務學習構建多特征的缺陷定位模型,在缺陷定位模型中加入多門控網(wǎng)絡,以控制不同缺陷類別下不同特征的權重大小;

49、模型訓練模塊,用于基于聚類劃分結果,采用缺陷定位數(shù)據(jù)集對缺陷定位模型進行有監(jiān)督訓練;

50、缺陷文件排序模塊,用于獲取標注類別的缺陷報告和項目源代碼文件,并輸入訓練后的缺陷定位模型,獲得所有文件的缺陷概率排序結果。

51、本發(fā)明所采用的第三技術方案是:

52、一種電子設備,所述電子設備包括處理器和存儲器,所述存儲器中存儲有至少一條指令、至少一段程序、代碼集或指令集,所述至少一條指令、所述至少一段程序、所述代碼集或指令集由所述處理器加載并執(zhí)行,以實現(xiàn)如上所述的一種多特征融合軟件缺陷定位方法。

53、本發(fā)明所采用的第四技術方案是:

54、一種計算機可讀存儲介質,所述存儲介質中存儲有至少一條指令、至少一段程序、代碼集或指令集,所述至少一條指令、所述至少一段程序、所述代碼集或指令集由處理器加載并執(zhí)行以實現(xiàn)如上所述的一種多特征融合軟件缺陷定位方法。

55、本發(fā)明所采用的第五技術方案是:

56、一種計算機程序產(chǎn)品或計算機程序,該計算機程序產(chǎn)品或計算機程序包括計算機指令,該計算機指令存儲在計算機可讀存儲介質中。計算機設備的處理器可以從計算機可讀存儲介質讀取該計算機指令,處理器執(zhí)行該計算機指令,使得該計算機設備執(zhí)行上述的方法。

57、本發(fā)明的有益效果是:本發(fā)明通過細分缺陷類別以控制特征權重的方式,可以有效提高缺陷定位方法的精確性;并且融合多種代碼結構表征,為軟件缺陷定位模型提供更充分的特征信息。

當前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1