Introducción a las Redes Neuronales: Conceptos, Tipos y Aplicaciones

Definición de Neurona

Unidad de procesamiento elemental de una red neuronal, que genera una salida como resultado de la suma ponderada de las entradas a la que se le aplica una función de activación. Se trata de un dispositivo simple:

  • Almacenamiento mínimo: sólo sus pesos.
  • Capacidad de cómputo pequeña: sumas ponderadas y función de salida.

¿Cómo procesa la información una Neurona?

Suma Ponderada:

La neurona integra todas sus entradas para calcular su entrada neta expresada como el sumatorio del producto de cada entrada por la fuerza de la conexión de esa entrada.

Función de Activación:

Función que se aplica al resultado de la suma ponderada de la neurona para determinar la salida. Las distintas funciones de activación son la función Escalón, Signo, Sigmoidea, Tangente hiperbólica…

Historia de las Redes Neuronales Artificiales (RNA)

Primeros trabajos: Años 50

  • Década de los 40: McCulloch & Pitts: Definición de neurona formal. No hay aprendizaje.
  • Hebb: regla sináptica de aprendizaje.

Comienzos: Años 60

  • Rosenblatt: Perceptrón de dos capas (modeliza la retina). Neurona de McCulloch. Aprendizaje Hebbiano. Se intuye que solo es apto para problemas linealmente separables.
  • Minsky y Papert: Teorema de convergencia del perceptrón: si los patrones de entrenamiento son linealmente separables, el aprendizaje converge en un número finito de pasos. Si los patrones de entrenamiento no son linealmente separables un perceptrón no es capaz de aprender. Parón a la investigación en RNA.

Transición: Años 70

  • Von der Malsburg: concepto de aprendizaje competitivo, en el que se basa posteriormente Kohonen.
  • Hopfield: Fin de los años oscuros. Red de Hopfield: Red simétrica con memoria autoasociativa.

Resurgimiento años 80:

  • Kohonen desarrolla su modelo de mapas auto-organizativos (SOM) basando en los trabajos de Von der Malsburg.
  • Rumelhart, Hinton y Williams: publican la regla delta generalizada y lo aplican a una mejora del perceptrón de Rosenblatt: perceptrón Multicapa.

Concepto de Clasificación y Clustering

Definición de método de clasificación:

Dividir el espacio N-dimensional al que pertenecen los vectores definidos por las N características de cada individuo de la población o en K regiones excluyentes correspondientes a los K posibles grupos.

Clustering:

Encontrar clases donde se desconocen las clases que hay.

Clasificar:

Catalogar un elemento dentro de clases existentes.

Definición de SOM:

Red Neuronal Feedforward. No lineal, Entrenada. De aprendizaje NO supervisado.

  • Una matriz de neuronas que recibe entradas de una población de elementos y evalúa una función discriminante simple a partir de ellas.
  • Un mecanismo que compara las funciones discriminantes y selecciona la unidad con el mayor valor de la función.
  • Algún tipo de interacción local que active simultáneamente la unidad seleccionada y sus vecinas.
  • Un proceso adaptativo en virtud del cual los parámetros de las unidades activas aumenten sus funciones discriminantes en relación a la entrada actual.

Características de una red de Kohonen:

  • Sistema no jerárquico en 2 capas completamente interconectadas: Entrada para vector de entrada y Salida o Kohonen, cada una conectada con todas las entradas.
  • Funcionan por competición: Mecanismo para que sólo se active una neurona cada vez. Las neuronas compiten por ver qué neurona reconoce mejor a un patrón.
  • Preserva en dos dimensiones el orden n-dimensional: patrones parecidos son reconocidos por neuronas próximas en el espacio bidimensional.

Procesamiento de una red de Kohonen:

Se trata de un proceso hacia delante (feedforward) por competición en tres etapas:

  • Propagación de la entrada: En la capa de entrada se asigna el valor de cada componente del vector de entrada a la neurona correspondiente.
  • Cálculo de la distancia euclídea: Se multiplica el valor de entrada de las neuronas de la capa de entrada por los pesos que las unen con cada neurona de la capa de Kohonen y se suma. Alternativamente se calcula la distancia euclídea.
  • Inhibición lateral o competición: Se activa solo la neurona con el mayor producto escalar es decir, la más próxima al vector de entrada, inhibiéndose las demás.

Aprendizaje de una red de Kohonen

Proceso

Inicialmente la matriz de pesos tiene valores aleatorios. Durante el entrenamiento se adaptan los vectores de pesos de las neuronas de la capa de Kohonen a los patrones de entrada. El vector de pesos de la neurona más próxima al patrón de entrada se aproxima a éste según una función de aprendizaje.

Ley de Aprendizaje de un Mapa de Kohonen: Ajuste de la matriz de pesos

Desde un punto de vista matemático, la función de densidad de los vectores de pesos tiende a aproximar la función de densidad probabilistica de los vectores de entrada.

Preservación del orden espacial en Mapas Autoasociativos

Mediante el concepto de vecindario. El aprendizaje se extiende a las neuronas adyacentes según un valor de vecindario, que varía con el tiempo. De esta forma la red agrupa sus neuronas en mapas topológicos especializados en el reconocimiento de un tipo de patrón.

Parámetros variables con el tiempo en un SOM

Coeficiente de aprendizaje y Vecindario.

¿Por qué no existe peligro de sobre entrenamiento en una red de Kohonen?

La red de Kohonen tiende a un estado final estable por ser un mecanismo topológico en el que va a encontrar un centro o punto de compromiso entre los patrones que reconoce al reducir el coeficiente de aprendizaje.

Construcción de un clasificador No Supervisado a partir de un Mapa de Kohonen

En tres pasos:

  • Condiciones experimentales: Presentación aleatoria de muestras, matriz inicial de pesos aleatoria, pesos y patrones normalizados con la norma euclídea y número suficiente de datos.
  • Selección de parámetros: Tamaño de la capa de Kohonen, Número de presentaciones, Refuerzo, Forma de la función de descenso de n, Vecindario inicial, etc.
  • Análisis del clasificador: Dinámica del proceso de aprendizaje. Precisión de la clasificación.

Definición de Red de Hopfield (Memoria Asociativa):

Red Neuronal Feedback. No lineal. Construida. No Supervisado.

  • Conjunto de N neuronas interconectadas entre sí que son a la vez entrada y salida.
  • Neuronas bipolares de McCulloch y Pitts con la función de activación signo.
  • Conexiones bidireccionales con matriz de pesos simétrica y con la diagonal cero.

Características de una red de Hopfield

La red almacena un conjunto de vectores de entrada mediante el aprendizaje y es capaz de recuperar uno de esos vectores a partir de una descripción parcial o deformada.

  • Memoria asociativa.
  • Acceso por contenido. Cada patrón genera un mínimo local de la función de energía de la red, hacia el que converge la función.
  • Existe un máximo de capacidad de memoria.

Procesamiento en una red de Hopfield

  • Iteración sobre las salidas que se utilizan como entradas en la siguiente vuelta.
  • El estado de una neurona depende de los valores previos de ella misma.
  • Hopfield demostró que cuando la matriz de pesos es simétrica la red evoluciona en el tiempo hasta alcanzar un estado estable en el que los estados de las neuronas no cambian.
  • Convergencia al vector almacenado más cercano al estado inicial.

Entrenamiento en una red de Hopfield

El entrenamiento consiste en la construcción de la matriz de pesos de forma que algunos de los estado de la red sean estables.

Historia del Perceptrón Multicapa (PMC)

  • Primer modelo lineal propuesto por Rosenblatt. 2 capas, neuronas binarias, una función de activación lineal y un aprendizaje regla delta.
  • Explicar el Teorema de convergencia del Perceptrón.
  • Rumelhart, Hinton y Williams publican el algoritmo de aprendizaje back-propagation (Regla Delta Generalizada) y lo aplican a una mejora del perceptrón de Rosenblatt: Perceptrón Multicapa.

Definición del Perceptrón Multicapa

Red Neuronal Feedforward. No lineal. Entrenada. De aprendizaje supervisado. Surge como mejora del Perceptrón de Rosenblatt. Consta de al menos 3 capas (entrada, salida y una o más ocultas intermedias). Cada capa está totalmente Conectada con la siguiente con una matriz de pesos. Los pesos se ajustan durante el entrenamiento.

Definición de Aprendizaje supervisado:

Proceso de entrenamiento en el cual se van modificando las matrices de pesos de acuerdo a una ley de aprendizaje para que la salida real obtenida sea igual que la esperada.

  • Entrenamiento: Proceso iterativo que precisa un conjunto de entrenamiento del que se conozca la salida esperada suficientemente amplio para que cubra el espacio muestral.
  • Ley de aprendizaje: formulación matemática de ajuste de la matriz de pesos en función de los pares entrada/salida con que se entrena a la red.
  • Objetivo: Minimización del error en el conjunto de entrenamiento.

¿Cómo aprende un PMC?

Aprender es ajustar la matriz de pesos de la red para obtener la salida deseada a partir de la entrada. El ajuste de la matriz de pesos se lleva a cabo retropropagando el error obtenido para cada caso de entrenamiento y usándolo para ajustar cada matriz de pesos mediante la Regla Delta Generalizada. Primero se actualiza la matriz de pesos que une la capa de salida con la capa oculta y posteriormente la matriz de pesos que une la capa oculta con la capa de entrada. Aprende toda la red, es un aprendizaje global.

Proceso de aprendizaje del PMC:

El proceso de aprendizaje del Perceptrón Multicapa tiene 3 fases:

Propagación de las entradas hacia las salidas:

  • Se presenta el vector p-ésimo de entrada xp a la capa de entrada.
  • Se propaga el vector de entrada hacia la capa intermedia.
  • Se calcula la salida de las neuronas de la capa intermedia según la función sigmoidea.
  • Se repite con la capa de salida para calcular su entrada Ik y su salida Ok, que será la salida de la red.

Cálculo del error

Para el vector de entrada xp se compara la salida real obtenida con la esperada, calculando el error de mínimos cuadrado para todas las neuronas de la capa de salida.

Corrección de la matriz de pesos

Propagación del error desde la capa de salida hasta la de entrada:

  • Actualización de la matriz de pesos que une la capa de salida con la capa oculta.
  • Se procede igual que en el paso anterior, salvo que en este caso como no se conoce de antemano la salida de la capa oculta, se utiliza una transformación matemática del error generado por la capa de salida, retropropagandolo a la capa oculta.

Ley de aprendizaje: Regla Delta Generalizada

La Regla Delta Generalizada es el algoritmo iterativo que ajusta los pesos de la red intentando minimizar el Error Cuadrático Medio entre las salidas esperadas y las producidas por la red. La matriz de pesos que se quiere obtener es igual a la matriz de pesos actual mas una variación de la matriz. Esta variación de la matriz se descompone en:

  • término de corrección en función del error.
  • término de inercia del movimiento.

Sobreentrenamiento

Memorización/Generalización/Sobreentrenamiento

Un entrenamiento insuficiente o excesivo de la red hace que ésta no generalice. El sobreentrenamiento es la pérdida de la capacidad de generalización de una red, sustituyendo la capacidad de generalización por la memorización del conjunto de pruebas.

Método de Validación cruzada:

Método Jack Knife. Consiste en separar del conjunto de datos de entrenamiento un conjunto de datos de validación que utilizaremos para detectar el error que se produce.

Cuándo se detiene el proceso de aprendizaje

Para evitar el sobre-entrenamiento, el proceso de aprendizaje debe finalizar antes de que la red empiece a memorizar y no generalice. El entrenamiento se detiene cuando el error que se produce con el conjunto de validación deja de disminuir.

Características del conjunto de entrenamiento

El conjunto de entrenamiento determinará lo que aprenda la red:

  • 2 o 3 veces el número de pesos.
  • Debe cubrir todo el espacio de repuestas.
  • Convenientemente seleccionado.

Deja una respuesta

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

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.