我在 Kaggle 和 Google Colab 中使用笔记本。在 Kaggle (GPU P100) 中训练模型并尝试将其加载到 Colab (TPU) 中后,我收到此错误:
TypeError: Error when deserializing class 'InputLayer' using config={'batch_shape': [None, 191], 'dtype': 'float32', 'sparse': False, 'name': 'input_layer'}.
Exception encountered: Unrecognized keyword arguments: ['batch_shape']
我之前一直在 Colab T4 GPU(以及 CPU)中加载模型,并且运行得非常好。有人知道我需要做什么才能将现有模型移植到 Colab TPU 吗?
我试图找出每个环境中使用的 keras 版本,所以我运行了这个:
import tensorflow as tf
from tensorflow import keras
print(tf.__version__)
print(keras.__version__)
在 Kaggle GPU P100 和 Colab CPU 中,结果是:
2.15.0
3.4.1
在使用上述代码的 Google Colab TPU 中,tensorflow 版本显示
2.15.0
并且 keras 部分返回错误:
AttributeError: module 'keras.api._v2.keras' has no attribute '__version__'
旁注: 我不知道为什么 Colab 目前阻止我使用 GPU。我没有超出限制,因为过去 3 天我没有使用 GPU 进行训练。根据我的经验,GPU 和 TPU 共享相同的限制,所以我很惊讶 TPU 可以工作(嗯……它至少会激活)而 GPU 却不能。
无论哪种方式,有人可以帮助将模型移植到 TPU 吗?