Adaptive filter algorithm for digital signal processing
再帰最小二乗法(RLS)は、入力信号に関連する重み付き線形最小二乗コスト関数を最小化する係数を再帰的に求める適応フィルタアルゴリズムです。このアプローチは、平均二乗誤差の低減を目的とする最小平均二乗法(LMS)などの他のアルゴリズムとは対照的です。RLSの導出において入力信号は決定論的とみなされますが、LMSや類似のアルゴリズムでは確率的とみなされます。RLSは、他の多くの競合アルゴリズムと比較して、非常に高速な収束を示します。しかし、この利点は計算の複雑さを増大させることを伴います。
モチベーション
RLSはガウスによって発見されましたが、1950年にプラケットが1821年のガウスの原著を再発見するまで、使われなかったり無視されたりしていました。一般的に、RLSは適応フィルタで解決できるあらゆる問題を解くために使用できます。例えば、信号がエコーやノイズの多いチャネルを介して送信され、次のように受信されるとします。


ここで、 は加法性ノイズを表します。RLSフィルタの目的は、タップFIRフィルタを用いて目的の信号を復元することです。





ここで、はの最新のサンプルを含む列ベクトルである。回復された所望の信号の推定値は
![{\displaystyle \mathbf {x} _{n}=[x(n)\quad x(n-1)\quad \ldots \quad x(np)]^{T}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/09eb921b307dabe5f3f396085912215d09c02114)



目標はフィルタ のパラメータを推定することであり、各時点では現在の推定値を、適応型最小二乗推定値をと参照します。 も列ベクトル(以下参照)であり、転置ベクトル、は行ベクトルです。行列積(とのドット積)は であり、スカラーです。 が最小二乗法の意味
で小さい場合、 推定値は「良好」です。









時間が経つにつれて、に関して の新しい推定値を見つけるために最小二乗アルゴリズムを完全にやり直すことを避けることが望まれます。


RLSアルゴリズムの利点は、逆行列を計算する必要がないため、計算コストを節約できることです。また、カルマンフィルタなどの結果の背後にある直感的な理解が得られるという利点もあります。
議論
RLSフィルタの考え方は、フィルタ係数を適切に選択し、新しいデータが到着するたびにフィルタを更新することで、コスト関数を 最小化するというものです。誤差信号と目標信号は、以下の負帰還図で定義されます。




誤差は推定値を通じてフィルタ係数に暗黙的に依存します。


重み付き最小二乗誤差関数(最小化したいコスト関数)は、フィルタ係数にも依存します。



ここで、古いエラー サンプルに指数的に小さい重みを与える「忘却係数」です。

コスト関数は、係数ベクトルのすべての要素の偏微分を取り、その結果をゼロに設定する
ことによって最小化される。


次に、エラー信号の定義に
置き換えます。
![{\displaystyle \sum _{i=0}^{n}\lambda ^{ni}\left[d(i)-\sum _{\ell =0}^{p}w_{n}(\ell )x(i-\ell )\right]x(ik)=0\qquad k=0,1,\ldots ,p}](https://wikimedia.org/api/rest_v1/media/math/render/svg/19ddcbc3bdad707cdb76a5d5371bc1bee9872174)
式を変形すると
![{\displaystyle \sum _{\ell =0}^{p}w_{n}(\ell )\left[\sum _{i=0}^{n}\lambda ^{ni}\,x(i-\ell )x(ik)\right]=\sum _{i=0}^{n}\lambda ^{ni}d(i)x(ik)\qquad k=0,1,\ldots ,p}](https://wikimedia.org/api/rest_v1/media/math/render/svg/e5289d4da73b7a149fdf9a53cbd8c80a11c0dfe6)
この形式は行列で表現できる

ここでは の重み付き標本共分散行列であり、 はと の間の共分散の等価推定値である。この式に基づいて、コスト関数を最小化する係数を以下のように求める。






これが議論の主な結果です。
λを選択する
が小さいほど、共分散行列への過去のサンプルの寄与は小さくなります。これにより、フィルタは最近のサンプルに対してより敏感になり、フィルタ係数の変動が大きくなります。このケースは、成長ウィンドウRLSアルゴリズムと呼ばれます。実際には、は通常0.98から1の間で選択されます。[1]タイプII最尤推定を用いることで、データセットから最適な値を推定することができます。 [2]


再帰アルゴリズム
議論の結果、コスト関数を最小化する係数ベクトルを決定する単一の方程式が得られた。この節では、以下の形式の再帰解を導出する。

ここで、 は時刻 における補正係数である。再帰アルゴリズムの導出は、まず相互共分散を次のように表すことから始まる。


|
|
|
|
|
|
|
|
次元データベクトル
はどこにあるか

![{\displaystyle \mathbf {x} (i)=[x(i),x(i-1),\dots ,x(ip)]^{T}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/dab2ea44a54d82de74ac9f6d26e3f5f6c2a44d8a)
同様に、


|
|
|
|
|
係数ベクトルを生成するために、決定論的自己共分散行列の逆行列が重要になります。この作業には、ウッドベリー行列恒等式が便利です。
|
は-by-
|
|
は-行1列(列ベクトル)
 |
|
1行(行ベクトル)
 |
|
1行1列の単位行列である
|
ウッドベリー行列の恒等式は次のようになる。
|
|
|
|
|
|
|
|
|
|
|
標準的な文献に沿うように、我々は次のように定義する。
|
|
|
|
|
ここでゲインベクトル は

|
|
|
|
|
先に進む前に、別の形
で
|
|
|
|
左辺の2番目の項を引くと、
|
|
|
|
|
望ましい形式
の再帰定義は次のようになる。

これで再帰を完了する準備ができました。
|
|
|
|
|
2番目のステップは の再帰的定義から得られる。
次に の再帰的定義を の代替形式と組み合わせると、


|
|
|
|
|
|
|
|
更新方程式に到達する
と
|
|
|
|
|
ここで、事前誤差
です。これを事後誤差、つまりフィルタ更新
後に計算される誤差と比較してみましょう。

つまり、補正係数を見つけたということです

この直感的に納得のいく結果は、補正係数が誤差とゲイン ベクトルの両方に正比例し、重み付け係数を通じてどの程度の感度が望ましいかを制御することを示しています。

RLSアルゴリズムの概要
p次RLSフィルタのRLSアルゴリズムは次のように要約できる。
| パラメータ: |
フィルタ順序
|
|
忘却要因
|
|
初期化する値
|
| 初期化: |
、
|
|
、
|
|
|
|
ランクの単位行列はどこにあるか
|
| 計算: |
のために
|
|
|
|
|
|
|
|
|
|
。
|
の再帰は代数リカッチ方程式に従うため、カルマンフィルタと類似している。[3]
格子再帰最小二乗フィルタ(LRLS)
格子再帰最小二乗 適応フィルタは、より少ない算術演算(N次)を必要とする点を除いて、標準的な RLS と関連がある。[4]従来の LMS アルゴリズムに比べて、収束速度が速い、モジュール構造である、入力相関行列の固有値分布の変動の影響を受けないなどのさらなる利点がある。ここで説明する LRLS アルゴリズムは事後誤差に基づいており、正規化された形式を含む。導出は標準的な RLS アルゴリズムに似ており、 の定義に基づいている。順方向予測の場合、 は入力信号を最新のサンプルとして表す。逆方向予測の場合は であり、ここで i は予測したい過去のサンプルのインデックスであり、入力信号は最新のサンプルである。[5]



パラメータの概要
前方反射係数
後方反射係数
瞬間的な事後予測誤差を表す
瞬間的な事後予測誤差を表す
最小二乗後方予測誤差の最小値
最小二乗法による前方予測誤差の最小値
事前誤差と事後誤差の間の変換係数である
フィードフォワード乗算係数です。
0.01の小さな正の定数である。
LRLSアルゴリズムの概要
LRLSフィルタのアルゴリズムは次のように要約できる。
| 初期化:
|
|
のために
|
|
(の場合)
  |
|
|
|
|
|
|
|
終わり
|
| 計算:
|
|
のために
|
|
|
|
|
|
|
|
|
|
のために
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
フィードフォワードフィルタリング
|
|
|
|
|
|
|
|
終わり
|
|
終わり
|
|
|
正規化格子再帰最小二乗フィルタ(NLRLS)
LRLSの正規化形式は、再帰と変数の数が少なくなります。アルゴリズムの内部変数に正規化を適用することで計算が可能で、その大きさは1に制限されます。この正規化形式は、除算と平方根の演算回数が多く、計算負荷が高いため、リアルタイムアプリケーションでは通常使用されません。
NLRLSアルゴリズムの概要
NLRLSフィルタのアルゴリズムは次のように要約できる。
| 初期化:
|
|
のために
|
|
(の場合)
  |
|
|
|
|
|
終わり
|
|
|
| 計算:
|
|
のために
|
|
(入力信号エネルギー)
|
|
(基準信号エネルギー)
|
|
|
|
|
|
のために
|
|
|
|
|
|
|
|
フィードフォワードフィルタ
|
|
|
|
|
|
終わり
|
|
終わり
|
|
|
参照
参考文献
- Hayes, Monson H. (1996). 「9.4: 再帰最小二乗法」.統計的デジタル信号処理とモデリング. Wiley. p. 541. ISBN 0-471-59431-8。
- サイモン・ヘイキン著『適応フィルタ理論』、プレンティス・ホール、2002年、ISBN 0-13-048434-2
- MHA Davis、RB Vinter著『確率的モデリングと制御』、Springer、1985年、ISBN 0-412-16200-8
- Weifeng Liu、Jose Principe、Simon Haykin著『カーネル適応フィルタリング:包括的入門』 John Wiley、2010年、ISBN 0-470-44753-2
- RLPlackett,最小二乗法におけるいくつかの定理, Biometrika, 1950, 37, 149–157, ISSN 0006-3444
- CFGauss、理論の組み合わせは観測誤差の最小値、1821 年、ヴェルケ、4. ゲッティンゲ
注記
- ^ エマンヌアル・C・イフェアコル、バリー・W・ジャービス著『デジタル信号処理:実践的アプローチ』第2版、インディアナポリス:ピアソン・エデュケーション・リミテッド、2002年、718ページ
- ^ Steven Van Vaerenbergh、Ignacio Santamaría、Miguel Lázaro-Gredilla「カーネル再帰最小二乗法における忘却係数の推定」、2012 IEEE International Workshop on Machine Learning for Signal Processing、2012年、2016年6月23日アクセス。
- ^ ウェルチ、グレッグ、ビショップ、ゲイリー「カルマンフィルタ入門」、ノースカロライナ大学チャペルヒル校コンピュータサイエンス学部、1997年9月17日、2011年7月19日アクセス。
- ^ Diniz, Paulo SR、「適応フィルタリング:アルゴリズムと実用的な実装」、Springer Nature Switzerland AG 2020、第7章:適応型ラティスベースRLSアルゴリズム。https://doi.org/10.1007/978-3-030-29057-3_7
- ^ Albu、Kadlec、Softley、Matousek、Hermanek、Coleman、Fagan「Virtex での (正規化された) RLS ラティスの実装」Wayback Machineに 2016 年 3 月 4 日にアーカイブ、デジタル信号処理、2001 年、2011 年 12 月 24 日にアクセス。