代码之家  ›  专栏  ›  技术社区  ›  vestland

如何保存和重用keras模型的所有设置?

  •  1
  • vestland  · 技术社区  · 8 年前

    问题是:

    有如下规定的keras型号(部分):

    # create model
    model = Sequential()
    model.add(Dense(12, input_dim=8, activation='relu'))
    model.add(Dense(8, activation='relu'))
    model.add(Dense(1, activation='sigmoid'))
    # Compile model
    model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
    # Fit the model
    model.fit(X, Y, epochs=150, batch_size=10)
    

    有没有可能在模型中保存所有细节以备将来使用?


    详细信息:

    machinelearningmastery.com 并尝试修改和添加模型的特征/参数,例如

    • 激活='relu'
    • 激活='乙状结肠'
    • 指标=['准确度']

    如问题所示,我想存储模型设置以供以后使用。 我知道这些参数是不同函数的一部分,但它们不都是可能的吗?

    我试过的:

    1 model.save() model.load()

    只返回

    2 model.get_config()

    [{'class\u name':'Dense','config':{'activation':'relu',

    但我还没有找到一种方法来加载配置作为一个独立的模型,而且更多的时候,我似乎找不到所有的设置。

    三。 我也查过其他帖子,比如K eras - Reuse weights from a previous layer - converting to keras tensor

    有什么建议吗?

    2 回复  |  直到 8 年前
        1
  •  3
  •   Hari Krishnan    8 年前

    而不是尝试 model.load() 尝试使用 load_model() model.save()

    from keras.models import load_model   
    load_model(filepath)
    

    您还可以使用 model.to_json() 并使用 model_from_json()

    您可以在Keras文档中看到更多保存和加载模型的方法 here

        2
  •  2
  •   Imtinan Azhar    8 年前

    model.save() from keras.models import load_model 使用 model=load_model(model_name) 加载模型