我预计这个问题可能没有明确的答案。但我过去使用过许多机器学习算法,并且正在尝试了解贝叶斯网络。我想了解在什么情况下,或者对于什么类型的问题,您会选择使用贝叶斯网络而不是其他方法?
何时使用贝叶斯网络而不是其他机器学习方法?
机器算法验证
机器学习
贝叶斯网络
2022-03-26 21:52:57
2个回答
贝叶斯网络 (BN) 是生成模型。假设您有一组输入和输出。BN 允许您学习联合分布,而不是说逻辑回归或支持向量机,后者对条件分布进行建模。
学习数据的联合概率分布(生成模型)比学习条件概率(判别模型)更难。但是,前者提供了一个更通用的模型,您可以在其中运行或等查询。使用判别模型,您的唯一目标是学习。
BN 使用 DAG 来规定联合分布。因此它们是图形模型。
好处:
当您有很多缺失的数据时,例如在医学中,BN 可能非常有效,因为对联合分布进行建模(即您对数据如何生成的断言)减少了您对拥有完全观察的数据集的依赖性。
当您想以视觉透明的方式对域进行建模,并且还旨在捕获关系时,BN 可能非常强大。请注意,BN 中的因果关系假设是有争议的。
学习联合分布是一项艰巨的任务,但为离散变量建模(通过计算条件概率表,即 CPT)比尝试对连续变量进行相同的建模要容易得多。因此,BN 实际上更常见于离散变量。
BN 不仅允许观察推断(所有机器学习模型都允许),而且还允许因果干预。这是 BN 的一个通常被忽视和低估的优势,并且与反事实推理有关。
以我的经验,当有高维分类数据时,贝叶斯网络工作得很好。它们提供可解释的模型,这(有时)有助于理解不同变量如何相互作用。
其它你可能感兴趣的问题