考虑一下孩子如何学习骑自 行⻋。孩子们并不是先学习自 行⻋动力学然后才开始骑⻋。相反, 他们会爬上去, 掉下来, 然后重试, 直到做对为止。从这个意义上说, 孩子们是小科学家, 通过定向行动(实验) 来测试实际假设, 并从结果中学习。最终, 他们将内化一个实用的自 行⻋动力学模型, 这是任何以前的文献都没有提供过的。
对实用模型的探索定义了一个(巧妙选择的) 试错的交互过程。在文献中, 这个过程被称为 Box 循环 [11, 12], ⻅图 1.2。关于环境的信念(例如自 行⻋动力学) 可以用概率模型来表示[13,14]。更准确地说, 概率生成模型(通过概率分布) 指定环境如何生成?察结果[15]。然后可以通过应用概率论规则从?察到的结果推断出模型中感兴趣的数量。这些量可能包括控制序列(例如, 向左或向右转向) 或模型参数(例如, 自行⻋的重量)。然后, 模型批判阶段根据?察到的结果评估模型的性能。基于?评估, 可以修改模型, 并可以比较新旧模型的性能。一旦发现具有足够性能的模型, 就可以将其应用于实际设置中的数量推断。
由于生成模型所表示的知识本质上是不确定的,因此综合设计代理的推理需要数学语言来对这种不确 定性进行推理。在这里,概率论提供了一个严格的框架 [16, 17]。因此,该模型编码了固有的不确定性,设计代 理的任务就是发现一个能够自信地预测首选结果的模型 例如,在自行车上保持直立,或者内容助听器用 户。
如果初始模型提案步骤和后续修订仍然是人工(创造性)工作,则所有剩余步骤都可以自动化。用概率论的语言来说,推理相当于计算感兴趣变量的后验(观察数据后)分布,模型批判涉及计算模型证据的比率(即贝叶斯因子)作为相对模型的概率度量表现。虽然这些概念都是数学概念但计算困难;
当概率推理自动化时,人类设计工程师只需要关心模型设计,因此可以通过 Box 循环执行更有效的迭 代。此外,自动化降低了贝叶斯推理所需的冗长而乏味的推导过程中出错的风险。自动化的另一个重要好处 是它使算法设计具有可扩展性。因此,当前框架完全可以实现工业规模应用程序的开发。
了“ForneyLab”作为 Julia 工具箱,用于 FFG 中基于消息传递的推理。我们通过 示例展示 ForneyLab 如何自动推导贝叶斯信号处理算法,包括参数估计和模型比较算法。至关重 要的是,由于 FFG 框架的模块化构成,模型规范和推理方法都可以在 ForneyLab 中轻松扩展。
通过概率建模设计信号处理算法包括一个迭代过程,涉及三个阶段:(1)模型规范,(2)概率推理(即实际算法推导)和(3)性能评估(即对算法进行评分)算法)。在此框架中,(信号处理)算法被定义为概率模型上的推理任务。
根据算法评分结果(第 3 阶段),人们可以修改模型规范并重复该过程。在[12]中,这种“构 建、计算、批判、重复”循环被称为“Box循环”(图1.2),并且可以强有力地证明这种迭代过程实 现了通用科学方法。概率建模方法对算法设计的巨大前景在于,推理和评分阶段(第 2 阶段和第 3 阶段)都是贝叶斯推理的结果,因此原则上是可自动化的。如果第 2 阶段和第 3 阶段确实由合适的 软件套件自动执行,那么(人类)算法设计者可以通过提出替代模型来快速循环设计迭代,直到达 到令人满意的性能分数
2.3.2 Example: automated inference in a hidden Markov model with Gaussian mixture emissions
Message passing on factor graphs is known to support a very wide array of statistical signal processing, communication and control engineering algorithms, including Kalman filtering/smoothing, hidden Markov model learning, Viterbi decoding etc. [87]. Most of these algorithms can be interpreted as inference tasks on probabilistic state-space models (SSM).
。。
Note that while black-box inference methods like automatic differentiation variational inference (ADVI) [36] require no manual derivations at all, they aregenerally much slower than (message passing) algorithms that leverage analytic solutions.
2.4 Boosting the algorithm design loop by automated inference in factor graphs
In the search process for an effective algorithm, it is important that we can quickly specify updates to model proposals and compare the relative performance of these proposals. Here, we illustrate how the modularity of the FFG framework allows for flexible construction of custom models and algorithms. In Sec. 2.4.1 we model a time series with a linear Gaussian model. This model is improved in Sec. 2.4.2, where we exemplify how the model can be adapted by explicitly incorporating nonlinearities. With ForneyLab, this adaptation evaluates to adding one extra line of code to the model specification. In Sec. 2.4.3, we showcase the flexibility with respect to algorithm specification by constructing a custom algorithm that combines VMP with expectation propagation. We will see that the combined benefits of both algorithms leads to improved performance over pure VMP in our example. Finally, Sec. 2.4.4 underlines the hierarchical nature of the FFG framework by considering composite nodes as modular building blocks for model construction. This construct allows for building complex hierarchical structures, and improved inference by leveraging external tools and custom updates.
242
243
, which takes full advantage of the modularity of the FFG framework. The intrinsic modularity allows for selecting different Bayesian approximation methods at each node-edge interface in the generative model. Thus, the FFG framework allows not only to change local model assumptions, but also to change local inference methods.
244
252
。。。。。。。。