【2020华为云AI实战营】零代码人车检测模型,快速实现网络替换,定制achors模型训练!
AI实战营第二课:零代码人车检测模型、快速实现网络替换、定制achors模型训练
课程内容可谓是干货满满,什么?如果你还没听过的话那就来看看吧!
作业一:
在课程2.2中,我们创建物体检测模型,实现零代码的人车检测模型开发
可以看到,识别结果非常准确
但是这个模型只能识别小的人和小型的机动车
遇到大点的人像或大型的巴士
会出现识别错误或识别缺漏的问题
(将人识别成车)
(双层巴士被识别成两台车)
(有6台车,只识别出3台)
为解决这些问题,我们在数据集里导入一些“大型巴士”和“近距离人像”
(在原数据集的基础上导入新数据集)
对新的模型也进行与上次相同时长的训练(0.2h),
对六台巴士图片的预测结果如图
发现结果依旧有问题:
错误地识别出两台小车 后面的大楼被当成了巴士
这是因为数据集比第一次训练时大了很多
机器需要更长的时间去学习“新知识”
时间太短的话,机器就无法完全地“消化”
再次训练,尝试把训练时长调整到1h,这次的效果就非常好了~
(成功识别所有车辆)
总结:在做数据集时,场景不要太过地单一,比如图像内物体的数量、远近、形态等都要考虑进去,尽量使数据集变得丰富,这样才可以得到一个比较完美的模型,以便应对各种特殊的场景。另外,在增大数据集的同时,要考虑适当加长训练的时间,以便机器能更好的“消化”。
作业二:
很多实践证明,如果替换一个更好的主干网络
训练结果可能会有不错的提升,是个不错的调优方案
在作业2的实践中,我们在FasterRCNN中用的是vgg16主干网络
我们只需替换部分编码,再对接新的网络文件路径,即完成了网络的替换(提示:1.from import 2.net= 3. pth./yml. )
总结:我们可以在已开发好的主干网络继续训练自己的数据集,这样做可以大大的提升效率。替换网络需要替换的内容有:网络结构定义、网络结构参数文件路径和网络配置路径。
作业三:
运行代码"!python kmeans.py",就可以生成一个新的achors文件,后缀是.txt,把旧的文件替换成新的,就可以使用定制化的achors参数训练模型。
achors是什么呢?简单来说就是物体的宽高比,物体会有一个常见的宽高比,比如行人常见宽高比是0.3:1,没有10:1的人吧?机器在下一次识别到0.3:1的物体的时候,就会判断“这有可能是个行人!”这样,模型就能更有效的学习。
- 点赞
- 收藏
- 关注作者
评论(0)