计算机视觉在产业中的应用实践和前沿思考 - 吴永坚 - 阅读摘要
原文阅读于 AI 科技大本营
计算机视觉是一门研究如何让机器“看”的学问,涉及的重要一点是图像理解的技术。计算机视觉能够将线上线下的东西关联,关联人、关联物,这是它能发展起来的一个重要原因。
人脸检测的权威数据库 WIDERFACE 和 FDDB。
2017 年,腾讯优图推出了面向治安管理场景的优图天眼智能安防平台,以及面向交通监督场景的智能交通平台。
腾讯优 Mall 智慧零售系统可帮助企业用户打造“知人知面更知心”的智慧门店,借助计算机视觉能力为不同的顾客进行定制化推荐等。
什么是核身技术?就是验证线下这个人是否是与身份证呈现的是同一个人的技术。这种技术包括身份证 OCR 技术、活体检测和人脸比对技术,综合保障人脸核身的准确性与有效性。
深化 - 深度学习模型推断与训练研究
需要有很高的计算精度。将装饰物投影到人脸上,看得到的人脸像素要非常稳,就是说从这一帧到下一帧,人脸位置尽量不能浮动,需要很高的精度。
计算的速度。它覆盖了很多计算机型,需要一秒能够处理 100 帧以上。
对模型的大小要求也非常高。现在前端的很多处理是放在手机端的,其容量及安装更新都有很大的限制,这就要求我们的模型大小只能控制在 5 兆以内。
最后,就是需要特别广的平台支持,除了支持如苹果等高端机型以外,我们还要支持其他中低端的机型,至少实现 90% 以上的机型覆盖。因为不同的机型计算芯片也不一样,对 CPU、GPU 都要有很好的兼容。
我们的首要诉求是在面对移动端上的实时计算时,对人脸配置需要实时、兼容性好的深度学习前向推断框架。
从 2012 年开始,深度学习的训练模型层数在不断加深,训练的能力也越来越强。从最开始的 AlexNet/VGGNet 模型,到最近的 DPN 结构,模型已经达到了上千层,并且有了更复杂的网络子模型。
2014 年我们训练的只有百万级别的数据,而现在已是 10 亿级别甚至更高。
在传统机器学习迈向深度学习的过程中,我们始终面临模型训练与模型推断的挑战。
一个是高性能分布式训练平台 RadpidFlow,可支持多机多卡训练,提供完整的定点量化解决方案。“定点量化” 即意味着从原来的 32 位能够降到 8 位甚至更低,只有 8 位的训练模型才能更快的在前端跑起来,对带宽能够进行充分的利用。
另一个是跨平台的框架 RadpidNet,能够针对不同的芯片异构设备进行深度定制和优化,资源占用少,计算速度快。
腾讯优图推出了一款移动端开源神经推断网络库 NCNN (RadpidNet的前身)。
演进 - 性能不断提升,功耗持续优化
就芯片本身来讲,因面积有限,最开始 CPU 为保证通用处理性能会占用很多的控制单元,而这部分不是用来计算的,算力比较弱;到了 GPU 时代,也就是 NVIDIA 发展起来的一个重要时期,它能够把原来图形处理的设计单元与深度学习进行适配,算力强,但功耗比较高;再往后的专用 AI 芯片,专用卷积加速模块,为 AI 加速设计,包括很多的大公司或创业公司都在做这类的 AI 芯片。
首先是性价比会越来越高,同样的价格,同一芯片所能提供的算力越来越强,这符合摩尔定律;但如果打通这些芯片横向对比,我们还发现一个规律,单位功耗所买到的算力也越来越高,也就是说,单位算力输出的情况下,功耗越来越低,这就引入了所谓 “云+端” 的概念。
这导致的另一个趋势是,计算力开始从云向端上走。如从前段时间的英伟达的 GPU 到现在的英特尔 Movidus 芯片和国内的华为海思芯片都在进行这方面的尝试,腾讯优图深度学习平台的研究方向也从原来的 CPU、GPU 往 AI 芯片的方向上走。
腾讯优图,你身边的视觉 AI 专家。
WORDBOOK
optical character recognition or optical character reader,OCR:光学字符识别
artificial intelligence,AI:人工智能,仿智