繁体   English   中英

如何在运行时获取张量流以评估形状?

[英]How to get tensorflow to evaluate shape at runtime?

我想在运行时评估张量的形状。 我正在计算两个集合之间的交集。 相交的数量是张量x的尺寸。 在定义图形时,张量的形状设置为[Dimension(None)] 因此,通常的x.get_shape()方法将仅返回None 有没有一种方法可以在运行时评估形状None 我可以做sess.run(x)并得到numpy数组的形状,但是我希望这是一个编译后的操作,以便仅返回形状。 谢谢!

这个问题已经存在一年了,所以我相信您可能已经找到了想要的答案。 但是以防万一其他人会寻找它,我会在这里发布。

答案非常简单-使用tf.shape方法( 请参阅文档 )在会话运行时评估输入张量形状。

例:

import numpy as np
import tensorflow as tf


input_data = np.zeros((4, 1, 2, 3), np.float32)

with tf.Graph().as_default():
    input_tensor = tf.placeholder(tf.float32, (None, None, None, 3))
    input_tensor_shape = tf.shape(input_tensor)

    with tf.Session() as session:
        shape = input_tensor_shape.eval({input_tensor: input_data}, session)
        print(shape)

输出:
[4 1 2 3]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM