小编bda*_*on1的帖子

设置tensorflow conv2d操作的权重和偏差张量

我已经在火炬中获得了训练有素的神经网络,我需要在tensorflow中完全重建它.我相信我已经在tensorflow中正确定义了网络的架构,但是我在转移权重和偏置张量方面遇到了麻烦.使用第三方软件包,我将所有权重和偏差张量从火炬网络转换为numpy阵列,然后将它们写入磁盘.我可以将它们加载回我的python程序,但我无法找到一种方法将它们分配给我的tensorflow网络中的相应层.

例如,我在tensorflow中定义了一个卷积层

kernel_1 = tf.Variable(tf.truncated_normal([11,11,3,64], stddev=0.1))
conv_kernel_1 = tf.nn.conv2d(input, kernel_1, [1,4,4,1], padding='SAME')
biases_1 = tf.Variable(tf.zeros[64])
bias_layer_1 = tf.nn_add(conv_kernel_1, biases_1)
Run Code Online (Sandbox Code Playgroud)

根据tensorflow文档,tf.nn.conv2d操作使用kernel_1变量中定义的形状来构造权重张量.但是,我无法弄清楚如何访问该权重张量将其设置为我从文件加载的权重数组.

是否可以明确设置权重张量?如果是这样,怎么样?

(同样的问题适用于偏见张量.)

python numpy tensorflow

11
推荐指数
1
解决办法
1万
查看次数

标签 统计

numpy ×1

python ×1

tensorflow ×1