海淀做网站设计的公司,wordpress访问密码,怎么做网站详情页,网上怎么开自己的网店呀在现代深度学习领域#xff0c;精细调整#xff08;Fine-tune#xff09;已经成为一种非常重要的技术手段。 预训练模型
在介绍finetune之前#xff0c;先了解一下什么是预训练模型。在搭建一个网络模型来完成一个特定的图像分类的任务时#xff0c;首先#xff0c;需要… 在现代深度学习领域精细调整Fine-tune已经成为一种非常重要的技术手段。 预训练模型
在介绍finetune之前先了解一下什么是预训练模型。在搭建一个网络模型来完成一个特定的图像分类的任务时首先需要随机初始化参数然后开始训练网络不断调整直到网络的损失越来越小。在训练的过程中一开始初始化的参数会不断变化。当结果很满意的时候就可以将训练模型的参数保存下来以便训练好的模型可以在下次执行类似任务时获得较好的结果。这个过程就是pre-training。
之后接收到一个类似的图像分类任务。这时候就可以直接使用之前保存下来的模型的参数作为这一任务的初始化参数然后在训练的过程中依据结果不断进行一些修改。这时候使用的就是一个pre-training/trained 模型而过程就是fine-tuning。
所以预训练就是指预先训练的一个模型或者指预先训练模型的过程微调就是指将预训练模型作用于自己的数据集并使参数适应自己数据集的过程。
微调的概念 为什么使用微调首先要了解卷积网络的核心是
1. 浅层卷积提取基础特征比如边缘轮廓等 2. 深层卷积提取抽象特征比如整个脸型 3. 全连接层根据特征组合进行评分分类。 而预训练模型的特点是使用大型数据集进行训练具备提取浅层基础特征和深层抽象特征的能力。使用微调不仅可以有效避免从头开始训练浪费时间和资源的问题而且可以一定程度上解决模型泛化能力低的问题。
使用微调的场合 什么情况下使用微调呢
首先使用的数据集与预训练模型的数据集相似如果不太相似比如使用的预训练模型是自然场景下的图片训练的而目标任务是人脸识别效果可能就没有那么好了。因为人脸的特征和自然景物的特征提取是不同的所以相应的参数训练后也是不同的。
其次当使用自己搭建的CNN模型准确率太低的时候也可以考虑使用微调。
在实践中更常用的是对于拥有较小的数据集只需对那些经过大型数据集训练过的预训练模型结构进行微调就可以达到快速训练模型的效果。