nn.init.xavier_uniform_()用法详解
Posted sqsq
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nn.init.xavier_uniform_()用法详解相关的知识,希望对你有一定的参考价值。
基本思想是通过网络层时,输入和输出的方差相同,包括前向传播和后向传播。
为啥需要进行xavier初始化:
sigmoid激活函数:
参考博客:
https://blog.csdn.net/dss_dssssd/article/details/83959474
原理:
使用均匀分布 用值填充输入张量
结果张量将具有从 U ( − a , a )采样的值,其中
也称为Glorot初始化
举例:
import torch import torch.nn as nn x = torch.Tensor([[1,2,3],[2,3,4]]) print(x) nn.init.xavier_uniform_(x) print(x)
结果:
tensor([[1., 2., 3.], [2., 3., 4.]]) tensor([[-0.6535, 1.0600, 0.4142], [ 0.3315, 0.3944, 0.9536]])
以上是关于nn.init.xavier_uniform_()用法详解的主要内容,如果未能解决你的问题,请参考以下文章