首页 > 其他分享 >学习笔记11:预训练模型

学习笔记11:预训练模型

时间:2024-06-04 09:34:18浏览次数:21  
标签:11 池化层 训练 vgg16 模型 笔记 分类器 model

转自:https://www.cnblogs.com/miraclepbc/p/14348536.html

什么是预训练网络

预训练模型就是之前用较大的数据集训练出来的模型,这个模型通过微调,在另外类似的数据集上训练。
一般预训练模型规模比较大,训练起来占用大量的内存资源。

微调预训练网络

我们采用vgg16作为预训练模型,来实现上一篇中四种天气的识别。
我们可以先来看一下vgg16的网络架构:
首先是一系列的卷积层和池化层

然后是一个全局池化层,全局池化层可以取代view
全局池化层之后,是分类器,而我们要改的就是这个分类器
分类器需要改的地方就只有最后的输出维度

模型加载及修改代码

model = models.vgg16(pretrained = True) # 加载模型,pretrained参数设置为True

for p in model.features.parameters():
    p.requries_grad = False             # 卷积层不变

model.classifier[-1].out_features = 4   # 分类器最后一个全连接层的输出维度改为4

注意训练的时候尽量使用gpu,不然的话内存可能会不够

标签:11,池化层,训练,vgg16,模型,笔记,分类器,model
From: https://www.cnblogs.com/gongzb/p/18230151

相关文章

  • 学习笔记12:图像数据增强及学习速率衰减
    转自:https://www.cnblogs.com/miraclepbc/p/14360231.html数据增强常用数据增强方法:transforms.RandomCrop#随机位置裁剪transforms.CenterCrop#中心位置裁剪transforms.RandomHorizontalFlip(p=1)#随机水平翻转transforms.RandomVerticalFlip(p=1)#随机上下......
  • 学习笔记13:微调模型
    转自:https://www.cnblogs.com/miraclepbc/p/14360807.htmlresnet预训练模型resnet模型与之前笔记中的vgg模型不同,需要我们直接覆盖掉最后的全连接层先看一下resnet模型的结构:我们需要先将所有的参数都设置成requires_grad=False然后再重新定义fc层,并覆盖掉原来的。重新定义的......
  • 笔记7:训练过程封装(代码模板)
    转自:https://www.cnblogs.com/miraclepbc/p/14335456.html相关包importtorchimportpandasaspdimportnumpyasnpimportmatplotlib.pyplotaspltfromtorchimportnnimporttorch.nn.functionalasFfromtorch.utils.dataimportTensorDatasetfromtorch.utils.......
  • 学习笔记8:全连接网络实现MNIST分类(torch内置数据集)
    转自:https://www.cnblogs.com/miraclepbc/p/14344935.html相关包导入importtorchimportpandasaspdimportnumpyasnpimportmatplotlib.pyplotaspltfromtorchimportnnimporttorch.nn.functionalasFfromtorch.utils.dataimportTensorDatasetfromtorch.ut......
  • 学习笔记9:卷积神经网络实现MNIST分类(GPU加速)
    转自:https://www.cnblogs.com/miraclepbc/p/14345342.html相关包导入importtorchimportpandasaspdimportnumpyasnpimportmatplotlib.pyplotaspltfromtorchimportnnimporttorch.nn.functionalasFfromtorch.utils.dataimportTensorDatasetfromtorch.ut......
  • 探索Semantic Plugins:开启大模型的技能之门
    前言在之前的章节中我们或多或少的已经接触到了SemanticKernel的Plugins,本章我们讲详细介绍如何使用插件。SemanticKernel的一大特点是拥有强大的插件,通过结合自定义/预定义的插件解决智能业务的问题。让传统的代码和智能插件一起工作灵活地接入到应用场景简化传统应用向......
  • 笔记2:张量简介
    张量生成方法转自:https://www.cnblogs.com/miraclepbc/p/14329476.html张量的形状及类型张量的计算张量的梯度手写线性回归张量生成方法张量的形状及类型张量的计算张量的梯度手写线性回归......
  • 笔记3:逻辑回归(分批次训练)
    转自:https://www.cnblogs.com/miraclepbc/p/14332084.html相关库导入importtorchimportpandasaspdimportnumpyasnpimportmatplotlib.pyplotaspltfromtorchimportnn%matplotlibinline数据读入及预处理data=pd.read_csv('E:/datasets/dataset/credit-a.cs......
  • 笔记5:TensorDataset、DataLoader及数据集划分
    TensorDataset转自:https://www.cnblogs.com/miraclepbc/p/14333299.html导入相关包fromtorch.utils.dataimportTensorDataset特征与标签合并HRdataset=TensorDataset(X,Y)模型训练forepochinrange(epochs):foriinrange(num_batch):x,y=HRda......
  • 大模型应用框架-LangChain
    LangChain的介绍和入门......