Keras:设置一个带有序列错误的数组元素

时间:2018-05-20 05:00:36

标签: keras lstm

我尝试构建一个非常简单的LSTM来分类文本。

def encoded(texts):
  res = [one_hot(text, 100000, filters='!"#$%&()*+,-./:;<=>?@[\]^_`{|}~', split=' ') for text in texts]
  return res

def train(X, y, X_t, y_t):
  X = encoded(X)
  X_t = encoded(X_t)   

  model = Sequential()
  model.add(Embedding(100000,100))
  model.add(Bidirectional(LSTM(20,return_sequences = True),merge_mode='ave'))
  model.add(TimeDistributed(Dense(1, activation='sigmoid')))

  model.compile(loss='binary_crossentropy', optimizer='rmsprop', metrics=['accuracy'])
  model.fit(np.array(X), np.array(y), batch_size=16, epochs=8)

  score = model.evaluate(np.array(X_t), np.array(y_t), batch_size = 16)
  print(score)

但是我收到了这个错误:

ValueError:使用序列设置数组元素。

似乎嵌入层没有创建正确的维度向量或输入X(X_t)的格式有问题。

有什么想法吗?

0 个答案:

没有答案