Open AlexanderBartler opened 4 years ago
@AlexanderBartler ,
Thanks for testing this. Currently it isn’t designed for anything besides a folder of images. I’ll make a note of this in the README.md
. If you convert CIFAR to such a structure it should work.
The error you are seeing is because the model expects the dataloader to return 3 images, i.e: augmentation1
, augmentation2
and labels
and this is handled by the MultiAugmentImageFolder
Hi, I tried to run your implementation of BYOL for Cifar10. I used the following command to run the training (using my own environment):
python main.py --batch-size=16 --epochs=1 --num-replicas=1 --task=cifar10
An error occurs since it cannot unpack 2 values into 3. Here is the error traceback:
dataset loader: {'num_workers': 2, 'pin_memory': True, 'worker_init_fn': None, 'timeout': 0, 'drop_last': True} train = 50000 | test = 10000 | valid = 0 derived image shape = [3, 224, 224] Traceback (most recent call last): File "main.py", line 814, in <module> run(rank=0, args=args) File "main.py", line 742, in run loader, model, grapher = build_loader_model_grapher(args) # build the model, loader and grapher File "main.py", line 435, in build_loader_model_grapher lazy_generate_modules(network, loader.train_loader) File "main.py", line 475, in lazy_generate_modules for augmentation1, augmentation2, labels in loader: ValueError: not enough values to unpack (expected 3, got 2)
Maybe this implementation is not tested or build for full cifar10 support or I'm missing something. Hope you can help. Thanks.