仅在 TPU 训练 Keras 模型时出现形状错误

Shape error only when TPU training Keras model

首先,这不是我的代码。我只是将其更改为能够在 TPU 上进行训练。原作者是here。我可以在协作笔记本上 运行 它在 GPU 上加速 运行 时间,但是当我进行 TPU 加速 运行 时间时它似乎中断了。

这是我的notebook。它只是给我一个激活函数大小不正确的错误。

ValueError: Error when checking target: expected activation_21 to have shape (1,) but got array with shape (205,)

如果我能得到任何帮助,我将不胜感激,因为我花了大约 3 个小时进行调试。

由于您对标签进行单热编码,因此它们并不稀疏,因此您需要使用 'categorical_accuracy' 作为度量:

model.compile(..., metrics=['categorical_accuracy'])

或更简洁地使用 'accuracy' 让 Keras 根据使用的损失函数推断出正确的指标(在这种情况下将是 'categorical_accuracy',因为您使用 categorical_crossentropy 作为损失函数):

model.compile(..., metrics=['accuracy'])