现代信号处理 11 -递归最小二乘

Posted Ciaran-byte

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了现代信号处理 11 -递归最小二乘相关的知识,希望对你有一定的参考价值。

递归最小二乘 Recursive Least Square(RLS)

1. 问题引入

1.1 LMS自适应滤波回顾

  首先我们来回顾一下自适应问题。

Z ( 1 ) , Z ( 2 ) , . . . , Z ( n ) d ( 1 ) , d ( 2 ) , . . . , d ( n ) Z(1),Z(2),...,Z(n) \\\\ d(1),d(2),...,d(n) Z(1),Z(2),...,Z(n)d(1),d(2),...,d(n)

  我们在不同时刻有不同的数据,同时也有不同的目标,我们希望通过某种线性变换,使得我们的数据能够去逼近我们的目标。

g ( Z ( n ) ) → d ( n ) ⇒ g ( Z ( n ) ) = ω T Z ( n ) g(Z(n)) \\rightarrow d(n) \\Rightarrow g(Z(n)) = \\omega^T Z(n) g(Z(n))d(n)g(Z(n))=ωTZ(n)

  然后我们会去寻找一个损失函数,去评估我们的估计情况,我们用均方误差作为评价标准,这样得到的结果其实就是维纳滤波。因为我们的系统是时变的,所以估计的线性系数ω也应该是个与时间有关的数字。

L o s s : m i n E ∣ d ( n ) − ω T Z ( n ) ∣ 2 ⇒ m i n E ∣ d ( n ) − ω ( n ) T Z ( n ) ∣ 2  Adaptive Loss : minE|d(n) - \\omega^T Z(n)|^2 \\Rightarrow minE|d(n) - \\omega(n)^T Z(n)|^2 \\text Adaptive Loss:minEd(n)ωTZ(n)2minEd(n)ω(n)TZ(n)2 Adaptive

  但是在实际求解的时候,我们会遇到一个问题,就是这个系统具有两种属性。首先,这个系统是时变的,每一时刻的估计都需要进行更改;同时这个系统的目标优化必须通过迭代的方法不断去寻找,这样就出现了迭代时间轴和采样时间轴的两套不同的下标体系。

  基于这个问题,我们有了自适应的思想,我们把两种时间系统进行统一,我们每次采样一次,就进行一次迭代,这样看起来似乎是种四不像的信号处理方法,但是实际上却有着不错的性能。

  自适应的继续发展就是神经网络。人们对神经网络为什么可以工作知之甚少。比人们对单层自适应算法了解的少很多,但是神经网络已经得到广泛应用了。

  在这种自适应的指导思想下,我们就有了LMS。因为每次都只采样一次,所以这个式子是没有办法求期望的,因此首先就去掉了期望符号

m i n ω E ∣ d ( n ) − ω T Z ( n ) ∣ 2 ⇒ m i n ω ∣ d ( n ) − ω T Z ( n ) ∣ 2 min_\\omega E|d(n) - \\omega^T Z(n)|^2 \\Rightarrow min_\\omega|d(n) - \\omega^T Z(n)|^2 minωEd(n)ωTZ(n)2minωd(n)ωTZ(n)2

⇒ ω n + 1 = ω n + μ Z ( n ) ∗ e ( n ) \\Rightarrow \\omega_n+1 = \\omega_n + \\mu Z(n)*e(n) ωn+1=ωn+μZ(n)e(n)

  其中

e ( n ) = d ( n ) − ω n T Z ( n ) e(n) = d(n) - \\omega_n^TZ(n) e(n)=d(n)ωnTZ(n)

2. 递归最小二乘

2.1 LMS的缺陷与递归最小二乘模型建立

  今天,我们来重新审视一下LMS,我们觉得LMS是有缺陷的。

  LMS的缺陷在于,他只考虑了最新的数据点的信息,而没有考虑历史的信息。虽然马尔科夫性告诉我们,历史的可以遗忘的,但是马尔科夫性只是个假设。因此,如果我们想要利用历史的信息,我们应该怎么调整损失函数呢?

  事实上,我们可以考虑利用加法的形式,把各个时刻的损失函数加在一起

∑ k = 1 n E ∣ d ( k ) − ω n T Z ( k ) ∣ 2 \\sum_k=1^n E|d(k)-\\omega_n^TZ(k)|^2 k=1nEd(k)ωnTZ(k)2

  但是这么做,其实也有些极端了,我们应该更加重视最近的数据的影响,历史固然应该得到尊重,但也更应该与时俱进,因此我们引入遗忘因子的方式,继续修正损失函数

∑ k = 1 n λ ( n , k ) ∗ E ∣ d ( k ) − ω n T Z ( k ) ∣ 2 \\sum_k=1^n \\lambda(n,k)*E|d(k)-\\omega_n^TZ(k)|^2 k=1nλ(n,k)Ed(k)ωnTZ(k)2

λ ( n , k ) ⇒ Forgetting Factor \\lambda(n,k) \\Rightarrow \\textForgetting Factor λ(n,k)Forgetting Factor

  最常见的遗忘因子是指数遗忘

∑ k = 1 n λ n − k ∗ E ∣ d ( k ) − ω n T Z ( k ) ∣ 2 \\sum_k=1^n \\lambda^n-k*E|d(k)-\\omega_n^TZ(k)|^2 k=1nλnkEd(k)ωnTZ(k)2

  我们这里的期望仍然没法求,我们学习widrow的思想,去掉期望,得到了最终的损失函数

g ( ω n ) = ∑ k = 1 n λ n − k ∗ ∣ d ( k ) − ω n T Z ( k ) ∣ 2 ( 1 ) g(\\omega_n)=\\sum_k=1^n \\lambda^n-k*|d(k)-\\omega_n^TZ(k)|^2 \\quad\\quad(1) g(ωn)=k=1nλnkd(k)ωnTZ(k)2(1)

  我们对损失函数进行变形

g ( ω n ) = ∑ k = 1 n λ n − k d 2 ( k ) − 2 ∑ k = 1 n d ( k ) ω n T Z ( k ) λ n − k + ∑ k = 1 n λ n − k ( ω n T Z ( k ) ) 2 = ∑ k = 1 n λ n − k d 2 ( k ) − 2 ω n T ( ∑ k = 1 n λ n − k Z ( k ) d ( k ) ) + ω n T ( ∑ k = 1 n λ n − k Z ( k ) ∗ Z T ( k ) ) ω n ( 2 ) g(\\omega_n) = \\sum_k=1^n \\lambda^n-k d^2(k) - 2 \\sum_k=1^n d(k)\\omega_n^TZ(k) \\lambda^n-k + \\sum_k=1^n \\lambda^n-k (\\omega_n^T Z(k))^2 \\\\ = \\sum_k=1^n \\lambda^n-k d^2(k) - 2 \\omega_n^T (\\sum_k=1^n \\lambda^n-kZ(k)d(k)) + \\omega_n^T (\\sum_k=1^n \\lambda^n-k Z(k)*Z^T(k)) \\omega_n \\quad\\quad(2) g(ωn)=k=1nλnkd2(k)2k=1nd(k)ωnTZ(k)λnk+k=12017-2018-1(现代偏微分方程导论 36)

2017.11.11-构建之法:现代软件工程-阅读笔记

现代软件工程_团队项目_阿尔法阶段_市场调研问卷_2017.11.11

现代软件工程_团队项目_阿尔法阶段_市场调研问卷_2017.11.11

乘风破浪,遇见最美Windows 11之现代Windows开发运维

现代软件工程 第一章 概论 第11-15题(白文俊)