在这篇客座文章中,可口可乐公司的 Patrick Brandt 将向我们介绍他们如何使用 AI 和 TensorFlow 实现无缝式购买凭证。
实现无缝式购买凭证的任务 多年来,可口可乐一直尝试使用现成的光学字符识别 (OCR) 库和服务读取产品编码,但收效甚微。我们的印刷工艺一般使用低分辨率点阵字体,瓶盖或纸箱媒介在打印头下面以非常快的速度运转。这就产生了低保真字符串,让现成的 OCR 软件无法读取这些字符(有时人眼也很难阅读)。OCR 对简化移动用户的编码输入过程至关重要:用户应当能够为编码拍照,然后自动进行购买注册来参加促销。我们需要一个用途特定的 OCR 系统来识别我们的产品编码。 ▲ 瓶盖和纸箱示例
通过 TensorFlow 实现的卷积神经网络 过去,由于可用的训练和推理库极其复杂,开发像卷积神经网络一样的深度神经网络一直都是一项巨大的挑战。TensorFlow(Google 于 2015 年开放源代码的一种机器学习框架)旨在简化深度神经网络的开发。 TensorFlow 为不同种类的神经元层和热门损失函数提供了高级接口,简化了实现不同卷积神经网络模型架构的工作。快速迭代不同模型架构的能力大大缩短了我们公司构建自定义 OCR 解决方案所需的时间,因为我们可以在短短几天的时间内开发、训练和测试不同的模型。TensorFlow 模型也非常便携:框架以原生方式支持在移动设备上(“边缘上的 AI”)或在远程托管于云端的服务器中执行模型。这就为许多不同平台(包括网络和移动设备)之间的模型执行带来了一种“一劳永逸”的方式。 机器学习:熟能生巧 任何神经网络的智慧都不会超过用于训练它的数据。我们知道自己需要大量带标签的产品编码图像来训练一个卷积神经网络,从而帮助我们实现性能目标。我们的训练集分三个阶段构建:
▲ 错误纠正界面让用户可以纠正无效预测并生成有用的训练数据
▲ 产品编码识别管道 针对实现最大性能进行优化 为了满足用户对性能的期望,我们为产品编码 OCR 管道建立了一些严格的要求:
最初,我们探索了一种为所有产品编码介质使用一个卷积神经网络的架构。这种方式创建的模型过大,无法分发至移动应用,并且执行时间也比所需的时间长。我们在 Quantiphi, Inc. 的应用 AI 合作伙伴开始迭代不同的模型架构,并最终确定了一种使用多个卷积神经网络的架构。
▲ 具有不同类型遮挡、平移和照相机焦点问题的有效产品编码识别示例 通过 AI 跨越边界 人工智能的发展和 TensorFlow 的成熟让我们最终可以实现梦寐以求的购买凭证能力。自从 2017 年 2 月底启动以来,我们的产品编码识别平台已经为十多个促销活动提供帮助并生成了超过 18 万个扫描代码;它现在已成为可口可乐北美地区所有网络促销活动的核心组件。
|
|
来自: alayavijnana > 《科技未来》