zoukankan      html  css  js  c++  java
  • module 'keras.engine.topology' has no attribute 'load_weights_from_hdf5_group_by_name'

    参考:

    https://blog.csdn.net/heiheiya/article/details/81111932

    https://blog.csdn.net/c20081052/article/details/80745969

    打开 model.py,找到load_weights  函数,大概在2842行,修改位置如下:

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

    def load_weights(self, filepath, by_name=False, exclude=None):
        """Modified version of the correspoding Keras function with
        the addition of multi-GPU support and the ability to exclude
        some layers from loading.
        exlude: list of layer names to excluce
        """
        import h5py

        #修改第一处
        #from keras.engine import topology
        from keras.engine import saving

        if exclude:
          by_name = True

        if h5py is None:
          raise ImportError('`load_weights` requires h5py.')
        f = h5py.File(filepath, mode='r')
        if 'layer_names' not in f.attrs and 'model_weights' in f:
          f = f['model_weights']

        # In multi-GPU training, we wrap the model. Get layers
        # of the inner model because they have the weights.
        keras_model = self.keras_model
        layers = keras_model.inner_model.layers if hasattr(keras_model, "inner_model")
          else keras_model.layers

        # Exclude some layers
        if exclude:
          layers = filter(lambda l: l.name not in exclude, layers)

        if by_name:

          #修改第二处
          #topology.load_weights_from_hdf5_group_by_name(f, layers)
          saving.load_weights_from_hdf5_group_by_name(f, layers)
        else:

          #修改第三处
          #topology.load_weights_from_hdf5_group(f, layers)
          saving.load_weights_from_hdf5_group(f, layers)
        if hasattr(f, 'close'):
          f.close()

        # Update the log directory
        self.set_log_dir(filepath)

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

    修改成功以后保存,并重启,然后运行代码

  • 相关阅读:
    buildroot编译文件系统,出现mount: you must be root. can't open /dev/console: Permission denied这种错误。
    Ubuntu 18.04实现实时显示网速
    git 第一次push 出现fatal: 无法读取远程仓库。
    Sql2012 AlwaysOn
    SCVMM 安装
    POJ 3537 Crosses and Crosses
    HDOJ 1524 A Chess Game
    HDOJ 1907 John
    HDOJ 1848 Fibonacci again and again
    HDOJ 1536 S-Nim
  • 原文地址:https://www.cnblogs.com/herd/p/9618564.html
Copyright © 2011-2022 走看看