python 截距拟合_python回归分析总结回归模型及调优

本文介绍了回归分析的基本概念,包括损失函数和优化算法,如正规方程和梯度下降。详细讲解了Python中进行线性回归的API,如statsmodels和sklearn.linear_model,并探讨了欠拟合、过拟合及其解决方案,如L1和L2正则化。最后,文章重点介绍了岭回归作为线性回归的改进方法及其在sklearn库中的实现。
摘要由CSDN通过智能技术生成

回归分析及模型优化

1、回归分析概括

目标值(因变量)是连续型数据,通过某种函数关系找到因变量和自变量之间的关系,进而预测目标。

  • 常见的回归:线性回归、岭回归、非线性回归;
  • 回归拟合目标:计算自变量与因变量关系的函数参数;
  • 通过不断拟合缩小预测值与真实值的差距:最终使得这个差距(误差项)成为一组均值为0,方差为1的随机数。

2、损失函数

总损失定义为:4d0b6d83cdc1d20e0b0e63faf8aac5d2.png说明:

  • y_i为第i个训练样本的真实值
  • h(x_i)为第i个训练样本特征组合预测函数
  • 又称最小二乘法

优化模型的目标就是如何尽可能的减少损失。

3、优化算法

使得损失函数值达到最小的方法:正规方程、梯度下降。

正规方程

f820b3b1873cf8a781ec8e8a9ddf5c3e.png
  • X表示自变量
  • y表示因变量
  • X,y表示矩阵
  • 右上角的-1表示逆矩阵(np.linalg.inv(X))
  • 右上角的T表示转置(X.T)
  • w = np.linalg.inv(X.T.dot(X)).dot(X.T).dot(y)
  • 缺点:当特征值过多时,求解速度慢,并且得不到结果

梯度下降

1b24f681942c16ef190cf36f495db6a8.png理解:a为学习速率,需要手动指定的超参数,a旁边的的整体表示方向,沿着这个函数的下降的方向找,最终山谷的最低点,然后更新w值使用。其中a设置过大可能会只找到局部最优解。

4、python的API

  • statsmodels.formula.api.OLS():普通最小二乘模型拟合- - 常用
  • scipy.stats.linregress(): 线性拟合
  • scipy.optimize.curve_fit():回归函数拟合
  • 使用参考:?回归函数及线性回归分析

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值