如何使用CNN推理机在IoT设备上实现深度学习

作者简介:
唐洁,华南理工大学计算机科学与工程学院副教授。主要从事面向无人驾驶和机器人的大数据计算与存储平台、面向人工智能的计算体系架构、面向机器视觉的嵌入式系统研究。
责编:何永灿([email protected]
本文为《程序员》原创文章,未经允许不得转载,更多精彩文章请订阅《程序员》

通过深度学习技术,物联网(IoT)设备能够得以解析非结构化的多媒体数据,智能地响应用户和环境事件,但是却伴随着苛刻的性能和功耗要求。本文作者探讨了两种方式以便将深度学习和低功耗的物联网设备成功整合。

近年来,越来越多的物联网产品出现在市场上,它们采集周围的环境数据,并使用传统的机器学习技术理解这些数据。一个例子是Google的Nest恒温器,采用结构化的方式记录温度数据,并通过算法来掌握用户的温度偏好和时间表。然而,其对于非结构化的多媒体数据,例如音频信号和视觉图像则显得无能为力。

新兴的物联网设备采用了更加复杂的深度学习技术,通过神经网络来探索其所处环境。例如,Amazon Echo可以理解人的语音指令,通过语音识别,将音频信号转换成单词串,然后使用这些单词来搜索相关信息。最近,微软的Windows物联网团队发布了一个基于面部识别的安全系统,利用到了深度学习技术,当识别到用户面部时能够自动解开门锁。

物联网设备上的深度学习应用通常具有苛刻的实时性要求。例如,基于物体识别的安全摄像机为了能及时响应房屋内出现的陌生人,通常需要小于500毫秒的检测延迟来捕获和处理目标事件。消费级的物联网设备通常采用云服务来提供某种智能,然而其所依赖的优质互联网连接,仅仅在部分范围内可用,并且往往需要较高的成本,这对设备能否满足实时性要求提出了挑战。与之相比,直接在物联网设备上实现深度学习或许是一个更好的选择,这样就可以免受连接质量的影响。

然而,直接在嵌入式设备上实现深度学习是困难的。事实上,低功耗是移动物联网设备的主要特征,而这通常意味着计算能力受限,内存容量较小。在软件方面,为了减少内存占用,应用程序通常直接运行在裸机上,或者在包含极少量第三方库的轻量级操作系统上。而与之相反,深度学习意味着高性能计算,并伴随着高功耗。此外,现有的深度学习库通常需要调用许多第三方库,而这些库很难迁移到物联网设备。

在深度学习任务中,最广泛使用的神经网络是卷积神经网络(CNNs),它能够将非结构化的图像数据转换成结构化的对象

  • 3
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值