即日起在codingBlog上分享您的技术经验即可获得积分,积分可兑换现金哦。

Python和人工神经网络(14)——其他技术

编程语言 zxhm001 20℃ 0评论

    随着将MINST数据集识别的事情做完,作者的书也接近尾声。在这个过程中,我们了解到了很多神经网络和深度学习的核心概念,比如随机梯度下降、反向传播、卷积神经网络、正则化等等。但实际上在神经网络和深度学习领域,还有很多东西是没有提及到的,比如递归神经网络、长期记忆单元、深度信念网络、生成式模型和波尔兹曼机等。这里简单的介绍一下这些概念,有了前面的基础,这些概念通过自己看资料,也是比较好理解的





除此之外,作者还提出了一些关于神经网络的未来设想,我也会简单的转述一下。





递归神经网络





在我们以往的神经网络中,每一轮的训练是独立的,也就是说,当前的输入值,就决定了当前的输出值,当然也决定了每一层上神经元的值,这是一个相对比较固定的状态。





如果我们设想,当前隐藏神经元的值,不仅仅与当前的输入值有关,还与更早些的时候该层上的神经元的值有关,那么整个神经网络就活了。这样的,拥有时间相关特性的神经网络就叫做递归神经网络(Recurrent Neural Networks,RNNs)。





这样有时间特征的神经网络有什么用呢?打个比方,在语音识别领域,我说的这句话,往往会与上句话有关!这只是一个方面,还有很多很多的应用。





长短期记忆单元





在我们说深度学习的时候,有说到之所以深度神经网络很难训练,是因为其梯度的不稳定性。那现在问题来了,训练RNN,不仅仅有层之间的梯度不稳定性,还有时间因素,具体表现就是前期的梯度会相当的小,压根就学不到什么东西。这时候就需要引入一个长短期记忆单元( Long short-term memory units, LSTMs)的东西。简单来说,就是在神经网络链条上,引入一些不会变动的记忆单元,在链条中传递的时候不会变动(这里的不会变动是相对的,具体过程中还会有非常复杂的处理来改变它)。





深度信念⽹络,⽣成式模型和波尔兹曼机





其实,现在的人对神经网络啥的开始感兴趣,并不是我们之前说的这种前馈神经网络,而是一种叫信念神经网络(Deep Belief Network, DBN)的东西。





与我们用的前馈神经网络有输入数据和预期输出数据不同,DBN先从输入数据中提取特征,然后根据这些特征尽量的去模拟出输出数据,这就更像我们人脑,先从书本中看字形,得到字形的特征,然后一笔一划学着写出来,所以这种模型也叫生成式模型,其组成的原件,就是受限波尔兹曼机(Restricted Boltzmann Machines, RBM)。





接下来就是作者对神经网络和深度学习对未来的影响的设想:





意图驱动用户接口






这里的接口是一个特别广义的概念,表示所有人和及其交互的接口。所谓意图驱动用户接口,就是以后人和电脑交互的时候,电脑不会再仅仅根据人输入的关键字去进行计算,而是能够通过机器学习大量的数据,弄懂人输入的关键字背后的身材含义,并通过这些提最恰当的计算结果。





机器学习,数据科学和创新的循环






这一点是说,通过机器学习,人们可能从数据中获得我们之前不曾发现的未知。通过日积月累,这些通过机器学习发现的东西,是企业创新的巨大来源。这种创新会给企业带来巨大的回报,促使企业投放更多的资源进机器学习。





其实我觉得,机器学习只是一门科学,一门科学不可避免的会与其他学科进行交叉繁衍,这才是机器学习有意思和有前景的地方。




欢迎关注我的微信公众号获取最新文章:





转载请注明:CodingBlog » Python和人工神经网络(14)——其他技术

喜欢 (0)or分享 (0)
发表我的评论
取消评论

*

表情