特氟康卡特给出'形状必须至少是2级,但是1级'错误,即使两个张量是相同的形状

2024-04-19 19:05:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我试着把两个相同形状的张量流常数合并起来,但是我得到了一个错误。这是密码。(我只是编辑它使init值显式)

将tensorflow导入为tf

b1 = tf.constant(value=[5,8])
b2 = tf.constant(value=[6,9])
b3= tf.concat( [b1, b2] , 1) 

with tf.Session( ) as sess:
    sess.run(tf.global_variables_initializer())
    print(sess.run([ b3] ))

给出这个错误

^{pr2}$

尽管这两个张量的形状完全相同。如果我做axis=0,它可以工作,如果我用相同数字的常规numpy数组替换张量,它可以工作,但是张量流常量和axis=1的组合是如何引起问题的。在


Tags: run编辑密码initvaluetf错误常数
1条回答
网友
1楼 · 发布于 2024-04-19 19:05:38

我对你的问题有点困惑,但是两个张量的第0轴维数必须相同才能沿着第一个轴连接。使b1具有形状[6,8]或b2具有形状[5,9]有什么作用?这两种情况中的任何一种都会导致成功的串联。

因为我第一次读错了剧本而被编辑。正如我所说的,你不能在第一个轴上连接,因为你的张量是秩1(它们只有一个轴0,或者更确切地说,它们只有1维)。如果它们的级别是2(需要两个维度来描述形状),那么可以在第一个轴上连接而不会出现问题。在

例如,可以将张量([[5,8]])和张量([[6,9]])连接在轴=1上,因为它们有形状[1,2],而不仅仅是形状[2]。在

相关问题 更多 >