《统计学习方法》极简笔记P4:朴素贝叶斯公式推导
《统计学习方法》极简笔记P4:朴素贝叶斯公式推导
朴素贝叶斯基本方法
通过训练数据集
T={(x_1,y_1),(x_2,y_2),(x_N,y_N)...,(x_1,y_1)}
学习联合概率分布P(X,Y),即学习先验概率分布
P(Y=c_k)
条件概率分布$P(X=x|Y=c_k)$
$k=1,2,...,K$
假设条件独立
$P(X=x|Y=c_k)=\prod_{j=1}^{n}P(X^{(j)}=x^{(j)}|Y=c_k)$
然后根据学习到的模型计算后验概率分布,根据贝叶斯定理
$$P(Y=c_k|X=x)=\frac{P(X=x|Y=c_k)P(Y=c_k)}{\sum_{k}P(X=x|Y=c_k)P(Y=c_k)}$$
条件概率带入,得
$$P(Y=c_k|X=x)=\frac{P(Y=c_k)\prod_{j}P(X_i^{(j)}=x^{(j)}|Y=c_k)}{\sum_{k}P(Y=c_k)\prod_{j}P(X_i^{(j)}=x^{(j)}|Y=c_k)}$$
于是,朴素贝叶斯分类器可表示为
$$y=argmax\frac{P(Y=c_k)\prod_{j}P(X_i^{(j)}=x^{(j)}|Y=c_k)}{\sum_{k}P(Y=c_k)\prod_{j}P(X_i^{(j)}=x^{(j)}|Y=c_k)}$$
又,分母对所有$c_k$都相同,so
$$y=argmaxP(Y=c_k)\prod_{j}P(X^{(j)}=x^{(j)}|Y=c_k)$$
假设采用0-1损失函数,期望风险函数为
$R_{exp}(f)=E[L(Y,f(X))]$
同样的,条件期望
$R_{exp}(f)=E_X\sum_{k=1}^{K}[L(c_k,f(X))]P(c_k|X)$
期望风险最小,只需对X=x逐个极小化
$f(x)=argmin\sum_{k=1}^{K}[L(c_k,y)]P(c_k|X)\=argmin\sum_{k=1}^{K}P(y\neq{c_k}|X=x)\=argmin\sum_{k=1}^{K}(1-P(y={c_k}|X=x))\=argmaxP(y=c_k|X=x)$
这即为朴素贝叶斯采用的原理
朴素贝叶斯算法
输入:
训练数据$T={(x_1,y_1),(x_2,y_2),...,(x_N,y_N)}$
$x_i=(x_i^{(1)},x_i^{(2)},...,x_i^{(l)})$,$x_i^{(l)}$为第i个样本的第j个特征,$a_{jl}$是第j个特征可能取得第$l$个值,j=1,2,...,n,$l=1,2,...,S_j$,$y_i\in{c_1,c_2,...,c_K}$
输出:实例$x$的分类
(1)计算先验概率及条件概率,此处取极大似然估计
$$P(Y=c_k)=\frac{\sum^{N}_{i=1}I(y_i=c_k)}{N}$$
$$P(X^{(j)}|Y=c_k)=\frac{\sum^{N}{i=1}I(x_i^{(j)}|y_i=c_k)}{\sum{i=1}^{N}I(y_i=c_k)}$$
(2)对于给定的实例,$x=(x^{(1)},x^{(2)},...,x^{(n)})^T$,计算
$$P(Y=c_k)=\prod_{j=1}^nP(X^{(j)}=x^{(j)}|Y=c_k)$$
(3)确定实例$x$的类
$$y=arg maxP(Y=c_k)\prod_{j=1}^{n}P(X^{(j)}=x^{(j)}|Y=c_k)$$
贝叶斯估计
极大似然估计存在的问题是会出现概率为0的情况,解决之道是贝叶斯估计
$$P(Y=c_k)=\frac{\sum^{N}_{i=1}I(y_i=c_k)+\lambda}{N+K\lambda}$$
$$P(X^{(j)}|Y=c_k)=\frac{\sum^{N}{i=1}I(x_i^{(j)}|y_i=c_k)+\lambda}{\sum{i=1}^{N}I(y_i=c_k)+S_j\lambda}$$
《统计学习方法》极简笔记P4:朴素贝叶斯公式推导的更多相关文章
- 《统计学习方法》极简笔记P5:决策树公式推导
<统计学习方法>极简笔记P2:感知机数学推导 <统计学习方法>极简笔记P3:k-NN数学推导 <统计学习方法>极简笔记P4:朴素贝叶斯公式推导
- 《统计学习方法》极简笔记P2:感知机数学推导
感知机模型 输入空间是$\chi\subseteq\mathbb{R}^n$,输出空间是$y={+1,-1}$ 感知机定义为:$f(x)=sign(wx+b)$ 感知机学习策略 输入空间任一点$x_0 ...
- 统计学习方法笔记 -- KNN
K近邻法(K-nearest neighbor,k-NN),这里只讨论基于knn的分类问题,1968年由Cover和Hart提出,属于判别模型 K近邻法不具有显式的学习过程,算法比较简单,每次分类都是 ...
- 统计学习方法(李航)朴素贝叶斯python实现
朴素贝叶斯法 首先训练朴素贝叶斯模型,对应算法4.1(1),分别计算先验概率及条件概率,分别存在字典priorP和condP中(初始化函数中定义).其中,计算一个向量各元素频率的操作反复出现,定义为c ...
- 我的第一个 Rails 站点:极简优雅的笔记工具-Raysnote
出于公司开发需求,这个暑假我開始搞Ruby on Rails.在业余时间捣鼓了一个在线笔记应用:http://raysnote.com.这是一个极简而优雅的笔记站点(至少我个人这么觉得的). 笔记支持 ...
- 《统计学习方法》笔记九 EM算法及其推广
本系列笔记内容参考来源为李航<统计学习方法> EM算法是一种迭代算法,用于含有隐变量的概率模型参数的极大似然估计或极大后验概率估计.迭代由 (1)E步:求期望 (2)M步:求极大 组成,称 ...
- 《统计学习方法》笔记三 k近邻法
本系列笔记内容参考来源为李航<统计学习方法> k近邻是一种基本分类与回归方法,书中只讨论分类情况.输入为实例的特征向量,输出为实例的类别.k值的选择.距离度量及分类决策规则是k近邻法的三个 ...
- 统计学习方法与Python实现(三)——朴素贝叶斯法
统计学习方法与Python实现(三)——朴素贝叶斯法 iwehdio的博客园:https://www.cnblogs.com/iwehdio/ 1.定义 朴素贝叶斯法是基于贝叶斯定理与特征条件独立假设 ...
- 统计学习方法笔记--EM算法--三硬币例子补充
本文,意在说明<统计学习方法>第九章EM算法的三硬币例子,公式(9.5-9.6如何而来) 下面是(公式9.5-9.8)的说明, 本人水平有限,怀着分享学习的态度发表此文,欢迎大家批评,交流 ...
随机推荐
- Java并发编程示例代码-----ReentrantLock
public class ReenterLock implements Runnable{ public static ReentrantLock lock=new ReentrantLock(); ...
- S标签的CheckBox显示和回显
var ytfl=document.getElementsByName("jcrwModel.ytfl"); var jg='${jcrwModel.ytfl}'; for( ...
- 使用Python调用Zabbix API
Zabbix API官方文档: https://www.zabbix.com/documentation/4.0/zh/manual/api 1.向 api_jsonrpc.php 发送HTTP_PO ...
- SQL SERVER 从其它数据库中复制带自增ID主键的表数据
SQL SERVER两个结构相同(或不同)的表,互相导入数据,方法有两种: 1.使用SQL SERVER 自带的导出.导入功能,在库名上右击,“任务”,导出数据.导入数据,这个操作具体不就不多讲了. ...
- 【零基础】神经网络优化之Adam
一.序言 Adam是神经网络优化的另一种方法,有点类似上一篇中的“动量梯度下降”,实际上是先提出了RMSprop(类似动量梯度下降的优化算法),而后结合RMSprop和动量梯度下降整出了Adam,所以 ...
- Selenium 常用JS
滑动scroll: window.scrollTo(0,document.body.scrollHeight);
- 2018-2019-2 20165114《网络对抗技术》Exp7 网络欺诈防范
Exp7 网络欺诈防范 目录 一.实验内容 二.基础问题回答 (1)通常在什么场景下容易受到DNS spoof攻击 (2)在日常生活工作中如何防范以上两攻击方法 三.实践过程记录 3.1简单应用SET ...
- Java--常用API介绍
Scanner类--键盘输入,室友起来三个步骤: 第一,导包:import java.util.Scanner 第二,创建:Scanner sc = new Scanner(System.in) 第三 ...
- OpenJudge计算概论-大象喝水
/*========================================================= 大象喝水 总时间限制: 1000ms 内存限制: 65536kB 描述 一只大象 ...
- html js 遮罩层
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...