Keras输入维度

时间:2017-01-28 21:19:38

标签: python theano keras

我正在努力格式化我的数据。

我在Keras设计了一个简单的模型。 它由两个独立的模型(Embedding图层和LSTM图层)组成。 然后将这两个模型与Merge合并。然后通过一些卷积层将它们组合在一起。

这些是我的嵌入式例句。

x1
>>> array([[ 0, 25,  0,  0,  0]], dtype=int32)
y1
>>> array([[42, 10,  0,  0,  0, 10]], dtype=int32)

使用predict我得到了合并句子所需的单个输出。

model.predict([x1,y1])
>>> array([[ 0.92327869]])

我甚至可以使用

model.fit([x,y],gold[0]) 

训练模型,

gold[0]
>>> array([ 1.])

问题我如何设置示例x_iy_i的格式,以便我可以在fit函数中使用它。 model.predict([[x1,x2],[y1,y2]])无效,收益

TypeError: list indices must be integers or slices, not list

1 个答案:

答案 0 :(得分:0)

因此,按照Keras Embedding文档,您需要提供嵌入层的输入numpy.array维2.因为您有多个输入 - 您需要提供一个numpy数组列表为了将它们提供给多个输入。

在最后一种情况下,您将输入一系列输入列表。这引起了一个问题。为了解决这个问题,您需要numpy.concatenate这两个数组:

x = numpy.concatenate((x1, x2), axis = 0)
y = numpy.concatenate((y1, y2), axis = 0)