北京北大軟件工程股份有限公司張世琨獲國家專利權
買專利賣專利找龍圖騰,真高效! 查專利查商標用IPTOP,全免費!專利年費監控用IP管家,真方便!
龍圖騰網獲悉北京北大軟件工程股份有限公司申請的專利代碼克隆檢測方法、系統、設備、介質及產品獲國家發明授權專利權,本發明授權專利權由國家知識產權局授予,授權公告號為:CN119960825B 。
龍圖騰網通過國家知識產權局官網在2025-08-15發布的發明授權授權公告中獲悉:該發明授權的專利申請號/專利號為:202510449628.8,技術領域涉及:G06F8/75;該發明授權代碼克隆檢測方法、系統、設備、介質及產品是由張世琨;高慶;李海洋;潘克峰設計研發完成,并于2025-04-11向國家知識產權局提交的專利申請。
本代碼克隆檢測方法、系統、設備、介質及產品在說明書摘要公布了:本申請公開了一種代碼克隆檢測方法、系統、設備、介質及產品,涉及軟件工程領域,該方法包括從待檢測代碼倉庫獲取待檢測代碼段,并將所有待檢測代碼段輸入訓練好的克隆代碼檢測模型中,輸出與待檢測代碼段相對應的第一代碼表示向量;任意選擇兩個第一代碼表示向量作為代碼對,將語義距離小于預設閾值的代碼對標記為克隆代碼。本申請可提升代碼克隆檢測的準確度。
本發明授權代碼克隆檢測方法、系統、設備、介質及產品在權利要求書中公布了:1.一種代碼克隆檢測方法,其特征在于,所述代碼克隆檢測方法包括: 從待檢測代碼倉庫獲取待檢測代碼段,并將所有所述待檢測代碼段輸入訓練好的克隆代碼檢測模型中,輸出與所述待檢測代碼段相對應的第一代碼表示向量; 任意選擇兩個所述第一代碼表示向量作為代碼對,將語義距離小于預設閾值的所述代碼對標記為克隆代碼; 其中,所述克隆代碼檢測模型通過如下方式訓練得到: 從代碼克隆檢測數據集中隨機采樣,得到數量相同且存在唯一對應關系的源代碼段和第一目標代碼段,每對存在所述唯一對應關系的所述源代碼段與所述第一目標代碼段互為克隆代碼,所述唯一對應關系指語義等價或語法不同功能相同; 將所有所述源代碼段與所述第一目標代碼段輸入初始克隆代碼檢測模型,并通過多任務學習損失函數對所述初始克隆代碼檢測模型進行訓練,得到克隆代碼檢測模型,所述多任務學習損失函數包括對比學習損失函數和翻譯增強學習損失函數; 所述初始克隆代碼檢測模型包括編碼器和解碼器; 所述通過多任務學習損失函數對所述初始克隆代碼檢測模型進行訓練,得到克隆代碼檢測模型,包括: 將所述源代碼段經過編碼器的編碼處理,輸出與所述源代碼段相對應的第二代碼表示向量,每個所述源代碼段和相對應的所述第二代碼表示向量均附有相同標簽,所述標簽用于表征所述源代碼段的功能; 將所有所述源代碼段進行兩兩配對,得到多個代碼對,根據所述源代碼段的所述標簽的匹配情況判斷所述代碼對是否為克隆代碼對,如果所述標簽匹配,則將所述代碼對標記為克隆代碼對,否則,將所述代碼對標記為非克隆代碼對; 根據所述對比學習損失函數計算所述克隆代碼對的對比學習損失; 將所有所述第二代碼表示向量經過解碼器的解碼處理,輸出與所述第二代碼表示向量相對應的第二目標代碼段,并通過翻譯增強學習損失函數計算所述第二目標代碼段相對所述第一目標代碼段的翻譯增強損失; 通過所述對比學習損失和所述翻譯增強學習損失得到多任務學習損失,通過所述多任務學習損失不斷迭代所述初始克隆代碼檢測模型的模型參數,使模型不斷學習如何捕獲所述源代碼段的語義,從而得到所述克隆代碼檢測模型。
如需購買、轉讓、實施、許可或投資類似專利技術,可聯系本專利的申請人或專利權人北京北大軟件工程股份有限公司,其通訊地址為:100080 北京市海淀區北四環西路67號中關村國際創新大廈11層1101-1103、1106-1108室;或者聯系龍圖騰網官方客服,聯系龍圖騰網可撥打電話0551-65771310或微信搜索“龍圖騰網”。
1、本報告根據公開、合法渠道獲得相關數據和信息,力求客觀、公正,但并不保證數據的最終完整性和準確性。
2、報告中的分析和結論僅反映本公司于發布本報告當日的職業理解,僅供參考使用,不能作為本公司承擔任何法律責任的依據或者憑證。