• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

用matlab计算线性回归问题

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

看机器学习的时候遇到的第一个算法就是线性回归,高数中很详细的说明了线性回归的原理和最小2乘法的计算过程,很显然不适合手动计算,好在各种语言都有现成的函数使用,让我们愉快的做个调包侠吧

简单线性回归

R越接近1表示拟合效果越好

>> x=[0,1,2,3,4,5,6,7]

x =

     0     1     2     3     4     5     6     7

>> y=[27.0,26.8,26.5,26.3,26.1,25.7,25.3,24.8]

y =

  列 1 至 7

  27.000000000000000  26.800000000000001  26.500000000000000  26.300000000000001  26.100000000000001  25.699999999999999  25.300000000000001

  列 8

  24.800000000000001

>> [r,m,b]=regression(x,y)

r =

  -0.986307223369922


m =

  -0.303571428571428


b =

  27.124999999999996

>> plotregression(x,y)
>> 

多元线性回归

>> load carsmall
>> x1 = Weight;
>> x2 = Horsepower;
>> y = MPG;
>> X = [ones(size(x1)) x1 x2 x1.*x2];
>> b = regress(y,X)

b =

  60.710360805049135
  -0.010153547589001
  -0.188206440954574
   0.000038494827316

>> scatter3(x1,x2,y,\'filled\')
hold on
x1fit = min(x1):100:max(x1);
x2fit = min(x2):10:max(x2);
[X1FIT,X2FIT] = meshgrid(x1fit,x2fit);
YFIT = b(1) + b(2)*X1FIT + b(3)*X2FIT + b(4)*X1FIT.*X2FIT;
mesh(X1FIT,X2FIT,YFIT)
xlabel(\'Weight\')
ylabel(\'Horsepower\')
zlabel(\'MPG\')
view(50,10)
hold off
>> 

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
DelphiCanvas填充区域图形发布时间:2022-07-18
下一篇:
Delphi外挂开发网站发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap