in src/run.py [0:0]
def create_model(x, y, n_gpu, hparams):
gen_logits = []
gen_loss = []
clf_loss = []
tot_loss = []
accuracy = []
trainable_params = None
for i in range(n_gpu):
with tf.device("/gpu:%d" % i):
results = model(hparams, x[i], y[i], reuse=(i != 0))
gen_logits.append(results["gen_logits"])
gen_loss.append(results["gen_loss"])
clf_loss.append(results["clf_loss"])
if hparams.clf:
tot_loss.append(results["gen_loss"] + results["clf_loss"])
else:
tot_loss.append(results["gen_loss"])
accuracy.append(results["accuracy"])
if i == 0:
trainable_params = tf.trainable_variables()
print("trainable parameters:", count_parameters())
return trainable_params, gen_logits, gen_loss, clf_loss, tot_loss, accuracy