机器学习十讲-第二讲回归

回归

回归三大模型

  • 线性回归
  • 岭回归
  • LASSO回归

 

使用回归模型预测鲍鱼年龄

1、导入数据,进行分析

 

 能够看出鲍鱼有9个特征函数

每一个特征所对应的数据表明的含义是:布局

 

 数据集一共有 4177 个样本,每一个样本有 9 个特征。其中 rings 为鲍鱼环数,可以表明鲍鱼年龄,是预测变量。除了 sex 为离散特征,其他都为连续变量。测试

首先借助 seaborn 中的 countplot 函数绘制条形图,观察 sex 列的取值分布状况。编码

 

 对于连续特征,可使用 seaborn 的 distplot 函数绘制直方图观察特征取值状况。咱们将 8 个连续特征的直方图绘制在一个 4 行 2 列的子图布局中。3d

 

 也能够经过,热力图来展现性别对其余特征的影响code

 

 为了定量地分析特征之间的线性相关性,咱们计算特征之间的相关系数矩阵,并借助热力图将相关性可视化。blog

 

 

2、鲍鱼数据预处理

对 sex 特征进行 OneHot 编码

添加取值为 1 的特征(如果用sklearn中的linear_model里的回归函数,则没必要添加)

根据鲍鱼环计算年龄

通常每过一年,鲍鱼就会在其壳上留下一道深深的印记,这叫生长纹,就至关于树木的年轮。在本数据集中,咱们要预测的是鲍鱼的年龄,能够经过环数 rings 加上 1.5 获得。变量

构造两组特征集

将鲍鱼数据集划分为训练集和测试集

实现线性回归和岭回归

构建本身的线性回归方程

 

 

 

 

 使用sklearn里的线性方程

这里所用的训练集的参数:是不包含ones那一列的可视化

 

 可见结果值相同,咱们使用 Numpy 实现的线性回归模型与 sklearn 获得的结果是一致的。model

构建本身的岭回归方程

 

 

 

 

 使用sklearn里的岭回归方程

使用 LASSO 构建鲍鱼年龄预测模型

 

 

鲍鱼年龄预测模型效果评估

 

能够看出:岭回归和线性回归比较好

 

能够看出三者都很差,岭回归相对好

 

 

相关文章
相关标签/搜索