张量流中的 GAN 训练问题

问题描述

我正在尝试为序列训练 GAN,但以下代码抛出错误

latent_dim  = 100
def generator():
  gen = Sequential([                  
                    Dense(25* 16,input_dim = latent_dim),LeakyReLU(),Dropout(0.2),Reshape((25,16)),Conv1DTranspose(32,3,2,padding ="same"),Batchnormalization(momentum = 0.7),Conv1DTranspose(64,Conv1D(96,Dense(22,"softmax"),Lambda(lambda x : tf.argmax(x,axis = -1)),])
  print(gen.summary())
  return gen   

def descriminator():
  des = Sequential([
                    inputLayer(input_shape = (max_len,)),Embedding(22,100),Conv1D(32,Conv1D(64,Flatten(),Dense(100),Dense(1,activation= "sigmoID")
    ]) 
  des.compile(tf.keras.optimizers.Adam(0.0003),"binary_crossentropy")
  print(des.summary())
  return des

def Adverserial(gen,des):
  des.trainable = False
  gan = Sequential()
  gan.add(gen)
  gan.add(des)
  gan.compile(tf.keras.optimizers.Adam(0.0003),"binary_crossentropy")
  return gan 

gen = generator()
des = descriminator() 
gan = Adverserial(gen,des)

错误是:

ValueError: 没有为任何变量提供梯度:['dense_44/kernel:0','dense_44/bias:0','conv1d_transpose_22/kernel:0','conv1d_transpose_22/bias:0','batch_normalization_77/gamma: 0','batch_normalization_77/beta:0','conv1d_transpose_23/kernel:0','conv1d_transpose_23/bias:0','batch_normalization_78/gamma:0','batch_normalization_78/beta:0','conv1d_44/kernel:,'conv1d_44/bias:0','batch_normalization_79/gamma:0','batch_normalization_79/beta:0','dense_45/kernel:0','dense_45/bias:0']。

是不是因为Lambda层?如果是这样,我该如何解决

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

编程问答相关问答

我有一个DCA图,我告诉ggplot2根据它们来自哪个站点...
我尝试使用OpenVINO运行python脚本,因此我写了<...
我试图在Tkinter中打印复选框的布尔值,我创建了一个...
我有一个基于其文档嵌入的外部脚本: <pre>&l...