如何在凯拉斯重塑Tensor

时间:2017-04-28 09:27:27

标签: machine-learning tensorflow deep-learning keras reshape

我有2个keras张量:LSTM和sims。我打印出2个张量的形状。 LSTM具有形状(1,18),并且sims具有形状(18,)。我想将SIM卡重塑为(1,18)。所以我尝试使用以下代码。

    sims = keras.layers.core.Reshape((1, 18))(sims)

keras.layers.core.Reshape给了我错误:

ValueError:新数组的总大小必须保持不变

我还尝试了lambda图层来包装tensorflow.reshape()。

    sims = keras.layers.Lambda(reshape, output_shape=(1, 18))(sims)

但它给了我一个形状的张量(18,1,18)

所以,我的问题是如何将sims张量重塑为形状(1,18)。

提前致谢!

    LSTMs = keras.layers.concatenate([lstm1, lstm2, lstm3, lstm4, lstm5, lstm6, lstm7, lstm8, lstm9])


    sims = keras.layers.concatenate([sim1, sim1, sim2, sim2, sim3, sim3, sim4, sim4, sim5,
                                     sim5, sim6, sim6, sim7, sim7, sim8, sim8, sim9, sim9])

    print 'shape(sims)b4', keras.backend.int_shape(sims)
    print 'shape(LSTMs)b4', keras.backend.int_shape(LSTMs)

    sims = keras.layers.core.Reshape((1, 18))(sims)
    #sims = keras.layers.Lambda(reshape, output_shape=(1, 18))(sims)

    print 'shape(sims)af', keras.backend.int_shape(sims)

0 个答案:

没有答案