朴素贝叶斯分类器

上概率论大家都知道这个大名鼎鼎的贝叶斯公式

$Pleft ( Amid B ight )=frac{Pleft ( Bmid A ight )Pleft ( A ight )}{Pleft ( B ight )}$  

它是由

$Pleft ( Aigcap B ight )=Pleft ( Amid B ight )Pleft ( B ight )=Pleft ( Bmid A ight )Pleft ( A ight )$

推导过来的。

实际中,朴素贝叶斯分类器解决这样的问题:

1.给定了一有标签样本

X={a1,a2,,,am,yi} n个观察对象

2.给定一无标签样本x(只有m个特征,无y),求

$Pleft ( y_{i}mid x ight )=maxleft { Pleft ( y_{1}mid x ight ),Pleft ( y_{2}mid x ight ),,,Pleft ( y_{i}mid x ight ) ight }$  

用公式去求解

第一步:根据现有样本X,求出每种标签下,每个特征的概率,即$Pleft ( a_{j} mid y_{i} ight )$,共n*m个

第二步:

$Pleft ( y_{i}mid x ight )=frac{Pleft ( xmid y_{i} ight )Pleft ( y_{i} ight )}{Pleft ( x ight )}$,

又分母都一样,所以分子最大,$Pleft ( y_{i}mid x ight )$最大

所以单独算分子,其中$Pleft ( xmid y_{i} ight )$相当于在yi为条件下,各个特征概率的乘积,表示如下:

$Pleft ( xmid y_{i} ight )Pleft ( y_{i} ight )=left [ Pleft ( a_{1}mid y_{1} ight )Pleft ( a_{2}mid y_{1} ight ),,,Pleft ( a_{i}mid y_{1} ight ) ight ] Pleft ( y_{1} ight )cdotleft [ Pleft ( a_{1}mid y_{2} ight )Pleft ( a_{2}mid y_{2} ight ),,,Pleft ( a_{i}mid y_{2} ight ) ight ] Pleft ( y_{2} ight )...=Pleft ( y_{i} ight )prod Pleft ( a_{j}mid y_{i} ight )$

连乘符号后面的部分,用到我们前面算出的n*m个概率

当$Pleft ( a_{j}mid y_{i} ight )=0$,引入Laplace校准平滑

实例:

判断社交账号真假(真实用户、假用户),根据给定的数据集(sample size=10K)选出了三个条目,1.说说数/time,2.好友数/time,3.是否使用真实头像

人工凭经验的将三个条目划分为若干特征

条目1分为a1:≤0.05、a2:0.05< <0.2、a3:≥0.2

条目2分为a4:≤0.1、a5:0.1< <0.8、a6:≥0.8

条目3分为a7:0=否、a8:1=是

每个样本都已经划分了是否为真假用户(此处要求样本的真实、可靠,否则影响最后的判断)

第一步:下面的P值均为样本计算所得:

 

第二步:现给定一个无标签样本x(0.1,0.2,0),问该样本是真实用户还是假用户

那么,是真实用户的概率为:P(Yi|X)->>P(Yi)P(X|Yi)=P(Y1)P(a12|y1)P(a22|Y1)P(a31|Y1) 0.89*0.5*0.7*0.2=0.062

假用户的概率为0.1*0.1*0.1*0.1*0.9=0.0009

所以,是真实用户的概率大于假用户的概率。

Valar morghulis
原文地址:https://www.cnblogs.com/super-yb/p/11052546.html