打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
让人工智能去下路边街头的象棋残局会赢吗?

我来说说“思维”。

先来个总结:迄今为止,“人工智能”实际上仍然不是“智能”。我们仍然无法让电脑理解何谓“逻辑”,何谓“推理”。

你可能会说,不对呀,象棋AI围棋AI不都能赢人类最顶级的棋手了吗?而且还有什么“计算机证明”?计算机这数学逻辑机器居然不知道什么是逻辑?你逗我呢?!

很遗憾,但计算机真的不懂逻辑。所谓“数码逻辑器件”,其实是人类自己认识了逻辑、把按照自然规律行为和“与或非”之类基本逻辑判定规律比较像的物理器件当成这种逻辑的模拟,从而通过种种变通,得到了一个可以帮助人类解题的机器……

这段话又长又聱牙。看不懂没关系,你理解成“电脑和电饭煲和燃气灶一样,它压根不知道烧饭这个概念;它仅仅是依照自然规律发热、然后被人类利用来烧饭”就对了。

还不明白?

那我说的更简单点:电脑从未获得“意识”,因为我们自己都还不知道什么是意识,不知道思考的本质。

当然,简单的说法更容易理解,但它太过笼统,无法用于分析这个问题背后的原因。

因此,想要理解的话,还是要吃透那个复杂、聱牙的说法。


总之呢,目前来说,我们已经实现的、认识到的“智能”往往并不是真正的“智能”;它其实是人类大脑想出来的许多变通做法的外在表现:

1、遵循明确的、机械的规则,直接得到答案(取得全局最优解)

典型如各种排序算法,计算机界以“复杂度分析”来剖析这些算法的好坏。

我们熟悉的、中学学到的消元法解方程,也属于此类;前些天闹的沸沸扬扬的matlab,做的就是类似自动套公式算积分的任务。

从本质上说,这类压根不是“智能”,它仅仅是机械的按照一些细碎的步骤执行、然后得到答案而已——可以类比于“学习时死记硬背死板硬套”:这样的确能解题,但遇到不适合的情况就令人啼笑皆非。

2、穷举

就好像出一道“鸡兔同笼”的难题难你,你不知道解法,但可以尝试所有可能——从0鸡1兔、0鸡10兔一直到0兔1鸡、0兔100鸡再到888兔999鸡,把所有几百万种可能都尝试一下,说不定就能碰对答案。

对人来说,逐一尝试这几百万甚至百万亿的可能实在太蠢、太费力了;但对个人电脑这种每秒数十亿次的机器来说,这实在是小菜一碟。更不用说那些动辄万亿万万亿次的超级计算机了。

但道高一尺魔高一丈。有些问题(典型如加密算法)的解空间太过庞大,哪怕每秒万万万万亿次的电脑,也得动辄百亿百万亿年才能探索完毕。

象棋、围棋就是这类问题。

怎么办呢?

想办法找薄弱点,把“很可能不是答案”的可能分支丢掉。

注意这里的措辞——“很可能”不是答案,而不是“肯定”不是答案。

这两个是完全不一样的。

排除“肯定不是答案”分支的算法保证可以取得全局最优解,典型如动态规划法;而排除“很可能不是答案”分支的算法无法保证取得全局最优解。因为它可能把全局最优、但局部看来是走了下坡路的正确解法排除掉。

为了尽量避免“排除正确答案”同时又“尽量降低需要穷举的分支数目”,我们不得不规定很多判定依据。

虽然动态规划法的确是“确保结果正确”的裁剪算法;可惜我们难以在棋类问题上应用它。

因此,我们只能寻找一些“启发式规则”,比如每个棋子价值几何、占据不同点位又有多少价值加值之类。这些规则“不能确保结果正确”、但可以“大概率保留正确结果”、同时又能“大幅降低穷举消耗”。典型如x-y剪枝算法等。

事实上,alpha go/zero也是类似算法;不同点是,它的“启发式规则”并非来自于我们的经验,而是神经网络的拟合。

3、拟合

对于很多问题,当我们无法精确解决它时,“装的足够像”也是可以接受的。

打个比方的话,我们没法教会机器炒菜;但可以把原料倾倒进粉碎机粉碎,然后把粉碎机出口接到搅拌机入口,粉碎五分钟后,启动搅拌机搅拌5分钟……最终,把做好馅料分散置于传送带、合上模具,机器就真的包出了饺子。

但是,机器仍然不懂包饺子。如果你没放面皮、或者把石子倒进粉碎机,它仍然会假装自己在包饺子——却不知道厂房已经一片狼藉。

类似的,我们可以不懂事物背后的原理,用一条经过数据点最密集处或者尽量贴合边界的曲线代替复杂的计算,经常也能成功“装”成专家。

这种曲线,最简陋者是统计若干数据然后随手一画、或者找出若干控制参数算个八九不离十,就得到了所谓的“特性图表”“经验公式”。

最精致的,就是目前AI的研究热点,所谓的“神经网络”——这玩意儿取得了极大的成功,但我们并不知道它为何如此成功。

不过,无论它有多成功,归根结底,这仍然仅仅是一种拟合。


那么,什么是“真正的智能”呢?

1、总结与概括

你喜欢哪种运动?赛车?滑雪?打猎?跳伞?……

那么,你知道所有这些运动、以及它们所依赖的器具、交互的对象的运作机理吗?

你知道这无穷无尽、纷繁复杂的大千世界,用牛顿三大定律、相对论量子论的几条公式就能统摄吗?

人工智能中有个“聚类”算法,但实在太过初步。

事实上,人类中,能有牛顿、爱因斯坦的概括能力的,也是亿万中挑不出一个。

没人知道这种能力是怎么来的。事实上,我们就连正确描述它都做不到。

2、逻辑与推理

在总结和概括了各种概念之后,我们才可以借助它们思考与推理。

其中,推理所依赖的逻辑,本身就是概括出来的一种抽象物。

很遗憾,起码绝大多数人尚不能正确理解逻辑:为什么泊松认为自己计算出的亮斑能很好地反驳光的波动说?

理解它都这么难,想要精确描述逻辑在我们脑中的存在形式,基本就是痴心妄想了。

神经网络是概括的基础之一。借助它,我们终于使得计算机可以“理解”猫这个概念了——但我们不知道它是如何理解的。就好像我们自己也不知道自己怎么就认识猫了一样。

而且,有证据证明,我们搭建的神经网络对猫的认识和我们并不相同。我们甚至可以给它一副香蕉的图片,只是在其中几个像素上做点手脚,神经网络就会把香蕉认成猫。

相对应的,我们会产生视错觉的一些图片并不能骗过电脑。

第一步都走的磕磕绊绊,后续的抽象就更别提了。

归纳法都无从理解,更高深的推演法嘛……


一旦明白了现在所谓的AI本质上是“穷举与拟合”,我们马上就可以知道:任何必须借助推理才能解决的、解空间巨大(无法穷举)的问题,都是AI的弱点——除非我们自己理解清楚了、而且针对性的写出了程序。

比如,鸡兔同笼问题,数字小时,我们完全可以训练神经网络“自动解决”它。本质上是穷举+拟合嘛。

但一旦数目字过大、穷举成为不可能时,神经网络就一筹莫展了——它可能“拟合”出一个较为接近的数字,但为了这个数字,它需要极为庞大的计算力。

我们不知道如何让它像我们一样,在求解这个问题的过程中“举一反三”、总结出多元方程的一般解法,把“盲目的在广阔的解空间乱闯”变成“通过精炼的几个步骤一举求解问题”——结果就是,我们可以掰手指解决的问题、我们可以写个程序用5块钱的计算器一秒求解几万次的问题,AI却只会用蛮力。

有些人只会死记硬背、蛮力做事,所以我们说他们很笨,对吧:计算机基础知识对程序员来说有多重要?

AI还不如他们。


综上,正如很多答主提到的:哪怕AI可以击败最顶尖的棋手,但它仍然会在一些残局面前败下阵来。

因为有一些残局实质上是一道精心设计的逻辑推理题,而AI不懂推理。

换句话说,我们目前通过堆计算力,可以把AI堆的好像一个极为聪明、但却极度无知的野兽一样。

通过训练,我们可以让它在依赖本能依赖经验的领域超过我们;但我们并不知道如何和它交流。

也许某些超级神经网络在长时间训练后,的确已经形成了基本的数字、逻辑等观念,但我们并不知道这些概念的存在形式,自然就无法给它传授我们基于这些概念建立的高级知识。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
深蓝与AlphaGo的对比 | 透明思考
【每日残局】第六十二局
合集·《象棋残局欣赏》、《天天象棋》残局闯关答案(1/10)
机器学习简史
一个北大教授眼中的人工智能
人工智能发展小史 | 探索·新知
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服