Sets callback parameters. Arguments: callback_list: CallbackList instance. model: Model being trained. do_validation: Whether or not validation loop will be run. batch_size: Number of samples per batch. epochs: Number of epoch to train. steps_per_epoch: Number
(callback_list,
model,
do_validation=False,
batch_size=None,
epochs=None,
steps_per_epoch=None,
samples=None,
verbose=1,
mode=ModeKeys.TRAIN)
| 120 | |
| 121 | |
| 122 | def set_callback_parameters(callback_list, |
| 123 | model, |
| 124 | do_validation=False, |
| 125 | batch_size=None, |
| 126 | epochs=None, |
| 127 | steps_per_epoch=None, |
| 128 | samples=None, |
| 129 | verbose=1, |
| 130 | mode=ModeKeys.TRAIN): |
| 131 | """Sets callback parameters. |
| 132 | |
| 133 | Arguments: |
| 134 | callback_list: CallbackList instance. |
| 135 | model: Model being trained. |
| 136 | do_validation: Whether or not validation loop will be run. |
| 137 | batch_size: Number of samples per batch. |
| 138 | epochs: Number of epoch to train. |
| 139 | steps_per_epoch: Number of batches to run per training epoch. |
| 140 | samples: Number of training samples. |
| 141 | verbose: int, 0 or 1. Keras logging verbosity to pass to ProgbarLogger. |
| 142 | mode: String. One of ModeKeys.TRAIN, ModeKeys.TEST, or ModeKeys.PREDICT. |
| 143 | Which loop mode to configure callbacks for. |
| 144 | """ |
| 145 | for cbk in callback_list: |
| 146 | if isinstance(cbk, (BaseLogger, ProgbarLogger)): |
| 147 | cbk.stateful_metrics = model.metrics_names[1:] # Exclude `loss` |
| 148 | |
| 149 | # Set callback parameters |
| 150 | callback_metrics = [] |
| 151 | # When we have deferred build scenario with iterator input, we will compile |
| 152 | # when we standardize first batch of data. |
| 153 | if mode != ModeKeys.PREDICT and hasattr(model, 'metrics_names'): |
| 154 | callback_metrics = copy.copy(model.metrics_names) |
| 155 | if do_validation: |
| 156 | callback_metrics += ['val_' + n for n in model.metrics_names] |
| 157 | callback_params = { |
| 158 | 'batch_size': batch_size, |
| 159 | 'epochs': epochs, |
| 160 | 'steps': steps_per_epoch, |
| 161 | 'samples': samples, |
| 162 | 'verbose': verbose, |
| 163 | 'do_validation': do_validation, |
| 164 | 'metrics': callback_metrics, |
| 165 | } |
| 166 | callback_list.set_params(callback_params) |
| 167 | |
| 168 | |
| 169 | def _is_generator_like(data): |
no test coverage detected