多元线性回归实战(二元)

2024-04-07 03:48

本文主要是介绍多元线性回归实战(二元),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一:算法具体实现

import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
data=np.genfromtxt("data1.csv",delimiter=",")
x_data=data[:,:-1]
y_data=data[:,-1]
lr=0.0001
k1=k2=b=0
epoches=1000
def compute_error(k1,k2,b,x_data,y_data):totalError=0for i in range(0,len(x_data)):totalError+=(y_data[i]-(k1*x_data[i,0]+k2*x_data[i,1]+b))**2return totalError/float(len(x_data))
def function(x_data,y_data,k1,k2,b,lr,epoches):m = float(len(x_data))for i in range(epoches):k1_grad=k2_grad=b_grad=0for j in range(0,len(x_data)):b_grad+=(1/m)*((k1*x_data[j,0]+k2*x_data[j,1]+b)-y_data[j])k1_grad+=(1/m)*x_data[j,0]*((k1*x_data[j,0]+k2*x_data[j,1]+b)-y_data[j])k2_grad+=(1/m)*x_data[j,1]*((k1*x_data[j,0]+k2*x_data[j,1]+b)-y_data[j])k1-=(lr*k1_grad)k2-=(lr*k2_grad)b-=(lr*b_grad)return k1,k2,b
compute_error(k1,k2,b,x_data,y_data)
k1,k2,b=function(x_data,y_data,k1,k2,b,lr,epoches)
ax=plt.figure().add_subplot(111,projection="3d")
ax.scatter(x_data[:,0],x_data[:,1],y_data,c="r",marker="o",s=100)
x0=x_data[:,0]
x1=x_data[:,1]
x0,x1=np.meshgrid(x0,x1)
z=k1*x0+k2*x1+b
ax.plot_surface(x0,x1,z)
ax.set_xlabel("x")
ax.set_ylabel("y")
ax.set_zlabel("z")
plt.show()

 

二:sklearn调用实现

import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
from mpl_toolkits.mplot3d import Axes3D
data=np.genfromtxt("data1.csv",delimiter=",")
x_data=data[:,:-1]
y_data=data[:,-1]
model=LinearRegression()
model.fit(x_data,y_data)
LinearRegression(copy_X=True,fit_intercept=True,n_jobs=1,normalize=False)
ax=plt.figure().add_subplot(111,projection="3d")
ax.scatter(x_data[:,0],x_data[:,1],y_data,c="r",marker="o",s=100)
x0=x_data[:,0]
x1=x_data[:,1]
x0,x1=np.meshgrid(x0,x1)
z=model.coef_[0]*x0+model.coef_[1]*x1+model.intercept_
ax.plot_surface(x0,x1,z)
ax.set_xlabel("x")
ax.set_ylabel("y")
ax.set_zlabel("z")
plt.show()

这篇关于多元线性回归实战(二元)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/881568

相关文章

网页解析 lxml 库--实战

lxml库使用流程 lxml 是 Python 的第三方解析库,完全使用 Python 语言编写,它对 XPath表达式提供了良好的支 持,因此能够了高效地解析 HTML/XML 文档。本节讲解如何通过 lxml 库解析 HTML 文档。 pip install lxml lxm| 库提供了一个 etree 模块,该模块专门用来解析 HTML/XML 文档,下面来介绍一下 lxml 库

性能分析之MySQL索引实战案例

文章目录 一、前言二、准备三、MySQL索引优化四、MySQL 索引知识回顾五、总结 一、前言 在上一讲性能工具之 JProfiler 简单登录案例分析实战中已经发现SQL没有建立索引问题,本文将一起从代码层去分析为什么没有建立索引? 开源ERP项目地址:https://gitee.com/jishenghua/JSH_ERP 二、准备 打开IDEA找到登录请求资源路径位置

C#实战|大乐透选号器[6]:实现实时显示已选择的红蓝球数量

哈喽,你好啊,我是雷工。 关于大乐透选号器在前面已经记录了5篇笔记,这是第6篇; 接下来实现实时显示当前选中红球数量,蓝球数量; 以下为练习笔记。 01 效果演示 当选择和取消选择红球或蓝球时,在对应的位置显示实时已选择的红球、蓝球的数量; 02 标签名称 分别设置Label标签名称为:lblRedCount、lblBlueCount

滚雪球学Java(87):Java事务处理:JDBC的ACID属性与实战技巧!真有两下子!

咦咦咦,各位小可爱,我是你们的好伙伴——bug菌,今天又来给大家普及Java SE啦,别躲起来啊,听我讲干货还不快点赞,赞多了我就有动力讲得更嗨啦!所以呀,养成先点赞后阅读的好习惯,别被干货淹没了哦~ 🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,助你一臂之力,带你早日登顶🚀,欢迎大家关注&&收藏!持续更新中,up!up!up!! 环境说明:Windows 10

线性因子模型 - 独立分量分析(ICA)篇

序言 线性因子模型是数据分析与机器学习中的一类重要模型,它们通过引入潜变量( latent variables \text{latent variables} latent variables)来更好地表征数据。其中,独立分量分析( ICA \text{ICA} ICA)作为线性因子模型的一种,以其独特的视角和广泛的应用领域而备受关注。 ICA \text{ICA} ICA旨在将观察到的复杂信号

springboot实战学习(1)(开发模式与环境)

目录 一、实战学习的引言 (1)前后端的大致学习模块 (2)后端 (3)前端 二、开发模式 一、实战学习的引言 (1)前后端的大致学习模块 (2)后端 Validation:做参数校验Mybatis:做数据库的操作Redis:做缓存Junit:单元测试项目部署:springboot项目部署相关的知识 (3)前端 Vite:Vue项目的脚手架Router:路由Pina:状态管理Eleme

✨机器学习笔记(二)—— 线性回归、代价函数、梯度下降

1️⃣线性回归(linear regression) f w , b ( x ) = w x + b f_{w,b}(x) = wx + b fw,b​(x)=wx+b 🎈A linear regression model predicting house prices: 如图是机器学习通过监督学习运用线性回归模型来预测房价的例子,当房屋大小为1250 f e e t 2 feet^

【高等代数笔记】线性空间(一到四)

3. 线性空间 令 K n : = { ( a 1 , a 2 , . . . , a n ) ∣ a i ∈ K , i = 1 , 2 , . . . , n } \textbf{K}^{n}:=\{(a_{1},a_{2},...,a_{n})|a_{i}\in\textbf{K},i=1,2,...,n\} Kn:={(a1​,a2​,...,an​)∣ai​∈K,i=1,2,...,n

深度学习实战:如何利用CNN实现人脸识别考勤系统

1. 何为CNN及其在人脸识别中的应用 卷积神经网络(CNN)是深度学习中的核心技术之一,擅长处理图像数据。CNN通过卷积层提取图像的局部特征,在人脸识别领域尤其适用。CNN的多个层次可以逐步提取面部的特征,最终实现精确的身份识别。对于考勤系统而言,CNN可以自动从摄像头捕捉的视频流中检测并识别出员工的面部。 我们在该项目中采用了 RetinaFace 模型,它基于CNN的结构实现高效、精准的

项目实战系列三: 家居购项目 第四部分

购物车 🌳购物车🍆显示购物车🍆更改商品数量🍆清空购物车&&删除商品 🌳生成订单 🌳购物车 需求分析 1.会员登陆后, 可以添加家居到购物车 2.完成购物车的设计和实现 3.每添加一个家居,购物车的数量+1, 并显示 程序框架图 1.新建src/com/zzw/furns/entity/CartItem.java, CartItem-家居项模型 /***