named_parameters(),parameters(),state_dict()
named_parameters() | parameters() | state_dict() | |
---|---|---|---|
返回值类型 | 返回的值(list 可迭代类型),每个元组包括两个值(layer-name, layer-param),分别是指网络层的名字和参数。即(先将 layer-name:layer_param 键值信息存成一个元组,然后再存到 list 中) | parameters()只有 layer-param 参数值 | 将 layer-name:layer-param 键值信息存储为 dict 字典形式 |
存储模型参数的类型 | 只保存可学习、可被更新的参数,model.buffer()中的参数不包含在 model.named_parameters()中 | 存储的是该 model 中包含的所有 layer 中的所有参数 | |
返回值的 require_grad 属性 | require_grad 属性都是 True | 存储的模型参数 tensor 的 require_grad 属性都是 False |
model.named_parameters()
1 | for name, value in model.named_parameters(): |
注: named_parameters() 的参数的 require_grad 的属性是 True,因为 tensor 被创建时,默认的 require_grad 是 True 。
输出
1 | name: model.model.23.one2one_cv3.2.1.1.bn.bias |
model.parameters()
1 | for value in model.parameters(): |
输出
1 | parameters: Parameter containing: |
model.state_dict()
1 | for key,value in model.state_dict().items(): |
输出
1 | key : model.model.23.one2one_cv3.2.1.1.bn.running_var |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 灵鹫宫·宫主!