Keras中默认的权重初始值设定项是什么?

sek*_*2uk 6 python machine-learning neural-network keras

我刚刚在这里阅读了有关Keras重量初始化器的信息。在文档中,仅引入了不同的初始化程序。如:

model.add(Dense(64, kernel_initializer='random_normal'))
Run Code Online (Sandbox Code Playgroud)

我想知道不指定参数时的默认权重是多少kernel_initializer。有办法访问吗?

tod*_*day 8

每一层都有自己的默认值以初始化权重。对于大多数层,例如Dense,卷积和RNN层,默认内核初始化程序为'glorot_uniform',默认偏置初始化器为'zeros'(您可以通过转到文档中每一层的相关部分来查找;例如,这里是Dense层doc)。你可以找到的定义glorot_uniform初始化程序这里的Keras文档。

至于访问每层的权重,已经在这里回答

  • 我认为这篇文章非常有趣,它粗略地表明,对于“tanh”激活,您应该使用“glorot_uniform”,对于“relu”层,您应该使用“he_uniform”:https://towardsdatascience。 com/weight-initialization-in-neural-networks-a-journey-from-the-basics-to-kaiming-954fb9b47c79 (11认同)