首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >朴素贝叶斯对训练观察的数量敏感吗?

朴素贝叶斯对训练观察的数量敏感吗?
EN

Stack Overflow用户
提问于 2017-03-15 00:08:55
回答 2查看 880关注 0票数 0

我正在使用Swift (即使我的问题不是关于语言)和Python来测试我的ML逻辑。我有训练数据:

代码语言:javascript
复制
("add a new balloon", "add-balloon")
("add a balloon", "add-balloon")
("get last balloon", "get-balloon")
("update balloon color to red", "update-balloon")

当我尝试使用朴素贝叶斯对新句子进行分类时,比如

代码语言:javascript
复制
classify("could you add a new balloon") 
// Return add-balloon
classify("could you update the balloon color") 
// Return add-balloon
classify("update the balloon color") 
// Return add-balloon

我的数据集有很多关于添加气球的观察结果(大约50个),但没有太多需要更新或获取的(大约5-6个)。朴素贝叶斯对训练观察的数量敏感吗?我不明白为什么即使给出一个在训练过程中看到的句子,分类效果也不是很好。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-03-15 01:37:49

朴素贝叶斯对类先验(示例在类中的分布)很敏感。因此,如果你有比其他类别多得多的add-balloon,它就会偏向这个类。这通常是有帮助的,因为假设你什么都不知道(没有后验信息),你最好的选择是尝试最有可能的类。

如果您的分布严重倾斜,您的数据集并不大,您的文档很短或缺少信息性很强的单词(或包含许多模棱两可的单词),但这可能会导致不希望看到的结果,比如您正在报告的内容。

票数 1
EN

Stack Overflow用户

发布于 2017-03-15 01:29:37

最初,朴素贝叶斯依赖于数据的大小,但如果我们继续添加更多,在达到一定水平后,它的性能会停滞不前,进一步增加训练数据并不会提高朴素贝叶斯分类器的性能。

但就您的情况而言,数据太小,模型无法准确了解“更新气球”并预测“添加气球”。尝试为数据较少的类添加更多示例,看看准确性是否提高。

如果你的数据被歪曲了,你对此无能为力,你可以尝试其他分类器或尝试一些技巧,如前面提到的herehere

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42791002

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档