introduction to deep learning--week2

多层感知器(MLP)

逻辑回归:逻辑回归拥有向东的决策函数,但是分类做出了不同的决策,通过S函数能够把任何的值转化到0-1之间的范围内,因此s函数可以输出有效的概率。

对于复杂的问题,单个逻辑回归不能很好的做出分类,如下图例子,需要三个不同的边界线共同进行分类。在这个过程中我们把x_1,x_2两个点的特征,转化成为z_1,z_2,z_3三个特征,我们相信这三个特征能够很好的适合当前的分类任务。最终的模型关于z_1,z_2,z_3的逻辑回归函数,z又是x_1,x_2的逻辑回归函数,这就是一个简单的MLP模型

多层感知机(MLP)模型都有较为整齐的格式,决策函数-s函数,您可以验证我们的功能组合可以转换为这些计算图:

MLP结构如下:输入层、隐藏层、输出层

隐藏层每个node包含线性组合函数和激活函数

如果使用线性激活函数或者不使用激活函数,那么无论你的神经网络有多少层,一直在做的只是计算线性激活函数,所以不如直接去掉全部隐藏层。因为这种算法和没有任何隐藏层的标准逻辑logistic回归是一样的。因此激活函数一般是非线性函数,如S函数、tanh、Relu、weaklyRelu等

MLP结构:

隐藏层的个数

每层隐藏层的神经元数量

激活函数的种类

隐藏层数量

选择稠密层(dense layer)还是全连接层(fully connected layer)

链式法则

自动计算MLP的梯度(gradient)需要用到链式法则(Chain rule),链式法则如下:

在MLP中求导的计算图如下:

对于两层的MLP求导过程

反向传播

在反向传播中,求导部分有的计算会重复使用,我们可以命名成变量dp, dz1, dz1, dx2等,是反向传播更加效率

在反向传播中需要用到\sigma \left ( x \right )*\left ( 1- \sigma \left ( x \right )\right ),因此梯度下降过程中不仅需要反向转播,也需要正向传播

反向传播过程如下:

 

反向传播过程的使用numpy矩阵运算运行效率会比较高,如果可以选择矩阵运算的情况下,尽量选择矩阵进行循环的计算。在反向传播矩阵中,每个元素都是使用链式法则对参数进行的求导,对于SGD(Stochastic Gradient Descent,随机梯度下降)计算过程如下:

对于mini-batch批次梯度下降方法是的梯度dw和db两个样本的加和,通过矩阵运算过程如下:

反向传播推导过程可以使用雅各比矩阵(Jacobian)进行推导。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值