• No results found

6.2.1. Alcance

El alcance de este documento es la explicación y desarrollo de un programa basado en el lenguaje de programación R para la verificación de todos los aspectos relacionados con la mitigación del overfitting en el aprendizaje de las redes neuronales.

6.2.2. Variables

A continuación, se van a definir en una tabla las variables comunes a los tres programas implementados en esta parte y su función dentro de esta.

Nombre Descripción

n_data Número de datos totales utilizados para el entrenamiento.

x Datos de entrada totales para el entrenamiento de la red neuronal.

y Datos de salida totales para el entrenamiento de la red neuronal.

e Datos correspondientes al ruido Gaussiano

introducidos en los datos de salida ‘y’.

ind Variable para definir el porcentaje de los datos totales que se utilizarán en el entrenamiento.

x_train Datos de entrada específicos para el entrenamiento de la red neuronal. y_train Datos de salida específicos para el entrenamiento de la red neuronal. x_test Datos de entrada específicos para el test del

entrenamiento de la red neuronal.

y_test Datos de salida específicos para el test del entrenamiento de la red neuronal. ind2

Variable para definir el porcentaje de los datos específicos de entrenamiento que se utilizarán el cálculo de los parámetros de la red neuronal. x_train_partial Datos de entrada específicos para el cálculo de los

parámetros de la red neuronal.

y_train_partial Datos de salida específicos para el cálculo de los parámetros de la red neuronal. x_validation Datos de entrada específicos para para el cálculo de los parámetros de la red neuronal. y_validation Datos de salida específicos para la validación del

entrenamiento de la red neuronal.

n_neuronas Número de neuronas totales que tiene cada capa o layer de la red neuronal.

CALIDAD DE LOS PORCESOS

Nombre Descripción

dropout_rate Variable que define el porcentaje de neuronas que se eliminan en la aplicación de la técnica del dropout. y_predict Datos de salida estimados por la red neuronal después

de ser entrenada.

y_predict_dropout Datos de salida estimados por la red neuronal después de ser entrenada con el método del dropout.

mx

Matriz con todos los datos de entrada totales para el entrenamiento de la red neuronal. Cada columna contiene los datos de cada intervalo de la función. mx_train

Matriz con todos los datos de entrada específicos para el entrenamiento de la red neuronal. Cada columna contiene los datos de cada intervalo de la función. mx_test

Matriz con todos los datos de entrada específicos para el test del entrenamiento de la red neuronal. Cada columna contiene los datos de cada intervalo de la función.

mx_train_partial

Matriz con todos los datos de entrada específicos para el cálculo de los parámetros de la red neuronal. Cada columna contiene los datos de cada intervalo de la función.

mx_validation

Matriz con todos los datos de entrada específicos para la validación del entrenamiento de la red neuronal. Cada columna contiene los datos de cada intervalo de la función.

iteraciones Contador de las iteraciones en el proceso de sobredimensionamiento de las redes neuronales. max_iteraciones Máximo número de iteraciones en el proceso de

sobredimensionamiento de las redes neuronales. fin Variable booleana iniciada a cero y cambia cuando se

ha conseguido sobredimensionar la red.

mse_val_comp Error cuadrático medio con los datos de validación para la comparación del bucle de sobredimensionamiento. mae_val_comp Error medio absoluto con los datos de validación para la comparación del bucle de sobredimensionamiento. mse_val_drop_comp

Error cuadrático medio con los datos de validación aplicando al modelo la técnica de dropout para la comparación del bucle de sobredimensionamiento. mae_val_drop_comp

Error medio absoluto con los datos de validación aplicando al modelo la técnica de dropout para la comparación del bucle de sobredimensionamiento. mse_test_comp Error cuadrático medio con los datos de test para la comparación del bucle de sobredimensionamiento. mae_test_comp Error medio absoluto con los datos de test para la

comparación del bucle de sobredimensionamiento. mse_test_drop_comp

Error cuadrático medio con los datos de test aplicando al modelo la técnica de dropout para la comparación del bucle de sobredimensionamiento.

mae_test_drop_comp

Error medio absoluto con los datos de test aplicando al modelo la técnica de dropout para la comparación del bucle de sobredimensionamiento.

history_val

Variable con el valor de los parámetros de

monitorización del entrenamiento de validación en cada epoch.

Nombre Descripción history_test

Variable con el valor de los parámetros de

monitorización del entrenamiento de test en cada epoch.

history_val_dropout

Variable con el valor de los parámetros de

monitorización del entrenamiento de validación con dropout en cada epoch.

history_test_dropout

Variable con el valor de los parámetros de

monitorización del entrenamiento de test con dropout en cada epoch.

results_validation Variable con la media del valor de los parámetros de monitorización del entrenamiento de validación. results_test Variable con la media del valor de los parámetros de

monitorización del entrenamiento de test.

results_validation_dropout Variable con la media del valor de los parámetros de monitorización del entrenamiento de validación con dropout.

results_test_dropout Variable con la media del valor de los parámetros de monitorización del entrenamiento de test con dropout. mse_test1 Error cuadrático medio con los datos de test.

mse_test_drop1 Error cuadrático medio con los datos de test aplicando al modelo la técnica de dropout.

mae_test1 Error medio absoluto con los datos de test.

mae_test_drop1 Error medio absoluto con los datos de test aplicando al modelo la técnica de dropout.

mape_test1 Error medio absoluto porcentual con los datos de test. mape_test_drop1 Error medio absoluto porcentual con los datos de test aplicando al modelo la técnica de dropout. model_template Variable donde se guarda la arquitectura y pesos de un modelo genérico. model_dropout_template Variable donde se guarda la arquitectura y pesos de un

modelo genérico.

model Variable donde se guarda la arquitectura y pesos de un modelo ya entrenado. model_dropout Variable donde se guarda la arquitectura y pesos de un modelo ya entrenado con dropout.

CALIDAD DE LOS PORCESOS

Notas:

• Si la función que se quiere reproducir con la red neuronal está definida en intervalos, las variables que contienen datos como ‘x’, ‘e’, ‘y’ o ‘x_train’ se deben de separar y crear tantas variables como intervalos de definición tenga la función. Por ejemplo, si la función tiene tres intervalos, crearemos tres variables para agrupar los datos de entrada totales de la red neuronal. Pasaríamos de tener únicamente la variable ‘x’ a tener tres variables denominadas ‘x1’, ‘x2’, ‘x3’.

• Si la función está definida en intervalos, la variable correspondiente al ruido Gaussiano deberá de dividirse en otras variables definidas para la validación o test como en el caso de ‘x’. Deberemos tener de este modo nuevas variables, denominadas ‘e_train’, ‘e_train_partial’, ‘e_test’ y ‘e_validation’.

• Si la función tiene más de una salida, se deberá definir como en el caso de los datos de entrada una matriz que contenga en cada columna los datos correspondientes a cada una de las salidas. Tendríamos por lo tanto la variable ‘my’ y sus correspondientes variables ‘my_train’, ‘my_train_partial’, ‘my_validation’ y ‘my_test.