计算机可以做推理逻辑吗?
【作者:吴斌,原文创作于2016-04-20,如今仍有较高参考价值,但不排除部分信息需要更新。文中有很多引用,不一一列举出处了。】
计算机(主要指人工智能AI)能不能做推理逻辑?这个问题我思考了很久。其实答案很简单,当然可以。其实推理就是:规则+依据已有规则生成新规则。计算机就是基于数学的演绎逻辑做的,程序其实都是if...else...,规则是计算机的基本能力,简单的由规则产生规则并不难,比如:规则1 : 1+2=3,规则2:加法满足交换规则,所以产生规则:2+1=1+2=3。但是,规则多了以后,会造成组合爆炸,推理问题就很难了。更重要的问题是,谁来产生初始规则?目前看来,只有人来产生初始规则。而且,很多时候计算机做不了推理逻辑,主要原因就是初始规则不够。因为归纳是不严谨的,只有演绎才是严谨的推理。甚至连统计学都不被认为是严谨的数学(少量的贝叶斯推理可能被认为是例外)。所以,产生初始规则是非常困难的。
可能有人会说,贝叶斯派的理论是不是一个可行的路径?这个问题很难回答,因为这个问题可大可小。往大了说,这是一个世界观的问题,因为频率派和贝叶斯派是数理统计领域的两大门派,核心思想是很不同的。频率派,也就是经典统计理论派,我认为核心思想是从宏观角度来看这个世界。贝叶斯派,我认为核心思想是从微观角度来看这个世界。更多关于两派理论的讨论,我以前曾经讨论过,建议看这个文章:贝叶斯学派与频率学派有何不同? 往小了说,这是个实现方法的问题,实际上在统计机器学习领域,大多数的实际应用都是使用频率派的方法,即“判别式模型”。而基于贝叶斯的模型,很多时候会面临一些难以克服的困难。贝叶斯的公式其实很简单,如下图所示:
如果不了解贝叶斯的基本理论,可以看一下我以前转的文章:数学之美番外篇:平凡而又神奇的贝叶斯方法
在实际使用时,完整的贝叶斯公式一般是用不了的,因为发生一件事情,可能的原因非常多,一般情况,不可能把所有的原因(条件)都做统计,而且,很多原因(条件)是有相互影响的,一旦考虑相互影响,计算会几何级增长,完整的贝叶斯公式几乎是无法计算的。另外,很多时候,在你预测的时候,很多条件(特征)也是获取不到的,实际上,大多数时候你不能获取到一个事情发生的全部条件数据。所以,工业界常用的方法是朴素贝叶斯算法,实际上是对贝叶斯做了大幅度的约束,就是要求所有条件(特征)是相互无关的,才能求解,而且,通常是当你的特征非常多的时候,朴素贝叶斯才基本可用,因为特征非常多的时候,可以近似地忽略条件(特征)之间的相关性。换句话说,条件(特征)之间有相关性才是普遍现象,所以朴素贝叶斯的条件无关是个强约束。而且,如果你的特征很多的时候,你也可以用广义线性模型求解(判别式模型),比如Logistic regression, 使用起来会更容易操作,而且有人曾经证明特征量很大的时候,朴素贝叶斯与Logistic regression是等价的。(而且,判别式模型比贝叶斯的模型更容易做正则化,更容易调参,这个问题展开讲还有很多内容。)
总的来说,我的个人观点:基于贝叶斯理论,或者贝叶斯网络来做推理逻辑,只有在做强约束条件下,才能使用,而且,很多时候的实际应用中,就算是加约束也是很难真正有效的,因为实际情况变化会很复杂,远比预期的复杂。
所以,在可以预见的未来(大约是10年),我想这个问题是难以解决的。
不过,在更远的未来,可能有一种意外情况。未来的有些计算机不是基于传统逻辑的,比如,量子物理就不是基于传统逻辑可以解释的。
补充说明,这里所说的是严谨的推理逻辑(基于演绎的方法),实际上还有些概率性的推理方法研究(一般是基于统计推断的方法),没有详细描述,严格说,那是“推测”。
计算机可以做推理逻辑吗?相关推荐
- 给计算机处理器做手术来研究大脑
来源:混沌巡洋舰 在人类对大脑认识的历史上,曾经使用过很多隐喻来描述脑,比如齿轮机械.电话交换机.计算机等等.目前,"脑就像一台计算机"这个隐喻仍然占据着主导地位,尽管人们对于这个 ...
- 转一个校友的文章--“在计算机领域做研究的一些想法”
在计算机领域做研究的一些想法 感谢 Xi Tan # 前言 # 1. 讨论一下计算机领域的牛圈和'带头大哥': 2. 讨论一下科研方法: 3. 讨论一下计算机领域的学术论文(会议.期刊): # 第一章 ...
- 计算机操做系统(十二):进程同步和互斥
计算机操做系统(十二):进程同步和互斥 来源王道考研视频: https://www.bilibili.com/video/BV1YE411D7nH?p=18 基本概念 异步性:各并发执行的进程以各自独 ...
- ldar是什么意思 计算机组成,第一章TEC-9计算机组成和数字逻辑实验系统介绍….PDF...
第一章TEC-9计算机组成和数字逻辑实验系统介绍-.PDF 目 录 第一章 TEC-9 计算机组成和数字逻辑实验系统介绍----------------------.2 一.TEC-9 实验系统的特点 ...
- CVPR2021 | 视觉推理解释框架VRX:用结构化视觉概念作为解释网络推理逻辑的「语言」
本文提出了一个视觉推理解释框架 (VRX: Visual Reasoning eXplanation),将人们容易理解的.high-level 的结构化的视觉概念作为「语言」,通过回答为什么是 A,为 ...
- CVPR 2021 | 视觉推理解释框架VRX:用结构化视觉概念作为解释网络推理逻辑的「语言」...
点击下方卡片,关注"CVer"公众号 AI/CV重磅干货,第一时间送达 作者:葛云皓 | 编辑:Amusi 本文提出了一个视觉推理解释框架 (VRX: Visual Reaso ...
- 计算机逻辑函数,计算机智能化简多变量逻辑函数的算法分析
摘要: 在设计逻辑电路图时,由真值表直接得到的函数往往比较复杂.代数法和卡诺图法等方法对于变量数目较多的逻辑函数则效果不佳,本文介绍一种可编程化简复杂逻辑函数的方法──Q-M法(也叫表格法),该方法可 ...
- 北京工业大学计算机试题,北京工业大学计算机学院 《数字逻辑》闭卷试题(A卷)...
北京工业大学计算机学院 <数字逻辑>闭卷试题(A 卷) 考试时间:2009 年1 月8 日13 时30 分至15 时05 分 学号:姓名:成绩:_ 题号:一二三四 得分: 一.填空题(每空 ...
- 计算机主机需要ccc,哪些计算机需要做3c认证?计算机3c认证
原标题:哪些计算机需要做3c认证?计算机3c认证 计算机用作各种工业和消费设备的控制系统.这包括简单的专用设备,如微波炉和遥控器,工业设备,如工业机器人和计算机辅助设计,以及通用设备,如个人电脑和移动 ...
最新文章
- 如何在Python中对字符串进行子字符串化
- Java BitSet使用场景和示例
- linux c指定相对路径,linux c编程,选用popen()得到一个相对路径的绝对路径
- java 泛型和集合_Java集合和泛型
- C语言高级编程:二级指针的赋值
- python打开文件中文名_windows下Python打开包含中文路径名文件
- sid更新 续订sas软件_顶级统计软件sas9.4 64位sid 有效期至2017年6月底
- UWP入门一 7天酒店客户端源码及说明
- Win8Metro(C#)数字图像处理--2.7图像伪彩色
- ArcGIS投影坐标转经纬度坐标
- 雷电模拟器手游辅助制作教程
- Dilated Convolutions 空洞卷积
- 游戏,CG音乐音效配音
- python爬虫学习爬取股票数据
- c语言计算两个正整数的最大公约数
- 遗传算法实现寻找函数最值
- 书评 | 赋能 - 打造应对不确定性的敏捷团队
- 实现舞会上男女舞伴的自动匹配。
- 暑期JAVA学习(41.1)TCP通信——多发多收消息
- 撤县设区,就能过城里人的生活了?