欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

pytorch中对模型结构进行的常用操作,如冻结参数添加改变层等

程序员文章站 2022-03-10 19:55:26
torch 笔记一、模型操作添加层b = torchvision.models.alexnet().featuresd = torchvision.models.alexnet().avgpoolfor i in d.named_modules(): b.add_module('12',i[1])#12为位置索引改变层结构b[1] = Linear(2048, 10)冻结卷积层参数for i in range(10):#具体层数要看模型结构 if isintance(b[i...

torch 笔记

一、模型操作

添加层
b = torchvision.models.alexnet().features
d = torchvision.models.alexnet().avgpool
for i in d.named_modules():
    b.add_module('12',i[1])#12为位置索引
改变层结构
b[1] = Linear(2048, 10)
冻结卷积层参数
for i in range(10):#具体层数要看模型结构
  if isintance(b[i], Conv2d):
    b[i].weight.requires_grad = False
    b[i].bias.requires_grad = False
    #b[i].weight.requires_grad_(False)
summary 计算网络参数个数
from torchsummary import summary
print(summary(conv, (16, 64, 64), batch_size=1))
#网络,输入,batch

本文地址:https://blog.csdn.net/FLY__1997/article/details/107658240