本文主要是介绍Kaiming weight initialization中 fan_in / fan_out的理解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
从内置函数 _calculate_fan_in_and_fan_out来看fan_in 和 fan_out 的定义
如果输入数据 tensor 的维度等于2,
如果输入数据 tensor 的维度 大于2
recpetive_field_size 就是第三维度 * 第四维度...
例如, conv1=nn.Conv2d(16, 64, 3, 3, stride=1)
tensor_dim=4, tensor.shape=( 64, 16, 3, 3)
receptive_field= 3 * 3 = 9
fan_in = 16 * 9
fan_out = 64 * 9
更为精确的表达
在涉及到空洞卷积(dilated convolution)时候 receptivefield 要比普通卷积大,receptivefield与kernel的大小不同,fan_in/fan_out 结果也不同。
deep learning - How to calculate fan-in and fan-out in Xavier initialization for neural networks? - Stack Overflow
这篇关于Kaiming weight initialization中 fan_in / fan_out的理解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!