|边缘AI新方法TinyML,超低功耗,在边缘设备进行机器学习( 三 )


单词唤醒并不是唯一一个无缝嵌入智能手机的 TinyML 。 加速计数据用于确定是否有人刚刚拿起了手机 , 这将唤醒 CPU 并打开屏幕 。
显然 , 这并不是 TinyML 唯一的应用 。 事实上 , TinyML 为企业以及爱好者提供了生产更智能物联网设备的机遇 。 数据变得越来越重要 , 将机器学习资源分配到偏远地区内存有限的设备上 , 给数据密集型行业(如农业、天气预报或地震学)带来了好处 。
毫无疑问 , 赋予边缘设备执行数据驱动处理的能力 , 将为工业过程带来范式转变 。 例如 , 当设备检测到土壤湿度、特定气体(例如苹果成熟时释放出乙烷)或特定大气条件(如大风、低温或高湿度)等特征时 , 检测设备会发送有助于作物的信息 , 极大地促进作物生长 , 从而提高作物产量 。
再举一个例子 , 一个智能门铃可以安装一个摄像头 , 通过面部识别来确定谁在现场 。 这可以用于安全目的 , 或者甚至只是当有人在场时 , 门铃上的摄像机信号会传输到房子里的电视上 , 这样居民们就知道谁在门口 。
目前 , TinyML 的两个主要重点领域是:
关键字发现 。 大多数人已经熟悉此类应用程序 。 「Hey Siri」和「Hey Google」是关键字的示例(通常与「hotword」或「wake word」同义使用) 。 这样的设备连续收听来自麦克风的音频输入 , 并且被训练为仅响应特定的声音序列 , 这些特定的声音序列与学习的关键字相对应 。 这些设备比自动语音识别 (ASR) 应用程序更简单 , 并且相应地使用了更少的资源 。 某些设备(例如 Google 智能手机)利用级联架构来提供扬声器验证以确保安全性;
视觉唤醒词 。 唤醒词有一个基于图像的类似物 , 称为视觉唤醒词 。 我们可以把它想象成一个图像的二值分类来表示某物是存在还是不存在 。 例如 , 可以设计智能照明系统 , 使得其在检测到人的存在时启动 , 并在人离开时关闭 。 同样 , 当存在特定的动物时 , 野生动物摄影师可以使用它来拍照 , 而当他们发现有人时 , 可以使用安全摄像机拍摄照片 。
下面显示了 TinyML 当前机器学习用例的更广泛概述 。
|边缘AI新方法TinyML,超低功耗,在边缘设备进行机器学习
本文插图

TinyML 的机器学习用例(源图像:NXP) 。
TinyML 工作方式
TinyML 算法的工作方式与传统机器学习模型基本相同 。 通常 , 这些模型是在用户的计算机上或云上进行训练的 。 后期训练是 TinyML 的工作真正开始的地方 , 这个过程通常被称为深度压缩 。
|边缘AI新方法TinyML,超低功耗,在边缘设备进行机器学习
本文插图

深度学习模型压缩流程图(图源:https://arxiv.org/pdf/1510.00149.pdf)
模型蒸馏
训练完成后 , 模型会被修改 , 以创建一个表示形式更紧凑的模型 。 剪枝和知识蒸馏是两种常用方法 。
知识蒸馏的基本思想是 , 较大的网络具有一定的稀疏性或冗余性 。 虽然大型网络具有较高的表示能力 , 但如果网络容量不饱和 , 则可以在具备较低表示能力的较小网络(即较少的神经元)中进行表示 。
下图演示了知识蒸馏的过程:
|边缘AI新方法TinyML,超低功耗,在边缘设备进行机器学习
本文插图

深度压缩过程图(图源:https://arxiv.org/pdf/1510.00149.pdf)
同样地 , 剪枝可以使模型表示更紧凑 。 广义上讲 , 剪枝试图去除对输出预测影响较小的神经元 。 通常与较小的神经权重有关 , 而较大的权重由于其在推理过程中的重要性而保持不变 。 然后 , 网络在剪枝后的架构上重新训练 , 微调输出 。
|边缘AI新方法TinyML,超低功耗,在边缘设备进行机器学习
本文插图


推荐阅读