pytorch实现打印模型的参数值
对于简单的⽹络
例如全连接层Linear
可以使⽤以下⽅法打印linear层:
fc = nn.Linear(3, 5)
params = list(fc.named_parameters())
print(params.__len__())
print(params[0])
print(params[1])
输出如下:
由于Linear默认是偏置bias的,所有参数列表的长度是2。第⼀个存的是全连接矩阵,第⼆个存的是偏置。对于稍微复杂的⽹络
例如MLP
mlp = nn.Sequential(
nn.Dropout(p=0.3),
快速排序python实现nn.Linear(1024, 256),
nn.Linear(256, 64),
nn.Linear(64, 16),
nn.Linear(16, 1)
)
params = list(mlp.named_parameters())
print(params.__len__())
print(params[0])
print(params[1])
print(params[2])
print(params[3])
输出:
可以发现,堆叠起来的⽹络,参数是依次放置的。先是全连接的权重,然后偏置。然后是下⼀层⽹络的权重+偏置。依次进⾏下去。
这⾥有4层fc,4*2=8.所以⼀共有8个参数矩阵。
以上这篇pytorch 实现打印模型的参数值就是⼩编分享给⼤家的全部内容了,希望能给⼤家⼀个参考,也希望⼤家多多⽀持。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论