如何保存包含Keras模型的对象?

时间:2018-10-01 13:06:43

标签: python python-3.x keras save

这是我的代码框架:

def build_model(x, y):
    model = tf.keras.models.Sequential()
    model.add(tf.keras.layers.Dense(1, activation='relu'))
    model.compile(loss='mean_squared_error', optimizer='adam')
    model.fit(x, y)
    return model

class MultiModel(object):
    def __init__(self, x1, y1, x2, y2):
        self.model1 = build_model(x1, y1)
        self.model2 = build_model(x2, y2)

if __name__ == '__main__':
    # code that builds x1, x2, y1, y2
    mm = MultiModel(x1, y1, x2, y2)  # How to save mm ?

问题是我不知道如何保存包含多个Keras模型的 mm 对象。

Keras内置的保存方法只能保存Keras模型,因此在这种情况下不可用。 pickle模块无法保存 _thread.RLock对象,因此它也不可用。

可能可以使用Keras保存方法独立保存每个模型,然后重新组合它们并将它们整体保存。但是我不知道如何进行。

有什么想法吗?

0 个答案:

没有答案