0.Intro
ドメイン配下でのSambaの設定とADユーザーでのLinuxへのログインまでで構築した環境に本来的な目的の機械学習環境を構築していきます。
そこで問題となるのがAnacondaの有償化です。社員が200人以下なら大丈夫のようだが幸か不幸かもう少し弊社は多い。
なので
Anacondaの有償化に伴いminiconda+conda-forgeでの運用を考えてみた
を参考にさせて貰いながらまず最低限の環境を構築していきます。
要件は以下
- condaで仮想環境を作って作業を行う。
- まずはTableau dataからということでscikit-learnを扱える環境を構築。
- Jupyter Notebookは必須。
- そこにSSH接続でVSCode上で作業する
1.Minicondaの導入
本家からダウンロード
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
実行権限付与
sudo chmod +x Miniconda3-latest-Linux-x86_64.sh
インストール
bash Miniconda3-latest-Linux-x86_64.sh
イントールの最終で.bashrcも編集してくれるので読み込むだけ
source ~/.bashrc
プロンプトに環境が表示されるが一応確認
which conda
homeディレクトリを向いていたらOKかと
記事にあるようにdefaultのchannelを削除しないライセンス違反になるようなので
conda config --remove channels defaults
そして記事には無いがconda-forgeは(今は)自分で入れないといけないらしい
conda config --add channels conda-forge
これでconda環境が整ったのでpythonを入れて環境を作る。バージョンはkaggleに合わせて3.8とします。
conda create -n ml_env python=3.8
有効化
conda activate ml_env
以上でcondaでの仮想環境の構築完了。
2.必要ライブラリの導入
ライブラリを入れて目的の環境を作る。
バージョンは極力kaggle Dockerに合わせたつもりです。
Jupyter Notebook
conda install notebook ipykernel
何は無くともPandas
conda install pandas==1.3.5
目的のscikit-learn(一緒にnumpyも入った)
conda install scikit-learn==0.23.2
EDAに必須
conda install matplotlib
3.VS CodeでSSH
この辺はネットに有益な記事が多々あるのでそちらに譲ります。
Python用拡張機能もがっつり入れないといけませんが凡そ自動化されているので迷うことはほぼ無いですね。ただ初回は非常に時間かかりました。マシンが古くてHDDがへたっているせいでしょうか。
【リモート開発】vscodeにPython拡張機能のインストール
4.完了
以上で機械学習社内勉強会用の環境が出来上がりました。
先ほどテスト的に簡単な分類問題を流してみました。上記の拡張機能のインストールが絶望的に遅かったので心配しましたが、思ったより快適かもしれません。
とりあえずメンバーに公開し、あれこれ弄ってもらいつつ、環境を成熟させつつ勉強に励みたいと思います。