首页 > 解决方案 > Keras model.get_config() 返回列表而不是字典

问题描述

我正在使用 tensorflow-gpu==1.10.0 和来自 tensorflow 的 keras 作为 tf.keras。我正在尝试使用其他人编写的源代码在我的网络上实现它。

我使用 save_model 保存了我的网络并使用 load_model 加载它。当我使用 model.get_config() 时,我希望有一个字典,但我得到了一个列表。Keras 源文档还说 get_config 返回一个字典(https://keras.io/models/about-keras-models/) .

我试图检查它是否与保存类型有关:save_model 或 model.save 这使得它的保存方式有所不同,但两者都给了我这个错误:

TypeError: list indices must be integers or slices, not str

我的代码块:

        model_config = self.keras_model.get_config()
        for layer in model_config['layers']:
            name = layer['name']
            if name in update_layers:
                layer['config']['filters'] = update_layers[name]['filters']

我的点冻结:

absl-py==0.6.1
astor==0.7.1
bitstring==3.1.5
coverage==4.5.1
cycler==0.10.0
decorator==4.3.0
Django==2.1.3
easydict==1.7
enum34==1.1.6
futures==3.1.1
gast==0.2.0
geopy==1.11.0
grpcio==1.16.1
h5py==2.7.1
image==1.5.15
ImageHash==3.7
imageio==2.5.0
imgaug==0.2.5
Keras==2.1.3
kiwisolver==1.1.0
lxml==4.1.1
Markdown==3.0.1
matplotlib==2.1.0
networkx==2.2
nose==1.3.7
numpy==1.14.1
olefile==0.46
opencv-python==3.3.0.10
pandas==0.20.3
Pillow==4.2.1
prometheus-client==0.4.2
protobuf==3.6.1
pyparsing==2.3.0
pyquaternion==0.9.2
python-dateutil==2.7.5
pytz==2018.7
PyWavelets==1.0.1
PyYAML==3.12
Rtree==0.8.3
scikit-image==0.13.1
scikit-learn==0.19.1
scipy==0.19.1
Shapely==1.6.4.post1
six==1.11.0
sk-video==1.1.8
sklearn-porter==0.6.2
tensorboard==1.10.0
tensorflow-gpu==1.10.0
termcolor==1.1.0
tqdm==4.19.4
utm==0.4.2
vtk==8.1.0
Werkzeug==0.14.1
xlrd==1.1.0
xmltodict==0.11.0

标签: tensorflowkerastypeerror

解决方案


推荐阅读