5
5

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 1 year has passed since last update.

condaとpipとTensorFlow【Python】

Last updated at Posted at 2021-11-28

はじめに

Anaconda環境でTensorFlow2.4.1を用いてコードを書いていたのですが、TensorFlow2.6以降に追加された関数を利用したかったので、下記のようにcodnaインストールできるバージョンを探してみました。

conda search tenosrflow-gpu

すると、「tensorflow-gpu 2.4.1」(Anacondaのバージョンによっては「tensorflow-gpu 2.5.0」)が最新のバージョンとなっており、望む結果ではありませんでした。

#conda install tensorflow と tensorflow-gpu
TensorFlow2.x系は基本的にGPUを用いるので、「tensorflow」と「tensorflow-gpu」のどちらをインストールしてもGPUを用いることができるらしい(先に結論:condaではできない)ので、インストール可能な「TensorFlow」のバージョンを調べてみました。

conda search tensorflow

すると、「tensorflow 2.6.0」が最新のバージョンとなっていました。試しに(以下、失敗しますが)「tensorflow 2.6.0」を念のため仮想環境内でインストールしてみます。

conda create -n tf260 tensorflow=2.6.0

これで、TensorFlow2.6.0をインストールすることができたので、Pythonを起動してGPUを認識できているかを確認します。

GPUを認識しているかどうかを確認するコード
from tensorflow.python.client import device_lib
device_lib.list_local_devices()

結果、GPUを認識していなことが分かります。ここから、conda installでGPUを利用したい場合は「tensorflow-gpu」をインストールする必要があるということが分かりました。

解決策はpip

Anacondaを利用する際には基本的にconda installを利用するように心掛けていますが、今回は仕方ないのでpip installを用いることにします。念のため仮想環境内で作業します。

conda create -n tf260pip pip
conda activate tf260pip
pip install tensorflow==2.6.0

これで正常にtensorflow2.6.0をインストールすることができました!では、GPUを認識しているかどうかを確認してみると(先ほどのコードを再利用)、しっかりとGPUを認識していることが分かります!

conda install でGPUに対応したTensorflowをインストール

conda installする際にビルドを指定することで、CUDAやcuDNNも同時にインストールすることができるようです。詳しくは以下の記事に記載しています。
conda install のみでTensorFlowとGPU環境(CUDA、cuDNN)を構築する

まとめ

知っている方も多いと思いますが、condaとpipでインストールする際の参照先は異なります。condaの場合でGPU環境を利用したいなら「tensorflow-gpu」をインストールする必要がありますが、pipの場合は「tensorflow」をインストールすることでGPUを認識することができるようです。

5
5
0

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
5
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?