原创 纯科学个
目前,ChatGPT的出现引发了舆论对人工智能的一片讨论热潮。但是,业界和大众媒体认知错误最多、持续时间最长的技术之一就是人工智能了。
为什么本文敢说是“网上最权威”?1980年进入大学期间我最感兴趣的技术就是计算机,并且第一个自我选定的学术研究课题就是人工智能,对这一课题的研究持续了40多年。我在研究生期间的图像与视频处理专业,研究过图像的人工智能模式识别,包括利用卫星云图判断农作物长势以及人脸识别。人们对ChatGPT发出的很多惊叹,我在这40多年间已经见过无数次了,一点都不新鲜。在过去40多年的个人职业生涯中,我不仅做过软件和硬件开发,而且在计算机、通信、数字广播领域都有6年以上的职业经历。我在全球第一个提出海量内存计算机(相关研究分三期发表在1998年8月的《计算机世界报》上),比SAP提出“内存计算”早了十多年;全球第一个提出软件定义网络(SDN)概念,比推出OpenFlow(2008年形成概念,2009年底第一版推出)的斯坦福大学早3年。
可能有读者会对此有疑惑,本文最后会专门讨论一下SDN问题以及它与人工智能的技术关联。此处只简单提一下,我作为最早SDN概念提出者是OpenFlow协议的Editor也认可的,部分的相关内容正式发表在我2016年出版的《通播网宣言》一书中,所以其他人就不用费心来质疑了。我是业界技术水平最顶尖之一的人工智能视频公司浙江宇视的顾问。本文是我40多年研究人工智能的主要结论,可能会颠覆读者对人工智能的很多认知,但其道理却又是清晰无比,简单至极的。
毫无疑问,制造出像人一样有智能的机器这样的目标,永远会是一个非常刺激社会大众注意力的话题。它可以说是两大永远最吸引人的热点技术话题之一,另外一个就是外星人。与外星人主题一直摸不着门不同,人工智能永远都似乎近在眼前,永远都有一些让人看得见的成果出现,永远都在获得惊人的进展,永远都有人认为未来机器可能超过并统治人类,期待中的产品却永远都让人失望和推迟应用......不是今天才这样,40年前我开始研究人工智能这个主题的时候就是这样,并且一直就是这样。
一、图灵测试本身就是完全错误的
关于人工智能最著名的一个判断依据就是图灵测试(The Turing test)。它是由艾伦·麦席森·图灵提出,指测试者与被测试者(一个人和一台机器)隔开的情况下,通过一些装置(如键盘)向被测试者随意提问。进行多次测试后,如果机器让平均每个参与者做出超过30%的误判,那么这台机器就通过了测试,并被认为具有人类智能。图灵测试一词来源于艾伦·麦席森·图灵写于1950年的一篇论文《计算机器与智能》,其中30%是图灵对2000年时的机器思考能力的一个预测。
这个测试事实上也成为机器是否具有人类智能的一个判断标准,简单点说就是以人为标准,如果有超过平均30%的比例区分不出人和机器,那就认为这个机器有智能。但是,道理实在是太简单了:有人能拿诺贝尔物理学奖,有人物理学考零分;有人4岁能谱曲,有人一辈子五音不全......人和人之间都如此之地天差地别,你让机器怎么和人一样?
更重要的一个有些荒唐的问题是:如果一个机器什么标准知识点都答得出来,它记忆力无限强大,什么知识都能记得住,那它一定是机器,怎么可能是人?因为至少在记忆能力的智能上太过高于人类而肯定通不过图灵测试,这该怎么算?如果只是以上纯学术的问题,那也就只在纯学术领域讨论就是了,产生不了什么实际影响。但实际上不是如此,这个事实上的人工智能标准带来的重要后果是引导了业界这样的发展目标:研发生产出具有像人类一样智能的机器。这就产生了基本技术哲学上一系列的根本性误导,并导致相应的AI错误。
二、目标不明
提出人工智能的一开始,就试图实现“自然语言翻译”的目标。今天的ChatGPT,它归属的领域也是叫自然语言处理(NLP)。当初以为这个事情非常容易,只要把要翻译的两种语言的文字输进机器,就差不多可以实现自然语言翻译了,但真的一做就发现问题远远没有那么简单。日本提出的第五代计算机计划,软件上采用Prolog语言,也是把处理自然语言作为主要目标,但最后以失败告终。
“自然”这个词是一个非常糟糕的概念,因为它意味着没有任何前提性的约束。从技术哲学上说,人类设计的任何有效的技术产品,都必须要有约束条件,不可能存在没有任何前提约束条件的技术产品。我们可以设想一下,要开发一种“自然路面高速汽车”,这个该怎么做?
人们可以很快就研发出一个演示性的产品,在沙漠戈壁上跑得很快的第一代“自然路面高速汽车”。可是这个达到目标了吗?当然没有,它能在湖面跑吗?不能,因此再增加水陆两栖功能。这能算“自然路面高速汽车”吗?似乎有点样子,但肯定又不能算,如果遇到树林怎么办?前面装上高速切割机,把树木瞬间切断,从而可以在树林里也能高速奔跑。获得重大进展,人们一片欢腾。但这能算“自然路面高速汽车”吗?还是不能,遇到不仅比轮胎、甚至比汽车本身还高的大石头怎么办?因此车头上再装上石头粉碎机,可以快速通过大石成堆的自然路面。人们又是一片欢腾,但这能算“自然路面高速汽车”吗?依然不能,遇到前面是悬崖峭壁怎么办?再装上攀岩器,能快速攀上悬崖,全社会再次发出一片惊叹,但这能算“自然路面高速汽车”吗?当然不能,如果前面是万丈深渊怎么办?再装上可以滑翔的翅膀,能从山顶上滑翔到山底。全社会又是一片欢呼,但这能算“自然路面高速汽车”吗?不能。还有沼泽、火山、泥石流、洪水、海面9级海况、15级台风、龙卷风路况......永远会有没完没了的新“自然路面”问题在前面等着。
最近有一个视频宣传波士顿机器人的演进过程,从30年前开始,一直演进到今天。进步真的很大,可是30年过去了,直到今天也不确切知道它能用来干什么。前不久曾有一个视频展示波士顿机器狗被一位漂亮的贵妇当宠物狗牵着漫步,真的很吸引眼球。可是宠物的本质是什么?摸着它的脑袋能让人产生爱的感情。你摸着这家伙的脑袋试试什么感觉?
还有宣传波士顿机器狗能干家务。人工智能如果只是秀一下,什么事情都可以干。但真当它们去干的时候必须明白,它必须得是严格定义和规范的工作。如果你不能对准备让它干的家务进行明确定义,真以为它什么家务活都能干,劝你还是拉倒吧!
前几年因为疫情,在美国很多工作没人做,终于想到用波士顿机器人做搬运。但专业的搬运机器人早就有了,哪里需要波士顿机器人这么复杂的玩意儿?
有人认为这种可以在复杂山地环境负重的机器人可以在战争中向前线运送物资。实在是难以理解,有这功夫做一个很简单的多旋翼无人机,不就什么路面都可以不用管,直接向山顶上送东西了吗?波士顿机器人能穿过山间一条十几米宽的水沟吗?拉倒吧!这么复杂昂贵的东西哪能当成野战型的装备。
中国已经用无人机向山头上的边防哨所运送各种物资甚至是新鲜食材的火锅,完全实用化了。
三、永远98%识别率的语音输入
今天很多人在用语音输入和手写体识别,我也在用。但如果我告诉你30年前就有,你会作何感想?20世纪90年代初我还在北京邮电大学读图像处理研究生时,我的一位大学同学郑元成在北方交大读博士,他的研究方向就是语音识别。当时我去他实验室和他深入研讨了这个技术。他说他做的识别率可达到98%。刚开始我很兴奋地认为“这马上就可以实现大规模普及了啊?”,但深入交流完就明白了,这是一个深到完全无底的深坑。先说为什么语音识别的技术指标永远都是98%,因为从语言学角度说,一旦一篇文章的差错超过2%,看起来体验就会明显变得很差。如果有超过5%词汇不认识,阅读理解就会出现严重困难。所以,从很早开始,语音识别的行业人士都会说自己的技术识别率可达到98%,因为不这么说不行。只要输入的语音规范到一定程度,即使几十年前水平很差的语音输入识别率真的就可以达到这个水平。但只要规范性稍微变差,需要的计算难度就会指数级甚至超指数级上升,即使今天的语音输入识别率也会迅速降到远低于98%。
40年前的80年代中期,我在北京计算机展会上就看到过可以识别印刷体的OCR产品,参展者是两位学校的老师,他们声称自己的技术识别率可以达到99%以上。90年代初期,曾有一个汉王手写板输入装置在市场上出现过,我在王码电脑时曾给一些连键盘都不会打的老板装过这个产品。如果非常认真地一笔一画写,识别率尚可,但只要稍微潦草一点,它就识别不出来了。因此刚开始很新鲜,但用不了多久就用不下去了。这个产品很快就在市场上再也见不到。
直到今天,简单按照摩尔定律计算,芯片和算法的能力相比30多年前已经是百万倍的提升,语音识别的能力的确相比过去体验显著改善。但是,只要你说话稍微不规范一点,例如中间不规则停顿多一点,背景有一些吵杂,识别率同样就会迅速下降。使用它们时一定要很小心,如果不注意被识别成一些骂人的话,直接就在微信等通讯软件里发给别人可就出大事了。因此,有些人用着用着,出几次事故后就不愿再用了。如果你能理解人工智能是什么就会明白,必须要给它一定的规范才能有效,不要指望它“和人一样”。况且,人都不一定能完全听得懂另一个人说什么,你怎么指望机器能完全准确地做到?在人工智能领域,这个情况不是个案,人们想象出的很多工作是人都不一定做得好的,却指望机器能做得很好。
中国书法里的狂草有几个人能看得懂的?
有些书法你要说它就是成心制造误解也不为过。人都容易理解错,况且机器。
只听说过“坐月子”,怎么还会有“坐尺子”?
荡妇?
好狗边上飘?
妇女之宝?
正确答案是:千人坐,坦荡,风景山边独好,宾至如归。
四、可靠性 —— 智能一定就是好事情吗?
人们普遍以为,只要智能水平越高就越是好事,机器模仿人的智能越像就越好,这种看法大错特错。人的智能的确是人得以自豪的最重要能力,但我们一定要理解到人们平时不太注意的问题另一面:智能并不见得一定就是好事情。如果机器有效地模仿人的智能,有可能是与人一样聪明、能干,也可能是与人一样愚蠢、做事情不可预知、不可靠、感情用事......我们生产机器最重要的不是它们的能力如何,而是要可靠。我们为什么要发明机器?不仅是因为提升效率,而且因为人的不可靠、不可预知。所以,人类的文明有很多创造不是出于提升人的智能,反而是出于限制和约束人类的智能。我们之所以需要企业管理,就是因为人是智能的主体,只有通过约束才能使人做出规范和可预测的工作结果。我们对机器的可靠性要求不是达到98%、99%,而是要达到小数点后面4个(99.9999%)甚至6个以上的9(99.999999%)。这种程度的可靠性是拥有智能的人类不可能达到的。一切智能化的主体、包括人,除非是超高强度训练、纪律性超强的军队,否则其可靠性很难超过小数点后面2个9。
花那么大代价做出一个可靠性低劣到向人看齐的机器干什么?和人一样就一定是好事情吗?绝对不是。做人工智能的人首先自己得有真正的智慧,而不是盲目去搞什么本质上不可靠、愚蠢、工作结果不可预测的“人工智能”。
一旦将问题进行足够的限定、规范和简化,对可靠性的要求不是那么高的领域,人工智能的确可以获得一些实际应用。但如果问题提得不对、目标不明、可靠性要求又高的领域,又总是会觉得前面还有无限的路要走。
汽车的车牌是一个相对规范的对象,同时在很多场景里,识别存在一定的差错率是可以容忍的,这样的话人工智能就可以获得很好的应用。目前即使做得很好的车牌识别能达到千分之一的差错率就已经很不错了,在诸如停车场,道路违规监控等领域,这个水平的差错率是可以接受的。因为对车辆违规来说,还有多个原始照片可以人工复核。而在高速公路上,阿里也曾做过将支付宝与车牌绑定试图取代ETC,但这个就没有普及开来,原因何在?可能原因有多个,但仅从技术上说,高速公路上的大规模车辆自动收费系统,因车流量极大、又涉及收费问题,其可靠性要求是会非常高的,千分之一的差错率肯定难以接受。ETC系统不仅因为无线信号传递本身的可靠性就极高,而且ETC的序列码等编码设计本身就带有校验码,如果传递过程中出错它会自动发现并重传。如果需要,如卫星及其他太空信号传递的信号编码,可能还带有纠错码设计,可以不用重传就自动纠错。这些技术的应用可以获得极高的可靠性,它们是人工智能不可能达到的。
所以人们一定要明白这样一个公式:
人工智能 = 有效的人工智能 + 人工愚蠢 + 人工不靠谱(不可预测、可靠性差)
只有充分理解了以上公式,才能对AI趋利避害地加以有效利用。
五、人工智能会超过人、取代人吗?
这个问题是与人工智能相伴随的、被人问得最多的问题,也是最没有智能的一个问题。真是废话,人如果做出来的东西不能超过人你做它干什么?直接用人去干不就得了。试问一下人类创造出来的工具和机器有哪一个不是能够超过人取代人的?200万年前的原始人打出来的石器切割能力就超过人了,况且是现在做出来的东西。计算机从一开始就在计算速度上超过人了。人类发明的任何机器从一开始就在取代人,只不过是取代的工作对象和取代速度、规模、经济性不同而已。人们唯一需要考虑的问题是你的工作被机器取代后你该干什么,你该做哪些不会被机器取代的事情,你该如何去利用各种可以取代人的机器,以增强自己的竞争优势。
在人工智能领域,最充分最广泛地展现了人类是如何地缺乏智慧,甚至表现得非常愚蠢。当人类面临被机器取代的前景时,可能会产生一种恐惧感。为了平衡这种恐惧感,工业革命时期的工人发动卢德工人运动去砸毁机器。而现在人类知道不能这么干,因此就在心理上寻找其他的各种平衡。几十年前计算机刚开始蓬勃发展时,出现过一个很奇怪的观念是“计算机怕水”或“机器人怕水”。总得找出点人工智能的致命弱点,人类才会获得一些心理安慰是不是?这个好像是有道理,因为水是导电的,如果电路板进水了就会短路甚至烧毁。所以,美国好莱坞的很多科幻大片中,人类的英雄们都是用一盆冷水把造反的机器人置于死地,例如中国很多观众熟知的《未来世界》《血洗乐园》等都是如此。他们哪里知道水下机器人是机器人最早获得应用的门类之一。技术上的道理太简单了 —— 把电路密封起来不就不怕水了。
六、简化问题与技术能力——为什么AI无人驾驶永远不可能成功?
人类解决任何问题永远是要从两个方面入手的:
将问题简化和规范,以极大地降低对技术能力的需求。
提升解决问题的能力,以便解决更难的问题。
人类永远需要不断增强解决问题的技术能力,但无论如何提升,技术能力又永远都是有限的。如果只是从提升能力一个方面入手,表面看似乎水平在不断提高,却可能永远也解决不了问题,因为任何问题本身如果不加限定都可能是无限复杂,从而需要无限强大的能力才可能解决。人类解决交通问题永远是从道路和车辆两个方面同时入手,才能有效解决问题。火车只是车头和车箱问题吗?当然不是,得首先解决铁路的问题。路如果不行,仅仅通过车头和车箱的技术改进是不可能获得成功的。高铁不仅是高铁车头和车箱,更重要的是高铁的道路与普通铁路差异巨大。
普通铁路的路轨只能跑到普通车速
高铁路轨
高速公路为什么可以跑高速?是车有什么不同吗?不是,车没什么变化,只是路不同。
只有在这种高速路面上才能跑高速,与车没多大关系。
别指望通过改进车的设计在这种路面上跑高速了,最终结果就是“不如飞起来得了”,但那样还是汽车吗?
什么是道路?它就是对交通问题的简化。一公里高铁建造价格在1亿多人民币到几亿人民币,一公里高速公路造价在3000万到1个亿,由此就知道为了简化交通问题得付出多么大的代价。如果不首先把问题简化,是不可能真正有效解决问题的。
没有无人驾驶道路,怎么可能有无人驾驶汽车的成功?如何才能真正实现无人驾驶?与业界的幻想完全不同,不是通过增强车辆的人工智能,而是严格制定无人驾驶车辆的行驶规则,首先建设完善的无人驾驶道路。在无人驾驶道路上行驶时,不允许车辆有任何智能行为,一切行动必须听道路的指挥。汽车驾驶首要的是安全,安全就需要极端可靠。而人工智能最大的特点就是不可靠,你用人工智能无人驾驶软件训练100亿、1万亿、1亿亿亿公里道路里程也没用,怎么可能用它来实现无人驾驶?人驾驶汽车都不可靠,人工智能驾驶汽车怎么可能可靠?现在人驾驶汽车全球每年出车祸死亡130万人,如果全改成人工智能驾驶每年死个零头30万人能不能接受?不可能接受,为什么?因为现在人驾驶汽车每年死一百多万人是车主或路人自己负责任。一切汽车上的安全措施没有任何一个是能绝对保证不出车祸的。汽车碰撞实验的安全规定里,测试车速仅仅是最多64公里/小时,全世界没有超过这个的。你开的车速达到65公里/小时,出任何车祸都肯定与厂家没有任何关系,你开的车速55公里/小时出车祸和汽车厂家也未必有什么关系,因为是车主自己在开车,谁知道你自己方向盘打成什么样了。可是如果改成人工智能驾驶,本质上就是100%由汽车厂家的AI软件在开车,并处置一切行车中的各种情况。由此,出的所有车祸(远远不止死了30万人的案例)当然就全是汽车厂家的责任,必须100%由厂家负责赔偿了。想清楚没有?你赔得起吗?马斯克所有的疯狂目标全实现了,唯有无人驾驶他实现不了。现在AI无人驾驶还没有大规模普及,所以根本不懂AI的法律界人士和其他制定政策的人全都处于茫然和幻想的状态。一旦真的当无人驾驶大规模普及了,有案例了,打几个官司以后,以上其实简单至极的基本问题马上就想明白了。很明显,车主和他们的律师当然都会从他们的利益最大化角度来进行法庭辩论,车主是在睡大觉,甚至驾驶座根本就没人,车主是在后排座上睡觉,毫无疑问就是汽车厂家的AI软件在负责一切操作,出了任何事情当然要由厂家负一切责任,厂家作为被告丝毫辩护的余地都没有。
现在的汽车保险都由车主每年购买,汽车厂家只对车的质量负责任,对车祸承担责任的几乎没有。这就是现在的汽车全行业的法律关系现状。如果普及了无人驾驶,法律关系就一定会发生变化,既然车主不再负责开车,就不会再对无人驾驶期间的一切车祸承担责任。无人驾驶汽车厂家可以将责任转嫁,但那意味着每年无人驾驶汽车的保险费就全得由厂家出了。
真正的无人驾驶应该怎么做?
严格制定无人驾驶道路规则,建设完备的无人驾驶道路,在这样的道路上行驶是几乎不会出车祸的,其可靠性会达到与飞机和高铁相当的程度,使车祸的数量接近个案的偶发水平,死亡数量更是基本为零。此时会由无人驾驶道路的运营者对任何事故负赔偿责任,现在的航空和高铁就是这么做的。他们之所以敢负责任的前提条件,就是出现需要负责任的情况在技术上的概率接近于零。只有这种可靠性级别的无人驾驶才是唯一可能成功的。只要采用人工智能,就不可能达到这种级别的可靠性。具体原因后面一节马上就会深入讨论。
必须首先简化问题,才有可能真正解决问题。
无人驾驶绝对不是通过增强人工智能,而是通过完全的规则化、彻底屏蔽车上的智能才有可能实现。
如何实现完全的规则化:在无人驾驶道路上所有车辆速度严格一样,车间距严格一样,出现各种情况处理方法严格规范......这样,车上的人就可以在车辆行驶时放心地睡大觉了,或者车上不需要有人。
屏蔽车上的任何智能对车辆行驶的影响,是实现无人驾驶的绝对前提。人类干得最愚蠢的事情就是想通过人工智能控制来实现无人驾驶。连什么是交通的最基本常识都不懂,居然还想开发什么无人驾驶汽车?我很早就在各种场合对人工智能无人驾驶持否定态度,但人们还是听不明白。现在中国业界思路逐步变成路车两方面同时增强智能,也有专家对路的算力是否足够存在质疑。路的算力怎么可能存在不够的问题?每10米分配一颗2000块钱的高性能CPU,每公里也就区区20万,就算每米分配一颗,也不过200万。你知道高速公路每公里造价是多少吗?如果建成无人驾驶道路或者无人驾驶车道,在这些车道上行驶高速费增加50%,很容易就把成本收回来了。每公里最多再增加50%作为无人驾驶道路建设的投资,经济上就是合理的,怎么可能有道路算力不足的问题?如果想象成用一台服务器管理几公里无人驾驶道路,甚至几百公里高速信息集中到一台服务器里去处理,那算力当然不够了。
有人可能会疑惑:现有很多汽车厂家包括特斯拉等都宣称自己的车达到L3甚至L4级别,也有人用其驾驶在高速上跑,甚至睡大觉了啊!我可以告诉你,40年前电视上就报道过有人用当时的计算机秀过这种无人驾驶,手拿报纸让汽车自己开了很长时间并自己到达目的地。当然,那时的路面是郊外几乎没有其他车辆的道路。人工智能就是这样,秀一下都是可以的,都很好看,真要大规模普及永远都不行。
想靠车辆的AI实现无人驾驶,此路不通,乘早死了这份心吧!别再浪费投资了。
只有可靠性要求很低的AI功能,诸如自动泊车等,才有可能真正商用化。
七、为什么AI可靠性不会很高?
要理解为什么AI在可靠性上一定不会太高,必须要理解AI的本质到底是什么。理解一切问题都需要从最简单的原理开始。我们先举一个用气象卫星遥感估算农作物产量的最简单实际例子,来说明人工智能的本质到底是什么。
以下是一个2005年发表的相关论文的例子。
这个论文中是采用NOAA气象卫星两个通道的数据,以及NPP-RS模型来对农作物产量进行估算。核心的计算公式是下面这个:
如果不是这个专业的读者可以完全不用去关心以上让人头疼的数学公式,只要知道这样几个要点即可:
一是上面的公式是一个经验公式。
二是公式中的k(区别不同农作物种类的常数),a、b(农作物种类确定后,与其产量相关的常数),这些常数都是通过实际数据大量统计出来的经验值,就是不知道具体因果关系,只是一种相关关系。在不同情况下(如不同农作物产区)这些常数可能有所不同。
从这个论文的摘要里就可以看到,这种估算的平均相对误差水平为:
整个吉林省粮食总产,13.6%
玉米,17.6%
水稻,6.7%
这么高的误差水平,既然已经写成论文,表明它是已经能拿得出手的东西。
上面这个如果表达成与上述专业细节完全无关的数学形式,就是这样的经验公式:
y=ax1+bx2+c
x1,x2是自变量,这些自变量可能是卫星光谱通道,人脸特征值等等。a、b、c是常数,它们是通过大量统计(训练)出来的经验值。在不同的变量x1,x2情况下,可以通过这些常数计算出y的值。这个不仅可能用来以卫星遥感的数据估算农作物产量,也可以判断地面上是哪一种农作物。这是一类被称为“模式识别”的最、最、最......简单的所谓人工智能。
虽然这个非常简单,但它说明了人工智能的一些本质特点:
通过大量数据分析、统计、训练等获得一种经验公式性质的规律或数学模型。
这种数学模型属于相关关系而不是因果关系。
所有变量的影响带有相应的常数,这些常数都是一些经验值。
因为以上规律,人工智能必然具有相当可观的误差。如果实际应用中出现没有预料到的新变量,误差就会显著增大。
无论是后来采用卷积的深度学习算法,还是现在流行的ChatGPT的所谓大型语言模型(LLM),本质上都是类似以上规律的数学模型,只不过它们的变量和常数的数量可能不是几个,而可以是几百、几千、几万、几千万......据说,ChatGPT的变量和常数的数量已经达到1760多亿,以后可能会到上万亿,百万亿,千万亿亿亿亿......不仅如此,它不是简单的一维线性经验公式,而可能是更为复杂、数量极为庞大的多维、超多维数学模型形式。但是,变化的只是量的不同,本质上它们依然是通过各种统计或训练不断调整变量和影响它们的常数值,都脱不了误差非常难以缩小的命运。尤其是一旦遇到新的变量,影响的就不只是系统模型中的参数不同,而可能模型本身的变量集不一样,此时都会出现比较严重的误差。
因此,如果你是对人工智能真正懂行的人,尽可能寻找到模型中没有纳入的变量进行攻击,就可以很容易让这个模型产生极大的误差。例如,很早就有计算机象棋软件,因为我下棋水平很低,即使在20多年前我和计算机很初级的象棋软件对弈也基本上都会输。但是,后来我试着用自己的“车”把自己的“卒”给吃了,计算机象棋软件马上就“疯了”,不断走一些莫明其妙的棋,让我很容易就获胜了。
不过,人工智能很容易让人说不清的一点是:一旦我们明确了如何通过某个新的变量战胜人工智能的方法,只要把这个新的变量增加考虑进去,人工智能马上就获得进步,你再用改变这个变量的方法进行攻击就不再有效了。问题在于:如果不去限定变量的选择范围,就永远会存在现有模型没考虑到的新变量。
八、智能与智慧
一旦从本质上理解了人工智能,就会明白人类的智慧是如何解决问题的了。例如,人工智能无人驾驶会通过训练去处理路上出现一只羊该如何应对,从而产生各种越来越复杂的应对规则:
如果羊往左边走,车就从右边开过去。
如果羊往右边走,车就从左边开过去。
如果羊站在中间车道不动,车就选择从左车道或右车道过去。
如果羊往左边走,车从右边开过去时,羊突然惊跳反过来往右边走,车就转而从左边开过去。
如果羊往右边走,车从左边开过去时,羊突然惊跳反过来往左边走,车就转而从右边开过去。
如果羊站在中间车道不动,车选择从左车道开过去时,羊突然惊跳往左边走,车就转而从右边开过去时,羊又害怕往右边走,车就转而再从左边开过去。
如果羊站在中间车道不动,车选择从右车道开过去时,羊突然惊跳往右边走,车就转而从左边开过去时,羊又害怕往左边走,车就转而再从右边开过去。
如果......
如果......
......
我们也经常在日常生活中见到这样的案例:两个人骑车相对而行时,你躲我、我躲你,结果两者锁定在一起更容易相撞了。当两个对象都有智能时,互相以对方为基础来确定自己的策略,反而可能更难以找到合理的策略,进入震荡和锁定的状态。现在人工智能无人驾驶没有大规模普及,设想一下如果路上全是人工智能无人驾驶车会是什么情况。两辆无人驾驶车互相躲避,会进入相互锁定状态而更容易相撞。
用人类的智慧解决问题的方法,是严格控制和限定变量的范围,简化需要处理的变量对象,并且使每一个变量对象都得到严格的精确控制,从而获得最终的极高可靠性。人类建设的高速公路不是通过深度学习和其他什么AI算法建立“羊跑到路上去、羊是什么样的动作等不同新情况下的处理规则”,而是通过路两边的铁丝网阻拦,根本就不让羊跑到路面上。如果羊不知什么原因真的就是跑到了路面上,这都属于统一规定的“意外情况”,遇到一切意外情况时,就暂停道路通行,所有车辆停下,把意外情况处理完,将羊赶出道路阻拦网以外,使道路恢复正常情况后,所有车辆逐步恢复正常通行。
人工智能是现在可以处理1750亿个变量和参数,以后准备将模型提升到可以处理7510亿个,再然后7万亿个,对每一个变量的控制都是浅尝则止。
但人类的智慧是首先简化问题,让变量不超过750个,并且对每一个变量都能获得达到小数点后面6个9以上的可靠性,从而使得最终的可靠性也至少为小数点后面4个、5个9。
这就是为什么大家谈的ChatGPT案例基本都是一些说不清道不明、仁者见仁、智者见智、当然也就蠢者见蠢、不靠谱者见不靠谱的主题。即使是所谓帮助写论文,主要也是社会领域等相对不需要那么严谨的内容。如果出现各种错误,人们也只是哈哈一笑;如果出现很傻、很蠢的错误,人们更是会开怀大笑。本来嘛,很多艺术就是一种从严格逻辑上说属于犯错而产生的美感。例如,猜迷语就是把常规的文字理解成逻辑上与常规含义不同的意思。如果你真想让它干靠谱的、正经的、可预测、需要高度可靠性的事情,那就要小心了。
九、人工智能会存在奇点吗?
未来学家库兹韦尔在《奇点临近》一书中预言:2045年,奇点来临,人工智能完全超越人类智能。有这个可能吗?这种不懂技术的作家都喜欢通过耸人听闻的预言来提高书的销量。一是计算机从一开始就超过人类了,二是人工智能的发展只不过证明了电脑还可以像人一样不靠谱、不可预测。只有真懂人工智能技术的人才会理解,从1750亿个变量增加到1750万亿亿个变量,肯定会有区别,但区别也肯定不会像库兹韦尔所想象的那样。
十、软件定义网络、复杂与简单
如果你对技术不太懂,可以不用看本节技术方面的内容,只看结论即可。如果你对网络技术很懂,本节也将会给你带来新的认知。"软件定义网络"(SDN)这个名字本身就起错了。难道以前的路由器的路由表不是由软件算出来的吗?所以,此处我给它起的准确名字如下:
传统计算机网络的路由器和交换机学名可称为:
邻居发现不完备网络结构信息自主智能递归收敛路由。
所谓软件定义网络(SDN)严格准确的学名可称为:
完备网络结构信息集中智能免收敛路由。
如果读者是网络技术专业领域的,一看名字就该知道:作为最早提出SDN概念的人对它的理解为什么与一般人不一样了。既然人们已经习惯SDN这个名字,我也不想改了,本文还是继续延用SDN这个名字。我是先学习和熟悉了电信网络的程控交换机技术,而后再学习计算机网络技术的。最初非常难以理解计算机网络的路由器和交换机的路由表计算为什么搞得这么复杂。我提出SDN其实算不上什么全新的建议,它本质上其实就是电信领域的人很熟悉的程控交换机路由控制方法。所以,为什么我能最早提出来,原因就在于我是先搞电信网出身,后来又精通了计算机网络。很多熟悉计算机网络的人可能已经对它的路由算法习惯成自然了,如果你问他们为什么要这么搞,能说出道理的人却可能很少。
最初互联网是美国军方的项目ARPAnet。它的原始目的是开发出一种具有军用安全级别的信息网络,就是在战争中无论网络被炸成什么样,只要存在物理连接通道,网络本身就可以自动建立起新的信息连接路由。
电信网的安全性一般采用主备倒换就足够满足了,但以上美国军方的目标采用这种思路却很难实现。因为平时主用和备用设备一起坏掉的可能性极低,但战争中一枚炸弹把主用和备用的网络设备同时都炸掉却几乎是必然。所以,集中式的网络控制方法不能满足以上要求,由此就设计了每一个网络节点可以通过邻居发现协议、自己去适应网络的任何变化建立通信路由的技术方案。
但是,这样不仅需要每一个网络节点都自己具备很强的路由计算能力,而且因为邻居发现获得的网络结构信息可能不完备,从而使路由计算极为复杂,且有可能导致相互影响。一个路由器计算完自己的路由表传给邻居,邻居节点根据它计算自己的新路由表,然后又传回来、再根据这个新的路由表重新计算再传回去。如何能够快速地收敛就是一个很复杂的问题。现在的互联网并不是用于战争,而基本都是民用,这就使最初的设计理念成为累赘,但深陷其中的专家们技术路线已经被深度锁定,已经搞不清楚最原始初心是为什么了。
SDN是基本屏蔽了各个网络节点的智能,把全网所有结构信息传给一个集中控制的服务器,由它根据全网完备的网络结构信息一次性计算出所有节点的合理路由表,并下发。各个节点遵照执行即可,多么简单可靠!这同样是智能与智慧之间的区别和差异。
但这个技术出现后为什么发展得并不是太好。道理很简单,这么一搞所有网络节点全成标准化产品,那CISCO等公司还怎么活下去?所以CISCO马上搞出一个自己的新SDN协议OpFlex,并且主推的技术路线是SDN与传统网络双协议栈发展,搞得更复杂了。这根本就不是为了发展SDN,而纯属搅混水。—— 技术并不止是技术,背后必然存在相应的利益。如果不理解这一点,是无法理解技术为什么会发展成那样。
后来很多人又开始炒作软件定义存储,软件定义计算......你都没搞清楚最早的软件定义网络是怎么回事,没搞清楚”软件定义“这个词本身就是错的,还炒作什么其它的软件定义XX呢?
领先的公司具有把技术搞复杂的能力,技术越复杂,跟随型的公司越无法超越。因此就明白CISCO的路由协议、微软件的操作系统、美国的航天飞机、F-35隐身飞机......为什么搞得那么复杂和大而全了。此时不免让人想起发明AK47的苏联枪械设计师米哈伊尔·季莫费耶维奇·卡拉什尼科夫的一句话:把简单的事情搞复杂很容易,但把复杂的事情做简单却很难。
2020年,微软的必应(bing)在全球搜索市场的占有率大约在2.69%,远远低于谷歌的91.38%。所以,为什么微软要在2019年给OpenAI投资10亿美元,并且在ChatGPT上线后再投100亿将其与Bing捆绑?就是希望通过这个途径在搜索市场上翻身。