问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Matlab 的线性回归最小二乘法 求大神解答

发布网友 发布时间:2022-04-28 17:55

我来回答

1个回答

热心网友 时间:2022-06-22 17:56

使用最小二乘法拟合比较简单:

    x_r=[abscissa ones(size(abscissa))]\ordinates;
求出来即为题中的x和γ。如果不限方法,也可以使用多项式拟合:

    p = polyfit(abscissa, ordinates,1);

得到的结果是一致的(但二者分别是列向量和行向量)。

 

使用绝对值最小的拟合方法稍微复杂一些:

e = ones(size(abscissa));
f = [0; 0; e];
A1 = [-abscissa -e -eye(length(abscissa))];
b1 = -ordinates;
A2 = [abscissa e -eye(length(abscissa))];
b2 = ordinates;
c = linprog(f,[A1;A2],[b1;b2]);
求出来的即为所需的系数。

 

完整的代码如下(含绘图):

% Linear fit with least square and least absolute error
slope=3; intercept=-2;
abscissa = (-5:5)'; m = length(abscissa);
WhiteNoise = 5*randn(m,1);
ordinates = slope*abscissa + intercept + WhiteNoise;
GrossError=80;
ordinates(6)=ordinates(6)+GrossError;
ordinates(10)=ordinates(10)-GrossError;

 

x_r=[abscissa ones(size(abscissa))]\ordinates;
y2=[abscissa ones(size(abscissa))]*x_r;

e = ones(size(abscissa));
f = [0; 0; e];
A1 = [-abscissa -e -eye(length(abscissa))];
b1 = -ordinates;
A2 = [abscissa e -eye(length(abscissa))];
b2 = ordinates;
c = linprog(f,[A1;A2],[b1;b2]);
y1=[abscissa ones(size(abscissa))]*c(1:2);
plot(abscissa, ordinates, 'ro',abscissa, y2,'b-',abscissa, y1,'g--')
legend('Original data', 'Least L^2 error', 'Least L^1 error')
某次运行的结果如下(因数据为随机生成,每次运行结果不同):

对于L1最小拟合,也可以使用优化工具箱的函数fminunc来做:

objfun = @(x)sum( abs(abscissa*x(1)+x(2)-ordinates) );
c2=fminunc(objfun,[2 -2])

y3=[abscissa ones(size(abscissa))]*c2.';
plot(abscissa, ordinates, 'ro',abscissa, y2,'b-',abscissa, y1,'g--',abscissa, y3,'m:')
legend('Original data', 'Least L^2 error', 'Least L^1 error', 'fminunc')

拟合的结果可能与前述线性规划的结果不同(但目标函数基本都能达到最小),这也说明这个问题本质上是多极值的,存在多个局部最优点。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
WIN7不会自动安装AHCI驱动是怎么回事?每次重装系统后都得我自己安装_百... 钉钉录播课能否查看观看时长 为什么城市轨道要有身高条件 城轨交通运营管理专业现身高吗 城市轨道交通运营管理这个专业是否有身高要求 读城轨专业需要什么条件 学习城轨专业需要什么条件? 城市轨道专业最低的身高要求多少?身高158毕业出来好找工作吗? 城轨专业要求身材吗 城轨专业有身高限制吗 least squares linear regression最小二乘法拟合数据 matlab最小二乘法曲线拟合怎么取 最小二乘法拟合直线的公式是什么,如何推导的? origin怎么用最小二乘法线性拟合 最小二乘法的线性拟合 用Excel如何进行最小二乘法的线性拟合?求图解! 最小二乘法直线拟合,线性相关系数r有什么用 最小二乘法的拟合 如何应用最小二乘法进行实验曲线拟合? 微信怎么赚钱 做什么好 在网上用聊天挣钱是怎么回事 微信赚钱是怎么回事 微信上说一部手机一台电脑可以赚到钱是真的吗? 电脑登陆的微信那种可以赚钱吗? 帮个忙请问怎么微信赚钱?微信 赚钱 是怎么回事?有知道的吗 微信挂pc拿佣金是什么套路 交话费交到不用的手机号上了怎么办 把话费误充到一个已经不用了的手机号了,话费到哪儿去了? 博时新兴成长基金净值怎么样 话费充到我另一个手机号了,但是那个已经不用了,话费可以换回来吗? VB 最小二乘法线性拟合 最小二乘法计算公式是? 什么叫最小二乘法 最小二乘法拟合问题 用 matlab 支付宝确认支付后出现如需浏览,请长按网址复制后使用浏览器访问是什么原因? 复制后使用浏览器访问 微信朋友圈出现如需浏览请长按网址复制后使用浏览器访问的提示,复制链接也打不开。该怎么办? 苹果手机如需浏览,请长按网址复制后使用浏览器访问原因 淘宝屏蔽了来自微信的浏览请求 ,如需浏览,请长按网址复制后使用浏览器访问,应该怎么办? 淘宝屏蔽了来自微信的浏览请求 如需浏览,请长按网址复制后使用浏览器访问 h 使用浏览器访问自己编写的网页和计算机病毒有关吗 在LINUX下安装好LAMP后,用浏览器访问php文件,为何是下载,而不解释呢... 打开网址后 非法请求 请开启cookies并且不要采用浏览器的隐身模式访问 在电脑上用浏览器搜索之后,电脑提示我访问了敏感网站可是我并没有访问过 把ear文件部署到weblogic服务器后,用浏览器访问是空白页 当前网页分享次数过多,请长按网址复制后使用浏览器访问~拼多多 为什么浏览器有时候不能点击,必须强行关闭后再重新开启;有时候在地址栏内输入www.baidu.com后不能访问。 在手机上电信怎样测网速 电信能测网速吗? 电信怎么测试网速的?