最開始學習正交原理是從實數學習的,當時覺得實數已經很好了,為什么要學習復雜的復數推導過程呢,隨着慢慢的深入,發現復數才是更加通用的。這里就把學習中的推導筆記發上來,方便自己復習,也可以對其它正在學習這方面的朋友有所幫助。
這里有一個長度為M的濾波器,對於輸入序列u(n),n=0,1,2...,濾波器的輸出y(n)表示為
\[\begin{array}{*{20}{c}}
{y(n) = \sum\limits_{k = 0}^{M - 1} {w_k^*u(n - k)} }&{n = 0,1,2...}
\end{array}\]
這里y(n)是期望響應d(n)的一個估計值,則估計誤差e(n)為
\[e(n) = d(n) - y(n)\]
為了優化濾波器的設計,我們使用均方誤差做為代價函數。表示為
\[J = E[e(n){e^*}(n)] = E[|e(n){|^2}]\]
對於復數的輸入,濾波器的系數也是復數,這里只把濾波器的第k個系數做復數展開
\[\begin{array}{*{20}{c}}
{{w_k} = {a_k} + j{b_k}}&{k = 0,1,2,...}
\end{array}\]
則代價函數J關於濾波器系數w向量的梯度向量的第k個元素為
\[\begin{array}{*{20}{c}}
{{\Delta _k}J = \frac{{\partial J}}{{\partial {a_k}}} + j\frac{{\partial J}}{{\partial {b_k}}}}&{k = 0,1,2,...}
\end{array}\]
展開可以得到:
\[\begin{array}{l}
{\Delta _k}J = \frac{{\partial J}}{{\partial {a_k}}} + j\frac{{\partial J}}{{\partial {b_k}}} = E\left[ {\frac{{\partial e(n)}}{{\partial {a_k}}}{e^*}(n) + \frac{{\partial e(n)}}{{\partial {b_k}}}j{e^*}(n) + \frac{{\partial {e^*}(n)}}{{\partial {a_k}}}e(n) + \frac{{\partial {e^*}(n)}}{{\partial {b_k}}}je(n)} \right]\\
\frac{{\partial e(n)}}{{\partial {a_k}}} = \frac{{\partial \left[ {d(n) - \sum\limits_{k = 0}^{M - 1} {w_k^*u(n - k)} } \right]}}{{\partial {a_k}}} = \frac{{\partial \left[ {d(n) - \sum\limits_{k = 0}^{M - 1} {({a_k} - j{b_k})u(n - k)} } \right]}}{{\partial {a_k}}} = - u(n - k)\\
\frac{{\partial e(n)}}{{\partial {b_k}}} = \frac{{\partial \left[ {d(n) - \sum\limits_{k = 0}^{M - 1} {w_k^*u(n - k)} } \right]}}{{\partial {b_k}}} = \frac{{\partial \left[ {d(n) - \sum\limits_{k = 0}^{M - 1} {({a_k} - j{b_k})u(n - k)} } \right]}}{{\partial {b_k}}} = ju(n - k)\\
\frac{{\partial {e^*}(n)}}{{\partial {a_k}}} = \frac{{\partial \left[ {{d^*}(n) - \sum\limits_{k = 0}^{M - 1} {{w_k}{u^*}(n - k)} } \right]}}{{\partial {a_k}}} = \frac{{\partial \left[ {{d^*}(n) - \sum\limits_{k = 0}^{M - 1} {({a_k} + j{b_k}){u^*}(n - k)} } \right]}}{{\partial {a_k}}} = - u*(n - k)\\
\frac{{\partial {e^*}(n)}}{{\partial {b_k}}} = \frac{{\partial \left[ {{d^*}(n) - \sum\limits_{k = 0}^{M - 1} {{w_k}{u^*}(n - k)} } \right]}}{{\partial {b_k}}} = \frac{{\partial \left[ {{d^*}(n) - \sum\limits_{k = 0}^{M - 1} {({a_k} + j{b_k}){u^*}(n - k)} } \right]}}{{\partial {b_k}}} = - ju*(n - k)
\end{array}\]
將上面的4個偏微分代入梯度向量的第k個元素,整理可得
\[\begin{array}{l}
{\Delta _k}J = E\left[ { - u(n - k){e^*}(n) + ju(n - k)j{e^*}(n) - u*(n - k)e(n) - ju*(n - k)je(n)} \right]\\
= E\left[ { - u(n - k){e^*}(n) - u(n - k){e^*}(n) - u*(n - k)e(n) + u*(n - k)e(n)} \right]\\
= - 2E\left[ {u(n - k){e^*}(n)} \right]
\end{array}\]
當梯度等於0,就是濾波器均方誤差最小(最優)的條件,這個條件可以表示為
\[\begin{array}{*{20}{c}}
{E\left[ {u(n - k){e^*}(n)} \right] = 0}&{k = 0,1,2,...}
\end{array}\]
這就是正交原理的數學描述,它的意思是:當估計誤差與輸入數據正交時,濾波器工作於均方誤差准則下的最優狀態。