为什么我会遇到角膜贴合形状不匹配?

时间:2020-02-13 20:26:46

标签: python keras

我是Keras的新手,发现了一个我无法理解的错误。

这是我的输入和嵌入层:

fitspline <- vector("list", 10)
set.seed(123)
for (k in 1:10){
  fitspline[[k]] <- train( y ~ bs(x , degree = 3, df = k+2 ), data = data , method = "lm", trControl = train.control)$results[[3]]
}
fitspline <- cbind(c(1:10),unlist(fitspline, use.names=FALSE))
max(fitspline[,2])

在这里我创建我的模型:

chordInput = tf.keras.layers.Input(shape=(825,), dtype='int32')
durationInput = tf.keras.layers.Input(shape=(825,), dtype='int32')

chordEmbedding = tf.keras.layers.Embedding(input_dim=nChords+1, output_dim=embedDim, 
input_length=seqLen)(chordInput)
durationEmbedding = tf.keras.layers.Embedding(input_dim=nDurations+1, 
output_dim=embedDim, input_length=seqLen)(durationInput)

这是我适合我的数据的地方:

lstm = tf.keras.Model(inputs=[chordInput, durationInput], outputs=[chordOutput, durationOutput])

np.array(trainChords)的形状是(825,)这是我所期望的。但是,当我运行此代码时,出现错误:

train = [np.array(trainChords), np.array(trainDurations)]
target = [np.array(targetChords), np.array(targetDurations)]
lstm.fit(x=train, y=target, epochs=epochs)

放大形状不正确。我不知道它来自哪里,因为我可以将形状打印为(825,)。你有什么建议吗?

谢谢!

0 个答案:

没有答案