详解线性分类-朴素贝叶斯分类器(Naive Bayes Classifer)白板推导系列笔记
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了详解线性分类-朴素贝叶斯分类器(Naive Bayes Classifer)白板推导系列笔记相关的知识,希望对你有一定的参考价值。
朴素贝叶斯是对数据属性之间的关系进行了假设,即各个属性维度之间独立。
作者:rushshi
链接:高斯判别分析(GDA)和朴素贝叶斯(NB)_rushshi的博客-CSDN博客
$$
\\begingathered
\\left(x_i,y_i)\\righti=1^N,xi\\in \\mathbbR^p,y_i\\in \\left0,1\\right
\\endgathered
$$
朴素贝叶斯假设每一个维度都是独立的,则有
$$
\\beginaligned
p(x_1,\\cdots ,x_p|y)&=p(x_1|y)p(x_2|y,x_1)\\cdots p(x_p|y,x_1,\\cdots ,x_p-1)\\
&根据朴素贝叶斯假设各个维度独立\\
&=p(x_1|y)p(x_2|y)\\cdots p(x_p|y)\\
&=\\prod\\limits_j=1^pp(x_j|y)
\\endaligned
$$
这里需要先假设
$$
\\beginaligned
y &\\sim B(1,\\phi_y)\\
&\\Rightarrow p(y)=\\phi^y(1-\\phi)^1-y\\
p(x_j=1|y=0)&=\\phi_j|y=0\\
p(x_j=1|y=1)&=\\phi_j|y=1\\
\\phi_j|y&=\\phi_j|y=1^y\\phi_j|y=0^1-y\\
p(x_j|y)&=\\phi_j|y^x_j(1-\\phi_j|y)^1-x_j
\\endaligned
$$
对数似然函数
$$
\\beginaligned
L(\\phi_y,\\phi_j|y=0,\\phi_j|y=1)&=\\log \\prod\\limits_i=1^Np(x_i,y_i)\\
&=\\log \\prod\\limits_i=1^Np(x_i|y_i)p(y_i)\\
&=\\log \\prod\\limits_i=1^N\\left(\\prod\\limits_j=1^pp(x_ij|y_i)\\right) p(y_i)\\
&=\\sum\\limits_i=1^N\\left[\\log p(y_i)+\\sum\\limits_j=1^p\\log p(x_ij|y_i)\\right]\\
&=\\sum\\limits_i=1^N\\left[\\underbracey_i\\log \\phi_y+(1-y_i)\\log (1-\\phi_y)(1)+\\underbrace\\sum\\limitsj=1^p[(x_ij\\log \\phi_j|y_i)+(1-x_ij)\\log (1-\\phi_j|y_i)]_(2)\\right]
\\endaligned
$$
对于$\\phi_j|y=0$有
$$
\\beginaligned
(2)&=\\sum\\limits_j=1^p[(x_ij\\log \\phi_j|y_i)+(1-x_ij)\\log (1-\\phi_j|y_i)]\\
&=\\sum\\limits_j=1^p[x_ij\\log \\phi_j|y=01\\lefty_i=0\\right+(1-x_ij)\\log(1- \\phi_j|y=0)1\\lefty_i=0\\right]\\
\\frac\\partial (2)\\partial \\phi_j|y=0&=\\sum\\limits_j=1^p\\left[x_ij \\frac1\\phi_j|y=01\\lefty_i=0\\right-\\left(1-x_ij\\right) \\frac11-\\phi_j|y=01\\lefty_i=0\\right\\right]=0\\
0&=\\sum\\limits_j=1^p[(x_ij-\\phi_j|y=0)1\\lefty_i=0\\right]\\
0&=\\sum\\limits_j=1^p(x_ij\\cdot 1\\lefty_i=0\\right)-\\phi_j|y=0\\sum\\limits_j=1^p1 \\lefty_i=0\\right\\
0&=\\sum\\limits_j=1^p1\\leftx_ij=1\\land y_i=0\\right-\\phi_j|y=0\\sum\\limits_j=1^p1\\lefty_i=0\\right\\
\\widehat\\phi_j|y=0&=\\frac\\sum\\limits_j=1^p1\\leftx_ij=1 \\land y_i=0\\right\\sum\\limits_j=1^p1\\lefty_i=0\\right
\\endaligned
$$
$\\widehat\\phi_j|y=0$可以理解为$y=0$的样本中$x$维度为$1$的数量除以$y=0$的样本个数
同理可得$\\widehat\\phi_j|y=1$
$$
\\widehat\\phi_j|y=1=\\frac\\sum\\limits_j=1^p1\\leftx_ij=1\\land y_i=1\\right\\sum\\limits_j=1^p1\\lefty_i=1\\right
$$
对于$\\phi_y$
$$
\\beginaligned
(1)&=\\sum\\limits_i=1^N[y_i\\log \\phi_y+(1-y_i)\\log (1-\\phi_y)]\\
\\frac\\partial (1)\\partial \\phi_y&=\\sum\\limits_i=1^N\\left[y_i \\frac1\\phi_y-\\left(1-y_i\\right) \\frac11-\\phi_y\\right]=0\\
0&=\\sum\\limits_i=1^N[y_i(1-\\phi_y)-(1-y_i)\\phi_y]\\
0&=\\sum\\limits_i=1^N(y_i-\\phi_y)\\
\\hat\\phi_y&=\\frac\\sum\\limits_i=1^N1\\lefty_i=1\\rightN
\\endaligned
$$
这里假设$x$只能等于$0,1$,但实际上$x$常常服从于类别分布,实际上思路相同,只是估计参数变多,这里不进行推导
以上是关于详解线性分类-朴素贝叶斯分类器(Naive Bayes Classifer)白板推导系列笔记的主要内容,如果未能解决你的问题,请参考以下文章