1700530724
1700530725
这就是我之前提到过的,在递归搜索中评估最后一片叶子的第三种思想学派。想想头脑简单派使用的方法,比如通过棋子价值的简单相加来评估某一个棋子位置。头脑复杂派则提倡更复杂耗时的逻辑分析法。我更支持第三种方法:将两种简单的模式结合起来——递归和神经网络,通过神经网络评估每一片最终树叶所处的位置。训练神经网络非常耗时,它要求大量的计算,但与“头脑简单”派的评估相比,在神经网络中完成一个已学习过的识别任务非常快速。虽然速度快,但神经网络利用了大量时间学习相关知识。因为在21世纪,我们将在网络上进行每一场大师级的对弈,所以可以利用由此生成的庞大数据库来训练神经网络,我们曾有过一次类似的训练,但是在线下完成的(也就是说,并不是在真正的游戏里)。经过训练的神经网络将会被用来评估每一片最终树叶的位置。这样一种系统不仅拥有计算机在速度方面几百万倍的优势,还能将此与人类的模式识别能力相结合,如此一来,人类需要竭尽一生钻研的模式,该系统几分钟便能掌握。
1700530726
1700530727
我将这一方法推荐给“深蓝”团队领头人默里·坎贝尔,他认为这种方法非常有趣,也很有吸引力。他承认自己也有些倦怠了,不想再亲自动手来修正树叶评估算法。我们商量着成立一支咨询团队来执行这一想法,但随后IBM取消了整个国际象棋项目。我认为评估人类智能多样性的关键元素之一,就是要以最佳方式把基本的模式结合起来。接下来,我将探讨如何进入进化算法的模式。
1700530728
1700530729
神经网络算法的非数学“伪代码”
1700530730
1700530731
以下是神经网络的基本模式。神经网络中可能会出现许多变量,系统设计者需要提供一些特定的关键参数和方法,细节如下:
1700530732
1700530733
神经网络算法
1700530734
1700530735
为一个问题创建神经网络解决方案包含以下几个步骤:
1700530736
1700530737
·定义输入值
1700530738
1700530739
·定义神经网络的拓扑结构(即神经元的层数以及神经元间的连接)
1700530740
1700530741
·用样本问题训练神经网络
1700530742
1700530743
·运行完成训练的神经网络,以解决新的问题案例
1700530744
1700530745
·向公众开放你的神经网络
1700530746
1700530747
这些步骤(除了最后一步)的详解见下:
1700530748
1700530749
问题输入
1700530750
1700530751
神经网络的问题输入由一系列数字组成。输入值可以是:
1700530752
1700530753
·在视觉模式识别系统中,一个二维数字阵列代表一幅图画的像素
1700530754
1700530755
·在听觉(比如语音)识别系统中,一个二维数字阵列代表一种声音,其中第一维度代表声音参数(如频率),第二维度代表不同时间点
1700530756
1700530757
·在任意模式识别系统中:一个N维数字阵列代表输入模式
1700530758
1700530759
定义拓扑结构
1700530760
1700530761
设置神经网络:
1700530762
1700530763
每个神经元的结构包括:
1700530764
1700530765
·多个输入,其中每个输入都与另一个神经元的输出或与初始输入值中的某一个值“连接”
1700530766
1700530767
·唯一的输出,这个输出与另一神经元(通常,此神经元在更高一层的神经网络中)的输入或与最终输出“连接”
1700530768
1700530769
设置第一层神经元:
1700530770
1700530771
·在第一层创建N0个神经元。在问题输入时,每个神经元单独设置,将每一个神经元的多个输入与“节点”(即数值)连接。这些连接的建立可随机进行或根据进化算法进行(详见下文)
1700530772
1700530773
·给每个建立的连接赋予一个初始“突触强度”(即权值)。这些初始权值可以相同,也可随机赋值,或者根据另一种方法赋值(详见下文)
[
上一页 ]
[ :1.700530724e+09 ]
[
下一页 ]