问题标签 [google-cloud-tpu]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
tensorflow - 将代码从 keras 转换为 tf.keras 会导致问题
我正在使用本文中的代码在 Keras 中学习机器翻译。这篇文章的代码在 GPU 和 CPU 上运行良好。
现在我想利用 Google Colab TPU。代码没有按原样进行 TPU 化,我需要朝 TF 方向移动。
根据 TPU 的Fashion MNIST 笔记本,我在 Tensorflow 中使用 Keras 层,而不是相反。在进入 TPU 部分之前,我正在执行此转换以查看它是否仍可在 GPU 上运行。这意味着主要改变这个功能,从:
至:
然后我做
但是,当我跑步时,这会导致投诉:
然后在 GPU 内部适配期间,它在 BLAS 负载上失败,如下所示:
这是在转换为 TPU 模型之前。在进行最终的 TPU 转换之前,我只是想确保事情仍然在 CPU 和 GPU 上运行。他们没有。关于为什么我不能走这么远的任何想法?
google-compute-engine - 在 VM 实例上使用 TPU 运行 python 脚本时出现问题
我通过云控制台(不是 ctpu、gcloud)创建了同名的 TPU 和 VM 实例。当我使用命令检查 VM 上的 tpu 时,
gcloud compute tpus list
我的 TPU 已准备就绪。
但是当我运行 python 脚本时:
from tensorflow.contrib.cluster_resolver import TPUClusterResolver
tpu_grpc_url = TPUClusterResolver(tpu="v3-nonpre", zone="us-central1-a").get_master()
它说googleapiclient.errors.HttpError: <HttpError 403 when requesting https://tpu.googleapis.com/v1alpha1/projects/red-splice-230206/locations/us-central1-a/nodes/v3-nonpre?alt=json returned "Request had insufficient authentication scopes.">
我应该做些什么来获得所需的身份验证?
google-cloud-platform - 使用带有 TPU 的现有 VM
根据ctpu 文档,我可以使用以下命令:status
、和up
,以下“ctpu up 将创建一个预装了 TensorFlow 的 Compute Engine VM”在哪里。
但是,我已经在使用 GCP 上有一个虚拟机。我所有的机器学习脚本都在那里。我什至成功地执行了它们,但它们执行速度很慢,我想使用抢占式 TPU。如何连接我的 VM 以使用 TPU 而不是创建新 VM?pause
delete
up
tensorflow - 如何在 Google Colab 中使用 TensorFlow 2.0 将 tf.Keras 模型转换为 TPU?
由于 TF 2.0 没有 tf.contrib 层,我如何转换我的模型以在 TPU 上运行训练,而无需访问tf.contrib.tpu.keras_to_tpu_model()
?
我尝试寻找代码,但所有代码都在 TensorFlow 1.x 上运行
我的数据在 中.npy
,我有一个简单的模型,我只使用model.compile()
并model.fit()
训练它,但看起来模型在 CPU 上运行(需要 30 分钟/epoch 与 GPU 上的 2 分钟/epoch)。
python-3.x - 使用 sparse_categorical_accuracy 和 label_encoded 数据在 TPU 上训练时出现维度错误
我正在尝试使用 Google Colab 的免费 TPU 进行培训,并且我已经使用 tf.data 创建了一个数据集。我的 y_label 是带有 7 个标签的标签编码数据。我得到这个错误
InvalidArgumentError:无法挤压昏暗[1],预期尺寸>1,>'tpu_140081340653808/metrics/metrics/sparse_categorical_accuracy/remov>e_squeezable_dimensions/Squeeze'(操作:'Squeeze')得到7,输入形状:[1024, 7]。
我如何加载我的数据
我的模型
这是我创建我的 tpu 模型并编译模型以进行训练的地方,在我运行之后,我在开始 epoch 1 后收到上述错误
tensorflow - 在 Google Colab 上使用 TPU Error_Cannot find any TPU cores in the system
我正在尝试使用 TPU 在 Google Colab 上运行BERT 模型。
TPU_NAME 到底是什么:
我试图将其定义为:
但是,我遇到了以下错误:
INFO:tensorflow:从 training_loop 记录的错误:在系统中找不到任何 TPU 核心。请仔细检查 TensorFlow 主地址和 TPU 工作人员。可用设备为 [_DeviceAttributes(/job:localhost/replica:0/task:0/device:CPU:0, CPU, 268435456, 13626261043432226130), _DeviceAttributes(/job:localhost/replica:0/task:0/device:XLA_CPU :0, XLA_CPU, 17179869184, 240953179956275984)]。
tensorflow - 使用笔记本连接到谷歌云 TPU 的连接超时
我正在尝试使用 BERT 训练模型。对于 BERT 参数,我希望能够使用我自己的数据集微调参数。
我正在使用 Google Cloud 平台和 TPU 来加速训练过程。
我正在关注本教程,只是替换了以下几行:
替换:
和:
替换:
和:
并定义了以下参数:
运行以下行时:
笔记本尝试连接到以下地址 120 次但不成功并返回超时错误:
我已经创建并实例化了 TPU,并将笔记本运行时类型也设置为 TPU。有人知道为什么我无法使用笔记本连接到 TPU 吗?
tensorflow - AssertionError:使用 predict 函数时,batch_size 必须能被正在使用的 TPU 内核数(1 vs 8)整除
上下文的一些细节:
- 使用 TPU 在 Google Colab 上工作。
- 模型拟合成功,没有任何问题
- 尝试使用预测功能时遇到问题
这是我用来训练的代码:
这是我用来预测的代码:
这是错误(在上方添加了一个箭头,以便您知道错误的位置:
这对我来说毫无意义,因为我在训练时使用的批量大小可以被 8 整除,并且我在预测函数中传递的批量大小可以被 8 整除。
我不确定问题是什么以及如何解决它。任何帮助将非常感激。
tensorflow - BERT 如何利用 TPU 内存?
Google 的 BERT repo 中的README说,即使是长度为 512 的单个句子也不能放在 BERT-Large 模型的 12 GB Titan X 中。
但在 BERT 论文中,它说使用 64 个 TPU 芯片来训练 BERT-Large,最大长度为 512,批量大小为 256。它们如何将大于 256 倍的批量放入仅增加 171 倍的内存中?
从另一个角度来看,我们可以在每个样本的内存使用情况下比较这两种配置:
- TPU:假设TPUv3用于预训练,总TPU内存为32GB/芯片*64芯片=2048GB。根据论文,256 的批量大小和最大长度 512 在此配置中运行良好,这意味着8 GB 内存能够容纳单个样本。此外,如果使用 GPUv2,每个样本的内存使用量将减少到仅 4 GB。
- GPU:12 GB Titan X 甚至无法容纳长度为 512 的单个样本。
为什么 GPU 上的内存消耗要大得多?这是否意味着 TPU 上的内存消耗比 GPU 上的优化方式更好?
python - 如何将 tf.keras 与 bfloat16 一起使用
我正在尝试使用混合精度让 tf.keras 模型在 TPU 上运行。我想知道如何使用 bfloat16 混合精度构建 keras 模型。是这样的吗?