ESTADÍSTICA |
REDES NEURONALES |
Variables |
Entradas, salidas |
Residuos |
Errores |
Estimación, regresión |
Ajuste, aprendizaje |
Parámetros |
Pesos |
Interacciones |
Procesadores, neuronas |
Los datos se toman de un proceso estocástico |
Los datos se toman de un sistema dinámico |
El objetivo es un modelo inteligible |
El objetivo es que los resultados estén bien representados |
La estructura es fija, elegida por conocimiento o por hipótesis sobre variables |
La estructura es flexible |
Regresión lineal |
Neurona, procesador lineal |
Flujo de operación para preparar una red neuronal
Estos son los pasos que tendrá nuestro programa de redes. En algún caso habrá más o menos de cada cosa, y alguna puede no ser necesaria en absoluto. Entre paréntesis se indica el fichero Python de nuestra pequeña biblioteca de clase para Pytorch donde hay funciones para eso. Hay unas cuantas decisiones de diseño, que se validan mediante un subconjunto de datos. Hasta que esas decisiones no estén fijadas, no se realiza la prueba final de rendimiento de la red. Vamos a indicarlas como preguntas.
Necesitas datos. Muchos. Estarán en algún tipo de archivo, o serán descargables de algún servicio. Habrá que leer eso en algún tipo de matriz. ¿Cómo se van a codificar? (lectura)
Los datos pueden necesitar preproceso. ¿Cuál? Queremos un mejor comportamiento de todos los algoritmos numéricos que van a entrar. (preproceso)
Hay que definir la red:
Hay distintos tipos, ¿cuál usamos? (tipored)
Sus tamaños: capas, procesadores, … ¿?
Habrá unas funciones no lineales en cada capa, ¿cuáles? (activaciones)
Hay que organizar el ajuste:
¿Vamos a querer una inicialización especial de sus parámetros? (inicializacion)
¿Qué tipo de error vamos a minimizar? (error)
¿Qué algoritmo?, ¿con qué parámetros?, ¿cómo se va a controlar? (ajuste)
Querremos algún tipo de información del ajuste (registro)
¿Qué datos se usan para el ajuste de parámetros (pesos) de la red y cuáles para controlar las decisiones de diseño? (particion)
Es bueno analizar la red y ver cómo está funcionando (analizar)
Hay que prever una estrategia de estimación del error futuro de la red, para dictaminar cuál será su rendimiento, sin sesgos. El error final que nos dé el ajuste lleva sesgo, no vale. Esta decisión puede afectar o no a los pasos subsiguientes. Muchas veces haremos una partición de los datos, unos para ajuste, quizá otros para controlar el ajuste, quizá otros para la prueba que nos permita estimar el comportamiento de la red. (particion)