【Mindspore】深度学习、MindSpore使用与杂七杂八
没有什么用的目录
- 1. Linux使用GPU
- 1.1 Win10使用Linux子系统
- 1.2 使用Docker for Windows
- 2. 深度学习环境配置
- 2.1 Anaconda
- 2.2 CUDA与cuDNN
- 2.3 pytorch
- 2.4 MindSpore
- 3. mindspore踩坑相关
- 3.1 metrics
1. Linux使用GPU
众所周知的,Mindspore的GPU版本只能在Linux系统上使用。并且VMWare虚拟机无法使用主机的GPU资源,除非显卡支持虚拟化。以下是两种解决方案:
1.1 Win10使用Linux子系统
参考:
- Win10 系统安装 Linux 子系统教程
- win10 子系统 ubuntu GPU驱动
- win10中ubuntu子系统从系统盘迁移到其他盘
开启Linux子系统:
- 开启【开发者模式】;
- 【控制面板> 程序> 程序和功能】,开启【适用于 Linux 的 Windows 子系统】,重启;
- 在应用商店选择Ubuntu并下载,启动,设置用户名和密码;
- powershell通过
wsl -l -v
查看分配给每个已安装的 Linux 分发版的 WSL 版本; - 使用LxRunOffline将子系统从C盘迁移出来。
至此,Linux子系统开启完毕。使用GPU需要升级到WSL2:
- 【控制面板> 程序> 程序和功能】,开启【虚拟机平台】,重启;
- 下载并安装适用于 x64 计算机的 WSL Linux 内核更新包;
- powershell’通过
wsl --set-version Ubuntu 2
设置WSL版本为2。
Windows端更新支持WSL的显卡驱动:
- 下载支持WSL的CUDA→CUDA on Windows Subsystem for Linux (WSL),会替代原有的CUDA;
- 根据CUDA版本选择对应的cuDNN→cuDNN download。
- Win和Linux执行
nvidia-smi
,结果一致即可。
1.2 使用Docker for Windows
- 开启WSL2同上,安装CUDA和cuDNN同上;安装Docker for Windows;
- 随便拉一个容器,使用
-gpus all
命令即可允许容器使用主机GPU; - 容器内执行
nvidia-smi
,与主机结果一致即可;docker pull ubuntu:18.04 docker run --gpus all -it ubuntu:18.04 /bin/bash
- 基础配置,ssh远程连接:
①配置密码;
②vim /etc/ssh/sshd_config
→修改PermitRootLogin yes
→service ssh start
重启服务;
③ipconfig
查看本机ip地址;
④docker端口映射,远程使用IP:50001
登陆即可docker commit {Container ID} ubuntu-dl docker run --gpus all -it -p 50001:22 ubuntu-dl /bin/bash
2. 深度学习环境配置
2.1 Anaconda
- 清华镜像库:选择想要的版本下载并安装,配置环境变量;
wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2022.10-Linux-x86_64.sh
bash ./Anaconda3-2022.10-Linux-x86_64.sh
export PATH=$PATH:/root/anaconda3/bin
- 创建虚拟环境。
conda create -n mindspore-py37 python=3.7#解决CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'.
source ~/anaconda3/etc/profile.d/conda.sh
conda activate mindspore-py37
2.2 CUDA与cuDNN
安装CUDA11.1:
wget https://developer.download.nvidia.com/compute/cuda/11.1.1/local_installers/cuda_11.1.1_455.32.00_linux.run
sudo sh cuda_11.1.1_455.32.00_linux.run
echo -e "export PATH=/usr/local/cuda-11.1/bin:\$PATH" >> ~/.bashrc
echo -e "export LD_LIBRARY_PATH=/usr/local/cuda-11.1/lib64:\$LD_LIBRARY_PATH" >> ~/.bashrc
source ~/.bashrc
安装cuDNN8.7,下载→cuDNN Download:
tar -xf ./cudnn-linux-x86_64-8.7.0.84_cuda11-archive.tar.xz
chmod 666 /usr/local/cuda/include
cd ./cudnn-linux-x86_64-8.7.0.84_cuda11-archive
cp ./include/cudnn*.h /usr/local/cuda/include
cp ./lib/libcudnn* /usr/local/cuda/lib64
chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*
查看版本,测试安装是否成功:
(mindspore-py37) root:/# nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2020 NVIDIA Corporation
Built on Mon_Oct_12_20:09:46_PDT_2020
Cuda compilation tools, release 11.1, V11.1.105
Build cuda_11.1.TC455_06.29190527_0
(mindspore-py37) root:/# cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
#define CUDNN_MAJOR 8
#define CUDNN_MINOR 7
#define CUDNN_PATCHLEVEL 0
--
#define CUDNN_VERSION (CUDNN_MAJOR * 1000 + CUDNN_MINOR * 100 + CUDNN_PATCHLEVEL)/* cannot use constexpr here since this is a C-only file */
2.3 pytorch
在PyTorch官网寻找对应的版本,根据提供的命令安装即可。
我的环境是:CUDA=11.1,cuDNN=8.7.0,python=3.7;对应的pytorch版本为1.8。
注意:如果anaconda更换了清华源则不能使用conda安装,请使用pip。
具体原因可以参考torch.cuda.is_available()返回false——解决办法这篇博客,简单说就是清华源的问题。
pip install torch==1.8.0+cu111 torchvision==0.9.0+cu111 torchaudio==0.8.0 -f https://download.pytorch.org/whl/torch_stable.html
测试:
>>> import torch
>>> torch.cuda.is_available()
True
2.4 MindSpore
参考MindSpore官网即可,安装gcc和1.9版本的MindSpore。
apt-get install gcc -y
export MS_VERSION=1.9.0
# CUDA11.1 + Python3.7
pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/${MS_VERSION}/MindSpore/gpu/x86_64/cuda-11.1/mindspore_gpu-${MS_VERSION/-/}-cp37-cp37m-linux_x86_64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple
测试:
>>> import mindspore
>>> mindspore.run_check()
MindSpore version: 1.9.0
The result of multiplication calculation is correct, MindSpore has been installed successfully!
3. mindspore踩坑相关
3.1 metrics
metrics (Union[dict, set]) - 用于模型评估的一组评价函数。例如:{‘accuracy’, ‘recall’}。默认值:None。
可以通过nn.names()
获取所有评价函数列表,如下:
>>> import mindspore
>>> names = mindspore.nn.names()
>>> print(names)
['F1', 'acc', 'accuracy', 'auc', 'bleu_score', 'confusion_matrix', 'confusion_matrix_metric', 'cosine_similarity', 'dice', 'hausdorff_distance', 'loss', 'mae', 'mean_surface_distance', 'mse', 'occlusion_sensitivity', 'perplexity', 'precision', 'recall', 'roc', 'root_mean_square_distance', 'top_1_accuracy', 'top_5_accuracy', 'topk']
【Mindspore】深度学习、MindSpore使用与杂七杂八相关推荐
- 深度学习mindspore --- win10系统cpu下安装mindspore
从官网上看上面没有说支持win10 . 但是实际上已经支持win10了,只是没有官网更新.安装方法如下. 只支持cpu. 版本也是唯一的.没有选择. win10官方网站. https://www.m ...
- 【MindSpore深度学习框架】MindSpore中的张量Tensor
文章目录 一.Tensor是什么 二.构造张量 三.Tensor的运算.属性.方法 1.运算 2.属性 3.方法 欢迎回到MindSpore神经网络编程系列.在这篇文章中,我们将通过MindSpore ...
- 一文读懂深度学习:这个AI核心技术被美国掌控,很危险
2019-11-28 18:39:22 "中国有多少数学家投入到人工智能的基础算法研究中?" 今年4月底,中国工程院院士徐匡迪等多位院士的发声,直击我国在算法这一核心技术上的缺失, ...
- 在Win10游戏本中搭建MindSpore-GPU的深度学习环境
在Win10游戏本中搭建MindSpore-GPU的深度学习环境 背景 一."金字塔"项目目标 二.系统环境 三.避大坑 四.安装过程 1.加入Windows Insider计划 ...
- 从TensorFlow到DL4J——主流深度学习框架对比分析
从TensorFlow到DL4J--主流深度学习框架对比分析 2022年2月22日 极链AI云 官网地址 点击注册 更多AI小知识,关注<极链AI云>公众号 文章目录 从TensorFlo ...
- 深度学习框架的来龙去脉——史上最全面最新的深度学习框架对比分析
一.深度学习框架概述与深度学习技术的四大阵营 人工智能从学术理论研究到生产应用的产品化开发过程中通常会涉及到多个不同的步骤和工具,这使得人工智能开发依赖的环境安装.部署.测试以及不断迭代改进准确性和性 ...
- 又是华为!对标 TensorFlow、PyTorch,深度学习框架 MindSpore已开源!附入手公开课...
Datawhale 作者:Datawhale 摘要:随着深度学习框架等工具的全面开源,最强 AI 处理芯片昇腾的落地,华为的 AI 布局已经逐渐清晰起来,MindSpore 将为各行业带来哪些新变化, ...
- 刚刚,华为全场景 AI 计算框架MindSpore正式开源!国产深度学习框架的春天来了!...
关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! 此前,我们刚刚报道了旷视科技在3月25日开源深度学习框架 MegEngine ,3 ...
- 华为开源深度学习框架MindSpore背后的商业野心
最近华为开源了深度学习框架MindSpore,一时成为了热点.我之前也点评了很多微软.Google.腾讯等厂商的框架,有些点评文章还被官方社区收录,今天为大家解析下MindSpore. 首先阐明下我个 ...
最新文章
- g-git 相关命令 及其 基本原理探索(二):git 在工作中的常用命令操作 ,超级实用!!!
- 简单的介绍一下怎样如何学习Java基础
- python —skleran分类示例(全流程)
- php中的冒号应用,php中双冒号的应用
- Linux基础优化方法(三)———字符集编码设置优化
- pythonpil模块安装_centos 安装python PIL模块
- 规模化敏捷必须SAFe
- [JavaWeb-XML]XML组成部分
- 交换两幅图像的幅度谱和相位谱,并重构图像
- 电脑调整分区后盘符丢失的资料怎样找到
- SQL Server 默认跟踪 -- 捕获事件详解
- arch linux界面优化,ArchLinux美化之界面美化
- xp系统关闭闲置服务器,教你win10系统空闲进程占用cpu怎么关闭
- bzoj1050 [HAOI2006]旅行comf
- 金融信息安全实训 课堂笔记5
- 视频会议终端到终端的加密
- 吉林大学珠海学院c语言考试题,吉林大学珠海学院-c语言试卷_a卷.doc
- [Java]Mybatis学习笔记(动力节点老杜)
- mysql 瘦身_Mysql瘦身方法_MySQL
- iwatch 1234 代的区别