神经网络基础

神经网络可以当做是能够拟合任意函数的黑盒子,只要训练数据足够,给定特定的x,就能得到希望的y,结构图如下:

详细参考下文(包含感知机(神经元)、基础神经网络结构、各个层的作用等):https://blog.csdn.net/illikang/article/details/82019945

注1:单层感知机把计算放在了输出层神经元上,因此输出层也是计算层。

注2:图16
Wxy中,x表示输出层神经元编号,x相同表示为线性代数方程里的同一行(每个输出单元可以理解为方程组里的一行式子)。系数矩阵的一行表示对一个输出神经元的影响。

注3:图25
解释了激活函数,以及为什么激活函数可以变线性分类为非线性分类。

隐藏层

隐藏层比较多(大于2)的神经网络叫做深度神经网络。而深度学习,就是使用深层架构(比如,深度神经网络)的机器学习方法。

  • 单个隐藏层
    隐藏层的意义就是把输入数据的特征,抽象到另一个维度空间,来展现其更抽象化的特征,这些特征能更好的进行线性划分。

  • 多个隐藏层的意义
    多个隐藏层其实是对输入特征多层次的抽象,最终的目的就是为了更好的线性划分不同类型的数据(隐藏层的作用)

仅仅隐藏层的引入并不能帮助我们把线性分割变为非线性分割,因此还需要激活函数。

激活函数

作用:

  • 增加模型的非线性分割能力
  • 提高模型地稳健性
  • 缓解梯度消失
  • 加速模型收敛

线性函数(直线)作为输入,经过激活函数后,后变为非线性函数(曲线)。

常见的激活函数:

如果权重矩阵W和偏置b合适,我们就得到的合适的模型。(曲线可以更好地划分数据)

当曲线不能很好的拟合数据时,我们可以增加隐藏层数量,让模型更加复杂,更复杂的模型具有更好的非线性拟合能力。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐