• 概念及前向传播(Forward Propagation)

个人觉得将神经网络和逻辑回归联系起来会更好理解

逻辑回归其实就是感知机,结构图如下(以二维为例,方便可视化):

神经网络(结合逻辑回归)的理解、介绍神经网络及其前向传播(Forward Propagation)

其中:

神经网络(结合逻辑回归)的理解、介绍神经网络及其前向传播(Forward Propagation)

神经网络(结合逻辑回归)的理解、介绍神经网络及其前向传播(Forward Propagation)

用矩阵表达为:

神经网络(结合逻辑回归)的理解、介绍神经网络及其前向传播(Forward Propagation)

其中W维度(1,2), X维度(2,1)

利用逻辑回归可以处理二分类问题,分界线是线性的

神经网络(结合逻辑回归)的理解、介绍神经网络及其前向传播(Forward Propagation)

倘若数据并不是线性可分的,如下:

神经网络(结合逻辑回归)的理解、介绍神经网络及其前向传播(Forward Propagation)

那么使用逻辑回归的分类结果就不尽如人意了:

神经网络(结合逻辑回归)的理解、介绍神经网络及其前向传播(Forward Propagation)

这时我们试试多使用几个感知机,组成如下神经网络(输入层编为第0层):

神经网络(结合逻辑回归)的理解、介绍神经网络及其前向传播(Forward Propagation)

(其中单元“1”并不是神经元,用来计算偏置系数)

插入一个重要环节:系数编写格式

**************************************************************************************

例第五层有5个神经元,第六层有4个神经元,则

第5层第3个神经元到第6层第4个神经元的权重系数神经网络(结合逻辑回归)的理解、介绍神经网络及其前向传播(Forward Propagation) (神经元→神经元)

第5层到第6层第4个神经元的偏置系数神经网络(结合逻辑回归)的理解、介绍神经网络及其前向传播(Forward Propagation)层→神经元

第6层第4个神经元的权重系数矩阵神经网络(结合逻辑回归)的理解、介绍神经网络及其前向传播(Forward Propagation) : (层→神经元)

神经网络(结合逻辑回归)的理解、介绍神经网络及其前向传播(Forward Propagation) ,维度(1,5)

第6层的权重系数矩阵:(层→层)

神经网络(结合逻辑回归)的理解、介绍神经网络及其前向传播(Forward Propagation) ,维度(4,5)

第6层的偏置系数矩阵:(层→层)

神经网络(结合逻辑回归)的理解、介绍神经网络及其前向传播(Forward Propagation) ,维度(4,1)

矩阵维数窍门:行数为该层神经元数,列数为上层神经元数,但神经网络(结合逻辑回归)的理解、介绍神经网络及其前向传播(Forward Propagation) 固定都是1列

来计算一下第六层的输出,检验维度:

神经网络(结合逻辑回归)的理解、介绍神经网络及其前向传播(Forward Propagation)

其中X为第五层的输出A,因为有五个神经元故其维度为(5,1),从而维度计算为

(4,5)*(5,1)+(4,1)=(4,1),对应第六层有4个神经元,说明无误!

**************************************************************************************

回到上图中,含有三个感知机的神经网络到底有什么用处吗?直接来看看结果吧:

神经网络(结合逻辑回归)的理解、介绍神经网络及其前向传播(Forward Propagation)

可以看到它能生成了非线性分界线(深绿色),原因是什么呢?

我们来计算一下这条分界线 神经网络(结合逻辑回归)的理解、介绍神经网络及其前向传播(Forward Propagation) (未通过激励函数)表达式(前向传播):

第一层:

神经网络(结合逻辑回归)的理解、介绍神经网络及其前向传播(Forward Propagation)  维度(1,2)*(2,1)+(1,1)=(1,1)

神经网络(结合逻辑回归)的理解、介绍神经网络及其前向传播(Forward Propagation)

神经网络(结合逻辑回归)的理解、介绍神经网络及其前向传播(Forward Propagation)

以上三个式子可以统合成

神经网络(结合逻辑回归)的理解、介绍神经网络及其前向传播(Forward Propagation)  维度(3,2)*(2,1)+(3,1)=(3,1)

第二层:

神经网络(结合逻辑回归)的理解、介绍神经网络及其前向传播(Forward Propagation)

神经网络(结合逻辑回归)的理解、介绍神经网络及其前向传播(Forward Propagation)   

可以看到分界线关于特征X是一个复杂的非线性关系,泛化能力强,这还只是包含了一层隐藏层,如果增加隐层和神经元个数,模型的分类能力就会更强。

其实我们从表达式中可以看到,起非线性作用的是(非线性)**函数,假如我们将**函数省去:

神经网络(结合逻辑回归)的理解、介绍神经网络及其前向传播(Forward Propagation)

神经网络(结合逻辑回归)的理解、介绍神经网络及其前向传播(Forward Propagation)     

神经网络(结合逻辑回归)的理解、介绍神经网络及其前向传播(Forward Propagation)     

结果变成了线性模型,所以非线性**函数必不可少,否则再多隐藏层也是浪费。

以上是单样本的计算表达式,反映在输入特征X的维度为一列,若是多样本的话,直接按列堆叠成新X即可,W维度不会发生变化(各样本使用同一个网络),而对应Z的的维度产生和X一样的变化,按列堆叠。

当隐藏层多于2时称为深度,DNN与NN主要的区别在于把sigmoid函数替换成了ReLU

图源up主文小刀,非常谢谢他的所有教学视频,推荐给各位!

相关文章:

  • 2021-04-08
  • 2021-07-05
  • 2021-11-08
  • 2021-09-07
  • 2022-12-23
  • 2021-09-03
  • 2021-03-31
  • 2021-10-02
猜你喜欢
  • 2021-06-28
  • 2021-12-22
  • 2021-07-09
  • 2021-09-27
  • 2021-06-02
相关资源
相似解决方案