机器学习之朴素贝叶斯(算法详细推导)

朴素贝叶斯

假设各属性变量之间相互独立,条件独立性假设不成立时,朴素贝叶斯分类器仍有可能产生最优贝叶斯分类器。

条件概率

P ( A ∣ B ) = P ( A B ) P ( B ) P(A|B)=\frac{P(AB)}{P(B)} P(AB)=P(B)P(AB)

极大似然估计

离散型——分布函数

假设样本服从二项分布

目标为

m a x θ     P ( X ∣ θ ) max_\theta~~~P(X|\theta) maxθ   P(Xθ)

对于小概率事件来说:概率=频率

连续型——密度函数

假设样本服从高斯分布

期望=样本均值,方差=样本方差

MLE证明最小二乘法

最小二乘法的本质是选择一个y拟合效果最好,也就是选择w,b使得 y i y_i yi. 尽可能对,也就是取到 y i y_i yi 的概率尽可能大,又由于每个点是独立的即使得密度函数尽可能大,即

m a x w , b            J ( w , b ) = ∏ i = 1 m P ( y i ∣ w , b ) max_{w,b}~~~~~~~~~~J(w,b)=\prod_{i=1}^mP(y_i|w,b) maxw,b          J(w,b)=i=1mP(yiw,b)

而由于假设偏差 ϵ i \epsilon_i ϵi ~ N ( 0 , σ 2 ) N(0,\sigma^2) N(0,σ2) ,则 y i y_i yi~ N ( w T x i + b , σ 2 ) N(w^Tx_i+b,\sigma^2) N(wTxi+b,σ2) ,则

P ( y ∣ w , b ) = 1 2 π σ e x p ( − ( y i − w T x i − b ) 2 2 σ 2 ) P(y_|w,b)=\frac{1}{\sqrt{2\pi}\sigma}exp(-\frac{(y_i-w^Tx_i-b)^2}{2\sigma^2}) P(yw,b)=2π σ1exp(2σ2(yiwTxib)2)

则对 J ( w , b ) J(w,b) J(w,b)取2对数,得到

l o g J ( w , b ) = − 1 2 π σ ∑ i ( y i − w T x i − b ) 2 log J(w,b)=\frac{-1}{\sqrt{2\pi}\sigma}\sum_i(y_i-w^Tx_i-b)^2 logJ(w,b)=2π σ1i(yiwTxib)2

则目标函数相当于

m i n w , b          ∑ i ( y i − w T x i − b ) 2 min_{w,b}~~~~~~~~\sum_i(y_i-w^Tx_i-b)^2 minw,b        i(yiwTxib)2

例子:

由于 ϵ i \epsilon_i ϵi ~ N ( 0 , 1 ) N(0,1) N(0,1),则 y i y_i yi ~ N ( e x p ( w x i ) , 1 ) N(exp(wx_i),1) N(exp(wxi),1) ,则

P ( y i ∣ w , x i ) = 1 2 π e x p ( − ( y i − e x p ( w x i ) ) 2 2 ) P(y_i|w,x_i)=\frac{1}{\sqrt{2\pi}}exp(-\frac{(y_i-exp(wx_i))^2}{2}) P(yiw,xi)=2π 1exp(2(yiexp(wxi))2)

则极大似然函数J为

J ( w ) = ∏ i = 1 m P ( y i ∣ w , x i ) = ( 1 2 π ) m ∏ i = 1 m e x p ( − ( y i − e x p ( w x i ) ) 2 2 ) J(w)=\prod_{i=1}^m P(y_i|w,x_i)\\ =(\frac{1}{\sqrt{2\pi}})^m\prod_{i=1}^mexp(-\frac{(y_i-exp(wx_i))^2}{2}) J(w)=i=1mP(yiw,xi)=(2π 1)mi=1mexp(2(yiexp(wxi))2)

则求对数似然函数log J

l o g J ( w ) = D ⋅ 1 2 ∑ = 1 m ( y i − e x p ( w x i ) ) 2 log J(w)=D\cdot \frac{1}{2}\sum_{=1}^m(y_i-exp(wx_i))^2 logJ(w)=D21=1m(yiexp(wxi))2

则对对数似然函数求导得

∂ l o g J ∂ w = − ∑ i = 1 m x i e x p ( w x i ) ( y i − e x p ( w x i ) ) \frac{\partial logJ}{\partial w}=-\sum_{i=1}^mx_iexp(wx_i)(y_i-exp(wx_i)) wlogJ=i=1mxiexp(wxi)(yiexp(wxi))

再令对数=0求解w

贝叶斯公式

P ( A ∣ B ) = P ( B ∣ A ) P ( A ) P ( B ) P(A|B)=\frac{P(B|A)P(A)}{P(B)} P(AB)=P(B)P(BA)P(A)

朴素贝叶斯方法

a r g m a x k P ( Y = k ) ∏ j = 1 n P ( X j = x j ∣ Y = k ) argmax_k P(Y=k)\prod_{j=1}^n P(X_j=x_j|Y=k) argmaxkP(Y=k)j=1nP(Xj=xjY=k)

假设

  • 每个特征相互独立
  • 每个实例相互独立
  • 训练集的分布和测试集的分布一致

平滑法

对于某个数据集,由于数据的稀疏性,我们考虑到对于某个特征X在训练集中没有出现,那么将会导致整个分类概率变为0,这将会导致分类变得非常不合理,所以为了解决零概率的问题,避免过拟合。需要通过平滑法来解决

Epsilon 平滑法

  • P ( x m P(x_m P(xm| y ) = 0 y)=0 y)=0 替换为 P ( x m P(x_m P(xm| y ) = ϵ y)=\epsilon y)=ϵ , 其中 ϵ \epsilon ϵ远小于 1 N \frac{1}{N} N1​$(N是训练集样本数)

Laplace 平滑法/加法平滑

  • 假定训练样本很大时,每个分量x的计数加1造成的估计概率变化可以忽略不计,但可以通过减少方差来方便有效的避免零概率问题。

  • 在实际的使用中也经常使用加 α \alpha α 1 ≥ α ≥ 0 1\geq \alpha\geq 0 1α0)来代替简单加1。

    P ( X j = x j ∣ Y = k ) = α + count ( Y = k , X j = x j ) M α + count ( Y = k ) . P(X_j=x_j|Y=k) = \frac{\alpha + \text{count}(Y=k,X_j=x_j)}{M\alpha + \text{count}(Y=k)}. P(Xj=xjY=k)=Mα+count(Y=k)α+count(Y=k,Xj=xj).

    其中M是 X j X_j Xj取值类别数。

  • 当训练集很小的时候,概率变化剧烈;当数据集大的时候,变化不大。

  • 减少方差(various),增大偏差(bias)

你可能感兴趣的:(机器学习理论推导,机器学习,概率论,人工智能)