ADALINE ( Adaptive Linear Neuron o más tarde Adaptive Linear Element ) es una de las primeras redes neuronales artificiales de una sola capa y el nombre del dispositivo físico que implementó esta red. [1] [2] [3] [4] [5] Fue desarrollado por el profesor Bernard Widrow y su estudiante de doctorado Ted Hoff en la Universidad de Stanford en 1960. Se basa en el perceptrón . Consiste en un peso, un sesgo y una función de suma. Los pesos y los sesgos se implementaron mediante reóstatos (como se ve en el "ADALINE nudoso"), y más tarde, memistores.
La diferencia entre Adaline y el perceptrón estándar (McCulloch–Pitts) radica en cómo aprenden. Los pesos unitarios de Adaline se ajustan para que coincidan con una señal del profesor, antes de aplicar la función Heaviside (ver figura), pero los pesos unitarios del perceptrón estándar se ajustan para que coincidan con la salida correcta, después de aplicar la función Heaviside.
Una red multicapa de unidades ADALINE es una MADALINE .
Adaline es una red neuronal de una sola capa con múltiples nodos, donde cada nodo acepta múltiples entradas y genera una salida. Dadas las siguientes variables:
Entonces encontramos que la salida es . Si suponemos además que
Luego la salida se reduce aún más a:
La regla de aprendizaje utilizada por ADALINE es el algoritmo LMS (mínimos cuadrados medios), un caso especial de descenso de gradiente.
Defina las siguientes notaciones:
El algoritmo LMS actualiza los pesos mediante
Esta regla de actualización minimiza , el cuadrado del error, [6] y es de hecho la actualización del descenso del gradiente estocástico para la regresión lineal . [7]
MADALINE (Many ADALINE [8] ) es una arquitectura de red neuronal artificial de tres capas (entrada, oculta, salida), totalmente conectada y de propagación hacia adelante para clasificación que utiliza unidades ADALINE en sus capas ocultas y de salida, es decir, su función de activación es la función de signo . [9] La red de tres capas utiliza memistores . Se han sugerido tres algoritmos de entrenamiento diferentes para redes MADALINE, que no se pueden aprender mediante retropropagación porque la función de signo no es diferenciable, llamados Regla I, Regla II y Regla III.
A pesar de muchos intentos, nunca lograron entrenar más de una capa de pesos en un MADALINE. Esto fue así hasta que Widrow vio el algoritmo de retropropagación en una conferencia de Snowbird en 1985. [10]
Regla 1 de MADALINE (MRI) - La primera de estas data de 1962. [11] Consta de dos capas. La primera capa está formada por unidades ADALINE. Sea . La segunda capa tiene dos unidades. Una es una unidad de votación mayoritaria: toma todos los , y si hay más positivos que negativos, entonces la unidad da como resultado +1, y viceversa. Otra es un "asignador de tareas". Supongamos que la salida deseada es diferente de la salida votada por la mayoría, digamos que la salida deseada es -1, entonces el asignador de tareas calcula el número mínimo de unidades ADALINE que deben cambiar sus salidas de positivas a negativas, luego elige aquellas unidades ADALINE que están más cerca de ser negativas y hace que actualicen sus pesos, de acuerdo con la regla de aprendizaje ADALINE. Se pensó como una forma de "principio de perturbación mínima". [12]
La máquina MADALINE más grande construida tenía 1000 pesas, cada una implementada por un memistor. Fue construida en 1963 y utilizaba resonancia magnética para el aprendizaje. [12] [13]
Se ha demostrado que algunas máquinas MADALINE realizan funciones de equilibrio de péndulo invertido, predicción meteorológica, reconocimiento de voz, etc. [2]
Regla 2 de MADALINE (MRII): el segundo algoritmo de entrenamiento mejoró la Regla I y se describió en 1988. [8] El algoritmo de entrenamiento de la Regla II se basa en un principio llamado "perturbación mínima". Procede mediante la repetición de ejemplos de entrenamiento y, para cada ejemplo:
Regla 3 de MADALINE: La tercera "Regla" se aplicó a una red modificada con activaciones sigmoides en lugar de signum; más tarde se descubrió que era equivalente a la retropropagación. [12]
Además, cuando invertir los signos de las unidades individuales no reduce el error a cero para un ejemplo particular, el algoritmo de entrenamiento comienza a invertir los signos de pares de unidades, luego los triples de unidades, etc. [8]