目次
はじめに
M1 Macでの機械学習環境構築に手間取ったので、備忘録として残しておきます。
この記事で作る環境は以下のようになります。
- Pythonのバージョン:3.8
- 機械学習用のパッケージ
- TensorFlow
- LightGBM
- scikit-learn
- jupyter
この中でもTensorFlowとLightGBMを入れる際にエラーが出ることがあったので、そこを注意して解説していきます。
環境構築
前提として、Anacondaを導入しています。導入方法については『mac anaconda 導入』で検索するとよくわかると思います。
Miniforgeの導入
基本的に現段階ではMiniforgeを利用した環境構築が安定していると思います。
$ wget https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-MacOSX-arm64.sh
$ bash Miniforge3-MacOSX-arm64.sh
仮想環境の作成
Anacondaを使用して仮想環境を作成します。
このとき、Pythonのバージョンは3.8にしておきます。
また、仮想環境の名前はなんでも良いですが、この記事では【myenv】にしておきます。
また、二行目で仮想環境にアクティベートしています。
conda create --name myenv python=3.8
conda activate myenv
パッケージのインストール①
まずは、TensorFlow以外のパッケージをインストールします。
ここでの注意点があります。
- LightGBMの必要要件としてNumpyは1.19.4をインストール
- scilit-learnが動かない場合があるので、scipyをアップデート
- jupyterもこのタイミングでインストールしないと動かなかった(原因不明)
- jupyterのカーネルを設定しておく
これらに注意してインストールします。
conda install numpy=1.19.4
conda install pandas six matplotlib opencv jupyter scikit-learn
pip install -U scipy
conda install lightgbm
conda install ipykernel
ipython kernel install --user --name=myenv
パッケージのインストール②
次に、TensorFlowをインストールします。
これは1行ずつコピペ&実行するだけで大丈夫です。
wget https://github.com/apple/tensorflow_macos/releases/download/v0.1alpha2/tensorflow_macos-0.1alpha2.tar.gz
tar xvzf tensorflow_macos-0.1alpha2.tar.gz
env="$HOME/miniforge3/envs/myenv"
libs="$PWD/tensorflow_macos/arm64/"
pip install --upgrade -t "$env/lib/python3.8/site-packages/" --no-dependencies --force "$libs/grpcio-1.33.2-cp38-cp38-macosx_11_0_arm64.whl"
pip install --upgrade -t "$env/lib/python3.8/site-packages/" --no-dependencies --force "$libs/h5py-2.10.0-cp38-cp38-macosx_11_0_arm64.whl"
pip install --upgrade -t "$env/lib/python3.8/site-packages/" --no-dependencies --force "$libs/tensorflow_addons_macos-0.1a2-cp38-cp38-macosx_11_0_arm64.whl"
conda install -c conda-forge -y absl-py
conda install -c conda-forge -y astunparse
conda install -c conda-forge -y gast
conda install -c conda-forge -y opt_einsum
conda install -c conda-forge -y termcolor
conda install -c conda-forge -y typing_extensions
conda install -c conda-forge -y wheel
conda install -c conda-forge -y typeguard
pip install wrapt flatbuffers tensorflow_estimator google_pasta keras_preprocessing protobuf
pip install tensorboard
pip install --upgrade -t "$env/lib/python3.8/site-packages/" --no-dependencies --force "$libs/tensorflow_macos-0.1a2-cp38-cp38-macosx_11_0_arm64.whl"
これは下の記事を参照しました。2022年9月の段階で動作しました。
https://zenn.dev/karaage0703/articles/0ab9e654cfb0ec
環境の確認
パッケージがインストールできているか確認するためには以下を実行してください。
python
Python 3.8.13 | packaged by conda-forge | (default, Mar 25 2022, 06:04:14)
[Clang 12.0.1 ] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import lightgbm
>>> lightgbm.__version__
'3.3.2'
>>> import tensorflow as tf
>>> tf.__version__
'2.4.0-rc0'
コメント