飞百度架构师手把手带你零基础实践深度学习——21日学习打卡(第二周第二日)
首先声明,不详细讲解代码部分,主要是针对课程的理解及对作业的分析。(要是有代码相关问题可以私信)
课程链接:百度架构师手把手带你零基础实践深度学习
前文:飞桨PaddlePaddle-百度架构师手把手带你零基础实践深度学习——21日学习打卡(第二周第一日)
该课程分类专栏:深度学习课程——飞桨paddlepaddle
在这里插入图片描述
让我们回顾一下昨天学习的知识–卷积神经网络,昨天的重点在与详细讲解了卷积神经网络的卷积与池化的概念(还有如何进行计算)。
今天孙老师接着昨天讲的,详细说明了卷积神经网络的激活函数(ReLU激活函数和Sigmoid激活函数),批归一化处理(这里重点要知道批归一化处理的作用和思路,好处是使中间层的输出更稳定),Dropout处理(丢弃法,作用是抑制过拟合,飞桨支持两种接口:downgrade_in_infer和upscale_in_train)。
今天学习完这些概念,我们就具备了搭建卷积神经网络的基础。下一节,我们将应用这些基础模块,一起完成图像分类中的典型应用 — 医疗图像中的眼疾筛查任务的模型搭建。

作业

在这里插入图片描述
1.反向传播后,梯度值减到接近于0的现象称作梯度消失(内容出处

2.常用激活函数:relu, tanh, sigmoid, elu, relu6, pow, stanh, hard_sigmoid, swish, prelu, brelu, leaky_relu, soft_relu, thresholded_relu, maxout, logsigmoid, hard_shrink, softsign, softplus, tanh_shrink, softshrink, exp。(对应API文档

在这里插入图片描述
3.批归一化(BatchNorm)的作用是:(内容出处

  • 使学习快速进行(能够使用较大的学习率)
  • 降低模型对初始值的敏感度
  • 在一定程度上抑制过拟合

4.Dropout是深度学习中一种常用的抑制过拟合的方法,其做法是在神经网络学习过程中,随机删除一部分神经元。训练时,随机选出一部分神经元,将其输出设置为0,这些神经元将不对外传递信号。(内容出处

视频7.1作业

在这里插入图片描述

根据提示:先看输出一个像素点需要做多少次乘法和加法操作,然后再计算总共需要的操作次数。


假设卷积层的输入特征图大小为C_in x H x W, 卷积核大小为K_1 x K_2, padding = P_1 x P_2, stride = S_1 x S_2, filter 数目为C_out。
乘法操作计算量:
输出的特征图大小为C_out x H_out x W_out, 其中
  H_out = [(H - K_1 + 2P_1) / S_1] + 1
  W_out = [(W - K_2 + 2P_2) / S_2] + 1
为了得到输出的特征图的某一个位置的像素值,需要 C_in x K_1 x K_2次乘法操作,而特征图总共有C_out x H_out x W_out个像素,因此乘法总计算量为:
-----------------------------------------C_out x H_out x W_out x ( C_in x K_1 x K_2)
加法操作计算量: (默认bias=false)       
为了得到输出的特征图的某一个位置的像素值,需要 (C_in x (K_1 x K_2 - 1)) + (C_in - 1) + 1 = C_in x K_1 x K_2 次加法操作,可以看成三部分,第一部分表示在某一个通道进行一个K_1 x K_2 大小的卷积操作需要 (K_1 x K_2 - 1)次加法,有C_in个通道,故 C_in x (K_1 x K_2 - 1)次加法,每个通道都卷积后,得到C_in个数,接下来需要有 C_in - 1次加法,最后加上bias又1次加法。 而特征图总共有C_out x H_out x W_out个像素,因此总加法计算量为
-----------------------------------------C_out x H_out x W_out x ( C_in x K_1 x K_2 - 1)
我们先算出输出特征图的一个通道卷积核计算需要进行 3x3次乘法、3x3-1 次加法。
计算出输出特征图大小为:[64, 224, 224 ]
乘法:27x10x64x224x224=86,704,128次
加法:26x10x64x224x224=834928640次

视频7.2作业

名称w形状wc参数的个数b的形状b参数个数输出形状
conv1[6,3,5,5]450[6]6[10,6,224,224]
pool1[10,6,112,112]
conv2[16,6,5,5]2400[16]16[10,16,112,112]
pool2[10,16,56,56]
fc1[64,50176]3211264[64]64[10,64]
fc2[1,64]64[1]1[10,1]

有什么不对或者可以改进的地方欢迎评论,互相交流

对了还有个意外之喜!
虽然是最后一名,但是也激动。
在这里插入图片描述

在这里插入图片描述

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐