pytorch 的Cross Entropy Loss 输入怎么填?

以识别一个四位数的验证码为例,批次取为100,标签用one_hot 表示,则标签的size为[100,4,10],input也为[100,4,10],请问loss用torch.nn.CrossEntropyLoss时,输入的input和target分别应为多少?

另外,用其他几种损失函数时,以四位验证码为例,输入该各是多少?

如果你的验证码是数字,你的损失函数前应该是一个1000个神经元的softmax层,那么输入输出的size都应该是[1000,1]

这是一个分类问题,就从打标签的角度分析一下会有多少种标签。
0000~9999,共10000种标签。也就是说模型的输出将是一个长度为10000的one-hot.
编码加上batch-size是100,CrossEntropyLoss的输入应该是100X10000