Conceptos básicos de la red neuronal feedforward (perceptrón multicapa)

1. Introducción a las Redes Neuronales

Definición de red neuronal : Las redes neuronales artificiales (ANN, por sus siglas en inglés), también conocidas como redes neuronales (NN, por sus siglas en inglés) o modelo de conexión, es un modelo matemático algorítmico que imita las características de comportamiento de las redes neuronales animales y realiza un procesamiento de información paralelo distribuido. Este tipo de red depende de la complejidad del sistema y logra el propósito de procesar la información ajustando la relación de interconexión entre una gran cantidad de nodos internos.

1.1 Antecedentes biológicos de las redes neuronales

  • El mecanismo de trabajo de las células nerviosas
    Teoría de las neuronas (teoría de las neuronas): Las células nerviosas son independientes entre sí y transmiten señales de alguna forma.

  • Teoría de las neuronas
    (1) Una red neuronal se compone de muchos individuos de células nerviosas independientes ("neuronas") conectadas a través de puntos de contacto entre neuronas; (2) Todas las neuronas tienen una estructura polar asimétrica: un lado tiene una protuberancia fibrosa "axón" larga y el otro lado tiene muchas "dendritas"
    . Las dendritas son estructuras que reciben información de entrada de otras neuronas, mientras que los axones son estructuras de salida que las neuronas transmiten información a lugares distantes; (3) Con base en los cambios estructurales en el desarrollo, degeneración y regeneración de los tejidos neurales, Cajal también propuso por primera vez el concepto de plasticidad de las conexiones neuronales; (4) Las dendritas reciben información, desencadenan áreas para integrar potenciales y generan impulsos nerviosos. La sinapsis terminal es el área de salida, que se transmite a
    la siguiente neurona
    . El sistema nervioso del cerebro humano contiene casi 86 mil millones de neuronas, y cada neurona tiene mil sinapsis.


  • Las características supuestas de las redes neuronales biológicas:
    (1) Cada neurona es una unidad de procesamiento de información con múltiples entradas y salidas únicas
    ; (2) La entrada de la neurona se divide en dos tipos: entrada excitatoria y entrada inhibitoria
    ; (3) La neurona tiene características de integración espacial y características de umbral ;
    (4) Hay un retraso de tiempo fijo entre la entrada y la salida de la neurona , que depende principalmente del retraso sináptico.

1.2 Neuronas artificiales y perceptrones

En 1943, el psicólogo WSMcCulloch y el lógico matemático W.Pitts propusieron un modelo abstracto y simplificado construido de acuerdo con la estructura y el principio de funcionamiento de las neuronas biológicas: el modelo MP . Dichos modelos generalmente formalizan las neuronas como una "suma ponderada de señales de entrada en el compuesto de función de activación".


MP modelo recibido de nnLa señal de entrada xi x_itransmitida por otras n neuronasXyo, estas señales de entrada pasan a través de conexiones ponderadas wi w_iwyose transmite, la neurona recibevalor total de entradaVoluntadumbral de neuronas θ \ thetaθ se compara y luego se pasafunción de activación ff se procesa para producir la salida de la neurona. Es decir:
f ( ∑ i = 1 nwixi − θ ) f(\sum^n _{i=1} w_i x_i - \theta )f (yo = 1nwyoXyoθ ) entre los cuales,xi x_iXyorepresentan señales de otras neuronas, wi w_iwyoIndica el peso de conexión correspondiente, θ \thetaθ representa el umbral de la neurona,fff representa la función de activación (Función de activación) (o Función de transferencia) que suele ser continuamente diferenciable.

  • Que una neurona se active o no depende del nivel de umbral θ \thetaθ , es decir, solo cuando la suma de sus entradas excede el umbralθ \thetaCuando θ , la neurona se activa y emite un pulso, de lo contrario, la neurona no producirá una señal de salida.
  • Cuando se activa una neurona, se dice que la neurona está en un estado activo o excitado, y viceversa, se dice que la neurona está en un estado inhibido.

1.3 Funciones de activación comúnmente utilizadas

1.3.1 Función lineal

f ( x ) = kx + cf(x) = kx + cf ( x )=k x+C

1.3.2 Función de rampa

f ( x ) = { T , x > ckx , ∣ x ∣ ⩽ c − T , x < − cf(x) = \begin{cases} T,\,\, x>c\\ kx,\,\, |x|\leqslant c \\ -T,\,\, x < -c \end{cases}f ( x )= T ,X>Ck x ,x C- T ,X< c

1.3.3 Función de umbral

f ( x ) = { 1 , x ⩾ c 0 , x < cf(x) = \begin{casos} 1,\,\, x \geqslant c\\ 0,\,\, x < c \end{casos}f ( x )={ 1 ,XC0 ,X<do

1.3.4 función sigmoidea

La función sigmoidea es una función de tipo S común en biología, también conocida como curva de crecimiento de tipo S. En ciencias de la información, debido a sus propiedades de aumento simple y función inversa, la función sigmoidea se usa a menudo como la función de activación de la red neuronal para mapear variables entre 0 y 1.

La función sigmoidea también se llama función logística. Se usa para la salida de neuronas de capa oculta. El rango de valores es (0,1) (0 significa "inhibición", 1 significa "excitación"). Puede asignar un número real al intervalo de (0,1), que se puede usar para la clasificación binaria. El efecto es mejor cuando la diferencia de características es compleja o la diferencia no es particularmente grande. Sigmoid tiene las siguientes ventajas y desventajas como función de activación:

  • Ventajas: suave, fácil de derivar.
  • Desventajas: la función de activación tiene una gran cantidad de cálculo. Cuando se retropropaga para encontrar el gradiente de error, la derivación implica división; cuando se retropropaga, es fácil que el gradiente desaparezca, por lo que no se puede completar el entrenamiento de la red profunda.

Definición de función sigmoidea:
S ( x ) = 1 1 + e − x S(x) = \frac{1}{1 + e^{-x}}S ( X )=1+mix1
a xxDerivación de x
: S ′ ( x ) = e − x ( 1 + e − x ) 2 = S ( x ) ( 1 − S ( x ) ) S'(x) = \frac{e^{-x}}{(1 + e^{-x})^2} = S(x)(1 - S(x))S (x)=( 1+mix )2mi x=S ( x ) ( 1S ( x ))
Gráfica de la función Sigmoidea:
inserte la descripción de la imagen aquí

1.3.5 Función tangente hiperbólica (función tanh)

tanh ( x ) = ex − e − xex + e − x tanh(x) = \frac{e^x - e^{-x}}{e^x + e^{-x}}t inglés ( x )=miX+mixmiXmi xLa imagen de la función es:



La función sigmoidea y la función tanh son dos funciones de activación que se utilizaron ampliamente en las primeras etapas de la investigación. Ambas son funciones de saturación de tipo S. Cuando el valor de la entrada de la función sigmoidea tiende a infinito positivo o infinito negativo, el gradiente se aproximará a cero, por lo que se produce el fenómeno de dispersión del gradiente. La salida de la función sigmoidea es siempre un valor positivo, no centrado en cero, lo que hará que el peso se actualice en una sola dirección, lo que afectará la velocidad de convergencia. La función de activación tanh es una versión mejorada de la función sigmoidea. Es una función simétrica centrada en cero. Tiene una velocidad de convergencia rápida y no es propensa a las fluctuaciones del valor de pérdida, pero no puede resolver el problema de la dispersión del gradiente. La cantidad de cálculo de las dos funciones es exponencial y el cálculo es relativamente complicado. La función softsign es una versión mejorada de la función tanh, que es una función saturada de tipo S con cero como centro y un rango de valores de (−1, 1).

¿Por qué el modelo LR usa la función sigmoidea y cuál es el principio matemático detrás de ella?

1.3.6 ReLU (Regresión lineal rectificada, unidad lineal rectificada)

En las redes neuronales modernas, la recomendación predeterminada es usar la función de activación g ( z ) = max { 0 , z } g(z) = max \{ 0, z \}g ( z )=máximo x { 0 ,z } unidad lineal rectificada definida (Rectified Linear Regression) o denominadaReLU.

En general, la función de rectificación lineal se refiere a la función de pendiente en matemáticas , es decir, f ( x ) = max { 0 , x } f(x) = max \{ 0, x \}f ( x )=máximo x { 0 ,x } .
En la red neuronal se utiliza la rectificación lineal como función de activación de la neurona, que define la transformación lineal de la neuronaw T x + bw^Tx + bwTX _+El resultado de salida no lineal después de b . En otras palabras, para el vector de entrada xxde la capa anterior de la red neuronal que ingresa a la neuronax , una neurona que usa la función de activación de rectificación lineal generarámax ( 0 , w T x + b ) max(0, w^Tx + b)máx ( 0 , _wTX _+b ) _



2. Perceptrón de una sola capa (red neuronal de una sola capa, regresión lineal)

2.1 Modelo de perceptrón de una sola capa

En 1957, Frank Rosenblatt combinó el modelo MP y las reglas de aprendizaje de Hebb para inventar el perceptrón, una red neuronal de dos capas con una estructura similar al modelo MP, y generalmente se considera la red neuronal artificial más simple.

La diferencia entre el perceptrón y el modelo MP: la entrada no es discreta 0/1, y la función de activación no es necesariamente una función de umbral.

La estructura organizativa del modelo de perceptrón es la siguiente:


El diagrama simplificado correspondiente es:

Después de un mayor desarrollo y deformación, se ha convertido en una forma clásica de uso común. Debido a que solo hay una capa, también se denomina perceptrón de una sola capa . como sigue:


En comparación con el modelo MP, el perceptrón introduce un sesgo b. Formulado como:
f ( x ) = signo ( wx + b ) f(x) = signo(wx + b)f ( x )=signo n ( w x _ _+b ) Entre ellos,signo ( x ) signo(x)s i g n ( x ) es la función de activación:
sign ( x ) = { + 1 , x ⩾ 0 − 1 , x < 0 sign(x) = \begin{cases} +1,\,\, x \geqslant 0\\ -1,\,\, x < 0 \end{cases}firmar ( x ) _ _ _={ + 1 ,X0- 1 ,X<0Correspondientes a los dos estados de "activación" e "inhibición".


2.2 Interpretación geométrica del perceptrón

Como wx + b = 0 wx + b = 0ancho x+b=0 es equivalente annUn hiperplano en un espacio n- dimensional, www es el vector normal del hiperplano,bbb es la intersección del hiperplano,xxx es un punto en el espacio.

  • cuando xxCuando x está en el lado positivo del hiperplano,wx + b > 0 wx + b > 0ancho x+b>0 , el perceptrón está activado;
  • cuando xxCuando x está en el lado negativo del hiperplano,wx + b < 0 wx + b < 0ancho x+b<0 , se suprime el perceptrón.

Entonces, desde un punto de vista geométrico, el perceptrón es nnUn hiperplano en un espacio n- dimensional que divide el espacio de características en dos partes.


2.3 Perceptrón de una sola capa y tarea de clasificación lineal

Debido a la propiedad de separar hiperplanos que tienen los perceptrones, a menudo se utilizan para clasificar datos.

Primero, se proporciona un conjunto de datos de entrenamiento, luego se determinan los parámetros ω y b del modelo a través de los datos de entrenamiento y, finalmente, el modelo aprendido se usa para predecir la categoría de nuevos datos.

Suponga que los datos de entrenamiento dados son: T = ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . , ( x N , y N ) T = (x_1, y_1), (x_2, y_2), ... , (x_N, y_N)T=( X1,y1) ,( X2,y2) ,... ,( Xnorte,ynorte),其中,xi ∈ X = R norte , y ∈ { + 1 , − 1 } , yo = 1 , 2 , . . . , N x_i \in X = R^n, y \in \{ +1, -1 \}, i = 1,2,...,NXyoX=Rn ,y{ + 1 ,1 } ,i=1 ,2 ,... ,norte

El objetivo del aprendizaje es encontrar un hiperplano que pueda separar instancias positivas y negativas en los datos de entrenamiento.

Método de solución: inicialización de parámetros +Descenso de gradienterenovar

La solución obtenida no es una solución analítica en el sentido matemático, sino una solución óptima en el sentido de la ingeniería (no la única, siempre que se obtenga un mejor resultado).



2.4 Defectos del perceptrón de una sola capa

Minsky demostró en su libro de 1969 "The Perceptron" que el Perceptron no puede resolver el problema XOR.




3. Perceptrón multicapa (red neuronal feedforward)

Percepción de múltiples capas, MLP: introduzca una o más capas ocultas sobre la base de una red neuronal de una sola capa, de modo que la red tenga múltiples capas de red, lo que se denomina perceptrón de múltiples capas o red neuronal de avance .
En teoría, una red multicapa puede simular cualquier función compleja.


Como se puede ver en la figura anterior, la capa de perceptrón multicapa y la capa sonconexión completade. La capa inferior del perceptrón multicapa escapa de entrada, el medio escapa oculta,Finalmentecapa de salida

MLP no limita la cantidad de capas ocultas, ni limita la cantidad de neuronas en la capa de salida, por lo que podemos elegir la cantidad adecuada de capas ocultas según nuestras respectivas necesidades.

El poder expresivo de los perceptrones multicapa: resolución del problema OR exclusivo (XOR).




¿Por qué utilizar una función de activación?

  • Sin usar una función de activación, la salida de cada capa es una función lineal de la entrada de la capa superior, no importa cuántas capas tenga la red neuronal, la salida es una combinación lineal de las entradas.
  • Usando la función de activación, se pueden introducir factores no lineales en las neuronas, de modo que la red neuronal pueda aproximarse arbitrariamente a cualquier función no lineal, de modo que la red neuronal se pueda usar en más modelos no lineales.

La función de activación debe tener las siguientes propiedades:

  • Funciones no lineales que son continuas y diferenciables (permitiendo la no diferenciabilidad en un pequeño número de puntos). Las funciones de activación diferenciables se pueden usar directamente para aprender parámetros de red usando métodos de optimización numérica.
  • La función de activación y su función derivada deben ser lo más simples posible, lo que conduce a mejorar la eficiencia computacional de la red.
  • El rango de valores de la función derivada de la función de activación debe estar dentro de un intervalo apropiado, ni demasiado grande ni demasiado pequeño, de lo contrario, afectará la eficiencia y la estabilidad del entrenamiento.



4. Retropropagación

La red neuronal feedforward se introdujo anteriormente, por lo que surge la pregunta: ¿cómo se debe optimizar la red neuronal?
En 1986, Rummelhart y McClelland mejoraron el algoritmo de propagación hacia atrás (backpropagation, BP) para optimizar la red neuronal, por lo que la red neuronal a menudo se denomina red neuronal BP.

  • La propagación directa calcula los resultados de salida a través de datos de entrenamiento y parámetros de peso;
  • Retropropagación a través deregla de la cadena de las derivadascalcularfunción de pérdidaPara el gradiente de cada parámetro, y actualice los parámetros de acuerdo con el gradiente.

Nota: La retropropagación solo se refiere al proceso del gradiente de la función de pérdida al parámetro que fluye hacia atrás a través de la red, pero ahora a menudo se entiende como el método de entrenamiento completo de la red neuronal, que consta de dos bucles de propagación de errores y actualización de parámetros.







Referencia:
[1] Curso Tianchi: Principios y prácticas de aprendizaje profundo
[2] "Aprendizaje profundo" (Libro de flores)
[3] Modelo MP de aprendizaje de redes neuronales
[4] ¿Es el modelo MP la base de la red neuronal? NTU Zhou Zhihua Group propuso un nuevo modelo de neurona FT
[5] El perceptrón: un modelo probabilístico para el almacenamiento y la organización de la información en el cerebro
[6] Aprendizaje automático - Perceptrón de una sola capa
[7] Introducción al perceptrón multicapa (MLP)
[8] Conceptos básicos del aprendizaje automático (12) - Perceptrón multicapa
[9] Aprendizaje profundo | Explicación detallada de retropropagación

Supongo que te gusta

Origin blog.csdn.net/qq_42757191/article/details/124923876
Recomendado
Clasificación