当前位置: 首页 > 知识库问答 >
问题:

TypeError:预期的CPU(获得CUDA)

华良才
2023-03-14
import torch
torch.cuda.is_available()
torch.cuda.current_device()
torch.cuda.get_device_name(0)
torch.cuda.memory_reserved()
torch.cuda.memory_allocated()
torch.cuda.memory_allocated()
var1=torch.FloatTensor([1.0,2.0,3.0]).cuda()
var1
var1.device
import pandas as pd
df=pd.read_csv('diabetes.csv')
df.head()
df.isnull().sum()

import seaborn as sns
import numpy as np
df['Outcome']=np.where(df['Outcome']==1,"Diabetic","No Diabetic")
df.head()
sns.pairplot(df,hue="Outcome")
X=df.drop('Outcome',axis=1).values### independent features
y=df['Outcome'].values###dependent features
from sklearn.model_selection import train_test_split

X_序列,X_测试,y_序列,y_测试=序列测试分割(X,y,测试尺寸=0.2,随机状态=0)y_序列导入火炬导入火炬。nn作为nn导入火炬。nn。作为F函数

X_train=torch.FloatTensor(X_train).cuda()
X_test=torch.FloatTensor(X_test).cuda()
y_train=torch.LongTensor(y_train).cuda()
y_test=torch.LongTensor(y_test).cuda()

运行此代码时,出现以下错误:

Traceback (most recent call last):
  File "<stdin>", line 24, in <module>
TypeError: expected CPU (got CUDA)

如何解决此错误?

共有1个答案

全飞扬
2023-03-14

要将变量传输到GPU,请尝试以下操作:

device = torch.device('cuda:0' if torch.cuda.is_available() else 'cpu')

X_train=torch.FloatTensor(X_train).to(device)
X_test=torch.FloatTensor(X_test).to(device)
y_train=torch.LongTensor(y_train).to(device)
y_test=torch.LongTensor(y_test).to(device)
 类似资料:
  • 问题内容: 我面临一个非常奇怪的问题。我有一套每天在Jenkins上运行的测试,并且没有任何明显的变化,一些断言(期望)开始失败。奇怪的是,只有当我在Browserstack上从Jenkins执行测试时,它们才会失败。在本地一切正常,在浏览器堆栈本地一切正常,在saucelabs上一切正常。我有3个具有类似期望的it()块: 它们都位于不同的it()块中。现在奇怪的是: 当我执行测试时,使用第一个

  • 我在DB中有时间戳格式,我的setEventDate方法需要日期格式。所以在我的刀课上有这样的东西: 我从数据库中获取时间戳,将其格式化为字符串,在下一步中,我将分析它的日期。我知道这听起来很奇怪。结果是:String-17:08 Date-Thu Jan 01 17:08:00 CET 1970 我不明白:/n我需要那种“HH:mm”格式。

  • 问题内容: 我在将值写入文件时遇到以下错误。您能帮我弄清楚问题出在哪里以及如何解决吗? 错误: 问题答案: 假设您只想将字符串写入文件,请更改为或issue 。

  • 问题内容: 我的Go程序需要知道所有系统和用户进程的当前cpu使用率。 我如何获得? 问题答案: 我遇到了类似的问题,但从未找到轻量级的实现。这是我的解决方案的精简版,可以回答您的特定问题。我按照tylerl的建议对文件进行采样。您会注意到,我在两次采样之间等待3秒以匹配top的输出,但是在1或2秒的情况下我也取得了不错的结果。我在go例程中的循环中运行类似的代码,然后在需要其他go例程时访问cp

  • 问题内容: 需要帮忙。有一个名为arglist的数据列表,例如:[‘dlink’,’des’,‘1210’,’c’,24] <-这就是“打印”视图。 这段代码: 它给: 怎么了? 问题答案: 当json.loads需要一个字符串时,您正在尝试加载文件对象。您可以使用 或者更好: 在第一个示例中,文件是打开的,但从未关闭(不好的做法)。在第二个示例中,上下文管理器在离开上下文块后关闭文件。

  • 3.2获得 CPU 寄存器状态 一个调试器必须能够在任何时候都搜集到 CPU 的各个寄存器的状态。当异常发生的时 候这能让我们确定栈的状态,目前正在执行的指令是什么,以及其他一些非常有用的信息。 要实现这个目的,首先要获取被调试目标内部的线程句柄,这个功能由 OpenThread()实现. 函数原型如下: HANDLE WINAPI OpenThread( DWORD dwDesired