python - 如何在keras中将(None,1024)张量堆叠到(None,7,7,1024)张量中?

标签 python tensorflow keras tensor

我有一个形状为 (None,1024) 的张量 A,我想重复它 49 次以生成形状为 (None, 7,7,1024)。每个(,1024)向量都是张量A的副本。

我该怎么做?

我试过了

A = K.stack([A,A,A,A,A,A,A])
A = K.stack([A,A,A,A,A,A,A])

但这给了我一个形状为 (7, 7, None, 1024)

的张量

最佳答案

首次使用RepeatVector层重复49次,然后使用Reshape层以根据需要 reshape 其形状:

r_A = RepeatVector(49)(A)
rsh_A = Reshape((7, 7, -1))(r_A)

或者,您可以基于后端函数定义一个函数并将其包装在 Lambda 层中:

from keras import backend as K

def rsh(x):
    y = K.repeat(x, 49)
    return K.reshape(y, (-1, 7, 7, K.int_shape(y)[-1]))

rsh_A = Lambda(rsh)(A)

关于python - 如何在keras中将(None,1024)张量堆叠到(None,7,7,1024)张量中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53337880/

相关文章:

python - tf.audio.decode_wav 如何获取其内容?

javascript - 如何在 Tensorflow.js 中保护(混淆/DRM)经过训练的模型权重?

python - Keras模型: Input shape dimension error for RL agent

python - Try语句语法

Python读取Excel单元格数据验证

python - 安装 scrapy 清理失败

tensorflow - 我应该在 inception_v3.py keras 中减去 imagenet 预训练的 inception v3 模型平均值吗?

python - 机器人框架通过按键更改表格单元格值

python - 如何连接 "Jagged"张量

python - 修改 Keras 模型最有效的方法是什么?