欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種跨框架API缺陷檢測方法、系統(tǒng)及相關(guān)裝置

文檔序號:40576086發(fā)布日期:2025-01-07 20:15閱讀:7來源:國知局
一種跨框架API缺陷檢測方法、系統(tǒng)及相關(guān)裝置

本發(fā)明涉及缺陷檢測,尤其涉及一種跨框架api缺陷檢測方法、系統(tǒng)及相關(guān)裝置。


背景技術(shù):

1、深度學習技術(shù)已經(jīng)在各個領(lǐng)域得到廣泛應用。其中,深度學習框架扮演著至關(guān)重要的角色,為開發(fā)者提供了一系列簡單而靈活的api,用以構(gòu)建、訓練和部署各種復雜的深度學習模型和應用。然而,隨著深度學習技術(shù)的普及,安全問題也逐漸顯露出來。深度學習框架作為整個深度學習系統(tǒng)的核心,其安全性顯得尤為重要。一旦深度學習框架的api存在缺陷,將會影響到使用這些框架訓練的深度學習模型,從而影響到應用這些模型的各個領(lǐng)域,造成嚴重危害。因此,確保構(gòu)建深度學習模型的深度學習框架api的安全性至關(guān)重要。

2、深度學習框架缺陷主要是指深度學習框架中的接口或功能存在缺陷或漏洞,導致安全隱患或功能異常,目前,檢測深度學習框架缺陷的方法主要包括兩種:基于模型的模糊測試和基于api的模糊測試。基于模型的模糊測試是利用深度神經(jīng)網(wǎng)絡(luò)模型作為測試用例進行模糊測試,并對模型輸出結(jié)果進行差分測試,從而檢測深度學習框架的缺陷;基于api的模糊測試則是針對深度學習框架的api,收集或生成測試用例,然后對api的運行結(jié)果進行差分測試以檢測深度學習框架中的缺陷。

3、但上述兩種方法存在以下缺陷:基于模型的模糊測試雖然有助于發(fā)現(xiàn)深度學習模型訓練和驗證中的缺陷,但存在著代碼覆蓋率不足的問題,而且需要大量不同的深度學習模型?;赼pi的模糊測試則需要準確的約束信息來生成更高質(zhì)量的測試用例,然而由于深度學習框架api數(shù)量龐大且關(guān)系復雜,因此難以有效地測試深度學習框架的api,并且目前的方法未能充分利用不同深度學習框架存在大量功能相似的api,并且這類api之間共享相同錯誤的特征進行缺陷檢測。


技術(shù)實現(xiàn)思路

1、為解決上述技術(shù)問題,本發(fā)明實施例提供一種跨框架api缺陷檢測方法、系統(tǒng)及相關(guān)裝置。

2、本發(fā)明實施例的技術(shù)方案是這樣實現(xiàn)的:

3、本發(fā)明實施例提供了一種跨框架api缺陷檢測方法,方法包括:獲取api缺陷代碼,基于所述api缺陷代碼確定所述api缺陷代碼中的缺陷參數(shù);利用預設(shè)相似度算法從每個待測試的深度學習框架下的所有api中,遍歷查找與所述api缺陷代碼最相似的同類api,獲得同類api集;對于所述同類api集中的每個同類api,利用所述每個同類api與所述api缺陷代碼的參數(shù)匹配關(guān)系,以及所述api缺陷代碼中的缺陷參數(shù)生成所述同類api對應的測試用例;利用所述測試用例對所述同類api進行模糊測試,獲得所述同類api的缺陷檢測結(jié)果。

4、在一實施例中,基于所述api缺陷代碼確定所述api缺陷代碼中的缺陷參數(shù),包括:動態(tài)運行所述api缺陷代碼,獲取所述api缺陷代碼中的參數(shù)列表以及對應的參數(shù)值;通過api文檔約束分析,將所述參數(shù)列表劃分為必要參數(shù)列表和可選參數(shù)列表;所述必要參數(shù)列表為api被調(diào)用時必須傳遞的參數(shù);所述可選參數(shù)列表為所述參數(shù)列表中除必要參數(shù)之外的其他參數(shù);對所述可選參數(shù)列表中的每個可選參數(shù),迭代測試所述每個可選參數(shù)是否為導致缺陷產(chǎn)生的參數(shù);對不是導致缺陷產(chǎn)生的可選參數(shù)從參數(shù)列表中刪除,獲得缺陷參數(shù)列表。

5、在一實施例中,利用預設(shè)相似度算法從每個待測試的深度學習框架下的所有api中,遍歷查找與所述api缺陷代碼最相似的同類api,獲得同類api集,包括:對每個待測試的深度學習框架下的每個api,獲取對應的api文檔信息;所述api文檔信息包括api函數(shù)簽名、api示例代碼和api功能描述;對所述api文檔信息進行詞向量嵌入表示,獲得所述api文檔信息對應的詞向量嵌入;利用預設(shè)相似度算法計算所述api的詞向量嵌入與所述api缺陷代碼所對應的詞向量嵌入之間的相似度;根據(jù)所述每個api的相似度,從所述每個待測試的深度學習框架下的所有api中查找與所述api缺陷代碼最相似的同類api;獲取所述待測試的深度學習框架下的同類api,構(gòu)成同類api集。

6、在一實施例中,預設(shè)相似度算法為:

7、

8、其中,為詞向量嵌入之間的相似度,為apii的詞向量嵌入,為apij的詞向量嵌入,為apii的詞向量嵌入的模,為apij的詞向量嵌入的模。

9、在一實施例中,對于所述同類api集中的每個同類api,利用所述每個同類api與所述api缺陷代碼的參數(shù)匹配關(guān)系,以及所述api缺陷代碼中的缺陷參數(shù)生成所述同類api對應的測試用例,包括:對于所述同類api集中的每個同類api,利用預設(shè)的參數(shù)匹配模塊對所述api缺陷代碼所對應的參數(shù)列表和所述每個同類api所對應的參數(shù)列表進行自動化參數(shù)匹配,確定所述api缺陷代碼和所述每個同類api的參數(shù)配對關(guān)系;根據(jù)所述參數(shù)配對關(guān)系,利用所述api缺陷代碼所對應的缺陷參數(shù)生成每個同類api對應的測試用例。

10、在一實施例中,獲得同類api集之后,所述方法還包括:對于所述同類api集之外的其他api,獲取所述其他api的參數(shù)信息,所述參數(shù)信息包括參數(shù)類型、參數(shù)值和參數(shù)形狀;從預設(shè)缺陷數(shù)據(jù)庫中查找參數(shù)信息與所述其他api的參數(shù)信息相似的api缺陷;利用所述api缺陷的參數(shù)信息生成對所述其他api的測試用例。

11、在一實施例中,利用所述測試用例對所述同類api進行模糊測試,獲得所述同類api的缺陷檢測結(jié)果,包括:在模糊測試過程中,在出現(xiàn)了非運行時報錯信息或測試結(jié)果不一致的情況下,確定所述同類api的缺陷檢測結(jié)果為存在缺陷。

12、本發(fā)明實施例還提供了一種跨框架api缺陷檢測系統(tǒng),所述跨框架api缺陷檢測系統(tǒng)包括:獲取模塊,用于獲取api缺陷代碼,基于所述api缺陷代碼確定所述api缺陷代碼中的缺陷參數(shù);相似算法模塊,用于利用預設(shè)相似度算法從每個待測試的深度學習框架下的所有api中,遍歷查找與所述api缺陷代碼最相似的同類api,獲得同類api集;模糊測試模塊,用于對于所述同類api集中的每個同類api,利用所述每個同類api與所述api缺陷代碼的參數(shù)匹配關(guān)系,以及所述api缺陷代碼中的缺陷參數(shù)生成所述同類api對應的測試用例;利用所述測試用例對所述同類api進行模糊測試,獲得所述同類api的缺陷檢測結(jié)果。

13、本發(fā)明實施例還提供了一種電子設(shè)備,包括:處理器和用于存儲能夠在處理器上運行的計算機程序的存儲器;其中,所述處理器用于運行所述計算機程序時,執(zhí)行上述任一項所述方法的步驟。

14、本發(fā)明實施例還提供了一種存儲介質(zhì),所述存儲介質(zhì)中存儲有計算機程序,所述計算機程序被處理器執(zhí)行時,實現(xiàn)上述任一項所述方法的步驟。

15、本發(fā)明實施例提供的跨框架api缺陷檢測方法、系統(tǒng)及相關(guān)裝置,獲取api缺陷代碼,基于所述api缺陷代碼確定所述api缺陷代碼中的缺陷參數(shù);利用預設(shè)相似度算法從每個待測試的深度學習框架下的所有api中,遍歷查找與所述api缺陷代碼最相似的同類api,獲得同類api集;對于所述同類api集中的每個同類api,利用所述每個同類api與所述api缺陷代碼的參數(shù)匹配關(guān)系,以及所述api缺陷代碼中的缺陷參數(shù)生成所述同類api對應的測試用例;利用所述測試用例對所述同類api進行模糊測試,獲得所述同類api的缺陷檢測結(jié)果。本發(fā)明提供的方案根據(jù)文檔相似度匹配不同框架中的同類api,不需要模型轉(zhuǎn)換規(guī)則表,并且支持識別不能互相進行模型轉(zhuǎn)換的框架中的同類api,能夠跨更多深度學習框架進行缺陷檢測。且本發(fā)明提供的方案進行缺陷參數(shù)定位、并利用api和跨框架的同類api存在相同錯誤的情況生成測試用例,在生成測試用例時能夠更加精準地定位潛在缺陷,細粒度更高,提高了模糊測試的效率和覆蓋率。

當前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
从江县| 大关县| 屯昌县| 墨竹工卡县| 商南县| 永胜县| 武山县| 额尔古纳市| 襄樊市| 伊通| 北流市| 新兴县| 丰县| 文山县| 盐边县| 菏泽市| 桃园县| 巩义市| 大竹县| 黄骅市| 萍乡市| 乳山市| 泗阳县| 罗山县| 博兴县| 锡林郭勒盟| 枣强县| 从江县| 容城县| 万州区| 开封市| 新竹县| 台江县| 东兰县| 浏阳市| 格尔木市| 白朗县| 泰来县| 楚雄市| 四子王旗| 贵定县|