首页 > 其他分享 >软件工程研究的最新进展第 1 部分

软件工程研究的最新进展第 1 部分

时间:2022-09-03 17:14:56浏览次数:86  
标签:JavaScript 更改 模型 微调 最新进展 软件工程 部分 我们 评估

软件工程研究的最新进展第 1 部分

Photo by 阿吉特梅斯特里 on 不飞溅

1.基于神经进化的游戏测试和预言生成( arXiv )

作者 : 帕特里克·费尔德迈尔 , 戈登弗雷泽

抽象的 : 类似游戏的程序在许多软件工程领域变得越来越流行,例如移动应用程序、Web 应用程序或编程教育。但是,为旨在挑战人类玩家的程序创建测试对于自动测试生成器来说是一项艰巨的任务。即使测试生成成功地找到了相关的事件序列来执行程序,游戏的随机性意味着它既不可能重现该序列背后的确切程序行为,也可能无法创建测试断言来检查是否观察到随机游戏行为正确。为了克服这些问题,我们提出了 Neatest,一种基于增强拓扑的神经进化 (NEAT) 算法的新型测试生成器。 Neatest 系统地探索程序的语句,并创建运行程序的神经网络,以便可靠地到达每个语句 - 也就是说,Neatest 学会以可靠地覆盖代码的不同部分的方式玩游戏。当网络学习实际的游戏行为时,它们还可以通过评估被测程序的观察到的行为与假定的正确版本的程序相比有多么令人惊讶,从而充当测试预言机。我们在教育编程环境 Scratch 的背景下评估这种方法。我们对 25 个重要的 Scratch 游戏的实证研究表明,我们的方法可以成功地训练神经网络,这些神经网络不仅比由静态输入序列组成的传统测试套件更能适应随机影响,而且对平均突变也非常有效得分超过 65%。

  1. 通过变更传播和调整解决运行时配置变更的不一致( arXiv )

作者 : 阿扎德·贾汉巴尼法尔 , 费尔哈特·肯德克 , 玛丽亚·托罗

抽象的 : 可以在运行时修改系统配置以使系统适应其环境的变化或进行微调。例如,系统管理员可能会更改配置中的一些实体/属性以改进错误恢复和系统可用性。但是,这些专注于微调可用性的更改可能会违反配置中捕获的一些全局系统约束,因此会破坏配置一致性、系统属性和操作。这通常是由于管理员不知道所有实体/属性与修改后的实体/属性相关的管理员执行的更改的局部性。在本文中,我们提出了一种在运行时完成此类部分更改集的方法,以解决由这些部分更改引起的不一致。这种调整方法包括相关实体/属性的表征及其修改以重新建立配置一致性。我们通过在配置实体之间可能的影响之后根据系统约束传播配置中的更改来实现这一点。我们的目标是最大限度地减少互补修改,以控制更改传播的副作用,因为我们针对的是高可用性系统的领域。

  1. 探索和评估用于代码生成的个性化模型 ( arXiv )

作者 : 安德烈·兹洛切夫斯基 , 黎明排水 , 阿列克谢·斯维亚特科夫斯基 , 科林克莱门特 , 尼尔·桑达雷桑 , 米歇尔·图法诺

抽象的 : 大型 Transformer 模型在自然语言理解任务中达到了最先进的状态,并且越来越多地成为建模源代码的基线模型架构。 Transformers 通常在大型无监督语料库上进行预训练,学习与建模一般可用文本相关的令牌表示和转换,然后针对感兴趣的特定下游任务进行微调。虽然微调是使模型适应新领域的一种久经考验的方法——例如,对给定主题的问答——但泛化仍然是一个持续的挑战。在本文中,我们探索和评估了用于个性化的 Transformer 模型微调。在为 Java 方法生成单元测试的上下文中,我们评估学习使用几种个性化技术对特定软件项目进行个性化。我们考虑了三种关键方法:(i)自定义微调,允许调整所有模型参数; (ii) 轻量级微调,它冻结了模型的大部分参数,允许仅调整令牌嵌入和 softmax 层或仅调整最后一层; (iii) 前缀调整,保持模型参数冻结,但优化一个小的项目特定前缀向量。这些技术中的每一种都提供了总计算成本和预测性能的权衡,我们通过代码和特定于任务的指标、训练时间和总计算操作来评估它们。我们比较了这些用于代码生成的微调策略,并讨论了每种策略在各种部署场景中的潜在泛化和成本效益。

4. Microwalk-CI:JavaScript 应用程序的实用侧通道分析( arXiv )

作者 : 扬·威赫尔曼 , 弗洛里安·西克 , 安娜·帕奇克 , 托马斯·艾森巴特

抽象的 : 加密实现中依赖于秘密的时序行为导致了可利用的漏洞,从而破坏了它们的安全性。多年来,已经提出了许多自动检测时序泄漏甚至证明它们不存在的工具。然而,IEEE S&P 2022 最近的一项研究表明,虽然许多开发人员都知道一个或多个分析工具,但他们在将这些工具集成到他们的工作流程中时遇到了重大困难,因为现有工具使用起来很繁琐,并且将发现的泄漏映射到它们的源代码段需要专业知识。此外,现有工具专注于 C 等编译语言或分析二进制文件,而行业和开源​​社区则转向解释语言,尤其是 JavaScript。在这项工作中,我们介绍了 Microwalk-CI,一种新颖的侧通道分析框架,可轻松集成到 JavaScript 开发工作流程中。首先,我们用一种新的分析算法扩展了现有的动态方法,可以有效地定位和量化泄漏,使其适用于实际开发。然后,我们提出了一种从 JavaScript 应用程序生成执行跟踪的技术,可以使用我们和其他最初为二进制分析设计的算法进一步分析。最后,我们讨论了如何将 Microwalk-CI 集成到持续集成 (CI) 管道中,以实现高效和持续的监控。我们通过对几个流行的 JavaScript 密码库进行全面评估来评估我们的分析框架,并发现了许多关键漏洞。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明

本文链接:https://www.qanswer.top/11750/00150317

标签:JavaScript,更改,模型,微调,最新进展,软件工程,部分,我们,评估
From: https://www.cnblogs.com/amboke/p/16653040.html

相关文章

  • Selenium 教程第 3 部分
    Selenium教程第3部分我真的很抱歉放弃这部续集。实际上,我在写这篇文章的时候就失去了动力,想着谁会去读它,甚至会喜欢它。但是看到您的一些支持者喜欢这个故事或添加到......
  • python | 算法大神左神(左程云)算法课程 二叉树部分【中】
    1.二叉树宽度......
  • 大部分的中国人
    拖着疲惫不堪的身体回到租房,妻子低声数落着柴米油盐贵,不知何时能剩下钱买房,顽皮的孩子看着电视剧,被你责备撵去写功课,年迈的父母体力不及当年,在乡下守着二亩地望子成龙,可你......
  • 最新资讯丨2022年08月04日,IEC60884-1:2022 《家用和类似用途插头插座第1部分:通用要求
    ♦新标准介绍IEC60884-1:2022《Plugsandsocket-outletsforhouseholdandsimilarpurposes-Part1:Generalrequirements》已于2022年08月04日正式发布。本第四......
  • 软件工程导论——构建模型类型
    2022-09-02构建模型的类型有:1、瀑布模型瀑布模型是像一个下台阶的形式。有过渡阶段。包括需求分析,设计,开发,集成,测试等方面。 图1-1瀑布模型图 2、快速原型模型......
  • 部分属性
    display:block;转化为块状元素inline是行内元素inline-block是行内块状元素 文字属性:    font-size:    单位:em是原字体大小的倍数   ......
  • Singpass App Google Play 商店情绪分析(第 1 部分)
    SingpassAppGooglePlay商店情绪分析(第1部分)我爱新通!(我不是这么说,因为我的工作是推动SingpassAPI的采用,哈哈,或者好吧,部分原因是)自从担任这个角色以来,我学会了更......
  • “CSS Secret”——47 种 CSS 必备技能(第 1 部分 0-19)
    我正在参加第6期掘金创想营,点击了解活动详情前言《CSSDemystification》一书以案例的形式介绍了47个经典网页设计问题的解决方案。学习后我一一记录下来,方便复习。本......
  • CSS 面试问题的答案——第一部分 (1-10/34)
    CSS面试问题的答案——第一部分(1-10/34)该材料有助于为前端职位的面试做准备。我回答了GitHub存储库中最受欢迎的问题列表中的所有CSS问题——前端-开发者-面试-......
  • NOI2022(部分)题解
    D1T1:严格众数有一种处理方法就是摩尔投票法:既然这个众数\(x\)出现了超过\(\dfracn2\)次,那么我们每次把一个非众数\(y\)和\(x\)消掉,即使是在最劣情况下,最后一定......