重要!(2021-06-19現在)
継続的に更新されている,M1 Macの環境構築に関する次のとてもためになる記事でも言及されていますが,現在,簡単にpip install
でインストール可能になりました。
pip install torch
pip install torchvision
pip install torchaudio
以下の記事の内容は,ほぼすべて古い内容です。完全にレガシーです。ご注意ください。
ただ,pytorch-lightning
のインストールが上手くいかないという人に関しては,pytorch-lightning
のインストールは有用かもしれません。
概要
- M1搭載MacでのPyTorch(GPU非対応)のインストール手順をまとめています。
- torchaudioのインストールはまだうまくいっていません。
前置き
M1搭載Macでは,GPU対応のTensorflowに注目が集まりがちですが,PyTorchを使用したい方も多いかと思います。Tensorflowの導入記事は数多く見つかったのですが,PyTorchの導入記事が見つからず手間取ったので,簡単にまとめました。
2021-01-27時点で,PyTorchはGPU対応ではありませんが,CPU版の導入は可能です。
方針
- M1搭載Mac対応のPython環境を提供する
miniforge
の使用を前提とします。
手順
miniforge
の環境構築
以下のリンク先から, arm64 (Apple Silicon) 版のインストーラ(シェルスクリプト)をダウンロードします。
https://github.com/conda-forge/miniforge
ダウンロードしたら,インストーラを実行します。(基本的にすべてyes)
source ~/Downloads/Miniforge3-MacOSX-arm64.sh
仮想環境を構築します。myenv
の箇所は好きな名前で良いです。2021-01-27時点で,python3.9系に対応していない有名パッケージ(例えばnumba
や,numba
に依存したlibrosa
など)があるので,python=3.8.6
とするのが良いと思います。
conda create -n myenv python=3.8.6
conda activate myenv
普段使用するパッケージをインストールします。次のパッケージ群は私が普段使っているものなので,すべてインストールする必要はありませんが,torch
が依存しているnumpy
は必ずインストールしてください。
conda install numpy
conda install numba
conda install pandas
conda install openpyxl
conda install scipy
conda install scikit-learn
conda install matplotlib
conda install seaborn
conda install jupyterlab
PyTorchのインストール
torch
のインストール
2021-01-27現在,torch
はconda install torch
やpip install torch
ではインストールできません。
しかし,先人の方々がwheelを作成してくださっているので,それを使用すると簡単にインストールできます。
まず,wheelファイルをダウンロードします。
- 仮想環境作成時に
python=3.8.x
(3.8系)を指定した方は,次のリンクからGoogle Driveのリンクに飛び,画面右上にあるダウンロードのボタンを押し,警告を無視してダウンロードしてください。
https://drive.google.com/file/d/1e-7R3tfyJqv0P4ijZOLDYOleAJ0JrGyJ/view - 仮想環境作成時に
python=3.9.x
(3.9系)を指定した方は,次のリンクからGithubのページに飛び,「Download」ボタンを押してください。
https://github.com/wizyoung/AppleSiliconSelfBuilds/blob/main/builds/torch-1.8.0a0-cp39-cp39-macosx_11_0_arm64.whl
ダウンロードしたら,以下のコマンドでtorch
をインストールできます(python3.8系か3.9系かでファイル名が異なるので,微妙にコマンドは変わります)
pip install ~/Downloads/torch-1.8.0a0-cp38-cp38-macosx_11_0_arm64.whl
pip install ~/Downloads/torch-1.8.0a0-cp39-cp39-macosx_11_0_arm64.whl
以上で,torch
のインストール可能です。
torchvision
のインストール
これまでの手順でtorch
がインストールできていれば,次のコマンドでインストールできます。
pip install torchvision
torchaudio
のインストール
現時点で,うまくいっていません...
pytorch-lightning
のインストール
PyTorchLightningは,PyTorchを効率的に書くためのラッパーパッケージです。
かなり便利なのでおすすめです。
まず,依存パッケージをconda install
コマンドでインストールします。
conda install future pyyaml tqdm fsspec tensorboard
あとは,pip install
コマンドでpytorch-lightning
をインストールしたら終了です。
pip install pytorch-lightning
後書き
先人の方々に感謝です。torchaudio
のインストールが残る課題になります。
因みに,torchaudio
が依存しているlibrosa
は,pip install librosa
でインストール可能です。但し,librosa
が依存しているパッケージsoundfile
はうまくインストールされず,インストールした直後にimport soundfile
を実行するとOSError
が送出され,libsndfile.dylib
が見つからないと言われます。その場合は,見つからないと言われたパスに,libsndfile.dylib
の実体をコピーしておくとうまくいきます(libsndfile
自体はHomebrewを使ってbrew install libsndfile
でインストールでき,インストールした後の実体を見つからないと言われたパスにコピーします)。
参考記事
- miniforgeによるPythonの環境構築
- PyTorchのM1搭載Mac対応についてのIssue
- Pytorch-lightningの公式