[发明专利]一种获取开源代码库中函数的向量的方法和系统有效
申请号: | 201710278759.X | 申请日: | 2017-04-25 |
公开(公告)号: | CN107102861B | 公开(公告)日: | 2019-09-03 |
发明(设计)人: | 李海峰;张文泽;邓敏 | 申请(专利权)人: | 中南大学 |
主分类号: | G06F8/70 | 分类号: | G06F8/70 |
代理公司: | 北京路浩知识产权代理有限公司 11002 | 代理人: | 王莹 |
地址: | 410083 湖南*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提供一种获取开源代码库中函数的向量的方法和系统,包括:提取开源代码库中的函数调用图,所述函数调用图用于描述各函数间的调用关系;基于随机漫步模型,获得所述函数调用图中各函数的函数调用序列;以及将所述函数调用序列作为嵌入模型的输入项,获得各函数的向量。通过开源代码学习出函数的有效向量表示,通过引入该种嵌入表达,能够有效的提升目前机器自动代码生成模型的通用性和实用性。 | ||
搜索关键词: | 一种 获取 源代码 函数 向量 方法 系统 | ||
【主权项】:
1.一种获取开源代码库中函数的向量的方法,其特征在于,包括:S1、提取开源代码库中的函数调用图,所述函数调用图用于描述各函数间的调用关系;S2、基于随机漫步模型,获得所述函数调用图中各函数的函数调用序列;以及S3、将所述函数调用序列作为嵌入模型的输入项,获得各函数的向量;所述步骤S2包括:S2.1、将所述函数调用图中的起始函数作为函数调用序列的第一节点,设置函数调用序列的步长;S2.2、基于第一节点与其他节点间的最短距离、权重、抽样参数、回溯参数,以及所述第一节点与其他节点是否属于节点边的结合,获得第一节点后的最短转移概率的节点,作为第二节点;以及S2.3、基于第二节点与其他节点间的最短距离、权重、抽样参数、回溯参数以及第二节点与其他节点是否属于节点边的结合,获得第二节点后的最短转移概率的节点,作为第三节点,直至随机漫步的长度符合所述函数调用序列的步长,将所述步长的转移轨迹作为所述函数调用序列。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中南大学,未经中南大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201710278759.X/,转载请声明来源钻瓜专利网。