(通讯员 闫明)软件工程领域顶级会议28th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE 2020)于2020年11月6日至16日在美国加州萨克拉曼多举办(因全球疫情影响采用在线会议的形式)。我学部软件工程研究团队的论文《Deep Learning Library Testing via Effective Model Generation》荣获ESEC/FSE 2020最佳论文奖(ACM SIGSOFT Distinguished Paper Award),其中硕士生闫明为学生一作,教师作者包括王赞副教授、陈俊洁副教授(通讯作者)、刘爽副教授,以及毕业生张栋迪。
ESEC/FSE由ACM主办,是软件工程领域国际顶级会议之一。ESEC/FSE是软件工程领域研究人员、教育从业人员和工业界人士介绍与讨论领域最新思想,创新成果,研究趋势和分享经验的首要论坛之一,同时也是中国计算机学会推荐国际学术会议(软件工程、系统软件与程序设计语言)A类会议(CCF A)。
除了这篇最佳论文外,我学部软件工程研究团队另有三篇论文被该会议接收为长文,分别为《Real-time Incident Prediction for Online Service Systems》(陈俊洁副教授),《Identifying Linked Incidents in Large-scale Online Service Systems》(陈俊洁副教授),以及《How to Mitigate the Incident? An Effective Troubleshooting Guide Recommendation Technique for Online Service Systems》[Industry track](姜佳君副研究员,陈俊洁副教授)
FSE2020在线会议上颁发最佳论文奖时的截图
该成果提出基于有导向模型变异的深度学习库测试方法,首次利用模型变异和启发式搜索策略有导向地生成大量结构不同的深度学习模型,利用差异测试的思想来对深度学习库进行有效测试,实现了新颖的深度学习库测试技术LEMON。具体如下:
深度学习是最广泛使用的技术之一,并已经应用于许多关键领域。目前,已经有许多研究工作关注深度学习模型的质量,提出了一些深度学习模型的测试方法。然而,针对诸如Keras,TensorFlow等深度学习库测试的研究仍较少。深度学习库是深度学习技术应用过程中最重要、最基础的部分,所有的深度学习模型均需要借助深度学习库内部实现的复杂运算逻辑才能够正常运行。然而,与其他传统软件系统类似,深度学习库同样包含缺陷。深度学习库的缺陷会导致基于它所运行的深度学习模型做出异常行为,甚至带来难以预料的灾难性后果。因此针对深度学习库的测试至关重要并逐渐引起研究人员的重视。
该论文提出了一种新颖的基于有导向模型变异的深度学习库测试方法LEMON。LEMON利用差异测试作为深度学习库测试的测试预言,通过设计一系列针对深度学习模型的变异规则生成大量结构不同的深度学习模型,以缓解现有测试过程中测试用例构造难度大、代价大的问题。同时,结合启发式模型搜索策略,LEMON能够有导向地生成更能揭示不同深度学习库之间不一致性的模型,以此进行有效的深度学习库测试。实验结果表明,在四个主流深度学习库TensorFlow,Thenao,CNTK和MXNET上,LEMON在检测其缺陷上取得了显著效果,其中多个检测到的缺陷得到了开发人员的确认及修复。
LEMON流程