一种基于神经网络语言模型的重复代码检测方法

    公开(公告)号:CN107273294B

    公开(公告)日:2020-07-28

    申请号:CN201710464437.4

    申请日:2017-06-19

    Abstract: 本发明公开了一种基于神经网络语言模型的重复代码检测方法,属于重复代码检测方法技术领域,解决现有技术中的重复代码检测方法,不能检测出没有进行本质性改变的重复代码,造成检测的准确率,容易给代码原创者造成经济损失等问题。本发明包括步骤1:将所有的代码中的每个代码转换为相应的CFG图;步骤2:抽取每个CFG图中每一个结点的根子图;步骤3:将所有根子图采用向量表示;步骤4:将根子图的向量表示输入到深度图核函数中学习,得到所有CFG图两两间的相似度;步骤5:将CFG图两两间的相似度输入到AP关联聚类算法中进行CFG图的聚类得到多个聚类簇,在同一个聚类簇中的CFG图所对应的代码即为重复代码。本发明用于发现重复代码。

    一种基于神经网络语言模型的重复代码检测方法

    公开(公告)号:CN107273294A

    公开(公告)日:2017-10-20

    申请号:CN201710464437.4

    申请日:2017-06-19

    Abstract: 本发明公开了一种基于神经网络语言模型的重复代码检测方法,属于重复代码检测方法技术领域,解决现有技术中的重复代码检测方法,不能检测出没有进行本质性改变的重复代码,造成检测的准确率,容易给代码原创者造成经济损失等问题。本发明包括步骤1:将所有的代码中的每个代码转换为相应的CFG图;步骤2:抽取每个CFG图中每一个结点的根子图;步骤3:将所有根子图采用向量表示;步骤4:将根子图的向量表示输入到深度图核函数中学习,得到所有CFG图两两间的相似度;步骤5:将CFG图两两间的相似度输入到AP关联聚类算法中进行CFG图的聚类得到多个聚类簇,在同一个聚类簇中的CFG图所对应的代码即为重复代码。本发明用于发现重复代码。

Patent Agency Ranking