Minicondaで機械学習用にPythonの環境構築【Windows10】
MinicondaでPython環境構築
Windows 10のパソコンにMinicondaでpythonの環境構築をする方法です。
慣れていない場合は環境構築で躓くこともあるため、非エンジニアの僕でもできた手順をまとめました。新たに「機械学習やディープラーニングをpythonで始めてみよう」という方も多いと思いますので、参考にしていただければ幸いです。
初学者向けのPython環境構築方法として「Anaconda」がよくオススメされますが、自分が把握していないライブラリは結局使えないので、無駄が多くなります。
初めてプログラミングを試すという場合や、とりあえずはWindowsで機械学習を体験してみようという場合は、Minicondaでのセットアップが手軽でちょうどよいです。自分自身でインストールしたパッケージなどをきちんと把握できた方が使いこなす上でも役に立ちます。
一方で、プログラミングに慣れている人や開発に携わるような人は、純粋にPythonとpip/venv等を使って環境構築をしたほうが良いと言われています。これは、開発者が用いるようなパソコンはMac OSやLinuxをOSとして使われており、それらのOSに標準で入っているPythonと競合して不具合の原因になるからだそうです。
AnacondaとMinicondaの違いについては、こちらもご参照ください。
ダウンロードとインストール
Minicondaのシステム要件
参照:https://conda.io/docs/index.html
まずはminicondaのサイトからinstallerをダウンロード。https://docs.conda.io/en/latest/miniconda.html
Windows版は赤枠のいずれかからダウンロードします。自身のPCが32bitか64bitかは、「エクスプローラー」の「PC」を右クリックし「プロパティ」から確認できます。
ダウンロードしたらインストーラーを開く。同意して、「Just Me」を選択。
インストール先のフォルダの選択。必要容量は260MBほど。
インストールが完了したら、スタートメニューから「Anaconda prompt」を開く。conda list
と入力すると、以下のようにインストールされたもの一覧が確認できる。
Python 3.7.0(目的のプログラム言語)やconda(様々なライブラリをインストールするのに必要)などがきちんと導入できたことがわかります。以上でインストールは完了。
仮想環境の設定
なお、ライブラリによってはそれが依存する他のライブラリのバージョンが厳密に決まっており、一方のバージョンアップによって動作保証されなくなることがあります。例えば、scikit-learnがnumpy 1.8.2以上じゃないと動かないけど、それ以前のバージョンのnumpyでやりたいことがあるなど。
そういう場合などに備え、目的ごとに環境(ライブラリのインストール先)を作成し、分けて使用できます。
- 現在の環境の確認:
conda info -e
(現在の環境に*がつく。最初はインストール先直下) - 仮想環境の作成:
conda create -n 仮想環境名
- 仮想環境の選択:
activate 仮想環境名
これで選択した仮想環境にcondaやpipでライブラリをインストールできるようになりました。
ライブラリのインストール
基本的には以下のconda promptに入力するだけです。
一緒にインストールが必要なパッケージも含めてズラッとリストが表示され、「Proceed ([y]/n)?」と確認されるのでyと入力。
conda install インストールするライブラリ名 Proceed ([y]/n)? y
機械学習を行うのに代表的なライブラリです。conda install
に続けて入力すれば、一括でインストール出来ます。
conda install numpy pandas scikit-learn matplotlib
numpy:数値計算用
pandas:データ前処理用
scikit-learn :機械学習用
matplotlib:グラフ描写用
これらを動かすのに必要な付属パッケージ(例えばscikit-learnならnumpy, scipy)も一緒にインストールされます。
注意点として、conda未対応のライブラリをpipでインストールするのはやめたほうがいいです (Jupyter Notebookが起動しないと思ったらAnaconda環境が壊れていた)。
実際になったことがありますが、conda環境が壊れて再インストールしないといけなくなります。
ディスカッション
コメント一覧
まだ、コメントがありません