1.VGG网络
在图像分 类这个领域中,深度卷积网络一般由卷积模块和全连接模块组成。
(1)卷积模块包含卷积层、池化层、Dropout 层、激活函数等。普遍认为,卷积模块是对 图像特征的提取,并不是对图像进行分类。
(2)全连接模块跟在卷积模块之后, 一般有2~3个全连接层。全连接层用于分类。卷积核是用来 提取图片特征的,不同的卷积核是用来发掘图片中不同的特征的
2.GoogleNet
残差连接是为了解决什么问题?梯度消失的问题。梯度消失问题是怎么产生的呢?是因为网络太深。
(1)如何减少计算量?在卷积之前,使用1×1的卷积层降低通道数。
(2)如何减少计算量?使用3×3的卷积层代替5×5或者7×7的,然后在网络中部可
以使用1×3和3×1的网络。
(3)使用卷积层和池化层并行来兼顾特征和计算量。
(4)使用辅助分类器,增强模型的泛化能力,以及缓解梯度消失的问题。 (5)学会如何计算图像经过卷积层前后的尺寸变化过程。
(6)使用残差连接来缓解梯度消失问题,并且减少运算量。
3. Resnet
Resnet 是一个深度卷积网络,用于处理视觉图像问题。
如果pretrained=True, 那么这个模型就会导入一个存储参数的文件,这意味着模型是一个已经训练过的模型,这种称为预训练。采用已经训练好的模型可以节省大量的时 间,加快模型的收敛速度。例如, 一个博士生学习一门新的课程会比婴儿学得快,因为博士 已经有了很多其他的相关知识,这就是预训练的概念。
CNN计算量如何计算
图的5×5卷积看成是Padding=1 的3×3的 图片,Padding=1 就是3×3的图片上下左右各填充一行(列),变成5×5大小的,Padding 是为了保证输入输出的图片尺寸相同。
特征图尺寸是H (高)和W(宽),卷积核是正方形的,尺寸(边 长)为K,M 是输入特征图的通道数,N 是输出特征图的通道数,H×W×KXK×M×N这个就是卷积的计算量的公式。倒残差颠倒的是Residual 中使用1×1卷积来缩小通道数的操作。
深度网络在某种意义上来说,越深效果越好,越宽效果越好,但是同时计算 量会大幅度提高。如何在计算量提高的前提下,尽可能地提高模型效果呢?模型变深变宽 是否有什么规律可寻呢?这就是扩展网络所追求的。
扩展网络, 一般是调整输入图像的大小、网络的深度和宽度。网络的宽度就是特征图的通道数量。在EfficientNet 之前,大部分的研究工作都是调整3个维度中的某一个。如果 在3个维度上同时进行调整需要极大的算力支持。EfficientNet的目的就是希望找到一个标准化的卷积网络扩展方法,通过规律扩展网络,尽可能提高网络性能。换句话说就是,如何平衡图像分辨率、模型深度、模型宽度3个变量,实现网络在效率和准确率上的提升。
4.风格迁移
风格迁移是把一张图片的风格转移到另外一张图片上的操作。下面通过学习CNN 来理解这怎么实现的。
一切都是基于这样的一个思想:CNN 层,也就是卷积层,在一个深度网络中是有很多卷积层的,每一个卷积层都是对图像进行一次特征的提取,越提取图像,图像就会变得越抽象、越接近本质。因此越接近输入层的图像,包含更多纹理的信息,而越靠近输出层的图像, 会包含更多内容方面的信息。
在数据处理的过程中,有一个称为数据处理不等式的概念,就是随着网络层数的加深, 图像经过的处理变多,每次处理的信息会变少。开始的一张原始图片,里面包含了所有的信 息。不管对一张图片如何操作,每次操作之后的图片所包含的信息一定是小于或等于原图 片包含的信息的。根据这个不等式,越深网络的图像信息是不会大于前面层的网络信息的,因此前面层的 图像会包含更多的细节。
根据前面讲解的反向传播,有一个有很多参数的模型和一个目标。模型给出一个预测值,用预测值和目标计算出损失函数,然后用损失函数更新模型的所有参数,使模型的预测值更加接近目标。在风格迁移中也要确定一个损失函数和模型。
特征图:原图经过一个卷积层之 后,会产生一个新的图像,这个新的图像就是特征图。
4.1内 容 损 失 函 数
这个函数用于展示新画作与风车之间内容的 差异,越深层的卷积网络的图像,越能表现内容的信息。
4.2风 格 损 失 函 数
有了风格损失函数Lsyle和内容损失函数Lcontent之后,整个任务的损失函数就是这两 个的加权:L total(p,a,x)=αL content(p,x)+βLstyle(a,x)