I am starting to use the Keras. However, I am confused about the difference between Keras.layers.Concatenate
and keras.backend.concatenate
. It seems different.
For example, when I use the Keras.layers.Concatenate
, there is no error. But, when I use the keras.backend.concatenate
, it will report the error:
RuntimeError: Graph disconnected: cannot obtain value for tensor Tensor("concat_1:0", shape=(?, 227, 227, 3), dtype=float32) at layer "input_2_art"
The code as followed:
input_nc_tensor = Input(shape=(227, 227, 1), name='NC_input')
input_nc_tensor_3channel = keras.layers.Concatenate(axis=-1)([input_nc_tensor, input_nc_tensor, input_nc_tensor])
input_nc_tensor_3channel = keras.backend.concatenate([input_nc_tensor, input_nc_tensor, input_nc_tensor], axis=-1)
input_art_tensor = Input(shape=(227, 227, 1), name='ART_input')
input_art_tensor_3channel = keras.layers.Concatenate(axis=-1)([input_art_tensor, input_art_tensor, input_art_tensor])
input_art_tensor_3channel = keras.backend.concatenate([input_art_tensor, input_art_tensor, input_art_tensor], axis=-1)
input_pv_tensor = Input(shape=(227, 227, 1), name='PV_input')
input_pv_tensor_3channel = keras.layers.Concatenate(axis=-1)([input_pv_tensor, input_pv_tensor, input_pv_tensor])
input_pv_tensor_3channel = keras.backend.concatenate([input_pv_tensor, input_pv_tensor, input_pv_tensor], axis=-1)