gpt4 book ai didi

python - 如何将无维度添加回张量?

转载 作者:太空宇宙 更新时间:2023-11-03 21:32:37 25 4
gpt4 key购买 nike

我在 Lambda 层中进行了一些转换,现在形状为 (1,),如何返回到 (None, 1)

这是我的操作

def function_lambda(x):
import keras.backend

aux_array = keras.backend.sign(x)
#the shape is (?, 11) here OK

aux_array = keras.backend.relu(aux_array)
#the shape is (?, 11) here still OK

aux_array = keras.backend.any(aux_array)
#the shape is () here not OK

aux_array = keras.backend.reshape(aux_array, [-1])
#now the shape is (1,) almost OK

return aux_array

如何 reshape 并放回None Batch Dimension?

最佳答案

tf.reshape 有一个限制,它无法使用“无”维度。据我所知,我们唯一可以定义“无”维度的地方是 tf.placeholder。以下内容应该有效:

def function_lambda(x):
import keras.backend

aux_array = keras.backend.sign(x)
#the shape is (?, 11) here OK

aux_array = keras.backend.relu(aux_array)
#the shape is (?, 11) here still OK

aux_array = keras.backend.any(aux_array)
#the shape is () here not OK

aux_array = keras.backend.placeholder_with_default(aux_array, [None,1])
#now the shape is (?,1) OK

return aux_array

附加说明:在尝试使用 Google 机器学习引擎时,创建新的占位符以重新引入“无”维度非常有用。 MLE 要求第一个维度(批处理)始终保持“无”或未知。

关于python - 如何将无维度添加回张量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53442887/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com