MCPcopy Create free account
hub / github.com/tdrussell/diffusion-pipe / evaluate_single

Function evaluate_single

train.py:176–193  ·  view source on GitHub ↗
(model_engine, eval_dataloader, eval_gradient_accumulation_steps, quantile, pbar=None)

Source from the content-addressed store, hash-verified

174
175
176def evaluate_single(model_engine, eval_dataloader, eval_gradient_accumulation_steps, quantile, pbar=None):
177 eval_dataloader.set_eval_quantile(quantile)
178 total_loss = 0
179 count = 0
180 while True:
181 model_engine.reset_activation_shape()
182 iterator = get_data_iterator_for_step(eval_dataloader, model_engine, num_micro_batches=eval_gradient_accumulation_steps)
183 loss = model_engine.eval_batch(iterator, num_micro_batches=eval_gradient_accumulation_steps).item()
184 eval_dataloader.sync_epoch()
185 if pbar:
186 pbar.update(1)
187 total_loss += loss
188 count += 1
189 if eval_dataloader.epoch == 2:
190 break
191
192 eval_dataloader.reset()
193 return total_loss / count
194
195
196def _evaluate(model_engine, eval_dataloaders, tb_writer, step, eval_gradient_accumulation_steps):

Callers 1

_evaluateFunction · 0.85

Calls 4

sync_epochMethod · 0.80
resetMethod · 0.80
set_eval_quantileMethod · 0.45

Tested by

no test coverage detected