Colab中的TensorFlow 2.5更新打破了keras代码



我一直在谷歌colab中使用Keras运行几个深度学习模型。我的代码运行得很好,但今天突然出现了很多错误,报告了进口的问题。在这里粘贴一个。

---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-3-745bb0894037> in <module>()
19 from keras.preprocessing.image import ImageDataGenerator
20 from keras.utils import np_utils
---> 21 from keras_contrib.applications.densenet import DenseNetFCN
22 from keras_contrib.losses.jaccard import jaccard_distance
1 frames
/usr/local/lib/python3.7/dist-packages/keras_contrib/applications/densenet.py in <module>()
66 from keras.layers import BatchNormalization
67 from keras.regularizers import l2
---> 68 from keras.utils.layer_utils import convert_all_kernels_in_model
69 from keras.utils.data_utils import get_file
70 from keras.engine.topology import get_source_inputs
ImportError: cannot import name 'convert_all_kernels_in_model' from 'keras.utils.layer_utils' (/usr/local/lib/python3.7/dist-packages/keras/utils/layer_utils.py)

所以我为任何可能有问题的人回答我的问题。他们将Colab中的Tensorflow和Keras更新到了2.5版本,并且一些函数没有迁移(即convert_all_kernels_in_model(。对我来说,解决方案是粘贴NN架构的代码,并用该函数注释行,因为我没有使用它。我知道这不是最好的解决方案,但它让我度过了我需要的难关。

TensorFlow 2.5版的最终版本需要每晚对keras进行开发构建,这似乎是这些问题的根源。https://github.com/tensorflow/tensorflow/blob/v2.5.0/tensorflow/tools/pip_package/setup.py#L107

相关的TensorFlow问题报告您的经验是:https://github.com/tensorflow/tensorflow/issues/49823

最新更新