初学torch【报错:expected scalar type double but found float、rmse】
创始人
2024-05-31 20:38:06
0

目录

一、inout

二、expected scalar type double but found float 报错

三、pytorch中回归评价rmse:


一、inout

torch网络训练,输入需要转换为tensor格式:

import torch
import numpy
A = torch.arange(12, dtype=torch.float32).reshape((3,4))
B = A.detach().numpy()  # tensor转换为ndarray
C = torch.from_numpy(B) # ndarray转换为tensor
type(A),type(B),type(C)
 

【学习】:tensorflow中转换:

(10条消息) Tensorfow中Tensor与Numpy的ndarray转换_tensorflow 转numpy_火成哥哥的博客-CSDN博客 

二、expected scalar type double but found float 报错

【学习】:(2条消息) 解决pytorch当中RuntimeError: expected scalar type Double but found Float的问题_weixin_55191433的博客-CSDN博客

可能是因为tensor的数据类型不对,有可能是反向传播中输入x的类型不对,也有可能是训练和测试过程中的data类型不对,如果是反向传播过程的话,那就要看是哪一层神经网络出现问题,就在哪一层的前面加上:

x=x.to(torch.float32) 

如果是在训练或者测试模型中出现这个问题,则解决方法如下:

input=input.to(torch.float32)

是训练或者测试过程中labels的类型不对,解决方法如下:

label=labei.long() 

三、pytorch中回归评价rmse:

import torch.nn as nn
import torch
...
self.criterion=nn.MSELoss(reduction="mean")
...
prediction_data=...
label_data=...
RMSELoss=torch.sqrt(self.criterion(prediction_data,label_data))
RMsELoss.backward()
... 

 



之后再有学习错误,继续补充!!:)

相关内容

热门资讯

【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
AsusVivobook无法开... 首先,我们可以尝试重置BIOS(Basic Input/Output System)来解决这个问题。...
ASM贪吃蛇游戏-解决错误的问... 要解决ASM贪吃蛇游戏中的错误问题,你可以按照以下步骤进行:首先,确定错误的具体表现和问题所在。在贪...
月入8000+的steam搬砖... 大家好,我是阿阳 今天要给大家介绍的是 steam 游戏搬砖项目,目前...