姓名:吴庆恺 学号:16020610024
转载自:https://www.guokr.com/article/442468/ 有删节
【嵌牛导读】:人工智能技术的发展正逐渐改变我们的生活方式。我们几乎每个人手中都有一部智能手机,只需动一动手指就能够对家里的电器下达指令;在医院里,手术机器人已经开始被投入使用,代替医生做一些极其精巧的手术,具有图片识别功能的人工智能软件也开始帮助医生分析病理图片,从而更好地诊断病情,给病人带来福音;机器人生产线极大地提高了生产力,一台机器人能够顶十几个熟练工人的工作量;自动驾驶汽车也可能很快会来到我们的生活中,我们可以在开车时拥有自己的时间,甚至在开车时还可以参加远方的视频会议。
【嵌牛鼻子】:逻辑学,辩论,划分法,“全称命题”,“数目相同”,和“三个词项”,坚实的基础
【嵌牛提问】:人们很难将亚里士多德的三段论与人工智能联系起来,但正是他所提出的这套推理系统,真的能指导ai的发展吗?
【嵌牛正文】:从“if…then…”到“弱三段论”
生活中我们经常会用到“如果…那么…”的句式。“如果你考试考了一百分,那么爸爸妈妈就带你出去旅游”;“如果你多看书,那么你就能够有更多的知识储备”。这种在生活中非常普遍的句式其实蕴含着一种最常见的逻辑关系。
在公元前5世纪的古希腊,便已经出现了“如果…那么…”的推理辩论方法。如果你学过编程,可能会说,这不就是计算机语言中的“if…then…”吗?是的,只不过当时,这种语法不是用来编程的,而往往被用来做否定的推理。
举个例子,两个古希腊人相遇了,A为了显示自己的博学,用充满自信的口气向B说到:
“所有动物都会奔跑。”
这时,B就会拿出这个看起来像编程语句的话来反驳:
“如果所有动物都会奔跑,那么鲨鱼也会奔跑。”
根据常识,大家就知道A说的话是错的了,这便是最简单的逻辑推理(但是这种推理还是需要一定的经验常识来辅助,如果有人不知道鲨鱼是什么,那么B可能就不能说服这个人)。
不要觉得这样的对话很奇怪,古希腊社会非常崇尚演讲和辩论,这样的交谈方式并不少见。在这些辩论的过程中,人们也在不断思考如何进行辩论,这就促进了逻辑学的发展。
比如柏拉图曾提出过一种名为“划分法”的辩论方法。
举个例子,柏拉图曾经说过:
“所有动物要么是会死的,要么是不朽的,
“人是动物,
“所以人要么是会死的,要么是不朽的。”
在这段话中,第一行似乎是一个大前提,第二行成为一个小前提,第三行得出了结论。看上去,划分法已经具有了三段论的雏形,亚里士多德的《前分析篇》中认为,“划分法”是一种“弱三段论”。但划分法与真正的三段论还是有些区别的——这种“弱三段论”的结论并不是一个确定的推论(而是两种可能性)。
亚里士多德和他的三段论
三段论的提出者——亚里士多德。图片来源:Aristotle|Wikipedia
亚里士多德(公元前384-322),古希腊人,在逻辑学、心理学、政治学、哲学等领域均做出了卓越的贡献,因此被称为百科全书式的科学家。
提到亚里士多德,我们可能会联想到教科书中那个常被当作“反面教材”的形象(例如他认为地球上的物质由水火土气四种元素组成被作为朴素唯物主义的代表、他认为力是维持物体运动的原因等),但实际上亚里士多德在逻辑学、数学、哲学、美学、生物学等方面的贡献对后世影响深远。他开创了形式逻辑的先河,被誉为逻辑学之父;在哲学方面,亚里士多德虽然没有提出复杂的辩证唯物主义,但其思想中包含着辩证法的思维方式。可以说,亚里士多德在科学以及人类发展史中是功不可没的。
亚里士多德在他的著作《前分析篇》中提出了三段论的逻辑分析方法,他给出了三段论的定义:“只要确定某些论断,某些异于它们的事物便可以必然地从如此确定的论断中推出。”
通俗地说就是只要给定了确定的大前提和小前提,就能推出确切的结论。例如,亚里士多德曾就苏格拉底之死说过一段著名的三段论:
“人都会死。(All men are mortal.)………………………………大前提
“苏格拉底是人。(Socrates is a man.)…………………………小前提
“所以苏格拉底会死。(Therefore, Socrates is mortal.)”……结论
一个伍迪·艾伦式的三段论:“所有人都会死,苏格拉底会死,所以,所有人都是苏格拉底。”好像有哪里不对劲?图片来源:AZQuotes
三段论看起来比较简单,但其实还有很多的规则来确保三段论的正确性。在《前篇分析》中亚里士多德就为三段论设置了一些基本规则:
1、每个三段论中,必须有一个前提是肯定的并且必须有一个前提是全称命题。
2、在每个三段论中,两个前提中否命题的数目必须与结论中否命题的数目相同。
3、每个证明都是且只能是通过三个词项得到的。
这些规则里有一个重要的概念:全称命题。全称命题是指某一类事物的全部成分(个体)都具有或不具有某种性质。例如“人都会犯错”、“鸟都会飞”等包括了泛指某一类事物的词,这些前提都是全称命题。全称命题概念的出现也为后来数学中集合概念的提出奠定了基础。
为了方便记忆,我们把三个规则分别叫做“全称命题”,“数目相同”,和“三个词项”。
仅看规则不免有些晦涩,不妨通过“苏格拉底之死”的例子来理解三段论的规则:
在这个三段论中,两个前提分别是“人都会死”和“苏格拉底是人”,都是肯定的,且“人都会死”是一个全称命题,符合了“全称命题”。
结论是肯定的,两个前提也是肯定的,满足了“数目相同”。
在这个证明中,是通过人、苏格拉底、死这三个词来证明的,符合了“三个词项”。
雅克-路易·大卫的油画《苏格拉底之死》。图片来源:The Death of Socrates|Wikipedia
现在,我们可以来验证这些规则的正确性了。
对于第一条规则,如果三段论中没有全称命题,则可能出现的情况是这样的:
“野猪会跑,
“乌鸦会飞,
“所以野猪会飞。”
显然这是一个荒谬的三段论,这是因为两个相比较的内容其实毫无任何关联。所以,必须有一个全称命题,使得相对比的两个东西有关联。
对于第二条规则,如果前提和结论中的否命题数目不同,则可能出现这样的情况:
“所有的水果都不好吃,
“菠菜不是水果,
“所以菠菜好吃。”
这也是一个在逻辑上不成立的三段论。
对于第三条规则,如果一段证明中出现了四个词,可能会发生下列情况:
“所有人都会死,
“苏格拉底是人,
“所以凯撒会死。”
在这里凯撒这个无辜而又悲惨的第四者出现了,使得这个证明没有了逻辑关系。
引入变项
亚里士多德在《后分析篇》中采用变项来表示某一特征或某一内容。类似于今天计算机中的赋值。他用A来表示肯定的命题,用E表示否定,并认为所有的三段论都可以转化为AAA或EAE两种形式。
AAA:
“所有糖都是甜的,
“葡萄糖是糖,
“所以葡萄糖是甜的。”
EAE:
“所有的好人都不会骗人,
“小明是好人,
“小明不会骗人。”
亚里士多德还将他的三段论划分为三个格式和十四个有效形式,对于具体内容我们就不再这里细述了。
这一套推理系统,已经出现了现代逻辑公理系统的雏形,保证了逻辑推理系统的有效性和必然性,也保证了推理结果是“逻辑真理”。
得到“逻辑真理”这点在逻辑分析中至关重要。在这套逻辑推理系统产生前,若想对某些事物进行判断,依靠的是个人经验。人们的经验总是有限的,因此能够做出判断的内容也是有限的。而根据亚里士多德的逻辑推理系统,人们可以不依赖于经验事实,而只通过逻辑分析的方法得到“逻辑真理”。正如罗素认为的那样:“逻辑只与形式有关,它们不包含任何经验的内容,它们不依赖于其内容而仅依赖于其形式。”这对于逻辑学的发展有重大意义,同样对计算机的发展也具有重要意义——计算机并不存在生活经验,因此需要一套完全不依赖于经验的 “逻辑真理”的体系。
乌鸦悖论:“树叶是绿色”和“乌鸦是黑色”之间竟然有关系?
亚里士多德的三段论推理系统保证了推理所得的结果是“逻辑真理”。而逻辑学的有趣之处在于,一些在逻辑学中被认为正确的事情可能会与人们的直觉相矛盾,让人们很难理解和接受,其中典型代表就是乌鸦悖论。
先来看一个命题:“所有乌鸦都是黑色的”。
我们已经看过了几百只乌鸦,它们都是黑的,我们就使用归纳法,认为乌鸦都是黑的,也就相信这一命题是真的。之后我们每看到一只黑色的乌鸦都会让我们更加确信这一命题为真。
现在来回忆一下高中时候学过的逆否命题,“所有的乌鸦都是黑色的”这一命题的逆否命题是:“所有不是黑色的东西都不是乌鸦”。
重点来了,一个命题和它的逆否命题在逻辑上是等价的,如果我们认为“所有乌鸦都是黑色的”为真,那就也应该认为“所有不是黑色的东西都不是乌鸦”是真命题。同时,每当我们看到一棵绿色的大树、一盏蓝色的台灯、一只褐色的烤鸭的时候,就应该让“所有乌鸦都是黑色的”这一命题的可信度又增加了一分(对此贝叶斯概率可以证明)。
在我们的直觉中,并不觉得看到一棵树、一张白纸与乌鸦有任何关系,但却要接受我们已经在逻辑上增加了乌鸦颜色命题的可信度,这往往令我们很难理解,这就是著名的乌鸦悖论,它是一个人们的直觉和感性的认知与逻辑学中的理性判断之间存在矛盾的著名案例。
逻辑打开了人工智能的可能性
可能人们很难将亚里士多德的三段论与人工智能联系起来,但正是他所提出的这套推理系统,使逻辑迈上了形式化的轨道。后人在此基础上对其理论不断完善和发展,让逻辑学得到了极大的进步。尤其是后来发明的布尔代数,使计算可以通过逻辑变换得到。后来,英国哲学家、逻辑学家罗素(Bertrand Russell)曾尝试把数学完备的建立在逻辑基础上,虽然最终失败了,但是里面产生的想法和伟大思想从侧面促进了计算机科学的诞生,为人工智能的发展奠定了最坚实的基础