NLP复习之朴素贝叶斯
朴素贝叶斯分类器和加一平滑计算每个单词的似然值
贝叶斯规则:c表示类别,d表示数据
例题1
假设句子“I always like foreign films.”中每个单词对应每个类的似然估计如下,请判断该句子属于正面还是负面评论。
解
似然估计:
\(likehoodpos = 0.09*0.07*0.29*0.04*0.08=5.8464*10^{-6}\)
\(likehoodneg=0.16*0.06*0.06*0.15*0.11=9.504*10^{-6}\)
先验概率
\(priorpos=priorneg=0.5\)
后验概率
\(posteriorpos = likehoodpos * priorpos = 2.9323*10^{-6}\)
\(posteriorneg = likehoodneg * priorneg = 4.752 * 10^{-6}\)
所以显然是负面评论
例题2
给出以下包含五个文档的训练集,每个文档都标记为不同的类型:comedy或action,
\1. fun, couple, love, love comedy
\2. fast, furious, shoot action
\3. couple, fly, fast, fun, fun comedy
\4. furious, shoot, shoot, fun action
\5. fly, fast, shoot, love action
请使用朴素贝叶斯分类器和加一平滑,计算每个单词的似然值,并判断新文档 – “fast, couple, shoot, fly”的类型。
解
先验概率
\(P(comedy) = 0.4, P(action) = 0.6;\)
comedy中单词总数为:\(count(comedy) = 9\)
action中总数为: \(count(action) = 11\)
\(count(V) = 7\)
最大似然
\(P(fast|comedy) = \frac{1+1}{9+7}\)
其他同理
则后验概率\(P(comedy)P(S|comedy)=0.4 * \dots\)
例题3
根据下面包含五个已标记的文档数据集(每个文档使用了情感词汇进行特征表示,例如的d1中包含3个good和3个great,且对应的类别为positive),使用加一平滑分别训练多项式朴素贝叶斯和二进制朴素贝叶斯两个模型。(二进制去重)
doc | good | poor | great | (class) |
---|---|---|---|---|
d1 | 3 | 0 | 3 | pos |
d2 | 0 | 1 | 2 | pos |
d3 | 1 | 3 | 0 | neg |
d4 | 1 | 5 | 2 | neg |
d5 | 0 | 2 | 0 | neg |
使用训练好的两个朴素贝叶斯模型对句子“A good, good plot and great characters, but poor acting. ”进行分类。