粗略阅读论文《Manifold-based Test Generation for Image Classifiers》,这篇论文在测试输入生成的方法上创新,提出了一种基于流形的测试生成框架,生成了更加真实的测试用例。
我的理解:流形是一种分布域特征,因此这篇论文实际上是从数据分布特征的角度入手去生成测试用例,这不同于例如Deepxplore等使用神经元覆盖率生成的方法。从根本上来讲其实是一种“分布敏感”的测试输入生成方式,通过数据分布规律去告诉模型生成ID(In-distribution)的数据。这和之前讨论的一些数据分布的内容相关。
基于假设:变分自动编码器(CVAE)的变体捕获数据集的分布域模型,从该流形中采样新的测试用例,使用解码器将其映射到输入维度,得到更有可能是遵循真实分布的测试输入。
思想:在流形空间上应用基于搜索的测试生成(我的理解:本质上是使用了一种分布敏感的方法)
基本前提:高维数据(如图像)会集中聚集在低维流形附近。因此可用较小维度的流形数据表示高维数据。

从图中可以看到,VAE将数据点映射为一个二维平面的圆形,颜色相近的聚集在一起,从这样的子空间中采样新点,生成新图像,就可以让新图像看起来与原真实图像更相似。
本文方法:在流形空间上应用基于搜索的测试生成。训练了条件变分自动编码器(CVAE)。引入了一个适应度函数,评估潜在空间中采样数据点的相对值。

生成所需数量的故障揭示输入后,再选择应用适应度函数,确定测试用例的优先级,并选择产生高分的测试用例。
如有理解上的差错,欢迎指正探讨。
2873

被折叠的 条评论
为什么被折叠?



