Sensitivity analysis measures the influence of a Bayesian network's parameters on a quantity of interest defined by the network, such as the probability of a variable taking a specific value. In particular, the so-called sensitivity value measures the quantity of interest's partial derivative with respect to the network's conditional probabilities. However, finding such values in large networks with thousands of parameters can become computationally very expensive. We propose to use automatic differentiation combined with exact inference to obtain all sensitivity values in a single pass. Our method first marginalizes the whole network once using e.g. variable elimination and then backpropagates this operation to obtain the gradient with respect to all input parameters. We demonstrate our routines by ranking all parameters by importance on a Bayesian network modeling humanitarian crises and disasters, and then show the method's efficiency by scaling it to huge networks with up to 100'000 parameters. An implementation of the methods using the popular machine learning library PyTorch is freely available.
翻译:感官分析测量贝叶斯网络参数对网络确定的利益数量的影响,例如变数获取特定价值的概率。 特别是, 所谓的敏感值测量网络有条件概率的利息部分衍生物的数量。 然而, 在具有数千个参数的大型网络中发现这种价值会变得计算上非常昂贵。 我们提议使用自动区分和精确推论来获得单一通道中的所有敏感值。 我们的方法首先将整个网络边缘化, 一旦使用变数消除后, 然后再反向调整此操作, 以获得所有输入参数的梯度。 我们通过按重要程度排列贝伊斯网络人道主义危机和灾害模型的所有参数来显示我们的例行做法, 然后通过将其推广到高达100 000个参数的大型网络来显示方法的效率。 使用流行机器学习图书馆 PyTorrch 的方法可以免费获得。