我正在尝试在 Google Colab 上使用 Keras 和他们的 TPU 支持来训练一个 CNN(现在是 ResNet50)。Colab 上的 TPU 虚拟机的本地磁盘很小,因此我无法在其上放置训练图像。
我尝试将训练/测试图像上传到 Google 驱动器,但在 Colab 上从那里访问文件似乎相当慢。我设置了一个谷歌云存储(GCS)存储桶来上传数据。但是找不到关于如何将存储桶连接到 Keras 和 TPU 进行训练的好例子。
在TensorFlow网站上,他们建议只使用 GCS 作为文件系统。但是文件集必须使用“tf.io.gfile”进行访问。对于 Keras,这意味着什么?
Shakespeare TPU 示例展示了安装 GCS 存储桶并将其用于模型存储。所以这样我就可以挂载和引用存储桶。但它并没有告诉我如何使用 GCS 来提供训练数据。我找到的所有示例都使用了一些预定义的 Keras 图像集。
一些说明似乎表明 TPU 在其自己的独立服务器上运行,并且数据应该在 GCS 上以便 TPU 访问它。如果我运行 Keras 生成器,进行图像增强,并将这些信息提供给训练系统,这是否意味着我不断通过网络将图像下载到 Colab VM、修改它们,然后通过网络将图像发送到 TPU 服务器?
使用 TPU 在 Keras 上运行一个简单的 CNN 模型似乎相当复杂。我在这里缺少什么,正确的过程是什么?
任何有具体例子的人都会很棒..