1700530530
1700530531
本书第六章“构建新大脑”中指出,理解智能有点像剥洋葱——剥开一层又是一层。最后,我们得到的是很多洋葱皮而不是洋葱。换句话说,智能——尤其是人类智能是在很多层面上工作的。我们可以逐层分析理解人类智能,但整个过程要求所有的层级都按照正确的方式一起运转。
1700530532
1700530533
以下是我曾在第四章中描述过的三种进化模式的深入观点,每种方法都可以给定义详细的问题提供“智能”解决方案。但是智能实体所处的环境通常十分复杂,所以如果想要创造一种可以在复杂环境中反应灵活的系统,需要以适当的手段把这些方法整合起来,交流过程涉及不同层次的理解力时尤其如此。举例来说,比如我们要构建一个庞大的神经网络,并试图训练它理解所有语音和语言的复杂性,最后的成效会非常有限。如果我们能够以人类特有的方式分不同层次解决这个问题,就会获得更可观的结果。
1700530534
1700530535
人类大脑是用同样的方式组织在一起的,是各个特定区域的复杂集合体。我们学习了大脑的并行算法后,就可以用各种途径扩大其规模。举个简单的例子,大脑中负责逻辑和递归思维的区域是大脑皮层,其中只有800万个神经元。我们已经构建了比它大几千倍、运转速度快几百万倍的神经网络。设计智能机器(直到机器能够从人类手里接管这档杂事为止)的关键在于设计智能的架构,将构成智能构建模块中相对简单的方法结合起来。
1700530536
1700530537
递归公式
1700530538
1700530539
以下是一个为困难的问题创造智能解决方案的简单公式。请仔细听好了,不然就会漏掉重要信息。
1700530540
1700530541
这个递归公式是:
1700530542
1700530543
“下一步,我会进行最优选择。如果完成了,就是完成了。”
1700530544
1700530545
也许这个公式有点儿过于简单了,我承认乍一看它确实没什么太多内容。但它所发挥的作用将令人吃惊。
1700530546
1700530547
我们先想一想由递归公式解决问题的经典案例:国际象棋对弈。国际象棋被认为是一种智力博弈,至少到最近为止还算是。大多数观察家仍然认为要下好一盘棋就需要良好的智力。所以,我们的递归公式在这一领域会发挥得如何呢?
1700530548
1700530549
国际象棋是一种一次移动一步的游戏,目标就在于要选择“最优的”每一步,那么,让我们定义一种可以进行“最优走步”的呈现。把递归公式应用到国际象棋当中,我们就可以换个说法,具体如下:
1700530550
1700530551
挑选最优行动方案:“挑选最优行动方案。如果我赢了,则任务完成。”
1700530552
1700530553
先等一下,稍后你就能看出其中的道理了。我需要进一步分解国际象棋的其他方面,也就是博弈里并不是只有我一人,我还有个对手,她也在移动。先假设她也能走出好棋。如果该假设不正确,那我就得到一次机会,而不是一个问题。那么递归公式是:
1700530554
1700530555
挑选最优行动方案:“假设我的对手也会挑选最优行动方案,据此我得挑选最优行动方案。如果我赢了,则任务完成。”
1700530556
1700530557
此时,我们需要考虑递归的本质。递归规则就是依据自身进行定义的。递归规则就是一种循环,但为了追求有效性,我们可不想永远循环下去,因此还需要一个逃离循环的出口。
1700530558
1700530559
为了解释清楚递归,我们还需要考虑一个例子:简单的“阶乘”函数。要计算n的阶乘,需要用n乘以(n–1)的阶乘。这是循环的部分——我们按照其自身特点定义该函数。还需要规定1的阶乘为1。这就是我们的逃离出口。
1700530560
1700530561
现在来计算2的阶乘。根据定义,
1700530562
1700530563
2的阶乘=2×(1的阶乘)。
1700530564
1700530565
我们已经知道1的阶乘是怎么计算机的,因此得以摆脱无限递归。将(1的阶乘)=1代入,可得:
1700530566
1700530567
2的阶乘=2×1=2。
1700530568
1700530569
回到国际象棋,可以看见挑选最优行动方案这一“函数”是递归的,因为我们按照它自身定义了最佳移动方法。对弈的棋盘策略中看上去不痛不痒的一句话“如果我赢了,则任务完成”,其实是我们的逃离出口。
1700530570
1700530571
我们再考虑一下我们所知的国际象棋。此处需要仔细考虑问题的定义。我们意识到要挑选最优行动方案,需要先列出可能要走的那几步棋。这并不太复杂。对弈中任何一次移动都是由规则定义的。虽然国际象棋的规则相较其他博弈更复杂,但直接易懂且容易编程。因此,我们列出了一些棋局走法并挑选出了最优走步。
1700530572
1700530573
但哪一种才是最优的呢?如果这种移动能让我们获胜那就太棒了。所以,我们仅需参考规则并且选择一种能立刻将住对方的王的方法即可。也许我们还没那么幸运,也许所有可能的移动方法中都没有可以让我们迅速获胜的办法,但仍然需要考虑这种移动方法究竟能让我们获胜还是失败。在这种情况下,需要考虑我们制定规则附加的那个不起眼的前提“假设我的对手也会这么做”。毕竟,获胜与否还取决于对手可能怎么做,需要站在对方的立场想一想她的最佳移动方法是什么。如何做到这一点呢?这就是递归发挥作用的时候了。有一个步骤刚好可以做到,叫作“挑选最优行动方案”,可以让它来决定对手的最优走步。
1700530574
1700530575
现在就可以按照以下步骤来构架设计我们的程序了。“挑选最优行动方案”程序总结出了规则允许所有可能的移动方法。它又反过来审查了每一种可能的移动方法。对于移动的每一步,它都能生成一份假设的棋盘,显示出选择此走法后棋盘上棋子的位置。这种做法仍然只要求运用国际象棋中的规则定义即可。“挑选最优行动方案”现在站在对手的立场上,尝试决定对方的最佳移动方法,然后开始从对方棋盘的角度生成所有可能的走步。
1700530576
1700530577
“挑选最优行动方案”程序会不断对自己提要求,从而不断产生可供选择的行动方案,生成十分庞大的博弈树,我们通常把这一过程叫作“极大极小”搜索,因为我们在选择时,总是最小化对手的获胜概率、最大化我方的获胜概率。
1700530578
1700530579
那么何时才是尽头呢?该程序会一直发挥作用,直到博弈树上的每一个分支都取得胜败结果为止。每一局博弈的结果只有两种:某一方胜或双方平局。在博弈树扩展深入的过程中,该程序会碰到决定胜负的一步棋。如果这步棋能使我方获胜,则选择此步走法;如果不存在决定胜负的走步,则双方打成平局;如果既不存在胜负,也无法打成平局,那我方只能继续棋局,只能寄希望于对方出现疏忽或漏洞。
[
上一页 ]
[ :1.70053053e+09 ]
[
下一页 ]