首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >朴素贝叶斯模型

朴素贝叶斯模型
EN

Stack Overflow用户
提问于 2013-09-05 18:28:09
回答 2查看 296关注 0票数 4

当我们使用决策树分类器训练训练集时,我们将得到一个树模型。并且该模型可以被转换为规则,并且可以被合并到java代码中。现在,如果我使用朴素贝叶斯训练训练集,模型是什么形式的?我怎样才能把模型合并到我的java代码中呢?如果训练没有模型,那么朴素贝叶斯和懒惰学习者之间的区别是什么?kNN)?

提前谢谢。

EN

回答 2

Stack Overflow用户

发布于 2013-09-05 20:25:11

朴素贝叶斯构造了条件概率P(f_1,...,f_n|C_j)的估计,其中f_i是特征,C_j是类,使用贝叶斯规则和先验和证据的估计(P(C_j))和证据(P(f_i))可以被翻译成x=P(C_j|f_1,...,f_n),它可以粗略地读作“给定的特征和我认为,他们描述的类的对象是C_j,我的确定性是x”。事实上,NB假设festures是独立的,所以它实际上使用了x=P(f_i|C_j)形式的简单概率,所以“给定f_i,我认为它是概率为x的C_j”。

因此,模型的形式是一组概率:

每个要素类的条件概率P(f_i|C_j)和每个类的条件概率f_i P(C_j)每个类

另一方面,KNN是完全不同的东西。它实际上不是严格意义上的“学习模型”,因为您不需要调整任何参数。它是一种分类算法,给定训练集和个数,简单地回答“对于给定的点x,训练集中最近点的主要类是什么?”。

主要的区别在于输入数据--朴素贝叶斯适用于“观察值”的对象,因此你只需要分类对象中存在或不存在的一些特征。无论是颜色、照片上的对象、句子中的单词还是高度复杂的拓扑对象中的抽象概念,都无关紧要。而KNN是一种基于距离的分类器,它要求您对对象进行分类,您可以测量对象之间的距离。因此,为了对抽象对象进行分类,你必须首先提出一些度量标准,距离度量,它描述了它们的相似性,结果将高度依赖于这些定义。另一方面,朴素贝叶斯是一个简单的概率模型,它根本不使用距离的概念。它以相同的方式对待所有对象-它们存在或不存在,故事结束(当然,它可以推广到具有给定密度函数的连续变量,但这不是这里的重点)。

票数 1
EN

Stack Overflow用户

发布于 2013-09-09 04:13:17

朴素贝叶斯将构建/估计生成训练样本的概率分布。

现在,给定所有输出类的概率分布,您将获取一个测试样本,并根据哪个类生成此样本的概率最高,将测试样本分配给该类。

简而言之,您获取测试样本并运行它通过所有概率分布(每个类一个),并计算为该特定分布生成此测试样本的概率。

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

https://stackoverflow.com/questions/18633863

复制
相关文章

相似问题

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