はじめに
何番煎じかはわかりませんが、Ubuntuに新規で機械学習(Python)環境を構築した際のメモを残します。
システム(Ubuntu)にプリインストールされているPythonを用いて、最小限のインストールでお手軽に環境構築したい方向けです。
環境:Ubuntu 20.04 LTS
Python, pip, venvのインストール
Ubuntu 20.04 LTSの通常ディストリビューションであれば、Python3はプリインストールされているはずです。
念のため、ターミナルに以下を入力し、確認しておきます。
python3 -V
Python 3.8.2
# インストールされていない場合
sudo apt install python3
次に、各種ライブラリのインストールに必要となるpipをインストールします。
sudo apt install python3-pip
# インストールの確認
pip3 --version
システムで使用しているPythonにライブラリを直でインストールすることは、最悪システムを壊してしまうこともあり、おすすめできません。
そこで、仮想環境を構築し、ライブラリのインストールがシステムの依存環境などに影響を与えないようにします。
UbuntuプリインストールのPythonでvenvを使用するには下記インストールが必要になります。
sudo apt install python3-venv
仮想環境の作成と有効化
ライブラリをインストールする前に仮想環境を作成しておきます。
# ホームディレクトリ内.venvフォルダにMLという仮想環境を作成
python3 -m venv .venv/ML
下記を実行し、作成した仮想環境を有効化します。
cd .venv/ML
source bin/activate
# 無効化する際は下記を実行
deactivate
ライブラリのインストール
仮想環境内にライブラリをインストールしていきます。
下記はscikit-learn, matplotlib, pandasを一括でインストールする例です。
pip3 install -U scikit-learn ,matplotlib, pandas
※Matplotlibでプロットの表示plt.show()
をした際に下記のようなエラーが出る場合があります。
UserWarning: Matplotlib is currently using agg, which is a non-GUI backend, so cannot show the figure.
Python上でUIの描画に必要なTkinterがインストールされていないためです。
合わせてインストールしておくといいです。
sudo apt install python3-tk
以上で環境構築は終了です。
追記
VSCodeでコーディングする場合は、先ほど作成した仮想環境をデフォルトのインタプリタに設定しておくと便利です。
Settings.jsonに下記を追加しておくと、自動的に仮想環境を有効化してプログラムを実行してくれます。
"python.defaultInterpreterPath": "/home/$USERNAME/.venv/ML/bin/python3",