统计学习方法第四章——朴素贝叶斯法
x.1 前言
朴素贝叶斯法是基于贝叶斯定理与特征条件独立假设的分类方法。是通过给定training dataset学习联合概率分布的方法,是一种生成方法。
x.2 使用贝叶斯定理做分类
使用贝叶斯定理做分类,相比较于朴素贝叶斯即丢除特征条件独立假设这个条件。
假设存在k类 c 1 , c 2 , . . . , c k c_1, c_2, ... , c_k c1,c2,...,ck,给定一个新实例 x = x ( 1 ) , . . . , x ( n ) x=x^{(1)}, ... , x^{(n)} x=x(1),...,x(n),判断该实例来自哪一类。在判断来自哪一类即使用贝叶斯公式计算属于每一个类别的概率 P ( Y = c i ∣ X = x ) = P ( Y = c i ) P ( X = x ∣ Y = c i ) P ( X = x ) P(Y=c_i|X=x)=\frac {P(Y=c_i)P(X=x|Y=c_i)}{P(X=x)} P(Y=ci∣X=x)=P(X=x)P(Y=ci)P(X=x∣Y=ci),分母可以用全概率公式展开。接着依次计算属于每个类别的概率。
(下为贝叶斯公式:)
计算完后,取出类别概率最大的类别 c j c_j cj,则属于 c j c_j cj类。
x.3 使用朴素贝叶斯做分类
如果没理解的话,直接跳到x.6看例子。
补充一下全概率公式,已知 B 1 , . . . , B n B_1, ... , B_n B1,...,Bn是一个完备事件组且两两互斥:
在求取后验概率时,使用贝叶斯定理做变换后,得到式子 P ( Y = c i ∣ X = x ) = P ( Y = c i ) P ( X = x ∣ Y = c i ) P ( X = x ) P(Y=c_i|X=x)=\frac {P(Y=c_i)P(X=x|Y=c_i)}{P(X=x)} P(Y=ci∣X=x)=P(X=x)P(Y=ci)P(X=x∣Y=ci),分母用全概率公式展开,得到下式:
根据条件独立性假设推导条件概率展开式如下:
例如一个样本,它的特征取值是 x j ( 1 ) , . . . , x i ( n ) x_j^{(1)}, ... , x_i^{(n)} xj(1),...,xi(n)则你需要将这些值带入,就变成了上面第一行右边的式子,再根据独立性质展开即得(4.3)。
将(4.3)带入贝叶斯展开式(4.4),得到如下式子:
于是朴素贝叶斯分类器就变成了如下式:
通过观察我们可以看到对于不同大类 c k c_k ck,分母都是相同的,只要考察分子便可,于是将(4.6)化简得到如下:
我们注意到最终的后验概率=先验概率*j个条件概率乘积。
x.4 后验概率最大化的含义
后验概率最大化的概率=期望风险最小化准则。这便是朴素贝叶斯采用的原理。详见统计学习分析4.1.2。
x.5 朴素贝叶斯法的参数估计
参数估计采用了Maximum Likelihood Estimation(MLE,极大似然估计)。极大似然估计即求让似然函数最大值的参数,在一堆样本中数数即等于极大似然估计法,为什么可以看下面的推导:
使用极大似然估计法求后验概率展开式分子中的先验概率和条件概率如下:
先验概率,直接数数便可得:
条件概率,使用条件概率展开式展开成乘积的格式,再数数可得:
其中有j个特征,第j个特征有 S j S_j Sj个取值,y有k个大类。
x.6 朴素贝叶斯例子
x.7 贝叶斯估计
即在参数估计时,用贝叶斯估计代替MLE。因为在例如用女儿国做样本,估计人群中男生比例时,往往会出现所要估计的概率值为0的情况,这时候会影响到后验概率的计算结果,使分类产生偏差,所以引入贝叶斯估计,如下:
如此便不会出现概率全0的情况。
相关文章:
统计学习方法第四章——朴素贝叶斯法
x.1 前言 朴素贝叶斯法是基于贝叶斯定理与特征条件独立假设的分类方法。是通过给定training dataset学习联合概率分布的方法,是一种生成方法。 x.2 使用贝叶斯定理做分类 使用贝叶斯定理做分类,相比较于朴素贝叶斯即丢除特征条件独立假设这个条件。 …...
安装配置goaccess实现可视化并实时监控nginx的访问日志
一、业务需求 我们安装了nginx后,需要对nginx的访问情况进行监控(希望能够实时查看到访问nginx的情况),如下图所示: 二、goaccess的安装配置步骤 2.1、准备内容 需要先安装配置nginx或OpenResty - 安装 Linux环境对Nginx开源版源码下载、编译、安装、开机自启https://b…...
springboot第14集:MyBatis-CRUD讲解
注意点:增、删、改操作需要提交事务! 为了规范操作,在SQL的配置文件中,我们尽量将Parameter参数和resultType都写上! 编写Mapper接口类 import com.da.pojo.User; import java.util.List; public interface UserMapper…...
ES6新特性(1)
目录 一、字符串扩展 (1)字符串遍历器接口(for...of...) (2)模板字符串 二、字符串新增方法 (1)包含方法 (2)重复方法 (3)补全方…...
这就是二分查找?(C语言版)
大家好!我又来了,哈哈~今天我要和大家分享一种神奇的算法——二分查找!你可能会问,“二分查找有什么好玩的?”但在我看来它就像一场魔法表演,当你输入一个数,他会在一堆数中快速找到它的位置。找…...
操作系统之内存管理
连续分配 一、单一连续 直接为要运行的进程分配一个内存,只适合单任务,只能用于单对象、单任务,内存被分配为系统区和用户区,系统区在低地址,用户区是一个用户独享 二、等分分区 由于分配一个内存只能执行单任务&a…...
【Python | matplotlib】matplotlib.cm的理解以及举例说明
文章目录 一、模块介绍二、颜色举例 一、模块介绍 matplotlib.cm是Matplotlib中的一个模块,它提供了一组用于处理颜色映射(colormap)的函数和类。颜色映射是一种将数值映射到颜色的方法,常用于制作热力图、等值线图、散点图等。 …...
数据库单实例升级
一、单实例环境,全时长二个半钟多。详细图文说明到这下载 1、停止所有oracle相关进程。 Emctlstop dbconsole Isqlplusctl stop Lsnrctl stop sqlplus /nolog sql>conn /as sysdba Connectedtoanidleinstance. sql>shutdown 然后,冷备份下数据库cp…...
Photoshop如何使用选区之实例演示?
文章目录 0.引言1.利用快速选择工具抠图2.制作网店产品优惠券3.利用选区改变眼睛颜色4.抠取复杂的花束5.制作丁达尔光照效果6.利用选区调整图像局部颜色 0.引言 因科研等多场景需要进行绘图处理,笔者对PS进行了学习,本文通过《Photoshop2021入门教程》及…...
ThreadLocal的使用介绍和底层原理解析和开源框架的使用实例
文章目录 ThreadLocal的使用介绍和底层原理解析和开源框架的使用实例ThreadLocal简介ThreadLocal使用示例ThreadLocal原理解析Spring中ThreadLocal的应用小结ThreadLocal的使用步骤常见面试题案例解析(框架源码经典案例)案例实战 ThreadLocal的使用介绍和底层原理解析和开源框架…...
带你学c带你飞-P7取值范围
比特位 CPU能读懂的最小单元——比特位,bit,b 字节 内存机构的最小寻址单元——字节,Byte,B 1Byte8bit 进制 怎么算 注意:int默认是signed类型,signed类型第一位是符号位 符号位 存放signed类型的存…...
ramfs, rootfsinitramfs
什么是ramfs? ramfs是一个非常简单的文件系统,它将Linux的磁盘缓存机制(页面缓存和dentry缓存)导出为一个动态可调整大小的基于ram的文件系统。 Linux通常将所有文件缓存在内存中。从后备存储(通常是挂载文件系统的块设备)读取的数据页被保留下来,以防…...
十三届蓝桥杯研究生组国赛-最大公约数(线段树+二分)
十三届蓝桥杯研究生组国赛-最大公约数 1、问题描述2、解题思路2.1 解法一:暴力查询区间gcd(75%)2.2 解法二:线段树+二分法(AC)1、问题描述 问题描述 给定一个数组, 每次操作可以选择数组中任意两个相邻的元素 x , y x,y x,y...
数据结构——二叉树层序遍历
数据结构——二叉树层序遍历 107. 二叉树的层序遍历 II199. 二叉树的右视图思路: 637. 二叉树的层平均值 107. 二叉树的层序遍历 II 107. 二叉树的层序遍历 II 给你二叉树的根节点 root ,返回其节点值 自底向上的层序遍历 。 (即按从叶子节…...
【微机原理】8088/8086微处理器
目录 一、8088/8086的功能结构 1.总线接口部件(BIU) 2.执行部件(EU) 二、8088/8086的寄存器结构(14个) 溢出标志的概念 溢出和进位的区别 8086CPU是Intel系列的16位微处理器,他有16根数据…...
springboot第12集:DAO功能代码
在Spring Boot中,DAO是数据访问对象的缩写,它是一种设计模式用于提供对数据库操作的抽象层。通过使用DAO模式,我们可以将数据操作与业务逻辑分离,并提供一个单独的接口来执行所有的数据库操作。 在Spring Boot中,通常使…...
基于KZG多项式承诺方案的RLN
1. 引言 RLN——Rate-Limiting Nullifier为PSE团队主导的项目,源自: Barry White Hat 2019年博客 Semaphore RLN, rate limiting nullifier for spam prevention in anonymous p2p setting RLN(Rate-Limiting Nullifier)是一种…...
《站在巨人的肩膀上学习Java》
Java从诞生距今已经有28年了,在这段时间里,随着Java版本的不断迭代,Java新特性的不断出现,使得Java被使用的越来越广泛。在工程界Java语言一直是大家最喜欢的语言之一,Java一直排行在编程语言热门程度的前3名。 可想而…...
敏捷ACP.敏捷估计与规划.Mike Cohn.
第一部分 传统规划失败的原因 vs 敏捷规划有效的原因 传统的项目规划方式往往会让我们失望。要回答-一个 新产品的范围/进度/资源的组合问题,传统规划过程不一定会产生令人非常满意的答案和最终产品。以下- -些论据可以支持这个结论: ●大约2/3的项目会显著超…...
[创新工具和方法论]-01- DOE课程基础知识
文章目录 1.DOE实验设计的介绍1.1 什么是实验设计DOE?1.2 DOE的优势有哪些?1.3 如何开展DoE研究?步骤 2.DOE实验培训3.数据分析步骤4.实验的随机化5.偏差6.R方 相关系数假设检验 7.三因子二水平全因子设计 1.DOE实验设计的介绍 实验设计是一种安排实验和分析实验数…...
LeetCode-1033. 移动石子直到连续
题目链接 LeetCode-1033. 移动石子直到连续 题目描述 题解 题解一(Java) 作者:仲景 这题目挺难懂的,得画画图才能更好的理解 这也是LeetCode的尿性,习惯了,非得整这种别人看不懂的鸟语 你可以这样理解&a…...
JVM调优入门指南:掌握步骤、参数和场景
前言 作为Java开发者,我们经常需要优化应用的性能,其中JVM调优是非常重要的一部分。在本文中,我们将介绍JVM调优的一般步骤和方法,了解JVM调优参数,如堆大小、新生代比例、GC算法等参数的作用和配置方式,并…...
基于JSP+MySQL的跳蚤市场网站设计与开发
摘 要 在当今社会,网络信息已经不是什么很陌生的词汇,每天都在这个信息时代里生活着并且享受着它带来的与众不同。网络购物可以说是飞速发展的,这种购物方式逐渐的影响着人们的衣食住行。所以利用计算机实现 跳蚤市场网站设计与开发势在必行。本网站是一个校园的跳蚤市场网…...
内网穿透NPS和宝塔Nginx配合使用,开启SSL访问本地局域网网络
并非为了教学,仅供自己记录,方便下次用。所以内容不会刻意花时间写的很细节详细。 1. 服务器NPS配置 NPS install安装后,配置文件会在其他位置,通过是 /etc/nps/nps.conf目录。 找到进行修改,主要修改的是http_proxy_p…...
ToLua框架
ToLua 是一个用于在 Unity 中为 Lua 提供 C# 语言绑定的框架。通过 ToLua,你可以方便地将 C# 代码暴露给 Lua 脚本,并在 Lua 脚本中调用 C# 类、方法和属性。 更新流程 原理:使用AssetBundle进行资源的更新,而由于lua运行时才编…...
Golang-常见数据结构Map
Map map 是一种特殊的数据结构:一种元素对(pair)的无序集合,pair 的一个元素是 key,对应的另一个元素是 value,所以这个结构也称为关联数组或字典。这是一种快速寻找值的理想结构:给定 key&…...
基于空间矢量脉宽调制(SVPWM)的并网逆变器研究(Simulink)
💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...
介绍tcpdump在centos中的使用方法
tcpdump是一款强大的命令行数据包分析器,支持多种过滤和抓包参数。下面将介绍tcpdump的常用抓包参数。当需要监控CentOS系统的网络流量或者进行网络故障排查时,可以使用tcpdump来捕获数据包并进行分析。 下面介绍在CentOS中使用tcpdump的方法࿱…...
机器学习实战:Python基于DT决策树模型进行分类预测(六)
文章目录 1 前言1.1 决策树的介绍1.2 决策树的应用 2 Scikit-learn数据集演示2.1 导入函数2.2 导入数据2.3 建模2.4 评估模型2.5 可视化决策树2.6 优化模型2.7 可视化优化模型 3 讨论 1 前言 1.1 决策树的介绍 决策树(Decision Tree,DT)是一…...
操作系统之进程同异步、互斥
引入 异步性是指,各并发执行的进程以各自独立的、不可预知的速度向前推进。 但是在一定的条件之下,需要进程按照一定的顺序去执行相关进程: 举例说明1: 举例说明2: 读进程和写进程并发地运行,由于并发必然导致异步性…...
织梦cms手机网站源码/怎么交换友情链接
在ThoughtWorks的日子(第-1天) Posted on 2008-12-07 15:17 勇敢的鸵鸟 阅读(6218) 评论(22) 编辑 收藏 明天就要去报到了。今天仍然很忙,校对那本挨千刀(Google拼音居然没有这个词,山东方言,自己领会吧&a…...
wordpress 日本主题/企业网站制作要求
现在安卓手机基本上都配备了1300w像素,那么这个高的像素是不是只有在手机上拍照的功能呢?答案是否定的,这里教大家物尽其用,来弥补笔记本和usb摄像头的缺点。也就是在电脑上使用安卓手机的摄像头。从而在视频通话中使用。一、我们…...
wordpress能进后台进不去首页/网络营销实训个人总结
cad怎么画相贯线?cad图纸中需要绘制相贯线,该怎么绘制这个线呢?很简单的绘制方法, 需要使用excel辅助完成,下面我们就来看看cad相贯线的画法,需要的朋友可以参考下cad图纸需要绘制相贯线,该怎么…...
麻涌做网站/免费网站流量
命令名称:cd 命令英文原意:change directory 命令所在路径:shell内置命令 执行用户:所有用户 语法:cd [目录] 功能描述:切换目录 范例:$cd /tmp/Japan/boduo 切换到指定目录 $cd .. 回到上一级目录...
自己做电商网站吗/短视频代运营合作方案
问题出于安全原因,默认参数很严格,禁止root用户直接使用ssh登陆比如先用非root的帐户,登陆到ssh后,su成为root解决方案如果想直接用root登陆,则修改如下配置文件:vi /etc/ssh/sshd_config找到其中的如下一行…...
2003系统建网站/友情链接网站
最近项目要涉及到粉丝关注问题,权衡再三还是使用Redis实现比较方便,使用Redis的有序集合可以做到根据关注的时间有序的取出列表,假设我的ID是me,别人的ID是other。 1. 添加关注 添加关注分为两步: 1、将对方id添加到自…...