Context: The advancements in machine learning techniques have encouraged researchers to apply these techniques to a myriad of software engineering tasks that use source code analysis such as testing and vulnerabilities detection. A large number of studies poses challenges to the community to understand the current landscape. Objective: We aim to summarize the current knowledge in the area of applied machine learning for source code analysis. Method: We investigate studies belonging to twelve categories of software engineering tasks and corresponding machine learning techniques, tools, and datasets that have been applied to solve them. To do so, we carried out an extensive literature search and identified 364 primary studies published between 2002 and 2021. We summarize our observations and findings with the help of the identified studies. Results: Our findings suggest that the usage of machine learning techniques for source code analysis tasks is consistently increasing. We synthesize commonly used steps and the overall workflow for each task, and summarize the employed machine learning techniques. Additionally, we collate a comprehensive list of available datasets and tools useable in this context. Finally, we summarize the perceived challenges in this area that include availability of standard datasets, reproducibility and replicability, and hardware resources.


翻译:背景:机器学习技术的进步鼓励研究人员将这些技术应用于使用源代码分析(例如测试和脆弱性检测)的大量软件工程任务。大量研究对社区提出了了解当前环境的挑战。目标:我们的目标是总结应用机器学习领域用于源代码分析的现有知识。方法:我们调查属于12类软件工程任务的研究,以及用于解决这些问题的相应机器学习技术、工具和数据集。为了这样做,我们进行了广泛的文献搜索,确定了在2002年至2021年期间出版的364份初级研究。我们在所确定研究的帮助下总结了我们的意见和调查结果。结果:我们的调查结果表明,在源代码分析任务中使用机器学习技术的情况在不断增加。我们综合了每项任务通常使用的步骤和总体工作流程,并总结了所使用的机器学习技术。此外,我们整理了一份综合清单,列出了在这方面可以使用的可用数据集和工具。最后,我们总结了这一领域存在的各种挑战,包括标准数据集的提供、可复制性和可复制性以及硬件资源。

0
下载
关闭预览

相关内容

机器学习(Machine Learning)是一个研究计算学习方法的国际论坛。该杂志发表文章,报告广泛的学习方法应用于各种学习问题的实质性结果。该杂志的特色论文描述研究的问题和方法,应用研究和研究方法的问题。有关学习问题或方法的论文通过实证研究、理论分析或与心理现象的比较提供了坚实的支持。应用论文展示了如何应用学习方法来解决重要的应用问题。研究方法论文改进了机器学习的研究方法。所有的论文都以其他研究人员可以验证或复制的方式描述了支持证据。论文还详细说明了学习的组成部分,并讨论了关于知识表示和性能任务的假设。 官网地址:http://dblp.uni-trier.de/db/journals/ml/
专知会员服务
118+阅读 · 2019年12月24日
吴恩达新书《Machine Learning Yearning》完整中文版
专知会员服务
147+阅读 · 2019年10月27日
【论文笔记】通俗理解少样本文本分类 (Few-Shot Text Classification) (1)
深度学习自然语言处理
7+阅读 · 2020年4月8日
强化学习的Unsupervised Meta-Learning
CreateAMind
18+阅读 · 2019年1月7日
Unsupervised Learning via Meta-Learning
CreateAMind
42+阅读 · 2019年1月3日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
17+阅读 · 2018年12月24日
【论文】图上的表示学习综述
机器学习研究会
14+阅读 · 2017年9月24日
大数据分析研究组开源Easy Machine Learning系统
中国科学院网络数据重点实验室
16+阅读 · 2017年6月13日
A Survey on Edge Intelligence
Arxiv
52+阅读 · 2020年3月26日
Arxiv
38+阅读 · 2020年3月10日
A Comprehensive Survey on Transfer Learning
Arxiv
121+阅读 · 2019年11月7日
Techniques for Automated Machine Learning
Arxiv
4+阅读 · 2019年7月21日
Few-shot Learning: A Survey
Arxiv
362+阅读 · 2019年4月10日
Mobile big data analysis with machine learning
Arxiv
6+阅读 · 2018年8月2日
Arxiv
151+阅读 · 2017年8月1日
VIP会员
相关资讯
【论文笔记】通俗理解少样本文本分类 (Few-Shot Text Classification) (1)
深度学习自然语言处理
7+阅读 · 2020年4月8日
强化学习的Unsupervised Meta-Learning
CreateAMind
18+阅读 · 2019年1月7日
Unsupervised Learning via Meta-Learning
CreateAMind
42+阅读 · 2019年1月3日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
17+阅读 · 2018年12月24日
【论文】图上的表示学习综述
机器学习研究会
14+阅读 · 2017年9月24日
大数据分析研究组开源Easy Machine Learning系统
中国科学院网络数据重点实验室
16+阅读 · 2017年6月13日
相关论文
A Survey on Edge Intelligence
Arxiv
52+阅读 · 2020年3月26日
Arxiv
38+阅读 · 2020年3月10日
A Comprehensive Survey on Transfer Learning
Arxiv
121+阅读 · 2019年11月7日
Techniques for Automated Machine Learning
Arxiv
4+阅读 · 2019年7月21日
Few-shot Learning: A Survey
Arxiv
362+阅读 · 2019年4月10日
Mobile big data analysis with machine learning
Arxiv
6+阅读 · 2018年8月2日
Arxiv
151+阅读 · 2017年8月1日
Top
微信扫码咨询专知VIP会员