朴素贝叶斯 Naive Bayess 笔记

1 前言

朴素贝叶斯的”朴素“在于其两个假设:

  • 特征之间相互独立
  • 特征之间同等重要

特征也就是 X = ( x 1 , x 2 , x 3 . . . x n ) T X = (x_1, x_2, x_3 ... x_n )^T X=(x1,x2,x3...xn)T的每一个分量。


2 贝叶斯定理

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是结果,B是原因
  • P ( A ) P(A) P(A)先验概率,一般人为给出
  • P ( A ∣ B ) P(A|B) P(AB)后验概率,也就是我们想求解的概率
  • P ( B ∣ A ) P(B|A) P(BA)是条件概率或似然概率,是根据统计结果来的
  • 贝叶斯公式就是:后验 = 先验 * 似然

可以用图片帮助理解:
在这里插入图片描述
根据条件概率公式:
P ( A ∣ B ) = P ( A B ) P ( B ) P ( B ∣ A ) = P ( A B ) P ( A ) P(A|B) = \frac{P(AB)}{P(B)} \qquad P(B|A) = \frac{P(AB)}{P(A)} P(AB)=P(B)P(AB)P(BA)=P(A)P(AB) P ( A B ) = P ( A ∣ B ) P ( B ) = P ( B ∣ A ) P ( A ) P(AB) = P(A|B)P(B)=P(B|A)P(A) P(AB)=P(AB)P(B)=P(BA)P(A)


3 朴素贝叶斯用于分类问题

对于分类问题,设 C k C_k Ck是类别, X = ( x 1 , x 2 , x 3 . . . x n ) T X = (x_1, x_2, x_3 ... x_n )^T X=(x1,x2,x3...xn)T是特征,用n维向量表示。
P ( C k ∣ X ) = P ( C k ) P ( X ∣ C k ) P ( X ) P(C_k|X) = \frac{P(C_k)P(X|C_k)}{P(X)} P(CkX)=P(X)P(Ck)P(XCk)对于一个给定的样本 X X X,我们需要确定其最可能属于的类别 C k C_k Ck,由于 X X X是给定的, P ( X ) P(X) P(X)是定值, X X X属于类别 C k C_k Ck的概率正比于:
P ( C k ∣ X ) ∝ P ( C k ) P ( X ∣ C k ) P(C_k|X) \propto P(C_k)P(X|C_k) P(CkX)P(Ck)P(XCk)对于每一个 X X X可能属于的类别 C i C_i Ci,只需计算出 P ( C i ) P ( X ∣ C i ) P(C_i)P(X|C_i) P(Ci)P(XCi),值最大的类别就是 X X X最可能属于的类别。


4 独立性假设

X = ( x 1 , x 2 , x 3 . . . x n ) T X = (x_1, x_2, x_3 ... x_n )^T X=(x1,x2,x3...xn)T,对于朴素贝叶斯中的内容,根据链式法则:

P ( x 1 , x 2 , x 3 . . . x n ∣ C k ) \qquad P(x_1, x_2, x_3...x_n|C_k) P(x1,x2,x3...xnCk)

= > P ( x 1 , x 2 , x 3 . . . x n − 1 ∣ C k , x n ) P ( x n ∣ C k ) =>P(x_1,x_2,x_3...x_{n-1}|C_k,x_n)P(x_n|C_k) =>P(x1,x2,x3...xn1Ck,xn)P(xnCk)

= > P ( x 1 , x 2 , x 3 . . . x n − 2 ∣ C k , x n − 1 , x n ) P ( x n − 1 ∣ C k , x n ) P ( x n ∣ C k ) =>P(x_1,x_2,x_3...x_{n-2}|C_k,x_{n-1},x_n)P(x_{n-1}|C_k,x_n)P(x_n|C_k) =>P(x1,x2,x3...xn2Ck,xn1,xn)P(xn1Ck,xn)P(xnCk)

= > . . . =>... =>...

= > P ( x 1 ∣ C k , x 2 , x 3 . . . x n ) P ( x 2 ∣ C k , x 3 . . . x n ) . . . P ( x n − 1 ∣ C k , x n ) P ( x n ∣ C k ) =>P(x_1|C_k,x_2,x_3...x_n)P(x_2|C_k,x_3...x_n)...P(x_{n-1}|C_k,x_n)P(x_n|C_k) =>P(x1Ck,x2,x3...xn)P(x2Ck,x3...xn)...P(xn1Ck,xn)P(xnCk)
根据朴素贝叶斯的假设,各个特征之间的独立的,也就是说 x i x_i xi的概率不受 x j x_j xj影响,即
P ( x i ∣ C k , x i + 1... x n ) = P ( x i ∣ C k ) P(x_i|C_k,x_i+1...x_n) = P(x_i|C_k) P(xiCk,xi+1...xn)=P(xiCk)因此 P ( X ∣ C k ) = ∏ i = 1 n P ( x i ∣ C k ) P(X|C_k)=\prod_{i=1}^{n}P(x_i|C_k) P(XCk)=i=1nP(xiCk)
朴素贝叶斯公式写作:
P ( C k ∣ X ) ∝ P ( C k ) ∏ i = 1 n P ( x i ∣ C k ) P(C_k|X) \propto P(C_k)\prod_{i=1}^{n}P(x_i|C_k) P(CkX)P(Ck)i=1nP(xiCk)


5 朴素贝叶斯用于文本情感分类

训练集给出了若干积极与消极的文本,任务是对训练集中的文本进行分类。

  • 有两个类别, C o C_o Co是积极, C 1 C_1 C1是消极。

  • 每一个词项看作一个特征 x i x_i xi

  • 用训练集中积极和消极文本所占的比例作为 P ( C 0 ) P(C_0) P(C0) P ( C 1 ) P(C_1) P(C1)

  • x i x_i xi C k C_k Ck集合下的 t f − i d f tf-idf tfidf值作为 P ( x i ∣ C k ) P(x_i|C_k) P(xiCk),即
    t f − i d f ( x i ) = w o r d _ c o u n t ( x i ) w o r d s ( C k ) l o g d o c s ( C k ) w o r d _ d o c s ( x i ) tf-idf(x_i)=\frac{{word\_count(x_i)}}{words(C_k)}log\frac{docs(C_k)}{word\_docs(x_i)} tfidf(xi)=words(Ck)word_count(xi)logword_docs(xi)docs(Ck)

  • 这里做加1平滑:
    t f = w o r d _ c o u n t ( x i ) + 1 w o r d s ( C k ) + 1 tf = \frac{{word\_count(x_i)}+1}{words(C_k)+1} tf=words(Ck)+1word_count(xi)+1 i d f = l o g d o c s ( C k ) + 1 w o r d _ d o c s ( x i ) + 1 + 1 idf = log\frac{docs(C_k)+1}{word\_docs(x_i)+1}+1 idf=logword_docs(xi)+1docs(Ck)+1+1

  • 同时,注意到 P ( X ∣ C k ) P(X|C_k) P(XCk)正比于的式子是连乘,为了避免小数点累乘,将其每一项取 l o g log log,改为连加 P ( C k ∣ X ) ∝ l o g ( P ( C k ) ) + ∑ i = 1 n l o g ( P ( x i ∣ C k ) ) P(C_k|X) \propto log(P(C_k))+\sum_{i=1}^{n}log(P(x_i|C_k)) P(CkX)log(P(Ck))+i=1nlog(P(xiCk))

  • 在python的texts_to_matrix函数中,通过mode='tfidf'计算词项 x i x_i xi在文档 d o c j doc_j docj(属于类别 C k C_k Ck)中的 t f − i d f tf-idf tfidf的值,计算公式为 t f = 1 + l o g ( n ( x i , d o c j ) ) tf=1+log(n(x_i, doc_j)) tf=1+log(n(xi,docj)) i d f = l o g ( 1 + N ( C k ) 1 + n ( x i , C k ) ) idf=log(1+\frac{N(C_k)}{1+n(x_i,C_k)}) idf=log(1+1+n(xi,Ck)N(Ck)) t f tf tf值与 x i x_i xi在文档 d o c j doc_j docj中出现的次数有关, i d f idf idf对于每个词项都是一样的,与文档无关,是通过 C k C_k Ck类别的文档总数和包含该词项的文档数决定的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值