I am using torch.utils.data.ConcatDataset to merge 7 different datasets and I am getting this error in dataloader.py file.
The error happens at this line:
for imgs, target, word_str, weight in test_loader:
…
def default_collate(batch):
...
...
    numel = sum([x.numel() for x in batch])
    AttributeError: 'numpy.ndarray' object has no attribute 'numel'

Clearly, the code expects a tensor format. All my images have tensor format, but the multihot encoding are in numpy. However, when I try the same code it works well when I merge 6 datasets. What is happening?
When I try the seventh data set alone, it also works well; sampler is not used here.
Any ideas what is happening?
NB. The test_loader is based on a Sampler
def get_sampled_loader(cf, test_set):
        no_of_samples  = len(test_set)
        sample_idx = np.random.permutation(np.arange(0, no_of_samples))[:cf.no_of_sampled_data]                     
        if len(sample_idx) ==0:  
            exit('exiting function get_the_sampler(), sample_idx size is 0')    
        my_sampler = torch.utils.data.sampler.SubsetRandomSampler(sample_idx)  
        test_loader = torch.utils.data.DataLoader(test_set, batch_size=cf.batch_size_test,
                          shuffle= False, num_workers=cf.num_workers, sampler=my_sampler)
        return test_loader

Update: Removing the sampler did not resolve  the  error.