Ubuntu Desktop 18.04にCUDA/Anacondaによるディープラーニング環境を構築する!(TensorFlow)

Ubuntu 18.04 LTS Desktopに、CUDAおよびAnacondaをインストールした環境にTensorflowのディープラーニング環境を構築します。

使用した環境

  • GeForce GTX 1050 Ti
  • Ubuntu 18.04 LTS Desktop (18.04.3)
  • CUDA 10.1
  • cuDNN 7.6.5
  • Anaconda 2020.02 (Python 3.7)
  • Tensorflow 2.1 (GPU)

CUDA 10.1のインストール

CUDA 10.1を以下の記事を参考にインストールします。

cuDNN 7.6.5のインストール

デープラーニング用のライブラリcuDNN 7.6.5を以下の記事を参考にインストールします。

Anaconda 2020.02のインストール

python環境を構築するため、以下の記事を参考にAnacondaをインストールします。

Tensorflowのインストール

Anacondaのホームページ(anaconda / packages / tensorflow-gpu)に記載のコマンドを実行します。

$ conda install -c anaconda tensorflow-gpu 
Collecting package metadata (current_repodata.json): done
Solving environment: done

## Package Plan ##

  environment location: /home/sysadm01/anaconda3

  added / updated specs:
    - tensorflow-gpu


The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    _tflow_select-2.1.0        |              gpu           2 KB  anaconda
    absl-py-0.9.0              |           py37_0         165 KB  anaconda
    astor-0.8.0                |           py37_0          45 KB  anaconda
    blinker-1.4                |           py37_0          21 KB  anaconda
    c-ares-1.15.0              |    h7b6447c_1001         102 KB  anaconda
    ca-certificates-2020.1.1   |                0         132 KB  anaconda
    cachetools-3.1.1           |             py_0          14 KB  anaconda
    certifi-2019.11.28         |           py37_0         156 KB  anaconda
    conda-4.8.3                |           py37_0         3.0 MB  anaconda
    cudnn-7.6.5                |       cuda10.1_0       250.6 MB  anaconda
    cupti-10.1.168             |                0         1.7 MB  anaconda
    gast-0.2.2                 |           py37_0         137 KB  anaconda
    google-auth-1.11.2         |             py_0          52 KB  anaconda
    google-auth-oauthlib-0.4.1 |             py_2          21 KB  anaconda
    google-pasta-0.2.0         |             py_0          44 KB  anaconda
    grpcio-1.27.2              |   py37hf8bcb03_0         1.4 MB  anaconda
    keras-applications-1.0.8   |             py_0          33 KB  anaconda
    keras-preprocessing-1.1.0  |             py_1          36 KB  anaconda
    libprotobuf-3.11.4         |       hd408876_0         4.8 MB  anaconda
    markdown-3.1.1             |           py37_0         113 KB  anaconda
    oauthlib-3.1.0             |             py_0          88 KB  anaconda
    openssl-1.1.1d             |       h7b6447c_4         3.7 MB  anaconda
    opt_einsum-3.1.0           |             py_0          54 KB  anaconda
    protobuf-3.11.4            |   py37he6710b0_0         711 KB  anaconda
    pyasn1-0.4.8               |             py_0          58 KB  anaconda
    pyasn1-modules-0.2.7       |             py_0          63 KB  anaconda
    pyjwt-1.7.1                |           py37_0          32 KB  anaconda
    requests-oauthlib-1.3.0    |             py_0          22 KB  anaconda
    rsa-4.0                    |             py_0          30 KB  anaconda
    tensorboard-2.1.0          |            py3_0         3.4 MB  anaconda
    tensorflow-2.1.0           |gpu_py37h7a4bb67_0           4 KB  anaconda
    tensorflow-base-2.1.0      |gpu_py37h6c5654b_0       365.0 MB  anaconda
    tensorflow-estimator-2.1.0 |     pyhd54b08b_0         273 KB  anaconda
    tensorflow-gpu-2.1.0       |       h0d30ee6_0           2 KB  anaconda
    termcolor-1.1.0            |           py37_1           7 KB  anaconda
    ------------------------------------------------------------
                                           Total:       636.0 MB

The following NEW packages will be INSTALLED:

  _tflow_select      anaconda/linux-64::_tflow_select-2.1.0-gpu
  absl-py            anaconda/linux-64::absl-py-0.9.0-py37_0
  astor              anaconda/linux-64::astor-0.8.0-py37_0
  blinker            anaconda/linux-64::blinker-1.4-py37_0
  c-ares             anaconda/linux-64::c-ares-1.15.0-h7b6447c_1001
  cachetools         anaconda/noarch::cachetools-3.1.1-py_0
  cudnn              anaconda/linux-64::cudnn-7.6.5-cuda10.1_0
  cupti              anaconda/linux-64::cupti-10.1.168-0
  gast               anaconda/linux-64::gast-0.2.2-py37_0
  google-auth        anaconda/noarch::google-auth-1.11.2-py_0
  google-auth-oauth~ anaconda/noarch::google-auth-oauthlib-0.4.1-py_2
  google-pasta       anaconda/noarch::google-pasta-0.2.0-py_0
  grpcio             anaconda/linux-64::grpcio-1.27.2-py37hf8bcb03_0
  keras-applications anaconda/noarch::keras-applications-1.0.8-py_0
  keras-preprocessi~ anaconda/noarch::keras-preprocessing-1.1.0-py_1
  libprotobuf        anaconda/linux-64::libprotobuf-3.11.4-hd408876_0
  markdown           anaconda/linux-64::markdown-3.1.1-py37_0
  oauthlib           anaconda/noarch::oauthlib-3.1.0-py_0
  opt_einsum         anaconda/noarch::opt_einsum-3.1.0-py_0
  protobuf           anaconda/linux-64::protobuf-3.11.4-py37he6710b0_0
  pyasn1             anaconda/noarch::pyasn1-0.4.8-py_0
  pyasn1-modules     anaconda/noarch::pyasn1-modules-0.2.7-py_0
  pyjwt              anaconda/linux-64::pyjwt-1.7.1-py37_0
  requests-oauthlib  anaconda/noarch::requests-oauthlib-1.3.0-py_0
  rsa                anaconda/noarch::rsa-4.0-py_0
  tensorboard        anaconda/noarch::tensorboard-2.1.0-py3_0
  tensorflow         anaconda/linux-64::tensorflow-2.1.0-gpu_py37h7a4bb67_0
  tensorflow-base    anaconda/linux-64::tensorflow-base-2.1.0-gpu_py37h6c5654b_0
  tensorflow-estima~ anaconda/noarch::tensorflow-estimator-2.1.0-pyhd54b08b_0
  tensorflow-gpu     anaconda/linux-64::tensorflow-gpu-2.1.0-h0d30ee6_0
  termcolor          anaconda/linux-64::termcolor-1.1.0-py37_1

The following packages will be SUPERSEDED by a higher-priority channel:

  ca-certificates                                 pkgs/main --> anaconda
  certifi                                         pkgs/main --> anaconda
  conda                                           pkgs/main --> anaconda
  openssl                                         pkgs/main --> anaconda


Proceed ([y]/n)? 


Downloading and Extracting Packages
ca-certificates-2020 | 132 KB    | ##################################### | 100% 
tensorflow-base-2.1. | 365.0 MB  | ##################################### | 100% 
oauthlib-3.1.0       | 88 KB     | ##################################### | 100% 
libprotobuf-3.11.4   | 4.8 MB    | ##################################### | 100% 
google-auth-oauthlib | 21 KB     | ##################################### | 100% 
pyasn1-modules-0.2.7 | 63 KB     | ##################################### | 100% 
openssl-1.1.1d       | 3.7 MB    | ##################################### | 100% 
certifi-2019.11.28   | 156 KB    | ##################################### | 100% 
cachetools-3.1.1     | 14 KB     | ##################################### | 100% 
pyasn1-0.4.8         | 58 KB     | ##################################### | 100% 
protobuf-3.11.4      | 711 KB    | ##################################### | 100% 
opt_einsum-3.1.0     | 54 KB     | ##################################### | 100% 
keras-preprocessing- | 36 KB     | ##################################### | 100% 
tensorboard-2.1.0    | 3.4 MB    | ##################################### | 100% 
_tflow_select-2.1.0  | 2 KB      | ##################################### | 100% 
cudnn-7.6.5          | 250.6 MB  | ##################################### | 100% 
keras-applications-1 | 33 KB     | ##################################### | 100% 
google-pasta-0.2.0   | 44 KB     | ##################################### | 100% 
requests-oauthlib-1. | 22 KB     | ##################################### | 100% 
markdown-3.1.1       | 113 KB    | ##################################### | 100% 
astor-0.8.0          | 45 KB     | ##################################### | 100% 
blinker-1.4          | 21 KB     | ##################################### | 100% 
tensorflow-gpu-2.1.0 | 2 KB      | ##################################### | 100% 
tensorflow-estimator | 273 KB    | ##################################### | 100% 
absl-py-0.9.0        | 165 KB    | ##################################### | 100% 
rsa-4.0              | 30 KB     | ##################################### | 100% 
tensorflow-2.1.0     | 4 KB      | ##################################### | 100% 
grpcio-1.27.2        | 1.4 MB    | ##################################### | 100% 
conda-4.8.3          | 3.0 MB    | ##################################### | 100% 
termcolor-1.1.0      | 7 KB      | ##################################### | 100% 
cupti-10.1.168       | 1.7 MB    | ##################################### | 100% 
gast-0.2.2           | 137 KB    | ##################################### | 100% 
google-auth-1.11.2   | 52 KB     | ##################################### | 100% 
c-ares-1.15.0        | 102 KB    | ##################################### | 100% 
pyjwt-1.7.1          | 32 KB     | ##################################### | 100% 
Preparing transaction: done
Verifying transaction: done
Executing transaction: done

GPUを使用しない場合

GPUを使用せず、CPUのみでディープラーニングを行う場合は、本稿の「Anaconda 2020.02のインストール」から開始し、Tensorflowのインストールは、以下のCPUなしのコマンドでインストールを行います。

$ conda install -c anaconda tensorflow 

おわりに

本稿では、Anacondaの環境にTensorflowをインストールしました。

参考情報

関連記事