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