gpt4 book ai didi

tensorflow - 如何在 Tensorflow 中获取 CNN 内核值

转载 作者:行者123 更新时间:2023-12-03 16:48:11 25 4
gpt4 key购买 nike

我正在使用下面的代码来创建 CNN 层。

conv1 = tf.layers.conv2d(inputs = input, filters = 20, kernel_size = [3,3],
padding = "same", activation = tf.nn.relu)

我想在训练后获得所有内核的值。它不起作用,我只是这样做
kernels = conv1.kernel

那么我应该如何检索这些内核的值呢?我也不确定 conv2d 有哪些变量和方法,因为 tensorflow 并没有在 conv2d 类中真正告诉它。

最佳答案

您可以在 tf.global_variables() 返回的列表中找到所有变量并轻松查找您需要的变量。

如果您希望按名称获取这些变量,请将图层声明为:

conv_layer_1 = tf.layers.conv2d(activation=tf.nn.relu, 
filters=10,
inputs=input_placeholder,
kernel_size=(3, 3),
name="conv1", # NOTE THE NAME
padding="same",
strides=(1, 1))

恢复图形为:
gr = tf.get_default_graph()

将内核值恢复为:
conv1_kernel_val = gr.get_tensor_by_name('conv1/kernel:0').eval()

将偏差值恢复为:
conv1_bias_val = gr.get_tensor_by_name('conv1/bias:0').eval()

关于tensorflow - 如何在 Tensorflow 中获取 CNN 内核值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43244446/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com