Perceptrón multicapa

format_list_bulleted Contenido keyboard_arrow_down
ImprimirCitar
Tipo de red neuronal de alimentación

Un perceptrón multicapa (MLP) es el nombre de una red neuronal artificial moderna, que consta de neuronas completamente conectadas con un tipo no lineal de función de activación, organizadas en al menos al menos tres capas, destacando por poder distinguir datos que no son separables linealmente. Es un nombre inapropiado porque el perceptrón original usaba una función de paso de Heaviside, en lugar de un tipo de función de activación no lineal (utilizada por las redes modernas).

Las redes feedforward modernas se entrenan utilizando el método de retropropagación y se las conoce coloquialmente como redes "vainilla" Redes neuronales.

Cronología

  • En 1958, Frank Rosenblatt presentó ya en su libro Perceptron una red de perceptrones con capas, compuesta por una capa de entrada, una capa oculta con pesos aleatorizados que no aprendieron y una capa de salida con conexiones de aprendizaje. Esta máquina de aprendizaje extremo todavía no era una red de aprendizaje profundo.
  • En 1965, Alexey Grigorevich Ivakhnenko y Valentin Lapa publicaron la primera red de alimentación de aprendizaje profundo, que aún no utiliza la ascendencia gradiente estocástica, en ese momento llamada Método de Grupo de Manejo de Datos.
  • En 1967, Shun'ichi Amari publicó una red de aprendizaje profundo, que utilizó por primera vez el descenso de gradiente estocástico, capaz de clasificar las clases de patrones no linealmente separables. El estudiante de Amari Saito realizó los experimentos informáticos, utilizando una red de alimentación de cinco capas con dos capas de aprendizaje.
  • En 1970, el método moderno de retropropagación, una aplicación eficiente de un aprendizaje supervisado basado en cadena, fue publicado por primera vez por el investigador finlandés Seppo Linnainmaa. El término (es decir, "errores de retropropagación") ha sido utilizado por el propio Rosenblatt, pero no sabía cómo implementarlo, aunque un precursor continuo de la retropropagación ya fue utilizado en el contexto de la teoría de control en 1960 por Henry J. Kelley. Se conoce también como un modo inverso de diferenciación automática.
  • En 1982, la retropropagación se aplicó de la manera que se ha convertido en estándar, por primera vez por Paul Werbos.
  • En 1985, David E. Rumelhart et al. realizó un análisis experimental de la técnica. En decenios posteriores se han introducido muchas mejoras en el enfoque.
  • En los años noventa, Vladimir Vapnik y sus colegas desarrollaron una alternativa (muy simple) al uso de redes neuronales, aunque todavía relacionada con el enfoque de la máquina vectorial de soporte. Además de realizar la clasificación lineal, pudieron realizar eficientemente una clasificación no lineal utilizando lo que se llama el truco del núcleo, utilizando espacios de características de alta dimensión.
  • En 2003, el interés por las redes de retropropagación volvió debido a los éxitos del aprendizaje profundo que se aplica al modelado de idiomas por Yoshua Bengio con coautores.
  • En 2017 se han introducido arquitecturas modernas de transformadores.
  • En 2021, se diseñó una arquitectura NN muy simple que combina dos MLP profundas con conexiones de salto y normalizaciones de capas y se llamó MLP-Mixer; sus realizaciones con 19 a 431 millones de parámetros se mostraron comparables a transformadores de visión de tamaño similar en ImageNet y tareas de clasificación de imágenes similares.

Fundamentos matemáticos

Función de activación

Si un perceptrón multicapa tiene una función de activación lineal en todas las neuronas, es decir, una función lineal que asigna las entradas ponderadas a la salida de cada neurona, entonces el álgebra lineal muestra que cualquier número de capas se puede reducir a dos modelo de capa de entrada-salida. En las MLP, algunas neuronas utilizan una función de activación no lineal que se desarrolló para modelar la frecuencia de los potenciales de acción, o disparos, de las neuronas biológicas.

Las dos funciones de activación históricamente comunes son sigmoideas y se describen mediante

Sí.()vi)=Tanh⁡ ⁡ ()vi) y Sí.()vi)=()1+e− − vi)− − 1{displaystyle y(v_{i})=tanh(v_{i}~{textrm {y}~y(v_{i})=(1+e^{-v_{i})^{-1}.

El primero es un tangente hiperbólico que va de −1 a 1, mientras que el otro es la función logística, que es similar en forma pero va de 0 a 1. Aquí. Sí.i{displaystyle Y... es la salida del i{displaystyle i}to node (neuron) and vi{displaystyle V_{i} es la suma ponderada de las conexiones de entrada. Se han propuesto funciones alternativas de activación, incluyendo las funciones rectificadoras y softplus. Las funciones de activación más especializadas incluyen funciones de base radial (utilizadas en redes radiales, otra clase de modelos de red neuronales supervisados).

En desarrollos recientes del aprendizaje profundo, la unidad lineal rectificada (ReLU) se utiliza con más frecuencia como una de las posibles formas de superar los problemas numéricos relacionados con los sigmoideos.

Capas

El MLP consta de tres o más capas (una entrada y una capa de salida con una o más capas ocultas) de nodos de activación no lineal. Desde Los MLP están totalmente conectados, cada nodo en una capa se conecta con un cierto peso wij{displaystyle w_{ij} a cada nodo en la siguiente capa.

Aprendizaje

El aprendizaje se produce en el perceptrón al cambiar los pesos de las conexiones después de que se procesa cada dato, según la cantidad de error en la salida en comparación con el resultado esperado. Este es un ejemplo de aprendizaje supervisado y se lleva a cabo mediante retropropagación, una generalización del algoritmo de mínimos cuadrados medios en el perceptrón lineal.

Podemos representar el grado de error en un nodo de salida j{displaystyle j} en el n{displaystyle n}t punto de datos ( ejemplo de capacitación) por ej()n)=dj()n)− − Sí.j()n){displaystyle e_{j}(n)=d_{j}(n)-y_{j}(n) }, donde dj()n){displaystyle d_{j}(n)} es el valor objetivo deseado para n{displaystyle n}punto de datos en el nodo j{displaystyle j}, y Sí.j()n){displaystyle y_{j}(n)} es el valor producido por el perceptrón en el nodo j{displaystyle j} cuando n{displaystyle n}t punto de datos se da como entrada.

Los pesos del nodo se pueden ajustar según las correcciones que minimizan el error en toda la salida para el n{displaystyle n}t punto de datos, dado por

E()n)=12. . nodos de producción jej2()n){displaystyle {Mathcal {}(n)={frac {1}{2}sum _{text{output node - Sí..

Usando el descenso gradiente, el cambio en cada peso wij{displaystyle w_{ij} es

Δ Δ wji()n)=− − . . ∂ ∂ E()n)∂ ∂ vj()n)Sí.i()n){displaystyle Delta w_{ji}(n)=-eta {frac {partial {mathcal {E}(n)}{partial v_{j}(n)}y_{i}(n)} }

Donde Sí.i()n){displaystyle y_{i}(n)} es la salida de la neurona anterior i{displaystyle i}, y . . {displaystyle eta } es Tasa de aprendizaje, que se selecciona para asegurar que los pesos convergen rápidamente a una respuesta, sin oscilaciones. En la expresión anterior, ∂ ∂ E()n)∂ ∂ vj()n){displaystyle {frac {partial {fn} {fn]}{partial v_{j}(n)}}}} denota el derivado parcial del error E()n){displaystyle {máthcal}(n)} según la suma ponderada vj()n){displaystyle v_{j}(n)} de las conexiones de entrada de la neurona i{displaystyle i}.

El derivado a calcular depende del campo local inducido vj{displaystyle v_{j}, que en sí mismo varía. Es fácil probar que para un nodo de salida este derivado puede ser simplificado

− − ∂ ∂ E()n)∂ ∂ vj()n)=ej()n)φ φ . . ()vj()n)){displaystyle -{frac {partial {Mathcal {E} {n)}{partial v_{j}(n)}}=e_{j}(n)phi ^{prime }(v_{j}(n)}} {fn)}

Donde φ φ . . {displaystyle phi ^{prime } es el derivado de la función de activación descrita anteriormente, que en sí no varía. El análisis es más difícil para el cambio de pesos a un nodo oculto, pero se puede demostrar que el derivado relevante es

− − ∂ ∂ E()n)∂ ∂ vj()n)=φ φ . . ()vj()n)). . k− − ∂ ∂ E()n)∂ ∂ vk()n)wkj()n){fnMicrosoft Sans Serif} {fn]} {fn]} {fn]} {fn}=fi } {fn} {fn}fn} {cHFF}fn} {fn} {fnK}} {fn}}} {fnKf} {fn}}}}}}}f}}} {f}}f}}}}f}f}}}}f}}f}f}fn}}}}fnKf}fnKfn}fnKf}}}}}}f}f}}}}}}}}}fn} {fn}}}}fn}} {fnKfnKf}f}fn}fnun}fnKfn}}}}}fnKfn}}}}}}}}}}} }.

Esto depende del cambio de pesos de los k{displaystyle k}nodos, que representan la capa de salida. Para cambiar los pesos de capa oculta, los pesos de la capa de salida cambian según el derivado de la función de activación, y por lo tanto este algoritmo representa una retropropagación de la función de activación.

Más resultados...
Tamaño del texto:
undoredo
format_boldformat_italicformat_underlinedstrikethrough_ssuperscriptsubscriptlink
save