当我为TensorFlow运行以下测试脚本时

import tensorflow as tf
cifar = tf.keras.datasets.cifar100
(x_train, y_train), (x_test, y_test) = cifar.load_data()
model = tf.keras.applications.ResNet50(
    include_top=True,
    weights=None,
    input_shape=(32, 32, 3),
    classes=100,)
loss_fn = tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True)
model.compile(optimizer="adam", loss=loss_fn, metrics=["accuracy"])
model.fit(x_train, y_train, epochs=5, batch_size=4)

我获得了以下终端输出:

Metal device set to: Apple M2 Pro

systemMemory: 16.00 GB
maxCacheSize: 5.33 GB

2023-03-23 00:26:32.203361: I tensorflow/core/common_runtime/pluggable_device/pluggable_device_factory.cc:305] Could not identify NUMA node of platform GPU ID 0, defaulting to 0. Your kernel may not have been built with NUMA support.
2023-03-23 00:26:32.203521: I tensorflow/core/common_runtime/pluggable_device/pluggable_device_factory.cc:271] Created TensorFlow device (/job:localhost/replica:0/task:0/device:GPU:0 with 0 MB memory) -> physical PluggableDevice (device: 0, name: METAL, pci bus id: <undefined>)
zsh: bus error  python3 app/model/tf_verify.py

推荐答案

虽然官方的Apple documentation版本还不清楚,但tensorflow-macos版本看起来应该与"Release"部分中的tensorflow-metal插件版本相匹配.既然您使用的是tensorflow-macos==2.9,那么您应该使用tensorflow-metal==0.5.0而不是tensorflow-metal==0.6.0.

我能够在MacBook Pro M1 Pro上重现并解决这个问题,训练效果很好.

Python相关问答推荐

_repr_html_实现自定义__getattr_时未显示

如何让Flask 中的请求标签发挥作用

如何在python polars中停止otherate(),当使用when()表达式时?

Godot:需要碰撞的对象的AdditionerBody2D或Area2D以及queue_free?

OR—Tools中CP—SAT求解器的IntVar设置值

ThreadPoolExecutor和单个线程的超时

Cython无法识别Numpy类型

为什么t sns.barplot图例不显示所有值?'

Python将一个列值分割成多个列,并保持其余列相同

如何在Python中将超链接添加到PDF中每个页面的顶部?

如何使用大量常量优化代码?

用由数据帧的相应元素形成的列表的函数来替换列的行中的值

以极轴表示的行数表达式?

try 在单个WITH_COLUMNS_SEQ操作中链接表达式时,使用Polars数据帧时出现ComputeError

迭代工具组合不会输出大于3的序列

根据两个lambda条件筛选组并根据条件创建新列的最佳方式是什么?

为什么fizzbuzz在两个数字的条件出现在一个数字的条件之后时不起作用?

有没有一种简单的方法来访问Polars struct 中的值?

如何正确设置ALLOWED_HOST以允许网络中的其他计算机访问Web

基于符号和位置 Select 数据帧特定区域的毕达式方法