def sum_up_validation_dataset(dataset, batch_size, repeat=True, 
                              number_of_repetitions=0):
    """Define how the validation dataset is suppose to behave during training.

    This function is applied to the validation dataset just before the actual
    training process. The characteristics defined here address how images are
    picked and how large the batch size is.

    Args:
        dataset (tensorflow dataset): The dataset to which the functions are 
                                        applied.
        batch_size (int): Defines the number of images per validation step.
        repeat (boolean): If set to false the validation data is only considered 
                            once. If set to true, the dataset is either 
                            considered endlessly or number_of_repetitions times.
        number_of_repetitions (int): Defines how often the validation data is 
                                        considered.

    Returns:
        The tensorflow dataset which the applied changes described above. 
    """
    if (repeat):
        if (number_of_repetitions > 0):
            dataset = dataset.batch(batch_size).repeat(number_of_repetitions)
        else:
            dataset = dataset.batch(batch_size).repeat()
    else:
        dataset = dataset.batch(batch_size)
    return dataset