[發明專利]基于多跳推理機制的代碼摘要生成方法及系統有效
| 申請號: | 202110426243.1 | 申請日: | 2021-04-20 |
| 公開(公告)號: | CN113342343B | 公開(公告)日: | 2022-05-27 |
| 發明(設計)人: | 呂晨;馬正;李季;高曰秀;呂蕾;劉弘 | 申請(專利權)人: | 山東師范大學 |
| 主分類號: | G06F8/41 | 分類號: | G06F8/41;G06F16/36;G06N5/04 |
| 代理公司: | 濟南圣達知識產權代理有限公司 37221 | 代理人: | 黃海麗 |
| 地址: | 250014 山*** | 國省代碼: | 山東;37 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 推理 機制 代碼 摘要 生成 方法 系統 | ||
1.基于多跳推理機制的代碼摘要生成方法,其特征是,包括:
獲取待生成摘要的代碼;
對待生成摘要的代碼進行解析,生成抽象語法樹;對抽象語法樹進行特征提取,得到抽象語法樹特征向量;
將抽象語法樹特征向量和自然語言表述特征向量,輸入到訓練后的transformer模型中,得到代碼的初始摘要;
對代碼的初始摘要和已知的知識圖譜,利用多跳推理算法進行處理,得到代碼的推理摘要;
所述多跳推理算法的表達式為:
其中,f(·)是聚集來自連接結點的分數的聚合器,ns(v)表示結點v的分數;u表示訪問的結點;r表示訪問結點與v直接相連的邊;γ是控制來自先前跳躍的信息流強度的折扣因子;ns(u)是指訪問結點u的分數;
R(u,r,v)是三重相關性,反映了在當前背景下的三元組給(u,r,v)給出的證據的相關性;計算三重相關性:
表示代碼的初始摘要;hu,r,v中的u,r,v表示知識圖譜中的實體概念;
在H跳之后,通過歸一化獲得結點上的最終分布:
p(ct|st,G)=softmaxv∈V(ns(v)) (3-4)
其中,ct是在t時間步選取的結點的概念;p(ct|st,G)表示代碼的推理摘要,st表示s1,s2,s3,…,st-1;
將代碼的初始摘要和代碼的推理摘要進行加權融合,得到最終的代碼摘要。
2.如權利要求1所述的基于多跳推理機制的代碼摘要生成方法,其特征是,對待生成摘要的代碼進行解析,生成抽象語法樹;具體包括:
利用JavaParser解析代碼,生成其對應的抽象語法樹;
其中,利用JavaParser解析代碼,解析后得到兩部分信息:一是抽象語法樹結點所代表的信息;二是結點與結點的指向關系,存儲邊的信息。
3.如權利要求1所述的基于多跳推理機制的代碼摘要生成方法,其特征是,對抽象語法樹進行特征提取,得到抽象語法樹特征向量;具體包括:
采用圖卷積神經網絡,對抽象語法樹進行圖嵌入,得到抽象語法樹特征向量。
4.如權利要求1所述的基于多跳推理機制的代碼摘要生成方法,其特征是,將抽象語法樹特征向量和自然語言表述特征向量,輸入到訓練后的transformer模型中,得到代碼的初始摘要;具體包括:
將抽象語法樹特征向量輸入到訓練后的transformer模型的編碼器,得到編碼向量;
將獲取的自然語言表述進行特征提取,得到自然語言表述特征向量;
將編碼向量和自然語言表述特征向量,輸入到訓練后的transformer模型的解碼器中,得到代碼的初始摘要。
5.如權利要求1所述的基于多跳推理機制的代碼摘要生成方法,其特征是,訓練后的transformer模型,其訓練步驟包括:
構建訓練集;所述訓練集,包括:已知代碼摘要的代碼片段和自然語言表述;
將訓練集的代碼片段解析,生成抽象語法樹;對抽象語法樹進行特征提取,得到抽象語法樹特征向量;
將抽象語法樹特征向量作為transformer模型的編碼器的輸入值;
將訓練集的自然語言表述進行特征提取,得到自然語言表述特征向量;
將編碼器的輸出值和自然語言表述特征向量,均作為transformer模型的解碼器的輸入值,將訓練集的已知代碼摘要,作為transformer模型的解碼器的輸出值,對transformer模型進行訓練,當模型的損失函數達到最小值時,停止訓練,得到訓練后的transformer模型。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于山東師范大學,未經山東師范大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110426243.1/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種項目模塊化開發的方法和系統
- 下一篇:一種環保工程用固廢處理設備





