python – Keras model load_weights para Neural Net

Estoy usando la biblioteca Keras para crear una red neuronal en python. He cargado los datos de entrenamiento (archivo txt), inicié la red y “ajusté” los pesos de la red neuronal. Entonces he escrito código para generar el texto de salida. Aquí está el código:

#!/usr/bin/env python

# load the network weights
filename = "weights-improvement-19-2.0810.hdf5"
model.load_weights(filename)
model.compile(loss='categorical_crossentropy', optimizer='adam')

Mi problema es: en la ejecución se produce el siguiente error:

 model.load_weights(filename)
 NameError: name 'model' is not defined

He añadido lo siguiente pero el error aún persiste:

from keras.models import Sequential
from keras.models import load_model

Cualquier ayuda sería apreciada.

Mejor respuesta
primero debe crear el objeto de red llamado modelo, compilarlo y solo después de llamar a model.load_weights (fname)

ejemplo de trabajo:

from keras.models import Sequential
from keras.layers import Dense, Activation


def build_model():
    model = Sequential()

    model.add(Dense(output_dim=64, input_dim=100))
    model.add(Activation("relu"))
    model.add(Dense(output_dim=10))
    model.add(Activation("softmax"))
    model.compile(loss='categorical_crossentropy', optimizer='sgd', metrics=['accuracy'])
    return model


model1 = build_model()
model1.save_weights('my_weights.model')


model2 = build_model()
model2.load_weights('my_weights.model')

# do stuff with model2 (e.g. predict())

Por favor indique la dirección original:python – Keras model load_weights para Neural Net - Código de registro