PyTorch – conceptos básicos de redes neuronales

El principio básico de una red neuronal es una colección de elementos básicos, es decir, una neurona artificial o perceptrón. Incluye varias entradas básicas como x1, x2….. xn, que crean una salida binaria si la suma es mayor que el potencial de activación.

A continuación se menciona una representación esquemática de una muestra de neuronas:

muestra de neurona

La salida generada puede verse como una suma ponderada con potencial de activación o compensación.

$$ Salida = sum_jw_jx_j + Bias $$

A continuación se describe una arquitectura de red neuronal típica:

arquitectura de red neuronal

Las capas entre la entrada y la salida se denominan capas ocultas, y la densidad y el tipo de conexiones entre las capas es la configuración. Por ejemplo, en una configuración totalmente acoplada, todas las neuronas de la capa L están conectadas a las neuronas de la capa L + 1. Para una localización más pronunciada, podemos conectar solo una vecindad local a la siguiente capa, digamos, nueve neuronas. En la Fig. 1-9 muestran dos capas ocultas estrechamente acopladas.

Los diferentes tipos de redes neuronales son los siguientes:

Redes neuronales feedforward

Las redes neuronales feedforward incluyen los elementos principales de la familia de redes neuronales. El movimiento de datos en este tipo de red neuronal ocurre desde la capa de entrada a la capa de salida a través de las capas ocultas existentes. La salida de una sola capa sirve como capa de entrada con restricciones para cualquier tipo de bucles en la arquitectura de la red.

Redes neuronales feedforward

Redes neuronales recurrentes

Las redes neuronales recurrentes son cuando un patrón de datos cambia secuencialmente durante un período. En RNN, la misma capa se usa para recibir parámetros de entrada y mostrar parámetros de salida en una red neuronal especificada.

Redes neuronales recurrentes

Las redes neuronales se pueden construir usando el paquete torch.nn.

Construye redes neuronales

Es una red de alimentación directa simple. Toma la entrada, la ejecuta a través de múltiples capas una por una y finalmente produce la salida.

Con PyTorch, podemos usar los siguientes pasos para una rutina típica de entrenamiento de redes neuronales:

  • Definir una red neuronal con algunos parámetros (o pesos) estudiados.
  • Bucle sobre un conjunto de entradas.
  • Procesamiento de entrada a través de la red.
  • Calcule la pérdida (cuánto difiere el resultado del correcto).
  • Propagar degradados a las opciones de malla.
  • Actualice los pesos de la red, generalmente usando una actualización simple como se muestra a continuación.
rule: weight = weight -learning_rate * gradient

🚫