现在常见的模型比如图像分类模型基本都在500兆以上,自然语言处理的一些模型例如语言模型很多都在1G以上,机器翻译的模型也都是500兆以上。 而一个手机或者潜入式设备要加载一个500兆以上的模型基本不太现实,因此当前深度学习面临的一大挑战就是如何把大模型变成小模型。因为移动设备不仅仅是内存或者存储空间的限制,更多是因为能耗的限制,不允许我们用太大的模型。 2017年2月2日,位于美国西雅图的 AI 创业公司 XNOR.AI 宣布获得来自Madrona Venture Group和艾伦人工智能研究所(Allen Institute for Artificial Intelligence)等机构的260万美元的种子融资。XNOR.AI 利用二值化神经网络等技术对深度学习网络进行压缩,致力于开发有效地在移动端或嵌入式设备上运行的深度学习算法。 值得注意的是,微软联合创始人Paul Allen个人也参与了XNOR.AI的种子轮投资。 跑的比香港记者还快的探长对XNOR.AI联合创始人兼CTO Mohammad Rastegari 进行了专访,与他探讨了深度学习的前沿问题。
二值化神经网络,就是所有的权值不用浮点数表达了,就是一个二进制的数,要么是+1要么是-1,用二进制的方式来表达,这样原来一个32 bit权值现在只需要一个bit来表达,从而大大降低这个模型的尺寸。 2016 年 3 月,Mohammad Rastegari 等人在ECCV论文(XNOR-Net: ImageNet Classification Using Binary Convolutional Neural Networks)中首次提出了 XNOR-Net 的概念。 这篇论文旨在利用二值化操作寻找到最优的简化网络,并分别介绍了两种有效的网络:Binary-Weight-Networks 和 XNOR-Networks。Binary-Weight-Networks 是对 CNN 中所有的权重做近似二值化,可以节省 32 倍的存储空间。而且,由于权重被二值化,卷积过程只剩加减算法,不再包括乘法运算,可以提高约两倍的运算速度,这促使 CNN 可以在不牺牲准确率的情况下在小存储设备上使用,包括便携式设备。 XNOR-Networks 算法则是对 CNN 中所有的权重和输入同时做近似二值化,如果卷积运算中的所有操作数都是二进制的,那么两个二进制向量的点乘就可以等同于同或运算和位运算。而这些操作天然就被CPU等通用计算设备支持,所以二值化神经网络能够跑在普通的CPU和更便宜的ARM芯片甚至是树莓派等设备上。
此外,如上图所示,在节省了几十倍空间和几十倍速度提升的情况下,Binary-Weight-Network和XNOR-Network的准确率精度下降并不显著。 强悍的团队 XNOR.AI团队CEO Ali Farhadi是华盛顿大学计算机系教授,同时也是艾伦人工智能研究所的计算机视觉方向的负责人,他在计算机视觉领域积累深厚,同时是非常惊艳的实时物体检测框架YONO的主要贡献者,“YOLO”系统在2016年CVPR会议上的现场展示一度惊艳全场。 (YOLO的在CVPR 2016的现场演示 ) XNOR.AI的CTO Mohammad Rastegari是艾伦人工智能研究所研究科学家,也在计算机视觉领域有接近十年的研究经历。 (xnor.ai CTO Mohammad Rastegari) XNOR.AI团队首次让二值神经网络在ImageNet上面完了实验,在自主搭建的轻型神经网络框架 DarkNet 中实现了在 CPU 上 58 倍速度的提升,直播,这意味着很多深度学习算法可以在嵌入式设备上实时的运行。 XNOR.AI团队还把 “YOLO”系统 的二值化版本在 iPhone 上面做到了实时探测,也成为实时检测的一大亮点。 事实上,团队还曾将 XNOR-Net 部署在价值 5 美元的 Raspberry Pi Zero 上,通过连接一个摄像头实现了实时视频分析,他们官方视频里展示出的实时检测分析效果十分引人注意,强烈的震撼了小探的小心脏。
如果在类似于 Raspberry Pi Zero 这样的移动设备上都能做到实时物体检测,这项技术在其他领域中也潜藏着巨大的商业价值。 XNOR.AI的愿景是普适人工智能 (责任编辑:本港台直播) |