目录

一、背景

二、软硬件

三、避坑

坑1:网速

坑2:操作系统选择

坑3:GPU与CPU

坑4:显卡驱动选择

坑5:Pytorch安装

四、安装过程

1. Anaconda

2. Cuda

3. CuDNN

4. Pytorch

5. Fastai v1

7. Date

8. Test

五、结论

参考


一、背景

长久以来我们接受的都是传统的自下为上的学习模式,也就是从基础知识到高级概念再到实践的教育。而在fast.ai的课程里,Jeremy Howard 提倡的是自上而下的学习方法,也就是回归到人最自的学习方法。

在课程中,Jeremy 就是贯彻着这样的教学理念,从一开始就让大家先别管具体的原理,按照他所教的方法把机器学习的模型实现出来,让大家以最快的速度感受到这项技术的力量以及降低对它的恐惧感。

如果你也在学习深度学习,也刚刚接触fastai项目,正在为环境而挠头,那么本文便有意义了。官网乱糟糟的引用与说明,着实为入门者配置环境留下了很多的坑,下面我将一一道来。


二、软硬件

本文搭建fastai v1环境,采用Win10操作系统、MX250 GPU显卡、CUDA10.1显卡驱动、cuDNN驱动补丁、Pytorch1.0.0框架,具体SW&HW如下所示。

  • OS:Win10

  • RAM:8G/16G+

  • GPU:MX250

  • Anaconda:Anaconda3-5.2.0-Windows-x86_64

  • Nvidia Cuda:v10.1

  • Cudnn:cuDNN v8.0.3 (August 26th, 2020), for CUDA 10.1

  • Pytorch:v1.0.0

fastaiv1环境需要达到以下配置才安装完成,“python -m fastai.utils.show_install”命令查看:

(fastaiv1) C:\Users\zhangsan>python -m fastai.utils.show_install```text
=== Software ===
python        : 3.6.12
fastai        : 1.0.61
fastprogress  : 0.2.7
torch         : 1.0.0
nvidia driver : 443.32
torch cuda    : 9.0 / is available
torch cudnn   : 7005 / is enabled=== Hardware ===
nvidia gpus   : 1
torch devices : 1- gpu0      : 2048MB | GeForce MX250=== Environment ===
platform      : Windows-10-10.0.17763-SP0
conda env     : fastaiv1
python        : C:\Users\zhangsan\anaconda3\envs\fastaiv1\python.exe
sys.path      :C:\Users\zhangsan\anaconda3\envs\fastaiv1\python36.zip
C:\Users\zhangsan\anaconda3\envs\fastaiv1\DLLs
C:\Users\zhangsan\anaconda3\envs\fastaiv1\lib
C:\Users\zhangsan\anaconda3\envs\fastaiv1
C:\Users\zhangsan\anaconda3\envs\fastaiv1\lib\site-packages
C:\Users\zhangsan\anaconda3\envs\fastaiv1\lib\site-packages\win32
C:\Users\zhangsan\anaconda3\envs\fastaiv1\lib\site-packages\win32\lib
C:\Users\zhangsan\anaconda3\envs\fastaiv1\lib\site-packages\Pythonwin
```Please make sure to include opening/closing ``` when you paste into forums/github to make the reports appear formatted as code sections.(fastaiv1) C:\Users\zhangsan>

三、避坑

  • 坑1:网速

最最最重要的网速,建议:网络不好的兄弟,建议关机,立刻马上。要不fastai没安装好,你已经自闭了,我这300M的网速,凌晨(非高峰时段)下载才稳一点,供参考。


  • 坑2:操作系统选择

        fastai官网的fastai v1安装指南建议使用Linux操作系统,Windows操作系统也支持但不增加新功能,MacOS还在开发中,见摘文,作为技术开发人员一般都会选择Linux,比如Ubuntu,对不对;如果你不了解Nvidia显卡,也没有专门的Linux系统机器,同样,作为技术开发人员一般都会选择虚拟机,比如Ubuntu VM,对不对。

以上全错!

建议:要么Windows,要么Linux,不要VM。因为虚拟机用的模拟显卡,Nvidia目前并不支持。如果在Windows上安装Ubuntu虚拟机,实现虚拟机借用宿主机显卡的方式,途径有二:Hyper-V PCI与1虚多显卡,感兴趣可以去了解下。然而,可行性极低,不如直接装个双系统来的实在。

摘自fastai v1官网:

NB:fastai v1 currently supports Linux only, and requires *PyTorch v1* and Python 3.6 or later. Windows support is at an experimental stage: it should work fine but it's much slower and less well tested. Since Macs don't currently have good Nvidia GPU support, we do not currently prioritize Mac development


  • 坑3:GPU与CPU

fastai官网的fastai v1安装指南说GPU或者CPU都支持,见摘文。建议:有条件上GPU。因为当你的神经网络规模越是复杂,其对性能的要求越高,终端CPU难以满足要求。

摘自fastai v1官网:

Starting with pytorch-1.x you no longer need to install a special pytorch-cpu version. Instead use the normal pytorch and it works with and without GPU. But you can install the cpu build too.​


  • 坑4:显卡驱动选择

Nvidia官网的CUDA下载中心可以手动查找适用于你电脑的驱动程序,输入你的电脑显卡配置、操作系统、下载类型等,官网自动给你推荐适用于电脑配置的最新版驱动程序;Nvidia官网的CuDNN下载中心可以注册登录后给你推荐并免费下载。

建议:Nvidia CUDA的版本,务必于你笔记本Gpu显卡版本对应;Nvidia CuDNN的版本,务必于Nvidia CUDA版本对应。如果你使用Nvidia CUDA 10.1版本,那么务必使用cuDNN v8.0.3 (August 26th, 2020), for CUDA 10.1版本。


  • 坑5:Pytorch安装

在线代码编辑器jupyter notebook目前对Pytorch v1.0.0版本支持的较好,所以我下载了Pytorch v1.0.0。如无法使用jupyter notebook,可参照以下引用,卸载非v1.0.0版本的pytorch再安装。

建议:使用Conda下载Pytorch前,务必更新到最新版Conda(今天最新版本是4.9.x)与国内下载源(清华源等),具体更新方式见下文。

摘自博文:

If you have an error running a notebook in your fastai environment, check your Pytorch version. It must be 1.0.0. If you have a different version of Pytorch, run the following code to install the Pytorch version 1.0.0:

conda uninstall pytorch --force
conda install pytorch=1.0.0

四、安装过程

1. Anaconda

Anaconda工具集包括Conda、Python以及一大堆安装好的工具包,比如:numpy、pandas等;Miniconda包括Conda、Python;其中,Conda是一个开源的包、环境管理器,可以用于在同一个机器上安装不同版本的软件包及其依赖,并能够在不同的环境之间切换。和Python相对应,Anaconda的版本分为Anaconda2(Python2.x)和Anaconda3(Python3.x),提供32位和64位下载。

如果你的Win10里还没有安装python,建议先安装Anaconda,anaconda会自动帮你安装python,anconda安装完成会自动生成base虚拟环境,十分方便。可以直接网上搜官网(速度较慢),或者清华镜像(速度较快),我是官网下载的Anaconda3-5.2.0-Windows-x86_64.exe版本,安装好后将目录添加到环境变量即可,具体操作如下:


  • 安装anaconda.exe

官网下载镜像,注意anaconda与python对应关系,如下图所示。

exe格式傻瓜式安装,记得勾选:

Add anaconda to the system PATH enviroment variable


  • 配置环境变量PATH

若勾选“Add anaconda to the system PATH en...”无需配置;未勾选,请自行搜索配置过程,这里不再详述。


  • 测试

完成以上过程,可以使用“conda --version”命令测试是否成功:

C:\Users\zhangsan>conda --version
conda 4.9.2C:\Users\zhangsan>

如果输出conda x.x.x之类的就说明环境变量设置成功了。为了避免可能发生的错误,我们在命令行输入以下两条命令先把所有工具包进行升级,为安装Pytorch做准备【坑5】。

conda update conda
conda update --all

2. Cuda

CUDA是建立在NVIDIA的CPUs上的一个通用并行计算平台和编程模型,基于CUDA编程可以利用GPUs的并行计算引擎来更加高效地解决比较复杂的计算难题。近年来,GPU最成功的一个应用就是深度学习领域,基于GPU的并行计算已经成为训练深度学习模型的标配。CUDA不是专门针对深度学习的,任何算法都可以使用CUDA重写从而在GPU上运行。总的来说,Cuda安装较为简单,直接从官网下载exe文件进行安装,注意与后面的Cudnn版本一致就好。

  • 下载Cuda

Cuda驱动下载注意与你的电脑GPU显卡驱动对应【坑4】。

不建议使用:Nvidia官网的CUDA下载中心可以手动查找适用于你电脑的Cuda驱动程序,我的是Greforce MX250 Gpu显卡,如下图(不知道怎么查看自己显卡信号的可以下载鲁大师,硬件扫描查看)。

建议使用:Cuda各版本下载自行选择版本号,我这里选择的10.1版本,显卡驱动查询见博文。下载对应版本Cuda后即可exe自定义安装。

备注:如果你不需要VS,可以Cuda选择自定义安装,去掉VS安装选项即可。注意去掉后pip安装有些软件可能会因为缺失VC++2014卡死,见博文。

  • 配置环境变量Path

Cuda环境变量,右击我的电脑、属性、高级系统设置、系统属性、高级、环境变量下分别设置用户环境变量与系统环境变量,如下图所示:

备注:这里注意核对你的cuda安装路径。

  • 测试

完成以上过程,可以使用“nvcc -V”命令测试是否成功:

C:\Users\zhangsan>nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2019 NVIDIA Corporation
Built on Fri_Feb__8_19:08:26_Pacific_Standard_Time_2019
Cuda compilation tools, release 10.1, V10.1.105C:\Users\zhangsan>

3. CuDNN

CuDNN是基于CUDA的深度学习GPU加速库,专门为深度学习算法服务的;同一个深度学习算法用CuDNN+CUDA实现相比直接CUDA实现效率更高,运行速度更快,资源消耗更少。CuDNN下载需要先注册后下载,所以第一次下载的请注册吧。

  • 下载CuDNN

CuDNN驱动下载注意与你Cuda驱动对应【坑4】。

CuDNN下载中心,如果你使用Nvidia CUDA 10.1版本,那么务必使用cuDNN v8.0.3 (August 26th, 2020), for CUDA 10.1版本。

  • 安装CuDNN

下载下来后是一个压缩包,解压后得到三个文件夹bin ,include 和lib。然后,将解压后得到的的bin ,include 和lib文件夹分别复制到cuda安装路径下与cuda的bin ,include 和lib文件夹合并。

  • 测试

完成以上过程,可以使用以下命令测试是否成功:

cd C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\extras\demo_suite    # 进入cuda安装目录下的demo_suite文件夹内.\deviceQuery.exe    #执行.\deviceQuery.exe

4. Pytorch

PyTorch是一个开源的Python机器学习库,基于Torch,用于自然语言处理等应用程序。2017年1月,由Facebook人工智能研究院(FAIR)基于Torch推出了PyTorch。它是一个基于Python的可续计算包,提供两个高级功能:1、具有强大的GPU加速的张量计算(如NumPy)。2、包含自动求导系统的深度神经网络。

注意:本安装方式提供给不需要安装fastai的人;若是需要安装fastai,即进行【5.fastai】的人可以忽略pytorch的安装;Pytorch可有conda安装,或者网络较慢可先行下载tar.gz2安装包后本地安装;

  • 方法1:conda在线安装

1)更新Conda

使用Conda下载Pytorch前,务必更新到最新版Conda【坑5】,具体内容请下拉参照【5. Fastai】【conda更新】。

2)更换国内源

这是官网推荐的默认下载方式,由于某些众所周知的原因,国内下载很慢甚至会失败,所以建议采用清华镜像。在conda下运行以下命令设置从清华镜像源下载。

# 添加Anaconda的清华镜像
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/# 设置搜索时显示通道地址
config --set show_channel_urls yes 

3)安装Pytorch

其安装需要到pytorch官网选择相应版本的pytorch。

复制网站的下载命令在cmd执行即可。

# 国内源
conda install pytorch torchvision cudatoolkit=10.1# 国外默认源
conda install pytorch torchvision cudatoolkit=10.1 -c pytorch

备注:-c pytorch -c fastai -c conda-forge表示使用默认官网源,不加表示使用.condarc中的源(国内清华源存放位置)

  • 方法2:先下载后本地安装

1)下载安装包

点击anaconda cloud官网搜索pytorch,然后Ctrl+f搜索对应的版本tar.gz2安装包。如这里搜索1.0.0.

然后,点击file后可见多个版本的安装包,注意cuda版本、python版本、以及conda版本号。

2)conda本地安装

下载到本地后执行以下命令完成安装:

# conda安装本地tar.ba2包,需先cd到该包路径下
conda install --use-local pytorch-1.0.0-py2.7_cuda9.0.176_cudnn7.4.1_1.tar.bz2
  • 测试

完成以上过程,可以使用以下命令测试是否成功:

import torch
torch.cuda.is_availabe()

5. Fastai v1

  • Conda/Pip更新

为了避免各种奇怪的Errors,强烈建议先将工具Pip/Conda更新至最新版本【坑5】,更新方式如下:

  • Conda更新

1.1)conda自身更新

执行“conda update conda”更新后,再次执行"conda update conda",直到查看conda为最新版本为止【坑5】。命令如下:

conda update conda   # 该命令连续执行至少两次conda --version    #查看conda版本信息

1.2)conda依赖环境中软件更新

conda update --all
  • Pip更新

# 更新 pip/setuptools
pip install -U pip setuptools cython -i https://pypi.douban.com/simple

  • fastai安装

fastv1安装目前有两种常用方法,利用conda/pip安装,或者yml安装。

  • 方法1:conda install安装

总体思路:首先生成一个虚拟环境;然后进入该虚拟环境中,利用conda/pip从官网直接下载fast及其依赖环境。

1)生成虚拟环境

conda create -n fastai_env python=3.6

若是下载成功,可以采用以下两条命令查看fastai虚拟环境并进入。

conda env list
conda activate fastai_env    #这里fasiai_env是虚拟环境名

2)下载fastai项目

两种方法Conda或者pip:

conda install直接下载官网fastai工程:

conda install fastai pytorch=1.0.0 -c fastai -c pytorch -c conda-forge

备注:-c pytorch -c fastai -c conda-forge表示使用默认官网源,不加表示使用.condarc中的源(国内清华源存放位置)

或pip安装

# 这里没有采用清华源,感觉豆瓣源要更加快一些
pip install fastai==1.0.0 -i https://pypi.douban.com/simpleor# pip备用加速命令
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn fastai==1.0.0
  • 方法2:yml安装

总体思路:首先下载官方fastv1代码,源码自行编译或者.git直接clone等;然后利用fastaiv1下的environment.yml依赖环境联网下载所需要的软件集。

1)下载fastai项目

git克隆官网fastai工程:

git clone https://github.com/fastai/fastai.git

2)生成依赖环境

克隆到本地后,进行fastai目录:

cd fastai

两种方式可以下载依赖环境,这两种方式Conda都会使用fastai目录里的environment.yaml帮你创建一个名为fastai的虚拟环境,建议将文件里的pytorch版本设置为1.0.0【坑5】。这个过程时间较长,需要网速给力【坑1】,我下载时间按hour计。若下载失败了,请再次下载;或者更换其他国内源下载;或者继续使用默认国外源翻墙下载

方法1:
conda env update方法2:
conda create -f environment.yml

若下载成功,可以采用以下两条命令查看fastai虚拟环境并进入。

conda env list
conda activate fastai    #这里fasiai是虚拟环境名

  • 测试

完成以上过程,可以使用以下命令测试是否成功:

python -m fastai.utils.show_install

若返回以下【二、软硬件】所示信息则成功了!!!


6. Jupyter Noteboot

7. Date

8. Test

五、结论

目前,不少博客并没有为阅读者提供整体框架,提供的解决问题思路也是东一块西一块,需要大家广泛阅读自行总结框架与思路,参考起来非常不方便。希望本文能够帮助大家尽快配置好fastai环境,如有错误之处,还请指出,多多包涵。

参考

Anaconda基本命令:https://www.cnblogs.com/devilmaycry812839668/p/10349780.html

fastaiv1官网安装指南:https://github.com/fastai/fastai1/blob/master/README.md#installation

Cannot unpack file xxx / pip安装速度慢 / 出现readtime out问题:https://blog.csdn.net/cn_1937/article/details/81449484

fastai v1环境搭建:Win10 MX250 CUDA10.1 cuDNN Pytorch1.0.0 Fastai v1安(bi)装(keng)指南相关推荐

  1. win10+1070ti显卡安装python3.6+CUDA10.1+cuDNN+pytorch1.5.0 gpu版本

    cpu与gpu关系,为什么用gpu 从上图可以看出GPU(图像处理器,Graphics Processing Unit)和CPU(中央处理器,Central Processing Unit)在设计上的 ...

  2. Lua环境搭建 Win10

    Lua环境搭建 Win10 一.安装Lua 基于Mingw构建,需要安装好Mingw环境. 点此获取Lua Source Code.选择版本为 5.35, 解压缩,CMD/PS输入make mingw ...

  3. java 环境搭建win10

    java 环境搭建win10 首先下载 地址 1.8 11 版本都有https://www.oracle.com/technetwork/cn/java/javase/downloads/index. ...

  4. GAMES101课程环境搭建(Win10+VSCode)

    GAMES101课程环境搭建(Win10+VSCode) 抄自:知乎 发现很多人遇到Mingw环境的问题,这里共享一个可用的mingw,自行解压,然后把bin目录加入环境变量即可. 链接: https ...

  5. win10安装cuda10.2+tensorflow-GPU 1.14.0

    一.问题提出 之前写好的代码都是基于tensorflow 1.14.0的,在自己笔记本上跑太慢了,所以搬到服务器去跑.但是一个很现实的问题就是服务器的CUDA是10.2的,因为服务器有很多人在用,其他 ...

  6. 【正点原子MP157连载】 第四章 开发环境搭建-摘自【正点原子】【正点原子】STM32MP1嵌入式Linux驱动开发指南V1.7

    1)实验平台:正点原子STM32MP157开发板 2)购买链接:https://item.taobao.com/item.htm?&id=629270721801 3)全套实验源码+手册+视频 ...

  7. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(九)安装kafka_2.11-1.1.0

    如何搭建配置centos虚拟机请参考<Kafka:ZK+Kafka+Spark Streaming集群环境搭建(一)VMW安装四台CentOS,并实现本机与它们能交互,虚拟机内部实现可以上网.& ...

  8. hbase开发环境搭建及运行hbase小实例(HBase 0.98.3新api)

    问题导读: 1.如何搭建hbase开发环境? 2.HTableDescriptor初始化产生了那些变化? 3.eclipse如何连接hbase集群? hbase开发环境搭建与hadoop开发环境搭建差 ...

  9. spring源码深度解析系列——环境搭建丢失spring-cglib-repack-3.2.8.jar和spring-objenesis-repack-3.0.1.jar的解决办法

    环境搭建问题 下载spring源码后,进入目录执行 gradle cleanIdea eclipse 将源码转化为eclipse可读取的形式.导入eclipse出现以下jar包的缺失. 解决方法 在s ...

  10. imx6开发环境搭建之yocto全记录(L4.1.15_2.0.0)

    最近才开始玩imx6,本来是不打算搞yocto的,毕竟有官方渠道可以下载uboot和kernel(下面会说到),为什么要干这种吃力不讨好的事情?然而当我玩到了qt5移植的时候,却发现网上各种imx6移 ...

最新文章

  1. LeetCode简单题之最常见的单词
  2. Windows Service
  3. echart 折线图设置y轴单位_echarts折线图有两个图例时如何实现分别采用两个不同单位的y轴...
  4. 06jQuery-01-基本选择器
  5. 第 8 章:管理模式对象
  6. Apache Camel 2.23发布
  7. 怎么做批注_BIM平台是什么?有何用?怎么用?
  8. 牛x!一款比传统数据库快 100-1000 倍的数据库,来认识一下?
  9. 爬虫入门到精通-headers的详细讲解(模拟登录知乎)
  10. MRPT笔记——MRPT在VS2013中的配置
  11. python 数学公式显示_python 数学公式·
  12. arcgis批量裁剪tif文件
  13. 【调剂】关于开通上海第二工业大学2022年硕士研究生招生预调剂系统的通知
  14. 集成电路将成一级学科,这些高校迎来重大机遇!
  15. Java基础 (适合新手入门保姆级)
  16. Windows Speech SDK5.1的安装和使用(xp/win7)
  17. 刷了一个半月算法题,我薪资终于Double了
  18. 【历史上的今天】3 月 28 日:EPROM 的发明者出生;计算机进入艾滋病研究领域
  19. 3种方法删除7-Zip压缩包的密码
  20. Mellanox--MCX4121A-ACAT网卡驱动安装

热门文章

  1. 互联网短信网关接口协议
  2. 拥抱变化,面向Java17,Java8-18全系列特性详解
  3. android学习日记——高级组件3(PopupWindow,Notifcation,Style,Theme,自定义组件)
  4. 已解决ModuleNotFoundError: No module named ‘frontend‘
  5. 本地搭建wooyun图片无法加载问题解决
  6. 谢烟客---------Linux之文件系统管理挂载
  7. 小鸟云数据盘如何进行挂载?
  8. 5G NR LDPC码(3)—— DL-SCH和UL-SCH的LDPC处理(含代码)
  9. Java各种学习资源(视频+文档)
  10. MediBangPaint Pro for mac(优秀漫画制作软件)