TinyML:下一轮人工智能革命( 二 )


此类改进同样适用于规模较大的模型 , 在不降低模型准确率(accuracy)的同时 , 实现机器学习模型效率数个数量级的提高 。 例如 , Microsoft 开发的 Bonsai 算法可小到 2 KB , 但比通常 40MB 的 kNN 算法或是 4MB 的神经网络具有更好的性能 。 这个结果听上去可能无感 , 但如果换句话说——在规模缩小了一万倍的模型上取得同样的准确率 , 这就十分令人印象深刻了 。 规模如此小的模型 , 可以运行在 2KB 内存的 Arduino Uno 上 。 简而言之 , 现在可以在售价 5 美元的微控制器上构建此类机器学习模型 。
【TinyML:下一轮人工智能革命】机器学习正处于一个交叉路口 , 两种计算范式齐头并进 , 即以计算为中心的计算 , 和以数据为中心的计算 。 在以计算为中心的计算范式下 , 数据是在数据中心的实例上存储和分析的;而在以数据为中心的计算范式下 , 处理是在数据的原始位置执行的 。 尽管在目前 , 以计算为中心的计算范式似乎很快会达到上限 , 但是以数据为中心的计算范式才刚刚起步 。
当前 , 物联网设备和嵌入式机器学习模型日益普及 。 预计到 2020 年底 , 将有超过 200 亿台活跃设备 。 人们可能并未注意到其中许多设备 , 例如智能门铃、智能恒温器 , 以及只要用户说话甚至拿起就可以“唤醒”的智能手机 。 本文下面将深入介绍 TinyML 的工作机制 , 以及在当前和将来的应用情况 。
TinyML:下一轮人工智能革命文章插图
图 2 云的层级结构图
TinyML 示例以前 , 设备执行的各种操作必需基于复杂的集成电路 。 现在 , 机器学习的硬件“智能”正逐渐抽象为软件 , 使得嵌入式设备更加简单、轻量级和灵活 。
使用嵌入式设备实现机器学习 , 需解决巨大的挑战 , 但在该领域也取得了长足的进步 。 在微控制器上部署神经网络 , 关键挑战在于低内存占用、功率受限和计算受限 。
智能手机是最典型的 TinyML 例子 。 手机一直处于主动聆听“唤醒词”的状态 , 例如 Android 智能手机的“你好 , 谷歌” , 以及 iPhone 的“你好 , Siri” 。 如果通过智能手机的 CPU(主流 iPhone 的 CPU 已达 1.85 GHz)运行语音唤醒服务 , 那么电池电量会在短短几个小时内耗尽 。 这样的电量消耗是不可接受的 , 而语音唤醒服务大多数人每天最多使用几次 。
为了解决这个问题 , 开发人员创建了可以用小型电池(例如 CR2032 纽扣电池)供电的专用低功耗硬件 。 即使 CPU 未运行(通常表现为屏幕并未点亮) , 集成电路也能保持活跃状态 。
这样的集成电路消耗功率仅为 1mW , 如果使用标准的 CR2032 电池 , 可供电长达一年 。
虽然有些人不觉得这有什么了不起的 , 但这是非常重要的进步 。 许多电子设备的瓶颈就是能源 。 任何需要市电供应的设备 , 其使用都受电力布线位置的限制 。 如果同一位置部署了十几台设备 , 可能电源会很快不堪重负 。 市电的效率并不高 , 且代价昂贵 。 将电源电压(例如美国使用的 120V)转换为典型的电路电压范围(通常约为 5V) , 会浪费掉大量的能量 。 笔记本电脑用户在拔充电器时 , 对此都深有体会吧 。 充电器的内部变压器所产生的热量 , 就是在电压转换过程中被浪费掉的能量 。
即使设备自带电池 , 电池续航也是有限的 , 需要频繁充电 。 许多消费类电子设备的电池 , 设计上可持续使用一个工作日 。 一些 TinyML 设备可以使用硬币大小的电池持续运行一年 , 这意味着可将此类设备部署在一些偏远的环境中 , 仅在必要时进行通信 , 以节省电源 。
在一台智能手机中 , 唤醒词服务并非唯一无缝嵌入的 TinyML 应用 。 加速度计数据可用于确定用户是否刚拿起手机 , 进而唤醒 CPU 并点亮屏幕 。
显然 , 这些并非 TinyML 的唯一用武之地 。 实际上 , TinyML 为产品粉丝和企业提供了大量令人兴奋的应用 , 用于实现更智能的 IoT 设备 。 在当前数据变得越来越重要的情况下 , 将机器学习资源分发到远端内存受限设备的能力 , 为农业、天气预报或地震等数据密集行业提供了巨大机遇 。
毫无疑问 , 赋予边缘设备执行数据驱动处理的能力 , 将为工业过程中的计算范式带来转变 。 举个例子 , 如果能够监测农作物并检测到诸如土壤湿度、特定气体(例如苹果成熟时会释放出乙烷)等特征或特定的大气条件(例如大风、低温或高湿度等) , 将极大地促进作物的生长 , 提高作物的产量 。
另一个例子是 , 在智能门铃中可安装摄像机 , 使用面部识别确定到场的来访者 。 这将实现安防功能 , 甚至可以在有人到场时将门铃摄像头输出到屋内电视屏幕 , 以便主人了解门口的访客情况 。