【发布时间】:2021-01-05 21:35:11
【问题描述】:
const trainingData = tf.tensor3d(fixedData.map(item =>
[[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16],[...],[...],[...]]
))
model.add(tf.layers.dense({
inputShape: [4,16],
activation: "relu",
units: 4,
}))
model.compile({
loss: "meanSquaredError",
optimizer: tf.train.adam(0.05),
metrics: ['accuracy']
})
model.fit(trainingData, outputData, {epochs: 10})
.then((history) => {
// console.log(history)
model.predict(testingData).print()
})
错误: (节点:5118)UnhandledPromiseRejectionWarning:错误:检查输入时出错:预期 dense_Dense1_input 具有 2 个维度。但得到了形状为 935,4,16 的数组。
inputShape 可以是二维的吗?
【问题讨论】:
-
trainingData是一个 3D 张量,所以请改用tf.tensor2d()。 -
我的代码现在仅在输出具有 [4,4] 形状时才有效。输出的形状是否取决于输入的形状?我的输出应该是 2d 而输入是 3d。
标签: tensorflow multidimensional-array neural-network layer tensorflow.js