En el episodio del martes de la semana pasada hablamos de la neurona.
Para tratar de entender cómo funcionaban las redes neuronales, pues vimos un poco cuál es la función de la neurona dentro de la red.
Las redes neuronales artificiales, también conocidas como sistemas conexionistas, son un modelo computacional evolucionado a partir de diversas aportaciones científicas que han ido registrándose a lo largo de la historia.
Consiste en un conjunto de unidades llamadas neuronas artificiales, son las que comentamos en el episodio del martes pasado, conectadas entre sí para transmitirse señales.
La información de entrada atraviesa la red neuronal, donde se somete a diversas operaciones produciendo unos valores de salida.
Cada neurona está conectada con otras a través de unos enlaces, al igual que pasa con las neuronas biológicas en nuestro cerebro.
En estos enlaces el valor de salida de la neurona anterior es multiplicado por un valor de peso.
Estos pesos en los enlaces pueden incrementar o inhibir el estado de activación de las neuronas adyacentes.
Del mismo modo, a la salida de la neurona puede existir una función limitadora o umbral que modifica el valor resultante o impone un límite que no se debe sobrepasar antes de propagarse a la siguiente neurona.
Esta función se conoce como función de activación.
Estos sistemas aprenden y se forman a sí mismos en lugar de ser programados de una forma explícita, y sobresalen en áreas donde la detección de soluciones o características es más difícil de expresar con la programación convencional.
Para realizar este aprendizaje automático, normalmente se intenta minimizar una función de pérdida que se evalúa en la red en su totalidad.
Esta función de pérdida ya la vimos cuando hablamos de el algoritmo de regresión lineal, con aquel cálculo que hacíamos del valor de la vivienda en base al número de habitaciones medias que tenía en un determinado barrio.
Los valores de los pesos de las neuronas se van actualizando buscando reducir el valor de esta función de pérdida.
En estadística, en teoría de la decisión y en economía, la función de pérdida es una función que relaciona un evento, que es técnicamente un elemento de un espacio de muestreo, con un número real que representa el coste económico asociado a este evento.
Este proceso se realiza mediante la propagación hacia atrás.
En machine learning, la propagación hacia atrás de errores o retropropagación, del inglés backpropagation, es un algoritmo de aprendizaje supervisado utilizado para entrenar redes neuronales prealimentadas.
Dado que es un método de cálculo de gradiente, que también hemos visto en otros episodios, el algoritmo generalmente se puede usar en otros tipos de redes neuronales artificiales y en general para funciones.
El objetivo de la red es resolver el problema de la misma manera que el cerebro humano, aunque las redes neuronales son bastante más abstractas.
Las redes neuronales actuales suelen contener desde unos miles a unos pocos millones de unidades neuronales.
Millones de neuronas.
Nuevas investigaciones sobre el cerebro a menudo estimulan la creación de nuevos patrones en las redes neuronales.
Un nuevo enfoque está utilizando conexiones que se extienden mucho más allá y capas de procesamiento de enlace, en lugar de estar siempre más enfocado en las neuronas adyacentes.
Otra investigación está estudiando los diferentes tipos de señal en el tiempo que los axones se propagan.
Como aprendizaje profundo, interpola una mayor complejidad que un conjunto de variables booleanas, ceros o unos, o sí o no, que son simplemente encendido y apagado.
Las redes neuronales se han utilizado para resolver una amplia variedad de tareas como la visión por ordenador, reconocimiento de voz, que son bastante más difíciles de resolver usando una programación basada en reglas, que sería la programación tradicional.
Históricamente el uso de modelos de redes neuronales marcó un cambio de alto nivel a finales de los años 80, pasando por sistemas que se caracterizaban por ser sistemas expertos, pero que estaban basados en la dinámica de si pasa esto, haces esto, a bajo nivel de aprendizaje automático, caracterizado por el conocimiento incorporado de parámetros en un modelo cognitivo, que es lo que comúnmente llamamos el modelo, con un sistema dinámico que va generando las soluciones a medida que va aprendiendo y reentrenándose como modelo.
Os recuerdo que esta semana voy a introducir una novedad en el podcast, en todos los episodios del podcast iré añadiendo este enlace con el que podéis dejar notas de voz en cada uno de los episodios, de aquí hasta el primero de ellos, para que podáis dejar un comentario sobre un episodio o preguntas en general que queréis que responda a través del episodio del podcast, o ideas o sugerencias o peticiones de alguna tecnología en concreto.