5.1 Ubuntu安装说明
译者:Python 文档协作翻译小组,原文:Ubuntu Installation Instructions。 本文以 CC BY-NC-SA 4.0 协议发布,转载请保留作者署名和文章出处。 Python 文档协作翻译小组人手紧缺,有兴趣的朋友可以加入我们,完全公益性质。交流群:467338606。
警告
如果你想从GitHub安装Theano的前沿或开发版本,请确保你正在阅读此页面的最新版本。
要求
注意
我们只支持通过conda安装要求的软件包。
Python> = 2.7或> = 3.3开发包(python-dev或 python-devel在大多数Linux发行版)推荐(见下面)。0.6及以前的版本支持Python 2.4。0.8.2及以前的版本支持Python 2.6。对于Python 3,支持3.3之后的版本。 NumPy >= 1.9.1 早期版本可以工作,但我们没有测试。 SciPy >= 0.14 当前只有稀疏矩阵和特殊功能需要,但强烈推荐。SciPy > = 0.8可以工作,但早期版本对稀疏矩阵有已知的错误。 BLAS安装(具有Level 3的功能)
- 推荐:MKL,通过Conda免费安装。
- 或者,我们建议安装OpenBLAS,其中包含development headers(
-devel
,-dev
,具体取决于你的Linux发行版本)。
可选要求
g
,python-dev
> = 4.2 **强烈推荐。**Theano可以回退基于NumPy的Python执行模型,但C编译器允许更快的执行。 nose >= 1.3.0 推荐,用于运行Theano的测试套件。 Sphinx >= 0.5.1, pygments 用于构建文档。LaTeX和dvipng也是必需的,用于将数学符号显示为图像。 pydot-ng 处理大的gif/images图片。 NVIDIA CUDA驱动程序和SDK 强烈推荐在NVIDIA gpus上生成/执行GPU代码时需要。参见下面的说明。 libgpuarray 在CUDA和OpenCL设备上生成GPU/CPU代码时需要(参见:GpuArray Backend。)
通过Conda安装的要求的软件包(推荐)
安装Miniconda
按照此链接安装Miniconda。
注意
如果你想要编译的代码更快(推荐),确保你安装了g (Windows/Linux)或Clang(OS X)。
安装要求的软件包和可选的软件包
代码语言:javascript复制conda install numpy scipy mkl <nose> <sphinx> <pydot-ng>
- <…>之间的参数是可选的。
安装和配置GPU驱动程序(推荐)
警告
现在OpenCL仍然是最小支持。
- 安装CUDA驱动程序
- 按照此链接安装CUDA驱动程序和CUDA工具包。
- 你必须在驱动程序安装后重新启动计算机。
- 测试在重新启动之后可以正确加载它,从命令行执行命令
nvidia-smi
。
注意 正确性检查:bin子文件夹应包含nvcc程序。此文件夹称为cuda root目录。
- 修复’lib’路径
- 添加’lib’子目录(如果你有一个64位操作系统,则为“lib64”子目录)到你的
$LD_LIBRARY_PATH
环境变量。
- 添加’lib’子目录(如果你有一个64位操作系统,则为“lib64”子目录)到你的
- 设置Theano的配置标志
要使用GPU,你需要定义cuda root。你可以通过以下方式之一:
- 定义一个$CUDA_ROOT环境变量等于cuda根目录,如
CUDA_ROOT=/path/to/cuda/root
,或 - 向
THEANO_FLAGS
添加cuda.root
标记,如THEANO_FLAGS='cuda.root=/path/to/cuda/root'
,或 - 添加一个[cuda]节到你的.theanorc文件,包含选项
root = /path/to/cuda/root
。
- 定义一个$CUDA_ROOT环境变量等于cuda根目录,如
通过Conda安装的要求的软件包(推荐)
安装Miniconda
按照此链接安装Miniconda。
注意
如果你想要编译的代码更快(推荐),确保你安装了g (Windows/Linux)或Clang(OS X)。
安装要求的软件包和可选的软件包
代码语言:javascript复制conda install numpy scipy mkl <nose> <sphinx> <pydot-ng>
- <…>之间的参数是可选的。
安装Miniconda
按照此链接安装Miniconda。
注意
如果你想要编译的代码更快(推荐),确保你安装了g (Windows/Linux)或Clang(OS X)。
安装要求的软件包和可选的软件包
代码语言:javascript复制conda install numpy scipy mkl <nose> <sphinx> <pydot-ng>
- <…>之间的参数是可选的。
安装和配置GPU驱动程序(推荐)
警告
现在OpenCL仍然是最小支持。
- 安装CUDA驱动程序
- 按照此链接安装CUDA驱动程序和CUDA工具包。
- 你必须在驱动程序安装后重新启动计算机。
- 测试在重新启动之后可以正确加载它,从命令行执行命令
nvidia-smi
。
注意 正确性检查:bin子文件夹应包含nvcc程序。此文件夹称为cuda root目录。
- 修复’lib’路径
- 添加’lib’子目录(如果你有一个64位操作系统,则为“lib64”子目录)到你的
$LD_LIBRARY_PATH
环境变量。
- 添加’lib’子目录(如果你有一个64位操作系统,则为“lib64”子目录)到你的
- 设置Theano的配置标志
要使用GPU,你需要定义cuda root。你可以通过以下方式之一:
- 定义一个$CUDA_ROOT环境变量等于cuda根目录,如
CUDA_ROOT=/path/to/cuda/root
,或 - 向
THEANO_FLAGS
添加cuda.root
标记,如THEANO_FLAGS='cuda.root=/path/to/cuda/root'
,或 - 添加一个[cuda]节到你的.theanorc文件,包含选项
root = /path/to/cuda/root
。
- 定义一个$CUDA_ROOT环境变量等于cuda根目录,如
安装
稳定安装
安装最新的稳定版本的Theano:
代码语言:javascript复制<sudo> pip install <--user> Theano[test, doc]
- <…>之间的任何参数都是可选的。
- 对于root安装,请使用sudo。
- user用于用户安装,不需要管理员权限。它将Theano安装在你本地的site-packages中。
- [test]将安装测试需要的包。
- [doc]将安装生成文档需要的包。
如果你遇到任何问题,请前往Troubleshooting页面。
libgpuarray
对于稳定版本的Theano你需要一个特定版本的libgpuarray,标记为v-9998
。用下面的方式下载:
git clone https://github.com/Theano/libgpuarray.git --tags
git checkout origin/v-9998
cd libgpuarray
然后按照逐步说明进行操作。
安装最前沿版本(推荐)
安装最新、前沿、开发版本的Theano:
代码语言:javascript复制<sudo> pip install <--user> <--no-deps> git https://github.com/Theano/Theano.git#egg=Theano
- <…>之间的任何参数都是可选的。
- 对于root安装,请使用sudo。
- user用于用户安装,不需要管理员权限。它将Theano安装在你本地的site-packages中。
- 当你不想通过pip安装Theano的依赖关系,请使用no-deps。当它们已经安装成系统的包时,这是很重要的。
如果你遇到任何问题,请前往Troubleshooting页面。
libgpuarray
按照逐步说明安装最新的libgpuarray开发版本。
开发人员的安装
安装开发版本的Theano:
代码语言:javascript复制git clone git://github.com/Theano/Theano.git
cd Theano
<sudo> pip install <--user> <--no-deps> -e .
- <…>之间的任何参数都是可选的。
- 对于root安装,请使用sudo。
- user用于用户安装,不需要管理员权限。它将Theano安装在你本地的site-packages中。
- 当你不想通过pip安装Theano的依赖关系,请使用no-deps。当它们已经安装成系统的包时,这是很重要的。
- -e让你的安装可编辑,即将它链接到你的源目录。
如果你遇到任何问题,请前往Troubleshooting页面。
libgpuarray
按照逐步说明安装最新的libgpuarray开发版本。
通过系统包安装先决条件(不推荐)
如果你想通过你的系统包获取需求并在系统范围内安装它们,请按照以下说明进行操作:
对于Ubuntu 16.04与cuda 7.5
代码语言:javascript复制sudo apt-get install python-numpy python-scipy python-dev python-pip python-nose g libopenblas-dev git
sudo pip install Theano
# cuda 7.5 don't support the default g version. Install an supported version and make it the default.
sudo apt-get install g -4.9
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 20
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 10
sudo update-alternatives --install /usr/bin/g g /usr/bin/g -4.9 20
sudo update-alternatives --install /usr/bin/g g /usr/bin/g -5 10
sudo update-alternatives --install /usr/bin/cc cc /usr/bin/gcc 30
sudo update-alternatives --set cc /usr/bin/gcc
sudo update-alternatives --install /usr/bin/c c /usr/bin/g 30
sudo update-alternatives --set c /usr/bin/g
# Work around a glibc bug
echo -e "n[nvcc]nflags=-D_FORCE_INLINESn" >> ~/.theanorc
对于Ubuntu 11.10到14.04:
代码语言:javascript复制sudo apt-get install python-numpy python-scipy python-dev python-pip python-nose g libopenblas-dev git
在14.04,这将默认安装Python 2。如果你想使用Python 3:
代码语言:javascript复制sudo apt-get install python3-numpy python3-scipy python3-dev python3-pip python3-nose g libopenblas-dev git
sudo pip3 install Theano
对于Ubuntu 11.04:
代码语言:javascript复制sudo apt-get install python-numpy python-scipy python-dev python-pip python-nose g git libatlas3gf-base libatlas-dev
手动Openblas安装(已弃用)
一些较旧的Ubuntu版本中包含的openblas仅限于2个线程。Ubuntu 14.04没有这个限制。如果你想同时使用更多的内核,你需要自己编译。这里是一些代码,将帮助你。
代码语言:javascript复制# remove openblas if you installed it
sudo apt-get remove libopenblas-base
# Download the development version of OpenBLAS
git clone git://github.com/xianyi/OpenBLAS
cd OpenBLAS
make FC=gfortran
sudo make PREFIX=/usr/local/ install
# Tell Theano to use OpenBLAS.
# This works only for the current user.
# Each Theano user on that computer should run that line.
echo -e "n[blas]nldflags = -lopenblasn" >> ~/.theanorc
稳定安装
安装最新的稳定版本的Theano:
代码语言:javascript复制<sudo> pip install <--user> Theano[test, doc]
- <…>之间的任何参数都是可选的。
- 对于root安装,请使用sudo。
- user用于用户安装,不需要管理员权限。它将Theano安装在你本地的site-packages中。
- [test]将安装测试需要的包。
- [doc]将安装生成文档需要的包。
如果你遇到任何问题,请前往Troubleshooting页面。
libgpuarray
对于稳定版本的Theano你需要一个特定版本的libgpuarray,标记为v-9998
。用下面的方式下载:
git clone https://github.com/Theano/libgpuarray.git --tags
git checkout origin/v-9998
cd libgpuarray
然后按照逐步说明进行操作。
libgpuarray
对于稳定版本的Theano你需要一个特定版本的libgpuarray,标记为v-9998
。用下面的方式下载:
git clone https://github.com/Theano/libgpuarray.git --tags
git checkout origin/v-9998
cd libgpuarray
然后按照逐步说明进行操作。
安装最前沿版本(推荐)
安装最新、前沿、开发版本的Theano:
代码语言:javascript复制<sudo> pip install <--user> <--no-deps> git https://github.com/Theano/Theano.git#egg=Theano
- <…>之间的任何参数都是可选的。
- 对于root安装,请使用sudo。
- user用于用户安装,不需要管理员权限。它将Theano安装在你本地的site-packages中。
- 当你不想通过pip安装Theano的依赖关系,请使用no-deps。当它们已经安装成系统的包时,这是很重要的。
如果你遇到任何问题,请前往Troubleshooting页面。
libgpuarray
按照逐步说明安装最新的libgpuarray开发版本。
libgpuarray
按照逐步说明安装最新的libgpuarray开发版本。
开发人员的安装
安装开发版本的Theano:
代码语言:javascript复制git clone git://github.com/Theano/Theano.git
cd Theano
<sudo> pip install <--user> <--no-deps> -e .
- <…>之间的任何参数都是可选的。
- 对于root安装,请使用sudo。
- user用于用户安装,不需要管理员权限。它将Theano安装在你本地的site-packages中。
- 当你不想通过pip安装Theano的依赖关系,请使用no-deps。当它们已经安装成系统的包时,这是很重要的。
- -e让你的安装可编辑,即将它链接到你的源目录。
如果你遇到任何问题,请前往Troubleshooting页面。
libgpuarray
按照逐步说明安装最新的libgpuarray开发版本。
libgpuarray
按照逐步说明安装最新的libgpuarray开发版本。
通过系统包安装先决条件(不推荐)
如果你想通过你的系统包获取需求并在系统范围内安装它们,请按照以下说明进行操作:
对于Ubuntu 16.04与cuda 7.5
代码语言:javascript复制sudo apt-get install python-numpy python-scipy python-dev python-pip python-nose g libopenblas-dev git
sudo pip install Theano
# cuda 7.5 don't support the default g version. Install an supported version and make it the default.
sudo apt-get install g -4.9
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 20
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 10
sudo update-alternatives --install /usr/bin/g g /usr/bin/g -4.9 20
sudo update-alternatives --install /usr/bin/g g /usr/bin/g -5 10
sudo update-alternatives --install /usr/bin/cc cc /usr/bin/gcc 30
sudo update-alternatives --set cc /usr/bin/gcc
sudo update-alternatives --install /usr/bin/c c /usr/bin/g 30
sudo update-alternatives --set c /usr/bin/g
# Work around a glibc bug
echo -e "n[nvcc]nflags=-D_FORCE_INLINESn" >> ~/.theanorc
对于Ubuntu 11.10到14.04:
代码语言:javascript复制sudo apt-get install python-numpy python-scipy python-dev python-pip python-nose g libopenblas-dev git
在14.04,这将默认安装Python 2。如果你想使用Python 3:
代码语言:javascript复制sudo apt-get install python3-numpy python3-scipy python3-dev python3-pip python3-nose g libopenblas-dev git
sudo pip3 install Theano
对于Ubuntu 11.04:
代码语言:javascript复制sudo apt-get install python-numpy python-scipy python-dev python-pip python-nose g git libatlas3gf-base libatlas-dev
手动Openblas安装(已弃用)
一些较旧的Ubuntu版本中包含的openblas仅限于2个线程。Ubuntu 14.04没有这个限制。如果你想同时使用更多的内核,你需要自己编译。这里是一些代码,将帮助你。
代码语言:javascript复制# remove openblas if you installed it
sudo apt-get remove libopenblas-base
# Download the development version of OpenBLAS
git clone git://github.com/xianyi/OpenBLAS
cd OpenBLAS
make FC=gfortran
sudo make PREFIX=/usr/local/ install
# Tell Theano to use OpenBLAS.
# This works only for the current user.
# Each Theano user on that computer should run that line.
echo -e "n[blas]nldflags = -lopenblasn" >> ~/.theanorc