[發明專利]源代碼缺陷檢測方法及相關裝置在審
| 申請號: | 202310607881.2 | 申請日: | 2023-05-26 |
| 公開(公告)號: | CN116627821A | 公開(公告)日: | 2023-08-22 |
| 發明(設計)人: | 簡苡霖;陳婕 | 申請(專利權)人: | 中國銀行股份有限公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36;G06F40/253;G06F40/284;G06F40/30;G06N3/08 |
| 代理公司: | 北京集佳知識產權代理有限公司 11227 | 代理人: | 周初冬 |
| 地址: | 100818 *** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 源代碼 缺陷 檢測 方法 相關 裝置 | ||
1.一種源代碼缺陷檢測方法,其特征在于,包括:
獲得源代碼缺陷的特征信息;
對所述特征信息進行向量化,從而得到對應的特征向量;
將所述特征向量輸入至預先訓練好的神經網絡模型,從而獲得所述神經網絡模型輸出的缺陷檢測結果。
2.根據權利要求1所述的方法,其特征在于,所述獲得源代碼缺陷的特征信息,包括:
獲得目標源代碼;
根據所述目標源代碼,提取得到所述目標源代碼的淺層特征和潛在特征,其中,所述淺層特征表征代碼行數、每條數據流中的符號數量和用于表達數據的向量維度,所述潛在特征表征上下文之間的語義聯系和每條數據中符號之間的語義語法關聯。
3.根據權利要求1所述的方法,其特征在于,所述對所述特征信息進行向量化,從而得到對應的特征向量,包括:
基于獨熱編碼技術one-hot,對所述特征信息中的各特征詞進行編碼,從而得到二進制的所述特征向量。
4.根據權利要求1所述的方法,其特征在于,所述對所述特征信息進行向量化,從而得到對應的特征向量,包括:
基于word2vec編碼技術,對所述特征信息中的各特征詞進行編碼,從而得到述特征向量。
5.根據權利要求1所述的方法,其特征在于,所述神經網絡模型的訓練過程,包括:
獲得多個源代碼的源代碼缺陷的特征信息;
針對任一所述源代碼的特征信息,將所述特征信息進行向量化,映射至向量空間,從而得到對應特征向量;
將各所述特征向量劃分為訓練集和測試集;
根據所述訓練集,對所述神經網絡模型進行訓練;
根據所述測試集,對所述神經網絡模型進行測試;
若所述神經網絡模型的測試結果未達到預設要求,則調整所述神經網絡模型的參數,并繼續對所述神經網絡模型進行訓練和預測,直到所述神經網絡模型的測試結果達到所述預設要求為止。
6.根據權利要求5所述的方法,其特征在于,在所述根據所述測試集,對所述神經網絡模型進行測試之后,所述方法還包括:
獲得相應的測試信息;
根據所述測試信息,計算所述神經網絡模型的準確率或者錯誤率。
7.一種源代碼缺陷檢測裝置,其特征在于,包括:特征信息獲得單元、特征向量獲得單元和缺陷檢測單元;
所述特征信息獲得單元,用于獲得源代碼缺陷的特征信息;
所述特征向量獲得單元,用于對所述特征信息進行向量化,從而得到對應的特征向量;
所述缺陷檢測單元,用于將所述特征向量輸入至預先訓練好的神經網絡模型,從而獲得所述神經網絡模型輸出的缺陷檢測結果。
8.根據權利要求7所述的裝置,其特征在于,所述特征信息獲得單元,包括:源代碼獲得子單元和特征抽取子單元;
所述源代碼獲得子單元,用于獲得目標源代碼;
所述特征抽取子單元,用于根據所述目標源代碼,提取得到所述目標源代碼的淺層特征和潛在特征,其中,所述淺層特征表征代碼行數、每條數據流中的符號數量和用于表達數據的向量維度,所述潛在特征表征上下文之間的語義聯系和每條數據中符號之間的語義語法關聯。
9.一種計算機可讀存儲介質,其上存儲有程序,其特征在于,所述程序被處理器執行時實現如權利要求1至6中任一項所述的源代碼缺陷檢測方法。
10.一種電子設備,其特征在于,所述電子設備包括至少一個處理器、以及與所述處理器連接的至少一個存儲器、總線;其中,所述處理器、所述存儲器通過所述總線完成相互間的通信;所述處理器用于調用所述存儲器中的程序指令,以執行如權利要求1至6中任一項所述的源代碼缺陷檢測方法。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國銀行股份有限公司,未經中國銀行股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202310607881.2/1.html,轉載請聲明來源鉆瓜專利網。





