机器学习中朴素贝叶斯法为什么要最大化后验概率-你还搞不懂?

本文是在看书的基础上,个人的一丢丢思考,君莫笑!

问题描述(参考李航教授的《统计学习方法》)

  • 朴素贝叶斯法将实例分到后验概率最大的类中。这等价于期望风险最小化。

  • 假设选择0-1分布,则损失函数为

    • L ( Y , f ( X ) ) = { 1 Y ≠ f ( X ) 0 Y = f ( X ) L(Y,f(X))=\left\{ \begin{aligned} 1 & & Y \neq f(X)\\ 0 & & Y = f(X) \\ \end{aligned} \right. L(Y,f(X))={10Y=f(X)Y=f(X)          ( 1 ) (1) (1)
  • 式中 f ( X ) f(X) f(X)是分类决策函数,即若分类正确则该样本点的损失为 0 0 0,若分类错误则该样本点的损失为 1 1 1

  • 因为 X , Y X,Y X,Y遵循联合分布,所以期望风险函数为

    • R e x p ( f ) = E [ L ( Y , f ( X ) ) ] = E X ∑ k = 1 K [ L ( c k , f ( X ) ) ] P ( c k | X ) R_{exp}(f)=E[L(Y,f(X))]=E_X\sum\limits_{k=1}^{K}[L(c_k,f(X))]P(c_k|X) Rexp(f)=E[L(Y,f(X))]=EXk=1K[L(ck,f(X))]P(ckX) ( 2 ) (2) (2)
  • 对每一个样本点的损失和概率的乘积进行求和就是期望风险;由于遵循联合分布,所以可以写成后面的形式:

    • E X ∑ k = 1 K [ L ( c k , f ( X ) ) ] P ( c k | X ) = ∑ i = 1 N ∑ k = 1 K [ L ( c k , f ( X i ) ) ] P ( c k | X i ) P ( X i ) ( 3 ) = ∑ i = 1 N ∑ k = 1 K [ L ( c k , f ( X i ) ) ] P ( c k , X i ) E_X\sum\limits_{k=1}^{K}[L(c_k,f(X))]P(c_k|X)\\=\sum\limits_{i=1}^{N}\sum\limits_{k=1}^{K}[L(c_k,f(X_i))]P(c_k|X_i)P(X_i) (3)\\=\sum\limits_{i=1}^{N}\sum\limits_{k=1}^{K}[L(c_k,f(X_i))]P(c_k,X_i) EXk=1K[L(ck,f(X))]P(ckX)=i=1Nk=1K[L(ck,f(Xi))]P(ckXi)P(Xi)(3)=i=1Nk=1K[L(ck,f(Xi))]P(ck,Xi)
  • 根据公式(3),应该可以清楚的看到公式(2)原来的样貌,公式(3)的最后一行也许是大家最常见的形式,每一个样本点 ( c k , X i ) (c_k,X_i) (ck,Xi)或者 ( X i , c k ) (X_i,c_k) (Xi,ck)对应着它的损失值和出现的概率 P ( c k , X i ) ( P ( c k , X i ) = P ( X i , c k ) ) P(c_k,X_i)(P(c_k,X_i)=P(X_i,c_k)) P(ck,Xi)(P(ck,Xi)=P(Xi,ck))这里的 c k c_k ck就是 Y Y Y,两个求和公式则是遍历所有样本点,所有样本点出现的概率与对应的损失值的和就是期望风险 R e x p ( f ) R_{exp}(f) Rexp(f)

  • 理解了公式(2)的含义之后,我们可以将公式进一步简化,我们的目标是让期望风险最小化,要想让期望风险最小化,那么我们只需要让每个 X = x X=x X=x E X ∑ k = 1 K [ L ( c k , f ( X ) ) ] P ( c k | X ) E_X\sum\limits_{k=1}^{K}[L(c_k,f(X))]P(c_k|X) EXk=1K[L(ck,f(X))]P(ckX)最小化;令 g ( X ) = E X ∑ k = 1 K [ L ( c k , f ( X ) ) ] P ( c k | X ) g(X)=E_X\sum\limits_{k=1}^{K}[L(c_k,f(X))]P(c_k|X) g(X)=EXk=1K[L(ck,f(X))]P(ckX)

  • 因为不同的 X = x X=x X=x取值之间是相互独立的,没有影响的,所以我们可以说最小化 R e x p ( f ) R_{exp}(f) Rexp(f)就是最小化每一个 g ( X = x ) g(X=x) g(X=x);对于 g ( X = x ) g(X=x) g(X=x)内部的求和来说,因为每个取值 P ( c k , X i ) P(c_k,X_i) P(ck,Xi)之间是相互影响的,因为 ∑ k = 1 K P ( c k , X i ) = 1 \sum\limits_{k=1}^{K}P(c_k,X_i)=1 k=1KP(ck,Xi)=1所以我们不能说最小化 R e x p ( f ) R_{exp}(f) Rexp(f)等价于最小化每一个样本点的加权损失 [ L ( c k , f ( X = x ) ) ] P ( c k | X = x ) [L(c_k,f(X=x))]P(c_k|X=x) [L(ck,f(X=x))]P(ckX=x)

  • 那现在我们的目标就是最小化 g ( X = x ) g(X=x) g(X=x)下面将解释为什么最小化期望风险就是将后验概率 P ( c k | X = x ) P(c_k|X=x) P(ckX=x)最大对应的类别作为输出(将实例分到后验概率最大的类中)

  • 两个方式解释:

    • 首先是我自己的理解,俗称瞎扯: 我们使用0-1损失函数为例(参考公式(1));根据其输出值,我们知道 P ( c k | X = x ) P(c_k|X=x) P(ckX=x)要么与1相乘保全自身,要么与0相乘灰飞烟灭;我们还知道,我们会把输入的实例分配到唯一的一个类别中(如果将实例分配到多个类别中,那将是个悲伤的故事);所以这也就是说,只有一个不幸的 P ( c k ∣ X = x ) P(c_k|X=x) P(ckX=x)会与0相乘,其他的k-1一个就只能与1相乘。所以谈到这里,你恍然大悟,只有我胡汉三才能拯救世界;所以让最大的 P ( c k ∣ X = x ) P(c_k|X=x) P(ckX=x)去乘以0,才能是的整个 g ( X ) g(X) g(X)最小。因为只有 Y = f ( X ) Y=f(X) Y=f(X)的才能与0相乘,所以 P ( c k ∣ X = x ) P(c_k|X=x) P(ckX=x)最大的,也就对应着 Y = f ( X ) Y=f(X) Y=f(X),也就对应着输出的类别。所以将实例分配到后验概率最大的类别中就等价于最小化期望风险。
    • 书上通过公式推导:
      • f ( x ) = arg ⁡ min ⁡ y ∈ Y ∑ k = 1 K L ( c k , y ) P ( c k ∣ X = x ) = arg ⁡ min ⁡ y ∈ Y ∑ k = 1 K P ( y ≠ c k ∣ X = x ) = arg ⁡ min ⁡ y ∈ Y ( 1 − P ( y = c k ∣ X = x ) ) = arg ⁡ max ⁡ y ∈ Y P ( y = c k ∣ X = x ) f(x)= \mathop{\arg\min}_{y \in Y}\sum\limits_{k=1}^KL(c_k,y)P(c_k|X=x)\\=\mathop{\arg\min}_{y \in Y}\sum\limits_{k=1}^KP(y \neq c_k|X=x)\\=\mathop{\arg\min}_{y \in Y}(1-P(y=c_k|X=x))\\=\mathop{\arg\max}_{y \in Y}P(y=c_k|X=x) f(x)=argminyYk=1KL(ck,y)P(ckX=x)=argminyYk=1KP(y=ckX=x)=argminyY(1P(y=ckX=x))=argmaxyYP(y=ckX=x)
  • 以上就是两个解释方式。

闲话

  • 鬼知道我敲这些公式敲了多久(写博客把Latex语法顺便学了也不错)
  • 今天我发现博客有一键三连的操作,不信你试试!

在这里插入图片描述
在这里插入图片描述

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值