人工神经网络中的一种——反向传播神经网络(BP ANN)

久远的记忆,发上来和有缘人分享一下,格式有些乱掉了。。。

内部交流系列一

人工神经网络中的一种——反向传播神经网络(BP ANN)

·写在前面的话

一个人的理解难免有偏颇,所以以下的言论不可全信,要抱着怀疑的态度审视。本着传达思想又不吓到人的目的,相关的名字可能不会解释太多,有兴趣的话可以查资料深入了解一下。

    (注:人工神经网络这是一个大的学科分支,以下主要针对BP ANN)

1、引子

多人对战中的电脑玩家,如何应对才会让人觉得像在和真人对战,不至于太简单或太难而失去兴趣?

写一个状态机能解决这个问题:

Switch 电脑玩家类型

Case 肉搏力量型

If( 友军人数很多 || 敌人攻击力很弱 || 自己生命值饱满 || 敌人距离太近)

冲上去PK再说

Else if

。。。 。。。

   Case  法术远战型

。。。 。。。

   。。。 。。。

状态机很常用也确实可以解决问题,但是看起来要想做到惟妙惟肖,会有太多种情况等着我们。而且,这个AI是死的,它的行为一出生就注定了,应该尝试造个活的!

如果你已经想到了办法,先别急着往下看,花点时间去尝试实现它,别让你的PC世界太孤单。

2、还是引子

(1)假设已知圆的定义,下面哪个更像圆?

(椭圆、园、正方形的三个图形)                     

(2)假设已知1999的平方 = 3,996,001    3999的平方 = 15,992,001

    那么2999的平方 = ? (如果再已知3000的平方 = 9000,000 ,2999的平方 = ?)

我们比较哪个更圆的时候,会将图形和自己认知的圆去比较,凭经验或者说直觉,估计每个图和圆的误差,选出误差最小的。

硬伤:倘若你选了第2个,但是有人告诉你第3个才是他们所规定的正圆,那么下次再让你选,也许你会选第3个,因为有人这样教过你。

猜测2999的平方的时候,根据以前的学习经验和尝试,估计其值大概在(3,996,001 + 15,992,001)/2左右,知道3000的平方以后,猜测会更准,如果再知道2998的平方根,甚至有可能直接猜对。

硬伤:但是如果只告诉你2998、2999、3000的平方值,去猜测1999、3999的平方,误差显然会很大,直接猜对的几率更是微乎其微。

上面描述的处理过程,可能有所偏差,不过大体上BP神经网络就是从类似这样的角度,模仿人脑的处理过程,首先学习样本集合(1999的平方 = 3,996,001 同时3999的平方 = 15,992,001 同时 3000的平方 = 9000,000)、不断调整自己的权值以拟合样本集合的结果,注意是拟合,这个小小的神经网络,不知道什么是平方(像我们小时候),告诉它输入A要给出结果B,他就不断内部调整,努力实现由A得B,再告诉它要由C得D,它又会努力拟合,这时候问它由A得出什么?,可能回答又不是刚才的B了,于是,继续不断的训练,直到误差小于阀值,或者很不幸的死循环下去了(一般是训练样本不好造成不收敛&

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值