Está en la página 1de 4

UNIVERSIDAD LIBRE

FACULTAD DE INGENIERIA
INGENIERIA DE SISTEMAS
PRACTICA REDES NEURALES GENÉRICAS (RNG)
Diseño de funciones
Lo primero es comprender la neurona. Una neurona es esencialmente
una función. Podemos tener funciones lineales o no lineales. Por ejemplo:

f(x,y,z) = a * x + b * y + c * z + d

El parámetro d de la función en este caso funciona como el "error" de la función, y


no va acompañado de ninguna variable. En esta red neuronal no se usará ningún
tipo de error.

En Econolandia, para calcular el precio de un apartamento, usan la siguiente


fórmula:

Precio Apartamento = 2 * Área + 150 * Baños + 100 * Habitaciones + 50 * Edad del


inmueble

Pero hay excepciones. Si el área es mayor de 400 el inmueble debe pagar el precio
que se paga por una fábrica, y el precio de la fábrica es:

Precio Fábrica = (2 * Área + 150 * Baños) * 6

Si no es una fábrica, y la edad supera los 50 años, el apartamento se convierte en


reliquia histórica y su precio se calcula como:

Precio Edificio histórico = (50 * Edad del inmueble) * 100

Las relaciones que obtenemos son las siguientes:


Construyendo la hoja de Excel
Vamos a usar las celdas de la siguiente manera: las celdas amarillas contienen
datos que ingresaremos manualmente, y las celdas naranja serán
fórmulas. Tenemos 3 capas. La capa de entrada (input) contiene valores de las
variables, que se usan en la capa intermedia (Hidden layer) y finalmente se calcula
el precio.

Las fórmulas para las celdas de color naranja serán las siguientes:

F4 =+B4*C4+B5*C5

F5 =+B7*C7

F6 =+B4*C4+B5*C5+B6*C6+B7*C7

F8=+IF(B4>400,1,IF(B7>50,2,3))

I4=+IF(F8=1,F4*G4,IF(F8=2,F5*G5,F6*G6))

Como notará, tomamos unos datos de entrada a la izquierda, para un inmueble con
Area 150, 2 baños, 3 habitaciones y 5 años. Las celdas de la capa intermedia de
cálculo (Hidden layer) de la columna F sirven de puente para calcular el precio en
la columna I

La celda F8 indica cuál debe ser el precio, y usando ese valor es que la celda de
precio escoge la manera de calcular el precio.

Comentarios generales
 Como se ve, los datos de la capa de Input no pasan directamente a la capa de
Output, sino que pasa por cálculos intermedios en la capa de Hidden layer.
 Como se puede ver también, el resultado (Precio) es sensible a cambios en los
coeficientes en los distintos niveles.
 El aprendizaje de la máquina viene a partir de algoritmos para hacer que la red
aprenda con datos reales a escoger los coeficientes correctos para la mejor
estimación del precio.
 La parte complicada no es construir la red de neuronas (aunque si puede requerir
de bastante pensamiento del diseñador) sino diseñar los algoritmos para que la
neurona aprenda a ajustar coeficientes con datos reales.
 Para el país de Econolandia, esta red neuronal escoge y calcula "inteligentemente"
el precio de inmuebles, usando criterios que sirvieron para construir la red neuronal.

¿Qué especificaciones debe tener una RNG?
Si va a programar RNG necesita algunas cosas básicas. Al hablar de "función" en
este apartado no se refiere a una función matemática, sino a una capacidad
funcional del programa. Esta es la lista de especificaciones generales de una red
genérica básica:

 Una función básica que reciba datos de entrada y salida para "entrenar" (calcular o
iterar) los coeficientes hasta llegar al mejor valor.
 Se debe especificar como entrada, la cantidad de hidden layers en su red.
 Dibujar una gráfica de input y output para observar patrones que le ayuden mejor a
diseñar.
 Debe haber una función que acepte nuevos datos.
 Un algoritmo base (default) debe emplearse con un error bajo.
 La función debe aceptar series de datos en el tiempo sin alterar mucho su
arquitectura.
 Debe haber formas alternativas de calcular error o de extender las funciones.
 Debe poder hacer cálculos de redes de Hopfield y self organizing maps u otro tipo
de red.

Comentarios finales
Para construir la red en Excel se tiene lo necesario para que al programar pueda
armar lo necesario para su red neuronal.

Al tener varias capas apiladas de funciones puede obtener resultados muy


complicados de calcular de otra manera, pero a partir de premisas y datos
simples. Los resultados no siempre serán intuitivos, y allí radica lo bueno y lo
malo. Porque si el resultado es correcto, excelente, pero si el resultado es malo,
hay que revisar las premisas o ajustar coeficientes.

Lo de entrenar neuronas es en realidad ajustar coeficientes, con los datos que se


tienen, y ajustarlos con los datos nuevos. Y allí todo es un juego estadístico, donde
puede que no se escojas la curva de mejor ajuste para los datos, o puede que sí.

Si tiene una función f(x,y) = a * x + b * y + z una buena manera de ajustar el


coeficiente a es tomar el resultado de f(x,y) para un valor y dado. Y luego puede
calcular el coeficiente b al usar f(x,y) con un valor de x dado. Entonces tienes dos
análisis:
 x contra f(x,y)
 y contra f(x,y)

Como se puede ver, si se tiene f(x,y) en realidad se tiene una función que se puede
representar en 3 dimensiones x, y y f(X,y), y lo que se está haciendo es una vista
en corte de la gráfica en cada plano cartesiano de la figura tridimensional, en cada
análisis. La complicación de tratar de dibujar todo a la vez viene si la función tiene
4 o más dimensiones.

Al final lo que se necesita es que se ajusten los coeficientes para obtener mejores
resultados. Ya se le ocurrirá cómo. Si tiene Puede elegir y aplicar su forma favorita
de ajustarlos

También podría gustarte