我在PyTorch中实现了新的损失功能。
#model_1 needs to be trained
outputs = model_1(input)
loss = myloss(outputs,labels)
#output is how much to resize an image
#label give the image file index
#Below I am explaining myloss() function
org_file_name = pic_ + str(labels[0]) + ".png"
new_image = compress(org_image,outputs)
accuracy_loss = run_pretrained_yolov3(org_image, new_image)
#next two lines are modifying the same DAG
prev_loss = torch.mean((outputs-labels)**2)
new_loss = (accuracy_loss/prev_loss.item())*prev_loss
new_loss.backward()
任何人都可以帮助我建议如何通过计算图了解损耗梯度的反向传播吗?
[即,实际上,在myloss()函数内部,我使用了其他一些在测试模式下应用的预训练模型来获取差值或最终损失值。]现在,我想知道new_loss.grad是否通过model1反向传播还是先通过yolov3,然后通过model1?预训练的yolov3仅在测试模式下使用。
我已经尝试过张量板,但没有提供该选项。任何建议都将非常有帮助。