Ubuntu20.04系统下安装 CNTK深度学习框架

Ubuntu20.04系统下安装 CNTK深度学习框架

1. CNTK框架简介

Computational Network Toolkit (CNTK) 是微软出品的开源深度学习工具包。根据微软开发者的描述,CNTK的性能比Caffe,Theano, TensoFlow等主流工具都要强。它支持CPU和GPU模式,所以没有GPU,或者神经网络比较小的实验,直接用CPU版的CNTK跑就行了。 其开源主页在CNTK github 它把神经网络描述成一个有向图的结构,叶子节点代表输入或者网络参数,其他节点计算步骤。 它支持卷积神经网络和递归神经网络。
教程可以参考以下的三个方面:

  1. 官方入门教程
  2. 官方论坛
  3. 官方论文(2017年)

2. 安装

有些AMD显卡也可以进行GPU加速,基于AMD ROCM框架,由于NVIDIA显卡加速在市面上用得比较多,所以笔者这里使用NVIDIA显卡加速环境,所以首先安装CUDA和CUDNN环境。具体的安装过程可以参考这篇博文: Ubuntu安装CUDA和CUDNN教程.
由于在Ubuntu20.04中默认的Python环境是Python3.8,在官网上有详细的版本环境需求。
在这里插入图片描述

可见我们需要安装较低版本的Python环境。这里我们选择了Python3.6.8环境。在Python官网上下载源码包进行安装。
解压安装包,进入安装文件夹后,进行安装

tar -xvf Python-3.6.8.tgz
cd Python-3.6.8
./configure
make
sudo make install

经过一段时间源码的编译之后,即可以安装成功Python环境。然后根据实际情况创建软连接

sudo ln -s -f /usr/local/bin/python3.6 /usr/local/python3.6
sudo ln -s -f /usr/local/bin/pip3.6 /usr/local/pip3.6

遇到的问题
在编译源码的时候可以发现_ssl包并没有找到,有很多的教程上说在python源码编译的时候需要加上--with-ssl参数就能安装,但是这并不能够解决这个问题,会出现错误configure: WARNING: unrecognized options: --with-ssl,即未识别的选项。若没有ssl包的话,会出现错误pip is configured with locations that require TLS/SSL
参考博文: python3解决 ModuleNotFoundError: No module named ‘_ssl’ ,但是按照博文修改之后,并没有解决问题,编译的时候出现了错误

error: openssl/rsa.h: No such file or directory

所以这并没有根本解决问题。这样就想到可能缺少openssl对应的库文件。同时在源码编译的时候缺少tk库,所以在Ubuntu中安装

sudo apt-get install libssl-dev python3-tk

重新编译,即可以安装成功对应的安装包。ssl模块成功安装

现在我们就可以安装CNTK的环境了。创建一个虚拟环境

mkvirtualenv --python=/usr/bin/python3.6 cntk

直接安装cntk-gpu

pip install cntk-gpu

或者是按照官网上进行安装:

pip install https://cntk.ai/PythonWheel/GPU/cntk_gpu-2.7.post1-cp36-cp36m-linux_x86_64.whl

这样就安装成功了CNTK的CUDA加速环境。

参考

[1] CNTK文档官网
[2] Linux下Python3的源码编译安装和卸载方法
[3] ubuntu 20.04 安装python 3.6.8
[4] The Microsoft Cognitive Toolkit
[5] CNTK Setup

猜你喜欢

转载自blog.csdn.net/Zhang_Pro/article/details/109305176