ImportError:无法导入名称“ normalize_data_format”

时间:2018-11-23 07:18:27

标签: python-3.x keras deep-learning conv-neural-network keras-layer

我已经阅读了文章Please, see connection strings at MSDN.,其内容足以让人理解。鉴于其在Here上的实现。当我尝试使用给定的代码自行训练时,它在GitHub中给我一个导入错误,如下所示。我正在使用Google Colab环境。经过一些错误的搜索,我得到了以下行与keras version == 2.2.2兼容。我还安装了尚未解决的错误。请帮助我克服它。默认情况下,colab中安装的keras版本是2.2.4

---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-47-f8ce7e15cf87> in <module>()
      9 from keras.layers.merge import Add
     10 from keras.utils import conv_utils
---> 11 from keras.utils.conv_utils import normalize_data_format
     12 
     13 from keras.layers.core import Dropout

ImportError: cannot import name 'normalize_data_format'

---------------------------------------------------------------------------

1 个答案:

答案 0 :(得分:1)

https://github.com/keras-team/keras/blob/master/keras/utils/conv_utils.py

master分支的conv_utils没有normalize_data_format。 其他一些分支机构确实有它,例如tf-keras分支。 这是一个微不足道的功能,下面是其实现:

import keras.backend as K
def normalize_data_format(value):
    if value is None:
        value = K.image_data_format()
    data_format = value.lower()
    if data_format not in {'channels_first', 'channels_last'}:
        raise ValueError('The `data_format` argument must be one of '
                         '"channels_first", "channels_last". Received: ' +
                         str(value))
    return data_format