使用对数概率有个问题就是无法处理0值(虽然,把多个为0的概率连乘也不能解决这个问题).这是因为log(0)没有定义.有些朴素贝叶斯算法,为每个特征的计数都加1以避免出现这个问题,当然还有别的解决方法.加一平滑是一种很简单的数据平滑方法.我们这里如果某个单词给定性别没有人用过,就给它赋一个很小的概率值.
再回到我们的预测函数,我们从数据集中复制一篇博客来做下测试.
new_post = """ Every day should be a half day.  Took the afternoon
off to hit the dentist, and while I was out I managed to get m