贝叶斯网络和朴素贝叶斯分类器有什么区别?我注意到一个刚刚在 Matlab 中作为 classify
实现,另一个有一个完整的网络工具箱。
如果您能在您的回答中解释哪一个更有可能提供更好的准确性,我将不胜感激(不是先决条件)。
最佳答案
简短的回答,如果您只对解决预测任务感兴趣:使用朴素贝叶斯。
贝叶斯网络(有一个很好的 wikipedia 页面)以非常通用的方式对特征之间的关系进行建模。如果您知道这些关系是什么,或者有足够的数据来推导它们,那么使用贝叶斯网络可能是合适的。
朴素贝叶斯分类器是一种描述特定类别贝叶斯网络的简单模型 - 其中所有特征都是类条件独立的。因此,有些问题是朴素贝叶斯无法解决的(如下例)。然而,它的简单性也使其更易于应用,并且在许多情况下需要较少的数据即可获得良好的结果。
例子:异或
你有一个关于二元特征 x1
和 x2
以及目标变量 y = x1 XOR x2
的学习问题。
在朴素贝叶斯分类器中,x1
和 x2
必须独立处理 - 因此您可以计算类似“y = 1
的概率> 考虑到 x1 = 1
"- 希望你能看到这没有帮助,因为 x1 = 1
不会使 y = 1
任何或多或少的可能性。由于贝叶斯网络不假设独立性,因此它能够解决这样的问题。
关于matlab - 贝叶斯网络和朴素贝叶斯分类器有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12298150/