机器学习-一篇入门

【模型】一篇入门之-线性回归模型

作者 : 老饼 发表日期 : 2022-06-26 03:28:38 更新日期 : 2024-11-28 21:46:29
本站原创文章,转载请说明来自《老饼讲解-机器学习》www.bbbdata.com



线性回归模型是机器学习中的经典模型,也是一个必知的入门模型

本文讲解线性回归模型,包括模型的表达式、损失函数以及一个使用例子

通过本文可以快速了解什么是线性回归模型,以及如何使用线性回归模型进行预测




    01. 什么是线性回归模型   




本节展示线性回归模型的思想与公式,以快速了解线性回归模型是什么




    线性回归模型的思想   


线性回归模型是机器学习中的基本模型,它用于解决回归问题
线性回归假设x与y是线性关系,然后以拟合之间的关系
 在x为一维时,线性回归的几何意义如下所示:
 
什么是线性回归模型
  即通过一条直线来拟合x,y所构成的数据点,使拟合值与真实值的误差越小越好
线性回归的优点是x与y之间的关系非常清晰,它的缺点是只能适用于线性关系





     线性回归的模型与求解     


线性回归的表达式
 线性回归的模型表达式如下:
  

线性回归模型的矩阵形式为:
 

  
解释:矩阵形式中的X是在原变量再加上一列常数1:  
    W也对应地比原来的多一个,目的是把 b揉进了W里,如下:

  
 线性回归的矩阵形式 
线性回归的损失函数与求解
 线性回归的损失函数为均方误差函数(即MSE),如下:
    
由于线性回归的损失函数就是MSE,因此可以直接使用最小二乘法求解
 最小二乘法的求解公式如下:
 
在使用线性回归模型时,可以使用上述公式求解,也可以通过软件求解






    02. 如何使用线性回归模型   




本节展示python实现一个线性回归模型的例子




    线性回归模型例子    


下面展示一个例子,如何使用线性回归模型来进行预测,数据以下:
 
线性回归例子数据 
  备注:以上数据的实际关系为:   
下面我们建立线性回归模型,用变量 预测
 python代码实现如下:
from sklearn import linear_model
import numpy as np

x = np.array([[0, 2], [1, 1], [2,3],[3,2],[4,5],[5,2]])  # 用于训练的x
y = np.array([8,7,15,14,25,18])                          # 用于训练的y
reg = linear_model.LinearRegression()                    # 调用sklearn的线性模型包,训练数据          
reg.fit(x,y)                                             # 训练模型
print("模型参数:"+str(reg.coef_))                        # 打印模型权重
print("模型阈值:"+str(reg.intercept_))                   # 打印模型阈值
运行结果如下:
 

 
将参数代入模型表达式,即可得到x,y的关系如下:
 

 可以看到,线性回归模型能够很好地求解出x与y之间的线性关系










 End 




联系老饼