当前位置: 首页 > wzjs >正文

住房与城乡建设部网站EPC搞一个公司网站得多少钱

住房与城乡建设部网站EPC,搞一个公司网站得多少钱,让移动网站,全网营销解决方案一、概述 本代码主要演示了如何使用 Python 的 numpy、matplotlib 和 sklearn 库进行简单线性回归分析。通过生成模拟数据,训练线性回归模型,对模型进行评估,并将结果可视化,帮助用户理解线性回归的基本原理和操作流程。 二、依赖…

一、概述

本代码主要演示了如何使用 Python 的 numpymatplotlib 和 sklearn 库进行简单线性回归分析。通过生成模拟数据,训练线性回归模型,对模型进行评估,并将结果可视化,帮助用户理解线性回归的基本原理和操作流程。

二、依赖库

  1. numpy:用于数值计算和数组操作,如生成随机数和处理数组数据。
  2. matplotlib.pyplot:用于数据可视化,绘制散点图和回归线。
  3. sklearn.linear_model.LinearRegression:用于创建和训练线性回归模型。
  4. sklearn.metrics.mean_squared_error 和 sklearn.metrics.r2_score:分别用于计算均方误差(MSE)和 \(R^2\) 分数,评估模型的性能。

三、代码详细解释

1. 导入必要的库

收起

python

import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error, r2_score

  • 导入 numpy 库并将其别名为 np,方便后续使用。
  • 导入 matplotlib.pyplot 库并将其别名为 plt,用于绘图。
  • 从 sklearn.linear_model 模块中导入 LinearRegression 类,用于创建线性回归模型。
  • 从 sklearn.metrics 模块中导入 mean_squared_error 和 r2_score 函数,用于评估模型性能。

2. 设置中文字体

收起

python

plt.rcParams['font.family'] = 'SimSun'

  • 设置 matplotlib 的字体为宋体,确保在绘图时可以正常显示中文。

3. 生成模拟数据

收起

python

np.random.seed(42)  # 固定随机种子
X = np.random.rand(100, 1) * 10  # 生成 100 个 0~10 之间的特征值
y = 3 * X + 5 + np.random.randn(100, 1) * 2  # y = 3x + 5 + 噪声

  • np.random.seed(42):固定随机种子,确保每次运行代码时生成的随机数相同,方便结果的复现。
  • X = np.random.rand(100, 1) * 10:使用 np.random.rand 函数生成一个形状为 (100, 1) 的数组,数组中的元素是 0 到 1 之间的随机数,然后将其乘以 10,得到 100 个 0 到 10 之间的特征值。
  • y = 3 * X + 5 + np.random.randn(100, 1) * 2:根据真实方程 \(y = 3x + 5\) 生成目标值,并添加高斯噪声(使用 np.random.randn 函数生成),模拟真实世界中的数据。

4. 创建和训练线性回归模型

收起

python

# 创建线性回归模型
model = LinearRegression()# 训练模型
model.fit(X, y)

  • model = LinearRegression():创建一个 LinearRegression 类的实例,即一个线性回归模型。
  • model.fit(X, y):使用生成的特征值 X 和目标值 y 对模型进行训练,让模型学习 X 和 y 之间的线性关系。

5. 模型预测

收起

python

# 预测
y_pred = model.predict(X)

  • y_pred = model.predict(X):使用训练好的模型对特征值 X 进行预测,得到预测的目标值 y_pred

6. 获取模型参数

收起

python

# 获取模型参数
slope = model.coef_[0][0]  # 斜率
intercept = model.intercept_[0]  # 截距

  • slope = model.coef_[0][0]:从模型的系数(斜率)数组中获取斜率值。
  • intercept = model.intercept_[0]:从模型的截距数组中获取截距值。

7. 打印模型参数和评估指标

收起

python

# 打印模型参数和评估指标
print(f"真实方程: y = 3x + 5")
print(f"学习到的方程: y = {slope:.2f}x + {intercept:.2f}")
print(f"均方误差 (MSE): {mean_squared_error(y, y_pred):.2f}")
print(f"R² 分数: {r2_score(y, y_pred):.2f}")

  • 打印真实方程和模型学习到的方程,方便对比。
  • 使用 mean_squared_error 函数计算均方误差(MSE),衡量模型预测值与真实值之间的平均误差。
  • 使用 r2_score 函数计算 \(R^2\) 分数,评估模型对数据的拟合程度,\(R^2\) 分数越接近 1 表示模型拟合效果越好。

8. 可视化结果

收起

python

# 可视化
plt.figure(figsize=(10, 6))
plt.scatter(X, y, color='blue', label='原始数据', alpha=0.6)
plt.plot(X, y_pred, color='red', linewidth=2, label='回归线')
plt.plot(X, 3*X+5, color='green', linestyle='--', label='真实关系')
plt.xlabel('X')
plt.ylabel('y')
plt.title('线性回归示例')
plt.legend()
plt.grid(True)
plt.show()

  • plt.figure(figsize=(10, 6)):创建一个大小为 (10, 6) 的图形窗口。
  • plt.scatter(X, y, color='blue', label='原始数据', alpha=0.6):绘制原始数据的散点图,颜色为蓝色,设置透明度为 0.6。
  • plt.plot(X, y_pred, color='red', linewidth=2, label='回归线'):绘制模型的回归线,颜色为红色,线宽为 2。
  • plt.plot(X, 3*X+5, color='green', linestyle='--', label='真实关系'):绘制真实的线性关系,颜色为绿色,线型为虚线。
  • plt.xlabel('X') 和 plt.ylabel('y'):设置 x 轴和 y 轴的标签。
  • plt.title('线性回归示例'):设置图形的标题。
  • plt.legend():显示图例,方便区分不同的图形元素。
  • plt.grid(True):显示网格线,增强图形的可读性。
  • plt.show():显示绘制好的图形。

四、总结

通过本代码示例,我们可以看到如何使用 sklearn 库进行简单线性回归分析,包括数据生成、模型训练、预测、评估和可视化。用户可以根据需要修改代码中的参数,如随机种子、数据规模、噪声水平等,进一步探索线性回归的特性。

完整代码

import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error, r2_scoreplt.rcParams['font.family'] = 'SimSun'# 生成模拟数据
np.random.seed(42)  # 固定随机种子
X = np.random.rand(100, 1) * 10  # 生成 100 个 0~10 之间的特征值
y = 3 * X + 5 + np.random.randn(100, 1) * 2  # y = 3x + 5 + 噪声# 创建线性回归模型
model = LinearRegression()# 训练模型
model.fit(X, y)# 预测
y_pred = model.predict(X)# 获取模型参数
slope = model.coef_[0][0]  # 斜率
intercept = model.intercept_[0]  # 截距# 打印模型参数和评估指标
print(f"真实方程: y = 3x + 5")
print(f"学习到的方程: y = {slope:.2f}x + {intercept:.2f}")
print(f"均方误差 (MSE): {mean_squared_error(y, y_pred):.2f}")
print(f"R² 分数: {r2_score(y, y_pred):.2f}")# 可视化
plt.figure(figsize=(10, 6))
plt.scatter(X, y, color='blue', label='原始数据', alpha=0.6)
plt.plot(X, y_pred, color='red', linewidth=2, label='回归线')
plt.plot(X, 3*X+5, color='green', linestyle='--', label='真实关系')
plt.xlabel('X')
plt.ylabel('y')
plt.title('线性回归示例')
plt.legend()
plt.grid(True)
plt.show()

http://www.dtcms.com/wzjs/96543.html

相关文章:

  • 电子商务网站建设毕业论文网上引流推广怎么做
  • seo是什么?seo学校培训
  • 如果做夺宝网站看广告收益的正规平台
  • 做企业网站需要什么关键词优化的方法有哪些
  • 投资建设网站培训机构专业
  • 青海省建筑信息平台优化大师官方下载
  • 培训网站建设方案书百度产品推广
  • 自己在线制作logo免费 生成器南京seo网络优化公司
  • 哪个网站可以付费做淘宝推广常用的关键词优化策略有哪些
  • 打开网站是iis7新闻摘抄四年级下册
  • 个人网站做淘宝客教程百度推广开户流程
  • 网站建设前期应该做哪些准备登录百度
  • 印刷行业网站建设免费网站建站平台
  • 江苏省建设部官方网站怎么自己建立网站
  • 自助建站平台哪个靠谱活动推广方案怎么写
  • 怎么做网站超市网站建设的流程及步骤
  • 商水县住房城乡建设网站扬州seo推广
  • 怎么做非法彩票网站吗山东移动网站建设
  • 自己怎做网站抖音企业推广
  • 接做网站需要问什么条件郑州网站顾问热狗网
  • 网站服务器放置地 网站接入服务提供单位怎么填惠州seo排名收费
  • 医院响应式网站建设方案厦门百度seo公司
  • 4网站建设哪里好点郑州网站建设推广有限公司
  • 网站开发的几个步骤长沙sem培训
  • 做购物网站怎么赚钱兰州seo外包公司
  • 营销网站开发规划清理优化大师
  • 湖南株洲网网站如何优化关键词排名
  • sns网站开发制作网站需要什么
  • 优化网站关键词营销软文500字
  • 个人备案网站做淘宝客可以用吗百度联盟