神经网络的发展可以追溯到上世纪40年代,那时的神经科学家和控制论专家们正思考着如何用人类的方式去存储和处理信息,于是他们在数学和阔值逻辑的基础上构建了一种神经网络计算模型。
但由于当时计算机的计算能力的限制,此项技术并没有得到广泛的关注与应用,甚至还被业界背弃。
直至21世纪初,计算机的计算能力在CPU和分布式计算的帮助下,有了大大的提升,从而使神经网络得以快速的发展。

而神经网络之父Geoffrey Hinton也曾感叹自己的学术生涯就像神经网络技术一样起起伏伏。但所幸的是,他并没有就此放弃了对神经网络的研究,反而与许多志同道合的研究者们不断突破、证明自己最初的想法。
直到现在,神经网络技术得到越来越多业界工作者的认可,科研人员们也陆陆续续开始投身于这项技术的研究中。
今天,我们要了解的就是这个被“质疑”的火花——神经网络技术。
定义
神经网络以人造神经元为基础,各神经元相互连接,完成信号传输、接收和处理。在人工神经网络技术中,人造神经元间传输信号为实数,随着学习深度的加深,该参数发生一定变化,每个神经元均对应一个阈值,当总信号高于阈值时借助激励函数完成信号计算。
也就是说,人工神经网络,是一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。
这种网络通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的,并具有自学习和自适应的能力。

简单来说,就是通过大量的样本训练神经网络,从而得到结论。紧接着就可以输入新的信息,看最后得出怎样的回应。
例如,周杰伦周末在北京开演唱会,我们会考虑时间、地点、价格、天气、是否有同伴等因素,然后根据这些判断因素,做出是否去看演唱会的决定。
而从我们接收到演唱会信息,再到做出相应判断,这整个过程就是神经网络运行的过程。
组成

一个典型的神经网络,由成百上千万的人工神经元构成,他们一层一层排列其中,每个层之间彼此相连,基本上由三个相互连接的层组成:输入层、隐藏层和输出层。由图我们可以看出,输入层向隐藏层输入信息,隐藏层会向输出层输送数据。下面我们来一起了解下人工神经单元的这三个组成部分:
A、输入层
输入层是接收每个观测值的解释属性的值作为输入。一般情况下,输入层从外界接收各种各样的信息,神经网络会用这些信息进行学习、识别或进行其它的处理。
B、隐藏层
隐藏层将给定的转换应用于网络内的输入值。隐藏层的节点数目不定,但隐藏层越多,神经网络越强健。
C、输出层
输出层接收来自隐藏层的连接,它返回一个对应于响应变量预测的输出值,再通过输出层的活动节点结合并改变数据以产生输出值。
人工神经网络,就是通过这三个层面模拟着人类的思考过程。
常见神经网络的类型
BP神经网络
BP神经网络,是按误差反向传播算法的学习过程,由信息的正向传播和误差的反向传播两个过程组成,是一种应用最为广泛的神经网络。

由BP神经网络流程图可以看出,正向传播处理过程和人工神经网络的流程相同。其本质的区别是,增加了误差的反向传播阶段。
当实际输出与期望输出不符时,误差通过输出层,按误差梯度下降的方式修正各层权值,向隐藏层、输入层逐层反传。
简单来说,即通过信息正向传播和误差反向传播,不断地进行学习训练,一直到网络输出的误差减少到可以接受的程度。
卷积神经网络
卷积神经网络是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元。
换个角度思考,卷积神经网络就是多层的神经网络,前面的层训练出的特征作为下一层的输入,所以越到后面的层,特征越具体。

卷积神经网络在大型图像处理方面展示出了非凡的效果。
例如,我们需要在众多图像中鉴别出一只猫,人类可以通过已有的常识判断出特征,比如猫头、猫身、猫尾巴等,从而鉴别出它是一只猫。

而卷积神经网络完全不知道什么是猫头、猫身、猫尾巴,卷积神经网络通过学习物体的抽象特征,这种特征在现实世界有可能都没有特定的名词,但是通过这些自学的的特征组合在一起,计算机就会判定这是一只猫!
递归神经网络
递归神经网络是一种深度神经网络,它将相同的权重递归地应用在神经网络架构上,以拓扑排序的方式遍历给定结构,从而在大小可变的输入结构上可以做出结构化的预测。
递归神经网络可以把一个树图结构信息编码转化为一个向量,也就是把信息映射到一个语义向量空间中。

由上图可以看出,神经网络A,可以查看输入层的X,输出h。一个递归的神经网络可以被认为是同一个神经网络的多个副本,每一个副本都传递一个消息给输出层。
总的来说,神经网络是实现机器学习的一种方式,从它的出现到今日,也不过70年左右。在多年不断地争论、研讨下,神经网络技术的应用也是渗透在科技前沿的方方面面。但它的发展离不开庞大的数据支持,就目前技术来看,它的路,还长。
部分图文源于网络,转载此文目的在于传递更多信息,版权归原作者所有。
本文直接来源:滨州医学院网络信息中心