MXNet安装与常见问题解决:Encountered error while trying to install package

本文主要讲了什么是MXNet;如何在CPU、GPU上安装MXNet;以及对MXNet安装过程中出现的常见问题给出了具体的解决方法。

文章目录

  • 一、什么是MXNet?
  • 二、MXNet的安装
  • 2.1 在CPU上安装
  • 2.2 在GPU上安装
    • 2.2.1 对于Linux和macOS用户
    • 2.2.2 对于Windows用户
  • 三、常见问题及解决方法
  • 3.1 pip版本过低
    • 3.1.1 命令行更新pip
    • 3.1.2 在Pycharm更新
      • 3.1.2.1 在终端更新
      • 3.1.2.2 在解释器更新
  • 3.2 numpy库安装失败

一、什么是MXNet?

MXNet是亚马逊选择的深度学习库。它拥有类似于Theano和TensorFlow的数据流程图,为多GPU配置提供了良好的配置,有类似于Lasange和Blocks更高级别的模型构建块,并且可以在你想象的任何硬件上运行(包括手机)。

MXNet同样提供了对R、Julia、C++、Scala、Mathlab和Javascript的接口。

二、MXNet的安装

在安装深度学习框架之前,需要检查自己的计算机上是否有可用的GPU,例如:可以查看计算机是否装有NVIDIA并已经安装CUDA。如果计算机上没有GPU,则可以选择安装在CPU上。

2.1 在CPU上安装

在CPU上安装MXNet——通过命令行窗口安装

代码如下:

C:Usersqwqlry>pip install mxnet==1.7.0.post1

使用国内镜像

pip install mxnet==1.7.0.post1 -i https://pypi.tuna.tsinghua.edu.cn/simple –user

MXNet安装与常见问题解决:Encountered error while trying to install package

1.7.0.post1指的是MXNet的版本。若不指定安装版本也可以进行安装,但会存在MXNet安装版本与Python版本不匹配的现象。
代码如下:

C:Usersqwqlry>pip install mxnet

2.2 在GPU上安装

在GPU上安装时,需要知道安装的CUDA的版本。可以通过如下方式进行查询版本。
代码如下:

nvcc --version

或者

cat/user/local/cuda/version.txt

若假设电脑上已经安装了CUDA版本则可以通过以下方式进行安装。

2.2.1 对于Linux和macOS用户

pip install mxnet-cuxx==1.7.0

2.2.2 对于Windows用户

pip install mxnet-cuxx==1.7.0 -f https://dist.mxnet.io/python

在安装时可以根据CUDA的版本改变mxnet-cuxx的最后一位数字,例如:CUDA8.0是cu80.

三、常见问题及解决方法

目前作者遇到的问题有两个:pip版本过低、numpy库报错。

3.1 pip版本过低

当pip版本过低时终端会给出提示信息,此时则只需要根据提示信息更新pip就行了。
同样pip的更新也可以分为:在命令行窗口更新和Pycharm更新。
查询pip版本的代码如下:

C:Usersqwqlry>pip show pip
Name: pip
Version: 21.1.1
Summary: The PyPA recommended tool for installing Python packages.
Home-page: https://pip.pypa.io/
Author: The pip developers
Author-email: distutils-sig@python.org
License: MIT
Location: d:pythonlibsite-packages
Requires:
Required-by:

3.1.1 命令行更新pip

代码如下:

C:Usersqwqlry>python -m pip install –upgrade pip

3.1.2 在Pycharm更新

在Pycharm更新同样可以分为在终端更新和在解释器更新。

3.1.2.1 在终端更新

G:pycharmWorkspace>pip install –upgrade pip

3.1.2.2 在解释器更新

更新版本可以根据提示信息进行修改

3.2 numpy库安装失败

错误详情如下图所示:

MXNet安装与常见问题解决:Encountered error while trying to install package

提示错误:Encountered error while trying to install package numpy

遇到该问题的时候,作者开始以为是numpy库有问题,然后自行下载了numpy库,结果问题没有解决。于是作者在网上查找资料了解到具体原因:MXNet版本和Python版本不匹配。此时则可以通过降低MXNet的版本来解决问题。通过此方法作者下载了低版本的MXNet进行安装并且安装成功了。

pip install mxnet==1.7.0.post1 -i https://pypi.tuna.tsinghua.edu.cn/simple –user

该命令降低MXNet版本为1.0.0,安装成功

MXNet安装与常见问题解决:Encountered error while trying to install package

作者觉得应该有其他解决方法,于是逐一排查错误提示信息,最后发现提示信息中有如下提示

 error: Microsoft Visual C++ 14.0 is required. Get it with “Build Tools for Visual Studio”: https://visualstudio.microsoft.com/downloads/

因此对visual studio进行了安装。修改完后则重新安装所需要的版本的MXNet,此时显示安装成功。

安装visual studio:点击此处即可下载visual studio

125jz网原创文章。发布者:江山如画,转载请注明出处:http://www.125jz.com/11244.html

(0)
江山如画的头像江山如画管理团队
上一篇 2023年1月13日 下午4:40
下一篇 2023年1月14日 上午9:36

99%的人还看了以下文章

  • Java GUI编程高级实例二:弹出式菜单及添加工具栏

    三、 为组件定制弹出式菜单 问题的提出  为“Java Editor”程序的文本编辑区域定制如图所示的的弹出式菜单。 菜单中有五个菜单项组成,分别指示了不同的字体风格,可通过菜单项的选择实现文本区域中文本字体和字号的改变。 用JPopupMenu类建立弹出式菜单 建立弹出式菜单 预先定义一个继承JPopupMenu类的子类,弹出式菜单施加给的对象应由构造方法…

    2020年1月22日
    3.0K0
  • 最清楚的过拟合(Overfitting)、欠拟合讲解

    问题的产生 当我们构建模型时,总会希望假设空间参数尽可能多,系统越复杂,拟合得越好嘛!我们还希望我们的优化算法能使我们的模型产生的损失函数的值尽可能小(即我们的假设空间能够贴合每一个训练样本点)。但这样真的好吗?奥卡姆剃刀貌似又胜利了。然而假设我们的模型达成了上述的情况,有很大概率产生一个ML界非常令人头疼的一件事:过拟合(Overfitting)。 欠拟合…

    2022年9月21日
    4.9K0
  • python 字典的使用案例二:求平均分,并按平均分由高到低输出选手编号和最后得分

    校园好声音大赛,三位选手得分,由8位评委给出。 请根据评分表,将每们选手的得分去掉一个最高分和一个最低分后求平均分,并按照平均分由高到低输出选手编号和最后得分。 dicScores = {‘012’: [90, 94, 97, 86, 85, 89, 88, 85], ‘005’: [91, 91, 92, 98, 90, 96, 90, 95], ‘108…

    2020年1月22日
    11.7K0
  • 超清晰!HTML5 实现手机拍照上传功能原理讲解

    这篇文章主要为大家详细介绍如何使用HTML5利用摄像头拍照实现上传功能,原理讲解非常清晰,具有较大的参考价值。 上传页面代码: 上传图片用的HTML5的file文件上传功能<input type=”file” accept=”image/*”> 因为原生file样式不满足要求,在input上面放置我们想要…

    2022年8月11日
    4.5K0
  • js中var a=b=1和var a=1,b=1的区别

    js中一次性定义多个变量的时候,可以用:var a=1,b=1这种中间用逗号隔开的方式,但有些时候为了省事,直接定义var a=b=1。 那这两种写法方式最后效果是一样的吗?有没有什么区别呢?请大家看下面的范例: 1、用var a=b=1的方式 由上图可以明显看出来,变量b的作用域已经是全局的了,因为在函数外可以调用到(可以正常的输出变量)。 2、用var …

    2022年3月19日
    2.0K0
  • 纯JSP实现计算圆的面积和周长

    一个jsp页面由元素和模板数据组成.元素是必须由jsp容器处理的部分.而模板数据是jsp容器不处理的部分,如jsp中的HTML内容 元素有三种类型: 脚本元素,指令元素, 动作元素 脚本元素:包含三个部分:声明,脚本段,表达式 声明:用于声明在其它脚本元素中可以使用的变量和方法 脚本段:是一段java代码 表达式:java语言中完整的表达式 声明 以<…

    2020年4月3日
    10.0K0

发表回复

登录后才能评论