Skip to main content
QUICK REVIEW

[论文解读] Vehicle: Bridging the Embedding Gap in the Verification of Neuro-Symbolic Programs

Matthew L. Daggitt, Wen Kokke|arXiv (Cornell University)|Jan 12, 2024
Ferroelectric and Negative Capacitance Devices被引用 3
一句话总结

本文提出 Vehicle,一种依赖类型化的中间语言,通过支持在机器学习框架、自动化定理证明器(ATP)和交互式定理证明器(ITP)之间统一指定神经组件,弥合了神经符号程序验证中的‘嵌入间隙’。该文通过在随机、部分可观察环境中,使用 ATP 和 ITP 的模块化证明,形式化验证了一个安全关键的自动驾驶汽车控制器,展示了其有效性。

ABSTRACT

Neuro-symbolic programs, i.e. programs containing both machine learning components and traditional symbolic code, are becoming increasingly widespread. Finding a general methodology for verifying such programs is challenging due to both the number of different tools involved and the intricate interface between the "neural" and "symbolic" program components. In this paper we present a general decomposition of the neuro-symbolic verification problem into parts, and examine the problem of the embedding gap that occurs when one tries to combine proofs about the neural and symbolic components. To address this problem we then introduce Vehicle - standing as an abbreviation for a "verification condition language" - an intermediate programming language interface between machine learning frameworks, automated theorem provers, and dependently-typed formalisations of neuro-symbolic programs. Vehicle allows users to specify the properties of the neural components of neuro-symbolic programs once, and then safely compile the specification to each interface using a tailored typing and compilation procedure. We give a high-level overview of Vehicle’s overall design, its interfaces and compilation & type-checking procedures, and then demonstrate its utility by formally verifying the safety of a simple autonomous car controlled by a neural network, operating in a stochastic environment with imperfect information.

研究动机与目标

  • 识别并形式化‘嵌入间隙’——即在神经符号系统中整合神经与符号组件证明的挑战。
  • 设计神经符号验证的通用分解,划分为独立、可组合的阶段:规格说明、训练、神经验证和符号集成。
  • 设计 Vehicle 作为一种有原则的、类型安全的中间语言,支持在不同验证后端之间保持一致且可重用的规格说明。
  • 通过结合 ATP(用于神经组件)和 ITP(用于符号组件)实现端到端的神经符号系统形式化验证,达成模块化的正确性证明。

提出的方法

  • 设计 Vehicle 作为一种高层级、依赖类型的语言,原生支持张量、神经网络、一等量化符和高阶函数。
  • 实现一个编译管道,将 Vehicle 规格说明翻译为目标后端:机器学习框架(如 PyTorch)、ATP(如用于神经网络验证)和 ITP(如用于符号推理)。
  • 在内部利用 Vehicle 的依赖类型系统,确保类型安全,并在编译至每个后端时生成精确的错误信息。
  • 利用类型系统强制不同验证层之间的语义一致性,最大限度降低神经与符号组件之间误解的风险。
  • 通过定制化的类型检查与编译流程,将 Vehicle 与现有验证工具集成,实现在不损失表达力的前提下实现互操作性。
  • 在形式化验证案例研究中验证该框架:一个具有安全性和活锁性质的随机自动驾驶汽车控制器。

实验结果

研究问题

  • RQ1如何将神经符号程序的验证分解为模块化、可组合的阶段,以隔离神经与符号推理组件?
  • RQ2神经符号验证中的‘嵌入间隙’由何引起?为何现有工具无法弥合这一间隙?
  • RQ3是否存在一种单一规格说明语言,可作为神经网络训练、自动化验证与交互式证明系统之间的可信接口?
  • RQ4如何安全且可靠地将关于神经组件的形式化证明与关于符号组件的证明集成到一个信息物理系统中?
  • RQ5是否可行通过单一、连贯的证明流程,结合 ATP 与 ITP,实现对神经符号系统的模块化、端到端验证?

主要发现

  • Vehicle 通过支持将单一、一致的神经组件规格说明编译至多个后端(包括 ATP 与 ITP),成功弥合了嵌入间隙。
  • 作者首次展示了模块化验证神经符号程序的实例,该验证同时整合了自动化与交互式定理证明,用于神经与符号组件。
  • 案例研究展示了在随机、部分可观察环境中对安全关键的自动驾驶汽车控制器进行形式化验证,确保了车辆保持在道路上并避免碰撞。
  • Vehicle 的类型系统在编译过程中支持精确诊断,提升了可用性,并减少了将规格说明翻译至不同验证目标时的错误。
  • 该工具支持与多种 ITP(如 Imandra、Rocq 和 KeYmaera X)的可扩展集成,为未来支持复杂信息物理系统验证工作负载提供了可能。
  • 该框架具备可扩展性,未来可支持证明证书生成与数值量化,以应对现实世界部署的语义需求。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。