RuntimeError: Numpy is not available解决方法
问题描述:
今日旧电脑崩(哭),新电脑上手,迫不及待地装好pytorch,查看之前的工程运行情况,结果运行模型训练时出错
究其关键句,是加载模型训练数据的语句
for i, data in enumerate(train_loader):
该语句底层应用到了将tensor变量转换为numpy的操作,即
import numpy
import torch
test_torch = torch.rand(100,1,28,28)
print(test_torch.numpy())
# 将产生同样的错误
问题根源
忽略了Pytorch与Tensorflow的直接关联性。
如果环境中只有torch而没有tensorflow,那么torch使用到的tensor变量将失去tensor相关的操作函数,亦如torch.numpy()
解决方法
在基础环境中安装Tensorflow,无论是CPU版本还是GPU版本皆可。
在Anaconda环境中可以直接
conda install tensorflow
否则pip
pip install --ignore-installed --upgrade tensorflow-gpu