0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

pyenv上でAnacondaを使ったKeras(Tensorflow)のインストール

Posted at

はじめに

完全に自分用なのでグダグダガバガバです。参考元の記事を見ていただいたほうがいいかもしれません。
大いなる力がない人の為の記事です。

環境

  • OS : Debian 9.4
  • CPU : Intel Core i7-5930K 3.5GHz
  • GPU : GeForce GTX 980Ti
  • Shell : bash

pyenvのダウンロードとセッティング

参考元 : [pyenvのインストール、使い方、pythonのバージョン切り替えできない時の対処法] (https://qiita.com/koooooo/items/b21d87ffe2b56d0c589b)

pyenvを以下のコマンドでGithubからダウンロード(クローン)します。

 $ git clone https://github.com/pyenv/pyenv.git ~/.pyenv 

~/.bashrcにPATHを追加しましょう。

 $ echo '##-------- pyenv settings --------##' >> ~/.bashrc
 $ echo 'export PYENV_HOME=$HOME/.pyenv' >> ~/.bashrc
 $ echo 'export PATH=$PATH:$PYENV_HOME/bin' >> ~/.bashrc
 $ echo 'eval "$(pyenv init -)"' >> ~/.bashrc

エディターで.bashrcに直書きでも大丈夫です。

 export PYENV_HOME=$HOME/.pyenv
 export PATH=$PATH:$PYENV_HOME/bin
 eval "$(pyenv init -)"

最後の evalコマンドを忘れないようにしましょう。
"pyenv init -"ではpyenvで使用する環境変数を出力します。
evalコマンドでは直後の文字列を評価した値(コマンドとして実行した出力)を実行します。

"pyenv init -"の出力
export PATH="/home/username/.pyenv/shims:${PATH}"
export PYENV_SHELL=bash
source '/home/username/.pyenv/libexec/../completions/pyenv.bash'
command pyenv rehash 2>/dev/null
pyenv() {
  local command
  command="${1:-}"
  if [ "$#" -gt 0 ]; then
    shift
  fi

  case "$command" in
  rehash|shell)
    eval "$(pyenv "sh-$command" "$@")";;
  *)
    command pyenv "$command" "$@";;
  esac
}

追加したPATHを適応させましょう。
下記のコマンドを実行するか,再度ログインしましょう

 $ source ~/.bashrc

pyenvでAnacondaをインストール

下記のコマンドでAnacondaをインストールしましょう。Anacondaのバージョンはお好きにどうぞ。

$ pyenv install anaconda3-5.3.1

pythonのバージョン切り替えは,"local" オプションで今いるディレクトリに,"global" オプションで全体に反映されます。

 $ pyenv local anaconda3-5.3.1
 $ pyenv global anaconda3-5.3.1

適応されているかpythonのバージョンを確認しましょう。

 $ python -V
 Python 3.6.8 :: Anaconda, Inc.

上のようになれば大丈夫です。 Python自体のバージョンは変わることがありますので末尾に "Anaconda, Inc." と入っているのが確認できれば問題ありません。

パッケージのインストール

KerasとTensorflowをインストールしましょう。
GPUも使うのでtensorflow-gpu, cudatoolkit, cudnnを入れましょう。

 $ conda install cudatoolkit==9.0
 $ conda install cudnn==7.3.1
 $ conda install tensorflow-gpu==1.9.0
 $ conda install keras==2.2.4

私の環境ではこれでkerasのexampleがGPUで動作しました。
tensorflow-gpuを最新の1.13.xにすると,CUDA Tool KitとかcuDNNのバージョンがよくわからないことになるので動く組み合わせを探してみてください。

補足:GPUメモリの制限

複数人で使うことを想定したマシンにはGPUメモリに制限をかけなければメモリの取り合いになってしまいます。

制限をかけるには以下のコードをソースの先頭に記入してください。
0.25 は約25%ではなくあくまでも目安です。私の環境では約29%(1818MiB/6083MiB)の制限がかかりました。

import warnings
warnings.simplefilter(action='ignore', category=FutureWarning)
# GPUメモリ制限
import tensorflow as tf
config = tf.ConfigProto()
config.gpu_options.per_process_gpu_memory_fraction = 0.25 
config.gpu_options.visible_device_list = '0'
session = tf.Session(config=config)
from keras import backend as K
K.set_session(settion)

参考にしたサイト

0
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?