本文来源:Reluplex: An Efficient SMT Solver for Verifying Deep Neural Work
Guy Katz, Clark Barrett, David L. Dill, Kyle Julian, and Mykel J. Kochenderfer
Stanford University, Stanford USA
解决的主要问题
在安全性很高的系统中应用DNN需要为DNN的行为提供“formal guarantees”,验证DNN的特性或者提供反例。
算法的主要实现过程
与单纯形法相同,Reluplex允许变量临时违反边界,因为它反复查找可行的变量赋值。 不仅如此,Reluplex还允许属于ReLU对的变量临时违反ReLU约束。然后,在迭代时,Reluplex会反复选择超出范围或违反ReLU约束的变量,并使用Pivot和Update操作对其进行纠正。
对于一组给定的变量χ={
x1,...,xn}χ={
x1,...,xn},它的配置规则是一组区别符号{
SAT,UNSAT}{
SAT,UNSAT}或者一个元组<B,T,l,u,α,R><B,T,l,u,α,R>,B⊆χB⊆χ是一组基本变量;T,代表tableau,包含每一xi∈Bxi∈B,有方程xi=∑xj∉Bcjxjxi=∑xj∉Bcjxj;l,ul,u是对应每一个变量x∈χx∈χ赋值的下界和上界;R∈χxχR∈χxχ是Relu连接的集合。初始赋值全都是0,保证所有的方程能够保持(不过上下界的约束可能会被违反)。
具体的操作有:
Updateb和UpdatefUpdateb和Updatef规则允许通过分别更新向后或向前的变量来纠正损坏的ReLU连接,前提是这些变量是非基本的变量。

Reluplex是一种用于验证深度神经网络(DNN)行为的SMT求解器,尤其适用于安全性要求高的系统。算法通过允许变量临时违反边界和ReLU约束,逐步修正以找到解决方案。文章介绍了算法的实现过程,包括Update和Pivot规则,并以ACAS Xu无人机避碰系统的DNN为例进行解释。然而,存在输入、输出解释、属性映射等问题需要进一步澄清。
最低0.47元/天 解锁文章
3245





