问题描述
pytorch代码如下。前一个时期计算出的变量如何用于 在下一个时期计算损失函数?
for epoch in range((args.start_epoch+1),args.epochs):
for input,target in train_loader:
target = target.cuda()
input = input.cuda()
input_var = torch.autograd.Variable(input)
target_var = torch.autograd.Variable(target)
outputs,feature = model(input_var)
if epoch > 0:
l = criterion.forward(feature,target_var,Fea)
Fea = function(model,train_loader)
解决方法
for epoch in range((args.start_epoch+1),args.epochs):
Center = computer_Center(型号,数据加载器,类编号) 作为输入,将目标设置在train_loader中: 目标= target.cuda() 输入= input.cuda() input_var = torch.autograd.Variable(输入)