线性回归例子, 学习笔记[机械学习]

参考书籍, [pythonによる機械学習入門]

y = ax + b

# 直线的线性回归
import numpy as np
import matplotlib.pyplot as plt
# 求最小二乘法的回归直线,用到的库
from sklearn import linear_model

# x 和 y的单点图
x = np.random.rand(100, 1)
x = x*4-2
y = 3*x-2
# 增加一部分乱数
y += np.random.rand(100,1)

# 针对x和y的关系,求最小二乘法的回归直线
model = linear_model.LinearRegression()
model.fit(x,y)

plt.scatter(x,y,marker="+")
plt.scatter(x, model.predict(x),marker="o", color="red")
plt.show()

# 系数a
print(model.coef_)
# 系数b
print(model.intercept_)
# y = ax + b

# 评价此结果的好坏
# 决定函数
# 利用.score
r2 = model.score(x,y)
print(r2)

结果显示

[[3.05728369]]
[-1.51529741]
0.9948594876817095在这里插入图片描述

例子2, y = ax^2 + b

# curve的线性回归
import numpy as np
import matplotlib.pyplot as plt
# 求最小二乘法的回归直线,用到的库
from sklearn import linear_model

# x 和 y的单点图
x = np.random.rand(100, 1)
x = x*4-2
y = 3*x**2-2
# 增加一部分乱数
y += np.random.rand(100,1)

# 针对x和y的关系,求最小二乘法的回归直线
model = linear_model.LinearRegression()
model.fit(x**2,y)

plt.scatter(x,y,marker="+")
plt.scatter(x, model.predict(x**2),marker="o", color="red")
plt.show()

# 系数a
print(model.coef_)
# 系数b
print(model.intercept_)
# y = ax^2 + b

# 评价此结果的好坏
# 决定函数
# 利用.score
r2 = model.score(x**2,y)
print(r2)

结果显示在这里插入图片描述

[[3.03815042]]
[-1.52132139]
0.9935150252625474

例子3, y = ax + bx^2 + c

# 多项式
import numpy as np
import matplotlib.pyplot as plt
# 求最小二乘法的回归直线,用到的库
from sklearn import linear_model

# x 和 y的单点图
x1 = np.random.rand(100, 1)
x1 = x1*4-2

x2 = np.random.randn(100, 1)
x2 = x2*4-2

y = 3*x1 - 2*x2 +1
y += np.random.randn(100,1)

# 将x1和x2变形成 [x1_1. x2_1], [x1_2, x2_2], ... , [x1_100, x2_100]
x1_x2 = np.c_[x1, x2]

# 针对x和y的关系,求最小二乘法的回归直线
model = linear_model.LinearRegression()
model.fit(x1_x2, y)

# 求回归方程
y_ = model.predict(x1_x2)

plt.subplot(1,2,1)
plt.scatter(x1, y, marker='o', color='r')
plt.scatter(x1, y_, marker='+', color='g')
plt.xlabel("x1")
plt.ylabel("y")

plt.subplot(1,2,2)
plt.scatter(x2, y, marker='*', color='g')
plt.scatter(x2, y_, marker='o', color="r")
plt.xlabel("x2")
plt.ylabel("y")

plt.tight_layout()
plt.show()

print(model.coef_)
print(model.intercept_)

print(model.score(x1_x2, y))

结果显示在这里插入图片描述

[[ 2.92509275 -1.98489962]]
[1.07002238]
0.9799634352422834

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

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

相关文章

LLVM Cpu0 新后端10

想好好熟悉一下llvm开发一个新后端都要干什么,于是参考了老师的系列文章: LLVM 后端实践笔记 代码在这里(还没来得及准备,先用网盘暂存一下): 链接: https://pan.baidu.com/s/1V_tZkt9uvxo5bnUufhMQ_Q?…

[图解]企业应用架构模式2024新译本讲解12-领域模型5

1 00:00:00,560 --> 00:00:04,690 刚才是往那个表里面添加数据了 2 00:00:04,700 --> 00:00:07,960 相当于,或者往这个合同里面添加数据了 3 00:00:08,430 --> 00:00:09,530 现在要查询怎么办 4 00:00:09,900 --> 00:00:10,930 跟前面一样 5 00:00:…

JDK下载安装Java SDK

Android中国开发者官网 Android官网 (VPN翻墙) 通过brew命令 下载OracleJDK(推荐) 手动下载OracleJDK(不推荐) oracle OracleJDK下载页 查找硬件设备是否已存在JDK环境 oracle官网 备注: JetPack JavaDevelopmentKit Java开发的系统SDK OpenJDK 开源免费SDK …

6路以太网,8路串行接口,继电器、DI、IRIG-B等多路通讯及控制接口,并支持蓝牙、GPS、北斗、Wifi、2G/3G/4G等功能

●是基于ARM Cortex™-A9的嵌入式产品,主频高达四核1.2GHz,实现了HD级别的视频加速器并通过全新的集成电源管理解决方案实现最佳的节能效果。 硬件集成了6路以太网,8路串行接口,继电器、DI、IRIG-B等多路通讯及控制接口&#xff0…

最值,反转数组——跟之前的差不多

文章目录 数组最值感悟改进 反转数组问题 代码改进 数组最值 package com.zhang; /*求数组最大最小值*/ public class test_arr1 {public static void main(String[] args) {int[] arr {10,66,42,8,999,1};max(arr);min(arr);}public static int max(int[] arr){int max arr…

新增FTP功能、支持添加Redis远程数据库,专业版新增网站监控和黑金主题,1Panel开源面板v1.10.10版本发布

2024年6月7日,现代化、开源的Linux服务器运维管理面板1Panel发布v1.10.10版本。 在这一版本中,1Panel新增了多项实用功能。社区版方面,新增了FTP功能、支持添加Redis远程数据库、支持设置压缩密码,并新增了清理镜像构建缓存的功能…

倩女幽魂搬砖攻略:云手机自动托管搬砖刷本选哪家云手机?

欢迎来到《倩女幽魂手游》的世界,一个充满江湖恩怨的世界。在这个游戏中,你将扮演各个门派中的不同职业,踏上一段属于你自己的江湖之路。本攻略将为你详细介绍如何利用多开挂机搬砖,快速提升自己的实力,成为江湖中的一…

002-链路聚合

链路聚合 链路聚合是一个重要的计算机网络术语,它涉及将多个物理端口汇聚在一起,形成一个逻辑端口,从而增加网络带宽、实现链路传输的弹性和工程冗余。 定义与基本原理 定义:链路聚合(英语:Link Aggrega…

python数据分析-连云港石化基地2023年用电量分析

接下来对连云港石化基地2023年用电量进行分析,首先导入数据分析基本的包: import pandas as pd import matplotlib.pyplot as plt# Load the data from the provided Excel files file_path1 data1.xlsx file_path2 data2.xlsxdata1 pd.read_excel(f…

轻松构建聊天机器人,大模型 RAG 有了更强大的AI检索器

节前,我们星球组织了一场算法岗技术&面试讨论会,邀请了一些互联网大厂朋友、参加社招和校招面试的同学。 针对算法岗技术趋势、大模型落地项目经验分享、新手如何入门算法岗、该如何准备、面试常考点分享等热门话题进行了深入的讨论。 合集&#x…

【机器学习300问】109、什么是岭回归模型?

在进行回归任务时间,可以能会遇到特征数量多于观测数量或某些特征变量之间相关性较高(几乎线性相关)时,标准的线性回归模型的系数估计可能非常不精确,可以理解成独立方程个数小于未知数个数此时方程有无穷多解。 例如&…

基于SVPWM矢量控制的无速度传感器电机控制系统simulink建模与仿真

目录 1.课题概述 2.系统仿真结果 3.核心程序与模型 4.系统原理简介 5.完整工程文件 1.课题概述 基于SVPWM矢量控制的无速度传感器电机控制系统simulink建模与仿真,包括电机,SVPWM模块,矢量控制器模块等。 2.系统仿真结果 3.核心程序与模…

ChatGPT为啥不用Websocket而是EventSource?

点击下方“JavaEdge”,选择“设为星标” 第一时间关注技术干货! 免责声明~ 任何文章不要过度深思! 万事万物都经不起审视,因为世上没有同样的成长环境,也没有同样的认知水平,更「没有适用于所有人的解决方案…

《精通ChatGPT:从入门到大师的Prompt指南》第9章:实战练习

第9章:实战练习 9.1 Prompt练习题 在本节中,我们将提供一系列练习题,旨在帮助读者通过实际操作提升使用ChatGPT的能力。这些练习题涵盖了从基础到高级的不同难度级别,并针对各种应用场景设计,确保读者能够在实际使用…

山东大学软件学院项目实训-创新实训-基于大模型的旅游平台(三十一)- 微服务(11)

12.7 DSL查询语法 查询的基本语法 GET /indexName/_search{"query": {"查询类型": {"查询条件": "条件值"}}} 查询所有 GET /hotel/_search{"query": {"match_all": {}}} 12.7.1 全文检索查询 全文检索查询,会…

【Vue3-Element-Admin 动态路由】涉及到的配置

Vue3-Element-Admin 动态路由 涉及到的配置 0. Vue3-Element-Admin 项目地址1. router/index.ts2. Mock接口模拟数据3. store/permission4. api/menu5. plugins/permission 这篇文章讲的主要是 Vue3-Element-Admin 差不多内置的动态路由配置 (根据后端接口渲染) 先把开发环境&a…

Hive on Spark版本兼容性

Hive on Spark仅在特定版本的Spark上进行测试,因此给定版本的Hive只能保证与特定版本的Spark一起工作。其他版本的Spark可能与给定版本的Hive一起工作,但不能保证。以下是Hive版本及其对应的Spark版本列表: 详情参考官方文档:http…

11.Spring AOP

文章目录 1.什么是 Spring AOP?2.为什要用 AOP?3.Spring AOP 应该怎么学习呢?3.1 AOP 组成3.1.1 切⾯(Aspect) 切点 通知3.1.2 连接点(Join Point)3.1.3 切点(Pointcut)…

53.ReentrantLock原理

ReentrantLock使用 ReentrantLock 实现了Lock接口, 内置了Sync同步器继承了AbstractQueuedSynchronizer。 Sync是抽象类,有两个实现NonfairSync非公平,FairSync公平。 所以ReentrantLock有公平锁和非公平锁。默认是非公平锁。 public sta…

[数据集][目标检测]足球场足球运动员身份识别足球裁判员数据集VOC+YOLO格式312张4类别

数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):312 标注数量(xml文件个数):312 标注数量(txt文件个数):312 标注类别…