我想设置类似于the following colab notebook的内容。我有一个100MB的TFRecord,我想使用TPU对其进行训练。
我的训练输入功能如下:
def train_input_fn(batch_size=1024):
dataset = tf.data.TFRecordDataset(TRAIN_RECORD)
dataset = dataset.cache()
dataset = dataset.repeat()
dataset = dataset.shuffle(100)
dataset = dataset.map(parse_fn)
dataset = dataset.batch(batch_size, drop_remainder=True)
return dataset
据我了解,使用TPU时,数据集无法驻留在计算机硬盘上,这就是为什么我添加了dataset.cache()
的原因。但我仍然得到
UnimplementedError(回溯见上文):文件系统方案'[local]'未实现(文件:'train.tfrecord')
答案 0 :(得分:1)
TPU需要Google云存储。不支持本地存储。
https://cloud.google.com/tpu/docs/troubleshooting#cannot_use_local_filesystem
答案 1 :(得分:0)
该行dataset = tf.data.TFRecordDataset(TRAIN_RECORD)
上出现错误,该行与本地fs一起使用。我认为您应该像在笔记本中那样在训练功能之外加载数据。