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)
江山如画的头像江山如画管理团队
pycharm 中pip不是内部或外部命令,也不是可运行的程序或批处理文件(直接解决问题)
上一篇 2023年1月13日 下午4:40
Python 8大知识点——附详细实例代码。
下一篇 2023年1月14日 上午9:36

99%的人还看了以下文章

  • 赞!1条语句快速将python程序打包成可执行文件

    python程序编写好后,如何将python程序打包成成可执行文件呢? 今天125建站网教大家使用pyinstaller打包命令将python程序打包,希望大家有所收获。 一、安装pyinstaller pip3 installer pyinstaller # 清华镜像安装 # pip3 install -i https://pypi.tuna.tsingh…

    2023年2月3日
    2.2K0
  • Python 函数练习-生成指定长度的随机字符串(包含大小写字母,及数字)

    函数在 Python 中,可以通过 def 关键字定义函数,如下代码所示: import random import string def random_str(n): “”” 生成指定 n 长度的随机字符串 “”” s = string.ascii_letters + string.ascii_uppercase + string.digits retur…

    2022年2月3日
    3.7K0
  • Pycharm django 项目下如何创建一个APP

    ‌打开PyCharm并加载你的Django项目‌: 确保你已经安装并打开了PyCharm,并且你的Django项目已经加载在PyCharm中。 ‌打开终端‌: 在PyCharm中,你可以通过点击底部工具栏中的“Terminal”按钮来打开终端。 ‌导航到你的Django项目目录‌: 在终端中,使用cd命令导航到你的Django项目的根目录。例如,如果你的项目…

    2024年12月2日
    1.1K0
  • String、StringBuffer、StringBuilder的区别?

    String在实例化之后,其内存空间的内容大小是不能够被修改的;而StringBuffer是一个线程安全的可变字符序列,在实例化之后可以动态的修改堆内存中的内容,所以内存长度和大小是可变的;StringBuilder实例化之后内存大小长度也是可变的,不同之处在于StringBuilder不是线程同步,因此操作起来必然比StringBuffer更加高效。

    2018年10月24日
    2.9K0
  • Double.valueOf(r).doubleValue();是什么意思

    在一段代码中看到Double.valueOf(“2020”).doubleValue(),先出现了Double.valueOf(),又用了doubleValue(),有点迷惑,为什么这么用呢? <% String s=request.getParameter(“radius”); double r; if(s!=null) {r…

    2019年9月5日
    14.4K0
  • 最全!jsp连接各种数据库代码及读取数据实例

    有好多jsp初学者经常会问数据库怎么连接?我怎么连接不上数据库、语句怎么总是出错?所以中国网页设计写篇文章供大家参考,主要包括以下7种数据库的链接。 一、jsp连接MySQL数据库 二、jsp连接Sql Server7.0/2000数据库 三、jsp连接DB2数据库 四、jsp连接Informix数据库 五、jsp连接Sybase数据库 六、jsp连接Pos…

    2020年12月6日
    11.1K0

发表回复

登录后才能评论