我想使用以下代码在Keras中使用Glorot均匀分布来初始化一个4*11的矩阵:
import keras
keras.initializers.glorot_uniform((4,11))
我得到了这个输出:
<keras.initializers.VarianceScaling at 0x7f9666fc48d0>
如何可视化输出结果?我尝试了c[1]并得到了输出'VarianceScaling' object does not support indexing
。
我想使用以下代码在Keras中使用Glorot均匀分布来初始化一个4*11的矩阵:
import keras
keras.initializers.glorot_uniform((4,11))
<keras.initializers.VarianceScaling at 0x7f9666fc48d0>
如何可视化输出结果?我尝试了c[1]并得到了输出'VarianceScaling' object does not support indexing
。
glorot_uniform()
函数创建一个函数,稍后将使用一个形状调用该函数。因此您需要:# from keras.initializers import * #(tf 1.x)
from tensorflow.keras.initializers import *
unif = glorot_uniform() #this returns a 'function(shape)'
mat_as_tensor = unif((4,11)) #this returns a tensor - use this in keras models if needed
mat_as_numpy = K.eval(mat) #this returns a numpy array (don't use in models)
print(mat_as_numpy)
K.eval()
是一个 numpy 数组。但是如果你在 keras 模型中使用它,最好将其保留为张量。 - Daniel Möller