贝叶斯网络推断算法是否假定数据的特定分布?

问题描述 投票:0回答:1

我有一些数据,我想学习此数据的贝叶斯网络,然后使用该贝叶斯网络进行推理。为此,我使用了MATLAB中learn_struct_gs2中的Bayes Net Toolbox。通过使用learn_struct_gs2,可以学习贝叶斯网络。但是,我想知道:

[当我们想从数据中学习贝叶斯网络时,我们特征的值是否应该遵循特定的分布(例如正态分布等)?如果我们的特征值不遵循分布,就不能使用贝叶斯学习?

例如,假设特征的值是:0,10,11,18,100,1250,...

我们可以使用贝叶斯学习吗?

我是贝叶斯学习和人工智能的新手,我花了很多时间来找到这个问题的答案,但我没有。

我的第二个问题是:存在许多学习方法,例如贝叶斯学习,神经网络等。如何找出哪种方法适合我的问题?

matlab machine-learning bayesian directed-acyclic-graphs bayesian-networks
1个回答
0
投票

模拟,模拟,模拟。

生成人工数据集是开发人员经常使用的方法,它是从业人员验证并整理其对数据假设的一种好方法。今天的计算时间是如此便宜,以至于比通过大量的文献和理论来解析,通常可以更容易地凭经验测试算法的适用性。

这并不是说应该完全放弃学习基础知识,就像在高级本科生和研究生水平的培训中将学到的东西(或在Bishop的“ 模式识别和机器学习]等自由文本中”学习的东西一样)。但是,知道如何与经验测验争论的用户可能会非常有说服力,并且可以用它们来突破学术界倾向于建立的大门。

在您的情况下,请尝试制作一些简单的模拟网络,以使用一系列分布来生成数据。空情况可能是高斯分布。也许您的极端情况可能是对数正态。然后测试算法在这些不同分布下是否推断出正确的网络。关键是:像游乐场一样玩耍。或者,如果您更喜欢愚蠢的明喻,请像对待实验室和实验一样对待它。

© www.soinside.com 2019 - 2024. All rights reserved.