gpt4 book ai didi

tensorflow - 在 Keras 中使用 Tensorflow 层

转载 作者:行者123 更新时间:2023-12-04 01:46:18 25 4
gpt4 key购买 nike

我一直在尝试使用池化层在 Keras 中构建顺序模型 tf.nn.fractional_max_pool .我知道我可以尝试在 Keras 中创建我自己的自定义层,但我想看看我是否可以在 Tensorflow 中使用该层。对于以下代码片段:

p_ratio=[1.0, 1.44, 1.44, 1.0]

model = Sequential()
model.add(ZeroPadding2D((2,2), input_shape=(1, 48, 48)))
model.add(Conv2D(320, (3, 3), activation=PReLU()))
model.add(ZeroPadding2D((1,1)))
model.add(Conv2D(320, (3, 3), activation=PReLU()))
model.add(InputLayer(input_tensor=tf.nn.fractional_max_pool(model.layers[3].output, p_ratio)))

我明白了 error .我用 Input 尝试了其他一些东西而不是 InputLayer还有 Keras Functional API,但到目前为止还没有运气。

最佳答案

得到它的工作。为了将来引用,这就是您需要实现它的方式。由于 tf.nn.fractional_max_pool 返回 3 个张量,您只需要获取第一个:

model.add(InputLayer(input_tensor=tf.nn.fractional_max_pool(model.layers[3].output, p_ratio)[0]))

或者使用 Lambda 层:
def frac_max_pool(x):
return tf.nn.fractional_max_pool(x,p_ratio)[0]

模型实现是:
model.add(Lambda(frac_max_pool))

关于tensorflow - 在 Keras 中使用 Tensorflow 层,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44991470/

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