Keras 层构建错误:build() 需要 1 个位置参数,但给出了两个

tst*_*eby 3 python keras tensorflow keras-layer tf.keras

我在这个简单的层中出现以下错误:

class MyLayer(Layer):

def __init__(self):
    super(MyLayer, self).__init__()

def build(self):
    # Create a trainable weight variable for this layer.
    self.kernel = self.add_weight(name='kernel', 
                                  shape=(1)
                                  trainable=True)
    super(MyLayer, self).build() 

def call(self, x):
    return x/self.kernel
Run Code Online (Sandbox Code Playgroud)

当我将它用作:

m = MyLayer()
t = m (input)
Run Code Online (Sandbox Code Playgroud)

错误:build() 采用一个位置参数,但给出了两个。

Shu*_*hal 5

Keras 层中的每一层都需要一个input_shape参数。将其添加到您的build()方法中。