2018年07月18日

仮想環境管理ツール「Virtualenv」を導入する

「TensorFlow」や「PyTorch」などの機械学習フレームワークを動かすにあたって、Pythonのバージョンなどにおうじて仮想環境を構築し、それぞれの仮想環境内部で各種設定をおこなうのが一般的です。
hatakazuもこの方法を使っていますが、その理由は単純に「よくわからないでいじっているのでかならず問題が発生するが、そうしたときに仮想環境ごと削除してあらたな仮想環境を構築しなおすことで、かんたんにやりなおすことができるから」です。
仮想環境の管理によく使われるのは、「Virtualenv」と「Anaconda」だと思います。

Virtualenv: プロジェクトページGitHubレポジトリ
Anaconda: ホームページダウンロードページANACONDA CLOUD

これら(とくに「Anaconda」)を「仮想環境管理ツール」と呼ぶのが正しいのかどうか、よくわからないところはありますが、とりあえずhatakazuにとって役にたつ部分(複数の仮想環境を構築してそれぞれ独立の環境設定で作業できるようにする機能)についてのみまとめておきます。
ここでは、「Ubuntu 18.04 LTS 日本語 Remix」上に「Virtualenv」を導入し、仮想環境を管理する方法を記述します。

1. 前提となる環境
インストールするコンピュータの仕様は以下のとおり。

--
Dell Inspiron 14 7472 Core i7モデル 18Q42P
OS:Ubuntu 18.04 LTS 日本語 Remix
CPU:インテル Core i7-8550U (4Mキャッシュ、最大4.0GHz)
GPU:NVIDIA GeForce MX150 GDDR5 2GB
メモリー:8GB DDR4 2400MHz(最大16GB)
保存装置:128GB SSD (Windows10) + 1TB 5400rpm HDD (Ubuntu18.04)
--

2. 「Virtualenv」インストール
いまのところ、基本的にはシステムが「Python 3.6」ベースなので、「python3」系の「Virtualenv」を導入していきます。

$ sudo apt install python3-pip python3-dev python-virtualenv


上記のコマンドにより、「python3」系の必要なパッケージがすべてインストールされ、「Virtualenv」を動かすための準備がととのいました。

3. 「Vertualenv」仮想環境の管理
「Vertualenv」仮想環境を管理するために、「~/virtualenv」ディレクトリを作成し、そのなかに仮想環境「environment_name」を構築していきます。

$ mkdir ~/virtualenv
$ cd ~/virtualenv
$ virtualenv --system-site-packages -p python3 environment_name
「--system-site-packages」を指定しないと、デフォルトの「--no-site-packages」が適用され、システム環境にインストールされたパッケージを使わない仮想環境が作成されます。


作成した仮想環境「environment_name」を有効化する場合は、以下のコマンドを使います。

$ source ~/virtualenv/environment_name/bin/activate
(environment_name) $ <- プロンプトに「(environment_name)」と追加され、「Virtuelenv」の「environment_name」環境にいることがわかる。


現在の仮想環境を無効化し、システム環境に戻る。

(environment_name) $ deactivate
$ <- プロンプトから「(environment_name)」が消え、通常のシステム環境にもどったことがわかる。


不要になった仮想環境を削除するには、該当の仮想環境を無効化したうえで、仮想環境名のディレクトリごと削除します。

$ rm -rf ~/virtualenv/environment_name


4. 「pip」コマンドの整理

「pip」じたいのアップデート。
$ pip install -U pip

現在の環境にインストールされているパッケージのリスト。
$ pip list

更新可能なパッケージをマークしてパッケージリストを表示。
$ pip list -o

パッケージをインストールする。
$ pip install package_name

パッケージをアンインストールする。
$ pip uninstall package_name

パッケージをアップデートする。
$ pip install -U package_name

パッケージをインストールしないでダウンロードだけする。
$ pip install package_name -d target_directory

ダウンロードしておいたパッケージをインストールする。
$ pip install /target_directory/package_name

インストールされているパッケージの情報を表示する。
$ pip show package_name


5. 「Virtualenv」のアンインストール
通常のパッケージとおなじく、以下の「apt」コマンドでかんたんにアンインストールできます。

$ sudo apt remove python-virtualenv
$ sudo apt autoremove



参考ウェブページ一覧表(順不同)

https://virtualenv.pypa.io/en/stable/
https://github.com/pypa/virtualenv
posted by hatakazu at 21:49| Comment(0) | Linuxとか | 更新情報をチェックする
この記事へのコメント
コメントを書く
コチラをクリックしてください