首页 > 最新文献

Proceedings of the 1st ACM International Workshop on AI and Software Testing/Analysis最新文献

英文 中文
NerdBug: automated bug detection in neural networks NerdBug:神经网络中的自动错误检测
Foad Jafarinejad, Krishna Narasimhan, M. Mezini
Despite the exponential growth of deep learning software during the last decade, there is a lack of tools to test and debug issues in deep learning programs. Current static analysis tools do not address challenges specific to deep learning as observed by past research on bugs specific to this area. Existing deep learning bug detection tools focus on specific issues like shape mismatches. In this paper, we present a vision for an abstraction-based approach to detect deep learning bugs and the plan to evaluate our approach. The motivation behind the abstraction-based approach is to be able to build an intermediate version of the neural network that can be analyzed in development time to provide live feedback programmers are used to with other kind of bugs.
尽管深度学习软件在过去十年中呈指数级增长,但深度学习程序中缺乏测试和调试问题的工具。目前的静态分析工具并没有解决深度学习特有的挑战,正如过去对该领域特定bug的研究所观察到的那样。现有的深度学习漏洞检测工具专注于形状不匹配等特定问题。在本文中,我们提出了一种基于抽象的方法来检测深度学习错误,并计划评估我们的方法。基于抽象的方法背后的动机是能够构建神经网络的中间版本,可以在开发时进行分析,以提供实时反馈,程序员习惯于处理其他类型的错误。
{"title":"NerdBug: automated bug detection in neural networks","authors":"Foad Jafarinejad, Krishna Narasimhan, M. Mezini","doi":"10.1145/3464968.3468409","DOIUrl":"https://doi.org/10.1145/3464968.3468409","url":null,"abstract":"Despite the exponential growth of deep learning software during the last decade, there is a lack of tools to test and debug issues in deep learning programs. Current static analysis tools do not address challenges specific to deep learning as observed by past research on bugs specific to this area. Existing deep learning bug detection tools focus on specific issues like shape mismatches. In this paper, we present a vision for an abstraction-based approach to detect deep learning bugs and the plan to evaluate our approach. The motivation behind the abstraction-based approach is to be able to build an intermediate version of the neural network that can be analyzed in development time to provide live feedback programmers are used to with other kind of bugs.","PeriodicalId":295937,"journal":{"name":"Proceedings of the 1st ACM International Workshop on AI and Software Testing/Analysis","volume":"7 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2021-07-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122649415","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
On the use of evolutionary algorithms for test case prioritization in regression testing considering requirements dependencies 在考虑需求依赖的回归测试中,使用进化算法对测试用例进行优先级排序
A. Vescan, Camelia Chisalita-Cretu, C. Serban, L. Dioşan
Nowadays, software systems encounter repeated modifications in order to satisfy any requirement regarding a business change. To assure that these changes do not affect systems' proper functioning, those parts affected by the changes need to be retested, minimizing the negative impact of performed modifications on another part of the software. In this research, we investigate how different optimization techniques (with various criteria) could improve the effectiveness of the testing activity, in particular the effectiveness of test case prioritization. The most efficient test schedules are identified by using either a Greedy algorithm or a Genetic Algorithm, optimizing a quality function that incorporates single or multiple criteria. Both functional requirements (with the existing dependencies between them) and non-functional requirements (i.e. quality attributes for test cases) are integrated with the quality assessment of a test order. Therefore, the conducted experiments considered various criteria combinations (faults, costs, and number of test cases), being applied to both theoretical case studies and a real-world benchmark. The conclusion of the experiments shows that the Genetic Algorithm outperforms the Greedy on all considered criteria.
如今,为了满足业务变更的任何需求,软件系统会遇到反复的修改。为了确保这些更改不影响系统的正常功能,受更改影响的部分需要重新测试,以最小化执行的修改对软件另一部分的负面影响。在这项研究中,我们调查了不同的优化技术(使用不同的标准)如何提高测试活动的有效性,特别是测试用例优先级的有效性。最有效的测试计划是通过使用贪心算法或遗传算法来确定的,优化包含单个或多个标准的质量函数。功能需求(以及它们之间存在的依赖关系)和非功能需求(例如,测试用例的质量属性)都与测试订单的质量评估集成在一起。因此,所进行的实验考虑了各种标准组合(错误、成本和测试用例的数量),并将其应用于理论案例研究和现实世界的基准。实验结果表明,遗传算法在所有考虑的标准上都优于贪心算法。
{"title":"On the use of evolutionary algorithms for test case prioritization in regression testing considering requirements dependencies","authors":"A. Vescan, Camelia Chisalita-Cretu, C. Serban, L. Dioşan","doi":"10.1145/3464968.3468407","DOIUrl":"https://doi.org/10.1145/3464968.3468407","url":null,"abstract":"Nowadays, software systems encounter repeated modifications in order to satisfy any requirement regarding a business change. To assure that these changes do not affect systems' proper functioning, those parts affected by the changes need to be retested, minimizing the negative impact of performed modifications on another part of the software. In this research, we investigate how different optimization techniques (with various criteria) could improve the effectiveness of the testing activity, in particular the effectiveness of test case prioritization. The most efficient test schedules are identified by using either a Greedy algorithm or a Genetic Algorithm, optimizing a quality function that incorporates single or multiple criteria. Both functional requirements (with the existing dependencies between them) and non-functional requirements (i.e. quality attributes for test cases) are integrated with the quality assessment of a test order. Therefore, the conducted experiments considered various criteria combinations (faults, costs, and number of test cases), being applied to both theoretical case studies and a real-world benchmark. The conclusion of the experiments shows that the Genetic Algorithm outperforms the Greedy on all considered criteria.","PeriodicalId":295937,"journal":{"name":"Proceedings of the 1st ACM International Workshop on AI and Software Testing/Analysis","volume":"14 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2021-07-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128026366","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 2
Impact of programming languages on machine learning bugs 编程语言对机器学习错误的影响
Sebastian Sztwiertnia, Maximilian Grübel, Amine Chouchane, Daniel Sokolowski, Krishna Narasimhan, M. Mezini
Machine learning (ML) is on the rise to be ubiquitous in modern software. Still, its use is challenging for software developers. So far, research has focused on the ML libraries to find and mitigate these challenges. However, there is initial evidence that programming languages also add to the challenges, identifiable in different distributions of bugs in ML programs. To fill this research gap, we propose the first empirical study on the impact of programming languages on bugs in ML programs. We plan to analyze software from GitHub and related discussions in GitHub issues and Stack Overflow for bug distributions in ML programs, aiming to identify correlations with the chosen programming language, its features and the application domain. This study's results enable better-targeted use of available programming language technology in ML programs, preventing bugs, reducing errors and speeding up development.
机器学习(ML)正在崛起,在现代软件中无处不在。然而,它的使用对软件开发人员来说是一个挑战。到目前为止,研究主要集中在ML库上,以发现和缓解这些挑战。然而,有初步证据表明,编程语言也增加了挑战,可以从ML程序中的不同bug分布中识别出来。为了填补这一研究空白,我们提出了第一个关于编程语言对ML程序中bug影响的实证研究。我们计划分析来自GitHub的软件,以及GitHub问题和Stack Overflow中有关ML程序中bug分布的相关讨论,旨在确定与所选编程语言、其特性和应用领域的相关性。这项研究的结果使得在机器学习程序中更有针对性地使用可用的编程语言技术,防止错误,减少错误并加快开发。
{"title":"Impact of programming languages on machine learning bugs","authors":"Sebastian Sztwiertnia, Maximilian Grübel, Amine Chouchane, Daniel Sokolowski, Krishna Narasimhan, M. Mezini","doi":"10.1145/3464968.3468408","DOIUrl":"https://doi.org/10.1145/3464968.3468408","url":null,"abstract":"Machine learning (ML) is on the rise to be ubiquitous in modern software. Still, its use is challenging for software developers. So far, research has focused on the ML libraries to find and mitigate these challenges. However, there is initial evidence that programming languages also add to the challenges, identifiable in different distributions of bugs in ML programs. To fill this research gap, we propose the first empirical study on the impact of programming languages on bugs in ML programs. We plan to analyze software from GitHub and related discussions in GitHub issues and Stack Overflow for bug distributions in ML programs, aiming to identify correlations with the chosen programming language, its features and the application domain. This study's results enable better-targeted use of available programming language technology in ML programs, preventing bugs, reducing errors and speeding up development.","PeriodicalId":295937,"journal":{"name":"Proceedings of the 1st ACM International Workshop on AI and Software Testing/Analysis","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2021-07-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129971118","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 3
Automated cell header generator for Jupyter notebooks 自动单元格头生成器的Jupyter笔记本
Ashwini Venkatesh, E. Bodden
Jupyter notebooks are now widely adopted by data analysts as they provide a convenient environment for presenting computational results in a literate-programming document that combines code snippets, rich text, and inline visualizations. Literate-programming documents are intended to be computational narratives that are supplemented with self-explanatory text, but, recent studies have shown that this is lacking in practice. Efforts in the software engineering community to increase code comprehension in literate programming are limited. To address this, as a first step, this paper presents a prototype Jupyter notebook annotator, HeaderGen, that automatically creates a narrative structure in notebooks by classifying and annotating code cells based on the machine learning workflow. HeaderGen generates a markdown cell header for each code cell by statically analyzing the notebook, and in addition, associates these cell headers with a clickable table of contents for easier navigation. Further, we discuss our vision and opportunities based on this prototype.
Jupyter笔记本现在被数据分析人员广泛采用,因为它们为在结合了代码片段、富文本和内联可视化的文字编程文档中呈现计算结果提供了方便的环境。文字编程文档的目的是用自解释文本补充计算叙述,但是,最近的研究表明,这在实践中是缺乏的。软件工程社区在提高识字编程的代码理解能力方面的努力是有限的。为了解决这个问题,作为第一步,本文提出了一个原型Jupyter笔记本注释器HeaderGen,它通过基于机器学习工作流程对代码单元进行分类和注释,自动在笔记本中创建叙述结构。HeaderGen通过静态分析笔记本生成每个代码单元格的标记单元格标头,此外,还将这些单元格标头与可单击的内容表关联起来,以便于导航。进一步,我们将在此原型的基础上讨论我们的愿景和机遇。
{"title":"Automated cell header generator for Jupyter notebooks","authors":"Ashwini Venkatesh, E. Bodden","doi":"10.1145/3464968.3468410","DOIUrl":"https://doi.org/10.1145/3464968.3468410","url":null,"abstract":"Jupyter notebooks are now widely adopted by data analysts as they provide a convenient environment for presenting computational results in a literate-programming document that combines code snippets, rich text, and inline visualizations. Literate-programming documents are intended to be computational narratives that are supplemented with self-explanatory text, but, recent studies have shown that this is lacking in practice. Efforts in the software engineering community to increase code comprehension in literate programming are limited. To address this, as a first step, this paper presents a prototype Jupyter notebook annotator, HeaderGen, that automatically creates a narrative structure in notebooks by classifying and annotating code cells based on the machine learning workflow. HeaderGen generates a markdown cell header for each code cell by statically analyzing the notebook, and in addition, associates these cell headers with a clickable table of contents for easier navigation. Further, we discuss our vision and opportunities based on this prototype.","PeriodicalId":295937,"journal":{"name":"Proceedings of the 1st ACM International Workshop on AI and Software Testing/Analysis","volume":"111 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2021-07-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121801078","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 2
期刊
Proceedings of the 1st ACM International Workshop on AI and Software Testing/Analysis
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1