人工神经网络


  神经元

  神经元是构成神经网络的基本模块。神经元模型是一个具有加权输入,并且使用激活功能产生输出信号的基础计算单元。

       

  g(z)表示激活函数。

  与线性回归一样,每个神经元也有一个偏差,偏差是改善学习速度和预防过拟合的有效方法。

  激活函数

  激活函数是加权输入与神经元输出的简单映射。它控制神经元激活的阈值和输出信号的强度。最简单的激活函数是临界值判定,如输入总和高于阈值(如0.5),则神经元将输出值1.0,否则将输出值0.0.

  常用激活函数有sigmoid函数、tanh函数等。此外,线性整流函数ReLU相比这两个函数,只需要一个阈值就可以得到激活值,能够提供更好的结果。

  ReLU函数不是传统的非线性函数,而是分段线性函数。其表达式:y=max(x,0)。在x大于0时,输出就是输入;而在x小于0时,输出就保持为0.

  神经网络

  •   设计神经网络时,输入层与输出层的节点数往往是固定的,中间层可以自由指定。
  •   神经网络机构图中的拓扑与箭头代表预测过程中数据的流向,和训练时的数据流有一定的区别。
  •   结构图中的关键不是圆圈(神经元),而是连接线(神经元之间的连接)。每个连接线对应一个不同的权重,这是需要训练得到的。

  隐藏层中,两层神经网络可以无限逼近任意连续函数,也就是说,面对复杂的非线性分类任务,两层神经网络可以分类的很好,关键就是从输入层到隐藏层时,数据发生了空间变换。所以,多层的神经网络的本质就是复杂函数拟合。

  输出层对于二分类问题,可以使用sigmoid函数,输出0和1之间的值,以表示预测主类别值的概率。对于多分类问题,可以使用softmax激活函数来输出神经网络对每个类值的概率预测。