def test_history_retrieve_empty_list(self, value, check_warn, recwarn): h = History() h.new_epoch() h.record('foo', value) h.new_batch() h.record_batch('batch_foo', value) # Make sure we can access our object assert h[-1, 'foo'] is value assert h[-1, 'batches', -1, 'batch_foo'] is value # There should be no warning about comparison to an empty ndarray if check_warn: assert not recwarn.list
def history(self): """Return a history filled with epoch and batch data.""" h = History() for num_epoch in range(self.test_epochs): h.new_epoch() h.record('duration', 1) h.record('total_loss', num_epoch + self.test_batches) if num_epoch == 2: h.record('extra', 42) for num_batch in range(self.test_batches): h.new_batch() h.record_batch('loss', num_epoch + num_batch) if num_batch % 2 == 0 and (num_epoch + 1) != self.test_epochs: h.record_batch('extra_batch', 23) return h