我正在使用Keras制作GAN来生成合成数据。因此,我想使用预先处理过的分类器模型作为鉴别器(因为我不必训练鉴别器,只需训练生成器)。
经过预处理的模型是在keras中制成的,在最后一层Dense(4, activation='softmax')
(A,B,C,D)具有原始4个输出。我要从类C生成综合数据。Discriminator模型必须只有1个输出(伪或真),因此我需要将Treinade模型的最后一层更改为仅C输出。那么,我该如何在keras中或者在后端使用Tensorflow呢?
我正在寻找这样的东西...
model = load_model('pre_treined_model.h5')
discriminator = model
discriminator.layers[-1] = "only C weight/output"
答案 0 :(得分:0)
您将必须执行以下操作:
model = load_model('pre_trained_model.h5')
model.layers.pop()
x = Dense(1, activation='sigmoid')(model.layers[-1].output)
model = Model(inputs=model.input, outputs=[x])