查看原文
其他

精彩碰撞!神经网络和传统滤波竟有这火花?

周周 AI科技大本营 2021-11-11

作者 | 凌霄
出品 | AI大本营(ID:rgznai100)
惯性传感器在航空航天系统中主要用于姿态控制和导航。微机电系统的进步促进了微型惯性传感器的发展,该装置进入了许多新的应用领域,从无人驾驶飞机到人体运动跟踪。在捷联式 IMU 中,角速度、加速度、磁场矢量是在传感器固有的三维坐标系中测量的数据。估计传感器相对于坐标系的方向,速度或位置,需要对相应的传感数据进行捷联式积分和传感数据融合。在传感器融合的研究中,现已提出了许多非线性滤波器方法。但是,当涉及到大范围的不同的动态/静态旋转、平移运动时,由于需要根据情况调整加速度计和陀螺仪融合权重,可达到的精度受到限制。为克服这些局限性,该项研究利用人工神经网络对常规滤波算法的优化和探索。

常规滤波算法的不足

惯性姿态估计的现有解决方案通常基于模型和启发式参数化。研究人员会使用测量误差,三维旋转和重力加速度转换的数学模型,选择合理的协方差矩阵,融合权重或定义权重调整方式等参数。尽管在许多应用领域中使用这种解决方案已经获得了相当高的精度,但是众所周知,对于不同类型的运动和干扰,不同的参数化效果也不同。

姿态估计问题

对测量获取的四元数和预估的四元数之间进行误差计算
给定一个在空间中自由移动的,基于 MEMS 的 IMU 的三维加速度计和陀螺仪读数的采样序列,估算每个采样时刻 IMU 相对于参考坐标系的姿态。利用算法获取四元数估计值𝑞̂(𝑡),估计值与真实四元数q(t)之间应具有最小的累积姿态估计误差。


神经网络模型

A.具有一般最佳实践的神经网络结构
模型架构:模型体系结构由多层组成,这些多层可以通过多种方式连接,从而导致不同的特性。首先,必须选择一种用于对动态系统状态进行建模的方法,最常用的是递归神经网络(RNN)和时间卷积网络(TCN)。RNN 具有多种变体,其中一种是 LSTMs。在当前的工作中,研究人员使用两层 LSTM 模型,每层的隐藏大小为 200,最后一个线性层将隐藏的激活次数减少到四个,用以代表估计的姿态四元数的元素,并生成单位四元数。TCN 可用于对系统动力学建模,与 RNN 相比,TCN 的主要优势在于前馈性质,不依赖顺序,从而可以实现可并行性,可以在硬件上加速训练。在当前的工作中,研究人员使用 10 层 TCN,接收 1024 个样本,每层的隐藏大小为 200。下图显示了该工作中使用的 RNN,TCN 模型的结构。

为了进行训练,会从测量的序列中提取较长的重叠序列,因此神经网络会以不同的状态进行初始化。因为对于每个小批量,只能以有限的时间步长合理地训练 RNN,所以使用了随时间的截短反向传播。这意味着长序列会在用于训练的较短窗口中拆分,从而在每个小批量之间传递 RNN 的隐藏状态。使用相同的平均值和标准偏差值对测量的序列进行标准化,从而提高训练的稳定性。
在训练过程中,研究人员主要对模型进行优化。训练中,使用了基于 Pytorch 构建的Fastai 2 API。优化器的学习率是训练神经网络最重要的超参数之一,研究人员通过学习率启发式算法选择最大学习率,并使用余弦退火来加快收敛速度。学习率启发式算法通过在虚拟训练中以指数方式增加学习速率并找到损失具有最陡峭梯度的点来确定最大学习速率。余弦退火从最大学习速率开始,在给定的时期内保持恒定,然后随着时间呈指数减小。
B.损失函数
模型的输出是一个四元数,它描述了传感器的姿态。在大多数情况下,将获取估计值和参考值之间的均方误差。在当前情况下,四元数的逐元素均方误差不是一个合理的选择,因为不能仅通过加速度计和陀螺仪信号来明确估计方向,还必须使用磁力计。一种解决方案是选择与姿态误差函数𝑒𝛼(𝑞, 𝑞̂)相等的损耗函数,同时为避免梯度爆炸,使用线性项代替arccos(d)反余弦函数,并且可以保持单调性和与姿态的相关性
𝑒𝛼(𝑞, 𝑞̂) = 1 − 𝑑
下图直观显示了两个函数及其梯度之间的差异。

C.数据增强
数据增强是一种通过引入域知识来增加给定数据集大小的方法。这是一种可提高模型通用性的正则化方法,已成功应用于计算机视觉和音频建模等领域。在当前姿态估计任务的情况下,研究人员通过随机生成的单位四元数变换测得的加速度计,陀螺仪和参考姿态数据来虚拟旋转 IMU。从而,将用于传感器测量的方向不变性引入模型,并降低其对过度拟合的敏感性。
D.分组输入通道
处理多元时间序列的默认方法是将所有输入信号放入同一层。一种替代方法是创建彼此交互的信号组,并将它们与不需要交互的信号断开连接,从而减轻神经网络发现信号之间的相互作用。在本研究中,研究人员将加速度计和陀螺仪分别进行分组,加速度计在较大的时间尺度上提供姿态信息,而陀螺仪提供有关方向变化的准确信息,如下图所示。


实验

该研究将提出的神经网络与基于标记的光学运动跟踪系统的姿态估计滤波器的性能进行比较。为了分析不同类型的动作以及不同水平的静态或动态活动的算法性能,研究人员考虑了来自不同实验的大量数据集,这些数据具有以下特征:
1.旋转:IMU 在三维空间中自由旋转,同时保持在空间中的同一点附近。
2.平移:IMU 在三维空间中自由移动,同时保持几乎相同的方向。
3.任意:IMU 在三维空间中自由旋转和平移。
4.慢,中,快:运动速度在三个不同级别之间变化。
5.暂停与不间断:每三十秒暂停一次,并在十秒钟的中断后继续运动,或者在五分钟录制的整个过程中不间断执行。
上述实验数据用于验证和比较以下两种姿态估计算法:
•Baseline:基于四元数的姿态估计滤波器,该算法实现了基于加速度计的校正步骤和自动融合权重自适应。滤波器时间常数和权重自适应增益在数值上进行了优化,从而在所有数据集中产生最佳性能。
•神经网络:在增强数据集的子集上训练的神经网络,并在补充的数据集上进行验证。
在三项研究中分析了将神经网络应用于姿态估计问题的特征。第一个将优化的神经网络与基线过滤器的性能进行比较。第二个是消融实验,量化了优化的效果并比较 RNN 和 TCN 模型的性能。最后一项研究分析了缩放神经网络规模的影响。
A.性能分析
通过将神经网络与 Baseline 滤波算法,另外的两种开源滤波算法进行比较,神经网络的中值误差甚至更小,并且在所有运动中均表现良好,鉴于在整个数据集上对过滤器进行了优化的事实,而神经网络从未见过任何验证数据,这一点就显得尤为突出。

B.消融实验
研究结果如下图所示。其一,如果不进行优化,RNN 和 TCN 模型的表现将达到相似的水平。但是,添加优化之后,RNN 的误差要小得多,因为 TCN 局限于感受野,而 RNN 可以在其隐状态下无限期地跟踪 IMU 运动。其二,所有优化均改善了 RNN 和 TCN。对输入进行分组会始终带来较小的改进,而损失优化和数据增强会对性能产生重大影响。因此,通过消融实验可知,要使性能优于基准滤波器,就必须进行损耗优化和数据增强。

C.模型尺寸分析
为了分析模型尺寸对姿态误差的影响,将性能分析中的 RNN 模型应用于消融实验的 12个训练和 3 个验证记录,对 RNN 每一层的神经元数量从 10 缩放到 200,并比较姿态误差。如图所示,误差随着 Hidden Size 的增加而减小,在较大的神经元数量下梯度减小。减小RNN 的 Hidden Size 有助于减少内存占用和总体计算时间,这对于嵌入式系统很重要。但是,由于其顺序性,它仅在边际上减少了具有高并行化功能的硬件加速器的训练和预测时间。
这项工作表明,神经网络是用于基于 IMU 的实时姿态估计的有效工具。如果针对特定领域能够满足相应的优化要求,那么大型递归神经网络的性能将超过最新的非线性姿态估计滤波器。但是,这些优化不同于常规滤波算法的优化,其不需要实现性能良好的滤波器所需的特定知识。此外,基于神经网络的方案需要有足够丰富的数据集,通过数据增强可以大大减少这种需求。最后,根据参数的数量,使用神经网络进行姿态估计需要更多的计算时间。

更多精彩推荐

: . Video Mini Program Like ,轻点两下取消赞 Wow ,轻点两下取消在看

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存