es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

No pude entender la salida de esta red neuronal.

He dado una matriz de entrada (3000,1) y el resultado que espero es una probabilidad múltiple de 0,1,2.
He escalado mis entradas entre 0 y 1, entonces ¿por qué mi resultado está por encima de 1 y qué son esos números separados por guiones junto con él?

training_input, training_label = shuffle(training_input, training_label)

# Los valores de training_input van de 1 a 100, por lo que los escalamos entre 0 y 1
scaler = MinMaxScaler(feature_range=(0, 1))
scaled_training_input = scaler.fit_transform(training_input.reshape(-1,1))

model = tf.keras.models.Sequential()

model.add(tf.keras.layers.Dense(16, input_shape=(1,), activation='relu'))
model.add(tf.keras.layers.Dense(32, activation='relu'))
model.add(tf.keras.layers.Dense(3, activation='softmax'))
<img src="https://i.stack.imgur.com/OXEmG.png" alt="Descripción de la imagen">
Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Según el fragmento de código proporcionado, parece que la matriz de entrada ha sido escalada para estar entre 0 y 1 utilizando la función MinMaxScaler. Sin embargo, los valores de salida parecen mostrarse como números decimales mayores que 1, con valores separados por guiones.

    Esto podría estar ocurriendo debido al uso de la función de activación softmax en la capa final de la red neuronal. La función softmax produce una distribución de probabilidad sobre las clases de salida, donde la suma de las probabilidades para todas las clases es igual a 1. Sin embargo, en algunos casos, los valores de probabilidad de salida pueden ser mayores que 1, especialmente al trabajar con números grandes.

    Los valores separados por guiones podrían deberse a errores de redondeo en el cálculo de las probabilidades. Una solución para evitar este tipo de problemas podría ser utilizar una función de activación diferente, como sigmoid, que produce valores entre 0 y 1 en lugar de softmax. Además, sería útil comprobar el rango de valores en los datos de etiquetas de entrenamiento, ya que podrían estar causando que las probabilidades de salida sean más altas de lo esperado.

Comments are closed.