文章目录
- 一、前言
- 二、梯度下降理解算法
- 2.1 单变量线性回归
- 2.2 多变量线性回归
- 2.3 正则化
- 2.3.1 L2正则化(Ridge回归)
- 2.3.2 L1正则化(Lasso回归)
- 三、实验一详细代码案例
一、前言
本次实验我将分为两个部分进行讲解,第一部分用Numpy进行从零实现,对于算法公式尝试从零定义,深入理解线性回归的知识。
代码+数据集地址:
https://mbd.pub/o/bread/ZJWal5dx
二、梯度下降理解算法
2.1 单变量线性回归
数据集展示:
批量梯度下降的公式如下:
随机梯度下降函数也在每个训练迭代中输出一个代价,最后转换成向量,我们可以绘制,来直观的展现变化情况
需要注意的是,代价总是降低的,这是凸优化问题的一个例子
预测情况如下:
使用正规方程:
正规方程的推导过程:
2.2 多变量线性回归
数据拟合情况:
查看一下训练过程:
2.3 正则化
2.3.1 L2正则化(Ridge回归)
2.3.2 L1正则化(Lasso回归)
三、实验一详细代码案例