TypeError:__init __()为参数'kernel_size'获得了多个值

问题描述 投票:0回答:3

执行程序时出现以下错误...

def conv2d(x, output_dim, k_size=5, stride=2, stddev=0.02, name="conv2d"):
    #conv = tf.keras.layers.Conv2D(x, output_dim, kernel_size=k_size, 
                                   strides=[stride, stride], padding="SAME", 
                                   kernel_initializer=init(stddev=0.02), name=name)
    conv = tf.compat.v1.layers.Conv2D(x, output_dim, kernel_size=k_size, 
                                      strides=[stride, stride], padding='SAME', 
                                      kernel_initializer=init(stddev=0.02), name=name)

错误

文件“ /nfs/s-iibi54/users/skuanar/Downloads/VAE-GAN-Autoencoding-Beyond-Pixels-Using-a-Similarity-Metric-master/vaegan.py”,第20行,在conv2d中conv = tf.compat.v1.layers.Conv2D(x,output_dim,kernel_size = k_size,步幅= [步幅,步幅],填充='SAME',kernel_initializer = init(stddev = 0.02),name = name)TypeError:init()为参数'kernel_size']获取了多个值

我在执行程序时收到以下错误... def conv2d(x,output_dim,k_size = 5,stride = 2,stddev = 0.02,name =“ conv2d”):#conv = tf.keras.layers。 Conv2D(x,output_dim,kernel_size = ...

tensorflow keras keras-layer tensorflow2.0 tf.keras
3个回答
1
投票

您正在将x传递给图层的__init__方法。 Keras层不是这样工作的。


0
投票
Tensorflow 2.0 Conv2D documentation中所述,第二个参数为kernel_size,因此您的output_dim与之冲突。使用Conv2D的正确方法是先对其进行初始化,然后将其输入张量传递给它,如下所示:

0
投票
您可以在keras docs中看到,Conv2D的第二个参数是kernel_size。您正在使用第二个参数和kernel_size命名参数调用此方法
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.