首页 > 解决方案 > 带有 lambda 函数的 tf.keras 形状歧义

问题描述

我有一个tf.keras.layers.Lambda使用tf函数的层。为什么有时我必须output_shape=()为我的Lambda通话指定,而有时我不需要?

例子

freqDomain = tf.keras.layers.Lambda(tf.fft2d,
                                    output_shape=(None, tileSize, tileSize, 1))(cpxInput) # Won't work unless output_shape is specified.

标签: pythontensorflowkeras

解决方案


这是目前 Keras 中的一个错误tf.ff2td

Keras 目前无法根据输入自动计算 fft2d 函数的输出形状,因此output_shape需要指定。这是开发人员将要做的事情:

https://github.com/keras-team/keras/issues/12121#issuecomment-457217337


推荐阅读