M1macbook已经不是什么新产品了。TensorFlow官方已经给出了安装指南和效率评测。
本文将介绍如何在M1机器上本地安装和运行PyTorch。你使用的M1机型(Air、Pro、Mini或iMac)没有区别。
第一步-安装和配置Miniforge
我花了很多时间为数据科学需求配置我的M1Mac。但是都不能完美的解决我的问题。直到我找到了这个。根据网速的不同,完全设置需要5到10分钟。
首先,你需要安装Homebrew。它是Mac上的一个包管理器,你可以在终端上执行以下命令来安装它:
/bin/bash-c"$(curl-fsSLhttps://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
如果你正在安装一个新的M1Mac,很可能系统里面没有包含XCode构建工具,但是miniforge需要他的一些文件。所以如果这些没有这些文件的,终端会通知你,并询问你是否要安装它们,我们只要安装就好了
一旦安装了XCode构建工具和自制程序,你可以重启终端并安装Miniforge:
brewinstallminiforge
可能有几百MB的下载,所以需要一些时间才能完成。完成之后,为Zshell(zsh)初始化conda:
condainitzsh
最后,重新启动终端。!Miniforge现在已经安装好了,你可以创建虚拟环境了。
第二步-创建虚拟环境
下面的Terminal命令将基于Python3.8创建一个名为pytorch_env的新虚拟环境:
condacreate--namepytorch_envpython=3.8
创建完成后,用以下命令激活它:
condaactivatepytorch_env
你应该看到这样的东西:
第三步-安装PyTorch
你可以在Anaconda的网站上找到一个原生的PyTorch包。你应该在平台下寻找osx-arm64,它告诉你它是M1兼容的:
点击该软件包进入详情页后可以看到安装说明,如下所示:
你可以使用下面的命令来安装PyTorch和Torchvision:
condainstall-cpytorchpytorchtorchvision
PyTorch现在安装好了!让我们接下来测试一下。
第四步-测试
PyTorch的GitHub页面附带了许多示例,我们找个简单的:用于训练手写数字分类器的脚本https://github.com/pytorch/examples/blob/master/mnist/main.py
只需下载该脚本并从终端运行它:
pythonmain.py
看看输出
看样子还不错!让我们打开ActivityMonitor来验证Python是否在本机运行:
如果你在“Kind”下看到“Apple”,这意味着程序是在M1芯片上本地运行的,而不是在Rosetta模拟器下。
最后总结
这样你就可以在M1机器上成功安装PyTorch了。
因为有了miniforge所以安装PyTorch比预期的要容易的多。当然它的运行速度比不上gpu,但这足以让你开始学习和试验。