在 TensorFlow 网站的tf.layers.Dense
文档中,它列出了kernel_initializer
和kernel
作为其属性。据我了解,kernel_initializer
是一个可以传递权重矩阵的论点。但是,kernel
也是一个权重矩阵。
这两者之间有什么区别,为什么在初始化权重时要选择一个而不是另一个?
简而言之,您可以使用kernel_initializer
进行零、一、random_normal等快捷方式初始化(您可以在此处查看完整列表)。
kernel
将接受设定的权重用作内核。而kernel_initializer
将接受框架调用的函数来初始化权重。这些函数看起来相似的原因是,当您将矩阵传递给kernel_initializer时,它会转换为constant
启动器,其工作与将相同矩阵传递给kernel
参数完全相同。