我正在使用一个名为make_unet
的卷积神经网络(CNN),它来自这里。这个CNN可以运行,代码也能够正常工作。但我知道在深度学习中,你需要对神经网络进行权重初始化以优化其性能。
Keras的文档明确指出使用kernel_initializer
来进行权重初始化。然而,我在使用的make_unet
函数中没有看到任何kernel_initializer
的设置。
如果有谁能提供一些见解,我将不胜感激。
回答:
在Keras中,初始化器是通过kernel_initializer
和bias_initializer
参数按层传递的,例如:
Dense(64, kernel_initializer='random_uniform', bias_initializer='zeros')
所有内置层都配备了合理的默认初始化器。例如,所有卷积层使用kernel_initializer='glorot_uniform'
,bias_initializer='zeros'
。Keras为您提供了许多其他选择。您也可以创建自定义的初始化器。