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

网站在网络文化建设方面的成果高端网站建设那公司好

网站在网络文化建设方面的成果,高端网站建设那公司好,自己做网站外包,青岛专业做网站的公司本文将通过一个具体的例子,展示如何使用 Python 和 scikit-learn 库中的 GaussianNB 模型,对二维散点数据进行分类,并可视化分类结果。 1. 数据准备 假设我们有两个类别的二维散点数据,每个类别包含若干个点。我们将这些点分别存…

本文将通过一个具体的例子,展示如何使用 Python 和 scikit-learn 库中的 GaussianNB 模型,对二维散点数据进行分类,并可视化分类结果。

1. 数据准备

假设我们有两个类别的二维散点数据,每个类别包含若干个点。我们将这些点分别存储为 NumPy 数组,并为每个点分配一个类别标签。

import numpy as np# 类别 1 的点集
class1_points = np.array([[1.9, 1.2],[1.5, 2.1],[1.9, 0.5],[1.5, 0.9],[0.9, 1.2],[1.1, 1.7],[1.4, 1.1]])# 类别 2 的点集
class2_points = np.array([[3.2, 3.2],[3.7, 2.9],[3.2, 2.6],[1.7, 3.3],[3.4, 2.6],[4.1, 2.3],[3.0, 2.9]])# 合并数据
X = np.vstack((class1_points, class2_points))# 创建标签
y = np.array([0] * len(class1_points) + [1] * len(class2_points))

2. 训练朴素贝叶斯模型

朴素贝叶斯分类器基于贝叶斯定理,假设特征之间相互独立。GaussianNB 是一种适用于连续数值型数据的朴素贝叶斯分类器,它假设每个特征的分布符合高斯分布。

from sklearn.naive_bayes import GaussianNB# 初始化朴素贝叶斯分类器
model = GaussianNB()# 训练模型
model.fit(X, y)

3. 可视化分类结果

为了更好地理解模型的分类效果,我们可以绘制散点图,并显示决策边界。这有助于直观地观察模型如何区分两个类别。

import matplotlib.pyplot as plt# 创建网格点
x_min, x_max = X[:, 0].min() - 1, X[:, 0].max() + 1
y_min, y_max = X[:, 1].min() - 1, X[:, 1].max() + 1
xx, yy = np.meshgrid(np.arange(x_min, x_max, 0.1),np.arange(y_min, y_max, 0.1))# 预测网格点的类别
Z = model.predict(np.c_[xx.ravel(), yy.ravel()])
Z = Z.reshape(xx.shape)# 绘制决策边界和散点图
plt.contourf(xx, yy, Z, alpha=0.8)
plt.scatter(X[:, 0], X[:, 1], c=y, edgecolors='k', marker='o')
plt.xlabel('Feature 1')
plt.ylabel('Feature 2')
plt.title('Naive Bayes Decision Boundary')
plt.show()

可视化结果展示:

4. 预测新数据点

训练好的模型可以用于对新的数据点进行分类。我们将提供一些新的数据点,并使用模型预测它们的类别。

# 新数据点
new_points = np.array([[2.0, 2.0],[3.5, 3.0]])# 预测新数据点的类别
new_predictions = model.predict(new_points)
print("New points predictions:", new_predictions)

预测结果:

5. 完整代码

以下是完整的代码实现,包括数据准备、模型训练、可视化和新数据点的预测。

import numpy as np
from sklearn.naive_bayes import GaussianNB
import matplotlib.pyplot as plt# 类别 1 的点集
class1_points = np.array([[1.9, 1.2],[1.5, 2.1],[1.9, 0.5],[1.5, 0.9],[0.9, 1.2],[1.1, 1.7],[1.4, 1.1]])# 类别 2 的点集
class2_points = np.array([[3.2, 3.2],[3.7, 2.9],[3.2, 2.6],[1.7, 3.3],[3.4, 2.6],[4.1, 2.3],[3.0, 2.9]])# 合并数据
X = np.vstack((class1_points, class2_points))# 创建标签
y = np.array([0] * len(class1_points) + [1] * len(class2_points))# 初始化朴素贝叶斯分类器
model = GaussianNB()# 训练模型
model.fit(X, y)# 创建网格点
x_min, x_max = X[:, 0].min() - 1, X[:, 0].max() + 1
y_min, y_max = X[:, 1].min() - 1, X[:, 1].max() + 1
xx, yy = np.meshgrid(np.arange(x_min, x_max, 0.1),np.arange(y_min, y_max, 0.1))# 预测网格点的类别
Z = model.predict(np.c_[xx.ravel(), yy.ravel()])
Z = Z.reshape(xx.shape)# 绘制决策边界和散点图
plt.contourf(xx, yy, Z, alpha=0.8)
plt.scatter(X[:, 0], X[:, 1], c=y, edgecolors='k', marker='o')
plt.xlabel('Feature 1')
plt.ylabel('Feature 2')
plt.title('Naive Bayes Decision Boundary')
plt.show()# 新数据点
new_points = np.array([[2.0, 2.0],[3.5, 3.0]])# 预测新数据点的类别
new_predictions = model.predict(new_points)
print("New points predictions:", new_predictions)

http://www.yayakq.cn/news/196178/

相关文章:

  • 厦门维品网站建设湖南响应式网站推荐
  • 怎么修改公司网站图片开源中国
  • 哪些调查网站可以做问卷赚钱让芯片公司得到尊重的是原创技术
  • 赣州做网站公司wordpress 七牛非插件
  • wordpress 页面属性杭州seo中心
  • 专门卖建筑材料的网站健身网站建设
  • 做网站汉中app开发要多少钱
  • 河北省城乡规划建设局官方网站新手站长做什么网站
  • 重庆网站推广免费软件韩都衣舍网站建设ppt
  • 手机网站后台管理网站建设朋友圈
  • 青岛建设集团官方网站店铺设计公司
  • 梅州建设公司网站精美ppt模板下载免费
  • 个体户 做网站wordpress显示注册按钮
  • 南京制作网站多少钱公司改名字重新备案网站会停吗
  • 极简 wordpress建设网站的步骤seo
  • 新建的网站怎么做seo优化中国建设企业银行
  • 大连网站建设选高和科技工程中标公示查询怎么查
  • 福建有没有网站做一件代发小程序商店代码
  • 英文网站建设方案 ppt模板福田祥菱m
  • 家具公司网站建设手机网站如何开发
  • 网站开发主要做哪些开发一个平台
  • 17网站一起做网店普宁池尾雅晨网件官网
  • 局域网内网站建设的步骤过程网站后台发布图片upload failed
  • 做贸易 公司网站放哪里wordpress播放列表
  • 什么是营销网站建设中文网站常用字体
  • 网站自定义链接怎么做网站设计企业联系方式内容
  • html5手机企业网站模板网站建设公司的业务规划
  • 营销网站设计公司排名服务app开发的公司
  • 盘锦微商网站建设怎么用wordpress 建站
  • 山东省住房和城乡建设厅注册中心网站seo和sem是什么