作者:Tobias Schaffrath Rosario

编译:ronghuaiyang

原文:在基于图像的深度学习中如何做数据的自动标注以及自动标注的等级介绍_ronghuaiyang的博客-CSDN博客

导读

数据的关键性在深度学习中至关重要,而标注又非常的贵,如果能够做到自动标注,那就太好了。

这篇文章是对基于图像的深度学习的最常见方法、基本标注方法、标注类型和该任务的自动化级别的一个高级探索。

这篇文章可以作为人们基于图像构建人工智能的一个有用的指南。为了便于理解,我们简化了下面的一些概念。

标注的介绍

基于图像的AI需要使用标注图像进行训练。这些标注也被称为“ground truth”、“labeled”或“annotated”数据。不同的数据科学模型有多种类型的“标注”。它们各不相同,包括"关键点","插值" ,"姿态估计"等等。在这篇文章中,我们将重点讨论四种最常用的标注类型:

分类

这对于快速获得图像属性非常有用。它包括图像中的物体、表情或背景。这是最简单的标注形式,也是我们在Google-captcha中看到的。然而,这种方法的功能有限,因为物体的位置、形状和属性都是未知的,而且需要对数百万张图像进行标注,才能可靠地了解这些细节。

物体检测

这对于定位图像中的物体很有用。标注相对简单,只需在目标周围画一个紧凑的框即可。这样做的好处是,存储这些信息和所需的计算相对较轻。缺点是框里的“噪音” —— 捕捉到的“背景” —— 经常会干扰模型对物体形状和大小的学习。因此,当存在高度的“遮挡”或物体形状的高度差异时,这种方法就会遇到困难,而这些信息是很重要的 ——想想生物细胞或服装的类型。

语义分割

这在标记数量不重要的物体的形状时很有用,比如天空、道路或简单的背景。这样做的好处是,当标注每个像素时,整个图像的信息就会丰富得多。你的目标是准确地知道区域的位置和它们的形状。这种方法的挑战是每个像素都需要标注,这个过程很耗时而且容易出错。

实例分割

这在指示不同的物体的时候很有用,如车1、车2、花a、花b等。这样做的好处是,我们可以更快地了解物体的形状和属性,而且与物体检测相比,我们可以更好地处理遮挡问题。挑战在于,这种方法非常耗时而且容易出错。

分割的挑战

正如你所看到的,实例和语义分割是非常耗时的,因为你需要手动勾勒出精确的目标对象 —— 点对点的“多边形”,甚至像素对像素的“mask”。这就是为什么它如此容易出错。事实上,世界上最好的标注者有4-6%的错误率,而一般人的错误率在8-9%左右。这种错误率会对最终AI的性能产生显著影响,并且通常会阻碍项目通过概念证明阶段。

现在想象一下目标物体是复杂的,比如有机细胞或机械物品。此外,如果错误的余地很小,因为模型导致错误的决策的后果可能是可怕的,甚至是致命的。通常,在这些非一般情况下,分割具有最大的实用性,是实现高性能模型的必要条件。

构建基于图像的人工智能所需的70%工作是标注工作。如果做AI的实践工作的时候(如自动驾驶),如果有数百万个小时的人工标注数据来训练神经网络,团队才有足够的信心把它投入生产。即使这样,在部署模型之后,通常也需要重新标注或标注额外的数据。

当需要专家对这些图像进行标注时,自动化手工工作的好处是最大的。典型的用例包括医学和生物成像、机器人技术、质量保证、先进材料和农业。想想这样的例子:你正在构建一个人工智能来帮助一个花了很多年才成为该领域专家的人。

标注的等级

机器视觉自动化的目标是通过尽可能少的输入来确定物体的轮廓。在本节中,我们将主要介绍自动化分割任务,因为这通常是劳动密集型的工作。

这种情况下的自动化水平是评估:

级别1:单个图像中的单个目标

级别2:单个的图像中的多个目标

级别3:估计多幅图像中多个物体的轮廓

目标是准确估计一个给定项目的所有图像中所有目标的轮廓。

Level 1 — 在秒级标注一个物体

使用从著名的“OpenCV”框架中流行的经典计算机视觉方法,Photoshop中的工具,甚至一些基于新颖的人工智能方法,这些工具旨在尽可能自动化单个目标的标注。1级工具的例子包括:

  • Contour 基于对比的轮廓 — 在对比度很高的背景上效果很好

  • GrabCut 从背景中在一个预定义好的区域上提取前景

  • Magic wand 选择一个区域在给定范围内通过寻找在附近的相似像素来逼近目标

  • DEXTR 使用在大型通用数据集上训练的模型,试图识别一个定义区域内的目标轮廓

注:通常标注工具声称具有“自动标记”的功能,如DEXTR。然而,它仍然是一个手动工具,依赖于之前对通用数据集的训练,为每个目标提供建议。不要误解我们,这个工具是伟大的,它的用途达到一级自动化,但它距离完全的“自动标注”还很远。

Level 2 — 在秒级标注一幅完整的图像

在这个级别上,你尝试在一个操作中标注图像中的所有目标。这接近当前深度学习的前沿。与第1级相比,节省的时间是巨大的,因为人力投入大幅减少。然而,这种自动化需要比级别1更高的置信度级别。这意味着,在部署第2级工具之前,可以使用第1级工具启动标注项目。

2级自动化是通过人工智能辅助实现的。这些AI在你标注的时候在后台学习。当它们达到一定的置信度分数时,作为用户,你可以开始使用它们,并获得建议,不仅针对单物体,而且针对完整的图像。随着更多的图像完成,AI助手将重新训练并进行改进。

Level 3 — 在秒级标注完整的图像组/项目

当标注自动化到这个级别时,作为用户,你应该能够在几秒钟内标注一组图像,甚至是一个完整的项目。这里所期望的是,作为用户,你只需单击一个按钮,项目中的所有图像就会得到标注。

虽然非常强大,但使用3级工具也会带来挑战。例如,如果你标注了一个数据集,包含10 000动物图片,其中的1 000已经标注过了,但是这个3级工具很难区分青蛙和蟾蜍,9 000汽车图片工具的标注可能有严重的质量问题。应该被归类为青蛙的现在变成了蟾蜍,反之亦然,这样所做的标注是无用的。这是一种分类错误 —— 只有四种类型的错误会发生。其他的则是产生人造痕迹、不准确的分割或完全漏掉对象。

因此,要使用3级工具,你需要非常确定结果是准确的,并且误差百分比非常低(0.5%)。这种确定性可以通过将用户行为考虑到第2级自动化中来实现,例如对第2级的建议进行轻微调整或不进行调整,并查看诸如可信度级别之类的内容。

在基于图像的深度学习中如何做数据的自动标注以及自动标注的等级介绍相关推荐

  1. 盘点深度学习中的各种数据增强技巧

    1 什么是数据增强? 数据增强也叫数据扩增,意思是在不实质性的增加数据的情况下,让有限的数据产生等价于更多数据的价值. 比如上图,第1列是原图,后面3列是对第1列作一些随机的裁剪.旋转操作得来. 每张 ...

  2. 深度学习中的噪声数据

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 作者:蒋路 来源:https://www.zhihu.com/pe ...

  3. 深度学习中的噪声数据该如何处理?

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达本文转自|深度学习这件小事 孔子云:"性能不够,数据来凑& ...

  4. 深度学习中如何实现数据增强,扩大数据集

    https://jingyan.baidu.com/article/4b52d702e6a167fc5c774bbb.html 深度学习算法需要大量的训练数据,而有时我们收集不到太多的数据源,那么为了 ...

  5. 深度学习中AP、mAP、recall、IoU、NMS的评价指标介绍

    1.通过混淆矩阵实例给大家讲解各个指标: 混淆矩阵 预测 0 1 真实 0 TN FP 1 FN TP 真阳率:代表将真实正样本划分为正样本的概率 伪阳率:代表将真实负样本划分为正样本的概率 精确率: ...

  6. 深度学习中防止过拟合的方法

    在深度学习中,当数据量不够大时候,常常采用下面4中方法: 1. 人工增加训练集的大小. 通过平移, 翻转, 加噪声等方法从已有数据中创造出一批"新"的数据.也就是Data Augm ...

  7. 基于python的深度学习框架有_《用Python实现深度学习框架》上市

    朋友们,<用Python实现深度学习框架>已经由人民邮电出版社出版上市了.在这本书中,我们带领读者仅用Python+Numpy实现一个基于计算图的深度学习框架MatrixSlow.本书讲解 ...

  8. 深度学习中的梯度下降优化算法综述

    1 简介 梯度下降算法是最常用的神经网络优化算法.常见的深度学习库也都包含了多种算法进行梯度下降的优化.但是,一般情况下,大家都是把梯度下降系列算法当作是一个用于进行优化的黑盒子,不了解它们的优势和劣 ...

  9. RSE2020/云检测:基于弱监督深度学习的高分辨率遥感图像精确云检测

    RSE2020/云检测:Accurate cloud detection in high-resolution remote sensing imagery by weakly supervised ...

最新文章

  1. 计算机应用基础的答案2015,2015年《计算机应用基础》模拟试题及答案(一)
  2. [转载]VC6下安装STLport-5.2.1
  3. 网页中获取微信用户是否关注订阅号的思路
  4. C++之string类
  5. Scrapy框架的学习(6.item介绍以及items的使用(提前定义好字段名))
  6. 如何查看Windows8.1计算机体验指数评分
  7. 动态规划(Dynamic Programming)算法与LC实例的理解
  8. 关于谷歌浏览器62版本之后引用video.js不能自动播放的问题(Cross-origin plugin content from http://vjs.zencdn.net/swf/5.0.0-rc
  9. Caffe_stu03_小训练
  10. Android Button设置边框 和背景
  11. stream has already been operated upon or closed错误
  12. 计算机软考证书全面分析
  13. Linux: pam
  14. Datatable 转换成Json
  15. Ethereum 入门
  16. php imap 存草稿,学习猿地-PHP-imap 使用参考
  17. Draw.io--一款强大且支持在线编辑和导出的流程图绘制软件
  18. vmware efi linux,图文详解在vmware11虚拟机上安装以EFI启动模式的win 10 technical preview系统-网络教程与技术 -亦是美网络...
  19. Mari教程20部合集
  20. 瀑布图-图表自定义系列属性

热门文章

  1. 微软 win2003停止服务器,7月15日,Windows Server 2003停止支持
  2. C#toolTip应用
  3. python学习笔记9:SQLite Expert Professional软件的安装
  4. 工具及方法 - 决策矩阵-Decision Matrix
  5. Linux文件权限(密码、用户、组、文件权限)——————附带详细操作
  6. 重置计算机共享配置文件,如何设置局域网共享,小编教你电脑如何设置局域网共享文件夹...
  7. 贝索斯:善良比聪明更难 选择比天赋更重要
  8. 微信公众号分享、支付开发
  9. 线程池5:与停止线程池,相关的五个方法;(shutdown(),isShutdown(),isTerminated(),awaitTermination(),shutdownNow();)
  10. 26、Java——迷你图书管理器(对象+IO流)