Now I use BCELoss to train a net ,and get a TypeError:
TypeError: CudaBCECriterion_updateOutput received an invalid combination of arguments 
- got (int, torch.cuda.FloatTensor, torch.cuda.FloatTensor, 
         torch.cuda.FloatTensor, torch.cuda.FloatTensor), 
but expected (int state, torch.cuda.FloatTensor input, torch.cuda.FloatTensor target,
  torch.cuda.FloatTensor output, bool sizeAverage, [torch.cuda.FloatTensor weights or None])

It seems that the types of prediction and label are not correct,but I’m sure I make them the same data type,and from the above error message the data types  also agree with the expected parameter type of function.so 1 what’s the real message the TypeError really want to say ?