def eval_step(input_ids, target_ids, ): target_inp = target_ids[:, :-1] _, combined_mask, dec_padding_mask = create_masks(input_ids, target_inp) (draft_predictions, draft_attention_weights, refine_predictions, refine_attention_weights) = Model( input_ids, dec_padding_mask=dec_padding_mask, target_ids=target_inp, look_ahead_mask=combined_mask, training=False ) loss, target = loss_function(target_ids, draft_predictions, refine_predictions, Model ) train_loss(loss) log.info(Model.summary()) if config.save_initial_weights: initial_weights = os.path.join(config.initial_weights,'initial_weights') Model.save_weights(initial_weights) return loss
def batch_run_check(batch, start): if config.run_tensorboard: with train_output_sequence_writer.as_default(): tf.summary.scalar('train_loss', train_loss.result(), step=batch) tf.summary.scalar('train_accuracy', train_accuracy.result(), step=batch) if config.display_model_summary: log.info(Model.summary()) log.info(batch_zero.format(time.time() - start)) config.display_model_summary = False log.info( batch_run_details.format(train_loss.result(), train_accuracy.result())) return train_loss.result()
def batch_run_check(batch, start_time, bert_f1_score): if config.run_tensorboard: with train_output_sequence_writer.as_default(): tf.summary.scalar('train_loss', train_loss.result(), step=batch) if config.display_model_summary: log.info(Model.summary()) log.info(batch_zero.format(time.time() - start_time)) config.display_model_summary = False log.info( batch_run_details.format( tf.debugging.assert_all_finite(train_loss.result(), message="NaN's or Inf's.", name='NAN_assertion'), bert_f1_score.numpy()))
def eval_step(input_ids, target_ids_, target_ids, draft_mask, refine_mask): (draft_predictions, draft_attention_weights, refine_predictions, refine_attention_weights) = Model(input_ids, target_ids_, False) draft_output_sequence_loss = loss_function(target_ids[:, 1:, :], draft_predictions, draft_mask) if config.use_refine_decoder: refine_output_sequence_loss = loss_function(target_ids[:, :-1, :], refine_predictions, refine_mask) else: refine_output_sequence_loss = 0 regularization_loss = tf.add_n(Model.losses) loss = draft_output_sequence_loss + refine_output_sequence_loss + regularization_loss log.info(Model.summary()) if config.save_initial_weights: initial_weights = os.path.join(config.initial_weights, 'initial_weights') Model.save_weights(initial_weights) return loss