B.3 完整示例
下面通过一个例子说明如何用加一平滑训练和测试朴素贝叶斯。我们采用包含正面(+)和负面(−)两类的情感分析领域,并使用下面这些由真实电影评论简化而来的微型训练与测试文档。
| 类别 | 文档 |
|---|
| 训练 | − just plain boring |
| − entirely predictable and lacks energy |
| − no surprises and very few laughs |
| + very powerful |
| + the most fun film of the summer |
| 测试 | ? predictable with no fun |
根据式(B.11),用 Nc/Ndoc 计算两类的先验 P(c):
P(−)=53,P(+)=52 词 with 没有出现在训练集中,所以完全将它删除(如上所述,朴素贝叶斯不使用未知词模型)。根据式(B.14),训练集中其余三个词 predictable、no 和 fun 的似然如下(其余训练词的概率留给读者练习):
P(predictable∣−)P(no∣−)P(fun∣−)=14+201+1,=14+201+1,=14+200+1,P(predictable∣+)P(no∣+)P(fun∣+)=9+200+1,=9+200+1,=9+201+1. 对测试句 S=“predictable with no fun”,删去 with 后,根据式(B.9)计算所选类别:
P(−)P(S∣−)P(+)P(S∣+)=53×3432×2×1=6.1×10−5,=52×2931×1×2=3.2×10−5. 因此,模型把测试句预测为负面类别。