读人工智能全传01图灵的电子大脑
躺柒 2024-07-03 10:13:00 阅读 92
读人工智能全传01图灵的电子大脑
1.人工智能
1.1.人类对人工智能的梦想,可以追溯到很久很久以前
1.1.1.从古希腊开始,铁匠之神赫菲斯托斯(Hephaestus)拥有赋予金属物品生命的能力
1.1.2.从16世纪的布拉格开始,传说中伟大的拉比在那里用黏土制作了一个傀儡魔像,意图保护该城市的犹太人免遭迫害
1.1.3.从18世纪苏格兰的詹姆斯·瓦特(James Watt)开始,他为正在建造的蒸汽机设计了一个巧妙的自动控制系统——调速器,从而为现代控制理论奠定了基础
1.1.4.从19世纪初开始,年轻的玛丽·雪莱(Mary Shelley)被恶劣的天气困在瑞士的一栋别墅里,和她的丈夫——诗人珀西·比希·雪莱(Percy Bysshe Shelley),以及他们家的朋友拜伦(Byron)勋爵一起,玩了一场文字游戏,创作了《弗兰肯斯坦》
1.1.5.从19世纪30年代开始,在彼时的伦敦,查尔斯·巴贝奇(Charles Babbage)发明了分析机,这激励着才华横溢的阿达探寻机器是否最终能够具备创造性
1.1.6.从18世纪掀起的自动机器装置狂热开始
1.2.人工智能故事的开头与计算机的开端应该是一致的
1.2.1.艾伦·图灵(Alan Turing)
1.2.1.1.图灵在诸多领域都有非凡成就,最非凡的是在偶然的机会下,他发明了计算机
1.2.1.2.1935年,剑桥大学国王学院,一位才华横溢、不拘泥于传统的年轻学生
1.2.1.3.1952年,他以“严重猥亵罪”被起诉和定罪,被迫服用某种旨在降低性欲的粗制滥造的药物来进行所谓的“化学阉割”
1.2.1.3.1.图灵是同性恋,在当时的英国,同性恋是一种犯罪
1.2.1.4.1954年,他亲手结束了自己的生命,年仅41岁
1.2.1.5.图灵在第二次世界大战期间为英国政府效力,承担了一项非常重要的工作,而这项杰出工作的成果一直秘而不宣,直到20世纪70年代才公开
1.2.1.6.在20世纪80年代,这个名字在数学和计算机领域以外压根不为人知
1.2.2.人工智能研究人员和计算机科学家崇拜图灵,是出于完全不同的理由
1.2.2.1.他是真正意义上的计算机发明者,不久,又成为人工智能领域的主要奠基人
1.2.2.2.他发明了一种可以解决数学问题的机器,如今,为了纪念他,我们称之为图灵机
2.判定问题
2.1.由数学家大卫·希尔伯特(David Hilbert)于1928年提出
2.2.判定问题是指,是否所有的数学描述都是“可判定的”,即是否存在一种方法,可以确认某个给定的数学描述是真是假
2.3.“某个数是否是一个质数”是可判定问题
2.3.1.每当我们遇见“数n是否是一个质数”这样的问题时,只要给予足够的时间,就能找到答案:遵循相关步骤执行,最终就能得到明确的答案
2.4.英国数学家安德鲁·威尔斯(Andrew Wiles)在20世纪90年代论证著名的费马大定理,数学界花费了好几年时间才消化了他那几百页的手稿,并确信他的论证是正确的
2.5.是否所有的数学判定问题都是可判定的?
2.6.是否存在某种数学问题,无论你投入多少时间,都无法寻找到相应的可供严格遵循来解决问题的方法?
2.7.本质是数学问题是否都可以简化为寻找对应算法就可以解决的问题
2.7.1.图灵在1935年给自己立下的艰巨挑战,而他以令人难以置信的惊人速度解答出来了
2.7.2.图灵的证明短小精悍,而且很容易读懂(在确立了基本框架以后,真正的证明实际上只有几行)
2.8.图灵机的作用是严格遵循既定的步骤执行运算
2.8.1.如果所有的判定问题都是可以解决的,就意味着任何判定问题都可以通过设计一个专用的图灵机来解决
2.8.2.为了解答希尔伯特的问题,你所要做的是,证明存在某种判定问题是任何图灵机都无法解决的
3.停机问题
3.1.给定一台图灵机和相关输入集,它最终是会停止,还是永无止境地运行下去?
3.1.1.这就是一个判定问题了
3.1.2.图灵指出,这个假设会引起悖论
3.1.3.没有办法检测出图灵机是否停止。那么,“图灵机是否停止”是一个不可判定问题
3.1.4.存在某些判定问题不能简单地按照确定的步骤来解决
3.1.4.1.数学并不能被简化为遵循方法解决问题
3.2.如果存在图灵机A,对它输入任意图灵机,都能够判定其运行结果是“停机”或者“不停机”
3.3.那么可以构造图灵机B,调用图灵机A但输出永远与之相反,即B的输入经A判定“停机”,则B“不停机”
3.4.如果B的输入经A判定“不停机”,则B“停机”
3.5.那么,图灵机B的输入为图灵机B本身时,则出现矛盾
3.5.1.B只有在“停机”的时候才能“不停机”
4.冯·诺依曼架构
4.1.匈牙利裔数学家约翰·冯·诺依曼(John von Neuman)对ENIAC进行了相关调整,使ENIAC具备现代计算机的基本架构
4.2.世界上第一台商用计算机“费兰蒂一号”的出现
4.3.随着时代的发展,计算机变得越来越小巧,越来越便宜
5.电子大脑的实际功能
5.1.用计算机处理海量的复杂算术问题,其速度和精确程度远远超乎人类想象
5.2.电子大脑确实能承担许多对人类而言烦琐、复杂且困难的计算,但它们并没有智能可言
5.3.图灵机,以及它的物理表现形式计算机,它们只是遵循各种指令的机器而已
5.4.我们给予图灵机的指令,现在被称为算法或者程序
5.4.1.高级语言的作用是向程序员隐藏机器语言中某些烦琐到可怕的细节,让编程变得容易一些
5.4.2.所有的计算机程序都能归结为类似的指令列表
5.4.2.1.不管是Microsoft Word还是PowerPoint,不管是《使命召唤》还是《我的世界》,不管是脸书、谷歌还是淘宝,不管是浏览器还是手机App,抑或是支付宝、微信、QQ
5.5.如果我们要制造智能机器,它的智能最终必须缩减到遵从这些简单的、明确的指令上
5.6.计算机的运算速度非常快,非常、非常、非常快
5.6.1.一台普通的台式机以全速运行,每秒可以处理1000亿条指令
5.6.2.1000亿大概是银河系所有恒星的数量
5.6.3.你大概每10秒执行一条指令
5.6.3.1.你得做到不吃不喝、不眠不休(全年365天,全天24小时,每小时60分钟,每分钟60秒),那么大概需要31710年,你才能完成计算机1秒钟就能搞定的工作
5.7.相比人类,计算机的错误率极低
5.7.1.程序崩溃是常见的,但那几乎全是程序员编写程序时出的错,而不是计算机本身的问题
5.7.2.现代计算机的处理器可靠性非常高,它们的平均无故障运行时间高达50 000小时,每秒钟都能忠实地执行数百亿条指令
5.8.计算机可以做决策,只是我们必须给出它做决策所需要的精准指令
5.8.1.计算机随后可以自行调整这些指令,只要我们指导它在何种情况下应该如何做
5.8.2.意味着,计算机可以随着时间推移改变其行为
5.8.2.1.它能够学习
6.人工智能的产生为何如此艰难
6.1.需要了解一下到底哪些问题是容易用编程来解决的,而哪些问题则很难用编程解决,以及为什么
6.2.计算
6.2.1.让计算机做计算是最简单不过的,因为所有的基础运算(加、减、乘、除)都可以用非常简单的步骤来运行
6.3.排序,是指把一系列随机的数字按照升序排列,或者一系列姓名按照字母顺序排列
6.3.1.传统的笨办法慢得令人发指
6.3.2.一直到1959年,快速排序法才被发明出来,排序这个老大难问题才算得到了一个有效率的解决方法
6.3.3.快速排序法诞生后50年内,都没出现比它更优秀的排序算法
6.4.下棋就是重大挑战之一,它也是人工智能故事中非常重要的一环
6.4.1.事实上,有一种简单粗暴的方式可以玩好棋类游戏,基于一种名为搜索的技术
6.4.2.问题在于,尽管基于搜索进行编程是最简单不过的事情,但它除了能适应一些简单的游戏以外毫无用处,因为它需要占用太多内存,消耗太多时间
6.4.3.哪怕我们把整个宇宙的每一个原子都用来建造计算机,它也承担不起用“简单粗暴”的搜索方式来下一盘围棋或者象棋
6.4.3.1.它们需要的计算资源太过庞大
6.4.4.已经通过一种名为机器学习的方式得到了解决
6.5.无人驾驶汽车
6.5.1.驾驶对人类而言是一件很简单的事情,开车并不是一项需要高智商的技能
6.5.2.事实证明,让电脑来控制汽车简直困难重重
6.5.3.主要的问题在于,汽车需要知道它所处的位置以及周围环境
6.5.3.1.要弄清你的周围发生了什么,即将发生什么
6.5.3.2.确认你的位置,周围有哪些车辆,它们的位置,它们会朝哪个方向行驶,行人的位置,行人的移动轨迹
6.5.3.3.如果充分掌握了所有信息,那么你决定接下来该怎么做就非常容易了
6.6.任务难以完成的原因通常有两种
6.6.1.第一种是我们虽然知道理论上有某种可以解决问题的方法,但实际上却行不通,因为它需要太过漫长的运算时间,占用太高的内存,像象棋和围棋这样的棋类游戏就属于这一类
6.6.2.第二种是我们不知道解决问题的方法是什么(例如人脸识别),要解决这类问题,我们需要一些全新的东西(例如机器学习)
声明
本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。