引导计算机视觉项目从原型进入生产
随着现有图像数据量的增长以及人工智能 (AI) 对全球企业重要性的日益增强,计算机视觉正在一些行业快速发展。计算机视觉是机器学习 (ML) 的一种形式,它帮助计算机“看到”与人眼所见类似的图像,并对图像进行注释。通过对图像和其中的对象进行分类,计算机可以对所视内容作出反应,并根据具体使用场景提供增强的预测、客户体验和安全性。
AI 领域出现诸多计算机视觉应用,其使用率预计将随着时间的推移呈指数级增长。例如,医疗行业的计算机视觉应用预计将从 2019 年的约 4 亿美元增长到 2025 年底的 13 亿美元,而 30% 的零售商将在未来 12 个月内采用最先进的 计算机视觉 技术。预计到 2025 年,整个 计算机视觉 市场的规模将达到 182.4 亿美元,在全球 AI 市场中占据很大的份额(全球 AI 市场的规模到 2026 年将达到惊人的 680 亿美元)。
尽管计算机视觉项目在快速增长,但许多企业仍然难以建立起部署信心,主要原因是缺乏高质量的数据,并且对构建自动化 AI 流程的了解有限。要释放业务价值,必须克服这些挑战,并且是以一种可扩展的方式进行。
有哪些成功的计算机视觉应用?
许多组织已在其计算机视觉应用方面取得了成功,从而获取业务价值。下面的案例分析重点介绍不同行业的成功案例。
电商
Shotzr 是一个面向市场营销专业人员的图像数据库,其中有超过 7 千万张图片。他们找到澳鹏(Appen),想通过高质量的训练数据为营销人员打造更加个性化和本地化的搜索体验。利用图像分类计算机视觉,Shotzr 让各种各样的众包人员为图片添加相关的类别标签(例如时尚、自然和生活方式)。他们随后将这些图片输入到其平台的搜索算法中,从而改善推荐和搜索体验。由于营销人员能够搜索到更具相关性的图片和内容,平台的使用率增长了 20%。
零售业
机器人技术是AI的一个让人激动的 领域,它需要依赖 计算机视觉技术。零售企业正在为自己的商店配置机器人,用来跟踪库存状态并确认哪些商品库存量低或已经缺货。考虑到全球每年因缺货商品造成的收入损失达到 4480 亿美元,此举有可能为大型零售商节省大量成本。
机器人使用对象检测技术,该技术通过图像标注来确认产品是否缺货,并通过光学字符识别(使用图像转录)扫描条形码和输出产品名称与价格。
农业
John Deere 采用计算机视觉算法来识别农田中的杂草,塑造了农药使用的新局面。通过像素级图像分割,可以训练 AI 区分图像的哪个部分是农作物,哪个部分是杂草。这样,农民就可以使用无人机将农药只喷洒在杂草上,从而有望将农药成本降低 90%。
汽车业
HERE 公司利用视频、图像和文本数据为许多行业创建精确的地图。他们的路标检测算法具有 ML 辅助视频对象跟踪功能,他们的平台还可以使用光学字符识别算法,通过带边框的商业标牌识别出企业。HERE 使用像素级语义分割在卫星地图上标注建筑物的行人入口、楼层数等信息。
该公司还使用视频标注来跟踪汽车、交通工具和行人。我们的工具提供了增强的机器辅助功能,使模型能够跟踪每个对象的运动,从而使该对象的人工标注更加易于管理。
这些案例证明了计算机视觉为许多重点行业的企业节省大量成本的能力,同时也凸显了训练数据为他们的成功贡献的价值。
如何开展计算机视觉项目
开展计算机视觉项目的关键是建立可扩展的自动化模型流程。以下步骤将以自动驾驶汽车为例,带您了解整个过程。
1. 业务问题
明确定义一个将为您的组织带来价值的业务问题。识别参与执行解决方案的关键利益相关者,并获得他们对项目的批准和理解。请务必评估这项工作的优先级,以及您的组织愿意投入的资金规模。
在开发自动驾驶汽车的情况下,业务价值可以是更高的收入,也可以是对获得竞争优势的渴望。
2. 数据
准备训练数据涉及许多步骤,包括收集、清理、分段、标注、处理和分析。您还会希望有适当的数据治理程序来监控安全问题。(下一节将详细介绍训练数据的重要性。)
在我们的自动驾驶汽车示例中,首先从汽车的摄像头、LiDAR 和 RADAR 中收集同步传感器数据,然后将其移植到中央存储单元。汽车制造商还可以选择利用来自开源或成品数据集的相关传感器数据。数据标注的方法有很多。例如,点云视频对象跟踪就是一种 CV 标注技术,它可以跟踪 3D 空间中的对象(也许有助于了解汽车与其他物品交互的方式)。
3. 模型构建
在模型构建阶段,需要使用准备好的数据和超参数来训练算法,优化特征提取,分析输出,再训练,直到模型达到所需的精度阈值为止。您可以使用冠军挑战者模型进行测试,用一个初始模型作为接受挑战的模型。您提出另一个模型,即挑战者模型,并对两个模型进行 A/B 测试,表现较佳的模型成为冠军模型。您可能必须通过这个过程进行几百次甚至几千次迭代,直到获得您想要的模型。
对于自动驾驶汽车,您可能需要训练一个模型或五个不同的模型(需要多样化的数据收集和标注过程,并将模型融合在一起以创建最终模型)。在测试模型时,您要通过迭代(例如温度、天际线之上发生的事情或与驾驶相关的其他因素)来增加复杂性。自动驾驶汽车还需要在真实环境中进行现场测试,以确保车辆可以在各种条件下工作。
4. 部署
得到冠军模型后,您要评估该解决方案能否解决您一开始定义的业务问题,以及它能否提供预期的业务价值。如果不能,您要重复整个过程以进行调整。如果您的模型已经准备就绪,就可以将其与现有业务流程集成,然后进行部署。采用适当的工具继续评估模型在部署后的表现。
部署有多种含义。对于自动驾驶汽车来说,就是需要将一个物理组件(很像一件可穿戴设备)安装到车辆上。
5. 主动学习和调整
部署模型后,您的工作还没结束。您现在进入了模型维护模式,需要进行持续的更新和监督。可使用人机协同的方法来提供真实情况并进行成功的监控,以降低模型偏差。另外,您需要继续检查模型预测中的偏差,并在必要时向模型提供反馈。
随着全球道路状况的发展,您需要对自动驾驶汽车中的 AI 进行持续更新。
训练数据:计算机视觉项目的核心
用另一个同样准确的标题表述的话,可以说:训练数据是所有机器学习项目的核心。如果没有高质量的训练数据,AI 模型将难以做出准确、高置信度的预测,并因此无法为最终用户提供满意的服务。在构建 AI 时,训练数据是成功的必备要素。那么您应该考虑哪些与数据有关的因素呢?以下问题将帮助您创建有效的数据管理策略:
目标和项目优先事项
- 您的质量目标是什么?
- 您计划如何训练和调整模型?
- 您的数据需求是什么?
数据采集
- 您需要多少数据?
- 您从哪里获得数据?
- 您的数据多样性是否足以避免过度拟合?
- 您如何传送数据?
- 您如何在部署后继续收集数据?
数据标注
- 您需要哪种类型的数据标注?
- 哪些标注工具最适合您的需求?
- 谁来标注您的数据?您需要特定的技能和语言专长吗?
数据流程和扩展
- 您计划如何自动化 AI 数据流程?
- 您是否会纳入“人机交互”?
- 您如何对模型进行持续训练?
- 这些问题绝非详尽无遗,但有助于您探索一些必要的途径,以便准备高质量的训练数据并构建和维护成功的模型。
为未来而优化
构建有效的、高性能的计算机视觉应用的模型关系到优化数据和模型流程并避免常见错误。您需要建立持续的学习循环来不断重新训练和挑战冠军模型,从而解决数据偏差和模型陈旧问题。您需要设置可重复的自动化工作流程,以便设计可扩展的模型。您还需要创建全面的数据治理框架,以促进高质量训练数据的准备工作。这些行动将共同帮助您从试用阶段进入部署和生产阶段并走得更远。