Introducción a Redes Neuronales

Introducción a Redes Neuronales
La Inteligencia Artificial (IA) promete ser la electricidad del siglo XXI, en cuanto que hace unos 100 años la llegada de la electricidad a la sociedad lo transformó todo, y esto mismo va a pasar ahora con la llegada de la IA en general y las Redes Neuronales en particular. 
 
Introducción a la definición de Red Neuronal

Imaginemos que tenemos un conjunto de datos de seis viviendas, donde conocemos el tamaño y el precio de cada vivienda, y queremos ajustar un modelo para predecir el precio de cualquier vivienda a partir de las seis conocidas. Si graficamos el ejemplo:

Un modelo de regresión simple ajustaría una línea recta que podríamos corregir para evitar tener precios negativos:Y esto no es ni más ni menos que una red neuronal (la red más sencilla que existe). El input de la red neuronal sería el tamaño de la vivienda (x), que va a un nodo (el modelo que hemos dibujado, línea negra) y del nodo sale el precio estimado (y). El nodo sería una neurona de la red neuronal:  La función que vale cero hasta un punto y a partir de ahí sale la línea recta en diagonal, se denomina función ReLU (Rectified Linear Unit). Rectified es precisamente porque hemos rectificado el modelo llevándolo a cero y no dejando que tome valores negativos):

Por lo tanto, si este es el caso de una sola neurona, una red neuronal más grande se va a formar tomando muchas de las neuronas individuales y apilándolas. Si pensamos en esta neurona como una pieza de Lego, una red neuronal más grande será el resultado de apilar muchas piezas de Lego. Vamos a verlo con un ejemplo.
Imaginemos que además del tamaño de la vivienda tenemos el número de dormitorios. Estas dos variables podían darnos una idea del tamaño familiar. Por otra parte, podríamos tener para cada vivienda el código postal, que nos daría una idea del tráfico peatonal de la zona. En tercer lugar, podríamos tener también el nivel de riqueza de la zona en la que está la vivienda que junto al dato del código postal nos daría una idea del nivel de los colegios de los niños en la zona. Por último, el tamaño de la familia, el tráfico peatonal y la calidad de los colegios, nos servirían para estimar el precio de la vivienda.  
El tamaño, el número de cuartos, el código postal y la riqueza son los inputs. Y el precio es el output.
Se trata de una red neuronal con 4 inputs, cuyo trabajo es predecir el precio y:
Los círculos de la izda se denominan unidades ocultas. Y x1, x2, x3 y x4 constituyen la capa de entrada. Todas las xi están interconectadas con las unidades ocultas y la red decidirá con cuáles de esas interconexiones quedarse.
  
Las redes neuronales más utilizadas son aquellas que se manejan en entornos de aprendizaje supervisadoEn el aprendizaje supervisado, dada alguna entrada x, se desea aprender en base a qué función obtener alguna salida y. En el ejemplo anterior, veíamos cómo a partir de una serie de características de las viviendas obteníamos la predicción del precio de la vivienda. Otro ejemplo que está ahora muy de moda es tomar como variables de entrada una serie de características de los internautas y poder predecir si van a hacer clic en un anuncio que le mostremos.
 
Hay varios tipos de redes neuronales:
  • Red neuronal estándar
  • Red neuronal de convolución (tratamiento de imágenes – por ejemplo para saber si una imagen que estamos viendo corresponde a un gato)  
  • Red neuronal recurrente (tratamiento de datos en el tiempo – por ejemplo un audio)
  • Combinaciones complejas de las anteriores

Además, las redes neuronales se pueden aplicar a datos estructurados (como la información de las viviendas) o a datos desestructurados (como imágenes, texto o audio). Ambos casos son interesantes y de los dos se puede aprender mucho.

Es interesante relacionar la cantidad de datos de que se dispone para un análisis con el funcionamiento de dicho análisis.

Si dibujamos esa relación para los análisis tradicionales (regresión, modelos logísticos, etc.), obtenemos la siguiente forma funcional:

Estos algoritmos funcionan mejor a medida que incrementamos el número de datos pero hay un momento en el que ya no se puede mejorar más, por muchos datos que tengamos. Por tanto, los algoritmos tradicionales fallan en grandes cantidades de datos.
Sin embargo, veamos qué pasa con redes neuronales de tamaño pequeño, mediano y grande:
Las redes neuronales mejoran el funcionamiento para grandes cantidades de datos. La única forma de tener mejores modelos es con redes neuronales grandes y complejas, que trabajan sobre grandes cantidades de datos.
Además, el gráfico de arriba nos enseña también que para datos con un tamaño normal, no importa mucho qué técnica usemos, pues todas funcionan más o menos igual.
Otra cosa muy positiva que tienen las redes neuronales es que no se deja de innovar. Es una técnica que puede mejorar y mejorar a medida que tengamos mejores ideas y mejor tecnología.

Comentarios

Dejar un comentario

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