美团云GPU云主机在图像识别领域的应用实践

573 阅读5分钟

前 言 

近几年人工智能迎来发展高峰,越来越多的人开始意识到,机器可以通过学习拥有智能,进而取代一部分人类工作,这促成了人工智能的技术研究达到空前的热度。深度学习便是目前主流的研究领域,并被认为是最具研究前景和发展潜力的方向。 

深度学习的研究动机是建立可模仿人脑进行学习的神经网络,分为有监督学习和无监督学习两种,目前主流的深度学习框架包括:TensorFlow、Caffe、Theano、MXNet、Marvin、Torch等等。下面选择其中4种框架进行对比,分别为TensorFlow、Caffe、Theano和MXNet,并介绍基于深度学习的图像识别在美团酒旅业务中的应用实践以及美团云GPU云主机在其中发挥的作用。  

不同深度学习框架的对比 

TensorFlow是谷歌开源的一款深度学习框架,目前应用最为广泛,支持图像、文字、语音的识别,自然语言处理等功能,可以说是一种通用型学习框架;Theano支持手写字识别、图像分类、自然语言处理等功能,但是比TensorFlow速度要快;Caffe在计算机视觉领域表现突出;MXNet是上述几种框架中扩展性最好的,支持CNN(卷积神经网络)、RNN(递归神经网络)、LSTM(长短期记忆网络),并且也能够支持多种功能,亚马逊就选择了MXNet作为其深度学习框架。 

下面通过语言、速度、灵活性、适用模型、上手难度等方面对比四种框架。

(表1)


(图1) 

从表1中的综合对比来看,这四种框架各有优劣,MXNet综合能力更全面。从图1中可以看出单卡GPU处理下,MXNet的loss是这四种框架中最低的,所用时间也最短。 

TensorFlow在性能上和其他框架相比劣势比较明显,但灵活性很高,支持各种复杂的网络模型,方便配置新的算法和环境并且支持可视化; 

Caffe在图片处理上的速度很快,用K40 GPU处理图片可以达到2ms/张的速度,并且在学术及工业领域有很多可以借鉴的项目; 

Theano支持语言较少,其他方面表现都还不错,是一种适合学术研究的学习框架。 在美团酒旅业务场景中,美团云提供预装了TensorFlow框架的GPU云主机来进行图像识别训练。

基于深度学习的图像识别在酒旅业务中的应用 

深度学习需要大规模数据的运算来训练模型,其性能主要受GPU浮点运算能力的影响,所以选择合适的GPU是提升训练效率的重中之重。 

选择GPU主要考虑三方面因素:浮点运算能力、功耗和成本。一般情况下,GPU的浮点计算能力与其功耗成正比,另外现在GPU的更新换代速度比较快,所以大规模堆置高性能机器可能会造成一定程度的资源浪费。 

美团云提供的GPU云主机搭载了NVIDIA Tesla M60 GPU,预装了TensorFlow 1.1-GPU框架和Keras 2.0.4框架。M60可提供最高4096个并行处理核心,16GB的GDDR5显存及9.7TFlops 的单精度峰值性能。选择M60也是综合考量了性能、功耗以及成本三个方面的结果,美团酒旅图像识别的算法训练所选用的就是预装了TensorFlow 1.1-GPU框架的M60 GPU云主机。 

在酒旅的业务场景中,身份信息验证、机票验证、在线值机、验证码验证等都可以利用图像识别尤其是OCR识别技术来支持系统自动识别用户信息,简化用户操作流程,并提高信息录入的速度和准确度。 

验证识别中的主要流程包括:去噪点、去色、切片、模板对比、输出5个环节,因此在基于深度学习的OCR识别中,美团酒旅团队选择了CNN(Convolutional Neural Network)+LSTM(Long Short-Term Memory)+CTC(Connectionist temporal classification)的组合算法方案:

  • CNN即卷积神经网络,包括卷积层和池层,是一种前馈神经网络,CNN在大规模图像处理中表现出色,因此用CNN来进行图像特征的提取; 
  • LSTM是递归神经网络(RNN)的一种,即时间递归神经网络,适合处理和预测时间序列中间隔和延迟相对较长的重要事件,因此采用LSTM来提取时序关系最为合适; 
  • CTC是一种基于神经网络的时序分类,可以实现一个输入序列一个输出序列就可以完成训练。因为在输出长度固定的情况下,选择引入CTC来预测输出。



(图2:算法模型) 

基于此混合算法的模型训练,识别精度目前可以达到单次识别准确率90%以上,5次识别准确率99%以上,对于宋体、楷书等文字识别的准确率可以达到80%以上。随着模型和算法的优化,准确率还将不断提升。 

结 语 

除了在酒旅业务场景中应用图像识别之外,美团点评在自然语言处理、人脸识别等多个领域都有所探索,美团云GPU云主机为上述领域的研究提供了训练支撑,帮助加速训练过程,完善算法。 

目前,美团云主要提供单机单卡的GPU云主机,未来还将研究单机单卡、单机多卡与多机多卡等方式之间的性能及成本差异,提供更符合用户需求的GPU计算服务。 

此外,美团云于近日上线了深度学习平台,并开放了人脸识别、OCR识别等AI应用,提供一站式AI服务。

----------------------------------------- 

加入美团云开发者交流QQ群,与更多的开发大牛共同学习。 QQ群号:469243579 

关注美团云知乎机构账号,更多精彩分享。