深度学习基础知识④

发布时间:2024-01-17 14:30

深度残差网络

深度卷积网络一开始面临的最主要的问题是梯度消失和梯度爆炸。那什么是梯度消失和梯度爆炸呢?所谓梯度消失,就是在深层神经网络的训练过程中,计算得到的梯度越来越小,使得权值得不到更新的情形,这样算法也就失效了。而梯度爆炸则是相反的情况,是指在神经网络训练过程中梯度变得越来越大,权值得到疯狂更新的情形,这样算法得不到收敛,模型也就失效了。
\"深度学习基础知识④_第1张图片\"
由上图我们可以看到 56 层的普通卷积网络不管是在训练集还是测试集上的训练误差都要高于 20 层的卷积网络。是个典型的退化现象。
这退化问题不解决,咱们的深度学习就无法 go deeper. 于是何凯明等一干大佬就发明了——残差网络 ResNet.
\"深度学习基础知识④_第2张图片\"

迁移学习的基本原理

迁移学习就是利用数据、任务或模型之间的相似性,将在旧的领域学习过或训练好的模型,应用于新的领域这样的一个过程。从这段定义里面,我们可以发现迁移学习的关键点所在,即新的任务与旧的任务在数据、任务和模型之间的相似性。因而这也引出了迁移的应用场景。
迁移学习的使用场景如下:假设有两个任务系统 A 和 B,任务 A 拥有海量的数据资源且已训练好,但并不是我们的目标任务,任务 B 是我们的目标任务,但数据量少且极为珍贵,这种场景便是典型的迁移学习的应用场景。(利用A完成任务B)

深度卷积网络的可迁移性

卷积神经网络具备良好的层次结构,通常而言,普通的卷积神经网络都具备卷积-池化-卷积-池化-全连接这样的层次结构,在深度可观时,卷积神经网络可以提取图像各个 level 的特征。当我们要从图像中识别一张人脸的时候,通常在一开始我们会检测到图像的横的、竖的等边缘特征,然后会检测到脸部的一些曲线特征,再进一步会检测到脸部的鼻子、眼睛和嘴巴等具备明显识别要素的特征等等。
\"深度学习基础知识④_第3张图片\"
这便揭示了深度卷积网络可迁移性的基本原理和卷积网络训练过程的基本事实。具备良好层次的深度卷积网络通常都是在最初的前几层学习到图像的通用特征(general feature),但随着网络层次的加深,卷积网络便逐渐开始检测到图像的特定的特征,两个任务系统的输入越相近,深度卷积网络检测到的通用特征越多,迁移学习的效果越好。

迁移学习的使用方法

通常而言,迁移学习有两种使用套路。
第一种便是常说的 finetune,即微调,简单而言就是将别人训练好的网络拿来进行简单修改用于自己的学习任务。在实际操作中,通常用预训练的网络权值对自己网络的权值进行初始化,以代替原先的随机初始化。
第二种称为 fixed feature extractor,即将预训练的网络作为新任务的特征提取器,在实际操作中通常将网络的前几层进行冻结只训练最后的全连接层,这时候预训练网络便是一个特征提取器
keras 为我们提供了经典网络在 ImageNet 上为我们训练好的预训练模型,预训练模型的基本信息如下表所示:
\"深度学习基础知识④_第4张图片\"

ItVuer - 免责声明 - 关于我们 - 联系我们

本网站信息来源于互联网,如有侵权请联系:561261067@qq.com

桂ICP备16001015号