Closed cmacdonald closed 5 years ago
data.iter_valid_records() doesn't yield anything if the validation set is smaller than batch_size.
Adding a final block as follows works:
if len(batch['query_id']) > 0: yield _pack_n_ship(batch)
This also means that the final validation % batch_size documents are omitted from validation.
I suspect data.iter_train_pairs() has exactly the same issue.
Good catch! The data.iter_train_pairs is not affected by this because _iter_train_pairs iterates indefinitely.
data.iter_train_pairs
_iter_train_pairs
data.iter_valid_records() doesn't yield anything if the validation set is smaller than batch_size.
Adding a final block as follows works:
This also means that the final validation % batch_size documents are omitted from validation.
I suspect data.iter_train_pairs() has exactly the same issue.