AI测试技能卷起来!目标检测算法测试流程与方法总结

2630 篇文章 2 订阅
2467 篇文章 14 订阅

软件测试面试刷题,这个小程序(永久刷题),靠它可以快速找到工作!https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502icon-default.png?t=N7T8https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.5502

时光如梭, 梭梭催人老。

最近很多同学私信我, 问我怎么不更新测试相关的技术文章了。

说来话长,反正就是忙。

因为除了要在新的测试领域发光发热之外,还需要兼任传统测试领域的技术支持,这…就是现状。

所以,关于测试相关的文章,更新的慢了一些 。慢是慢了点,但,总会更新的。

咱闲言少叙,

今天,我跟大家聊一聊算法领域的测试流程和测试方法。这也是我在企业技术大会上做的分享,这里也分享给各位,希望对各位在算法测试中有一些帮助。

当然,我也提前唠叨一句:

算法领域的知识理解起来有些难度,如果觉得看的有些吃力,可以提前了解一下 机器学习、深度学习等相关算法知识,以及模型评估指标等知识。

书说简短,我们进入正文。

数据准备

针对测试,不管是传统测试,还是算法测试,在执行测试执之前,必可不少的一项任务,就是数据准备。

相对于传统测试(如业务测试,接口测试还是性能测试)的数据的准备,算法测试中的数据准备,就有些”繁琐”了。

为什么会说繁琐,以我所负责的目标检测算法为例,这一复杂性就体现出来了。

即:不仅要从大量图片中准确识别出特定的产品,还需要根据不同的维度对产品进行细分类,如: 优秀、合格、不合格等。

看到这,有人会说,这很简单啊, 不就是识别出好坏,俗称二分类嘛。

当从一个图片中识别出来,那确实没问题,

但是,实际情况,可没有这么简单;

  • 首先:需要处理由数万个摄像头持续7x24小时的拍摄的海量图片,可以脑补一下;

  • 其次,同一个摄像头可能会拍摄到重复图片,如:3秒内拍摄10张照片,有4张重复,而此时就需要对4张进行去重处理。 这不仅增加了数据准备的难度,同时对后续算法的准确性和效率也产生了重要影响;

所以, 数据准备过程中, 不仅要基于特征提取,还要避免模型训练出现过拟合而去重等情况,这就是相对于传统测试,难度提升的原因之一。

为了更好的理解数据收集过程,我就以最常见的切片面包为例, 验证切片面包的饼边完整度。(处于职业操守,我就以切片面包为例,但这并不影响整个实例展示即结果统计)

分类:训练集、验证集

数量:5000张,

饼边:优秀(饼边无破损), 合格(饼边破损度<半片破损),不合格(饼边破损度>半片破损) 

原则:不重复图片、不要模糊图片、不要有遮挡的图片等

鲁棒性:强光、正常光源、暗光、角度(平铺、倾斜)

根据上面的要求,来进行数据的收集。

数据的收集方式,主要会从数据库下载图片,基于下载后的图片进行筛选。

关于素材收集这里提醒几点:

  1. 数据库选择:优先备战库或者专用数据库(StarRocks)中下载数据,避免对主库造成过大压力;

  2. 添加时间戳:下载数据时,一定要加上时间戳,即确保数据的时效性和可追溯性,为后续的数据分析提供有力支持,也避免全时段查询,对数据库造成压力;

  3. 权限控制:如果从线上库下载数据,一定注意数据库读写权限,避免误操作导致数据损坏等;

  4. 多语言脚本支持:除了具备sql之外,还需要运用脚本语言(如Python)进行高效的数据处理,提高数据准备的效率和质量;

此外,关于素材收集的原则,也需要注意几点:

1、 不要重复的图片,主要有这几点原因:

  • ① 避免过拟合:重复使用图片会导致模型过分适应这些重复样本的特征,无法学习更多的图片特性,最后结果就是在训练集上表现很好,但是在测试集/验证集或上线后表现效果不好。

  • ② 提高模型泛华能力:这也是为什么不要使用重复的图片的原因, 如果5000张素材,每个图片都有不同的场景、特征,那么最后训练的结果必定是很广泛的,这也是我们训练的目的。

  • ③ 优化训练效率:使用重复图片训练,会浪费计算资源和时间,得不偿失。

  • ④ 评估准确性:使用重复图片训练, 会导致模型在训练集中表现非常好,但是在测试集/验证集 、或上线后,模型的准确率、精确率等不准确,从而导致对模型评估不准确。

2、 不要模糊的图片和有遮挡的图片, 这主要涉及的原因:

  • ① 影响特征学习:模型训练一定要基于图片的特征和完整性进行学习,如果模型的或者有遮挡的图片,会让整个模型的在学习过程中有”误解”,导致识别不准;

  • ② 增加训练难度:对遮挡的图片,需要使用”数据增强”或”部分遮挡处理”等技术,这对于初版的模型训练,会增加一定的难度,当然,针对优化版本,对针对遮挡和模型图片有专门的算法优化,这里暂不多说。

  • ③ 影响模型准确性评估:模型的好与坏,是否能上线,其中一个原因就是看模型的准确性, 如果使用模型图片或者遮挡图片,这必定会影响其准确性,从而影响期上线。

你看, 我花费了这么长时间来聊数据收集的事情, 因为模型是否会有过拟合、欠拟合、准确性、泛化能力,通俗点说模型是否达标,数据是直接影响关键因素,所以,不管是测试同学,还是开发同学,都要重视素材的收集。

数据标注

关于数据标注,并非都有算法工程师来做,而算法测试工程师也会介入,那么,数据标注的工具是什么,如何来做数据标注呢?

接下来,我就以我实际的工作方式,来介绍一下数据标注 。

其实数据标注,并不是很难, 但是,会直接影响模型的准确性。

为什么会影响模型的准确性,在此之前,我们要先了为什么要进行数据标准。

进行数据标注,最直接的目的,就是提供”标签”,让模型基于提供的标签进行学习。

其实,针对数据标注,网上会有很多的解释, 这些解释不能说不对,只能说太繁琐。

所以,这里的数据标注,只要记住最主要的就是提供“标签”。

如果了解机器学习的 有监督学习和无监督学习,就能很好的了解 “标签”这个概念。

这里我就不过多赘述。

所以,看到这里,是不是就知道了数据标注的主要功能。

在接下来, 我就简单说一下主要的数据标注的工具

图片

以上就是常用的标注工具, 我使用的是labelm4,大家使用什么数据标注工具,即需要根据公司来选择,也需要根据行业来选择,例如:生物制药数据标注, 更多使用的是Pinnacle 21,毕竟这是专为生物制药领域设计的工具。

关于数据标注工具, 我们就说到这里。

关于算法测试的前期准备工作到这里就OK了,下期我们将详细讲述算法测试过程和方法!敬请期待~

最后: 下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】

​​​软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

在这里插入图片描述

在这里插入图片描述

  • 16
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值