我想看看我的keras模型的可训练权重值,目的是看看训练后是否存在大片的0或1。
我的keras使用的是tensorflow后端。这是在docker图像中运行的,并从jupyter笔记本运行。
这就是我所走的路。
print(model.summary())将生成所有可训练参数的列表。
_____________________________________________________________
Layer (type) Output Shape Param #
=================================================================
input_1 (InputLayer) (None, 512, 512, 3) 0
_________________________________________________________________
conv2d_1 (Conv2D) (None, 512, 512, 16) 448
_________________________________________________________________
activation_1 (Activation) (None, 512, 512, 16) 0
_________________________________________________________________
batch_normalization_1 (Batch (None, 512, 512, 16) 64
_________________________________________________________________
max_pooling2d_1 (MaxPooling2 (None, 256, 256, 16) 0
_________________________________________________________________
conv2d_2 (Conv2D) (None, 256, 256, 32) 4640
model.trainable_weights让我看到了底层的tensorflow变量。
[<tf.Variable 'conv2d_1/kernel:0' shape=(3, 3, 3, 16) dtype=float32_ref>,
<tf.Variable 'conv2d_1/bias:0' shape=(16,) dtype=float32_ref>,
<tf.Variable 'batch_normalization_1/gamma:0' shape=(16,) dtype=float32_ref>,
<tf.Variable 'batch_normalization_1/beta:0' shape=(16,) dtype=float32_ref>,
<tf.Variable 'conv2d_2/kernel:0' shape=(3, 3, 16, 32) dtype=float32_ref>,
<tf.Variable 'conv2d_2/bias:0' shape=(32,) dtype=float32_ref>,
我如何打印这些变量的值,以查看有多少变量获得了像0、1或无穷大这样的疯狂值?
https://stackoverflow.com/questions/56208810
复制相似问题