处理移动端传感器时序数据的深度学习框架:DeepSense

作者: 佚名 2017-08-28 15:00:02

DeepSense 是一种在端设备上运行的深度学习框架,它可以在本地获取需要处理的传感器数据,并且在不上传到云端的情况下对这些数据应用深度学习模型,如卷积神经网络或门控循环神经网络等。

DeepSense 是一种在移动设备上运行的深度学习框架,可以根据来自移动传感器(例如,运动传感器)的数据进行回归和分类任务。分类任务的一个例子是异构人体活动识别(HHAR),即基于运动传感器测量数据来检测某人可能在进行哪些活动(步行,骑车,站立等等)。另一个例子是生物特征运动分析,即从步态识别出用户。回归任务的一个例子是利用加速度测量数据来跟踪汽车的位置并推断汽车以后的位置。

与***进的框架相比,DeepSense 特别提供了一个估计量(estimator),该估计量的跟踪误差远小于汽车跟踪问题的误差,并且明显优于 HHAR 和用户识别任务方面的***进的算法。

尽管我们一般将多数移动应用程序转移到远程云处理,但是转移过程对时间延迟要求很高,而且高传感器采样频率(如加速器,陀螺仪)导致数据传输难以支撑,因此我们更希望在本地设备上执行大型传感器任务。因此,我们通过在两种不同类型的智能设备上针对所有三项任务的适度能耗和低开销进行测试,展现了在移动设备上实现和部署 DeepSense 的可行性。

对于许多潜在的应用程序来说,本地处理也是保护隐私的一个重要组成部分。所以现在很多研究者对于这种端设备上的深度学习很感兴趣。本文作者深入了解了 DeepSense 的工作原理,并重点给我们介绍该框架的核心网络设计,其余的评估细节等我们应该很容易从论文中找到。

处理单传感器数据

我们先考虑单个传感器(最终我们希望构建应用程序,将多个传感器的数据组合起来)。单传感器可以提供多维测量,例如运动传感器,它会沿着 x、y 和 z 轴报告运动。我们每隔一段时间(即时间序列)收集这三个维度中的传感器读数,我们可以用如下形式表示:

处理移动端传感器时序数据的深度学习框架:DeepSense

我们要在宽度为τ的非重叠窗口中处理数据。将时间序列样本中的数据点数除以τ可以得到总的窗口数。例如,如果我们有 5 秒的运动传感器数据,并打算将它们划分为持续 0.25 秒的窗口,那么我们将得到 20 个窗口。

处理移动端传感器时序数据的深度学习框架:DeepSense

在频率维度上对时间序列数据中寻找模式比在时间维度上更好,所以下一步是将 T 窗口中的每一个小窗口通过傅立叶变换传递给 f 频率分量(frequency components),每个频率分量具有大小和相位。每个窗口得到一个 d x 2f 阶的矩阵。

处理移动端传感器时序数据的深度学习框架:DeepSense

我们有了这些 T,就可以将所有数据打包到一个 d x 2f x T 的 3 阶张量。

处理移动端传感器时序数据的深度学习框架:DeepSense

将所有的信息都很好地封装在单个张量中这一点是很方便实现的,但实际上我们将在 t 维中逐层处理(一次一个窗口)。每个 d x 2f 窗口切片通过卷积神经网络组件包括三个阶段,如下图所示:

处理移动端传感器时序数据的深度学习框架:DeepSense

首先,我们使用二维卷积滤波器捕捉局部频率域各维度之间的交互。然后输出通过一维卷积滤波器层来捕获高级关系。***一个滤波器层的输出被展平以产生传感器特征向量。

整合多传感器数据

按照上述应用程序使用每 K 个传感器的流程。我们现在有了 K 个传感器特征向量,我们可以把它打包成一个具有 K 行的矩阵。

处理移动端传感器时序数据的深度学习框架:DeepSense

然后传感器特征矩阵通过与我们刚刚看到结构相同的第二个卷积神经网络组件传送。也就是说,二维卷积滤波层后面是两个一维向量层。***,我们将***一个滤波器的输出压平为整合后的传感器特征向量。窗口宽度τ附加在在该矢量的末端。

对于每个卷积层,DeepSenses 学习 64 个滤波器,并使用 ReLU 作为激活函数。另外,在每层施加批量归一化以减少内部协变量(covariate)的变化。

现在一个时间窗口有组合的传感器特征向量。并且我们需要对所有 T 窗口重复上述过程。

所以现在我们有 T 个组合的传感器特征向量,每个都学习窗口内的相互作用。当然,跨时间窗口学习窗口之间的关系也很重要。为了做到这一点,T 特征向量被馈送到 RNN 中。关于这一点,我想我们已经准备好了一张示例图来说明问题。

处理移动端传感器时序数据的深度学习框架:DeepSense

作者在 RNN 层中采用了门控循环单元(GRU)而不是 LSTM。

GRU 在各种任务中表现出与 LSTM 相似的性能,同时具有更简单的结构,这降低了移动应用程序的网络复杂性。

DeepSense 使用两层的堆叠式 GRU 结构。当有新的时间窗口时,此结构可以逐增地(incrementally)运行,从而更快地处理流式数据。

将其全部数据输出到输出层

循环层的输出是一系列 T 向量, 每个时间窗口一个 T 向量。

对于回归类任务(例如,预测汽车位置),输出层是所有向量之上的全连接层,这些全连接层共享用于学习的权重和偏置项,从而学习

对于分类任务,将单个矢量组成一个固定长度的单矢量以便进一步处理。我们可以使用类似注意力网络学习的加权平均值一样的技巧,但是在本文中,通过取时间的平均值(累加向量并除以 T)可以获得优异的结果。最终特征向量被传送到 softmax 层以生成最终类别预测分数。

自定义目前的应用程序

遵从以下步骤将 DeepSense 打磨成适合特定的移动测绘和计算任务的系统:

  • 确定传感器的输入个数 k,将输入预处理到一组 d x 2f x T 张量中。
  • 确定任务类型并选择合适的输出层。
  • 可选择自定义成本函数。回归任务的默认成本函数是均方误差,分类任务默认的成本函数是交叉熵误差。

对于评估中的活动识别(HHAR)和用户识别任务,使用默认成本函数。对于汽车位置跟踪任务,使用负对数似然函数(详见 4.2 节)。

主要成果

以下是 DeepSense 相对于传感器融合和 eNav 算法在汽车跟踪任务上的准确度。地图辅助准确度栏显示了位置被映射到地图最近道路段时得到的准确度。

处理移动端传感器时序数据的深度学习框架:DeepSense

处理移动端传感器时序数据的深度学习框架:DeepSense

DeepSense 在 HHAR 任务上优于其它方法 10%。

处理移动端传感器时序数据的深度学习框架:DeepSense

在用户识别任务上优于其它方法 20%。

处理移动端传感器时序数据的深度学习框架:DeepSense

我们通过三个具有代表性的移动端测量任务评估了 DeepSense,DeepSense 的性能远远高于现有***技术的基准,同时仍然通过在移动和嵌入式平台上适度的能耗和低延迟的表现证明其移动端部署的可行性。

评估任务主要集中在运动传感器上,但该方法还可以应用于许多其他类型的传感器,包括麦克风、路由器、气压计和光传感器等。

深度学习 DeepSense 传感器
上一篇:人工智能行业薪酬曝光,是时候转行了 下一篇:亚马逊AI研发另辟蹊径 欲借此引领服装潮流
评论
取消
暂无评论,快去成为第一个评论的人吧

更多资讯推荐

AI时代,需要发挥知识图谱+知识管理的双轮价值

AI时代,需要发挥知识图谱+知识管理的双轮价值,才能真正实现从流程驱动、数据驱动走向知识驱动。

东方林语 ·  2021-05-31 09:15:14
人工智能是如何改变日常商业运作的?

人工智能的使用也改变了我们如今开展业务的方式。从平凡的任务到数据分析,该技术使公司能够保持竞争优势。此外,使用AI可以改善个性化的客户体验以及改善风险管理。

佚名 ·  2021-05-28 17:24:32
数据分析技术:边缘人工智能的应用

为了避免不必要的非关键数据移动,AI正在向边缘设备返回计算能力,从而影响开发人员利用人工智能和数据分析技术。

Cassie ·  2021-05-27 15:22:19
Few-shot Learning(1)—机器学习中的任务优化空间

今天深度学习之所以成功,大量的数据是不可缺少的必要条件。我们训练的模型都是吃过见过后才有现在这样良好的表现。不过实际情况要收集到足够多的数据并非易事,今天我们就这个问题来学习 Few-shot Learning。

zidea ·  2021-05-27 08:38:47
人工智能促进企业实现端到端的智能自动化

对于正在从事或已经致力于此类现代化工作的IT主管们来说,人工智能(主要体现为机器学习技术)有望对自动化产生革命性影响,使他们更接近端到端过程自动化的梦想。

Maria Korolov ·  2021-05-26 10:04:09
光明面与黑暗面:人工智能与人类的未来

随着技术创新步伐的不断提高,重要的是要意识到即将到来的中断,而不仅仅是盲目地享受AI带来的好处。计算机超级智能可能会威胁到我们的生存,即使不是这样,如果我们能够负责任地发动第四次工业革命,仍然有很多大问题需要解决。

Mark Lippett ·  2021-05-26 09:48:12
8个深度学习中常用的激活函数

当在隐藏层和输出层中实现时,激活函数的选择非常关键。模型的准确性和损失很大程度上依赖于激活函数。此外,必须根据您对模型的期望来选择它们。例如,在二值分类问题中,sigmoid函数是一种最优选择。

deephub ·  2021-05-22 23:08:08
2026年机器人传感器市场将突破40亿美元

据估计,到2026年,全球机器人传感器市场的价值将超过40亿美元。人工智能和物联网的集成预计将显著扩大这些传感器的应用范围,特别是在生产活动中。

Cassie ·  2021-05-21 17:53:24
Copyright©2005-2021 51CTO.COM 版权所有 未经许可 请勿转载