首页 > 其他分享 >21、现有网络模型的使用以及修改

21、现有网络模型的使用以及修改

时间:2023-02-24 18:57:50浏览次数:37  
标签:21 vgg16 模型 网络 修改 add true torchvision

1、网络模型在pytorch里面的torchvision里面torchvision.models,是关于图像类的网络模型

2、简单以一个分类模型为例子:   VGG(最常用的是VGG16和VGG19)

 

 pretrained:

   如果是true的话,说明在ImageNet数据集上,模型的参数是都训练好的; 如果是False的话,说明模型的参数是初始化的,没有训练好。

vgg16_false=torchvision.models.vgg16(pretrained=False)      #当pretrained为 False的时候只是加载网络模型。是不需要对网络模型的参数进行下载的
vgg16_true=torchvision.models.vgg16(pretrained=True)   #pretrained=True时,需要下载网络模型,下载模型里的参数

print(vgg16_true)

 

 

progress:

  如果是True,显示下载进度条; False则不显示

3、ImageNet数据集:

 

 

 

 4、修改现有模型

train_data=torchvision.datasets.CIFAR10('../../dataset/CIFAR10',train=False,
                                        transform=torchvision.transforms.ToTensor(),download=True)
'''如何利用现有的网络模型,去改动它的结构;比如说想让VGG是10分类任务,也就是让输出特征是10;可以有两种'''
#1、再添加一个线性层
vgg16_true.add_module('add_linear',nn.Linear(in_features=1000,out_features=10))
#add_module()里面两个参数,一个是字符串型,给要加的模块起个名字,第二个是要加的模块,可以直接是一层网络,也可以是一个序列
print(vgg16_true)

输出:

 

 

# 2、如果想在序列里面添加可以这样网络模型.想要加的位置.add_moudle()
vgg16_true.classifier.add_module('add_linear',nn.Linear(in_features=1000,out_features=10))
print(vgg16_true)
# 3、不想添加的话,可以进行修改
#对模型中的classifier中的第6层进行修改
vgg16_false.classifier[6]=nn.Linear(4096,10)

 

标签:21,vgg16,模型,网络,修改,add,true,torchvision
From: https://www.cnblogs.com/ar-boke/p/17152774.html

相关文章

  • 结构方程模型全流程
    案例与数据某研究者想要研究关于教师懈怠感的课题,教师懈怠感是指教师在教育情境的要求下,由于无法有效应对工作压力与挫折而产生的情绪低落、态度消极状态,这种状态甚至会......
  • 2021楚慧杯 逆向 displacement
    下载附件,得到文件,以txt格式打开:   判断为python字节码,手动反编译还原源码:#a=input('plzinputyourflag:')a=''b=[0]*len(a)c=[68,5,164,100,......
  • LightDB高可用环境修改端口流程
    1.在primary节点中执行以下命令确认当前状态是否正常:ltcluster-f$LTHOME/etc/ltcluster/ltcluster.confservicestatus 停止主备切换:ltcluster-f$LTHOME/etc/lt......
  • 表达力3看1模型
    多读推荐《学习强国》新闻稿听主播朗读逐段跟读(模仿主持人的语气、语调、语速)多看杨澜访谈录(全球800多位高智商,高情商的精英人物)国际大专辩论会(推荐其中一......
  • 【后端过程记录】用flask搭建服务器作后端接收数据 将base64字符串码解码为可读取文件
    因为项目的原因了解到有一个python的flask框架,查了一下:关于前端图片上传的canvas:如下元素<canvasid="canvas"width="5"height="5"></canvas>可以用这样的方式获......
  • 《分布式技术原理与算法解析》学习笔记Day21
    分布式数据存储三要素什么是分布式数据存储系统?分布式存储系统的核心逻辑,就是将用户需要存储的数据根据某种规则存储到不同的机器上,当用户想要获取指定数据时,再按照规则......
  • LeetCode 216.组合总和III
    LeetCode216.组合总和III分析1.0回溯问题组合总和sum==n时以及path中元素个数==k时,res.add(newpath),返回后递归删除掉当前值classSolution{publicL......
  • LeetCode ● 216.组合总和III ● 17.电话号码的字母组合
    LeetCode216.组合总和III分析1.0回溯问题组合总和sum==n时以及path中元素个数==k时,res.add(newpath)返回后递归删除掉当前值classSolution{publicLi......
  • thirty-two(模型点击展示)react-three-fiber
    模型点击蒙版展示点击展示目的(用户需要看见模型中更加多的内容信息)使用技术ThreeJs、React-three-fiber、React-three-drei、React、css整体思路:  1、在展示模型中......
  • P3213 [HNOI2011]勾股定理 题解
    据说是NP问题。很明显我们要先预处理出来勾股数对。但由于数过于大,所以常规的枚举是解决不了问题的。但也貌似没有什么很好的办法可以立马找到一个数的勾股数对。所以......