[发明专利]基于联邦学习的代码注释生成方法、系统及装置有效
申请号: | 202011355708.0 | 申请日: | 2020-11-27 |
公开(公告)号: | CN112463161B | 公开(公告)日: | 2023-07-28 |
发明(设计)人: | 王健宗;李泽远;何安珣 | 申请(专利权)人: | 平安科技(深圳)有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06N20/20 |
代理公司: | 北京鸿元知识产权代理有限公司 11327 | 代理人: | 袁文婷;张娓娓 |
地址: | 518033 广东省深圳市福田区福*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 联邦 学习 代码 注释 生成 方法 系统 装置 | ||
1.一种基于联邦学习的代码注释生成方法,应用于电子装置,其特征在于,所述方法包括:
基于预设服务器生成模型初始参数集,并将所述模型初始参数集发送至预设的至少两个客户端;其中,
所述预设服务器与所述客户端构成联邦学习框架,所述预设服务器与各客户端之间均可进行双向信息传输,并且各客户端均配置有相应的代码注释生成模型,各客户端不直接连通;
基于所述模型初始参数集,通过各客户端上的预设样本数据集对其相应的代码注释生成模型进行初步训练,以得到各代码注释生成模型的模型优化参数集;
将各客户端的所述模型优化参数集发送至所述预设服务器,并基于所述预设服务器对接收到的模型优化参数集进行聚合,得到聚合优化参数集;
将所述聚合优化参数集发送至各客户端,并基于所述聚合优化参数集对各代码注释生成模型进行再次训练,得到代码注释生成新模型;
基于所述代码注释生成新模型对各客户端的待注释代码进行代码注释;其中,所述预设样本数据集包括源代码样本序列和注释单词样本序列以及抽象语法树样本序列;并且,通过各客户端上的预设样本数据集对其相应的代码注释生成模型进行初步训练的过程包括:
分别对所述源代码样本序列和所述抽象语法树样本序列进行编码,以提取所述源代码样本序列中的词汇特征序列以及所述抽象语法树样本序列中的语法特征序列;
通过注意机制选择所述词汇特征序列与所述语法特征序列中的优质特征序列;
对所述优质特征序列进行译码,以通过模拟所述注释单词样本序列生成注释单词目标序列;其中,
在编码和译码过程中,所述代码注释生成模型的模型参数得以优化以生成所述模型优化参数集;
通过各客户端上的预设样本数据集对其相应的代码注释生成模型进行初步训练的过程还包括:
通过随机梯度下降法基于所述预设样本数据集对所述代码注释生成模型进行迭代训练,直至预设的目标函数收敛;其中,
当所述目标函数收敛时,所述代码注释生成模型的模型参数得以优化以生成所述模型优化参数集;
其中,在将各客户端的所述模型优化参数集发送至所述预设服务器之前,先对所述模型优化参数集进行动态加密,然后发送至所述预设服务器进行聚合;
在将所述聚合优化参数集发送至各客户端之后,先对所述聚合优化参数集进行解密,然后再基于所述聚合优化参数集对各代码注释生成模型进行再次训练。
2.根据权利要求1所述的基于联邦学习的代码注释生成方法,其特征在于,所述预设样本数据集包括源代码样本序列和注释单词样本序列;并且,通过各客户端上的预设样本数据集对其相应的代码注释生成模型进行初步训练的过程包括:
对所述源代码样本序列进行编码,以提取所述源代码样本序列中的词汇特征序列;
对所述词汇特征序列进行译码,以通过模拟所述注释单词样本序列生成注释单词目标序列;其中,
在所述编码和所述译码过程中,所述代码注释生成模型的模型参数得以优化以生成所述模型优化参数集。
3.根据权利要求1所述的基于联邦学习的代码注释生成方法,其特征在于,在基于所述预设服务器对接收到的模型优化参数集进行聚合的过程中,
在所述预设服务器接收到的所有的模型优化参数集中任取个模型优化参数集并基于预设聚合公式进行聚合处理,以得到所述聚合优化参数集;其中,
所述预设聚合公式为:
其中,,n为客户端的总个数,为第i个客户端模型的第j个参数,为聚合优化参数集的第j个聚合优化参数。
4.根据权利要求3所述的基于联邦学习的代码注释生成方法,其特征在于,在基于所述聚合优化参数集对各代码注释生成模型进行再次训练得到模型优化参数之后,还包括:
重复循环基于所述预设服务器对所述模型优化参数聚合的过程以及基于所述聚合优化参数集对各代码注释生成模型进行再次训练的过程,直至各代码注释生成模型的模拟注释精度达到预设精度阈值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于平安科技(深圳)有限公司,未经平安科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011355708.0/1.html,转载请声明来源钻瓜专利网。