Red neuronal artificial: bloques de construcción
El procesamiento de ANN depende de los siguientes tres bloques de construcción:
- Topología de la red
- Ajustes de pesos o aprendizaje
- Funciones de activación
En este capítulo, analizaremos en detalle estos tres bloques de construcción de ANN
Topología de la red
Una topología de red es la disposición de una red junto con sus nodos y líneas de conexión. Según la topología, ANN se puede clasificar en los siguientes tipos:
Red Feedforward
Es una red no recurrente que tiene unidades / nodos de procesamiento en capas y todos los nodos de una capa están conectados con los nodos de las capas anteriores. La conexión tiene diferentes pesos sobre ellos. No hay un circuito de retroalimentación, lo que significa que la señal solo puede fluir en una dirección, de entrada a salida. Puede dividirse en los siguientes dos tipos:
Single layer feedforward network- El concepto es de ANN feedforward que tiene solo una capa ponderada. En otras palabras, podemos decir que la capa de entrada está completamente conectada a la capa de salida.
Multilayer feedforward network- El concepto es de ANN feedforward que tiene más de una capa ponderada. Como esta red tiene una o más capas entre la capa de entrada y la de salida, se denomina capas ocultas.
Red de comentarios
Como sugiere el nombre, una red de retroalimentación tiene rutas de retroalimentación, lo que significa que la señal puede fluir en ambas direcciones usando bucles. Esto lo convierte en un sistema dinámico no lineal, que cambia continuamente hasta alcanzar un estado de equilibrio. Puede dividirse en los siguientes tipos:
Recurrent networks- Son redes de retroalimentación con circuitos cerrados. A continuación se muestran los dos tipos de redes recurrentes.
Fully recurrent network - Es la arquitectura de red neuronal más simple porque todos los nodos están conectados a todos los demás nodos y cada nodo funciona como entrada y salida.
Jordan network - Es una red en lazo cerrado en la que la salida volverá a ir a la entrada como retroalimentación como se muestra en el siguiente diagrama.
Ajustes de pesos o aprendizaje
El aprendizaje, en una red neuronal artificial, es el método de modificar los pesos de las conexiones entre las neuronas de una red específica. El aprendizaje en ANN se puede clasificar en tres categorías, a saber, aprendizaje supervisado, aprendizaje no supervisado y aprendizaje reforzado.
Aprendizaje supervisado
Como sugiere el nombre, este tipo de aprendizaje se realiza bajo la supervisión de un profesor. Este proceso de aprendizaje es dependiente.
Durante el entrenamiento de ANN bajo aprendizaje supervisado, el vector de entrada se presenta a la red, que dará un vector de salida. Este vector de salida se compara con el vector de salida deseado. Se genera una señal de error si hay una diferencia entre la salida real y el vector de salida deseado. Sobre la base de esta señal de error, los pesos se ajustan hasta que la salida real coincida con la salida deseada.
Aprendizaje sin supervisión
Como sugiere el nombre, este tipo de aprendizaje se realiza sin la supervisión de un profesor. Este proceso de aprendizaje es independiente.
Durante el entrenamiento de ANN bajo aprendizaje no supervisado, los vectores de entrada de tipo similar se combinan para formar grupos. Cuando se aplica un nuevo patrón de entrada, la red neuronal da una respuesta de salida que indica la clase a la que pertenece el patrón de entrada.
No hay comentarios del entorno sobre cuál debería ser el resultado deseado y si es correcto o incorrecto. Por lo tanto, en este tipo de aprendizaje, la propia red debe descubrir los patrones y características de los datos de entrada y la relación entre los datos de entrada y los de salida.
Aprendizaje reforzado
Como su nombre indica, este tipo de aprendizaje se utiliza para reforzar o fortalecer la red sobre alguna información crítica. Este proceso de aprendizaje es similar al aprendizaje supervisado, sin embargo, es posible que tengamos muy menos información.
Durante el entrenamiento de la red bajo aprendizaje reforzado, la red recibe alguna retroalimentación del entorno. Esto lo hace algo similar al aprendizaje supervisado. Sin embargo, la retroalimentación que se obtiene aquí es evaluativa, no instructiva, lo que significa que no hay profesor como en el aprendizaje supervisado. Después de recibir la retroalimentación, la red realiza ajustes de los pesos para obtener una mejor información crítica en el futuro.
Funciones de activación
Puede definirse como la fuerza o esfuerzo adicional aplicado sobre la entrada para obtener una salida exacta. En ANN, también podemos aplicar funciones de activación sobre la entrada para obtener la salida exacta. Las siguientes son algunas funciones de activación de interés:
Función de activación lineal
También se denomina función de identidad, ya que no realiza ninguna edición de entrada. Puede definirse como:
$$ F (x) \: = \: x $$
Función de activación sigmoidea
Es de dos tipos de la siguiente manera:
Binary sigmoidal function- Esta función de activación realiza la edición de entradas entre 0 y 1. Es de naturaleza positiva. Siempre está acotado, lo que significa que su salida no puede ser menor que 0 y mayor que 1. También es estrictamente de naturaleza creciente, lo que significa que cuanto mayor sea la entrada, mayor será la salida. Puede definirse como
$$ F (x) \: = \: sigm (x) \: = \: \ frac {1} {1 \: + \: exp (-x)} $$
Bipolar sigmoidal function- Esta función de activación realiza la edición de entrada entre -1 y 1. Puede ser de naturaleza positiva o negativa. Siempre está acotado, lo que significa que su salida no puede ser menor que -1 y mayor que 1. También es estrictamente creciente en la naturaleza como la función sigmoidea. Puede definirse como
$$ F (x) \: = \: sigm (x) \: = \: \ frac {2} {1 \: + \: exp (-x)} \: - \: 1 \: = \: \ frac {1 \: - \: exp (x)} {1 \: + \: exp (x)} $$