梯度下降法求解线性回归之matlab实现
来源:互联网 发布:relief 人工智能 编辑:程序博客网 时间:2024/06/05 19:21
线性回归其实就是寻找一条直线拟合数据点,使得损失函数最小。直线的表达式为:
损失函数的表达式为:
其中m为数据点总数。
现在我们使用梯度下降法求解函数
如上图所示,只要自变量
我们要求解
由以上可以总结出
梯度公式(其实就是求导而已):
系数
其中i是迭代次数,起始为0
下面是matlab的具体实现
样例数据
x = linspace(-2,2,40)';y = 2*x+rand(length(x),1);
开始迭代
for i = 1:maxgen alpha = 1/i+alpha0; e = x*seta+b-y; mse = norm(e); delta_seta = e'*x; delta_seta_norm = norm(delta_seta); b = b-alpha*sum(e); seta = seta-alpha*delta_seta; disp(strcat('迭代次数:',num2str(i))); disp(strcat('梯度:',num2str(delta_seta_norm),';seta:',num2str(seta),';b:',num2str(b),';mse:',num2str(mse))) disp(strcat('alpha:',num2str(alpha),';sum(e):',num2str(sum(e))))end
程序运行结果:
0 0
- 梯度下降法求解线性回归之matlab实现
- 梯度下降法求解线性回归之python实现
- 梯度下降法求解线性回归问题
- 线性回归梯度下降matlab实现
- 基于matlab的梯度下降法实现线性回归
- 线性回归之梯度下降法
- 基于梯度下降算法求解线性回归
- 线性回归与梯度下降(附Matlab实现)
- 利用梯度下降法实现线性回归的算法及matlab实现
- 梯度下降法 线性回归 多项式回归 python实现
- 线性回归&梯度下降
- 利用梯度下降法实现简单的线性回归
- 基于梯度下降法实现线性回归算法
- 线性回归参数估计--最小二乘法与梯度下降法Python实现
- 机器学习-梯度下降法实现线性回归
- Python实现 线性回归(梯度下降)
- 线性回归之梯度下降法(附代码)
- 机器学习算法入门之(一) 梯度下降法实现线性回归
- Remove Duplicates from Sorted List
- android之LayoutInflater
- Java学习·接口
- centos静态IP配置
- SSM三大框架整合详细教程
- 梯度下降法求解线性回归之matlab实现
- 【黑马Android】(04)数据库的创建和sql语句增删改查/LinearLayout展示列表数据/ListView的使用和BaseAdater/内容提供者创建
- Java中编译运行带包名和不带包名的HelloWorld
- poj2135(模板题)
- 高于均分的学生
- 牛客网每日打卡-网络基础-20160406
- CodeForces 6D Lizards and Basements 2(DFS)
- 打印十字图
- 汉诺塔