苹果官网: https://developer.apple.com/metal/tensorflow-plugin/
apple github: https://github.com/apple/tensorflow_macos
方法1: https://www.cyberlight.xyz/passage/tensorflow-apple-m1
方法2: 方法2
1.1 从apple开发者官网给的参考进行下载ARM版的miniforge3
运行以下3行代码完成miniforge3的下载和安装。
chmod +x ~/Downloads/Miniforge3-MacOSX-arm64.sh
sh ~/Downloads/Miniforge3-MacOSX-arm64.sh
source ~/miniforge3/bin/activate
1.2 激活miniforge的conda环境变量(可能不需要)
vim ~/.bash_profile
按 i键 进入编辑模式,输入自己的conda环境路径
export PATH="/Users/shizhiqing/miniforge3/bin:$PATH"
输入完成后,按esc键退出编辑模式,然后输入 :wq 回车保存。
再输入:
source $HOME/.bash_profile
2.1 创建虚拟环境依赖
conda create -n tfpy38 python=3.8
2.2 激活tfpy38解释器
conda activate tfpy38
2.3 创建虚拟环境
python -m venv tensorflow_macosvenv
从apple github下载最新的download_and_install.sh文件,将download_and_install.sh放在tensorflow_macosvenv同一目录。
在tfpy38下运行以下:
bash download_and_install.sh
完成安装。
pip install --upgrade --no-dependencies --force+空格+拖入下图四个文件到 terminal,空格隔开
pip install absl-py astunparse flatbuffers gast google_pasta keras_preprocessing opt_einsum protobuf tensorflow_estimator termcolor typing_extensions wrapt wheel tensorboard typeguard
pip install --upgrade --force --no-dependencies+空格+拖入TensorFlow文件
完成安装。
import tensorflow as tf
import time
print(tf.__version__)
mnist = tf.keras.datasets.mnist
(x_train, y_train),(x_test, y_test) = mnist.load_data()
x_train, x_test = x_train / 255.0, x_test / 255.0
model = tf.keras.models.Sequential([
tf.keras.layers.Flatten(input_shape=(28, 28)),
tf.keras.layers.Dense(128, activation='relu'),
tf.keras.layers.Dropout(0.2),
tf.keras.layers.Dense(10, activation='softmax')
])
model.compile(optimizer='adam',
loss='sparse_categorical_crossentropy',
metrics=['accuracy'])
start = time.time()
model.fit(x_train, y_train, epochs=5)
end = time.time()
model.evaluate(x_test, y_test)
print(end - start) # 3秒多运行完成