笔记:计算机视觉与深度学习-北邮-鲁鹏-2020年录屏-第八讲

笔记:计算机视觉与深度学习-北邮-鲁鹏-2020年录屏

写在开头(重复的)

1.课程来源:B站视频.
2.笔记目的:个人学习+增强记忆+方便回顾
3.时间:2021年4月16日
4.同类笔记链接:(钩子:会逐渐增加20210428)
第一讲.第二讲.第三讲.第四讲.第五讲.第六讲.第七讲.第八讲.第九讲.第十讲.第十一讲.番外篇一个简单实现.第十二讲.第十三讲.第十四讲完结.
5.请一定观看视频课程,笔记是对视频内容的有限度的重现和基于个人的深化理解。
6.注意符号 SS:意味着我的个人理解,非单纯授课内容,有可能有误哦。

—以下正文—

上节复习(00:00-11:39)

一、纹理表示

(一)纹理

  • 1.纹理:人脸也是纹理的一种。你可以理解为任何一种模式都可以称为纹理。
  • 2.纹理分为规则纹理和随即纹理。
  • 3.为识别纹理,引入一种基于卷积核组的纹理表示方法
    • 3.1该方法 利用卷积核组提取图像中的纹理基 + 利用基元的统计信息来表示图像中的纹理。

(二)基于卷积核组的纹理表示方法

  • 1.先具一个实际的例子
    笔记:计算机视觉与深度学习-北邮-鲁鹏-2020年录屏-第八讲_第1张图片
    注:实施上上图的“边缘”是高斯一阶偏导卷积核、“条状”是高斯二阶偏导卷积核。而神经网络的学习,就是学出很多这样带有不同特征的卷积核,而待检测图片与哪个学习后的卷积核最匹配,就强行认为图片是这一类。
  • 2.SS:我理解基于卷积核组的纹理表示方法。从上图可知,卷积核组是大量的卷积核,这些卷积核与原图卷积后,能够提取出一组对应的包含有边缘\条状\点状三种不同种类,和上图中给出的不同大小的特征的图片。根据一定的方法对上述特征图片进行排序(实际上是取均值后最大值),就一定能选举出最符合某种卷积核特征的模式。(既,基于卷积核组的纹理表示方法不是找到图片的纹理,而是对比图片与常见纹理的符合程度,强行认为最符合的常见纹理就是该图片具有的纹理。)
  • 3.所以,基于卷积核组的纹理表示方法步骤第一步是设计卷积核组:
    • 第一步:设计卷积核组
    • 第二步:利用卷积核组对图像进行卷积操作获得对应的特征响应图组
    • 第三步:利用特征响应图的某种统计信息来表示图像中的纹理

(三)在 基于卷积核组的纹理表示方法 和 卷积神经网络 之间要说明的一些问题

  • 1.为了更好的理解卷积神经网络,我们可以在理解上图和基于卷积核的纹理表示方法的基础上加深一点。

一个设计好的卷积核组(例如48个)和一张图片笔记:计算机视觉与深度学习-北邮-鲁鹏-2020年录屏-第八讲_第2张图片
经过卷积得到了48张特征相应图
笔记:计算机视觉与深度学习-北邮-鲁鹏-2020年录屏-第八讲_第3张图片
对第一张特征相应图,不妨按行展开为一个行向量,称之为r1;对其余特征图重复上述操作,得到行向量r1 —r48。(不妨设行向量有100项)将行向量按竖向排列,得到一个尺寸为48*100的矩阵。

笔记:计算机视觉与深度学习-北邮-鲁鹏-2020年录屏-第八讲_第4张图片

取矩阵的第一列来看,其意义就是原图片的第一个像素,与48个卷积核卷积后得到的48个特征值。选择第一列中的最大值,就是图片在第一个像素位置所具有的最强的特征(但是这个特征是提前设计好的,若设计者没想到某种特征的卷积核,也必然无法识别到相应的特征)。
[a11,a21,a31,…,a22,…,a48 ] T (不妨认为a22是最靓的仔,则说明像素1最符合特征22。)

现在转换思维,假设48个卷积核组是经过训练后得到的成熟的分类网络,我们就能在48*100的矩阵中,找到100个最靓的仔,其中最靓的仔最多的一行,我们就可以按一定的几率猜测原图符合这个卷积核,既是这个卷积核代表的那一类。

二、卷积神经网络

(一)全连接神经网络的瓶颈(运算量太大)

  • 1.对于全连接神经网络,如果一张输入图是CIFAR10的图像尺寸为32×32×3,隐层每个神经元权值的个数是多少个?答:32×32×3+1 = 3073个。 如果一张图大小200×200×3,隐层的每个神经元权值个数是多少?答:200×200×3+1 = 120001个。如果隐层有隐层有10个、20个甚至更多个神经元,那需要训练的权值个数将是不可接受的。
  • 2.但是如果我们用卷积核组,将一张图像卷积成48(不妨设为48)张特征图,每一张图取均值(不妨取均值,更高效和优秀的方法另学),就会得到48个均值,将均值组合在一起形成48维向量,以这个48维向量作为输入,隐层的神经元权值个数就只有49个,就非常好训练了。
    笔记:计算机视觉与深度学习-北邮-鲁鹏-2020年录屏-第八讲_第5张图片

(二)卷积神经网络(一个缝合怪)

  • 1.将卷积核组作为一层,和全连接神经网络拼接在一起,就形成了卷积神经网络。
  • 2.通常一个卷积神经网络有如下部分组成
  • 2.1前部是大量的卷积层、激活层、池化层,这些层将图像从(不妨设)200×200×3个像素大小,提取特征变为(不妨设)48维的向量,再由全连接层去识别。
  • 3.卷积操作的计算过程:
    笔记:计算机视觉与深度学习-北邮-鲁鹏-2020年录屏-第八讲_第6张图片
    • 3.1 注:看到“卷积核是5×5×3”时不要理解错误,这里所描述的是卷积核是一个5×5×3=75维的向量空间,该卷积核可以写为一个1×75的行向量,同理图片中与卷积核卷积的像素也要展开成1×75的行向量。之后进行点乘操作,变成一个数,在进行偏置。这是就得到原图中的某一个像素点,在现有卷积核下的特征值。
    • 3.2 用现有卷积核划过整张图片,得到一张特征图。用不同卷积核划过这张图片,得到带有深度的特征响应图组。(PS下图特征图为28*28因为没有边界填充)不妨设使用了6个卷积核得到了H =28,W=28,D=6的图。
    • 笔记:计算机视觉与深度学习-北邮-鲁鹏-2020年录屏-第八讲_第7张图片
    • 3.3 通常卷积层是叠加的,既上述卷积层输出的28×28×6的图会作为输入,输入下一个卷积层。那么,问题是下一个卷积层的卷积核尺寸如何设计?答:设计为H×W×6。既H高度和W宽度需要自行设计,但是D深度必定等于6,既深度由上一层的卷积层的卷积核个数决定。
  • 4.卷积步长:卷积神经网络中,卷积核可以按照指定的间隔进行卷积操作,这个间隔就是卷积步长。
  • 5.特征响应图组尺寸的计算
    笔记:计算机视觉与深度学习-北邮-鲁鹏-2020年录屏-第八讲_第8张图片

(三)卷积神经网络的新组成部分—池化操作

  • 1.池化的作用:对每一个特征响应图独立进行,降低特征响应图组中每个特征响应图的宽度和高度,减少后续卷积层的参数数量,降低计算资源耗费,进而控制过拟合。
  • 2.池化操作:对特征响应图某个区域进行池化就是在该区域上指定一个值来代表整个区域。
  • 3.常见的池化操作:最大池化—使用区域内的最大值来代表这个区域;平均池化—采用区域内所有值的平均值作为代表。
  • 4.池化层的超参数:池化窗口和池化步长。

(四)再回到卷积神经网络

  • 1.仔细思考思考从最后一个POOL层出来的是什么?既提交给FC的是什么?可以是什么?
  • 2.可以将特征图组以10个向量的形式提交给FC。也可以将每个向量求平均值,组合为一个10维的由平均值构成的向量,提交给FC。

三、损失函数&优化算法

  • 1.损失函数:用交叉熵损失
  • 2.优化算法:SGD、带动量的SGD以及ADAM

四、训练过程

  • 1.原先的批归一化、权值初始化策略都要用,但是这里不讲了

(一)样本增强(图像增强)

  • 1.存在问题:过拟合的原因是学习样本太少,导致无法训练出能够泛化到新数据集的模型。(之前讲过解决方法:L1\L2正则化、控制权重、dropout等)
  • 2.数据增强:是从现有的训练样本中生成更多的训练数据,其方法是利用多种能够生成可信图像的随即变换来增减样本。(比如镜像、随即缩放、裁剪、色彩抖动)

你可能感兴趣的:(学习笔记-CV,计算机视觉,机器学习)