TypeError: cannot unpack non-iterable function object

Hello,

I get this error ‘TypeError: cannot unpack non-iterable function object’
When trying to run the training which looks as follows:

The mistake seems to be in the line that says Parallel(n_jobs=core_num)(delayed(train)(data_library[prior],data_library[target]))

>    	# Training
>     trg_loss = [] 
>     forward_model.train()
>     with torch.set_grad_enabled(True):
>         for data_library['20MHz'], data_library['100MHz'], data_library['250MHz'] in training_generator:
>             if(core_num>1):
>                 Parallel(n_jobs=core_num)(delayed(train)(data_library[prior],data_library[target])) 
>             else:
>                 new_loss = train(data_library[prior],data_library[target])
>                 trg_loss.append(new_loss)
>             # Parallel(n_jobs=core_num)
>             # print(data_library['20MHz'].shape)
>             # delayed(train)(data_library[prior],data_library[target])
>     print("\nTraining Loss: ", sum(trg_loss).detach().numpy().max()/len(trg_loss))
>     FILE.write("\nEpoch "+str(epoch)+": Training Loss = " +str(sum(trg_loss).detach().numpy().max()/len(trg_loss)))

All help is welcome :slight_smile:
thanks!

I don’t know how data_library etc. are defined, but the issue might have been raised by joblib and seems to be similar to this one.