
正文
滤波器算法(2)-最小均方(LMS)
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
2018.09.09 写的版本

①残差平方和

②平方损失函数:

③函数的极值点为偏导数为0的点:(将问题变成一个求极值的问题)

④求解得:

matlab代码:
① y=ax+b+e方程
function [y] = form_y_ax_b(a,b,x)
%FORM_Y_AX_B 此处显示有关此函数的摘要
% 此处显示详细说明 y=x.*a+b; end
② 专用型最小二求解函数
%% 单单针对 y=ax+b+e类型的最小二乘法 function [a,b] = func_lms1(x,y)
%FUNC_LMS1 此处显示有关此函数的摘要
% 此处显示详细说明
sx=sum(x);
sy=sum(y);
sxx=sum(x.*x);
sxy=sum(x.*y);
N=length(x); a=(N*sxy-sx*sy)./(N*sxx-sx.^2);
b=(sxx*sy-sxy*sx)./(N*sxx-sx.^2); end
③ main函数
%% 最小二乘法的仿真实验
% clc;
close all;clear; %% y=a*x+b为原始函数 +e噪声数据
a=2; % 斜率
b=1; % 截距
e=1; % 误差系数 x=1:0.1:10;
y=form_y_ax_b(a,b,x);
y_noise=y+randn(1,length(x)).*e; %% 正式处理
[e_a,e_b]=func_lms1(x,y_noise);
y_estimate=form_y_ax_b(e_a,e_b,x); %% 绘图
figure(1);
plot(x,y,'r-'),hold on;
plot(x,y_noise,'b-*'),hold on;
plot(x,y_estimate,'Color',[0 0 0],'LineStyle','-.'),hold on;
xlabel('坐标轴x');
ylabel('坐标轴y');
legend('真实数据','加噪数据','估计数据');
set(gca,'FontSize',20);
% print -djpeg -r600 示意图;
④ 图谱显示

参考链接:
链接:https://pan.baidu.com/s/1-qPixSd4vKuWW1x120eWhw
提取码:ou07







