无涯教程-分类算法 - 朴素贝叶斯

news2024/11/15 12:03:03

朴素贝叶斯算法是一种基于应用贝叶斯定理的分类技术,其中强烈假设所有预测变量彼​​此独立。简而言之,假设是某个类中某个要素的存在独立于同一类中其他任何要素的存在。

在贝叶斯分类中,主要的兴趣是找到后验概率,即给定某些观察到的特征的标签的概率。借助贝叶斯定理,无涯教程可以将其定量表示为:

                         P(L|features)=P(L)P(features|L)P(features)

Python库,Scikit learning是最有用的库,可帮助在Python中创建Naive Bayes模型。在Scikit学习Python库下,具有以下三种朴素贝叶斯模型:

高斯朴素贝叶斯

它是最简单的朴素贝叶斯分类器,假设每个标签的数据均来自简单的高斯分布。

多项式朴素贝叶斯

另一个有用的朴素贝叶斯分类器是多项朴素贝叶斯,其中的特征假定是从简单的多项式分布中得出的,这种朴素的贝叶斯最适合代表离散计数的函数。

伯努利·朴素贝叶斯

另一个重要模型是伯努利·朴素贝叶斯(BernoulliNaïveBayes),其中的特征被假定为二进制(0和1)。

根据无涯教程的数据集,可以选择上述任何朴素贝叶斯模型。在这里,正在用Python实现高斯朴素贝叶斯模型-将从所需的导入开始,如下所示:

import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns; sns.set()

现在,通过使用 Scikit learning 的 make_blobs()函数,可以生成具有高斯分布的点的斑点,如下所示:

from sklearn.datasets import make_blobs
X, y=make_blobs(300, 2, centers=2, random_state=2, cluster_std=1.5)
plt.scatter(X[:, 0], X[:, 1], c=y, s=50, cmap=summer);

接下来,对于使用 GaussianNB 模型,需要导入并使其对象如下:

from sklearn.naive_bayes import GaussianNB
model_GBN=GaussianNB()
model_GNB.fit(X, y);

现在,必须进行预测。可以在生成一些新数据之后执行以下操作-

rng=np.random.RandomState(0)
Xnew=[-6, -14] + [14, 18] * rng.rand(2000, 2)
ynew=model_GNB.predict(Xnew)

接下来,正在绘制新数据以查找其边界-

plt.scatter(X[:, 0], X[:, 1], c=y, s=50, cmap=summer)
lim=plt.axis()
plt.scatter(Xnew[:, 0], Xnew[:, 1], c=ynew, s=20, cmap=summer, alpha=0.1)
plt.axis(lim);

现在,借助以下代码行,无涯教程可以找到第一个和第二个标签的后验概率-

yprob=model_GNB.predict_proba(Xnew)
yprob[-10:].round(3)
array([[0.998, 0.002],
   [1. , 0. ],
   [0.987, 0.013],
   [1. , 0. ],
   [1. , 0. ],
   [1. , 0. ],
   [1. , 0. ],
   [1. , 0. ],
   [0. , 1. ],
   [0.986, 0.014]])

分类算法 - 朴素贝叶斯 - 无涯教程网无涯教程网提供朴素贝叶斯算法是一种基于应用贝叶斯定理的分类技术,其中强烈假设所有预测变量彼​​此...https://www.learnfk.com/python-machine-learning/machine-learning-with-python-classification-algorithms-naive-bayes.html

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

抽象类和接口有什么区别?

在 Java 中,抽象类和接口是两种不同的类类型。它们都不能直接实例化,并且它们都是用来定义一些基本的属性和方法的,但它们有以下几点不同: 定义不同:定义的关键字不同,抽象类是 abstract,而接口…

Linux操作系统--包管理yum

1.概述 YUM(全称为 Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及 CentOS中的 Shell 前端软件包管理器。基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。…

软考:中级软件设计师:数据库并发控制,完整性约束,数据库安全

软考:中级软件设计师:数据库并发控制 提示:系列被面试官问的问题,我自己当时不会,所以下来自己复盘一下,认真学习和总结,以应对未来更多的可能性 关于互联网大厂的笔试面试,都是需要细心准备的…

CrossOver 23 新功能介绍 CrossOver 23 版本更新了哪些功能

本次发布的CrossOver 23为用户带来了许多令人期待的新功能和优化,特别是对游戏方面的支持,更是让广大Mac游戏玩家兴奋。CrossOver 23包括对Wine 8.0.1的更新,带来了5000多处改动,对各种应用程序进行了改进。该版本还包括 Wine Mon…

AD9361配置采用纯PL方式,QT编写的小软件可以快速实现

采用ADI官方的API函数,虽然能够快速的实现AD9361配置,让我们不必关注9361的内部寄存器的配置过程,但是在实际的项目开发过程中,也在一定程度上限制了AD9361与PL之间数据交互的灵活性。 今天给大家推荐采用AD9361官方提供的配置软…

Linux操作系统--克隆虚拟机

1.概述 我们在搭建大数据或者是集群的过程中,需要使用到许多配置相同或者相类似的环境。这一个时候就需要使用到克隆虚拟机的功能。 2.克隆虚拟机过程 (1).从现有虚拟机(关机状态)克隆出新虚拟机,右键选择管理=>克隆,如下所示 (2).直接点击下一步。如下所示 (3).选择…

什么是浮动(float)?请解释清楚浮动对父元素和兄弟元素的影响。

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 浮动(Float)⭐ 浮动对父元素的影响⭐ 浮动对兄弟元素的影响⭐ 写在最后 ⭐ 专栏简介 前端入门之旅:探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 欢迎来到前端入…

Centos8的NAT网络设置

1、先将虚拟机设置为NAT模式 2、打开虚拟网络编辑器,记录以下信息 NAT设置:子网掩码、网关 DHCP设置:I P 范围 (自动时) 3、进入Centos8的网络设置页面,按照记录的信息进行配置 4、重载、重启网卡 nmcli c reload ensl60 n…

什么是字体图标(Icon Font)?如何在网页中使用字体图标?

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 字体图标(Icon Font)⭐ 如何在网页中使用字体图标⭐ 写在最后 ⭐ 专栏简介 前端入门之旅:探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 欢迎来到前端入门之旅&a…

Linux操作系统--常用指令(系统定时任务)

(1).概述 在实际的运维过程中,这一个功能使用的还是很多,比如,我们需要在定点的时候进行系统的备份、清理、存盘等工作。这一个时候就需要使用系统定时任务。 (2).查看crontab是否开启 (3). crontab 定时任务设置 功能:设置定时的任务 语法: crontab [选项] 选项: -e 编…

《向量数据库指南》——什么叫“AI 向量数据库”,它和我们日常理解的数据库有什么不同?

我认为"AI 向量数据库"这个概念非常切合实际,它类似于关系数据库在交易领域的作用。个人观点是,向量数据库实际上是为了人工智能而生的。一方面,向量数据库的数据完全源自于人工智能技术。另一方面,对于 AI 应用而言,向量数据库也是至关重要的基础设施。 至于…

【CSS】CSS 背景设置 ( 背景半透明设置 )

一、背景半透明设置 1、语法说明 背景半透明设置 可以 使用 rgba 颜色值设置半透明背景 ; 下面的 CSS 样式中 , 就是 设置黑色背景 , 透明度为 20% ; background: rgba(0, 0, 0, 0.2);颜色的透明度 alpha 取值范围是 0 ~ 1 之间 , 在使用时 , 可以 省略 0.x 前面的 0 , 直接…

美国慌了,满世界找稀土替代却找不到,最终还是得求中国

中国先后对稀土、镓、锗等稀有金属材料的出口采取限制措施,美国一开始并不慌,毕竟全球还有美国自己、澳大利亚、蒙古等国家拥有稀土矿藏,因此美国以为可以迅速找到替代,然而如今却发现事情并不简单。 中国占有的稀土矿藏确实不算最…

Cesium 在绘制带有箭头的线时,出现绘制不完整情况

文章目录 问题分析解决 问题 如图所示,在绘制带有箭头的线时,出现绘制不完整情况 分析 depthTestAgainstTerrain 属性的设置问题。 属性为true之后,相对于地形表面绘制,所以有地形的时候,会被地形的高程遮挡&#xf…

Hbase-技术文档-java.net.UnknownHostException: 不知道这样的主机。 (e64682f1b276)

问题描述: 在使用spring-boot操作habse的时候,在对habse进行操作的时候出现这个问题。。 报错信息如下: 第一段报错: 第二段报错: java.net.UnknownHostException: e64682f1b276 问题定位解读: 错误 ja…

【系统】win11怎么退回win10

根据微软官方提供的回滚方案显示,在升级Win11之后的10天之内,用户可以通过系统恢复选项将Win11还原Win10。操作方式也比较简单,大家可以打开系统设置,找到相应选项,选择并确认后即可轻松将Win11回退早期版本。详细操作…

计算机毕业设计 游戏账号租赁交易系统 微信小程序

本文从管理员、用户、卖家的功能要求出发,游戏账号租赁小程序中的功能模块主要是实现首页、个人中心、用户管理、卖家管理、游戏中心管理、租赁信息管理、交易信息管理、账号申诉管理、退款信息管理、账号绑定管理、游戏类型管理、论坛管理、系统管理。经过认真细致…

java- ConcurrentHashMap 并发

1. ConcurrentHashMap 并发 1.1. 减小锁粒度 减小锁粒度是指缩小锁定对象的范围,从而减小锁冲突的可能性,从而提高系统的并发能力。减小锁粒度是一种削弱多线程锁竞争的有效手段,这种技术典型的应用是 ConcurrentHashMap(高性能的 HashMap)…

上市公司环境信息披露(含环境负债、管理、监管、业绩与治理披露,2008-2022)

数据简介:环境信息披露是督促企业履行社会责任,推动国民经济社会全面绿色转型和加快实现“双碳”目标的重要抓手。环境信息披露理论缘起于社会责任理论,发展于合法性理论、利益相关者理论、制度理论和信号传递理论等。 结合相关理论&#xf…

计算机毕业设计 志愿者服务系统 微信小程序设计与开发

本课题要求实现一套微信小程序志愿者服务管理,系统主要包括(管理员,志愿者和团体管理者)三个模块等功能。 。系统选用java语言,应用ssm框架, MySQL为后台数据库。系统主要包括首页、个人中心、志愿者管理、…