资讯详情

RLS递归最小二乘法(Recursive Least Squares)

RLS递归最小二乘法(Recursive Least Squares)

感谢B站Up 凩子白, 大多数的RLS算法介绍是从各个专业领域(如滤波器等)的角度进行的, 缺乏专业背景的学生很难入门, 本文主要是上述视频的文字化, 加入自己的理解, 也许有些地方不那么严格, 但希望能帮助其他同学快速了解RLS算法思想。

PRELIMINARIES

最小二乘法

样本数据对儿 ( x , y ) (\mathbf{x},y) (x,y), 输入数据向量 x = [ x 11 , x 12 , . . . , x 1 m ] T ∈ R m \mathbf{x}=[x_{11},x_{12},...,x_{1m}]^T \in \mathbb{R}^m x=[x11,x12,...,x1m]T∈Rm, 输出样本为 y ∈ R y\in \mathbb{R} y∈R; 使用参数为 w \mathbf{w} w 的模型来拟合数据 ( x , y ) (\mathbf{x},y) (x,y)之间的真实映射关系; 认为模型 w \mathbf{w} w的输出为 y y y的估计值 y ^ ∈ R \hat{y}\in \mathbb{R} y^​∈R, 满足 y ^ ∼ f ( w ; x ) \hat{y} \sim f({\mathbf{w}};\mathbf{x}) y^​∼f(w;x), 拟合模型满足如下形式 y 1 ^ = w 1 x 11 + w 2 x 12 + . . . w m x 1 m = x 1 T w y 2 ^ = x 2 T w ⋮ y n ^ = x n T w (1) \hat{y_1}=w_1x_{11}+w_2x_{12}+...w_mx_{1m}=\mathbf{x_1^T}\mathbf{ {w}}\\ \hat{y_2}=\mathbf{x_2^T }\mathbf{ {w}}\\ \vdots\\ \hat{y_n}=\mathbf{x_n^T }\mathbf{ {w}} \tag{1} y1​^​=w1​x11​+w2​x12​+...wm​x1m​=x1T​wy2​^​=x2T​w⋮yn​^​=xnT​w(1) 最小二乘法的思路, 就是希望近似模型参数 w \mathbf{ {w}} w在这 n n n个样本输入数据 X n × m = [ x 1 , x 2 , . . . , x n ] T X_{n\times m}=[\mathbf{x_1},\mathbf{x_2},...,\mathbf{x_n}]^T Xn×m​=[x1​,x2​,...,xn​]T (以后简记为 X X X)上得出的估计值 y ^ = [ y 1 ^ , y 2 ^ , . . . , y n ^ ] T \hat{\mathbf y}=[\hat{y_1},\hat{y_2},...,\hat{y_n}]^T y^​=[y1​^​,y2​^​,...,yn​^​]T 与ground truth 输出样本数据 y = [ y 1 , y 2 , . . . , y n ] T \mathbf y=[y_1,y_2,...,y_n]^T y=[y1​,y2​,...,yn​]T 之间的差值平方和最小,即 w = arg ⁡ m i n ∑ i = 1 n ( y i − y i ^ ) 2 = arg ⁡ m i n ∑ i = 1 n ( y i − x i T w ) 2 = arg ⁡ m i n ∥ y − X w ∥ 2 2 = arg ⁡ m i n   E ( w ) (2) {\mathbf{w}} =\arg min \sum\limits_{i=1}^n (y_i-\hat{y_i})^2\\ = \arg min \sum\limits_{i=1}^n (y_i-\mathbf{x_i^T }\mathbf{ {w}})^2\\ =\arg min \begin{Vmatrix} \mathbf{y}-X\mathbf{w} \end{Vmatrix}_2^2\\ =\arg min\ E(\mathbf{w}) \tag{2} w=argmini=1∑n​(yi​−yi​^​)2=argmini=1∑n​(yi​−xiT​w)2=argmin∥ ∥​y−Xw​∥ ∥​22​=argmin E(w)(2) 误差 E ( w ) E(\mathbf{w}) E(w)对参数 w \mathbf{w} w 求梯度, ∇ w E = ∇ w ∥ y − X w ∥ 2 2 = ∇ w [ ( y − X w ) T ( y − X w ) ] = 2 X T ( y − X w ) (3) \nabla_\mathbf{w} E =\nabla_\mathbf{w}\begin{Vmatrix} \mathbf{y}-X\mathbf{w} \end{Vmatrix}_2^2\\ =\nabla_\mathbf{w} \big[(\mathbf{y}-X\mathbf{w})^T(\mathbf{y}-X\mathbf{w})\big] \\ =2X^T(\mathbf{y}-X\mathbf{w}) \tag{3} ∇w​E=∇w​∥ ∥​y−Xw​∥ ∥​22​=∇w​[(y−Xw)T(y−Xw)]=2XT(y−Xw)(3) 令 ∇ w E = 0 \nabla_\mathbf{w} E=0 ∇w​E=0, 即可求出 w = X − 1 y = ( X T X ) − 1 X T y (4) \mathbf{w}=X^{-1}\mathbf{y}=(X^TX)^{-1}X^T\mathbf{y} \tag{4} w=X−1y=(XTX)−1XTy 标签: 7ty传感器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台