我想使用tensorflow中的自定义层制作U-net。我需要使用tf.keras.layers.concatenate,这就是我的问题。为我可以在方法调用中添加到层的所有其他层输入张量。但是连接层的语法是tf.keras.layers.concatenate(输入,axis),我需要类似于tf.keras.layers.concatenate(axis)(输入)的东西,但它不起作用。有人能帮我吗?
多谢各位
我的代码是这样的:
class MyModel(tf.keras.Model):
def __init__(self):
super(MyModel, self).__init__()
self.block1 = Conv2D(.....)
self.block2 = BatchNormalization()
....etc.....
self.decoder_concat = tf.keras.layers.concatenate(axis=-1) #that i need but it does not work
def call(self, inputs):
x = self.block1(inputs)
x = self.block2(x)
....etc......
x = self.decoder_concat([x, concatLayer]) #that i need but it does not work
在这里提供解决方案(答案部分),即使它出现在评论部分,也是为了社区的利益
将
tf.keras.layers.concatenate
更改为tf.keras.layers.Concatenate
后,问题已得到解决tf.keras.layers.Concatenate
,用作连接Tensorflow中输入列表的层,其中astf.keras.layers.concatenate
充当连接层的功能接口。请参阅更多详情here请参阅下面更新的代码
相关问题 更多 >
编程相关推荐