loss.backward()处遇到“RuntimeError: Found dtype Double but expected Float”

这篇具有很好参考价值的文章主要介绍了loss.backward()处遇到“RuntimeError: Found dtype Double but expected Float”。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

错误信息

类型错误, 计算loss值的函数传入的参数类型不统一。

解决方法

查看上文loss计算代码部分的参数类型,如loss=f.mse_loss(out,label),检查out和label的类型都是torch.float类型即可。使用label.dtype查看tensor的类型。

具体流程

报错定位在这一行

loss.backward()处遇到“RuntimeError: Found dtype Double but expected Float”,机器学习_神经网络_深度学习,深度学习,python,人工智能
寻思着是否是loss类型的问题,于是我就添加

loss = loss.to(torch.float32)

但是还是报错在此处,于是开始考虑是否是上文loss计算代码部分的参数类型有问题
loss.backward()处遇到“RuntimeError: Found dtype Double but expected Float”,机器学习_神经网络_深度学习,深度学习,python,人工智能
添加这两行,再次运行,sucess, 完美文章来源地址https://www.toymoban.com/news/detail-579105.html

到了这里,关于loss.backward()处遇到“RuntimeError: Found dtype Double but expected Float”的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 报错解决:RuntimeError: expected scalar type Long but found Float

    nn.Linear需要作用于浮点数,这里可能输入了整数类型的张量作为参数。 报错: 把a转为float,结果为:

    2024年02月09日
    浏览(33)
  • RuntimeError: stack expects each tensor to be equal size, but got at entry

    参考链接:​​​​​​解决Pytorch dataloader时报错每个tensor维度不一样的问题_python_脚本之家 记录一下自己遇到的bug: 问题描述:  问题分析: torch.stack(batch, 0, out=out)出错,原因可能是: 同一个batch的数据图片的维度(H, W, C)要相同(可以见官方文档:其shape必须一致) 问

    2024年02月15日
    浏览(38)
  • 记录解决RuntimeError: Sizes of tensors must match except in dimension 1. Expected size 27 but got size

    在做目标检测服务过程中,将yolov7模型通过flask打包成预测服务API,此次训练的图像输入大小是1280,输入预测图片是如果图像大于1280则预测成功,小于1280则报RuntimeError: Sizes of tensors must match except in dimension 1. Expected size 27 but got size。 由于只有小图片预测报错,猜测是图像处理

    2024年02月11日
    浏览(35)
  • DataLoader问题解决:RuntimeError: stack expects each tensor to be equal size, but got [3, 200, 200]entry1

            最近,在数据集处理并载入DataLoader进行训练的时候出现了问题:         我看了一下,大意就是维度也就是通道数不匹配,所以我觉得应该是数据集图片出现了问题。以下是我的普通数据集处理代码:           我一张一张图片放入DataLoader,然后按顺序一张一张的

    2023年04月25日
    浏览(29)
  • VUE中eslint报错: Expected linebreaks to be ‘LF‘ but found ‘CRLF

    出现这个的原因 :windows 环境下, git 在我们 pull 代码的时候,会自动识别当前的系统环境。将原本的(linux/unix)换行改成对应系统的,在我们提交代码的时候又会转成远程系统环境的(Linux/unix),然后又装了 eslint,默认就是使用 LF,所以就会报这个错误 各种环境下换行符格

    2023年04月08日
    浏览(37)
  • 七牛云上传报错 Expected URL scheme ‘http‘ or ‘https‘ but no colon was found

    报错如下: 报错意思是:请求的url没有冒号,正常的是http:// 或者https://。 相关说明:服务器环境为甲方提供的linux服务器,不是云服务器, 相当于没有连接外网 ,涉及调用第三方Api需要将调用地址和端口提供给他们。配置以后才可以调用。因此在提供七牛云调用地址时,是在本

    2024年01月20日
    浏览(37)
  • 解决match/range [match] malformed query, expected [END_OBJECT] but found [FIELD_NAME]

    使用es查询数据的时候会遇到提示match/range [match] malformed query, expected [END_OBJECT] but found [FIELD_NAME]错误,这个时候你需要检查一下自己的query条件的大括号,这类问题基本是 花括号的位置不正确引起的 ,例如 是正确的,如果是这样就会报上述错误, 下面是错误示范 大家看出区

    2024年02月12日
    浏览(33)
  • Expected one result (or null) to be returned by selectOne(), but found: 3报错解决方案

    Expected one result (or null) to be returned by selectOne(), but found: 3 Expected one result (or null) to be returned by selectOne(), but found: 3 意思是“期望selectOne()返回一个结果(或null),但发现3个”这说明你的返回结果有三个对象,但是selectOne只能返回一个。 第一种方案:可以把selectOne更换为selectList,

    2023年04月13日
    浏览(32)
  • Caused by: ParsingException[Failed to parse object: expecting token of type [START_OBJECT] but found

    Docker配置Elasticsearch启动报错 docker ps -a         #查看所有容器启动状态  发现elasticsearch的启动status为exited docker logs elasticsearch 配置elasticsearch.yml文件时http.host:与0.0.0.0的中间要有空格

    2024年02月11日
    浏览(41)
  • loss.backward

    如何计算:autograd包根据tensor进行过的数学运算来自动计算梯度 注意:1:autograd实现的。2:对tensor进行计算梯度。 之前损失计算:分割损失和边界损失计算正常。 踩坑1:模型有两个损失,分别为分割损失和边界损失,在loss function计算损失值。然后将损失值相加进行反向传

    2024年02月11日
    浏览(26)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包