win10系统人工智能框架安装指南及常见问题解决方案——anaconda、python27、python35、numpy、tensorflow-gpu、matplotlib、caffe及中间的相关插曲

前言

本来这篇文章是可以不用写的,如果NVIDIA给linux设计了RTX20系列notebook驱动的话,但可惜没有(现在有了,233),所以新买的笔记本无法使用caffe和TensorFlow的gpu版本。如果用cpu版本,i7还比不上MX150显卡,所以,有必要研究一下如何在现有的win10系统上安装AI的相关框架和驱动等配套程序(事实证明这也折腾了两三天,主要是caffe折腾的,这货在windows下一点也不比在linux下好安装)。

相关的软件包大部分可见如下百度云盘:

链接:https://pan.baidu.com/s/1b7fKLZZQB2pP4CGFm-BIQg 
提取码:0pb8 

硬件基础

win10系统

RTX2060笔记本显卡(已经自带驱动)

没有任何python环境及相关框架、包。

任务按先后顺序依次为:

查看笔记本显卡型号、安装显卡驱动、安装cuda9.0、安装cudnn、安装anaconda3-4.2.0、python2.7(anaconda3下安装)、numpy、matplotlib、opencv、TensorFlow-GPU(1.9.0)(仅支持python3.5)、vs2013、caffe(仅支持python2.7

Table of Contents

1 查看笔记本显卡型号

2 安装显卡驱动

2.1 上官网查询(我没有走通)

2.2 通过 GeForce Experience 安装

3 安装cuda9.0

3.1选择cuda9.0的原因:

3.2 安装步骤

3.3 配置环境变量

3.4 命令行中进行检查

4 安装cudnn

4.1 下载

4.2 配置环境变量

5 安装anaconda3-4.2.0

5.1 选择anaconda3-4.2.0的原因

5.2 安装

5.3 环境变量配置

6 python2.7(anaconda3下安装)

6.1 创建

6.2 激活

6.3 退出

7 numpy

8 matplotlib

8.1 python2.7

8.2 python 3.5

9 opencv

9.1 下载

9.2 安装

10 TensorFlow-GPU(1.9.0)(仅支持python3.5)

10.1 选择1.9.0版本的原因

10.2 安装

11 visual studio 2013

11.1 选择vs2013原因

11.2 资源

12 caffe(仅支持python2.7)

12.1 选择Microsoft版本并选择python2.7的原因

12.2 下载

12.3 更改CommonSettings.props

12.4 vs2013 编译

12.4.1 首先设置libcaffe的属性

12.4.2 右键libcaffe,生成

12.4.3 编译其他文件

12.5 配置环境

12.5.1 MATLAB:

12.5.2 python配置:


 

 

1 查看笔记本显卡型号

步骤:

打开“我的电脑”

右键“此电脑”

点击“属性”

点击“设备管理器”

点开“显示适配器”

查看NVIDIA显卡型号

效果如图

win10系统人工智能框架安装指南及常见问题解决方案——anaconda、python27、python35、numpy、tensorflow-gpu、matplotlib、caffe及中间的相关插曲_第1张图片

可以看到这台电脑是RTX2060显卡,有两条路可以安装NVIDIA显卡驱动。

 

2 安装显卡驱动

2.1 上官网查询(我没有走通)

网址 https://www.geforce.cn/drivers

按照提示,相应输入自己电脑的硬件情况即可

win10系统人工智能框架安装指南及常见问题解决方案——anaconda、python27、python35、numpy、tensorflow-gpu、matplotlib、caffe及中间的相关插曲_第2张图片

点击下载exe,再安装即可。

 

2.2 通过 GeForce Experience 安装

网址 https://www.geforce.cn/geforce-experience/download 如图

win10系统人工智能框架安装指南及常见问题解决方案——anaconda、python27、python35、numpy、tensorflow-gpu、matplotlib、caffe及中间的相关插曲_第3张图片

点击下载,再安装。之后打开 GeForce Experience,菜单栏上方进入“驱动程序”,进行安装即可,后期也可以对驱动程序进行升级,如图

 

3 安装cuda9.0

3.1选择cuda9.0的原因:

首先,这是一个稳定的版本

其次,TensorFlow-GPU最高支持cuda9,所以装cuda10就是作死

如果装了其他版本cuda的请先卸载掉,再安装cuda9.0,卸载方式

win10“在这里输入你要搜索的内容”输入控制面板,回车

点击“卸载程序”

点击“名称”排序

将NVIDIA CUDA *** X.X样式的其他版本的cuda组件删除。

3.2 安装步骤

先进入官网 https://developer.nvidia.com/cuda-90-download-archive

根据电脑的硬件配置选择,如图

win10系统人工智能框架安装指南及常见问题解决方案——anaconda、python27、python35、numpy、tensorflow-gpu、matplotlib、caffe及中间的相关插曲_第4张图片

点击Download下载,再进行安装。

3.3 配置环境变量

win10搜索"path"
"环境变量"
系统变量新建"CUDA_PATH_V9_0"和"CUDA_PATH",均为之前安装的同一目录
以我为例,为"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0"

3.4 命令行中进行检查

win+R,输入cmd,回车

win10系统人工智能框架安装指南及常见问题解决方案——anaconda、python27、python35、numpy、tensorflow-gpu、matplotlib、caffe及中间的相关插曲_第5张图片

则cuda9.0已经正确安装。

 

4 安装cudnn

4.1 下载

进入官网,https://developer.nvidia.com/cudnn

选择 Download cuDNN ,之后将其解压,得到大目录下的三个子目录,再对应放在cuda的不同目录下,例如(根据自己的来)

å¨è¿éæå¥å¾çæè¿°

4.2 配置环境变量

接着再添加环境变量(根据自己的来)

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\lib\x64

到此,cuDNN安装完成。

 

5 安装anaconda3-4.2.0

5.1 选择anaconda3-4.2.0的原因

这个版本的anaconda3是基于python3.5的

caffe 仅支持Python2.7和Python3.5两个版本

安装了3.5以上版本的Python必须要卸载或者另装python3.5,所以多一事不如少一事

anaconda集成了python很多科学计算的库,方便安装、配置和管理python的不同版本

由于官网下载速度过慢,因此选择清华的镜像 https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/

ctrl+f搜索

Anaconda3-4.2.0-Windows-x86_64.exe

5.2 安装

进行下载,然后安装,我放在了c盘目录下

C:\Anaconda3

5.3 环境变量配置

C:\Anaconda3

C:\Anaconda3\Scripts

C:\Anaconda3\Library\bin

 

6 python2.7(anaconda3下安装)

在开始菜单中打开 anaconda prompt

6.1 创建

基于 python2.7 创建一个名为python2 的环境(期间会进行一些常用包的安装)

conda create --name python2 python=2.7

6.2 激活

激活 python2环境(windows)

activate python2

linux/mac下为

source activate python2

6.3 退出

退出python2(进入默认的python3.5)

deactivate python2

以上命令在普通命令行仍然适用。

 

7 numpy

通过激活和退出的方式分别安装python2.7和python3.5的相关包。

python2.7、3.5安装命令均为

pip install numpy

 

8 matplotlib

通过激活和退出的方式分别安装python2.7和python3.5的相关包。

8.1 python2.7

由于python2.7对于matplotlib的支持有一定问题,因此我们只能选择一个较低的版本进行安装,但不影响功能。

pip install matplotlib==1.5.0

8.2 python 3.5

对python3没有影响,正常安装(不指定版本号则默认安装最新版本)

pip install matplotlib

 

9 opencv

9.1 下载

进入官网 https://www.lfd.uci.edu/~gohlke/pythonlibs/#opencv

选择使用python2.7和python3.5的对应版本

搜索

opencv_python‑3.4.5+contrib‑cp35‑cp35m‑win_amd64.whl

opencv_python‑2.4.13.7‑cp27‑cp27m‑win_amd64.whl

9.2 安装

之后进入下载目录进行安装(增加 --user 参数使用管理员权限)

通过激活和退出的方式分别选择python2.7和python3.5的pip

python3.5

pip install --user opencv_python‑3.4.5+contrib‑cp35‑cp35m‑win_amd64.whl

python2.7

pip install --user opencv_python‑2.4.13.7‑cp27‑cp27m‑win_amd64.whl

 

10 TensorFlow-GPU(1.9.0)(仅支持python3.5)

10.1 选择1.9.0版本的原因

我在使TensorFlow-GPU进行编程的时候,由于是较新的1.12.0,好像是因为board还是其他什么由于版本过新,出了bug

1.9.0较新,也较为稳定

一些框架的源码要求tensorflow1.9.0以上版本

10.2 安装

pip install tensorflow-gpu==1.9.0

由于win10系统不在支持python2.7的TensorFlow(CPU及GPU)版本,所以只能作罢。

 

11 visual studio 2013

11.1 选择vs2013原因

网上的案例教程大都为2013(少数为2015)的visual studio版本

其实主要是因为caffe包是用windows 8 SDK编译的,若用2017的windows 10 SDK编译会出很多各种各样的问题

11.2 资源

见开头的百度云盘(最稳定)

正常安装即可,如果安装了vs2017的话,建议将2013安装在另外的磁盘上,以免可能的冲突。

 

12 caffe(仅支持python2.7)

12.1 选择Microsoft版本并选择python2.7的原因

对windows系统更好的支持,少出bug

python3.5安装理论可行,但是安装中的bug千奇百怪,且和打地鼠一样越改bug越多而

python2.7安装一遍跑通

12.2 下载

先去github下载下来caffe,并解压(我放在了c盘上,固态速度快)

github地址 https://github.com/Microsoft/caffe

12.3 更改CommonSettings.props

接着,打开caffe下的Windows文件夹,找到一个名为CommonSettings.props.example的文件,并copy一份放在Windows文件下,更改附件名为CommonSettings.props,并对其进行修改配置(我用的是vscode)

xml项目 修改为 原因

CpuOnlyBuild

false 不止用cpu,还要用gpu

UseCuDNN

true

要使用cudnn

CudaVersion

9.0 之前安装的是cuda9.0

PythonSupport

true 支持python

MatlabSupport

true 支持MATLAB

CuDnnPath

C:\cudnn-9.0-windows10-x64-v7

之前解压的cuDNN文件夹,cuda的上一级

PythonDir

C:\Anaconda3\envs\python2\

anaconda下的python2.7虚拟环境

MatlabDir

C:\Program Files\MATLAB\R2016a

自己的MATLAB安装地址
第55行 IncludePath

加入$(MatlabDir)\toolbox\distcomp\gpu\extern\include

微软更新(否则编译时mxGPUArray.h找不到)

最终的全文如下



    
    
        $(SolutionDir)..\Build
        
        false
        true
        9.0
        
        true
        
        true
        

        
        compute_35,sm_35;compute_52,sm_52

        
        C:\cudnn-9.0-windows10-x64-v7
        $(SolutionDir)\scripts
    
    
        cublas.lib;cuda.lib;curand.lib;cudart.lib
    

    
        cudnn.lib;$(CudaDependencies)
    
    
        $(CuDnnPath)\cuda\lib\x64;$(LibraryPath)
        $(CuDnnPath)\cuda\include;$(IncludePath)
    

    
        $(BuildDir)\$(Platform)\$(Configuration)\
        $(BuildDir)\Int\$(ProjectName)\$(Platform)\$(Configuration)\
    
    
        $(OutDir);$(CUDA_PATH)\lib\$(Platform);$(LibraryPath)
        $(SolutionDir)..\include;$(SolutionDir)..\include\caffe\proto;$(CUDA_PATH)\include;$(IncludePath)
    
    
        C:\Anaconda3\envs\python2\
        $(PythonDir)\libs;$(LibraryPath)
        $(PythonDir)\include;$(IncludePath)
    
    
        C:\Program Files\MATLAB\R2016a
        $(MatlabDir)\extern\lib\win64\microsoft;$(LibraryPath)
        $(MatlabDir)\extern\include;$(MatlabDir)\toolbox\distcomp\gpu\extern\include;$(IncludePath)
    
    
        
            CPU_ONLY;%(PreprocessorDefinitions)
        
    
    
        
            USE_CUDNN;%(PreprocessorDefinitions)
        
        
            USE_CUDNN
        
    
    
        
            WITH_PYTHON_LAYER;BOOST_PYTHON_STATIC_LIB;%(PreprocessorDefinitions)
        
    
    
        
            MATLAB_MEX_FILE;%(PreprocessorDefinitions)
        
    
    
        
            false
            true
            _SCL_SECURE_NO_WARNINGS;USE_OPENCV;USE_LEVELDB;USE_LMDB;%(PreprocessorDefinitions)
            true
        
    
    
        
            Full
            NDEBUG;%(PreprocessorDefinitions)
            MultiThreadedDLL
            true
        
        
            true
            true
            UseLinkTimeCodeGeneration
            true
        
    
    
        
            Disabled
            _DEBUG;%(PreprocessorDefinitions)
            MultiThreadedDebugDLL
        
        
            true
        
    

12.4 vs2013 编译

接着,用vs2013的管理员模式(否则错误也是千奇百怪)打开caffe.sln(C:\caffe-master\windows\Caffe.sln)文件

12.4.1 首先设置libcaffe的属性

12.4.2 右键libcaffe,生成

大约10分钟之后,编译成功,这时caffe-matter文件夹所在的目录中,便多出了NugetPackages文件(第三方库文件)(嫌慢的去开头的百度云找,在安装过去)

win10系统人工智能框架安装指南及常见问题解决方案——anaconda、python27、python35、numpy、tensorflow-gpu、matplotlib、caffe及中间的相关插曲_第6张图片

12.4.3 编译其他文件

之后依次编译caffe,matcaffe,pycaffe。为了保险,又右键解决方案,生成解决方案

12.5 配置环境

此时caffe编译成功,但是要想使用,需要配置接口环境

12.5.1 MATLAB:

(1)将上步release生成的matcaffe文件夹加入matlab的路径中

其次还要将D:\caffe\caffe-master\Build\x64\Release加入path环境变量之中

重启MATLAB,输入测试代码:caffe.reset_all

 

12.5.2 python配置:

编译python支持库后,你还需要执行如下之一才能在python里使用:

设置环境变量 PythonPath,值为 \Build\x64\Release\pycaffe,或者
复制目录 \Build\x64\Release\pycaffe\caffe 到 \lib\site-packages 目录

python测试,打开Windows的dos窗口

输出python,试着引用caffe :import caffe

会出现

ImportError: No module named google.protobuf.internal

则需要安装protobuf,使用pip进行安装,在dos窗口输入(注意:不要使用conda的命令,未安装成功)

pip install protobuf

如果又有

ImportError: No module named yaml

pip install pyyaml

安装成功后,在打开python试着引用caffe

win10系统人工智能框架安装指南及常见问题解决方案——anaconda、python27、python35、numpy、tensorflow-gpu、matplotlib、caffe及中间的相关插曲_第7张图片

恭喜你,装完了。

你可能感兴趣的:(caffe框架学习,tensorflow框架学习,人工智能)