Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

176
Visualizações
ValueError: los logits y las etiquetas deben tener la misma forma, pero tienen formas [2] y [2,1]

Ayúdenme a comprender mi error en el código TensorFlow.js. Intentando superar la clasificación binaria y fitDataset.

Ejemplo simplificado https://jsfiddle.net/9w8hx21o/4/ .

En el ejemplo, tengo 4 observaciones que miden 4 por 7 y tienen cuatro etiquetas. Al comienzo del entrenamiento, aparece el error "los registros y las etiquetas deben tener la misma forma, pero tienen formas [2] y [2,1]".

 const xs = [ [ [1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1], ], [ [2, 2, 2, 2, 2, 2, 2], [2, 2, 2, 2, 2, 2, 2], [2, 2, 2, 2, 2, 2, 2], [2, 2, 2, 2, 2, 2, 2], ], [ [3, 3, 3, 3, 3, 3, 3], [3, 3, 3, 3, 3, 3, 3], [3, 3, 3, 3, 3, 3, 3], [3, 3, 3, 3, 3, 3, 3], ], [ [4, 4, 4, 4, 4, 4, 4], [4, 4, 4, 4, 4, 4, 4], [4, 4, 4, 4, 4, 4, 4], [4, 4, 4, 4, 4, 4, 4], ] ] const ys = [0, 1, 0, 1] const model = tf.sequential() model.add(tf.layers.inputLayer({ inputShape: [4, 7] })) model.add(tf.layers.conv1d({ filters: 16, kernelSize: 2, activation: 'relu', })) model.add(tf.layers.flatten()) model.add(tf.layers.dense({ units: 1, activation: 'sigmoid' })) model.summary() model.compile({ optimizer: 'adam', loss: 'binaryCrossentropy', metrics: ['accuracy'] }) const xDataset = tf.data.array(xs); const yDataset = tf.data.array(ys); const xyDataset = tf.data.zip({xs: xDataset, ys: yDataset}).batch(2).shuffle(2) const print_xyDataset = async () => { await xyDataset.forEachAsync(e => { console.log('\n'); for (let key in e) { console.log(key + ':'); console.log('Shape ' + e[key].shape) e[key].print(); } }) } print_xyDataset() const train = async () => { await model.fitDataset(xyDataset, { epochs: 4, callbacks: { onEpochEnd: async (epoch, logs) => { console.log(`EPOCH (${epoch + 1}): Train Accuracy: ${(logs.acc * 100).toFixed(2)}\n`); }, } }) } train().catch(e => console.log(e))
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Probablemente esté ejecutando una nueva versión de TF. El antiguo TF crearía un comportamiento matemáticamente equivalente pero internamente inesperado si a true y pred les faltara una atenuación adicional. Hacer esto

const ys = [[0], [1], [0], [1]]

y a ver si eso lo soluciona.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda