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.

¿Al aplicar la escala MinMax cada columna debe tratarse de forma independiente para el conjunto de entrenamiento y el conjunto de prueba?

Tengo 8 columnas en mi dataframe: 5 características y otras 3 son objetivos. Después de seguir estos procesos, los resultados obtenidos no son buenos. ¿Alguien puede proporcionar algún comentario sobre los pasos seguidos?

Aquí estoy definiendo 2 variables de escalado minmax, una para las columnas de características y otra para los objetivos. Una vez que el modelo predice los valores, realizamos el escalado inverso en características y objetivos predichos nuevamente para obtener los resultados.

Suavizado y escalado minMax

suavizador = tsmoothie.KalmanSmoother(component=’nivel+tendencia’, componentenoise={‘nivel’:0.1, ‘tendencia’:0.1})
escalador_características = MinMaxScaler(rango de características=(0,1))
escalador_objetivos = MinMaxScaler(rango de características=(0,1))

Configuración de características y objetivos del df

df_características_norm = escalador_características.fit_transform(df_crudo.iloc[:,:5])
df_objetivos_norm = escalador_objetivos.fit_transform(df_crudo.iloc[:,5:])

Suavizando características y objetivos

suavizador.suave(df_características_norm)
características_suavizadas = suavizador.data_suave

suavizador.suave(df_objetivos_norm)
objetivos_suavizados = suavizador.data_suave

Dividimos en datos de entrenamiento y de prueba, entrenamos los datos y preparamos el modelo de entrenamiento.

#Para la transformación inversa, estoy usando el siguiente código.

resultados_prueba_para_todo = modelo.predict(datos_de_prueba)
resultados_prueba_transformados_para_todo = escalador_objetivos.inverse_transform(resultados_prueba_para_todo))

“`
Pero los resultados obtenidos a través de este método no son buenos. ¿Hay algún error en el orden de los pasos o necesito realizar el escalado MinMax y el suavizado en todo el conjunto de datos a la vez?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Basándose en la información proporcionada, es difícil determinar la razón exacta de los pobres resultados. Sin embargo, hay algunas cosas que se pueden considerar para mejorar el proceso:

    1. Se recomienda realizar el suavizado y escalado en todo el conjunto de datos a la vez en lugar de en columnas individuales. Esto ayuda a mantener las relaciones entre los puntos de datos y puede mejorar la precisión de las predicciones.
    2. El proceso de suavizado puede ser sensible a los hiperparámetros utilizados. Podría valer la pena explorar diferentes valores para el parámetro component_noise para encontrar la configuración óptima.

    3. Es importante asegurar que la división entrenamiento-prueba se realice apropiadamente y que el modelo se entrene con suficiente cantidad de datos para capturar los patrones y relaciones en el conjunto de datos.

    En general, podría ser útil revisar el código y el enfoque tomado para asegurarse de que se hayan seguido todos los pasos necesarios y probar diferentes variaciones para ver qué funciona mejor para el conjunto de datos específico en cuestión.

Comments are closed.