遞迴最小平方濾波器
遞迴演算法

以上敘述的結論是可以決定費用函數的參數，使費用函數最小化的方程式。以下則說明如何找到此形式的遞迴解
其中 \Delta \mathbf {w} _{n-1}是時間 {n-1}的修正因子。首先將互協方差 \mathbf {r} _{dx}(n)用 \mathbf {r} _{dx}(n-1)來表示
| --- | --- |
 \mathbf {r} _{dx}(n):  =\sum _{i=0}^{n}\lambda ^{n-i}d(i)\mathbf {x} (i)
:  =\sum _{i=0}^{n-1}\lambda ^{n-i}d(i)\mathbf {x} (i)+\lambda ^{0}d(n)\mathbf {x} (n)
:  =\lambda \mathbf {r} _{dx}(n-1)+d(n)\mathbf {x} (n)
其中 \mathbf {x} (i)是 {p+1}維的資料向量
接下來以相似的方式，用 \mathbf {R} _{x}(n-1)表示 \mathbf {R} _{x}(n)
| --- | --- |
 \mathbf {R} _{x}(n):  =\sum _{i=0}^{n}\lambda ^{n-i}\mathbf {x} (i)\mathbf {x} ^{T}(i)
:  =\lambda \mathbf {R} _{x}(n-1)+\mathbf {x} (n)\mathbf {x} ^{T}(n)
為了要找到其係數向量，接下來要關注的是決定性自協方差矩陣的反矩陣。這問題可以使用伍德伯里矩陣恆等式（英语：）。若
| --- | --- |
 A:  =\lambda \mathbf {R} _{x}(n-1) 是  (p+1)\times (p+1)矩陣
 U:  =\mathbf {x} (n) 是  (p+1)\times 1（向量）
 V:  =\mathbf {x} ^{T}(n) 是  1\times (p+1)（向量）
 C:  =\mathbf {I} _{1} 是  1\times 1 單位矩陣
依照伍德伯里矩陣恆等式，可得到下式
| 0 | 1 | 2 |
| --- | --- | --- |
|  \mathbf {R} _{x}^{-1}(n) |  = |  \left[\lambda \mathbf {R} _{x}(n-1)+\mathbf {x} (n)\mathbf {x} ^{T}(n)\right]^{-1} |
|  |  = |  {\dfrac {1}{\lambda }}\left\lbrace \mathbf {R} _{x}^{-1}(n-1)-{\dfrac {\mathbf {R} _{x}^{-1}(n-1)\mathbf {x} (n)\mathbf {x} ^{T}(n)\mathbf {R} _{x}^{-1}(n-1)}{\lambda +\mathbf {x} ^{T}(n)\mathbf {R} _{x}^{-1}(n-1)\mathbf {x} (n)}}\right\rbrace  |
|  |  |   |
為了和標準的文獻一致，定義
| --- | --- |
 \mathbf {P} (n):  =\mathbf {R} _{x}^{-1}(n)
:  =\lambda ^{-1}\mathbf {P} (n-1)-\mathbf {g} (n)\mathbf {x} ^{T}(n)\lambda ^{-1}\mathbf {P} (n-1)
其中的增益向量 g(n)為
| --- | --- |
 \mathbf {g} (n):  =\lambda ^{-1}\mathbf {P} (n-1)\mathbf {x} (n)\left\{1+\mathbf {x} ^{T}(n)\lambda ^{-1}\mathbf {P} (n-1)\mathbf {x} (n)\right\}^{-1}
:  =\mathbf {P} (n-1)\mathbf {x} (n)\left\{\lambda +\mathbf {x} ^{T}(n)\mathbf {P} (n-1)\mathbf {x} (n)\right\}^{-1}
在往下推導之前，需要將 \mathbf {g} (n)改為以下的形式
| --- | --- |
 \mathbf {g} (n)\left\{1+\mathbf {x} ^{T}(n)\lambda ^{-1}\mathbf {P} (n-1)\mathbf {x} (n)\right\}:  =\lambda ^{-1}\mathbf {P} (n-1)\mathbf {x} (n)
 \mathbf {g} (n)+\mathbf {g} (n)\mathbf {x} ^{T}(n)\lambda ^{-1}\mathbf {P} (n-1)\mathbf {x} (n):  =\lambda ^{-1}\mathbf {P} (n-1)\mathbf {x} (n)
等式兩側減去左邊的第二項，得到
| --- | --- |
 \mathbf {g} (n):  =\lambda ^{-1}\mathbf {P} (n-1)\mathbf {x} (n)-\mathbf {g} (n)\mathbf {x} ^{T}(n)\lambda ^{-1}\mathbf {P} (n-1)\mathbf {x} (n)
:  =\lambda ^{-1}\left[\mathbf {P} (n-1)-\mathbf {g} (n)\mathbf {x} ^{T}(n)\mathbf {P} (n-1)\right]\mathbf {x} (n)
配合 \mathbf {P} (n)的遞迴式定義，希望的形式如下
此時就可以完成遞迴，如以上討論
| --- | --- |
 \mathbf {w} _{n}:  =\mathbf {P} (n)\,\mathbf {r} _{dx}(n)
:  =\lambda \mathbf {P} (n)\,\mathbf {r} _{dx}(n-1)+d(n)\mathbf {P} (n)\,\mathbf {x} (n)
第二步是從 \mathbf {r} _{dx}(n)的遞迴式定義開始，接著使用 \mathbf {P} (n)的遞迴式定義，配合調整後的 \mathbf {g} (n)，可以得到
| --- | --- |
 \mathbf {w} _{n}:  =\lambda \left[\lambda ^{-1}\mathbf {P} (n-1)-\mathbf {g} (n)\mathbf {x} ^{T}(n)\lambda ^{-1}\mathbf {P} (n-1)\right]\mathbf {r} _{dx}(n-1)+d(n)\mathbf {g} (n)
:  =\mathbf {P} (n-1)\mathbf {r} _{dx}(n-1)-\mathbf {g} (n)\mathbf {x} ^{T}(n)\mathbf {P} (n-1)\mathbf {r} _{dx}(n-1)+d(n)\mathbf {g} (n)
:  =\mathbf {P} (n-1)\mathbf {r} _{dx}(n-1)+\mathbf {g} (n)\left[d(n)-\mathbf {x} ^{T}(n)\mathbf {P} (n-1)\mathbf {r} _{dx}(n-1)\right]
配合 \mathbf {w} _{n-1}=\mathbf {P} (n-1)\mathbf {r} _{dx}(n-1)，可以得到以下的更新方程式
| --- | --- |
 \mathbf {w} _{n}:  =\mathbf {w} _{n-1}+\mathbf {g} (n)\left[d(n)-\mathbf {x} ^{T}(n)\mathbf {w} _{n-1}\right]
:  =\mathbf {w} _{n-1}+\mathbf {g} (n)\alpha (n)
其中 \alpha (n)=d(n)-\mathbf {x} ^{T}(n)\mathbf {w} _{n-1}
是先驗誤差。將此和後驗誤差（在濾波器更新後計算的誤差）比較
這就找到了修正因子
這個結論指出了修正係數直接和誤差和增益向量成正比，增益向量會透過加權因子 \lambda 影響想要的靈敏度，這個結論很符合直覺。