人工智能:浮现
编辑君整理今年尖端科技新闻内容的时候发现,Artificial Intelligence(AI,人工智能)出现的频率高的离谱。
其实平时使用的各种APP中可以看到大量云端应用人工智能的痕迹,比如美颜自拍、推荐兴趣等。这样来看,人工智能已经在我们生活中的很多方面。
问题来了,什么是人工智能呢?
通俗的的解释是指由人制造出来的机器表现出来的智能,让人类用自己的智慧去破解智慧本身的奥秘。
这么简单的一句话,却是几代人的努力的目标。
早在计算机和人工智能的概念提出之前,数学家有过类似的想法。
1900年,数学家David Hilbert(大卫·希尔伯特)在巴黎召开的数学家大会上宣布23个未解决的难题,其中的第2问题、第10问题和人工智能密切相关,最终促成计算机的发明。
希尔伯特
我们简单描述一下。
第2问题:证明数学系统中应同时具备一致性(数学真理不存在矛盾)和完备性(任意真理都可以被描述为数学定理)——复杂的体系的相容性,可以用较为简单的体系中的手段来证明。最终,全部数学的相容性都可以归结为基本算术的相容性。
第10问题:是否存在着判定任意一个丢番图方程有解的机械化运算过程——前半句比较晦涩,但是后半句的“机械化运算过程”用今天的话说是算法。
首先是第2问题,被来年轻的Kurt Friedrich Gödel(库尔特·弗雷德里希·哥德尔)证明是错误的——基本算术的相容性不可以在自身内部证明,因此当然不可以用来证明比它更强的系统的相容性。
哥德尔
如果把人工智能也看作一个机械化运作的数学公理系统,它也无法仅凭自身解决所有问题。换句话说,人工智能不会超过人类。
不过,这个命题成立的一个前提是人和机器不同,不是一个机械的公理化系统,这个前提是否正确还没有定论。
接下来是是第10问题,同样是一位年轻人——著名的Alan Mathison Turing(艾伦·麦席森·图灵),他设想的图灵机——计算机的理论原型,形象的模拟人类进行机械化运算的过程,并且把所有这些过程模型化,最终为计算机的发明铺平道路。
图灵
即使看似不可预测的变化,仍然没有逃出输入集合、输出集合、内部状态、固定程序的图灵机模型。某些改变可以扩大集合的维数和范围,但是只有这4个东西抓住信息处理的本质。
模拟图灵机
然而,这还不够。
图灵认为机器是否具备智能的重点并不在于如何打造强大的机器,而在于人类如何看待智能——依据什么标准评价一台机器是否具备智能。
后来,图灵在1950年发表「机器能思考吗?」一文中提出一个标准:如果一台机器通过“图灵测试”,我们必须接受这台机器具有智能。
至于什么是“图灵测试”,「机器能思考吗?」设立的标准相当宽泛:只要有30%的人类测试者在5分钟内无法分辨出被测试对象,可以认为程序通过图灵测试。
举个例子,两个人在有限的时间聊天,其中一个人无法判断和他聊天的人是不是机器,使用这种程序的机器可以认为具有智能。
这样来看,“图灵测试”还在人工智能比较初级的阶段,因为和人聊天,或者试着“欺骗”人类,都是人工智能的一个场景,不是唯一的标准。人工智能的其他方面,比如创造性解决问题的方法和复杂形式的决策都没有体现。
当然,我们不可以否认图灵为人工智能的推进做出的贡献。可惜1954年,图灵死于一个被剧毒氰化物注射的苹果,年仅42岁。美国计算机协会以图灵命名的图灵奖,专门奖励对这项事业作出重要贡献的人,这相当于计算机领域的诺贝尔奖。
历史的进程还在继续,1945年6月,现代计算机与博弈论的重要创始人John von Neumann(约翰·冯·诺伊曼)发表一份长达101页关于Electronic Discrete Variable Automatic Computer(EDVAC、离散变量自动电子计算机,早期的计算机)的报告草案,详细说明EDVAC的设计逻辑,并且提出我们现在熟知的“冯·诺依曼体系结构”,一直延续至今。
冯·诺伊曼
冯·诺依曼结构的计算机和图灵机一脉相承,但是最大的不同在于图灵机只有固定功能的程序,如果想要实现别的用途,必须“重写程序”。
听着容易,实际上最早的计算机没有可编程化的概念,“重写程序”意味着设计结构、线路都要推倒再来,工程量非常庞大。
冯·诺依曼结构的计算机借由创造一组指令集,将运算转化成为一串程序指令的运行细节,让机器更有弹性,存储程序型的概念也可让程序运行时自我修改程序的运算内容,最终推动着人类历史进入信息时代,使得人工智能成为可能。
时间到了1955年,人工智能学科的先驱Oliver Gordon Selfridge(奥利弗·戈登·塞弗里奇)和计算机科学和认知信息学领域的科学家、图灵奖获得者Allen Newell(艾伦·纽厄尔)出席洛杉矶召开的Western Joint Computer Conference(美国西部计算机联合大会)。
塞弗里奇发表一篇模式识别的文章,而纽厄尔探讨计算机下棋。或许塞弗里奇和纽厄尔都没有意识到,他们的观点预示人工智能随后几十年关于“结构和功能”、“强人工智能和弱人工智能”的斗争。
这是一个楔子,从这个时间节点以后,人工智能才开始走向真正的发展期。
- Google Fonts导致WordPress 速度问题的三个解决方案
- DW Replace Open Sans:将WordPress 后台中的open-sans字体加载源从Google Fonts换为360 CDN
- Angularjs基础(三)
- 低多边形(Low-Poly)简介及相关素材分享下载
- 开发者的福音:GenerateWP 自动生成WordPress 开发相关代码
- 自定义WordPress 密码文章提示文字
- 解决WordPress文章密码保护在首页(摘要)不起作用
- WordPress 3.9+的 TinyMCE 4 编辑器增强开发
- Angularjs基础(二)
- Angularjs基础(一)
- iOS 7 Web App的初级优化之道
- Less 常用基础知识
- WooCommerce 结算页面自定义(删除/添加)表单元素
- Waves:类Material Design 的圆形波浪(涟漪)点击特效插件
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法