Inteligencia Artificial y Matemáticas. Parte I: Anatomía de una Red Neuronal

Orlando Rodríguez

“Al afirmar verbalmente que las Matemáticas son difíciles, estamos diciéndolo con  un lenguaje  cuya sintaxis es tan compleja, no mas, no menos, que aquella que gobierna las matemáticas” 

Las redes neuronales (DNN) son uno de los modelos de aprendizaje de máquina mas utilizados hoy en día. DNN  se puede visualizar como  un conjunto de nodos  y  líneas  conformando una red, ver figura 1. Su similitud con la organización de las neuronas en el cerebro es evidente, pero este tema lo abordaré mas adelante.

Neural1

Figura 1. Esquema  simplificado de Red Neuronal Profunda (DNN)

En una red neuronal, dos nodos y una línea corresponden a una unidad básica del modelo, y son una representación gráfica de una función matemática del tipo:

f(x) = k.x

Para la figura 2, la variable de entrada (x) corresponde al nodo verde, la variable de salida  f(x) al nodo azul,  y la línea  que las une  corresponde a la constante  k:

Nodo

Figura 2. Unidad fundamental de una DNN

Toda función matemática  puede visualizarse como una caja que recibe uno o varios elementos de entrada y entrega un único elemento de salida:

TANQUE

Figura 3. Representación gráfica de una función matemática

La función  “”  es una relación matemática entre una o mas variables de entrada y una variable de salida.

Así,  la función

f(x) = 3.x

toma valores de entrada  x, los multiplica por 3 , y entrega  valores de salida f(x):

funcion3

Figura 4. Elementos de entrada (x) y salida  f(x)  definidos por la función f

El valor “3” sobre cada flecha corresponde al valor  de la constante  (parámetro de la función)  que caracteriza la misma en cada caso.

En  la red neuronal de la figura 1, cada elemento de salida corresponde a la suma de varias funciones, cada una con su propio parámetro que la define:

Sin título-2

Figura 5. Función con tres variables de entrada y una variable de salida

A modo ilustrativo, trabajemos sobre  algunos nodos y líneas de la Red Neuronal mencionada arriba, ver Figura 6.

 

neuro2

Figura 6. Detalle parcial de una red Neuronal

Para estos elementos de la red,  podemos definir  una función

f(Xi) = Sum(Ki.Xi)

Esto es, la salida f(Xi)  (nodo naranja) corresponde a la sumatoria  de  las variables de entrada multiplicadas cada una por su constante correspondiente (parámetro de la función) .

Lo que el ejemplo anterior nos evidencia  es que si pre-definimos valores para los 32 parámetros (valores del total de líneas de enlace de la Red Neuronal) y contamos con los valores de las tres variables de entrada (Input Layer) , podemos ir encadenando  de izquierda a derecha los resultados de las funciones, convirtiéndose  la salida de una función en la entrada de la siguiente,    hasta  obtener los valores de la última salida , o Output Layer.

Esta operación se conoce como “Forward Propagation” , que para modelos entrenados (parámetros con valores asignados), permite  que se puedan evaluar o clasificar entidades de  entrada, siendo esta evaluación la salida calculada del modelo.

El siguiente blog lo dedicaré a un ejemplo ilustrativo de la teoría expuesta.

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s