如何在 m1 mac 上使用原生 tensorflow 运行 sklearn 库

时间:2021-05-25 01:41:06

标签: python tensorflow scikit-learn python-3.8 apple-m1

我已经使用 Apple 描述的运行 python 3.8 的虚拟环境安装了 TensorFlow。这理论上应该在本地运行并利用 GPU。我上次尝试使用 miniforge 安装 TensorFlow,但它无法使用 GPU,因为 miniforge 使用 python 3.9,而 Tensorflow for m1 macs 目前需要 python 3.8。

在 sklearns 网站上,目前安装 sklearn 库的唯一方法是通过 miniforge 使用 conda install sklearn

有没有办法在使用

创建的 tensorflow 环境上安装 sklearn
python3 -m venv TFGPU

我已经尝试过 pip。除了用于预处理的 sklearn 之外,我能够安装大多数其他库。

1 个答案:

答案 0 :(得分:0)

嗨,欢迎来到 SO :)

我是 pip/virtualvenv 用户,所以我必须使用 conda/miniforge 修复我的 venv 以与我的 M1 mac 一起工作,无需切换到 conda 的 venv。所以,我相信这也应该对你有用:

# if not yet installed
xcode-select --install                                      

git clone git://github.com/scikit-learn/scikit-learn.git                                                                        
cd scikit-learn                                             

# mac / mac m1 specific
brew install libomp                                         
brew install miniforge                                      
wget https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-MacOSX-arm64.sh                                                                                                                                                                      
bash Miniforge3-MacOSX-arm64.sh                             

conda init bash
conda create -n conda-sklearn-dev -c conda-forge python numpy scipy cython joblib threadpoolctl pytest compilers llvm-openmp                                                                                                                                           
conda activate conda-sklearn-dev                                                                         

pip install cython                                     
pip install --verbose --no-build-isolation --editable .

现在:

  1. 在 conda venv 上进行测试。您应该获得 0.24.2 版(对于 写作时间)
  2. 停用所有 conda venv-s
  3. 激活您的常规 venv 并再次测试。你应该得到版本 .dev0
  4. 如果缺少 sklearn - 为它做一个简单的 pip 安装 - 它应该安装编译好的