你好,游客 登录
背景:
阅读新闻

人工神经网络简介

[日期:2017-08-03] 来源:码农网  作者: [字体: ]

伴随着大数据的发展,人工神经网络(ANN)也越来越流行。下面让我们来学习一下 ANN 是什么,以及它与生物神经网络之间的联系。

上学的时候我特别喜欢数学,讨厌生物。但过了很久之后,我最终开始学习结合了数学与生物二者的学科:人工神经网络(ANN),而 ANN 还是受到了生物神经网络的影响。尽管你会感觉它怪怪的,而我的确认为这个词形容人工神经网络很合适。我们这儿说的生物,一般指的是研究大脑或者是神经系统。人工智能模拟了神经系统的工作方式。伴随着大数据的发展,人工神经网络最近越来越流行。事实上,我其中一个同事说,如果没有大数据,你根本没法研究人工神经网络或者任何机器学习算法。当然,我并不相信他的说法,决定自己试一试。所以,这篇博文讲的是我第一次尝试 ANNs 的体验感悟。

这篇博文并不能将所有 ANNs 相关的知识解释清楚,但是我希望通过本文能让你更进一步的认识 ANN。现在,让我们先快速的了解下生物神经网络,以及相关术语,还有ANNs 的相关术语。

当我们的感官产生某种感觉(像是当你碰触某些东西的时候),感官输入得到数据然后把它传输给神经系统。神经系统由一组组神经组织细胞组成。这些细胞被称为神经元。神经元处理由感官输入传过来的数据,然后令肢体做出动作,比如从热火炉旁将手移开。移动手臂这部分被称为运动神经输出。我们不打算深入探讨感官输入和运动输出,但是会讲讲神经元以及它们是如何工作的。

神经网络是由各种各样的神经元组成的。在上一张图片中展示了一个由两个神经元组成的网络。正如你看到的那样,神经元的不同部位有不同的术语。树突指的是神经元的输入点。传入神经元的数据包括来自感官输入点的数据以及其它神经元从树突接收到的数据。细胞体负责处理数据,创建电脉冲形式的数据、或者是化学信号,然后通过轴突将它发送给其它神经元或者运动神经输出。在网络中,当神经元互相交互时(换句话说就是当轴突携带脉冲或者化学数据给其它神经元的时候),它会把数据丢在一个树突可以接收数据的地方。这个轴突与树突相交的点称为突触。突触便是神经元向外输出数据的那个点,它会将数据转换为下一个神经元可以接受的格式。

好的,以上就是神经网络的基本概念。现在我们应该已经准备好了,开始学习人工神经网络吧。

上面的图对生物神经网络与人工神经网络做了个基本对比。上图所展示的这种神经网络有三层:输入层、中间层、输出层。我们可以把每个圆圈当成一个个神经元,那么每个神经元会接收输入、处理输入的数据、产生输出。当第一个神经元将产生的数据输出到下一个神经元时,会将它乘以一个权重。然后,下一个神经元将值作为输入。ANN 的输入和输出可以分别比喻为生物神经网络的树突和轴突。权重的增加可以比喻为突触。

人类大脑中大约有上千亿的神经元,每个神经元会跟大约一万个神经元相连。有趣的是,生物神经元可以在0.001秒内完成转换,而计算机则非常快,只需要10^-10。然而,生物神经元仍然可以非常快地做出复杂的决定。识别一个认识的人,它需要花费大概0.1秒,你可以想象这会调动多少神经元。即便在如此多的神经元之间转换用时0.1秒,大脑的效率依然相当快。很吃惊,对吧?好吧,据推测是大脑中的神经元能够非常厉害地并行处理。所以,新的神经网络算法正在不断地提升并行性。

在这个系列后续博文中,我们会使用 Scala 与 Akka,这两种技术能够更好地支持并行性。希望,你会像我一样感到兴奋!

总之,我们已经过了一遍生物神经元是什么,它们如何工作,还有生物网络的不同术语。我们还比较了生物神经网络与人工神经网络的相似之处。最后,我们讨论了人类大脑如何快速地做出复杂的决定。我下一篇博文中,我们会学习一个使用 Scala 编写的神经网络示例,更深一步的理解人工神经网络。

收藏 推荐 打印 | 录入:admin | 阅读:
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数
点评:
       
评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款