プログラミング

Anacondaで仮想環境を作るときに役立つTips集

PCやるハリネズミ

前回、『Anacondaで仮想環境を作ってC++プログラミングをするまで』という記事を書きました。この記事で紹介した仮想環境の作り方以外にも目的別でお勧めしたい仮想環境の作り方があるので、本記事で紹介したいと思います。

Python以外の仮想環境を作る

『Anacondaで仮想環境を作ってC++プログラミングをするまで』という記事で紹介した通り、python以外の仮想環境を作る場合は以下のコマンドを使います。

conda create -n cpp

このコマンドを使えば、pythonの入っていない真っ白な仮想環境ができます。
(“cpp”という仮想環境名は目的に応じて変更します。)

Pythonバージョンを指定して仮想環境を作る

深層学習フレームワークのTensorFlowなどpython3.5で動くソフトを使いたい場合は、以下のコマンドでpythonバージョンを指定した仮想環境を生成します。

conda create -n TensorFlow python=3.5

python=3.5.2など、より細かいバージョン指定もできます。もちろんpython2系(python=2.7など)も指定できます。

上記のコマンドで、python3.5.5の他にpipなどの最低限のソフトだけをインストールしてくれれます。そのため、余分なソフトのない軽い仮想環境が生成できます

The following packages will be downloaded:

package | build
—————————|—————–
python-3.5.5 | h0c2934d_2 18.2 MB
pip-10.0.1 | py35_0 1.8 MB
wheel-0.31.1 | py35_0 81 KB
setuptools-39.2.0 | py35_0 593 KB
wincertstore-0.2 | py35hfebbdb8_0 13 KB
certifi-2018.4.16 | py35_0 143 KB
————————————————————
Total: 20.8 MB

以下のような表示が出るので、キーボードから”y” → ”Enter”と打ち込むとインストールが始まります。”n” → ”Enter”でキャンセルできます。

Proceed ([y]/n)? y

定番Pythonパッケージ入り仮想環境を作る

Pythonの定番パッケージ(numpyとか)も丸ごとインストールした仮想環境を作るには以下のコマンドを使います。

conda create -n Keras python=3.5.4 Anaconda

以下のようにPythonのバージョンを指定しない場合は、現時点でAnacondaがサポートしている最新バージョンがインストールされます。

conda create -n Keras Anaconda

インストールされるpythonパッケージは以下の通りです。長いので一部のみ書きますね。定番のものは全て入ります

alabaster: 0.7.10-py36hcd07829_0
anaconda: 5.2.0-py36_3
anaconda-client: 1.6.14-py36_0
anaconda-project: 0.8.2-py36hfad2e28_0
~
cython: 0.28.2-py36hfa6e2cd_0
cytoolz: 0.9.0.1-py36hfa6e2cd_0
~
h5py: 2.7.1-py36h3bdd7fb_2
hdf5: 1.10.2-hac2f561_1
~
jupyter: 1.0.0-py36_4
jupyter_client: 5.2.3-py36_0
jupyter_console: 5.2.0-py36h6d89b47_1
jupyter_core: 4.4.0-py36h56e9d50_0
jupyterlab: 0.32.1-py36_0
jupyterlab_launcher: 0.10.5-py36_0
~
matplotlib: 2.2.2-py36h153e9ff_1
~
numpy: 1.14.3-py36h9fa60d3_1
numpy-base: 1.14.3-py36h555522e_1
numpydoc: 0.8.0-py36_0
odo: 0.5.1-py36h7560279_0
olefile: 0.45.1-py36_0
openpyxl: 2.5.3-py36_0
openssl: 1.0.2o-h8ea7d77_0
packaging: 17.1-py36_0
pandas: 0.23.0-py36h830ac7b_0
pandoc: 1.19.2.1-hb2460c7_1
pandocfilters: 1.4.2-py36h3ef6317_1
~
pillow: 5.1.0-py36h0738816_0
pip: 10.0.1-py36_0
python: 3.6.5-h0c2934d_0
~
qt: 5.9.5-vc14he4a7d60_0
qtawesome: 0.4.4-py36h5aa48f6_0
qtconsole: 4.3.1-py36h99a29a9_0
qtpy: 1.4.1-py36_0
~
scikit-image: 0.13.1-py36hfa6e2cd_1
scikit-learn: 0.19.1-py36h53aea1b_0
scipy: 1.1.0-py36h672f292_0
seaborn: 0.8.1-py36h9b69545_0
send2trash: 1.5.0-py36_0
setuptools: 39.1.0-py36_0
~
wheel: 0.31.1-py36_0
widgetsnbextension: 3.2.1-py36_0
zlib: 1.2.11-h8395fce_2

pythonのバージョンに依存しますが、約460MBの容量でした。全部入りの代償で結構重い仮想環境ができます。…今まで私が使ったことのないパッケージもあるので、ハードディスクの空き容量と要相談ですね。

先ほど同様、以下の表示が出るので、キーボードから”y” → ”Enter”と打ち込むとインストールが始まります。不要なソフトが多すぎる!など気になる場合は”n” → ”Enter”で一旦キャンセルしても良いかもしれません。

Proceed ([y]/n)? y

後述しますが、間違えて仮想環境を作成してしまっても、後から簡単に削除できます。なので、そんなに躊躇せず、仮想環境を作成してみてくださいな。

既にある仮想環境のクローンを作る

既にTensorFlowやChainer専用など目的別の仮想環境が生成済みの場合、その仮想環境をベースにちょこっとだけ別のソフトをインストールしたい!けど元の仮想環境も残しておきたい!という場合があります。そんなときは、以下のコマンドでクローンを生成します。

【ベース仮想環境】:Chainer
【新規仮想環境】:ChainerCV

conda create -n ChainerCV –clone Chainer

これで、Chainerと同じ環境のChainerCVという環境ができるので、ChainerCVの方に追加したいソフトをインストールすれば良いですね。

環境確認

今まで作った仮想環境は、以下のコマンドで確認できます。

conda info -e

「*」がついてる方がアクティブ環境です。

base *       C:\Anaconda3
Chainer      C:\Anaconda3\envs\Chainer
ChainerCV  C:\Anaconda3\envs\ChainerCV

環境切り替え

アクティブ環境を“Chainer”に切り替えるには以下のコマンドを使います。

activate Chainer

目的に応じて仮想環境名を変更してください。

インストール済みソフトの確認

アクティブ環境にインストールされたソフトやソフトのバージョン確認をするには以下のコマンドを使います。

conda list

環境の削除

不要になった仮想環境は以下のコマンドで削除できます。

conda remove -n TensorFlow –all

どの方法で仮想環境を作るべきか?

「どの方法で仮想環境を作るべきか?」に正解はないかもしれませんが、個人的には以下の点がポイントだと考えています。

  • Python以外でAnacondaを使いたい
  • 必要なソフトのみで構成された仮想環境を作りたい
  • 楽してPython定番パッケージ入りの仮想環境を作りたい

また、自分オリジナルの汎用的な仮想環境を作り、それをベースにクローンを生成するのもスマートだと思います

環境の削除も簡単にできるので、いろいろ試してみて「僕が考える最強の仮想環境」を作ってみてください。

Anacondaで快適な仮想環境ライフを楽しんで下さいな。