记.backward()报错

最近我在模型训练损失里加入了LPIPS深度感知损失,训练的时候就出现了如上的报错,具体解释为:调用梯度反向传播loss.backward()时,我们计算梯度,需要一个标量的loss(即该loss张量的维度为1,只包含一个元素);而LPIPS的输出的loss为一个4,1,1,1的4维张量(batch_size,c,h,w),因此报错。

修正:

python 复制代码
def lpips_loss(img1, img2):
    # loss_fn_alex = lpips.LPIPS(net='alex')  # best forward scores
    loss_fn_vgg = lpips.LPIPS(net='vgg')  # closer to "traditional" perceptual loss, when used for optimization
    loss_fn_vgg.cuda()
    loss = loss_fn_vgg.forward(img1, img2)
    loss = torch.mean(loss)
    return loss

参考:

grad can be implicitly created only for scalar outputs-CSDN博客https://blog.csdn.net/qq_39208832/article/details/117415229
lpips · PyPIhttps://pypi.org/project/lpips/

相关推荐
甲维斯21 分钟前
浪费时间!DeepSeek 4.1 Flash
人工智能
tianxuanjg28 分钟前
工业/协作机器人研发采购指南:如何适配新品迭代的CNC加工合作
人工智能·经验分享·机器人·无人机·材质
醍醐实验室29 分钟前
视觉投影层(Projector)的几何变换:从 Linear 到 C-Abstractor 的信息压缩
人工智能·c-abstractor
举个栗子。29 分钟前
Generative AI for Beginners:微软官方 21 课生成式 AI 入门教程,从零掌握 AI 应用开发
人工智能·microsoft
科技苑29 分钟前
日常用的 prompt词汇集指南
人工智能·prompt
AIwenIPgeolocation33 分钟前
告别“数据孤岛”:可信数据空间如何打通产业链、城市群?
大数据·人工智能
七夜zippoe34 分钟前
AI Agent 工程化落地实战(01):从 ChatBot 到自主智能体的范式跃迁
人工智能·ai·agent·chatbot·自主智能体
云杂项38 分钟前
人工智能:数据与模型安全(个人笔记)
人工智能·安全
Allen_LVyingbo38 分钟前
2026医疗AI编程:医院信息工程部规模化编程与代码审核路径(上)
网络·人工智能·cnn·transformer·知识图谱·ai编程