单片机承载着深度学习的未来

电子说

1.2w人已加入

描述

果然,TensorFlow Mobile的老大,满脑子还是便携设备的事。

Pete Warden,是谷歌TensorFlow团队成员,也是TensorFLow Mobile的负责人,常年遨游在深度学习的大海。

另外,这些看上去很熟悉的书,也是他的作品。除此之外,皮特有个新的想法要和大家分享——他坚定地相信,未来的深度学习能够在微型的、低功耗的芯片上自由地奔跑。换句话说,单片机 (MCU) ,有一天会成为深度学习最肥沃的土壤。这里面的逻辑走得有些绕,但好像还是有点道理的。

为什么是单片机

单片机遍地都是

根据皮特的估计,今年一年全球会有大约400亿枚单片机 (MCU) 售出。

MCU里面有个小CPU,RAM只有几kb的那种,但医疗设备、汽车设备、工业设备,还有消费级电子产品里,都用得到。这样的计算机,需要的电量很小,价格也很便宜,大概不到50美分。之所以得不到重视,是因为一般情况下,MCU都是用来取代 (如洗衣机里、遥控器里的) 那些老式的机电系统——控制机器用的逻辑没有发生什么变化。

能耗才是限制因素

任何需要主电源 (Mains Electricity) 的设备,都有很大的局限性。毕竟,不管到哪都要找地方插电,就算是手机和PC都得经常充电才行。

然而,对智能产品来说,在任何地方都能用、又不用经常维护,才是王道。所以,先来看下智能手机的各个部位用电有多快——

· 显示器400毫瓦

· 无线电800毫瓦

· 蓝牙100毫瓦

· 加速度计21毫瓦

· 陀螺仪130毫瓦

· GPS 176毫瓦

相比之下,MCU只需要1毫瓦,或者比这更少。可是,一枚纽扣电池拥有2,000焦耳的电量,所以即便是1毫瓦的设备,也只能维持1个月。当然,现在的设备大多用占空比 (Duty Cycling) ,来避免每个部件一直处在工作状态。不过,即便是这样,电量分配还是很紧张。

CPU和传感器不太耗电

CPU和传感器的功耗,基本可以降到微瓦级,比如高通的Glance视觉芯片。相比之下,显示器和无线电,就尤其耗电了。即便是WiFi和蓝牙也至少要几十毫瓦。

深度学习

因为,数据传输需要的能量,似乎与传输距离成正比。CPU和传感器只传几毫米,而无线电的传送距离以米为单位,就要贵得多。

传感器的数据都去哪了

传感器能获取的数据,比人们能用到的数据,多得多。皮特曾经和从事微型卫星拍摄的攻城狮聊过。他们基本上用手机相机来拍高清视频。但问题是,卫星的数据存储量很小,传输带宽也很有限,从地球上每小时只能下载到一点点数据。就算不涉及到地外事务,地球上的很多传感器也会遇到这样的尴尬。

一个很有趣的栗子,来自皮特的一个好基友,每到12月,他家上网流量就会用到爆炸。后来,他发现是那些给圣诞节挂的彩灯,影响了视频下载的压缩比例,多下载了很多帧。

跟深度学习有什么关系

如果上面这些听上去有点道理,那么就有一大片市场等待技术来挖掘。我们需要的是,能够在单片机上运转的,不需要很多电量的,依赖计算不依赖无线电,并且可以把那些本来要浪费掉的传感器数据利用起来的。这也是机器学习,特别是深度学习,需要跨越的鸿沟。

天作之合

深度学习就是上面所说的,计算密集型,可以在现有的MCU上运行得很舒服。这很重要,因为很多其他的应用,都受到了“能在多短的时间里获得大量的储存空间”这样的限制。

相比之下,神经网络大部分的时间,都是用来把那些很大很大的矩阵乘到一起,翻来覆去用相同的数字,只是组合方式不同了。这样的运算,当然比从DRAM里读取大量的数值,要低碳得多。需要的数据没那么多的话,就可以用SRAM这样低功耗的设备来存储。如此说来,深度学习最适合MCU了,尤其是在8位元计算可以代替浮点运算的时候。

深度学习很低碳

皮特花了很多时间,来考虑每次运算需要多少皮焦耳。比如,MobileNetV2的图像分类网络,的最简单的结构,大约要用2,200万次运算。如果,每次运算要5皮焦,每秒钟一帧的话,这个网络的功率就是110微瓦,用纽扣电池也能坚持近一年。

对传感器也友好

最近几年,人们用神经网络来处理噪音信号,比如图像、音频、加速度计的数据等等。

深度学习

如果可以在MCU上运行神经网络,那么更大量的传感器数据就可以得到处理,而不是浪费。那时,不管是语音交互,还是图像识别功能,都会变得更加轻便。

虽然,这还只是个理想。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分