Scikit-Learn线性回归(一)

Scikit-Learn线性回归一

    • 1、线性回归概述
      • 1.1、回归
      • 1.2、线性
      • 1.3、线性回归
      • 1.4、线性回归的优缺点
      • 1.5、线性回归与逻辑回归
    • 2、线性回归的原理
      • 2.1、线性回归的定义与原理
      • 2.2、线性回归的损失函数
    • 3、Scikit-Learn线性回归
      • 3.1、Scikit-Learn库
      • 3.2、Scikit-Learn线性回归API
      • 3.3、Scikit-Learn线性回归初体验
      • 3.4、线性回归案例(波士顿房价预测)
    • 4、附录



1、线性回归概述


线性回归(Linear Regression)是很基础的机器学习算法。线性回归在机器学习知识结构中的位置如下:

在这里插入图片描述

1.1、回归


回归(Regression)是一种应用广泛的预测建模技术,这种技术的核心在于预测的结果是连续型变量

回归是监督学习中的一个重要问题,用于预测输入变量(自变量)和输出变量(因变量)之间的关系,特别是当输入变量的值发生变化时,输出变量的值随之发生的变化,回归模型正是表示从输入变量到输出变量之间映射的函数

其中,自变量表示主动操作的变量,可以看做因变量的原因。因变量因为自变量的变化而变化,可以看做自变量的结果

回归问题的学习等价于函数拟合:选择一条函数曲线,使其很好地拟合已知数据且很好地预测未知数据

回归的目的是为了预测,比如预测明天的天气温度,预测股票的走势…

回归之所以能预测是因为他通过历史数据,摸透了“套路”,然后通过这个套路来预测未来的结果

在这里插入图片描述

1.2、线性


“越…,越…”,符合这种说法的就可能是线性个关系,例如,房子越大,价格就越高

但是并非所有“越…,越…”都是线性的,例如,“充电越久,电量越高”,它就类似下面的非线性曲线:

在这里插入图片描述

线性关系不仅仅只能存在2个变量(二维平面)。3个变量时(三维空间),线性关系就是一个平面,4个变量时(四维空间),线性关系就是一个体。以此类推…

在这里插入图片描述

1.3、线性回归


线性回归本身是统计学里的概念,现在经常被用在机器学习中

在统计学中,线性回归(Linear Regression)是利用称为线性回归方程的最小平方和函数对一个或多个自变量和因变量之间关系进行建模的一种回归分析,这种函数是一个或多个被称为回归系数的模型参数的线性组合 。只有一个自变量时称为简单回归,大于一个自变量时称为多元回归

如果2个或者多个变量之间存在“线性关系”,那么我们就可以通过历史数据,摸清变量之间的“套路”,建立一个有效的模型,来预测未来的变量结果

在这里插入图片描述

1.4、线性回归的优缺点


优点:

  • 建模速度快,不需要很复杂的计算,在数据量大的情况下依然运行速度很快
  • 可以根据系数给出每个变量的理解和解释

缺点:

  • 不能很好地拟合非线性数据。所以需要先判断变量之间是否是线性关系

为什么在深度学习大杀四方的今天还使用线性回归呢?

一方面,线性回归所能够模拟的关系其实远不止线性关系。线性回归中的“线性”指的是系数的线性,而通过对特征的非线性变换,以及广义线性模型的推广,输出和特征之间的函数关系可以是高度非线性的。另一方面,也是更为重要的一点,线性模型的易解释性使得它在物理学、经济学、商学等领域中占据了难以取代的地位

1.5、线性回归与逻辑回归


线性回归和逻辑回归是2种不同的经典算法。经常被拿来做比较,下面整理了一些两者的区别:

比较项 解决问题类型 变量类型 线性关系 表达变量关系
线性回归 回归 连续 符合线性关系 直观表达变量关系
逻辑回归 分类 离散 可以不符合线性关系 无法直观表达变量关系
  • 线性回归只能用于回归问题,逻辑回归虽然名字叫回归,但是更多用于分类问题(关于回归与分类的区别参考文章:传送门)
  • 线性回归要求因变量是连续性数值变量,而逻辑回归要求因变量是离散的变量
  • 线性回归要求自变量和因变量呈线性关系,而逻辑回归不要求自变量和因变量呈线性关系
  • 线性回归可以直观的表达自变量和因变量之间的关系,逻辑回归则无法表达变量之间的关系

2、线性回归的原理

2.1、线性回归的定义与原理


线性回归的定义及原理推导详见文章:传送门

2.2、线性回归的损失函数


损失函数(Loss Function),也称成本函数(Cost Function),描述的是模型的预测值与真实值的差异,并将这种差异映射为非负实数以表示模型可能带来的“风险”或“损失”。机器学习中将损失函数作为模型拟合好坏的评判准则,并通过最小化损失函数求解和评估模型

在多元线性回归中,其损失函数定义如下:
L = ∑ i = 1 m ( y i − f ( x i ) ) 2 L=\sum_{i=1}^m(y_i-f(x_i))^2 L=i=1m(yif(xi))

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/273556.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Spring-2-配置和Springboot

bean的生命周期 挂钩到bean的创建 通过了解初始化的时间,bean可以检查是否满足其所需的所有依赖项。 尽管Spring可以帮助我们检查依赖项,但它几乎是一种全有或全无的方法,并且不会提供任何机会来将其他逻辑应用于依赖项的解析过程中。 假设…

JavaWeb的Servlet的入门和使用方法

1 什么是Servlet Servlet是Server Applet的简称,是用Java编写的是运行在 Web 服务器上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层。使用 Servlet,可以收集来自网页表单的用户输…

猴子目标检测数据集VOC格式1300张

猴子是一种充满活力和灵巧的灵长类动物,分布广泛,生活在世界各地的热带雨林、草原、沼泽和山区。猴子通常以水果、坚果、种子、昆虫和植物叶子为食,它们拥有灵敏的双手和手指,可以灵活地采摘食物。猴子的智商相当高,有…

杜邦6150up同级抛光树脂:生产超纯水的关键

超纯水的制备不仅对单晶硅电池的制造至关重要,而且对整个清洁能源领域的发展具有深远影响。随着全球对可再生能源的需求不断增长,提高太阳能电池的效率和降低成本已成为当务之急。超纯水的使用直接关系到电池的性能和寿命,因此,掌…

家校互通小程序实战开发02首页搭建

目录 1 创建应用2 搭建首页总结 我们上一篇介绍了家校互通小程序的需求,创建了对应的数据源。有了这个基础的分析之后,我们就可以进入到开发阶段了。开发小程序,先需要创建应用。 1 创建应用 登录控制台,点击创建应用&#xff0c…

【译文】IEEE白皮书 6G 太赫兹技术的基本原理 2023版

第一章 简介 太赫兹波是介于微波和光波之间的光谱区域,频率从 0.1THz ~ 10THz 之间,波长在 3mm ~ 30μm 之间。提供大块连续的频带范围以满足对 Tbit/s 内极高数据传输速率的需求,使该区域成为下一代无线通信(6G)的重…

ARCGIS PRO SDK GeometryEngine处理独立几何图形的函数

1、面积类:pol为Polygon 1).Area:获取几何图形的面积。这是使用二维笛卡尔数学来计算面积的平面测量 double d GeometryEngine.Instance.Area(pol) 2).GeodesicArea:获取几何图形的椭球面积 …

FPGA-AMBA协议、APB协议、AHB规范、AXI4协议规范概述及它们之间的关系

FPGA-AMBA协议、APB协议、AHB协议、AXI4协议规范概述 笔记记录,AMBA协议、APB协议、AHB规范、AXI4协议规范概述,只是概述描述,具体详细的协议地址传输、数据传输等内容将在下一章节详细说明。 文章目录 FPGA-AMBA协议…

爬虫系列----Python解析Json网页并保存到本地csv

Python解析JSON 1 知识小课堂1.1 爬虫1.2 JSON1.3 Python1.4 前言技术1.4.1 range1.4.2 random1.4.3 time.sleep1.4.4 with open() as f: 2 解析过程2.1 简介2.2 打开调试工具2.3 分析网址2.3.1 网址的规律2.3.2 网址的参数 2.4 爬取第一页内容2.5 存入字典并获取2.6 循环主体数…

【LeetCode刷题笔记(13-1)】【Python】【回文数】【反转整数】【简单】

文章目录 引言回文数题目描述提示 题意分析解决方案1:【反转字符串】解决方案2:【反转整数】题外话结束语 9. 回文数 引言 编写通过所有测试案例的代码并不简单,通常需要深思熟虑和理性分析。虽然这些代码能够通过所有的测试案例&#xff0…

blender scripting 编写

blender scripting 编写 一、查看ui按钮对应的代码二、查看或修改对象名称三、案例:渲染多张图片并导出对应的相机参数 一、查看ui按钮对应的代码 二、查看或修改对象名称 三、案例:渲染多张图片并导出对应的相机参数 注:通过ui交互都设置好…

基于springboot+vue的教材管理系统(前后端分离)

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目介绍…

windows操作系统蓝屏错误日志分析日志通用方法全网唯一程序员必学技能

windows11操作系统蓝屏错误分析日志通用方法全网唯一程序员必学技能 一、背景介绍 本人是一个老程序员,DBA,架构师,开发工作10年了,我们平常用的开发电脑以及游戏电脑时不时会遇到操作系统突然蓝屏,一般情况下都是一…

C++力扣题目232--用栈实现队列

请你仅使用两个栈实现先入先出队列。队列应当支持一般队列支持的所有操作(push、pop、peek、empty): 实现 MyQueue 类: void push(int x) 将元素 x 推到队列的末尾int pop() 从队列的开头移除并返回元素int peek() 返回队列开头…

ThingsBoard 3.4 -- 规则链使用

规则链的使用 创建规则链 调试模式用于调试日志的输出,测试阶段建议选择 配置规则 点击规则链,进入详情页面 打开规则链进行规则配置 规则链节点类型分为6类,每一类下面又包含多个小类 过滤器/筛选器:过滤器节点用于消息过滤…

springboot对接WebSocket实现消息推送

1.修改pom文件 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId></dependency> 2.增加配置WebSocketConfig.java import org.springframework.context.annotation.Bean…

网络隔离后,怎样建立高效安全的数据安全交换通道?

数据安全对企业生存发展有着举足轻重的影响&#xff0c;数据资产的外泄、破坏都会导致企业无可挽回的经济损失和核心竞争力缺失。数据流动才能让其释放价值&#xff0c;想要保护企业核心资产&#xff0c;就要实现数据安全交换。 很多企业为了防止知识产权、商业机密数据泄露&am…

2023安洵杯-秦岭防御军wp

reverse 感觉有点点简单## import base64 def ba64_decode(str1_1):mapp "4KBbSzwWClkZ2gsr1qAQu0FtxOm6/iVcJHPY9GNp7EaRoDf8UvIjnL5MydTX3eh"data_1 [0] * 4flag_1 [0] * 3for i in range(32, 127):for y in range(32, 127):for k in range(32, 127):flag_1[0]…

【目标跟踪】解决多目标跟踪遮挡问题

文章目录 前言一、判定遮挡目标二、扩展目标框三、结论 前言 目标跟踪在发生遮挡时&#xff0c;极其容易发生Id Switch。网上许多算法忽视跟踪遮挡问题,同时网上相关资料也很少。博主为了解决跟踪遮挡&#xff0c;翻阅大量论文。分享其中一篇论文。论文链接&#xff1a;https:…

dl转置卷积

转置卷积 转置卷积&#xff0c;顾名思义&#xff0c;通过名字我们应该就能看出来&#xff0c;其作用和卷积相反&#xff0c;它可以使得图像的像素增多 上图的意思是&#xff0c;输入是22的图像&#xff0c;卷积核为22的矩阵&#xff0c;然后变换成3*3的矩阵 代码如下 import…
最新文章