[技术]使用人工智能玩微信跳一跳

周六玩跳一跳小游戏,人工模式下只能到三十来分,玩了一会儿颇感气馁,决定挑战一下自我,写了一个人工智能程序来玩跳一跳。

一、人工智能-人工神经网络

人工神经网络目前是AI的主流发展方向之一,是模拟生物神经网络的突触联接的结构进行信息处理的数学模型。


生物科学家认为:神经元的基本功能是通过接受、整合、传导和输出信息实现信息交换。通过树突与其他神经元连接,通过突触来传递数据。

以下是人工神经网络的历史

1943年,基于生物神经网络莫克罗-彼特氏神经模型(McCulloch-Pitts′neuronmodel)诞生。



 

McCulloch-Pitts模型的基本思想是抽象和简化生物神经元的特征性成分。这个模型不需要捕捉神经元的所有属性和行为,但要足以捕获它执行计算的方式。McCulloch-Pitts模型的6个特点中前面4点和之前总结的生物神经元一致,具体对应请见下图:

1.每个神经元都是一个多输入单输出的信息处理单元;2.神经元输入分兴奋性输入和抑制性输入两种类型;3.神经元具有空间整合特性和阈值特性;4.神经元输入与输出间有固定的时滞,主要取决于突触延搁;5.忽略时间整合作用和不应期;6.神经元本身是非时变的,即其突触时延和突触强度均为常数。

作者:HiAR链接:https://www.jianshu.com/p/078bba15fdb0來源:简书

似乎上图就是人工神经网络的鼻祖了,是的,它比计算机行业还要古老。

从上述模型中可以依稀看到生物神经网络的原理:某个神经元,接收到不同突触传来的信号,将信号进行加工,最终转换为输出。

80年代,各方研究室都在研究如何制造人工神经网络,1986年出版了《Learning representations by back-propagating errors》,将BP算法运用在神经网络上,自此之后BP神经网络开始大行其道,直至今日,采用了BP算法的前馈式神经网络成为了运用最广泛的人工神经网络。

人工神经网络

人工神经网络是模拟生物神经网络的数学模型,最早的时候只有一些数学家在模拟,近来由于学术界与工业界的互相渗透,人工神经网络的使用场景也越来越丰富,现在已有遍地皆是之感。

以上就是人工神经网络的核心部分:一个输入层,一到多个隐含层,一个输出层,输入层与隐含层的连接有各自的权重,隐含层的每一个节点都有其激活函数,隐含层与输出层之间也有其连接权重。

常见的情况是:

1、初始化一批训练数据,包含【输入值,期望输出】

2、将输入值输入“输入层”

3、输入层根据连接权重将输入值分解到各“隐含层”节点

4、隐含层节点接受到各个输入层传递来的数据,通过激活函数,计算输出

5、将输出根据权重输出到“输出层”

6、输出层汇总输出

其中关键的地方在于“激活函数”+“连接权重”。

激活函数是一种特殊的函数,具有如下的性质:y越接近0.5,其导数越大,y越接近0或者1,其导数越小。图形如下:

左侧的即为:Sigmoid激活函数,算法是:σ(x)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值