【发布时间】:2019-04-24 05:05:56
【问题描述】:
我正在为我的模型使用 chainer 库并面临以下问题: 假设我有一个包含 3 个特征和一个标签(最后一列)的测试数据文件。它以列表的形式导入。 例如
test_set = [[1,0,9,1],[7,0,8,1],[7,0,2,0],[8,0,1,0]]
然后我通过将数据转换为 numpy 数组并获取标签列来获取标签, 后来我将其转换为一个列表,以便与预测的标签进行比较,比如 y_pred = [1,1,1,0]。即
import numpy as np
y_true_np = list(np.array(test_set)[:,3])
print(y_true_np)
[1, 1, 0, 0]
我担心的是,当我在 GPU 中运行我的模型时,它使用 Cuda.cupy 而不是 numpy,因为我使用的是 chainer 库,并且当我获取真实标签时,我收到它们:
在cupy那里:
import cupy as cp
y_true_cp = list(cp.array(test_set)[:,3]) Or
y_true_cp = list(cuda.cp.array(test_set)[:,3])
两者都返回一个数组列表:
y_true_cp: [array(1), array(1), array(0), array(0)]
作为一种解决方法,我在该特定位置使用 numpy。我在使用 cupy 时做错了什么,导致我没有正确获取值吗?
【问题讨论】:
标签: python-3.x chainer cupy