Windows系统下利用Anaconda搭建MXNet框架

news2024/11/17 15:54:43

1、mxnet

MXNet 是一个深度学习库,类似于Theano 和 TensorFlow。最近想搞下深度学习,于是便安装mxnet。之前安装过TensorFlow,也踩了很多坑,可谓是历经波折。有的时候,配置环境真的是一门玄学。

2、关于网上的一些教程

网上大部分教程有一个误区,新手很容易就踩坑。现在很多人都有了性能较好的笔记本,配备了较好的独显,像RTX 3060、RTX3070,甚至80和90系列。所以对于小规模数据,利用GPU来加速训练便十分方便。这就需要安装CUDA。CUDA是NVIDIA推出的通用并行计算架构,通过利用 GPU 的处理能力,可大幅提升计算性能。CUDA Toolkit Archive的官网:传送门。

要利用GPU,就要安装mxnet的GPU版本,这就需要用到CUDA。很多教程都是让你在官网下载对应版本的CUDA,然后安装。如下图:
在这里插入图片描述

上面这张图片,是把CUDA安装在了本地。实际上,这样做是没有用的。后面在Anaconda环境里面也是找不到的。其实只需要直接在conda虚拟环境中安装即可。

3、安装步骤

1、先安装好Anaconda,这玩意是个神器,管理各种python库很方便。安装很简单,就是一直下一步即可。这里还是简单提一下:
在这里插入图片描述
这步随便,我选的是Just Me。其实没啥影响,毕竟自己电脑肯定只有自己用。
在这里插入图片描述
这步可以2个都勾上,下面的是把python作为系统默认的版本。上面是加入系统环境变量,其实都没啥用。因为我们要建立互相独立,互不影响的环境。

2、安装好以后,在开始菜单会出现如下选项:
在这里插入图片描述
我习惯用“Anaconda Prompt”,即第三个选项。它和“Anaconda Powershell Prompt”差不多。
打开Prompt。然后创建虚拟环境,命令如下:

conda create -n mxnetcu102 python=3.7

这里需要注意,mxnetcu102是可以自己随便写的,只是环境的名字,我是为了方便辨认,所以这样命名。后面的是指定python版本。最好用python3.7,如果是更高的版本(目前最新的是python3.11)可能不支持。

3、创建好环境以后,使用命令"conda env list" 可以查看当前环境列表。

conda activate mxnetcu102 激活虚拟环境
conda list 查看已经安装的包

创建和激活虚拟环境后,接下来需要安装cuda10.2的版本。注意,这里选择什么样的cuda版本很重要,可以参照下图:(传送门)
在这里插入图片描述
我选的是cuda10.2,因为它可以支持mxnet1.6.0至1.9.1的所有版本,兼容性最好。大家可以自行根据需求选择,我的仅供参考。
也可也参考下图:(传送门)
在这里插入图片描述
确定好cuda版本后,使用如下命令安装:

conda install cudatoolkit=10.2

安装完成如下图:
在这里插入图片描述
4、安装好cuda以后,接下来才是真正的安装mxnet。注意,因为mxnet目前还没有提供 conda 安装的方式,只能用pip安装,conda不行(mxnet 早期为了方便用户,提供了各个不同的 cuda、mkl 等等的编译版本供使用,但是一直没有提供 conda 安装的方式):
在这里插入图片描述
运行命令:

pip install mxnet-cu102==1.7.0

如果出现以下错误:
在这里插入图片描述
使用下面命令:

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

这里引入了mxnet的官方源,因为一般第三方源无法下载mxnet的比较新的版本(基本上会少2代),需要直接从官网下载才能保证是最新的版本。

官方镜像源很慢,会导致timeout安装出错,可以采用迅雷下载:

下载链接:
https://repo.mxnet.io/dist/python/cu102/mxnet_cu102-1.7.0-py2.py3-none-win_amd64.whl
安装:
pip install D:\Download\xunlei\mxnet_cu102-1.7.0-py2.py3-none-win_amd64.whl
设置pip镜像源:
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

安装成功,验证代码:

import os
import mxnet as mxnet
print(mxnet.__version__)

此外,每个虚拟环境需要单独安装Jupyter和Spyder。可以通过命令,也可也通过anaconda控制面板。

conda install ipykernel
conda install spyder

4、CPU版

CPU版安装十分简单,一条命令解决问题:conda install mxnet
因此,新手如果使用CPU版,可以省去很多麻烦。
PS:不管是CPU版还是GPU版,cuDNN是不需要额外安装的。下图为错误教程:
在这里插入图片描述

更多内容关注笔者公众号:极客随想

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/173197.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

手把手教你学习单片机-硬件基础知识

去耦电容的应用 C16 和 C19 起到的作 用是一样的,C10 的作用和他们两个不一样。 容值比较大的电容,理论上可以理解成水缸或者水池子,同时,大家可以直接把电流理 解成水流。 作用一,缓冲作用。当上电的瞬间,电流从电源处流下来的时候,不稳定,容易冲击电 子器件,加个…

基于云的文档管理系统——随时随地办公

如果您正在建立现代数字业务,您需要灵活地移动和分配您的劳动力。 DocuWare 移动劳动力解决方案可帮助您构建新的生产力模式:随时随地、任何设备。 毫不费力地捕捉、即时访问、始终安全 DocuWare 文档管理和工作流程自动化意味着当前流程的业务信息。 访…

【shell教程】| 简介及基本使用案例

文章目录一、简介二、脚本1 格式2 执行方式3 变量自定义变量特殊变量4 运算符5 条件判断6 流程控制1 if判断2 case语句3 for循环4 while 循环七、read读取控制台输入八、函数1 basename2 dirname3 自定义函数九、正则表达式十、文本处理工具1 cut2 grep3 sed4 awk一、简介 常见…

在线支付系列【1】支付演变史

有道无术,术尚可求,有术无道,止于术。 文章目录支付货币发展史物物交换实物货币纸质货币电子货币数字货币支付模式演变一方支付(现金当面支付)二方支付(商家银行)第三方支付(商家、银…

【GD32F427开发板试用】工业级串口OTA实现----移植韦东山老师BootLoader项目

本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动,更多开发板试用活动请关注极术社区网站。作者:足球之路 一、综述 一款完善的工业产品往往需要支持在线更新程序的需求,业界最近火热的叫法叫做“OTA”。这篇文章记录我利用技术…

2001-2020年中国区域创新能力总、分指标效用值

中国区域创新能力总、分指标效用值2001-2020 1、时间:2001-2020年 2、范围:全国31个省份 3、来源:中国区域创新能力评价BG 4、指标包括: 区域创新能力综合效用值、知识创造效用值、知识获取效用值、企业创新效用值、创新环境…

《Composing Programs》(SICP python版) chap1 笔记(2)

《Composing Programs》(SICP python版) chap1 笔记(2) 文章目录《Composing Programs》(SICP python版) chap1 笔记(2)Chapter 1: Building Abstractions with Functions1.3 Defining New Functions1.3.1 EnvironmentsFunction Signatures(看语境翻译为函数原型比较…

【论文翻译】ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation

【论文】https://arxiv.org/abs/2204.12484v3 【github】GitHub - ViTAE-Transformer/ViTPose: The official repo for [NeurIPS22] "ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation" and [Arxiv22] "ViTPose: Vision Transformer F…

IO流操作

文章目录一、字符集常见字符集编码、解码操作二、IO流FileInputStreamFileOutputStreamFileReaderFileWriter常见问题一、字符集 常见字符集 我们的计算机底层是不可以直接存储字符的,计算机中底层只能存储二进制(0、1),同时二进制是可以转换成十进制的…

Fluent UDF编译环境配置 VS2019

Fluent UDF编译环境配置 VS2019环境配置问题记录继续记录调试过程仅用一个host仅用一个node两个都放进去换个电脑继续报错记录错误环境配置 生成PATH文件的,有的没有权限在当前文件夹,可以用这个命令,还是原来的代码,就是改一下 …

趣味三角——前言和序言

目录 1. 前言 2. 序言 2.1 抄写员Ahmes,公元前1650年 2.2 古埃及的趣味数学 1. 前言 There is perhaps nothing which so occupies the middle position of mathematics as trigonometry. (也许,没有什么东西像三角学一样占据数学的中心位置…

离散数学-图论-欧拉图、哈密顿图、二部图、平面图(14)

欧拉图、哈密顿图、二部图、平面图 1 欧拉图 无向图G是欧拉图⇔\Leftrightarrow⇔G连通,且无奇度点。无向图G是半欧拉图⇔\Leftrightarrow⇔G连通,且仅有两个奇度点。有向图G是欧拉图⇔\Leftrightarrow⇔G强连通,且所有顶点的入度出度。有向图G是半欧拉图⇔\Leftrightarrow⇔…

登录时“自动填充”和“验证码”的实现

自动填充和验证码的实现需求1. 基础登录功能1.1 持久层pojo实体类:代理接口:1.2 业务层1.3 表现层login.jsp(登陆界面):LoginServlet:selectAllServlet:brand.jsp(登陆成功&#xff…

30.Isaac教程--Costmap规划器

Costmap规划器 ISAAC教程合集地址: https://blog.csdn.net/kunhe0512/category_12163211.html 文章目录Costmap规划器组件消息入门自定义图使用自定义地图改变规划器将 Costmap 添加到视线中将通道添加到配置Isaac SDK 中的标准导航规划器指示机器人在避开障碍物的同时采用最短…

赛意SMOM和金蝶云星空单据接口对接

赛意SMOM和金蝶云星空单据接口对接数据源系统:金蝶云星空金蝶K/3Cloud在总结百万家客户管理最佳实践的基础上,提供了标准的管理模式;通过标准的业务架构:多会计准则、多币别、多地点、多组织、多税制应用框架等,有效支持企业的运营…

数据结构进阶 unordered系列的效率对比

作者:小萌新 专栏:数据结构进阶 作者简介:大二学生 希望能和大家一起进步! 本篇博客简介:对比map set和unordered系列map和set的效率 unordered系列的效率对比map/set与unordered_map/unordered_set的区别map/set与uno…

HTTP简史

今天一起来研究Http协议的一些事情,通过本文你将了解到以下内容:Http协议各版本的对比和优缺点Http2.0协议相关的SPDY协议、二进制分帧协议、多路复用、首部压缩、服务推送等基本原理HTTP3.0和QUIC协议乘风破浪前往知识的海洋吧,要开船了&…

Linux常用命令——telnet命令

在线Linux命令查询工具(http://www.lzltool.com/LinuxCommand) telnet 登录远程主机和管理(测试ip端口是否连通) 补充说明 telnet命令用于登录远程主机,对远程主机进行管理。telnet因为采用明文传送报文,安全性不好,很多Linux服务器都不开…

【Java IO流】字符流详解

文章目录1. 前言2. 字符输入流3. 字符输出流4. 字符流底层原理解析4.1 字符输入流4.2 字符输出流1. 前言 在上一篇字符集详解中我们说到了产生乱码的原因,要么是读取数据时未读完整个汉字,要么是因为编码和解码的方式不统一,对于后者我们只需…

PromQL之函数

Prometheus 版本 2.41.0 平台统一监控的介绍和调研直观感受PromQL及其数据类型PromQL之选择器和运算符PromQL之函数 PromQL 聚合函数 PromQL 的聚合函数只能用于瞬时向量,支持的聚合函数有: sum 求和min 最小值max 最大值avg 平均值group 分组&#xf…