【pytorch错误】:Pytorch RuntimeError: “host_softmax” not implemented for 'torch.cuda.LongTensor'

本文详细解析了PyTorch运行时错误“host_softmax”未实现的问题,指出训练标签train_y应为int64类型,并提供了修改数据类型的具体代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题

Pytorch RuntimeError: “host_softmax” not implemented for ‘torch.cuda.LongTensor’


报错的位置在这个地方

    loss=criterion(out,train_y)  # train_y 应该是int64
原因

参考:https://stackoverflow.com/questions/51818225/pytorch-runtimeerror-host-softmax-not-implemented-for-torch-cuda-longtensor。
大致就是说,train_y应该是int64类型.

解决

在将train_y变为一个tensor的时候,设置数据类型为int64。

    train_x=torch.tensor(train_x,dtype=torch.float32).cuda()
    train_y=torch.tensor(train_y,dtype=torch.int64).cuda()
    train_x = Variable(train_x)
    train_y = Variable(train_y)
D:\anaconda3\envs\torch2.5\python.exe D:/project/Pointnet_Pointnet2_pytorch-master/train_partseg_tomato.py 2025-06-18 18:41:18,603 - ========== 训练配置 ========== Train Epoch 0: 100%|██████████| 10/10 [00:36<00:00, 3.61s/it] 2025-06-18 18:41:54,678 - Epoch 1 | 训练损失: 1.3537 | 训练准确率: 0.5024 | 背景mIoU: 0.5474 | 茎mIoU: 0.0685 | 断点mIoU: 0.0125 | 平均mIoU: 0.2095 Evaluating: 0%| | 0/3 [00:03<?, ?it/s] Traceback (most recent call last): File "D:\project\Pointnet_Pointnet2_pytorch-master\train_partseg_tomato.py", line 321, in <module> trainer.run() File "D:\project\Pointnet_Pointnet2_pytorch-master\train_partseg_tomato.py", line 295, in run metrics = self.evaluate() File "D:\project\Pointnet_Pointnet2_pytorch-master\train_partseg_tomato.py", line 238, in evaluate loss = self.criterion(seg_pred_flat, target_flat) File "D:\anaconda3\envs\torch2.5\lib\site-packages\torch\nn\modules\module.py", line 1736, in _wrapped_call_impl return self._call_impl(*args, **kwargs) File "D:\anaconda3\envs\torch2.5\lib\site-packages\torch\nn\modules\module.py", line 1747, in _call_impl return forward_call(*args, **kwargs) File "D:\project\Pointnet_Pointnet2_pytorch-master\models\pointnet2_part_seg_msg.py", line 80, in forward ce_loss = F.cross_entropy( File "D:\anaconda3\envs\torch2.5\lib\site-packages\torch\nn\functional.py", line 3479, in cross_entropy return torch._C._nn.cross_entropy_loss( RuntimeError: "nll_loss_forward_no_reduce_cuda_kernel_index" not implemented for 'Int' 进程已结束,退出代码为 1
最新发布
06-19
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Tech沉思录

点赞加投币,感谢您的资瓷~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值