Keras:层初始化器的上限和下限是多少?

时间:2019-05-01 16:33:16

标签: python tensorflow keras

我在keras中建立了一个具有几个不同层(嵌入,转换)的模型。然后,我拟合模型并将权重保存到文件中。我现在想做的是,为同一模型生成新的权重。我在下面用了一个简单的代码片段来完成它:

from keras import backend as K
def my_init(shape, dtype=None):
    return K.random_normal(shape, dtype=dtype)
new_weights=[]
for layer in model.get_weights():
    new_weights.append(my_init(layer.shape, layer.dtype).numpy())

但是问题在于边界。该模型具有不同的层和不同的初始化程序。当我从文件中重新加载经过训练的权重,然后使用上面的自定义初始化程序迭代图层以生成新的权重时,将不考虑边界。所有权重均使用相同的边界生成。顺便说一句,我不知道初始化程序的范围。如果有人知道它是什么并与我分享,我将不胜感激。

问题:如何考虑每层的初始值设定项,如何为模型重新生成新的权重?

0 个答案:

没有答案