首页 > 编程语言 >*Python*机器学习算法——线性回归(Linear Regression)

*Python*机器学习算法——线性回归(Linear Regression)

时间:2024-09-14 13:52:44浏览次数:3  
标签:plt 因变量 Linear Python 回归 线性 Regression 自变量

目录

⭐️引言

⭐️理论

1、 简单线性回归

2、 多元线性回归

3、最佳拟合

⭐️结语


⭐️引言

        线性回归(Linear Regression)是一种基本的预测分析方法,它通过拟合数据点来建立因变量(目标变量)与一个或多个自变量之间的关系模型。线性回归假设这种关系是线性的,并试图找到一条直线(简单线性回归)或超平面(多元线性回归),使得这条直线或超平面与实际数据点之间的误差最小化。

⭐️理论

        为了实现线性回归(Linear Regression)主要使用Scikit-learn提供了丰富的线性回归工具,其中包括基本的LinearRegression(使用普通最小二乘法)、Ridge回归(通过L2正则化解决多重共线性问题)、Lasso回归(通过L1正则化实现特征选择)、ElasticNet(结合L1和L2正则化)以及SGDRegressor(使用随机梯度下降法)等库解决线性回归的一系列问题

1、 简单线性回归

        简单线性回归(Simple Linear Regression, SLR)是一种基本的统计方法,主要用来分析两个变量间的关系,其中一个变量是因变量(或响应变量),另一个是自变量(或预测变量)。

        简单线性回归模型假定因变量 ( y ) 与自变量 ( x ) 之间存在线性关系,模型可表示为:

                                                y = \beta_0 + \beta_1 x + \epsilon

        其中:
        ( y ) 是因变量。
        ( x ) 是自变量。
        ( \beta_0 ) 是模型的截距(当 ( x=0 ) 时 ( y ) 的预期值)。
        ( \beta_1 ) 是斜率,表示自变量 ( x ) 每增加一个单位时因变量 ( y ) 的平均变化量。
        ( \epsilon ) 是误差项,代表模型未能捕捉的影响 ( y ) 的其他因素。

import numpy as np
import matplotlib.pyplot as plt

# 设置随机种子以确保结果可重复
np.random.seed(42)

# 生成模拟数据
n_samples = 100
X = np.random.rand(n_samples, 1) * 10  # 自变量
y = 2 * X + 3 + np.random.randn(n_samples, 1)  # 因变量,添加一些噪声

# 可视化原始数据
plt.scatter(X, y, color='blue', label='Data Points')
plt.xlabel('X')
plt.ylabel('Y')
plt.legend()
plt.show()

        通过求解最小二乘法,可以获得参数 ( \beta_0 ) 和 ( \beta_1 ) 的估计值。具体的参数估计公式如下:

        截距 (

标签:plt,因变量,Linear,Python,回归,线性,Regression,自变量
From: https://blog.csdn.net/m0_57916248/article/details/142253655

相关文章

  • 如何使用【Python】快速制作可视化报表
    数据可视化能力已经越来越成为各岗位的基础技能。领英的数据报告显示,数据可视化技能在2017年中国最热门技能中排名第一。就数据分析而言,可视化探索几乎是你正式进行数据分析的第一步,通过SQL拿到数据之后,我们需要使用可视化方法探索和发现数据中的模式规律。数据分析界有一......
  • YOLOV5 onnx推理 python
      pipinstallonnxcoremltoolsonnx-simplifier 3.使用onnx-simplier简化模型python-monnxsimbest.onnxbest-sim.onnx #coding=utf-8importcv2importnumpyasnpimportonnxruntimeimporttorchimporttorchvisionimporttimeimportrandomfromutil......
  • 爬虫代码 python
       importrequestsimporturllibimportosimporttimeprint('欢迎使用Aking爬虫图片下载器!')time.sleep(0.5)print('欢迎使用Aking爬虫图片下载器!!')time.sleep(0.5)print('欢迎使用Aking爬虫图片下载器!!!')time.sleep(0.5)print('准备就绪!')time.sle......
  • python爬虫连载20
    XPath语法:表达式描述nodename选取此节点的所有子节点/从根节点选取//选择任意位置的某个节点.选取当前节点..选取当前节点的父节点@选取属性    <?xmlversion="1.0"encoding="IS0-8859-1"?><classroom>      <student>             <id>1001</id>   ......
  • Python如何定义一个函数?
    在Python中,函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码块,它可以提高应用的模块性,和代码的重复利用率。那么Python如何定义一个函数?以下是具体内容介绍。在Python中定义函数有多种方法。最常见的方法是使用def关键字,后跟函数名称和一对圆括号。语法:......
  • Python语言如何编写函数?
    Python函数是指组织好的、可重复使用的、用来实现单一或相关联功能的代码段。Python函数包含系统中自带的一些函数、第三方函数、以及用户自定义的函数,那么Python如何编写函数?我们通过这篇文章来介绍一下。函数是一组可重复使用的代码块,用于执行特定的任务。它们可以接受......
  • pandas-ai 基于LLM进行数据分析的python 框架
    pandas-ai基于LLM进行数据分析的python框架包含的特性基于自然语言的数据查询数据可视化数据清理特征生成数据链接(支持链接多种不同的数据源)说明对于基于数据分析的场景pandas-ai是一个值得尝试的工具,同时官方也微调了一个BambooLLM的模型(基于mistral)目前也已经在huggingface......
  • 【python爬虫案例】利用python爬取豆瓣电影TOP250评分排行数据!
    目录一、爬取对象-豆瓣电影TOP250二、豆瓣电影网站分析三、python爬虫代码详解三、完整源码获取一、爬取对象-豆瓣电影TOP250今天给大家分享一期豆瓣读书TOP排行榜250的python爬虫案例爬取的目标网址是:豆瓣电影Top250咱们以目标为驱动,以兴趣为导向,先来看下爬虫程......
  • trafilatura python web 数据获取库
    trafilaturapythonweb数据获取库,比较适合进行爬虫,数据提取,支持输出数据为csv,json,html,md,txt,xml包含的特性高级web爬虫以及文本发现并行处理在线以及离线输入内容灵活的配置支持,包含了元数据,格式,链接,表格多输出格式,包含了文本,markdown,json,html,xml额外扩展,支持语言检测,gui,速度优化......
  • 基于CNN-LSTM-Attention的共享单车租赁预测研究(数据可换)(Python代码实现)基于CNN-LSTM
                        ......