自由式学习
52人加入学习
(0人评价)
3、深度学习-注意力机制、迁移学习、半监督学习
价格 免费

requires_grad设置为False

1. 辨别named_parameters和parameters

net = nn.Linear(2, 3)
print("以下是named_parameters")
for i, j in net.named_parameters():
    print(i, j)
print("——————————我是一条分割线——————————")
print("以下是parameters")
for q in net.parameters():
    print(q)

输出结果:

以下是named_parameters
weight Parameter containing:
tensor([[-0.6697,  0.2564],
        [-0.1950, -0.2708],
        [-0.5232, -0.0067]], requires_grad=True)
bias Parameter containing:
tensor([-0.5722,  0.1416,  0.4618], requires_grad=True)
——————————我是一条分割线——————————
以下是parameters
Parameter containing:
tensor([[-0.6697,  0.2564],
        [-0.1950, -0.2708],
        [-0.5232, -0.0067]], requires_grad=True)
Parameter containing:
tensor([-0.5722,  0.1416,  0.4618], requires_grad=True)

 

2. 如何固定参数

for p in net.parameters():
    p.requires_grad = False

for k, v in net.named_parameters():
    if v.requires_grad:
        print(k, v)

无输出

[展开全文]