Py学习  »  机器学习算法

融合深度学习的贝叶斯滤波综述

新机器视觉 • 1 年前 • 645 次点击  

作者:张文安 ,  林安迪 ,  杨旭升等

来源:《自动化学报》

编辑:陈萍萍的公主@一点人工一点智能

原文:http://www.aas.net.cn/cn/article/doi/10.16383/j.aas.c230457


摘要:当前动态系统呈现大型化、复杂化的趋势,基于贝叶斯滤波的动态系统状态估计遇到了一系列新的挑战。随着深度学习在特征提取与模式识别等方面的优势与潜力不断显现,深度学习与传统贝叶斯滤波相结合的研究也随之兴起。
为此,本文梳理了不同领域融合深度学习的贝叶斯滤波方法的应用案例,从中剖析不同类型动态系统下贝叶斯滤波存在的局限性和共性难题。
在此基础上,总结了当前贝叶斯滤波存在的几类不确定性问题,以深度学习的视角将这些问题归纳为特征提取和参数辨识两大基本问题,进而介绍深度学习为贝叶斯滤波所提供的解决方案。其次,归纳整理了两类深度学习与贝叶斯滤波结合的具体方法,着重介绍了深度卡尔曼滤波和融合深度学习的自适应卡尔曼滤波。最后,综合考虑深度学习方法和贝叶斯滤波方法的优势,讨论了融合深度学习的贝叶斯滤波方法的开放问题和未来研究方向。

引言

随着信息技术的快速发展,动态系统呈现大型化、复杂化的新发展趋势,系统观测数据呈现出多模态、高维数、不确定性和多源异构等特性,传统贝叶斯滤波方法在处理这些观测数据时不断出现新的困难和挑战,如图像和激光点云数据。另一方面,由于动态系统所具有的非线性、未知参数等特征,加剧了贝叶斯滤波方法在应用中的困难。尤其是在实际场景中,复杂的外部环境干扰因素将导致动态系统存在较强的不确定性,从而增加传统滤波方法建立自适应机制的难度。
近年来,深度学习在图像处理[1–3]、语音识别[4–5]和人机交互[6]等领域上取得了巨大的成功,引起众多学者对其理论和应用开展研究,并利用深度学习方法解决特定领域的一些问题,如控制[7–8]、故障诊断[9–10]、医学信息处理[11]和导航定位[12]等。由于深度学习强大的特征提取和高维数据处理能力,人们也尝试将深度学习方法与传统贝叶斯滤波方法相结合,由此形成了一种新的贝叶斯滤波方法体系,即融合深度学习的贝叶斯滤波。卡尔曼滤波(Kalman filtering,KF)[13]是贝叶斯滤波在线性高斯系统上的表现形式。
由于KF简洁的计算形式和良好的滤波性能,越来越多的研究人员尝试将人工神经网络与之结合,尤其是深度神经网络(DNN),如前馈神经网络(FNN)[14]、循环神经网络(RNN)[15]和卷积神经网络(CNN)[16]等。早在20世纪90年代,Stubberud等[17]将1个3层FNN与扩展卡尔曼滤波结合,利用FNN来描述未建模动力学,以提高滤波精度。之后,卡尔曼滤波与FNN相结合的方法被广泛应用在各类任务中[18–19],进一步证实了该方法的可行性和有效性。随着新的深度神经网络技术的快速发展,融合深度学习的贝叶斯滤波得到了进一步的发展,且应用领域也逐渐扩展到医学诊断[20–25]、智能交通[26–31]、无人驾驶[32–36]、工业过程[37–40]和智能机器人[41–44]等众多领域。
通过回顾不同领域中融合深度学习的滤波方法,可以发现,该类方法正在开辟解决一些复杂问题的新路径。例如,医学图像诊断领域呈现新的趋势,利用深度神经网络提取隐藏在图像中的病理特征,结合贝叶斯滤波进行病情推断;智能交通领域,开始寻求利用深度神经网络来处理交通大数据,结合贝叶斯滤波来调整交通决策;无人驾驶领域,正在转向利用深度神经网络处理图像和激光雷达等观测信息,结合成熟的滤波框架搭建即时定位与地图构建系统;工业领域,正在利用深度神经网络进行工业大数据分析,结合贝叶斯滤波挖掘数据的因果关系;智能机器人领域,利用深度神经网络识别且理解环境信息,结合贝叶斯滤波进行状态推理和智能决策已成为新趋势。
由于不同领域之间存在的差异性,导致了当前融合深度学习的贝叶斯滤波方法研究进展的复杂性,但是通过回顾融合深度学习的贝叶斯滤波的热门应用,对于典型滤波环境的转变与特点,仍可以得出一些基本结论:动态系统的状态估计研究重心已从早期简单的低维动态系统过渡到了复杂的高维动态系统,从单智能体控制逐渐发展到多智能体协同控制,从以机理为基础的建模方式发展到以深度神经网络为基础的数据驱动学习方式,从完美信息滤波逐渐过渡到不完美信息滤波。为此,本文聚焦于贝叶斯滤波,结合信息融合理论的研究进展[45–46],从中总结出一些当前动态系统滤波存在的关键问题。
本文的综述思路将从实际应用案例出发,挖掘其中存在的挑战性问题,并综述相关文献的解决方案和思路。
本文的结构框架及主要内容如图1所示,第1节概述贝叶斯滤波方法,结合当前复杂动态系统的新特点,深入分析这些系统存在的滤波难点,以此引出贝叶斯滤波方法面临的困难与挑战;
第2节归纳深度学习在贝叶斯滤波中的作用,包括参数辨识和特征提取;
第3节详细介绍以卡尔曼滤波为基础的深度贝叶斯滤波方法,分析和总结当前国内外融合深度学习的贝叶斯滤波方法的核心思想和解决方案,以此展示人工智能技术为滤波方法带来的新突破;
第4节阐述融合深度学习的自适应滤波方法;
第5节对融合深度学习的贝叶斯滤波方法进行展望。

图1 结构及主要内容

背景与问题
随着当前动态系统的日益复杂化,以及传感器技术的发展,贝叶斯滤波问题发生了前所未有的深刻变化。特别是强非线性、未知参数、高维数、多模式和高动态问题,给贝叶斯滤波技术带来严峻的挑战。本节从贝叶斯滤波理论出发,分析总结当前贝叶斯滤波存在的问题。
1.1 贝叶斯滤波
考虑具有状态和观测信号 的动态系统,给出一个带有噪声观测信号的时间序列,其中,t表示离散时间点。系统状态估计是根据生成状态的估计序列。在贝叶斯滤波框架下,动态系统的状态估计在于如何获取当前t时刻的状态后验概率分布,原因在于包含了状态在传播过程中的所有信息。
为了得到后验概率分布,贝叶斯滤波递归地执行预测-更新流程。在预测环节,首先计算状态的先验概率分布

     (1)

根据贝叶斯理论和一阶马尔科夫性假设,可得

    (2)

对式(2)应用切比雪夫公式可得

    (3)

根据贝叶斯准则,当估计器接收到新的观测信号,执行更新流程,并按如下公式计算后验概率分布

    (4)

对于一般的动态系统,通常可建立状态空间模型如下

    (5)

         (6)

其中, 分别为t时刻的过程和观测噪声;f(⋅)为状态转移模型,h(⋅)为观测模型。对于状态空间模型(5)和(6),状态的先验概率分布和后验概率分布由系统模型以及噪声分布决定。即,状态空间模型和概率分布之间存在着隐式等价性:

     (7)

            (8)

如式(7)和式(8)所述,状态的传播由传播概率决定,同时,似然概率分布由相应的观测模型确定。因此,基于状态空间模型的贝叶斯滤波的关键在于,能否获取准确的分布集合

     (9)

其中,集合定义了完整的贝叶斯滤波,因而,贝叶斯滤波的性能取决于的准确程度。这意味着贝叶斯滤波的性能通常依赖于对系统状态转移模型和观测模型的精确建模,这对于复杂、高维和不稳定的系统将具有很大的挑战性。其次,实际动态系统的噪声分布与模型假设的噪声分布存在不一致的情况,将导致滤波精度下降甚至发散。
1.2问题分析
在实际应用中,将动态系统的过程和观测噪声假设为高斯加性噪声是常用的简化操作,即

     (10)

         (11)

其中,f(⋅)和h(⋅)为线性或非线性函数,过程噪声和观测噪声是相互独立且均值为0的高斯白噪声,其协方差分别为。相应地,1.1节中所述的分布集合则转换为参数集合

     (12)

针对上述状态空间模型下的状态估计问题,若f(⋅)和h(⋅)均为线性函数,那么在最小均方误差意义下,KF可得到最优的状态估计。当f(⋅)和h(⋅)呈现较弱非线性时,KF的非线性变种方法,如扩展卡尔曼滤波(EKF)[47]和无迹卡尔曼滤波(UKF)[48]等方法仍能较好地完成状态估计任务。此外,针对动态环境中存在的系统模型不确定、噪声统计特性未知等问题,基于概率统计理论方法仍可得到一些有效解决方法,例如,后验残差假设检验、变分推断和强跟踪滤波器等被广泛用于构建自适应滤波[49–55]。然而,随着信息技术的不断发展,卡尔曼滤波的应用领域也不断扩展到计算机视觉、大数据、智能信号处理等领域,同时,也迎来了一些新的问题,比如,强非线性、未知参数、高维数、多模式、高动态等不确定性问题。
1)强非线性:非线性普遍存在于实际动态系统中,当f(⋅)和h(⋅)的非线性程度较高时,传统基于近似处理的非线性卡尔曼滤波容易产生较大的近似误差,从而导致估计性能的下降。而基于采样技术的滤波方法,如粒子滤波[56–57],则难以平衡滤波的精度和计算效率。
2)未知参数一般情况下,f(⋅)和h(⋅)的参数通过机理建模的方式确定。然而在一些情况下,状态转移模型并不存在特定的物理规则。同时,由于存在偏差、杂波、未知分布的噪声等干扰因素[62],使得观测模型也存在较为严重的建模误差。
3)高维数随着传感器技术的发展,观测信号的高维度和复杂性问题日益凸显。例如,在基于图像的目标跟踪中,将图像信息映射到目标的位置信息上时,利用传统方法难以直接确定系统的观测模型h(⋅)。
4)多模式动态系统的状态演变过程在一个完整运行周期内可能包含多种不同的运动模式,因此,难以利用单一过程方程f(⋅)对系统运动进行精确建模,同时也难以确定多种运动模式的转换参数且实现准确的切换。
5)高动态在复杂多变的环境中,过程噪声和观测噪声统计特性是时变的。此外,系统状态的演变规律可能发生改变,即状态转移函数f(⋅)变化超出预先定义的范围。因此,面临建立时变参数集合的问题。
如图2所示,上述问题大多相伴相生,相互耦合。综合来看,这5个不确定性问题大致可以归纳为两类基本问题:参数辨识和特征提取。其中未知参数问题隶属于参数辨识的范畴,高维数问题需要有效的特征提取方法,多模式、高动态和强非线性问题则同时涉及到参数辨识与特征提取。
本文从两个基本问题的不同层次切入,指出当前贝叶斯滤波方法所面临的挑战,进而分析融合深度学习的滤波方法的解决思路及其相关应用。首先,在第2节详细描述两个基本问题,并将这些不确定性问题进行归纳。第3节介绍解决强非线性、未知参数和高维数问题的深度卡尔曼滤波。第4节介绍结合深度学习解决多模态、高动态等问题的自适应卡尔曼滤波。

图2 不确定性问题

深度学习在贝叶斯滤波中的作用
深度学习与贝叶斯滤波结合的相关研究正在兴起,综合已有研究成果和第1节所述的多种不确定性问题,将深度学习在滤波中发挥的作用总结为:系统参数学习和特征提取。为便于清楚地阐述深度学习在贝叶斯滤波中发挥的作用,本节首先概述深度学习的非线性学习能力,继而从基于深度学习的概率分布预测切入,介绍深度贝叶斯滤波的核心思想,重点阐述以上两类主要思想和方法。
2.1 深度学习的非线性学习
深度学习概念源于对神经网络的研究,可解释为深层神经网络。深度神经网络包含多个隐藏层,具有分层次的非线性信息处理机制,能够从数据中提取出多层次的抽象特征。在1.2节中,不确定性问题被归纳为2个基本问题:参数辨识和特征提取。深度学习的非线性学习能力在这2个问题上具有重要意义。在深层神经网络中,每一层神经元都用于捕捉输入与输出之间的复杂非线性映射关系。这些多层的非线性变换形成了数据的层次化表示,随着网络深度的增加,这些表示变得更加抽象和更具普适性。复杂动态系统建模问题的关键在于强非线性或未知的映射关系的辨识。此外,不同层次的神经元也用于捕捉不同的抽象特征,同时,层与层之间的非线性激活函数赋予不同层次特征之间的非线性映射关系,以实现对复杂状态空间模型的参数辨识。另一方面,对于高维观测信号,例如视频图像,深度神经网络首先提取出关于目标边界的特征,然后从边界特征中提取目标部件的特征,进而生成关于目标的高级特征表示。简而言之,深度学习的非线性学习能力来源于深度层次的网络结构,在有大量训练样本存在的情况下,深度学习在参数辨识和特征提取任务上往往有很好的表现。
2.2 深度贝叶斯滤波
由于不确定性问题的存在,后验概率分布的计算变得复杂且困难。得益于深度学习的快速发展,传统专家知识驱动的统计分析方法逐渐被替换为数据驱动的神经网络方法[58],从而加强对数据中潜在统计特性的提取能力。受变分自编码器(VAE)[58]的启发,Krishnan等[59]最先提出基于随机梯度变分贝叶斯推断的深度卡尔曼滤波,其核心思想为,利用建议后验概率分布来近似真实的后验概率分布,其中,为基于神经网络的识别模型, 为网络的参数。通过最小化的距离,即最小化这两个分布的KL散度,达到参数的最优求解。在此之后,基于深度概率分布预测的贝叶斯滤波方法开始快速发展。Karl等[60]在文献[59]的基础上,令识别模型遵循于马尔可夫性质的状态转移过程,从而实现了从原始数据中学习状态空间模型的目标。值得一提的是,基于变分理论的最小化KL散度等价于最大化证据下限,因此,通过随机梯度下降算法对进行优化的过程隶属于无监督学习。具体的推导过程参考文献[58–61],本文不再累述,仅说明其主要思想。
与结合UT变换的UKF和结合采样技术的PF等其他非线性滤波方法的出发点相似,深度贝叶斯滤波通过结合深度学习方法来解决滤波过程中存在的一系列不确定性问题。深度贝叶斯滤波的核心概念是通过神经网络来推测概率分布,接下来我们将讨论分析两类深度贝叶斯滤波的具体实现。
2.3 状态空间模型参数辨识
对于非线性尤其是强非线性动态系统的滤波问题,贝叶斯滤波方法往往难以逼近系统状态后验概率分布。在传统非线性滤波方法中,通过泰勒级数近似的方式对系统方程和观测方程进行线性化,因而仍基于KF框架进行状态估计。然而,由于这些线性化方式忽略了泰勒级数展开式的高阶项,当系统非线性较强时容易导致滤波发散。此外,由于精确的状态空间模型需要获得完整的相关领域知识,导致贝叶斯滤波无法在一些缺少领域知识的动态系统中取得理想的滤波效果。
对于强非线性动态系统,其状态空间模型往往难以用线性函数以及机理建模的方式建立。深度神经网络具有拟合复杂非线性函数的能力,同时,在无相关领域知识的情况下,深度神经网络能够直接从数据中学习系统模型的合适表示。目前已有不少有关深度状态空间模型的研究成果应用于时间序列预测问题[63–64]。考虑如式(10)所述的动态系统状态转移模型,令,其中,为构成f的参数

    (13

无法人为精确建模时,如图3所示,可将系统输入作为训练样本,相对应的输出作为样本标签,学习出系统输入和输出的映射关系,即通过大量已知标签的训练样本确定,从而在给定训练样本的分布范围内近似真实的状态转移模型。同理,系统观测模型也可以通过这种方式从原始数据中学习生成[66–67]。需要强调的是,深度学习用于状态空间模型参数辨识可以分为两类主要方法。以状态转移模型的拟合过程为例,这两类方法的主要差异在于它们所掌握的模型先验知识程度的不同。如果考虑的是完全未知的动态系统,如式(13)所示,f(⋅)将完全由深度神经网络所取代,即f(⋅)=DNN(⋅)。若动态系统的部分信息已知,考虑状态转移模型f(⋅)的数据形式及其部分参数已知的情况,例如f(⋅)的形式表现为,利用深度神经网络从数据中学习系统的状态演化规律,从而完成对矩阵F中个参数的辨识[65]。

图3 使用神经网络学习系统状态转移过程
利用深度学习对状态空间模型进行参数辨识时,一般涉及的深度神经网络为RNN。相比于FNN,RNN的主要特点在于其考虑了样本之间的时序关系,并将这种关系以隐层状态的方式体现出来。通过对系统状态在时间序列上的相关性刻画,RNN能够很好地捕捉状态在传播过程中的演变关系。文献[68]利用RNN来描述系统状态演变,即利用深度神经网络直接从原始数据中来学习系统的状态空间模型,这样形成了对强非线性系统的新建模方法。根据不同类型的动态系统,文献[69–70]设计了相应的基于RNN或长短期记忆网络(Longshort-termmemory,LSTM)[71]的深度神经网络用于拟合状态的演变过程。
2.4 观测特征提取
针对传统动态系统,观测信号的数据形式一般较为简单,且观测模型以解析的形式给出。而随着传感器技术的发展,观测信号的数据形式愈发复杂,使得观测模型并不能明确或直接得到。例如,在基于视觉的目标跟踪系统中[72–73],观测信号的数据形式为图像,其维度高,特征提取困难,难以建立图像信息与目标位置信息的映射关系。而深度学习适用于对高维、复杂数据的降维与特征提取,因此,深度学习在贝叶斯滤波中的另一重要作用是对输入系统的原始观测数据进行特征提取。在相关研究中,文献[74–75]利用CNN对图像数据进行特征提取;文献[76]利用RNN提取电网数据中的非线性特征;针对运动目标的位置估计问题,文献[77]利用LSTM处理观测数据序列之间存在的相互依赖关系。尽管采用的深度神经网络有所不同,但其思想基本类似,下面将以Haarnoja等[78]提出的Backprop KF为例来介绍深度学习在观测特征提取中的作用。
Backprop KF由KF和深度神经网络组合构成,如图4所示,其核心思想是利用深度神经网络将原始观测图像数据 提炼为低维的观测特征,并将作为KF的观测信号

图4 Backprop KF的动态结构图

     (14)

其中,为基于CNN的观测网络。如图4所示,不仅用于处理原始数据输出观测信号,而且输出表示不确定性的矩阵,进而形成KF中的观测信号协方差

     (15)

的参数利用监督学习的方法训练得到。在所考虑的动态系统中,假设可以直接获取没有噪声干扰的观测信号,并将其作为样本标签,Backprop KF通过最小化的均方误差对网络进行优化:

     (16)

其中,N和T分别表示训练序列的数量和长度,为t时刻Backprop KF输出的状态估计值。通过构建类似的深度观测网络[79–81],避免了在复杂高维观测空间上构建观测模型。此外,针对包含噪声干扰的观测信号,文献[82–83]通过最小化状态真实值和状态估计值的均方误差来训练观测网络参数。
深度卡尔曼滤波
从上述总结中不难发现,深度神经网络在复杂动态系统状态估计中起到重要的作用,主要体现在系统状态空间模型和观测数据的拟合及特征提取。近年来,研究如何利用深度贝叶斯滤波解决复杂动态系统的状态估计问题,主流的滤波框架为KF。根据KF的计算结构分类,本节将从两个方面介绍深度卡尔曼滤波的研究现状。
3.1 基于深度状态空间模型的卡尔曼滤波
KF属于模型驱动的状态估计器,以建立系统状态空间模型为前提,依据贝叶斯准则实现状态的预测和更新。本小节介绍的深度卡尔曼滤波的核心思路为:利用深度神经网络学习状态空间模型中缺失的参数,包括状态转移模型、观测模型和噪声统计特性。就现有研究成果而言,此类深度卡尔曼滤波广泛应用于导航定位、自动控制以及信号处理等领域[84–87]。
考虑如式(10)和(11)所示的动态系统,深度卡尔曼滤波的工作流程分为预测和更新两个环节。预测环节为:

               (17)

     (18)
其中,分别是当前t时刻的状态预测及其协方差估计,则分别是上一时刻的状态估计及其协方差。不同于传统卡尔曼滤波,是由深度神经网络预测的过程噪声协方差,而非传统的经验值或统计值。同时状态转移模型也由深度神经网络所替代,即

     (19)

式(19)中的DNN(⋅)表示某一深度神经网络,那么,f(⋅)对应的雅各比矩阵F则是对DNN(⋅)进行泰勒展开

     (20)

之后执行如下更新环节:

     (21)

          (22)

                         (23)

其中,为卡尔曼滤波增益,同样是由深度神经网络计算得到。考虑估计器接收的观测信号是观测网络从原始观测数据中提取出的观测特征,因此,系统观测模型h(⋅)的具体形式与所设计的观测网络相关。文献[66]将系统观测和状态 之间存在的映射关系近似为线性关系,因此,系统观测模型h(⋅)被直接定义为一个线性矩阵H,且H和由同一个观测网络生成。对于深度卡尔曼滤波,应用更为广泛的设计思路是利用观测网络直接预测系统状态[88–89],即是对系统状态的直接映射,可以得到如下的系统观测方程,

     (24)

那么,式(21)和式(22)中的H等价于一个单位矩阵,其中为系统状态的维数,即,值得一提的是,文献[89]认为原始观测数据有时无法为动态系统中定义的状态提供足够信息,即传感器所采集的数据缺少对某些状态特征的观测。在实际应用中,当观测网络提取的特征包含状态的所有信息时,观测矩阵H被设置为×的单位矩阵,此时观测和状态特征维数是相同的。另一方面,当观测数据中只包含m个部分状态的信息,则观测矩阵为
由于深度神经网络内部包含大量的非线性操作,对其求雅各比矩阵时仍存在较大线性化误差。此外,对深度神经网络进行求导是一项复杂且耗时的任务。针对这个问题,文献[89]利用深度神经网络生成状态转移模型而非直接替代,即深度神经网络直接输出状态转移矩阵,避免了对雅各比矩阵的求解。在动态系统中,状态转移过程具有马尔可夫性质,其仅描述状态在相邻两个时间节点之间的依赖关系,因此,非线性状态转移过程可以被描述为:

       (25)

其中,为时变的线性矩阵,通过深度神经网络直接生成。需要强调的是,成立的条件为f(0)=0。
上述深度卡尔曼滤波的框架如图5所示,深度卡尔曼滤波的所有权重参数集合通过端到端的方式进行联合学习。一般情况下,系统真实的状态转移模型无法获得,因此需要在损失函数 中加入真实值和先验估计的差距这一损失项,以此学习合适的状态转移过程。

图5 基于深度状态空间模型的卡尔曼滤波框架

      (26)

其中,T为总的训练样本数,为样本真实值,而超参λ则用于平衡两项损失,其取值根据不同的任务进行调整。
通过对以上方法的介绍,不难发现,不论是通过式(26)优化网络参数,获取确定性的参数集合β的有监督学习方法,或是2.2节中介绍的基于贝叶斯变分推断的无监督学习方法,这两种方法的本质都是利用深度神经网络拟合状态空间模型。这类基于深度状态空间模型的卡尔曼滤波,可看作是基于贝叶斯准则融合多个深度神经网络的过程。相较于传统卡尔曼滤波,利用深度神经网络构建系统的状态空间模型,降低人工建模的工作难度,同时,隐藏在复杂原始观测数据中的有效观测信息也能够提取得到。另一方面,对比深度学习的方法,这类方法利用贝叶斯准则提炼深度神经网络的结果,融合了统计估计的优势。
3.2 基于深度学习的卡尔曼增益计算
从数据融合的角度出发,KF状态估计可以看成对运动模型和观测模型等信息的加权和。在KF的更新环节中,卡尔曼增益作为权重对先验估计和观测信号进行分配。从式(18)和式(21)可以看出,由式(12)中的参数集合决定。3.1节介绍的深度卡尔曼滤波利用深度神经网络学习,建立准确的状态空间模型,以提高滤波性能。不同于利用深度学习改造状态空间模型的思想,本节主要对基于深度学习的卡尔曼增益计算方法进行介绍,区别于传统的计算方式,该方法利用深度神经网络直接计算卡尔曼增益。
Cui等[90]从计算图的角度分析,认为的完整计算过程能够通过非线性运算和延迟反馈结构完成。通过对典型滤波方法计算结构特征的分析和典型滤波方法与不同神经网络结构的对比分析,可将KF表示为具有注意力机制的多层循环神经网络结构。利用FNN建立评估网络用于评估观测信息,随后,由RNN构成的平滑网络综合过去状态和当前新输入信息,实现当前状态估计。其中,采用基于FNN的简单注意力机制来实现滤波增益机制。仿真实验验证了所提出模型的可行性和有效性。
虽然文献[90]证明了深度学习用于卡尔曼增益计算的优越性,但是其采用深度神经网络来实现整个KF过程,导致模型依赖于数据,缺乏可解释性。在保留由机理建模生成的状态空间模型的基础上,Revach等[91]提出了如下的KalmanNet:结合基于模型驱动的KF和基于数据驱动的RNN的滤波框架,其核心思想为,建立动态系统状态空间模型,并在此基础上应用KF。然后,在保留KF原有框架的基础上,如图6所示,利用RNN替代卡尔曼原增益计算环节,即,卡尔曼增益由基于RNN的模型直接生成。

图6 KalmanNet中的卡尔曼增益计算流程

     (27)

针对动态环境下噪声统计特性和状态空间模型无法准确获取的问题,通过残差 捕获动态环境中的不确定性因素,并将其输入RNN,令RNN直接从数据中学习卡尔曼增益的计算策略,的定义如下:

     (28)

      (29)

其中,为单位时延单元,用于封装状态估计过程的不确定性,则用于封装有关状态前向传播的信息。差分操作去除了输入特征中有关系统模型的成分,即RNN的输入时间序列仅与噪声统计特性相关,使得RNN能够有效地拟合数据与卡尔曼增益之间的映射关系。仿真实验证明,基于RNN的卡尔曼增益计算方法有利于克服未知分布噪声的干扰,同时解决了系统过程模型不匹配的问题。在KalmanNet的基础上,Revach等继续研究了KalmanNet的不确定性问题[92],以状态协方差的形式提供Kalmannet的不确定性分析。文献[91]的KalmanNet属于监督学习范畴,通过重新设计其损失函数,文献[93]提出了无监督学习的KalmanNet。文献[94–97]则研究了KalmanNet在不同场景下的应用问题,通过几类不同的实际应用进一步证明了该框架的可行性。
该类卡尔曼增益计算方法隶属于深度学习辅助的卡尔曼滤波。其中,从状态先验估计和观测信号到状态空间的映射均在基于先验知识的状态空间模型上完成,中间计算环节(卡尔曼增益计算)由深度神经网络完成。如此,利用可用领域知识完成对可建模部分的状态空间建模,而利用深度学习完成对不可用且无法机理分析部分的建模。
自适应学习卡尔曼滤波
为提高卡尔曼滤波的自适应能力,通常需要根据外部环境的变化,对模型参数和噪声统计特性进行实时的估计或修正。近年来,采用深度学习方法实现的自适应KF受到越来越多的关注。就目前融合深度学习的自适应滤波而言,深度学习起到的主要作用是噪声统计特性估计和多模型切换两类功能。不同于3.1节的深度卡尔曼滤波,深度学习在KF的自适应过程中主要作用是对参数集合进行微调。换言之,深度学习不需要估计和拟合完整的参数集合,而是在给定的前置条件下,根据环境的动态变化,适当地调整中的参数。
4.1 噪声自适应处理
在传统的KF估计中,过程和观测噪声的协方差通常被认为是预先确定的。然而,在动态环境下,这样的噪声协方差往往无法满足噪声统计特性变化的需要[98–99],从而导致滤波性能的下降。在经典控制领域中,参数辨识技术广泛用于寻找最优的过程噪声和观测噪声的协方差[100–102]。而利用深度学习方法,从原始数据中直接学习噪声统计特性,能够减少对动态系统及所处环境的分析工作,提高KF的自适应能力。其一般流程如图7所描述,深度神经网络将观测信号作为输入,从观测信号中提取出观测噪声的统计特性,以协方差矩阵的形式进行输出。噪声统计特性通常隐藏在时序数据中,因此,在此类研究中,RNN广泛应用于时序数据处理,该网络充分考虑时序数据之间的关联性,来有效提取出噪声统计特性。文献[103]设计了基于KF的目标跟踪系统,其中,LSTM被用于识别目标运动模型与实际目标轨迹的匹配程度,并自适应调节过程噪声协方差。而Zheng等[104]则采用两个独立的LSTM来实现对输入不确定性和模型不确定性的估计。仿真效果表明,该方法在飞行器轨迹跟踪问题上优于传统的EKF方法。

图7 使用深度神经网络估计噪声统计特性
然而,在KF中嵌入DNN的训练过程是相当困难且费时的[78],若将DNN设置为RNN会使得训练更加困难。相较于RNN,非递归结构的CNN有着收敛速度快、较少网络参数和较小过拟合风险的优点。基于以上因素,文献[105]利用基CNN建立自适应观测噪声参数的计算模型,将n个历史观测信号作为输入,输出当前时刻的观测噪声协方差

     (30)

借助CNN的处理能力,实现了观测噪声协方差的自适应估计,即结合模型驱动的KF与数据驱动的噪声估计来提高滤波性能。类似的研究还有文献[106],利用基于残差注意力机制的CNN学习原始观测数据与噪声协方差的映射关系,其中残差机制能够加速训练,同时注意力机制能够学习观测数据中不同重要程度的特征,计算出更合适的噪声协方差。该方法已被成功应用于GNSS/INS组合导航系统中,实验表明,其能提高位置和速度的估计精度。
为了提升噪声自适应处理能力,以及单一DNN能力不足的问题,文献[107]利用多任务时间卷积网络(MTTCNN)同时预测过程噪声和观测噪声的协方差。其核心思想是,利用MTTCNN的并行结构,对两种噪声协方差进行同步学习。在不同的典型复杂城市场景下,实现了噪声协方差的自适应估计及调节,从而实现车辆的高精度定位。
4.2 多模型自适应处理
在实际场景中,动态系统的参数会随着外部环境、系统本身运动规律等的变化而变化[109],通常需要结合多个模型对系统运动过程进行刻画。本节以机动目标跟踪问题为例给出基于深度学习的多模型KF的基本思路。
假定目标存在多种运动模式,如匀速、匀加速、匀速转弯等,对应有多个运动模型。建立如下的多模型目标跟踪系统的状态空间模型:

      (31)

         (32)

其中,表示目标的第i种运动模型,每一个对应一个独立的KF。传统的交互多模型卡尔曼滤波(IMMKF)[108]首先采用多个KF对每种运动模型进行并行滤波,然后,基于模型概率混合所有滤波器的状态估计值,最后以模型匹配似然函数来更新模型概率。在IMMKF中,模型的转换概率矩阵(TPM)决定了不同模型之间的切换规律,即模型误差和模型概率估计的准确性依赖于TPM。为了能够实现TPM的自适应更新,文献[110]利用RNN学习后验TPM,从而提高滤波性能。而文献[111–112]致力于通过RNN直接学习运动模型的概率来实现模型的切换,解决了传统IMMKF存在的模型切换时延和切换准确率较低等问题。其中,文献[111]提出的模型切换策略属于"硬切换",其根据历史观测信息,通过神经网络预测当前时刻目标的运动模式,最后输出的状态估计值仅对应单一的运动模型。不同于文献[111]的模型切换策略,文献[112]则同时维护多个运动模型,并通过分配不同的权重来对它们进行加权组合,实现不同模型之间的软切换。
然而,目标运动模式往往难以仅用几种运动模式描述。因此,针对多模型方法存在先验假设过多的问题,文献[113]提出了不确定航迹自适应预测模型,利用深度神经网络来拟合多种目标运动模式,从而消除目标运动模式的先验假设。目标运动状态的预测分为2个步骤,I-step通过目标历史位置信息来预测当前时刻的运动模式,E-step根据运动模式信息来预测出当前时刻的目标位置。
如图8所示,基于深度学习实现的多模型自适应KF可以分类为两大思路。其一,基于深度学习的多模型切换策略;其二为基于深度学习的多模型拟合。两种思路既有着明显的不同特点又有共通之处。前者利用深度学习方法分析系统不同运动规律的特点,为模型的切换提供准确的证据。后者则是将系统的多种不同运动规律进行汇总,利用深度神经网络学习出一个能够包含所有运动规律的状态转移函数。前者对应于深度学习中的分类任务,其通过学习获得关于不同运动模型的概率估计,以便进行模型选择和分类推断。后者则等同于深度学习中的回归任务,其关注运动规律的特征提取,以直接预测目标位置的连续值。二者的共通之处在于从整体上看都是神经网络结构,并以数据驱动的方式学习系统动力学特征,从数据中学习系统运动规律。

图8 基于深度学习的多模型自适应卡尔曼滤波的两类思路

总结与展望
本文首先通过对贝叶斯滤波理论的分析,指出影响滤波性能的重要因素,在此基础上,阐述了深度学习与贝叶斯滤波相结合的相关研究与应用。对当前应用最为广泛的深度卡尔曼滤波进行了详细的介绍,进而介绍了融合深度学习的自适应卡尔曼滤波。下面对融合深度学习的贝叶斯滤波的研究现状进行总结。
由于深度学习在复杂函数拟合和特征提取等方面展现出的优势和潜力,其已被应用于贝叶斯滤波的相关研究,并表现出较好的适用性和优越性。然而,通过研究现状分析不难发现,深度学习主要在状态空间模型的建立以及复杂观测特征提取中具有应用的优势。对于状态空间模型,其本质是学习系统的输入输出关系,拟合系统复杂的传递过程。对于观测特征提取方法,提取的是隐藏在复杂数据之中的抽象特征,其中抽象特征与系统状态之间的映射关系不具备可解释性。对于卡尔曼增益的计算,目前已有直接拟合滤波计算结构和过程的相关研究,其本质也是从系统状态和原始观测数据中提取特征,然后拟合特征与输出之间的关系。综上,尽管目前深度学习与贝叶斯滤波相结合的研究已有以上一些成功案例,但是相关研究的成果仍然偏少,并且分散在各自不同的领域,缺少系统性的理论研究。
虽然融合深度学习的贝叶斯滤波的研究尚存在一些问题,但不可否认的是,深度学习在贝叶斯滤波中的研究前景仍然十分广阔。以下对未来可能值得研究的内容和方向进行展望。
5.1 完善融合策略
贝叶斯滤波的性能依赖于准确的模型知识,如何利用深度学习降低贝叶斯滤波对不准确模型知识的敏感性是值得考虑的重点研究问题。同时,由于深度学习本身的黑盒特性,导致其输出结果缺乏可解释性[114–115]。对于一些安全系数要求较高的应用,滤波精度和可解释性之间存在矛盾问题,深度学习与贝叶斯滤波之间的关系难以平衡。为解决上述问题,深度学习与贝叶斯滤波的融合策略需要突破简单的加性组合方式,更为完善且智能的融合策略是当前所急需的。近期,深度学习不确定性估计[116]在深度学习与贝叶斯滤波的融合策略上进行了有益尝试,但其所考虑的神经网络需要单独的离线训练,暂未形成完整且有效的融合估计。针对不同场景的需求,实现模型与学习方法的相互融合与协同。一种可行的解决思路是,设计一种自适应感知环境不确定性以及自适应选择深度学习方法的贝叶斯滤波。通过环境感知机制,不断感知外界环境的动态变化,判断是否需要深度学习的介入,形成基于模型和基于数据方法的无缝连接,建立可在线配置结构[117]的深度贝叶斯滤波框架。
5.2 复杂高维系统滤波
目前,融合深度学习的贝叶斯滤波大多应用于一些低维数的系统,且系统状态一般具有明确的定义。随着信息化技术的发展,当前复杂系统的状态维数不断提高,由于系统内部参数多因素耦合,导致其状态难以确定,而深度学习自动学习状态特征的能力使其对复杂系统具有先天的优势。利用深度学习对高维复杂系统进行降维,并自动提取状态向量,实现在复杂系统上的贝叶斯滤波[118–119]。鉴于深度学习在状态空间模型的参数辨识中发挥的重要作用,深度学习与状态空间模型更深层次的结合[120–121]可望为解决复杂系统的贝叶斯滤波方法提供重要的解决思路。
5.3 异构多模态融合
在智能化和网络化的背景下,信息融合理论与技术呈现出智能化和边缘化处理的新趋势[122–123]。现有的信息融合滤波技术,例如基于卡尔曼滤波的观测融合和状态融合,仍然没有系统性地解决非线性、非高斯滤波问题。由于多传感器观测之间一般存在复杂的非线性关系,传统信息融合理论较难表示其动态关系。随着实际系统中多传感器的分布式部署,如何协调多源异构的子传感器并行协作进行状态估计已成为一大挑战性问题。鉴于深度学习在多传感器数据的处理和融合[124–129]方面的优势,以及在众多领域的成功应用,基于深度学习的信息融合理论仍是值得进一步研究的问题。
5.4 智能自适应滤波
融合深度学习的自适应卡尔曼滤波依赖于深度神经网络的预测精度,深度神经网络的性能则取决于训练数据集。然而,由于动态环境的随机性[130],被用于训练的数据集较难包含所有环境的变化,例如未出现在训练集中的噪声统计特性和系统运动模式,即训练数据集的数据分布是不完整的。因此,相比于传统自适应方法,基于深度学习的自适应滤波能够取得更为精准的估计结果,但是仅限于输入数据属于训练数据分布之内的情况。因此,构建可自动扩充的训练数据集,使得深度神经网络能够主动学习[131]乃至终生学习,充分发挥深度学习在自适应滤波中的优势,研究更为智能且泛用的自适应滤波策略是下一步研究的方向。
5.5 滤波性能评估
基于深度学习的贝叶斯滤波理论研究仍然欠缺,目前没有理论能够对融合深度学习的贝叶斯滤波的性能进行全面评估。虽然深度学习在贝叶斯滤波中发挥出一定的效果,但是仅仅通过拟合训练数据集等方式并不能保证滤波的性能。有关其稳定性和一致性等方面的理论分析[132]也是一个非常值得研究的方向。此外,我们应该看到深度神经网络自身存在的不确定性。如何深入理解深度学习的不确定性[133–134],并将其理论用于深度贝叶斯滤波同样是一个非常值得关注的方向。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/171624