nn.Parameter 详解 (将 nn.Parameter 用于 nn.init.kaiming_normal 初始化)

Parameters 是 Variable 的子类。Paramenters和Modules一起使用的时候会有一些特殊的属性,即:当Paramenters赋值给Module的属性的时候,它会自动的被加到 Module的 参数列表中(即:会出现在 parameters() 迭代器中)。
简单来说就是将一个不可训练的 tensor 转换成可以训练的类型 parameter 并将这个 parameter 绑定到这个module 里面,在BP过程中就可以实现对其优化。例如将parameter 作为模型初始化。

att_weights = nn.Parameter(torch.Tensor(1, 256),requires_grad=True)
nn.init.kaiming_normal(att_weights, mode=‘fan_out’)

参数说明:
data (Tensor) – parameter tensor.
requires_grad (bool, optional) – 默认为True,在BP的过程中会对其求微分。

你可能感兴趣的:(pytorch)