Las matemáticas del Machine Learning: Redes Neuronales (II)

Fran Ramírez    29 enero, 2020

Continuamos con nuestra serie de Matématicas en Machine Learning, en concreto con la segunda parte de Redes Neuronales. En el anterior capítulo hablamos por encima de la definición de neurona artificial, de redes neuronales y de sus características y elementos principales. Hoy en día existen redes neuronales complejas, capaces de resolver problemas cuya solución es realmente una tarea difícil. Pero, ¿cómo se ha llegado a este punto? ¿En qué momento se dio el salto? ¿De dónde surgieron estas ideas? En este artículo vamos a intentar responder a estas preguntas explicando, de la manera más breve y clara posible, las matemáticas que hay tras las redes neuronales.

1943 Los inicios

Se cree que fue Frank Rosenblatt creando el Perceptrón quien introdujo el concepto de red neuronal artificial, pero en realidad las redes neuronales nacieron unos años antes, concretamente en 1943 cuando Walter Pitts y Warren McCulloch (tal y como contamos en su día en este post) crearon un modelo llamado lógica umbral con una base matemática y algorítmica. De este modelo nacen dos ramas, una enfoca a procesos biológicos del cerebro y otra en la aplicación de redes neuronales para la inteligencia artificial. Tal y como comentamos en el artículo anterior, la neurona que diseñaron McCulloch-Pitts es una unidad de cálculo, similar a la neurona humana, el resultado del cálculo en dicha neurona es una suma ponderada de entradas, seguida de una aplicación no lineal, llamada función de activación.

Figura 1. Perceptrón o neurona artificial. Fuente.
Figura 1. Perceptrón o neurona artificial. Fuente.

Como muestra la anterior imagen, la función ponderación es la combinación lineal de las entradas, 3 en el caso de la imagen. Matemáticamente hablando sería:

Función ponderación

Siendo σ nuestra función de activación, la cual se define como:

Definición de la función de activación σ

Donde:

El valor θ recibe el nombre de valor umbral.

1949 Regla de Hebb

Más tarde, en 1949 Donald Hebb, introduce la teoría Hebbiana, o también conocida como la Regla de Hebb, postulado de aprendizaje de Hebb o Teoría de la Asamblea Celular. Hebb lo que creó fue una hipótesis de aprendizaje basado en el mecanismo de plasticidad neuronal. Se considera que este aprendizaje es un aprendizaje no supervisado, y los primeros modelos de la potenciación a largo plazo fueron variantes de este . De manera genérica el aprendizaje de Hebb es un aprendizaje que modifica el valor de los pesos

Si consideramos como vector de salida:

Vector de salida y

Como vector de entrada:

Vector de entrada 
x

Y como matriz pesos:

Matriz pesos

Finalmente:

Expresión final del aprendizaje de Hebb

Donde el ritmo de aprendizaje está comprendido entre los valores 0<ϵ<1

Se suele, a partir de un cierto criterio de optimización, tratar de conseguir o de deducir un algoritmo de aprendizaje. Por lo tanto, se busca un criterio que mida el rendimiento de la red neuronal, en este caso se busca que los pesos se ajusten. Una de las maneras más utilizadas ha sido definir el rendimiento a partir del error cuadrático medio de las salidas respecto al de las esperadas.

Error cuadrático medio de las salidas respecto al de las esperadas.

1958 Perceptrón y Adaline

Es en el año 1958 cuando Frank Rosenblatt diseña el Perceptrón, un algoritmo de reconocimiento de patrones, mediante una serie de entradas y una única salida binaria, es decir tiene una función de discriminador lineal o clasificador binario.

Clasificador binario

Siendo

Fórmula del perceptrón

El Perceptrón simple diseñado por Rosenblatt es un modelo unidireccional formado por una capa de entrada y otra capa de salida. El Perceptrón se utiliza para clasificar, pero lo que realmente lo hizo especial fue su algoritmo de aprendizaje, el cual permite calcular automáticamente los pesos que clasifican un conjunto de patrones a partir de un conjunto de ejemplos.

Un ejemplo en 2D

Veamos a continuación un ejemplo en dos dimensiones, dos neuronas de entrada, lo que hará el Perceptrón será clasificar o discriminar entra las dos variables separables, es decir, el Perceptrón separa mediante un hiperplano dos regiones (dos clases diferentes):

Hiperplano separa dos regiones

Despejando de la ecuación:

Despejamos la X

Esta recta (hiperplano en dos dimensiones) es la que nos divide las dos regiones:

Anteriormente hemos mencionado que la principal característica del perceptrón era el “autoajuste” de los pesos. Una variante del Aprendizaje de Hebb que se puede definir de la siguiente forma:

Variante del aprendizaje de Hebb

Siendo:

Hemos denotado

Conjunto de vectores de entrada

como el conjunto vectores entrada. Y análogamente:

Vectores de salida, real y esperado

corresponde al conjunto salida real, y salida esperado. En cuanto a t se refiere a la iteración y t+1 será la siguiente iteración. Además ϵ es definido como el ritmo de aprendizaje, un valor comprendido entre 0 y 1.

1960 Adaline

En 1960 Bernard Widrow y Ted Hoff desarrollaron un tipo de neurona artificial (Adaptative Linear Element) conocida como Adaline. Se aplica a estructuras lineales como las que ya hemos visto:

Expresión matemática de Adaline

Una de las diferencias con el Perceptrón es la modificación de los pesos para tratar de reducir la diferencia entre la salida deseada y la real. El principal objetivo de Adaline es obtener una salida lo más exacta posible, para ello se busca minimizar desviación de los patrones de entrada, eligiendo una medida del error global, la más común que suele utilizarse es el error cuadrático medio del que ya hemos hablado en algún otro artículo.

Sea Yk la salida obtenida para el patrón k, entonces el error para el patrón k será:

 el error para el patrón k será:

Error cuadrático mínimo:

Error cuadrático mínimo

Teniendo en cuenta que:

Teniendo en cuenta que:

Entonces tenemos:

Entonces tenemos:

Facilitando la notación, podemos escribir:

Facilitando la notación, podemos escribir:

Quedando finalmente:

Quedando finalmente:

Y por último derivando respecto a w e igualando a cero:

derivando respecto a w e igualando a cero

Lo que implica que tiene extremo relativo y además es un mínimo.

Con respecto al Perceptrón el Adaline posee la ventaja de que su gráfica de error es un hiperparaboloide que posee o bien un único mínimo global, o bien una recta de infinitos mínimos, todos ellos globales. Esto evita la gran cantidad de problemas que da el Perceptrón a la hora del entrenamiento debido a que su función de error (también llamada de coste) posee numerosos mínimos locales.

Limitaciones del perceptrón simple

El Perceptrón simple nos presenta unas limitaciones, debido mayormente a que sólo es capaz de separar, representar, funciones linealmente separables. Como consecuencia, Mynsk y Papert publicaron un trabajo exponiendo las limitaciones del Perceptrón simple.

“El perceptrón simple sólo sirve para clasificar problemas linealmente separables, cosa que ya se podía hacer mediante métodos estadísticos, y de una forma mucho más eficiente.”

“Perceptrons”. 1969. Marvin Minsky, Seymour Papert

Una de las repercusiones más graves como consecuencia del trabajo de Mynsk fue sin duda la falta de inversión o la reducción de fondos de investigación a este campo, derivándolos al campo de la inteligencia artificial.

En el siguiente artículo hablaremos de los siguientes años, donde hubo muy poco movimiento en dicho campo. Y también de la evolución a partir de los 80 hasta nuestros días.

Escrito para LUCA por Fran Fenoll (@ffenoll16), Fran Ramírez (@cyberhadesblog y @cybercaronte) y Enrique Blanco (@eblanco_h) (ambos del equipo de Ideas Locas CDO de Telefónica).

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *