数据科学部门负责人
,
澳鹏(Appen)美国
曾任eBay首席研究科学家(数据科学总监)
对于一些精度要求不太高,或者不太复杂的计算机视觉应用场景,利用一些现有的开源数据集如ImageNet/Coco 等,我们也可以训练出满足基本要求的机器学习模型。但对于更复杂的计算机视觉应用,如何获得大量、高质量的训练数据以支持创建一个精确机器学习解决方案?来自美国加州澳鹏Appen数据科学部门负责人的刘明宽先生在这篇文章中,详细阐述了如何快速创建(包括采集、标注、质检)高质量的各种计算机视觉场景所需的训练数据集,并应用于视频理解、自动驾驶、安全监控监视系统和医学图像诊断等领域。
对于任何部署于大规模实际应用中的计算机视觉应用来说,成功的一个关键就在于训练相关机器学习模型所需的训练数据集的质和量。
如何为机器学习项目创建合适的训练数据集?
不同类型的机器学习建模方法可能会使用不同类型的训练数据。这篇文章所讨论的,数据类型的主要区别在于它被标记的程度。在实际应用场景中通常有以下
四种不同的机器学习建模方法
:
-
监督学习:是指模型是在标注数据集上训练的。
-
半监督学习:是指模型是在少量的标注数据集加上大量的非标注数据集上进行训练的。
-
无监督学习:采用聚类分析对非标注数据进行分组,聚类分析不是对反馈做出响应,而是识别数据中的共性,并根据每条新数据中是否存在这种共性做出反应。
-
强化学习:模型在一个互动环境中通过从自身的行为和经验中获得的反馈,反复实验,从而达到学习和提高的目的。
目前在实际大规模工业应用中最成功的计算机视觉系统通常还是采用监督学习的方法,即运用了大量高质量的标注数据来进行训练,例如深度学习方法。具体到您的项目中,选取何种学习模型,很大程度上将取决于您的实际项目需求以及可用资源,如预算和人员配备等。
尽管利用一些现有的开源数据集(如ImageNet, Cityscapes, 或Coco 等)也可以训练出一个还不错的计算机视觉模型来满足跟这些数据集很类似的CV应用需求。但是在更多的时候,这些开源数据集并不能满足您特定的计算机视觉应用场景需求,无论是具体应用的领域、或是数据分布的样本空间、还是标注的精细程度等等。
计算机视觉应用在实际应用部署中要想取得比较满意的应用效果,一个关键点是训练相应机器学习模型的训练数据集必须符合实际应用场景中的数据分布并尽可能地做到无偏见、无遗漏地覆盖各种实际应用中可能出现的情况。否则就很可能就是Garbage In and Garbage Out。
您需要为您的计算机视觉应用场景采集足够多的来自于实际应用场景的真实图像或视频数据,并对这些数据进行高质量的符合您具体应用需求的精细标注。根据解决方案的复杂性或安全性要求,这有可能意味着需要采集和标注数以百万计的图像数据。
如果您的计算机视觉应用场景很常见,并且也不需要进行非常定制化的精细标注,那么您有可能从某些数据供应商那里购买到一些现成的常用场景的常用标注数据集。
如果这些现成可用的数据集并不符合您的具体应用场景,大多数公司通常会选择与训练数据提供商进行合作来采集和标注所需的训练数据集。例如,澳鹏(Appen)在数据采集和标注方面拥有一个具备二十多年行业经验的多达数百人的全球项目经理团队。这些项目经理们可以一对一地根据您的特定应用场景需求,同您一起制定出符合您具体需求的数据采集、标注、质检、交付等环节的指导文档,并将这些任务和指导文档分发给Appen全球数百万的众包员工。从而可以做到在比较短的时间里就帮您开发出符合您具体应用场景需求的大量且高质量的训练数据集。
一个大型的、多样的训练数据集,将会使您的机器学习模型在细节判定和避免误报方面具有更好的健壮性和成功率。这对于诸如自动驾驶训练数据之类的解决方案尤其重要。这些解决方案中,机器学习模型必须准确地识别出在街上玩耍的小孩和在风中飘舞的购物袋之间的区别。在这种情况下,如果你的系统训练量不足,则可能会受到背景光线、颜色、大小、形状的相似性等的因素的影响,从而造成系统的识别混淆。
如何提高训练数据的质量?
精准的图像标注对于广大的计算机视觉应用至关重要,包括机器人视觉,面部识别和依赖于机器学习来解释图片的其他解决方案。为训练这些解决方案,必须将标识符,标题或关键字形式的元数据分配给图片。在大多数情况下,要正确识别复杂图像中可能经常出现的细微差别和模棱两可的情况(如交通摄像头报告和拥挤的城市街道照片),人工的处理是必不可少的。
澳鹏(Appen)的图像标注工具就是利用人工智能的力量,显著提高了图像标注工作者的工作效率。人工智能辅助的图像标注工具会首先勾勒出物体轮廓。例如,如果标注任务是标出一张图片中所有的汽车,澳鹏(Appen)的3D点云图像标注工具会自动在汽车周围形成3D边界框,如果汽车形状没有完全对齐,则人工只需要调整边界框的几个点。这样要比让人工从头开始画3D边界框快得多,效率也更高。
人总是会有犯错的时候,哪怕是那些经过长期专业训练的众包标注员。如何避免由于人工标注员的疏忽而导致的训练数据集的质量下降呢?
澳鹏(Appen)从两个方面对人工数据采集和标注的流程进行了质量管控。首先我们运用了人工智能的方法对标注员的标注结果进行自动数据验证,并给标注员提供实时的质检反馈,从而让标注员可以加速熟悉当前的标注任务进而快速地提升标注质量。另外澳鹏(Appen)还建立了一套严格符合ISO-9001国际标准质量管控认证的数据采集、标注、交付的流程。在整个流程的每个环节当中,我们都有独立的质检员来从始至终地实时对每个标注员的交付结果进行质检抽查。没有达到质量标准的标注员及其标注结果都会被新的符合质量标准的标注员替代并进行重新标注。这样我们就可以确保提供给客户的训练数据集完全符合您的高质量要求并有力地保证了客户训练出来的机器学习模型在实际部署时的成功。
提高训练数据集的质量还意味着您必须保证您的训练数据集覆盖了可能遇到的所有真实场景,以保证您的计算机视觉系统能适用于真实环境。有一些方法可以非常简单的丰富图像数据。例如帮助训练机器学习模型以应对现实中的细微差别的常见方法包括旋转或裁剪图片,以及更改颜色和曝光值。实践证明,这种方式处理数据是提高计算机视觉系统性能的简单而有效的措施。
在训练图像数据时如何避免标注偏差?
一个可能会影响机器学习模型准确性的问题是训练数据中的偏差。在训练机器学习模型时,您的团队应当注意几个可能会导致偏差的原因。