工欲善其事,必先利其器。首先我们需要花费一些时间来搭建开发环境。
1.安装python。python是人工智能开发首选语言。
2.安装virtualenv。virtualenv可以为一个python应用创建一套隔离的运行环境,避免不同版本的python或第三方库互相影响。类似的虚拟环境还有anaconda,anaconda自带常用库,因此安装包有几百兆,与anaconda相比,virtualenv更轻量化,只有十几兆的大小,可定制化高,推荐virtualenv。使用virtualenv这种虚拟环境的好处是安全,如果某个版本库装坏了,直接删除这个虚拟环境的文件夹即可,不必重装系统的python。
3.安装常用的第三方库。常用的有numpy(科学计算)、scipy(科学计算)、matplotlib(作图)、sciket-learn(机器学习)、keras(tensorflow的高层封装)、tensorflow(深度学习)。使用pip速度慢的问题点这里查看解决方法。
4.安装CUDA和cuDNN(GPU版tensorflow)
Mac OS基于Unix,相比Windows做开发更方便,但是最大的缺点就是非常封闭,各种沙盒安全机制,可能正是由于这个原因,Google在后期的Tensorflow GPU版本中放弃了对Mac的支持。本文介绍Mac OS和Windows两种系统中的环境搭建。Mac OS中,使用仅cpu版本的tensorflow(当然也可以安装旧版本的支持gpu的版本,前提是你的显卡是Nvidia的卡);Windows中,使用支持gpu版本的tensorflow。笔者目前是使用双系统,跑普通机器学习算法和不是很深的神经网络时使用Mac OS,跑深一些的神经网络使用Windows,毕竟gpu比cpu快的多。(英伟达官方说计算能力3.0或更高的NVIDIA显卡才支持gpu版tensorflow,所以安装之前到这里查询一下你的显卡的算力,如果小于3,还是老老实实安装cpu版的吧。)
Mac OS
1.安装python
Mac OS自带python2.7,我们需要自己安装python3。目前tensorflow在Mac中支持的python版本为2.7、3.4、3.5、3.6。我们使用3.6版本。下载地址:点这里。安装也很简单,一直next就好了。打开终端输入
python3
出现下面提示说明已经安装成功:
Python 3.6.7 (v3.6.7:6ec5cf24b7, Oct 20 2018, 03:02:14)
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.57)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
2.安装virtualenv
在终端输入:
sudo pip install --upgrade virtualenv
安装完成,建立一个全新的 virtualenv 环境,例如我们想建立一个叫AI的开发环境,路径为~,那么我们输入:
virtualenv --no-site-packages ~/AI
–no-site-packages是不复制系统python中的库,安装的就是一个不带任何第三方库的很干净的环境。如果想拷贝系统python中的库,需要使用--system-site-packages
。
如果系统中有多个python,比如同时有python2和python3,想创建一个python2.7的环境,可以输入:
virtualenv -p /usr/bin/python2 --no-site-packages ~/
进入这个环境:
source ~/AI/bin/activate
此时终端前缀变成
(AI) ~ $:
这时候就可以在这个环境安装第三方库了,系统Python环境不受任何影响。安装时直接用pip,不需要使用sudo。例如安装numpy:
(AI) ~ $: pip install numpy
退出环境:
(AI) ~ $: deactivate
就回到正常环境了,终端变回:
~ $:
3.安装常用的第三方库
进入虚拟环境:
source ~/AI/bin/activate
安装numpy:
(AI) ~ $: pip install numpy
安装scipy:
(AI) ~ $: pip install scipy
安装matplotlib:
(AI) ~ $: pip install matplotlib
安装sciket-learn:
(AI) ~ $: pip install sklearn
安装keras:
(AI) ~ $: pip install keras
安装tensorflow:
(AI) ~ $: pip install https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.12.0-py3-none-any.whl
其它版本点这里
4.测试运行
import tensorflow as tf
import numpy as np
hello=tf.constant('hhh')
sess=tf.Session()
print (sess.run(hello))
如果没有报错说明安装成功了。
Windows
1.安装python
Windows不自带python,目前tensorflow在Win中支持的python版本为3.5、3.6。我们使用3.6版本。直接下载python3.6安装就好了。下载地址:点这里。安装也很简单,一直next就好了。
添加python的环境变量:
“我的电脑”-“属性”-“高级系统设置”-“环境变量”,在“系统变量”中选中“Path”,点“编辑”,加上python的路径,例如“C:\Python36”。这样就可以在命令提示符中使用python了。打开命令提示符输入
python
出现下面提示说明已经安装成功:
Python 3.6.7 (v3.6.7:6ec5cf24b7, Oct 20 2018, 03:02:14)
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.57)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
2.安装virtualenv
添加pip的环境变量:
环境变量“Path”中加上python\Script的路径,例如“C:\Python36\Script”。这样就可以在命令提示符中使用pip了。
在命令提示符输入:
pip install --upgrade virtualenv
安装完成,建立一个全新的 virtualenv 环境,例如我们想建立一个叫AI的开发环境,路径为C:Users\xxx\,那么我们输入:
virtualenv --no-site-packages C:Users\xxx\AI
安装完成。使用和上文Mac中类似,不再赘述。
3.安装常用的第三方库
和上文Mac中类似,不再赘述。只需注意tensorflow选择win版支持gpu的版本。
pip install https://storage.googleapis.com/tensorflow/windows/gpu/tensorflow_gpu-1.12.0-cp36-cp36m-win_amd64.whl
4.安装CUDA和cuDNN
因为在Windows中我们安装的是支持gpu的tensorflow,因此比Mac中多两个安装步骤。CUDA是由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。cuDNN是NVIDIA专门针对深度神经网络(Deep Neural Networks)中的基础操作而设计基于GPU的加速库。下面我们来安装它们。
首先确保电脑安装好了Nvidia显卡驱动,打开控制面板---NVIDIA控制面板---帮助---系统信息---组件,如果支持CUDA会有NVCUDA.DLL 以及支持的CUDA版本。
根据查询到的支持的CUDA版本到这里查询匹配的tensorflow和cuDNN版本。
注意一定要版本匹配!
注意一定要版本匹配!
注意一定要版本匹配!
根据查询好的版本下载正确的CUDA(下载地址:点这里)和cuDNN(下载地址:点这里)。
CUDA下载好是exe文件,直接双击安装。安装好路径像下面这样"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0"。
cuDNN下载好是一个压缩包,里面有3个文件夹。一个include,一个lib64,还有一个bin。把它们复制到上面CUDA的安装文件夹("C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0")中。
配置环境变量,在环境变量“Path”中加上这三个路径:
a."C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\lib\x64
b."C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin
c."C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0
安装完成。
5.测试运行
import tensorflow as tf
import numpy as np
hello=tf.constant('hhh')
sess=tf.Session()
print (sess.run(hello))
如果没有报错说明安装成功了,如果报错请仔细检查版本,python版本+tensorflow版本+CUDA版本+cuDNN版本。
最后预祝大家安装顺利!