如影随形!阿里样本生成与验证的故事
2023-09-12 07:56:48
在上一篇文章《详解阿里99大促活动页内容识别技术实现》里,我们介绍了在淘宝99大促中,我们使用了怎样的算法模型去识别并完成自动化测试的。样本问题的困难点淘宝大促有近百个模块、上千个页面,模块间具有相似性,并且模块内部具备多种状态,如果想要准确识别每个模块类型,单模块的样本数不可避免地会面临数量的挑战。更何况在测试的时候,如果模型无法准确识别页面元素,就无法点击和切换状态。为了验证模型是否准确,最好的办法是通过大量的样本进行验证。在没有足够的样本基础下,测试无法进行,模型的可靠性也就不得而知。那面对模块数量大、页面数量多的难题,我们又该怎么解决呢?本篇文章就来分享我们在淘宝99大促期间,如何在样本生成环节保证样本数量和样本质量的故事。
1. 精益求精,建立规范的数据生成流程
样本生成是一个相对容易被忽视的环节。如果没有一个规范的流程去进行数据生成,容易导致生成的数据又脏又乱。在淘宝99大促活动前,活动期间及活动结束后,我们会利用不同场景去生成相应的样本,并且配备专门的同学负责样本生成。针对不同的场景制定了一套完整的数据生成流程,并对其进行严格的执行,保证样本质量。
2. 多维挖掘,覆盖不同场景的数据样本
淘宝大促期间样本需求的量非常大,为了解决样本需求量大的问题,我们采用了多维挖掘的方式,针对不同的场景进行对应的处理。
-
场景一:针对大促会场页相关的数据样本,我们通过以下方式生成
- 手动场景挖掘:在活动策划阶段,我们会召集各业务相关负责人,手把手地演示每个模块的细节变化。与此同时,我们会对其变化进行记录,并从中提取信息生成样本。
- 线上运营数据挖掘:我们使用特定的爬虫工具获取到大促会场的运营数据,再对数据进行处理,标记关键信息,然后生成对应的样本。
- 活动页面埋点数据挖掘:在活动期间,我们会针对会场页面埋点数据进行梳理,其中包含了活动页面结构的信息,以及对应的活动模块的数据,对此数据进行整理和分析,从中提取并生成样本。
-
场景二:针对活动专场和会场的不同类型的页面数据样本,我们通过以下方式生成
- 手动巡查场景挖掘:我们会根据测试组态进行页面巡查,将发现的问题记录并整理成样本。
- 特殊活动巡查:针对特殊的活动,我们会根据其特殊性进行对应的巡查,并将巡查发现的特殊问题记录下来,从而生成对应的样本。
3. 动态迭代,持续优化样本
样本是一个需要动态更新和维护的数据,样本的质量直接决定了模型的质量。因此,我们需要对样本进行持续的更新和迭代。对于不符合预期的情况,会进行样本验证,生成新增样本,对模型进行训练,迭代模型,最终提升样本的质量,实现模型与样本的正向循环。
4. 匠心锤炼,实战验证样本生成成效
经过以上努力,我们总计生成了超过10000条高精度的样本,样本的覆盖率达95%以上,且均符合预期的要求。在活动期间,我们对模型进行了多次的验证,模型准确率达98%以上,这充分证明了我们样本生成方法的有效性。
样本生成对于模型的质量至关重要。淘宝99大促期间,我们通过建立规范的数据生成流程,多维挖掘,以及持续优化样本,最终获得了超过10000条高精度的样本,样本的覆盖率达95%以上,且均符合预期的要求。模型准确率达98%以上,这充分证明了我们样本生成方法的有效性。