云社区 博客 博客详情
云社区 博客 博客详情

ModelArts数据标注篇之如何提高模型精度 --- 基于口罩检测案例实践

番茄洪 发表于 2020-04-08 10:57:13 04-08 10:57
番茄洪 发表于 2020-04-08 10:57:13 2020/04/08
1
1

【摘要】 题目来源ü 其他资料:n 口罩图片数据集:https://modelarts-labs-bj4.obs.cn-north-4.myhuaweicloud.com/case_zoo/mask_detect/datasets/mask_detect_datasets.zipn 参考文档:https://nbviewer.jupyter.org/github/huaweicloud/Mode...

题目来源

ü  其他资料

n  口罩图片数据集:https://modelarts-labs-bj4.obs.cn-north-4.myhuaweicloud.com/case_zoo/mask_detect/datasets/mask_detect_datasets.zip

n  参考文档:https://nbviewer.jupyter.org/github/huaweicloud/ModelArts-Lab/blob/master/contrib/1.%E5%8F%A3%E7%BD%A9%E6%A3%80%E6%B5%8B%E6%A8%A1%E5%9E%8B%E7%9B%B4%E6%92%AD%E5%BC%80%E5%8F%91%E6%8C%87%E5%AF%BC%E6%96%87%E6%A1%A3/mask_detect.ipynb

 

本文目标

大家都知道,人工智能界有句非常经典的话,叫做“有多少人工,就有多少智能”,这里的多少人工,非常直白的理解就是监督学习里面的数据标注:标注数据的量(数量和质量)以非常大的比重影响着AI的质量;

本文重点以标注质量为维度,探索如何进行标注质量的提升来模型精度。会从三个维度进行数据标注的不同尝试。

 

1、  使用已经标注好的标注(这类数据基本上都是把整个头部涵盖进去)

2、  使用ModelArts智能标注

先手动标注部分,其余使用智能标注,然后不断修正。

 

3、  修正标注(眼睛、鼻子、口罩覆盖部分)

 

 

 

自动学习获取训练模型(默认标注)

导入数据集并发布数据

将数据集通过OBS Browser上传到OBS指定桶之后,在ModelArts上开始创建数据集

ModelArts Console -> 创建数据集 -> 图片、物体检测

 

点击“同步数据源” 同步已经标注好的数据。

 

数据集统计信息以及发布数据集版本

自动学习训练

创建ModelArts自动学习->物体检测项目(已有数据集)

一键启动模型训练

整个训练过程,大概需要30min左右,请耐心等待。

训练完成,整体验证数据集上的准确率 81%

验证测试

把自动学习模型部署成在线服务

使用测试数据集验证,本文抽样三张代表测试图片

A、 没有口罩(no_1.jpg)

B、 有口罩(yes_4.jpg)

有误检:


 

C、 有口罩&没有口罩(yes_no_5.jpg)

检测正确

自动学习获取训练模型(智能标注)

删除已标注信息

1)  下载样例数据后,删除train目录下的所有xml后缀文件(是标注文件)

2)  把整个数据集目录通过obs browser上传到OBS桶中

创建数据集

 

因为所有标注信息以及删除,输出数据集产生之后,所有标签是没有的。

 

使用智能标注

使用智能标注之前,需要在先手工标注部分内容。建议标注数据集的20%之后再进行智能标注,因为智能标注的本质也是通过已经标注的数据训练好一个模型,然后针对未标注的数据集进行推理而得。

先手工标注 46张,然后启动智能标注

智能标注待确认

确认标注:这一步主要是为了确认智能标注的结果(有可能初选漏检、误检、错误等,需要手工标注修正)

 

人工确认标注信息

自动学习训练

训练过程大概耗时40min左右,提交训练任务之后,需要耐心等待。

验证测试

把自动学习模型部署成在线服务

使用测试数据集验证,本文抽样三张代表测试图片

A、 没有口罩(no_1.jpg)

B、 有口罩(yes_4.jpg)

无误检:

 

C、 有口罩&没有口罩(yes_no_5.jpg)

检测正确

 

 

自动学习获取训练模型(纯手工标注)

删除已标注信息

3)  下载样例数据后,删除train目录下的所有xml后缀文件(是标注文件)

4)  把整个数据集目录通过obs browser上传到OBS桶中

创建数据集

 

因为所有标注信息以及删除,输出数据集产生之后,所有标签是没有的。

 

标注数据集

为了和默认标注对比,本次手动标注涵盖范围缩小,只包含眼睛、鼻子、口罩覆盖部分,不包含整个头部(比如头发、帽子等上部分),也就是相比样例提供的数据集要口罩检测的框范围。对比如下:

 

 

自动学习训练

将所有的人工标注数据集创建自动学习物体检测项目,进行自动学习训练。

 

验证测试

A、 没有口罩(no_1.jpg)

B、 有口罩(yes_4.jpg)

有误检:

 

C、 有口罩&没有口罩(yes_no_5.jpg)

检测正确

 

FAQ

1、  自动学习训练失败,提示有异常图片: 说明这三张图片自动学习模型预处理不支持,需要把这三种图片删除或者转换到rgb

spacer.gif


登录后可下载附件,请登录或者注册

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区),文章链接,文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:huaweicloud.bbs@huawei.com进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。
评论文章 //点赞 收藏 1
点赞
分享文章到微博
分享文章到朋友圈

评论 (1)


建行袁覃

1楼2020-06-20 23:20:35
值得学习!赞!
0/1000
评论

登录后可评论,请 登录注册

评论

您还没有写博客的权限!

温馨提示

您确认删除评论吗?

确定
取消
温馨提示

您确认删除评论吗?

删除操作无法恢复,请谨慎操作。

确定
取消
温馨提示

您确认删除博客吗?

确定
取消

确认删除

您确认删除博客吗?

确认删除

您确认删除评论吗?

温馨提示

登录超时或用户已下线,请重新登录!!!

确定
取消