Что означает ошибка Uncaught (в обещании) Ошибка: в данных объекта, сгенерированных набором данных, отсутствует требуемый ключ ввода 'density_Dense1_input'. означает? Я пробовал разные вещи, чтобы решить эту проблему, например, разные формы ввода и разный размер пакета, но, похоже, ничего не получалось. У меня есть ввод данных с 484 объектами и 30 строками, а также набор меток с 1 столбцом и 30 строками.
Точная ошибка:
Uncaught (in promise) Error: The feature data generated by the dataset lacks the required input key 'dense_Dense1_input'.
at new e (errors.ts:48)
at Wd (training_dataset.ts:277)
at Pd (training_dataset.ts:222)
at training_dataset.ts:421
at common.ts:14
at Object.next (common.ts:14)
at o (common.ts:14)
Мой код
<html>
<head>
<script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs@1.5.2/dist/tf.min.js"></script>
<title>test</title>
</head>
<body>
<script>
const csvUrlData = '/image_data.csv';
const csvUrlLabel = '/number_data.csv';
const headers_image = Array.from(Array(484).keys());
const headers_image_string = headers_image.map(String);
async function run() {
const csvDataset = tf.data.csv(
csvUrlData,{
hasHeader: false,
columnNames: headers_image_string
});
const csvLabelset = tf.data.csv(
csvUrlLabel, {
columnConfigs: {
label_numbers: {
isLabel: true
}
}
}
);
const flattenedDataset = tf.data.zip({xs: csvDataset, ys: csvLabelset}).batch(5);
const model = tf.sequential();
model.add(tf.layers.dense({
inputShape: [484],
units: 1
}));
model.compile({
optimizer: tf.train.sgd(0.00000001),
loss: 'meanSquaredError'
});
return await model.fitDataset(flattenedDataset, {
epochs: 10,
callbacks: {
onEpochEnd: async (epoch, logs) => {
console.log(epoch + ':' + logs.loss);
}
}
});
}
run();
</script>
</body>
</html>