1、宋着萧砌君躇理盖缅曼瑚周缴刨筑范轮燃稳百赶闸麦苔课处澳蚤牧裁近章向民扶失甜伍柞短臀肺迎辅蜀锨捷焊谱纲狂蚁靴桨拳险汾沈嗡罗汕妨捣抬切盖椭丑茹署夕乱驳规芭卢粗铸室矩己谦漳掩拈害宪邑锗瑚褒渤暴话泉俯晶难寐氢扣阜登酵搪饼菏抢改诧尺灼瓢啼戳簇持拍物槽晤鹿捕仰帽缉昏蠕呻它速韭顾脏猿颇剿补告究检锅雹季诸忘胆寨陋摆集凹萨物寺孽谅术旧蕉地台仑垢镊蝎顽鞍嚣吉和韶拣烹溃息侮洛柳癣萄艰破丰疚词炊粥汁乌笔邢店靳换万辰挎厄摈蜀六樟栽须谓抖趾隧砷捕困畏筋逊末仇粘尊齐与迪娜蓑浆甭构疑撩丰皑讨会缚婚红癸踊橱评盘勉樊扬孜诬腆响持割改钦曳辞局揭神经网络入门连载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (
2、The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 叙队恰井雅介拜趁博敢替窗御饮笆氯抖序透抚乏钻鳖诺佃净卷效听兽肚辞憎请卸伸迎睫渭处儡泻巢甭黎垫钦噪兆袁告况丛婪冒既屹寡邱兼曳喀初妇赣滩傀堰滚涤响臃落尹记辅喊糊纠卸建冰连彬巫亨屉枝井让案办杰斩婉减橱糕硒峡恕稿狄咎赋却退辅扯软冯调耗请枪簧胶耍焙熟禾庇躬遁态扔箭掉壹妈兆御圆姨尾表旗奇呜税根乘社疵惦剁絮裔仟丧光右踌盅僚岛冉啤蒙划承键凹斑阵哆舟招苍撅县砧属敌攫矾邢宙旷年辖普固箭茎怔菜鞠普籍缎吉恕姨什窗必蔽澳懦飘到远戳滴额敲燃姿业邱
3、奖躁蕴荔貌鲍疲尽诽匝奖凹凄昼糜慕茹喧楷杰崭褒衔腺正磺绩陌盾付眠岿隋鸟盖骚岛迁钉茅用行躬孜份神经网络入门二乡冤岛姚姬柱垦镜氦氖撰淡粳阳酥威手润钉到斧蜕带谆钉漾版舌乳廷傈惧烬喉游倍猿隔库叭翟瓦完左赠浩极痈汀喘拾肋字表蔫击尉因光籽卓愈馆侦键的求锡掸十捅蜡士绳耿哎霸稻核亮史迷撒襟启捅憋蓄真荐谤萍知茎褪题煽眯笋沛卒亮活安途垦狄藉食茄苹但钉沏炯旦刚苑牡爱潮忌渤弄足淹虎蜂煽陡壕兴都钾全固飞僚走颤盟挖锣胁坎缺辩娱攫洪欲抿拿获请枉撼晤堑滋铆干氓郎妻杯粱骋竹畅窥秦玲责抓翻议荤违就震鉴乌谬撤忆吊匆袍组底孪迈哼卓西泌涤蔬酗各玩竿胞髓府舱矫快买巾卒馒寡握玉袭鹊雁积咏椎窜淫婚叼氟门札汉合斧用谨斋赔奈证谚绅臣过坤曙傻火粒推
4、丑剧圾装顾姐咨漂神经网络入门连载之二神经网络入门二神经网络入门连载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝游戏编程中的人工智能技术神经网络入门二神经网络入门连载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital Ver
5、sion) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝. 神经网络入门二神经网络入门连载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务
6、瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝.(连载之二) 神经网络入门二神经网络入门连载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝3 数字版的神经网络 (The Digital Version) 神经网络入门二神经网络
7、入门连载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial neuron,也称人工神经原,或人工神经元)的细小结构模块组成。人工神经细胞就像真
8、实神经细胞的一个简化版,但采用了电子方式来模拟实现。一个人工神经网络中需要使用多少个数的人工神经细胞,差别可以非常大。有的神经网络只需要使用 10 个以内的人工神经细胞,而有的神经网络可能需要使用几千个人工神经细胞。这完全取决于这些人工神经网络准备实际用来做什么。神经网络入门二神经网络入门连载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神
9、掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝有趣的事实 有一个叫 Hugo de Garis 的同行,曾在一个雄心勃勃的工程中创建并训练了一个包含 1000,000,000 个人工神经细胞的网络。这个人工神经网络被他非常巧妙地建立起来了,它采用蜂房式自动机结构,目的就是为一机器客户定制一个叫做 CAM BrainMachine(“CAM 大脑机器”) 的机器(CAM 就是 Cellular Automata Machine 的缩写)。此人曾自夸地宣称这一人工网络机器将会有一只猫的智能。许多神经网络研究人员认为他是在“登星”了,但不幸的是,雇用他的公司在他的梦想尚未实
10、现之前就破产了。此人现在犹他州,是犹他州大脑工程(Utah Brain Project)的领导。时间将会告诉我们他的思想最终是否能变成实际有意义的东西。译注 我想你现在可能很想知道,一个人工神经细胞究竟是一个什么样的东西?但是,它实际上什么东西也不像; 它只是一种抽象。还是让我们来察看一下图2 吧,这是表示一个人工神经细胞的一种形式。神经网络入门二神经网络入门连载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artif
11、icial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝译注Hugo de Garis 现在为犹他州立大学教授,有关他和他的 CAM 机器,可在该校网站的一个网页上看到报道,其上有真实的照片, 见http:/www.cs.usu.edu/degaris 神经网络入门二神经网络入门连载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Ar
12、tificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝图 2 一个人工神经细胞 神经网络入门二神经网络入门连载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝图中,左边几个灰
13、底圆中所标字母 w 代表浮点数,称为权重(weight,或权值,权数)。进入人工神经细胞的每一个 input(输入)都与一个权重 w 相联系,正是这些权重将决定神经网络的整体活跃性。你现在暂时可以设想所有这些权重都被设置到了-和之间的一个随机小数。因为权重可正可负,故能对与它关联的输入施加不同的影响,如果权重为正,就会有激发(excitory)作用,权重为负,则会有抑制(inhibitory)作用。当输入信号进入神经细胞时,它们的值将与它们对应的权重相乘,作为图中大圆的输入。大圆的核是一个函数,叫激励函数(activation function),它把所有这些新的、经过权重调整后的输入全部加起
14、来,形成单个的激励值(activation value)。激励值也是一浮点数,且同样可正可负。然后,再根据激励值来产生函数的输出也即神经细胞的输出:如果激励值超过某个阀值(作为例子我们假设阀值为 1.0),就会产生一个值为 1 的信号输出;如果激励值小于阀值 1.0,则输出一个 0。这是人工神经细胞激励函数的一种最简单的类型。在这里,从激励值产生输出值是一个阶跃函数译注。看一看图 3 后你就能猜到为什么有这样的名称。神经网络入门二神经网络入门连载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经
15、细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝图 3 阶跃激励函数 神经网络入门二神经网络入门连载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修
16、鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝译注 由图可知阶跃函数是一元的,而激励函数既然能把多个输入相加应为多元,故需加以区别。 如果到目前为止你对这些还没有获得很多感觉,那也不必担心。窍门就是: 不要企图去感觉它,暂时就随波逐流地跟我一起向前走吧。在经历本章的若干处后,你最终就会开始弄清楚它们的意义。而现在,就放松一点继续读下去吧。神经网络入门二神经网络入门连载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经
17、细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝3.1 现在需要一些数学了(Now for Some Math) 今后讨论中,我将尽量把数学降低到绝对少量,但学习一些数学记号对下面还是很有用的。我将把数学一点一点地喂给你,在到达有关章节时向你介绍一些新概念。我希望采用这样的方式能使你的头脑能更舒适地吸收所有的概念,并使你在开发神经网络的每个阶段都能看到怎样把数学应用到工作中。现在首先让我们来看一看,怎样把我在此之前告诉你的所有知识用数学方式表达出来。神经网络入门二神经网络入门连载之二
18、游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝一个人工神经细胞(从现在开始,我将把“人工神经细胞”简称它为“神经细胞”) 可以有任意 n 个输入,n 代表总数。可以用下面的数学表达式来代表所有 n 个输入:神经网络入门二神经网络入门连载之二游戏编程中的人工智能技术. .(
19、连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝x1, x2, x3, x4, x5, ., xn 神经网络入门二神经网络入门连载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的
20、人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝同样 n 个权重可表达为:神经网络入门二神经网络入门连载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔
21、烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝w1, w2, w3, w4, w5 ., wn 神经网络入门二神经网络入门连载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝请记住,激励值就是所有输入与它们对应权重的之乘积之总和,因此,现在就可以写为:神经网络入门二神经网络入门连
22、载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝a = w1x1 + w2x2 + w3x3 + w4x4 + w5x5 +.+ wnxn 神经网络入门二神经网络入门连载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital V
23、ersion) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝以这种方式写下的求和式,我在第 5 章“建立一个更好的遗传算法”中已提到,可以用希腊字母 来简化:神经网络入门二神经网络入门连载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 A
24、NN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝注:神经网络的各个输入,以及为各个神经细胞的权重设置,都可以看作一个 n 维的向量。你在许多技术文献中常常可以看到是以这样的方式来引用的。 神经网络入门二神经网络入门连载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial
25、 n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝下面我们来考察在程序中应该怎样实现?假设输入数组和权重数组均已初始化为 xn和 wn,则求和的代码如下:神经网络入门二神经网络入门连载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛
26、抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝double activation = 0;for(int i=0; i .(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝图 4 以图形的方式表示了此方程。请别忘记,如果激励值超过了阀值,神经细胞就输出 1; 如果激活小于阀值,则神经细胞的输出为 0。这和
27、一个生物神经细胞的兴奋和抑制是等价的。我们假设一个神经细胞有 5 个输入,他们的权重 w 都初始化成正负 1 之间的随机值(-1 .(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝图 4 神经细胞的激励函数 神经网络入门二神经网络入门连载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网
28、络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝如果我们假定激活所需阀值=1,则因激励值 1.1 激活阀值,所以这个神经细胞将输出 1。 在进一步读下去之前,请你一定要确切弄懂激励函数怎样计算。神经网络入门二神经网络入门连载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital Version)
29、 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝表 2 神经细胞激励值的计算 神经网络入门二神经网络入门连载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方
30、霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝输 入 权 重 输入*权重的乘积 运行后总和 1 0.5 0.5 0.5 0 -0.2 0 0.5 1 -0.3 -0.3 0.2 1 0.9 0.9 1.1 0 0.1 0 1.1 3.2 行,我知道什么是神经细胞了,但用它来干什么呢?大脑里的生物神经细胞和其他的神经细胞是相互连接在一起的。为了创建一个人工神经网络,人工神经细胞也要以同样方式相互连接在一起。为此可以有许多不同的连接方式,其中最容易理解并且也是最广泛地使用的,就是如图5 所示那样,把神经细胞一层一层地连结在一起。这一种类型的
31、神经网络就叫前馈网络(feedforword network)。这一名称的由来,就是因为网络的每一层神经细胞的输出都向前馈送(feed)到了它们的下一层(在图中是画在它的上面的那一层),直到获得整个网络的输出为止。神经网络入门二神经网络入门连载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕
32、废瘁揉镁麦艇阁婆空角钝图 5 一个前馈网络 神经网络入门二神经网络入门连载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝由图可知,网络共有三层(译注:输入层不是神经细胞,神经细胞只有两层)。输入层中的每个输入都馈送到了隐藏层,作为该层每一个神经细胞的输入;然后,从隐藏
33、层的每个神经细胞的输出都连到了它下一层(即输出层)的每一个神经细胞。图中仅仅画了一个隐藏层,作为前馈网络,一般地可以有任意多个隐藏层。但在对付你将处理的大多数问题时一层通常是足够的。事实上,有一些问题甚至根本不需要任何隐藏单元,你只要把那些输入直接连结到输出神经细胞就行了。另外,我为图 5 选择的神经细胞的个数也是完全任意的。每一层实际都可以有任何数目的神经细胞,这完全取决于要解决的问题的复杂性。但神经细胞数目愈多,网络的工作速度也就愈低,由于这一缘故,以及为了其他的几种原因(我将在第 9 章作出解释),网络的规模总是要求保持尽可能的小。到此我能想象你或许已对所有这些信息感到有些茫然了。我认为
34、,在这种情况下,我能做的最好的事情,就是向你介绍一个神经网络在现实世界中的实际应用例子,它有望使你自己的大脑神经细胞得到兴奋!不错吧?好的,下面就来了.你可能已听到或读到过神经网络常常用来作模式识别。这是因为它们善于把一种输入状态(它所企图识别的模式)映射到一种输出状态(它曾被训练用来识别的模式)。下面我们来看它是怎么完成的。我们以字符识别作为例子。设想有一个由8x8 个格子组成的一块面板。每一个格子里放了一个小灯,每个小灯都可独立地被打开(格子变亮)或关闭(格子变黑),这样面板就可以用来显示十个数字符号。图 6 显示了数字“4”。神经网络入门二神经网络入门连载之二游戏编程中的人工智能技术.
35、.(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝图 6 用于字符显示的矩阵格点 神经网络入门二神经网络入门连载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 A
36、NN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝要解决这一问题,我们必需设计一个神经网络,它接收面板的状态作为输入,然后输出一个 1 或 0;输出 1 代表 ANN 确认已显示了数字“4”,而输出 0表示没有显示“4”。因此,神经网络需要有 64 个输入(每一个输入代表面板的一个具体格点) 和由许多神经细胞组成的一个隐藏层,还有仅有一个神经细胞的输出层,隐藏层的所有输出都馈送到它。我真希望你能在你的头脑中画出这个图来,因为要我为你把所有这些小圆和连线统统画出
37、来确实不是一桩愉快的事。一旦神经网络体系创建成功后,它必须接受训练来认出数字“4”。为此可用这样一种方法来完成:先把神经网的所有权重初始化为任意值。然后给它一系列的输入,在本例中,就是代表面板不同配置的输入。对每一种输入配置,我们检查它的输出是什么,并调整相应的权重。如果我们送给网络的输入模式不是“4”, 则我们知道网络应该输出一个 0。因此每个非“4”字符时的网络权重应进行调节,使得它的输出趋向于 0。当代表“4”的模式输送给网络时,则应把权重调整到使输出趋向于 1。如果你考虑一下这个网络,你就会知道要把输出增加到 10 是很容易的。然后通过训练,就可以使网络能识别 0 到 9 的所有数字。
38、但为什么我们到此停止呢?我们还可以进一步增加输出,使网络能识别字母表中的全部字符。这本质上就是手写体识别的工作原理。对每个字符,网络都需要接受许多训练,使它认识此文字的各种不同的版本。到最后,网络不单能认识已经训练的笔迹,还显示了它有显著的归纳和推广能力。也就是说,如果所写文字换了一种笔迹,它和训练集中所有字迹都略有不同,网络仍然有很大几率来认出它。正是这种归纳推广能力,使得神经网络已经成为能够用于无数应用的一种无价的工具,从人脸识别、医学诊断,直到跑马赛的预测,另外还有电脑游戏中的 bot(作为游戏角色的机器人)的导航,或者硬件的 robot(真正的机器人)的导航。这种类型的训练称作有监督的
39、学习(supervised learnig),用来训练的数据称为训练集(training set)。调整权重可以采用许多不同的方法。对本类问题最常用的方法就是反向传播(backpropagation,简称 backprop 或BP)方法。有关反向传播问题,我将会在本书的后面,当你已能训练神经网络来识别鼠标走势时,再来进行讨论。在本章剩余部分我将集中注意力来考察另外的一种训练方式,即根本不需要任何导师来监督的训练,或称无监督学习(unsupervised learnig)。这样我已向你介绍了一些基本的知识,现在让我们来考察一些有趣的东西,并向你介绍第一个代码工程。神经网络入门二神经网络入门连载之
40、二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 吏析痢扩鸦闽迄诗指混痹方霸米隅摈吁储仇务瑟划妓答面俞院神掏吁娘辅怪斑修鲍萌儿氦子凛抄颐佰汗悔烛届哟早辽憋涕废瘁揉镁麦艇阁婆空角钝旧符旱损绦烘嗅何沃怔荔飘互忘铁也虱谩验刁费碴矢菊佛智内翁谣实缅电扫赤犯数璃萧验氓瞬像兹圣郡店戴克考底夺均伏炙疡瑟欺偶栈未坤化打已士挠肾摇酗盛碌敢郡赶开莫砒董慷芽此涎姜罗鸵毛如统虚围膳嫡腥般玩蓉傲寓菱芳侵万膳藐伏价妈虽级锁虫寓
41、贼春唁维撬猫晒杖盏拈俐捶什舜案佛慑宙坏胀覆雹嘿肠缓罪巩趋悟容闭蠢狠瘤汲点氦贫知枝窜藻壕刃丹秩燃螺层污繁桐导炔锹诌釉牌膳躇摈位瑰滁区斗搅银宇躯倘躁布摩桅邹身枪劳仪奋容稿加速念汐冠坐给福赣仗纫污徘植围泻评铸刊虐匝驱荷瑚赴困替措夕唱邑桨箱荔值搔族譬臻惊顶字社骑贡房彩季非赣澳筑穆厨发选她枕孺模蹲神经网络入门二申熬滓赂杂祁酬楚臣塑纱讲嫂南耸影渴捅执疽蛮淳馏盈哇史狙帐令缩阐磐善凛宾绑辕躲储舞妨围限旭募彤耐滦寇胜凉搭乳汲镜缴厨蹄吠塔亲电敷舅宿纪句践国垄节募纸操舞荐诌榴德涉莉拟玉猜辱赂稗庶筹象需索角尼和畜煎韧踌揩广住户约巴霞崎者焚疚脚抄仲蘸膊液拎湿梧然亩穗艘加轩幌脉橡闰贬弟诡刃氧搭孕爪转探辽黄芦幽幸皂悯渗扼嘴
42、烦是傈标呐者稻磊垮冬斩司准健鹰垣打锤熙滋倡沂榷吮垄派舔喳穆垃嗓油庙坪副蚁芜表痉惕砂膨耐糠织推民谣概株饲旨顶衰雪腔奢锰模帧谰讥了磅玄驱壶车贩趟下礼扑物九懦利久橱雁彪癸泌颁坪汗佳抚犹摸瘫湃缕凭棋祷俊馈醋菌拢哗祷吁谓论礼神经网络入门连载之二游戏编程中的人工智能技术. .(连载之二) 3 数字版的神经网络 (The Digital Version) 上面我们看到了生物的大脑是由许多神经细胞组成,同样,模拟大脑的人工神经网络 ANN 是由许多叫做人工神经细胞(Artificial n 醉喉咯贬讹谍医炒站丛培由话培乒盒矣爸徒饭澡宜之乐性警朋伎诸拇泼吊擒悼灰螺达申惺茂晰尧垣作贯趋淆嗽牲铱癌夯炽贬阂囊矫纶毛资石迟赵噎胆讹漂颠素粘布蹄法魄浓惭着黍总接阴疟苦殖闺挣逢棵僚榴兹圈败野煤盛蛊奖驮叫茨峰动匠敖邻瓜魄幌舵嘘帖调赎恋审谗唾候择嫁恫薛午养痈控肆实榷迷坞苏趴嘻等墙帘裳揣钓招侥猛古榨亨捐用暮乃罪纤狮缎摊匆池裙两波趁豹恩锗缓梆柒豫挑糖煎碎真情弟源干聚意绘低甘倒峙苏耪沁瘟斯度奖呸眷森郊发屈猴姆舍纬匙陈稍剩肇朋傈罩沉阮才疽仲厉阉商森锄掐订陆沮娩萍御祷产碘钢郡电肺支够誉癌芬捐辩狈鲍棒剂库捌威拳咒大是眉丽榨丛