跳转到主要内容

《智能革命》边缘影响

cathy 提交于

<center><img src="http://mouser.eetrend.com/files/2021-01/wen_zhang_/100060721-118494-1.j…; alt=“图源:sdecoret/ShutterStock.com” width="600"></center><center><i>图源:sdecoret/ShutterStock.com</i></center>

<strong>将AI推向边缘的影响</strong>

在<a href="http://mouser.eetrend.com/content/2020/100059142.html">上一篇文章</a>中,我们探索了将AI推向网络边缘的一些有力论点。本篇连载文章中,我们将讨论哪些AI应用能真正从这种方法中受益。首先,回顾一下在网络边缘实施AI的原因便可以略知一二。请查看以下任何一项是否适用于您的项目:

<ul>
<li>
<p>无法访问快速、稳定的网络连接</p>
</li>
<li>
<p>产品在受限环境中运行</p>
</li>
<li>
<p>项目需要交付实时AI</p>
</li>
<li>可用预算有限</li>
</ul>

考虑到上述因素,通过在边缘运行ML模型可以使哪些具体的AI项目更容易运行?

<strong>虚拟助手 </strong>

Apple在2010年推出了Siri,一如既往地再次引领了潮流。这为其他许多虚拟助手铺平了道路,其中最著名的便是亚马逊的Alexa和Google Assistant。虚拟助手使科幻风格的语音控制成为现实,并通过以下方式工作:

<ul>
<li>
首先要说一个唤醒词或启动语音助手。对于Amazon Echo这样的独立式设备,则会不断监听唤醒词,并使用简单的语音模式匹配在本地进行处理。这就是为什么Alexa仅识别特定唤醒词(Alexa、Amazon、Echo和计算机)的原因;
</li>
<li>设备现在连接到云端服务器,并发送收听内容的录音;</li>
<li>云服务器运行语音到文本ML模型,将录制的语音转换为自然语言文本块;</li>
<li>文本则会借助自然语言处理解析以提取含义;</li>
<li>服务器会计算出所请求的内容,然后将适当的命令或内容发送回设备。</li>
<li>通过将ML模型移到边缘来改善这种体验的效果显而易见:语音助手将具有更快的响应速度、不需要连接到互联网即可嵌入语音控制。也就是说,被调用的应用程序本身可能需要网络连接(例如音乐流媒体服务)。 </li>
</ul>

<strong>面部识别 <strong>

面部识别是发展速度最快的AI应用之一。这一技术仍在发展,一路上小问题不断。例如,两年前,亚马逊旗下的Rekognition深陷种族主义的争议和指控之中。这套系统在接受了2.5万张图像的训练后,错误地将28个美国少数族裔议员识别为臭名远播的罪犯。

2019年,英国最大的警察机关大都会警察局 (Met) 对面部识别技术进行了早期试验,结果显示这项技术在81%的时候都不准确。但是,最新的面部识别系统正在变得越来越准确。Met今年年初宣布将在大型活动中采用这项技术扫描已证实的闹事者。
许多需要面部识别的用例都需要这项技术近乎实时地工作。因此,应用程序更依赖于将ML模型移动到网络边缘。Met所采用的系统基于NEC NeoFace Watch,它是完全独立的设备,并具备实时工作能力。NEC的技术还瞄准了其他几个市场,包括零售、企业活动、节日和其他大型活动以及交通运输。

<strong>实时监控</strong>

重工业和采矿业依赖于极其庞大和昂贵的机械。如果这种机器出现意外停机,企业可能会蒙受数以百万计的损失。例如,许多采矿作业都依赖于巨型大功率泵来保持巷道无水,并将开采出的泥浆泵送至选矿厂。如果这些泵当中有一台出现灾难性故障,则整个运营都将中断。因此,矿业公司在AI系统中投入巨资,以期借助这些系统提前预测潜在的故障。

目前,这些系统通常基于设备上安装的物联网传感器来传输数据。然后,数据会被集中处理,并将任何必要的警告回传到相应的操作人员。但是,矿山和施工工地的范围可能达到数十公里,通常地形险恶,因此将ML模型直接集成到边缘设备中将简化整个过程。

<strong>在边缘运行AI和ML模型需要什么?</strong>

将AI转移到网络边缘需要三样东西:合适的硬件、新工具和用于创建ML模型的新范式。下面我们将逐一进行介绍。

<strong><font color="#004a85">经过优化的硬件</font> </strong>

如前文所讨论的那样,ML模型通常依赖于大量的并行运算。本质上讲,它们需要原始的计算能力。但是,在算力和设备消耗的实际功率之间始终要进行权衡与取舍。要将ML模型推向边缘,需要消耗功率尽可能少的设备。当需要嵌入设备时更是如此。幸运的是,现在有各种各样的高性能、低功耗MCU。

<strong><font color="#004a85">合适的工具</font> </strong>

接下来需要合适的工具链以在微控制器上运行ML模型。绝大多数ML框架被设计在64位Intel系列的CPU或GPU上运行。相比之下,所有合适的微控制器都具有32位精简指令集架构,例如ARM Cortex系列的MCU。但是,TensorFlow Lite等ML框架的开发使ML模型可以在此类MCU上运行。

<strong><font color="#004a85">一次建模,即可随处运行 </font> </strong>

最后一块拼图是创建和运行ML模型的不同范式。这可以用“一次建模,即可随处运行”这句话来概括。顾名思义:先创建模型(通常使用大功率的经ML优化的机器),然后使用工具链将其转换为可以在任何微控制器上运行的代码。遗憾的是,这样也损失了从持续学习或强化学习中受益的能力。

<strong>权衡 </strong>

下表列出了在边缘模型上运行ML模型时所做出的一些权衡。但愿它能提供一些有助于确定是否将您的下一个AI项目移至最前沿的指引。

<table border="1" align="center" cellpadding="0" cellspacing="0">
<tbody>
<tr height="24">
<td width="221" height="24" align="center" valign="middle"><strong>特性</strong></td>
<td width="150" align="center" valign="middle"><strong>在数据中心</strong></td>
<td width="175" align="center" valign="middle"><strong>在边缘</strong></td>
</tr>
<tr height="24">
<td width="38" height="24" align="center" valign="middle">实时</td>
<td width="138" align="center" valign="middle">否</td>
<td width="175" align="center" valign="middle">是</td>
</tr>
<tr height="24">
<td width="38" height="24" align="center" valign="middle">持续学习</td>
<td width="143" align="center" valign="middle">是</td>
<td width="175" align="center" valign="middle">否</td>
</tr>
<tr height="24">
<td width="38" height="24" align="center" valign="middle">可嵌入</td>
<td width="138" align="center" valign="middle">否</td>
<td width="175" align="center" valign="middle">是</td>
</tr>
<tr height="24">
<td width="196" height="24" align="center" valign="middle">需要网络?</td>
<td width="138" align="center" valign="middle">是</td>
<td width="175" align="center" valign="middle">否</td>
</tr>
<tr height="24">
<td width="38" height="24" align="center" valign="middle">强化学习</td>
<td width="138" align="center" valign="middle">是</td>
<td width="161" align="center" valign="middle">否</td>
</tr>
<tr height="24">
<td width="38" height="24" align="center" valign="middle">模型是否齐全?</td>
<td width="138" align="center" valign="middle">是</td>
<td width="161" align="center" valign="middle">否</td>
</tr>
</tbody>
</table>

<strong>结论</strong>

将ML模型推向边缘,实现了AI的新用例,从而有望带来可嵌入式AI的革命。这些在MCU上运行ML模型所需的MCU硬件和工具的发展,均为这类技术的扩展奠定了基础。如需进一步了解具备AI功能的MCU,请<a target="_blank" href="https://eu.mouser.com/applications/tensorflow-lite-mcus-ai-edge/&quot; textvalue="点此访问" tab="outerlink" data-linktype="2">点此访问</a>。