J'ai formé GAN sur l'ensemble de données celebA. Après cela, je sépare G et D. Puis je prends une image de celebA jeu de données de formation disons yTrue et maintenant je veux trouver l'image la plus proche de yTrue que G peut générer dire yPred. Donc, la perte en sortie de G est || yTrue - yPred || _2^{2} et je l'ai minimisée avec l'entrée du générateur (variable latente de la distribution normale). Voici un code qui donne de bons résultats. Maintenant, le problème est que je veux aussi ajouter une perte antérieure (log (1-D (G (z))) 1 en première ligne mais je ne comprends pas comment le faire car D n'est pas connecté à G maintenant et si j'ajoute directement k.mean (k.log (1-D.predict (G.output))) en première ligne, il retourne un tableau numpy pas tenseur non autorisé.comment mettre en œuvre la fonction de perte de papier '' Semantic Image Inpainting avec Deep Generative Models 'dans keras
`loss = K.mean(K.square(yTrue - gf.output))
grad = K.gradients(loss,[gf.input])[0]
fn = K.function([gf.input], [grad])
generator_input = np.random.normal(0,1,[1,100])
for i in range(5000):
grad1 = fn([generator_input])
generator_input -= grads[0]*.01
recovered = gf.predict(generator_input)`
J'ai mis à jour la question. Veuillez jeter un coup d'oeil. – user398917
Désolé, je dois y aller, je ne peux pas mettre à jour ma question jusqu'à lundi maintenant. Mais faites un modèle avec deux sorties, l'une de G, l'autre de D, gardez-les connectés, cependant. Utilisez une perte pour chaque sortie. –