网站大量收购独家精品文档,联系QQ:2885784924

代码变更表示学习及其应用研究-张钊.pdf

代码变更表示学习及其应用研究-张钊.pdf

  1. 1、本文档共43页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

BeijingForestStudio

ThenameoftheDepartment

北京理工大学信息系统及安全对抗实验中心

部门名称

代码变更表示学习及其应用研究

张钊

2023年07月16日

内容提要

•背景简介

•基础概念

–代码变更

–代码变更表示学习

•算法原理

–FIRA

–CCRep

•应用总结

•参考文献

2

问题回溯

•总结反思:

–学术报告要讲解深入,注意整体架构、方法细节和关键技术的讲解

–要声音洪亮清晰,提高现场沟通互动频次

•相关内容:

–李新帅《基于Transformer的时间序列分析》

–张凌浩《代码异味检测》

–孔令迪《源代码漏洞检测》

–谢宁《软件漏洞检测及其严重性评估》

3

背景简介

•预期收获

–1.了解代码变更、代码变更表示学习的背景和基本原理

–2.理解代码变更表示学习的方法和难点

–3.理解代码变更表示学习在提交信息生成任务中的应用

–4.了解代码变更表示学习的前沿发展

4

背景简介

•代码变更

–软件演化过程中的关键行为,对于理解代码库和分析软件演化过程具有重要意义

–用于功能需求实现、软件缺陷修复和软件架构改进等重要任务

–大量软件工程任务依赖于对代码变更的分析和理解

•即时缺陷预测需要分析代码变更的质量以预测出现缺陷的概率

•软件制品可溯性恢复需要理解代码变更的内容和意图,以构建代码与其他软件制

品的关联

•代码变更表示越准确,下游任务的学习或检索过程就越不具有挑战性

表示和建模代码变更是自动化分析和理解代码变更的基础

5

背景简介

•早期代码变更表示技术

–利用人工设计的特征或特征提取规则将代码变更表示为特征向量

•人工定义抽象语法树(AST)匹配规则提取变更前后AST的最小编辑脚本

•基于代码变更的扩散、规模、目标、历史和开发者经验评估缺陷引入可能性

–局限性:依赖手工分析,只能提取显式的、浅层的特征,难以捕捉代码变更语义

隐式的、深层的信息

•代码变更表示学习

–将代码变更的语义信息表示为低维稠密的实值向量,即学习代码变更的分布式表示

–被应用到众多软件工程任务中,包括代码提交日志生成、即时缺陷预测、即时注释更新、

安全漏洞补丁识别、和冲突合并等

42333

42333

代码变更数据标注特征提取特征表示模型选择超参数调整优化模型6

背景简介下游任务

•代码变更表示学习技术

文档评论(0)

说明书文档库 + 关注
实名认证
内容提供者

提供说明书查找服务。

1亿VIP精品文档

相关文档