self.logits = nn_layers.full_connect_(self.wide_deep_embed, config.num_classes, activation='None', use_bn = True, \
keep_prob=self.keep_prob, name='output_layer') # predict prob
## loss and optim
#self.loss = nn_layers.cross_entropy_loss_with_reg(self.labels, self.logits)
self.loss = tf.losses.mean_squared_error(self.labels, self.logits)
tf.summary.scalar('loss', self.loss)
if not opt:
optim = nn_layers.get_optimizer(config.optimizer, learning_rate=self.learning_rate)
else:
optim = opt
self.train_op = optim.minimize(self.loss, global_step=self.global_step)
## score & infers
self.infers = self.logits # predict label
Voici une partie de mon modèle qui est un DNN pour faire une tâche de régression. Mais je trouve que la perte du modèle n'a pas beaucoup changé après plusieurs lots (la taille du lot est de 1000 et l'ensemble des données est de 11 millions). Je veux donc imprimer la valeur du gradient de somme à chaque pas, qui est la somme des gradients dans chaque lot. Comment puis-je modifier mon code pour le faire?Comment imprimer la valeur de somme de gradient dans tensorflow?