We introduce Scruff, a new framework for developing AI systems using probabilistic programming. Scruff enables a variety of representations to be included, such as code with stochastic choices, neural networks, differential equations, and constraint systems. These representations are defined implicitly using a set of standardized operations that can be performed on them. General-purpose algorithms are then implemented using these operations, enabling generalization across different representations. Zero, one, or more operation implementations can be provided for any given representation, giving algorithms the flexibility to use the most appropriate available implementations for their purposes and enabling representations to be used in ways that suit their capabilities. In this paper, we explain the general approach of implicitly defined representations and provide a variety of examples of representations at varying degrees of abstraction. We also show how a relatively small set of operations can serve to unify a variety of AI algorithms. Finally, we discuss how algorithms can use policies to choose which operation implementations to use during execution.
翻译:我们引入了Scruff,这是利用概率性编程开发AI系统的新框架。Scruff使各种表述能够包括多种表现形式,例如随机选择的代码、神经网络、差异方程式和制约系统。这些表述是用一套可以对其实施的标准化操作来暗含定义的。然后,使用这些操作来实施通用算法,使不同表达法能够实现通用化。可以对任何特定表达法提供零、一个或更多的操作实施,使算法能够灵活地为它们的目的使用最适当的现有实施方法,并允许以适合它们能力的方式使用这些表达法。在本文中,我们解释了隐含定义的表述的一般方法,并提供了不同程度的抽象表达实例。我们还展示了相对小的一组操作如何有助于统一各种AI算法。最后,我们讨论了算法如何使用政策来选择哪些操作在实施过程中使用。