首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Chainer -使用GPU进行预测

Chainer -使用GPU进行预测
EN

Stack Overflow用户
提问于 2018-07-30 09:39:05
回答 1查看 367关注 0票数 1

我有一个经过训练的Chainer模型,我想用它来进行预测。默认情况下,我可以预测CPU上的图像,但我想使用GPU,我不知道该如何做。下面是我的代码:

代码语言:javascript
复制
model = MyModel()
chainer.serializers.load_npz("snapshot", model)
image = load_image(path) # returns a numpy array

with chainer.no_brackprop_mode(), chainer.using_config("train", False):
    pred = model.__call__(image)

这在CPU上工作得很好。我应该在GPU上添加什么来预测呢?我试过:

  • model.to_gpu(0)
  • chainer.cuda.get_device_from_id(0).use()
  • 用CuPy将图像转换为image = cupy.array(image)数组

通过所有这些选项,我得到了一个错误:

代码语言:javascript
复制
ValueError: numpy and cupy must not be used together
type(W): <type 'cupy.core.core.ndarray'>, type(x): <type 'numpy.ndarray'>

我在这里做错什么了?如何在GPU上执行预测?提前谢谢你的帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-30 15:12:08

我终于想出了一个让它工作的方法:我没有使用cupy.array(image),而是使用了cuda.to_gpu(image),然后使用了cuda.to_cpu(image)。我不确定这两者之间的区别,但它仍然有效。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51591069

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档