猿问

tf.expand_dims 究竟对向量做了什么,为什么即使矩阵形状不同,结果也可以加在一起?

我将两个我认为是“重塑”的向量相加,结果得到了一个二维矩阵。我预计这里会出现某种类型的错误,但没有得到它。我想我明白发生了什么,它将它们视为水平和垂直方向的每个向量还有两组,但我不明白为什么 a 和 b 的结果没有不同。如果他们不是故意的,为什么这会起作用?


import tensorflow as tf

import numpy as np


start_vec = np.array((83,69,45))

a = tf.expand_dims(start_vec, 0)

b = tf.expand_dims(start_vec, 1)

ab_sum = a + b

init = tf.global_variables_initializer()

with tf.Session() as sess:

    sess.run(init)

    a = sess.run(a)

    b = sess.run(b)

    ab_sum = sess.run(ab_sum)


print(a)

print(b)

print(ab_sum)

==================================================


[[83 69 45]]


[[83]

 [69]

 [45]]


[[166 152 128]

 [152 138 114]

 [128 114  90]]


慕丝7291255
浏览 184回答 1
1回答
随时随地看视频慕课网APP

相关分类

Python
我要回答