Naive Bayes 朴素贝叶斯
关于吴恩达的cs229课程的一份笔记,关于朴素贝叶斯分类器在垃圾邮件分类上的应用。
spam classifier 垃圾邮件分类器
样本: 过去时间收到的所有邮件,共$m$封。
步骤:
1.首先建立词典$X$,词典中共有$n$个词。
2.通过样本估计概率,
其中$X_i \in {0,1}$,表示词典中的第$i$个词是否出现,$X_i = 1$表示出现。
上面的$y \in {0,1}$,并且$y=1$表示邮件为垃圾邮件。令
然后利用极大似然法估计概率值。
3.通过上面得到 $P(X|y)$ 与 $P(y)$的概率, 对于新的输入$X$, 就可以用$P(y|X)$就可判断$y$。
改进
这里考虑词的出现次数,对上面的分类器进行改进。
这个模型称为:Multinomial Event Model。
步骤:
1.建立词典,词典的词的总数为$V$。
2.对于一封邮件,将其转化为向量,的表示第个词在词典中的位置。
例如,邮件开头为A NIPS ...
,其中A
在词典的第1个,
NIPS
在词典的35000个,则。
3.通过样本估计概率,
其中$k \in {0,1,…,n}$,对$X_j=k$表示邮件中的第$j$个词在词典中的位置为$k$。
同样的,上面$y \in {0,1}$,对于$y=1$,它就表示邮件为垃圾邮件。令:
同样的,利用极大似然法估计概率值。
4.通过上面得到$P(X|y)$与$P(y)$的概率, 对于新的输入$X$, 就可以用$P(y | X)$来判断$y$。