近几年人工智能迎来发展高峰,愈来愈多的人开始意识到,机器能够经过学习拥有智能,进而取代一部分人类工做,这促成了人工智能的技术研究达到空前的热度。深度学习即是目前主流的研究领域,并被认为是最具研究前景和发展潜力的方向。 算法
深度学习的研究动机是创建可模仿人脑进行学习的神经网络,分为有监督学习和无监督学习两种,目前主流的深度学习框架包括: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在性能上和其余框架相比劣势比较明显,但灵活性很高,支持各类复杂的网络模型,方便配置新的算法和环境而且支持可视化; spa
Caffe在图片处理上的速度很快,用K40 GPU处理图片能够达到2ms/张的速度,而且在学术及工业领域有不少能够借鉴的项目; 3d
Theano支持语言较少,其余方面表现都还不错,是一种适合学术研究的学习框架。 在美团酒旅业务场景中,美团云提供预装了TensorFlow框架的GPU云主机来进行图像识别训练。cdn
深度学习须要大规模数据的运算来训练模型,其性能主要受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)的组合算法方案:
(图2:算法模型)
基于此混合算法的模型训练,识别精度目前能够达到单次识别准确率90%以上,5次识别准确率99%以上,对于宋体、楷书等文字识别的准确率能够达到80%以上。随着模型和算法的优化,准确率还将不断提高。
除了在酒旅业务场景中应用图像识别以外,美团点评在天然语言处理、人脸识别等多个领域都有所探索,美团云GPU云主机为上述领域的研究提供了训练支撑,帮助加速训练过程,完善算法。
目前,美团云主要提供单机单卡的GPU云主机,将来还将研究单机单卡、单机多卡与多机多卡等方式之间的性能及成本差别,提供更符合用户需求的GPU计算服务。
此外,美团云于近日上线了深度学习平台,并开放了人脸识别、OCR识别等AI应用,提供一站式AI服务。
-----------------------------------------
加入美团云开发者交流QQ群,与更多的开发大牛共同窗习。 QQ群号:469243579