HPI-DeepLearning / crnn-lid

Code for the paper Language Identification Using Deep Convolutional Recurrent Neural Networks
GNU General Public License v3.0
105 stars 48 forks source link

Cannot load model in "predict.py" #4

Closed alohaleonardo closed 6 years ago

alohaleonardo commented 6 years ago

I was trying to load model model = load_model("../web-server/model/2017-01-31-14-29-14.CRNN_EN_DE_FR_ES_CN_RU.model"), and I got this error, have you seen this before? I think it may be because of keras version. I think you are using Keras V1, but what specific version of keras are you using? Thanks!

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-14-89a8bb686762> in <module>()
     15 print type(ckpt)
     16 
---> 17 model = load_model("../web-server/model/2017-01-31-14-29-14.CRNN_EN_DE_FR_ES_CN_RU.model")
     18 print "get model"
     19 

/f/gfs1/yiyangli/.lang_env/local/lib/python2.7/site-packages/keras/models.pyc in load_model(filepath, custom_objects)
    138         raise ValueError('No model found in config file.')
    139     model_config = json.loads(model_config.decode('utf-8'))
--> 140     model = model_from_config(model_config, custom_objects=custom_objects)
    141 
    142     # set weights

/f/gfs1/yiyangli/.lang_env/local/lib/python2.7/site-packages/keras/models.pyc in model_from_config(config, custom_objects)
    187         raise Exception('`model_fom_config` expects a dictionary, not a list. '
    188                         'Maybe you meant to use `Sequential.from_config(config)`?')
--> 189     return layer_from_config(config, custom_objects=custom_objects)
    190 
    191 

/f/gfs1/yiyangli/.lang_env/local/lib/python2.7/site-packages/keras/utils/layer_utils.pyc in layer_from_config(config, custom_objects)
     32         layer_class = get_from_module(class_name, globals(), 'layer',
     33                                       instantiate=False)
---> 34     return layer_class.from_config(config['config'])
     35 
     36 

/f/gfs1/yiyangli/.lang_env/local/lib/python2.7/site-packages/keras/models.pyc in from_config(cls, config, layer_cache)
   1059             conf = normalize_legacy_config(conf)
   1060             layer = get_or_create_layer(conf)
-> 1061             model.add(layer)
   1062         return model

/f/gfs1/yiyangli/.lang_env/local/lib/python2.7/site-packages/keras/models.pyc in add(self, layer)
    322                  output_shapes=[self.outputs[0]._keras_shape])
    323         else:
--> 324             output_tensor = layer(self.outputs[0])
    325             if type(output_tensor) is list:
    326                 raise Exception('All layers in a Sequential model '

/f/gfs1/yiyangli/.lang_env/local/lib/python2.7/site-packages/keras/engine/topology.pyc in __call__(self, x, mask)
    489                                      '`layer.build(batch_input_shape)`')
    490             if len(input_shapes) == 1:
--> 491                 self.build(input_shapes[0])
    492             else:
    493                 self.build(input_shapes)

/f/gfs1/yiyangli/.lang_env/local/lib/python2.7/site-packages/keras/layers/wrappers.pyc in build(self, input_shape)
    216 
    217     def build(self, input_shape):
--> 218         self.forward_layer.build(input_shape)
    219         self.backward_layer.build(input_shape)
    220 

/f/gfs1/yiyangli/.lang_env/local/lib/python2.7/site-packages/keras/layers/recurrent.pyc in build(self, input_shape)
    731                                       self.W_o, self.U_o, self.b_o]
    732 
--> 733             self.W = K.concatenate([self.W_i, self.W_f, self.W_c, self.W_o])
    734             self.U = K.concatenate([self.U_i, self.U_f, self.U_c, self.U_o])
    735             self.b = K.concatenate([self.b_i, self.b_f, self.b_c, self.b_o])

/f/gfs1/yiyangli/.lang_env/local/lib/python2.7/site-packages/keras/backend/tensorflow_backend.pyc in concatenate(tensors, axis)
    751         return tf.sparse_concat(axis, tensors)
    752     else:
--> 753         return tf.concat(axis, [to_dense(x) for x in tensors])
    754 
    755 

/f/gfs1/yiyangli/.lang_env/local/lib/python2.7/site-packages/tensorflow/python/ops/array_ops.pyc in concat(values, axis, name)
   1108       ops.convert_to_tensor(
   1109           axis, name="concat_dim",
-> 1110           dtype=dtypes.int32).get_shape().assert_is_compatible_with(
   1111               tensor_shape.scalar())
   1112       return identity(values[0], name=scope)

/f/gfs1/yiyangli/.lang_env/local/lib/python2.7/site-packages/tensorflow/python/framework/ops.pyc in convert_to_tensor(value, dtype, name, preferred_dtype)
   1009       name=name,
   1010       preferred_dtype=preferred_dtype,
-> 1011       as_ref=False)
   1012 
   1013 

/f/gfs1/yiyangli/.lang_env/local/lib/python2.7/site-packages/tensorflow/python/framework/ops.pyc in internal_convert_to_tensor(value, dtype, name, as_ref, preferred_dtype, ctx)
   1105 
   1106     if ret is None:
-> 1107       ret = conversion_func(value, dtype=dtype, name=name, as_ref=as_ref)
   1108 
   1109     if ret is NotImplemented:

/f/gfs1/yiyangli/.lang_env/local/lib/python2.7/site-packages/tensorflow/python/framework/constant_op.pyc in _constant_tensor_conversion_function(v, dtype, name, as_ref)
    215                                          as_ref=False):
    216   _ = as_ref
--> 217   return constant(v, dtype=dtype, name=name)
    218 
    219 

/f/gfs1/yiyangli/.lang_env/local/lib/python2.7/site-packages/tensorflow/python/framework/constant_op.pyc in constant(value, dtype, shape, name, verify_shape)
    194   tensor_value.tensor.CopyFrom(
    195       tensor_util.make_tensor_proto(
--> 196           value, dtype=dtype, shape=shape, verify_shape=verify_shape))
    197   dtype_value = attr_value_pb2.AttrValue(type=tensor_value.tensor.dtype)
    198   const_tensor = g.create_op(

/f/gfs1/yiyangli/.lang_env/local/lib/python2.7/site-packages/tensorflow/python/framework/tensor_util.pyc in make_tensor_proto(values, dtype, shape, verify_shape)
    434       nparray = np.empty(shape, dtype=np_dt)
    435     else:
--> 436       _AssertCompatible(values, dtype)
    437       nparray = np.array(values, dtype=np_dt)
    438       # check to them.

/f/gfs1/yiyangli/.lang_env/local/lib/python2.7/site-packages/tensorflow/python/framework/tensor_util.pyc in _AssertCompatible(values, dtype)
    345     else:
    346       raise TypeError("Expected %s, got %s of type '%s' instead." %
--> 347                       (dtype.name, repr(mismatch), type(mismatch).__name__))
    348 
    349 

TypeError: Expected int32, got <tf.Variable 'forward_forward_lstm_1_W_i_5:0' shape=(256, 512) dtype=float32_ref> of type 'Variable' instead.
alohaleonardo commented 6 years ago

problem solved using V1.1.2

shiva33232 commented 6 years ago

how did u train the model using python train.py --config config.yaml??