def METHOD_NAME(model: torch.nn.Module, num_samples: Optional[int] = None) -> float:
    if num_samples is None:
        num_samples = len(eval_dataset)
    eval_data_loader = _create_sampled_data_loader(eval_dataset, num_samples)
    num_correct_predictions = 0
    for images, labels in eval_data_loader:
        predictions = torch.argmax(model(images.cuda()), dim=1)
        num_correct_predictions += torch.sum(predictions.cpu() == labels)
    return int(num_correct_predictions) / num_samples