当前位置: 首页 > news >正文

pytorch学习笔记-加载现有的网络模型(VGG16)、增加/修改其中的网络层(修改为10分类)

写在前面:有些地方和视频里不一样的是因为官方文档更新了,一些参数用法不一样也很正常,包括我现在的也是我这个时间节点最新的,谁知道过段时间会不会更新呢= =建议大家不要一味看视频/博客,多看看官方文档才是正道(

加载现有的网络模型

加载有两种方式加载,一种是直接加载固有的网络结构,这种比较简单,还有一种是将原有的网络训练好的参数也下载下来,这种加载的时候如果原来没有的话会自动下载,如下:
在这里插入图片描述
对应的用法如下:

#只加载网络结构
vgg16_false = torchvision.models.vgg16(weights=None)
print(vgg16_false)#加载网络结构and参数
vgg16_true = torchvision.models.vgg16(weights='DEFAULT')
print(vgg16_true)

VGG16原有结构(图太长了,开头没截全,重点关注最后的就ok)
在这里插入图片描述

在最后加入新层(以修改为10分类为例)

#在最后加入新层
vgg16_true.add_module('my_add_linear1',nn.Linear(1000,10))
print(vgg16_true)

在这里插入图片描述

在原有区域块中加入新层

#在原有区域块中加入新层
vgg16_true.classifier.add_module('my_add_linear2',nn.Linear(1000,10))
print(vgg16_true)

在这里插入图片描述

对原有层进行修改

#对原有层进行修改
vgg16_false.classifier[6] = nn.Linear(4096, 10)
print(vgg16_false)

在这里插入图片描述

http://www.dtcms.com/a/330621.html

相关文章:

  • AI测试自动化:智能软件质量守护者
  • 观察者模式(C++)
  • CV 医学影像分类、分割、目标检测,之【3D肝脏分割】项目拆解
  • Flutter 顶部导航标签组件Tab + TabBar + TabController
  • 汽车生产线白皮书:稳联技术Profinet转Ethernet IP网关通信高效性
  • 中介者模式和观察者模式的区别是什么
  • 三同步舆情处置原则对政务管理有什么影响作用
  • 从实验室到落地:飞算JavaAI水位监测系统的工程化实践
  • 4.2 Vue3中reactive与ref详解及区别
  • 【企业架构】TOGAF概念之四(终结)
  • Day20 Linux 文件 I/O、目录操作及文件链接与 EDID
  • 小杰python(six day)——网络编程
  • 前端Vite介绍(现代化前端构建工具,由尤雨溪开发,旨在显著提升开发体验和构建效率)ES模块(ESM)、与传统Webpack对比、Rollup打包
  • 20250814 最小生成树总结
  • Vue 3 + TypeScript:package.json 示例 / 详细注释说明
  • Linux 上手 UDP Socket 程序编写(含完整具体demo)
  • 如何通过WiFi将文件从安卓设备传输到电脑
  • 计算机视觉(opencv)实战二——图像边界扩展cv2.copyMakeBorder()
  • 机器学习 - Kaggle项目实践(3)Digit Recognizer 手写数字识别
  • 分布式事务、锁、链路追踪
  • 读取数据excel
  • 高效TypeScript开发:VSCode终极配置指南
  • 待办事项小程序开发
  • (第十六期)HTML布局标签详解:div与span的深度解析
  • 【读代码】深度解析 context-engineering-intro:开源上下文工程实践原理与应用
  • 群晖 NAS 影音访问:通过 cpolar 内网穿透服务实现 Nastool 远程管理
  • java集合 之 多列集合
  • Python/Node.js 调用taobao API:构建实时商品详情数据采集服务
  • 使用HalconDotNet实现异步多相机采集与实时处理
  • Mybatis学习笔记(六)