-
公开(公告)号:CN109977205B
公开(公告)日:2021-06-22
申请号:CN201910178229.7
申请日:2019-03-08
Applicant: 中南大学
IPC: G06F16/332 , G06F16/35 , G06F16/34
Abstract: 本发明公开了一种计算机自主学习源代码的方法,其特征在于,该方法包括以下步骤:S1、数据收集模块,通过在线判题系统得到符合要求c++程序代码,由问题题号P、问题c++源代码文件S两部分组成;S2、数据预处理模块,主要是将c++程序代码解析成能涵盖程序静态语法和动态语义的FDA图;S3、模型训练模块,利用带有注意力机制的门控图神经网络‑GGANN模型学习c++程序代码中间表示形式FDA图,以此训练好模型中的参数;S4、聚类与可视化分析模块,展开程序代码分类任务,评估模型分类精确度;可视化学习到的代码向量表征,分析模型性能;本发明提出的计算机自主学习源代码的方法能够改善现有的人工阅读代码方式,同时有助于计算机和人类更好的进行代码交互。
-
公开(公告)号:CN109977205A
公开(公告)日:2019-07-05
申请号:CN201910178229.7
申请日:2019-03-08
Applicant: 中南大学
IPC: G06F16/332 , G06F16/35 , G06F16/34
Abstract: 本发明公开了一种计算机自主学习源代码的方法,其特征在于,该方法包括以下步骤:S1、数据收集模块,通过在线判题系统得到符合要求c++程序代码,由问题题号P、问题c++源代码文件S两部分组成;S2、数据预处理模块,主要是将c++程序代码解析成能涵盖程序静态语法和动态语义的FDA图;S3、模型训练模块,利用带有注意力机制的门控图神经网络‑GGANN模型学习c++程序代码中间表示形式FDA图,以此训练好模型中的参数;S4、聚类与可视化分析模块,展开程序代码分类任务,评估模型分类精确度;可视化学习到的代码向量表征,分析模型性能;本发明提出的计算机自主学习源代码的方法能够改善现有的人工阅读代码方式,同时有助于计算机和人类更好的进行代码交互。
-