形式化方法(Formal Methods)和人工智能(Artificial Intelligence)

一、形式化方法(Formal Methods)

​ 形式化方法最初应用在硬件上,验证硬件的正确性,后面逐渐应用到软件编程中,能够在软件中找到软件的错误,验证软件的安全可靠。形式化方法更加接近离散数学,所以其应用难度非常大,同时学习成本也较高。再加上形式化方法的大多数理论还停留在上个世纪,由于程序越来越复杂,导致形式化方法进行验证需要大量人工和时间,以至于现在绝大部分软件开发人员完全没有考虑过这个方法,甚至没有听说过这个名词。

​ 形式化方法最新的应用成果是在工业上,比如一些极其重要且对安全性要求极高的领域(几乎不允许差错),比如航空航天,高铁地铁等等。将形式化方法带到这些领域的是法国人Abrial,他发明了B方法,成功应用在法国自动驾驶地铁14号线——得益于他的贡献,使得罢工期间这条线几乎没有受到影响——最重要的两大系统:控制系统和通信系统。接着该方法被广泛采纳,在世界各地的自动驾驶地铁中得到应用,例如上海2021年1月底开通的地铁15号线,据我所知,这条全国最高等级的自动驾驶地铁,通过了形式化方法的验证,保障了15号线自动驾驶功能的安全;又如中国第一艘飞向火星的萤火号,也采用形式化方法进行验证。

​ 在本世纪初,大量形式化方法应用在小程序小软件中,得到很好的效果,也让人们了解了它的复杂程度。所以当时对于形式化方法在AI领域不太看好,甚至把是否能进行形式化之外的工作当成AI发展的界限。这不无道理,尽管如今的AI具有一定的自主学习能力,也不过是由人类来界定的,我们编写的程序决定了AI的方向,而且这个方向也是相当狭窄的。将形式化方法应用到AI,在这个阶段几乎处于停滞状态。

​ 由于形式化方法验证的复杂性以及现在大多数程序(软件)的复杂性,导致形式化方法难以得到一般应用,进展缓慢且不够有吸引力。自从人工智能在2014年以来的再次爆发,人工智能不再只关注模型的结果和作用,人们开始思考这个黑盒到底是如何选择数据的,它是否可靠可信,这就涉及到XAI(Intepretable Artificial Intelligence)的问题。

​ 所以,形式化方法能不能用在XAI上来解释模型呢?

二、AI 自身的发展

在这里插入图片描述

​ AI本身就命途多舛,实际上在形式化方法得到推广的时候,AI模型还处于基于规则的建模阶段,那时的AI模型还可以从数学上推导,我们可以预测模型的输出结果。但是由于现在大量数据和模型的改变,使得模型不再那么容易被我们预测,我们构建模型-给它数据-等待结果-修正参数-再来一次。这使得模型具有不可预测性,有大量潜在风险,例如金融中贷款金额的估算是否公平,网站图片筛选是否筛选掉了有害信息等等。

三、最新进展

​ 当前有关安全性和保障性的最新技术基于模型驱动的系统设计,包括使用形式化模型严格指定结构和行为。这些模型启用了静态和动态分析与验证技术,可以为系统的正确性提供全面的保证。尽管模型检查之类的静态技术可以在不实际执行软件的情况下执行复杂的软件分析,但其详尽的性质使得难以在不损失精度的情况下对其进行扩展。

​ 运行时验证(RV)是一种更轻量级的验证技术,它通过在运行时观察系统,在线检查预期的属性并可能通过指定的恢复操作来缓解违规行为,从而对设计时分析进行补充。尽管模型驱动和形式化方法在行业中越来越多地采用,但它们通常仅适用于在特征明确的环境中运行的非学习系统,因为在设计时尚不完全了解或预见到数据驱动的学习组件和环境方面,时间以系统模型中的黑盒形式引入了设计过程中的不确定性。

​ 由于ML组件的形式验证技术的最新水平仍然很有限,因此很难提供关于其行为的形式保证,这是在安全关键的自治系统工程中使用ML和AI方法的主要障碍。最近的一种方法是Reluplex ,一种用于验证DNN的SMT求解器,已在下一代无人飞机机载避撞系统的DNN实施中成功进行了评估。

​ 近年来,研究人员在开发DeepFool 和cleverhans 之类的工具方面也付出了巨大的努力,这些工具会产生扰动,以此增加原始训练集,以进一步测试ML分类器。其他最近的和更复杂的测试方法遵循基于语义的方法,使用模拟环境生成更合理的对抗示例,而不仅仅是对输入图像的小扰动。但是,由于攻击者可以使用测试过程中从未考虑过的输入,因此测试不足以提供保证,提供有关将被正确处理的输入空间的正式保证仍然是一项重大挑战,在提高自治系统的可信赖性方面起着根本性的作用。

​ 因此,我们需要新颖的形式化技术,以为具有学习功能的组件的大规模自治系统提供高水平的保证。例如,一个有希望的方向是在运行时强制实施动态安全性和可靠性保证的新机制。在控制理论中,相关的体系结构方法使用决策模块通过在接近某些安全操作条件的情况下切换到预先认证的基准控制器来保护高性能控制器(例如DNN)。通过减少保修,赔偿责任。

Reference

https://dl.acm.org/doi/book/10.5555/27648

https://wenku.baidu.com/view/4fc46682ba0d4a7302763aa5.html

https://shonan.nii.ac.jp/seminars/178/

  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
形式文法(Formal Grammar)指的是一种用于描述语言结构的形式化模型,它包括了一组产生式规则和一些起始符号,可以用来生成或识别符合规则的语言。常见的形式文法包括四种:正则文法、上下文无关文法、上下文相关文法和正则型文法。 下面是对这四种文法的定义和相互关系的简单介绍: 1. 正则文法(Regular Grammar)是一种最简单的形式文法,它的产生式规则只允许左部为单个非终结符,右部为单个终结符或终结符和单个非终结符的组合,且右部中只能有一个非终结符。正则文法产生的语言是一类有限自动机可以识别的语言。 2. 上下文无关文法(Context-Free Grammar)是一种产生式规则左部只有一个非终结符的文法,右部可以是单个终结符或由终结符和非终结符组成的任意长度的字符串。上下文无关文法产生的语言是一类可以由上下文无关语法树表示的语言。 3. 上下文相关文法(Context-Sensitive Grammar)是一种产生式规则左部包含一个非终结符和一个上下文环境,右部可以是任意长度的终结符和非终结符组成的字符串。上下文相关文法产生的语言是一类可以由线性有界非确定性图灵机识别的语言。 4. 正则型文法(Regular Type Grammar)是一种介于正则文法和上下文无关文法之间的文法,它的产生式规则左部和右部都只能是单个非终结符或单个终结符,右部中只允许出现最多一个非终结符。正则型文法产生的语言是一类由正则表达式描述的语言。 文法识别的语言,也就是推导(Derivation)指的是按照文法的产生式规则,通过一系列的推导步骤,由起始符号生成一个符合文法规则的语言。推导过程可以用语法树表示,每个节点表示一个产生式规则,叶子节点表示终结符或空串。语法树的根节点就是起始符号。 以上是对形式文法以及文法识别的语言的简单介绍。这些知识是自然语言处理和计算机语言设计领域中非常基础且重要的概念。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值