- 软件工程中的人工智能:案例研究与前景
人工智能和软件工程是计算机科学中的两个重要领域。近年来,研究人员试图应用人工智能技术在软件开发的各个阶段,提高软件产品的整体质量。本文分析、评估和比较了两个使用不同人工智能技术解决现实世界难题的案例研究:IBM Watson 和 Googl - 值得信赖且协同的软件工程人工智能:愿景与路线图
软件工程领域的未来将依靠人工智能技术(AI4SE)的发展,以提升开发者的生产力、提高软件质量,并实现可信赖和协同工作的目标。
- 面向软件工程的大型语言模型:一项系统性文献综述
通过系统文献综述,我们深入研究了大型语言模型(LLMs)与软件工程(SE)的交叉领域,并特别关注 LLMs 在 SE 中的应用、影响和潜在局限。通过收集和分析 2017 年至 2023 年的 229 篇研究论文,我们回答了四个关键研究问题( - 利用大型语言模型进行代码生成的参数高效微调技术探究
通过对大规模语言模型进行参数高效微调技术的研究,本文在自动化代码生成场景下全面研究了这些技术对大规模语言模型的影响,实验结果表明这些技术在减轻计算负担和提高性能方面表现优越,为软件工程场景中的更广泛应用开启了机会。
- 用于软件开发的交互代理
本文提出一种利用大型语言模型 (LLMs) 改变软件开发过程的创新性范例,能够通过自然语言沟通来简化和统一关键流程,进而在不需要在每个阶段进行专门软件领域模型开发的情况下,实现整个软件过程的快速生成。
- 评估 ChatGPT 在系统性综述文章筛选方面的能力
本报告提出一种利用最新技术发展自动化 Systematic Reviews 筛选的方法,通过与传统分类器相比较的一系列实验,证明了 ChatGPT 成为自动化 SR 过程的一种可行选择,但需要开发人员仔细考虑在 SR 工具中集成 ChatG - 源代码语言模型共享与能源利用的探索文献研究
本研究旨在调查与分析语言模型设计用于软件工程任务的研究是否共享代码及模型,以及针对模型训练所用的能源的透明度,从可持续的角度收集有用的信息。我们发现,当前研究中存在信息和工件共享的不足,约 40%的调查论文没有共享代码或训练过的工件,我们建 - 机器学习系统的最佳实践:分析和优化的工业框架
该研究论文提出了一个用于分析机器学习系统中软件工程最佳实践集的质量影响和优先级的框架,并介绍了适用于 ML 系统的分层软件质量模型 (SQM)。通过应用集函数优化技术,可以回答哪些实践集可以最大程度地增加 SQM 覆盖范围,哪些是最重要的, - 聊天 GPT 日志解析的评估
本文探讨了 ChatGPT 在自动日志解析方面的能力,并针对两个研究问题进行了评估,结果表明 ChatGPT 可以通过适当的提示方法实现良好的日志解析结果,尤其是采用少样本提示时效果最佳,同时提出了 ChatGPT 日志解析面临的挑战和机遇 - ChatGPT:关于其在普适软件工程任务中效用的研究
本研究使用 ChatGPT 这一语言模型探讨了如何利用其在软件工程中辅助完成常见任务,研究结果显示 ChatGPT 对许多任务均有不错的表现,但仍存在一些任务不适用。
- 深度学习测试中重新思考多样性
本文讨论了深度学习系统在测试中存在的漏洞和不公平性问题,提出了使用 6 个度量标准进行有针对性的测试的方法,并以实验证明该方法比传统多样性方法更为有效。同时,指出了软件工程界和深度学习领域之间存在的差异,以期在未来拓宽两者的研究实践。
- ChatGPT 在软件工程领域的适用范围:一次彻底调查
对 ChatGPT 在软件工程中的应用进行了研究,发现 ChatGPT 在代码的语法理解方面具有较高的能力,但在代码的语义理解方面,特别是动态语义方面存在困难,容易产生虚假输出。这表明在软件工程中使用 ChatGPT 时需要进一步探索验证其 - 使用 ChatGPT 进行软件开发人员比较:实证调查
本文通过对比软件工程师和人工智能系统(如 ChatGPT)在不同评价指标下的性能表现,探讨了它们各自的任务适用性,以促进人机协作、提高 AI 方法的可靠性和理解,以及实现协作工作结构和人在循环过程。
- 软件工程句对冲突和重复检测的数据增强
本研究探讨使用文本数据增强技术如洗牌、反向翻译和改写等,以句对分类的方式增强软件工程任务中的冲突与重复检测效果。结论发现,数据增强技术对六个软件文本数据集的所有文本句对效果有显著影响,但在数据集相对平衡时,使用增强技术可能会对分类效果产生负 - 抓住早期的错误:利用编码器模型的早期层进行更有效的代码分类
本文介绍了 EarlyBIRD 方法,用于在预训练的 transformer 模型的早期层中构建代码的组合表示,旨在提高软件工程任务的性能,并可用于漏洞检测和类型推断。实验证明早期层的组合可在使用同样资源的情况下获得更好的结果,并能在微调和 - 循着最佳实践指引的机器学习
本文旨在通过分析机器学习在软件工程中的最佳实践,填补现有文献不足的空缺,并针对机器学习应用所面临的挑战和开发过程,提出一系列以软件工程视角为基础的建议。
- ChatGPT: 最终的编程助手吗?—— 它有多远?
我们通过实证分析了 ChatGPT 在无人辅助编程助手方面的潜力,并强调了其相对程序生成、程序修复、代码摘要方面的表现,并对其在常见编程问题上的表现进行了评估,这证明 ChatGPT 有效地处理典型的编程挑战,但我们也发现,综合的描述可能会 - SmartChoices: 学习实现增强软件
介绍了一种名为 SmartChoices 的新方法,可以将机器学习安全有效地整合到现有的软件系统中,包括设计哲学并在大型工业系统中进行了案例研究。
- 处理软件工程文档所需的停用词:它们很重要吗?
探讨在软件工程背景下,使用领域特定的停用词表是否可以提高自然语言处理中停用词去除方法的性能表现,并在相关工作的基础上复制实验了三个软件工程研究工具。结果表明,使用领域特定的停用词可以显著提高研究工具的性能,并且 17 个评估指标都显示出更好 - 数据流图作为完整因果图
本文介绍了组件化开发和数据流编程之间的联系,探讨了如何利用数据流图和因果模型,提高软件开发中的故障定位、业务分析和实验等任务的效率。