Introducción a las Redes Neuronales Pt. I

Ulises García
Jan 25 · 7 min read

¿Qué es una neurona artificial? Son métodos de aprendizaje automático cuya finalidad es imitar los procesos biológicos de las redes neuronales de los organismos vivos (Orallo, Ferri, & Quintana, 2004).

Introducción

Dentro del campo de la Inteligencia Artificial se han intentado crear modelos matemáticos que se aproximen a los modelos biológicos con el objetivo de que una computadora pueda imitar los procesos de los seres vivos para resolver distintas tareas de manera automática. Prueba de ello son las redes neuronales artificiales (conjunto de neuronas interconectadas entre si) que actualmente imitan el proceso de aprendizaje que pueden generar cuando trabajan en conjunto.

¿Qué es una neurona artificial?

Una neurona artificial es un método de aprendizaje automático cuya finalidad es imitar los procesos biológicos de las redes neuronales de los organismos vivos (Orallo, Ferri, & Quintana, 2004).

Relación entre una neurona biológica y una neurona artificial
Relación entre una neurona biológica y una neurona artificial
Relación entre una neurona biológica y una neurona artificial.

Antecedentes históricos

A continuación se describen de manera simplificada los componentes básicos de una neurona biológica (sin ser expertos) así como la estructura de un perceptron.

Neurona Biológica

Una neurona biológica es una célula nerviosa eléctricamente excitables e interconectada dentro del cerebro que procesan y transmiten información a través de señales eléctricas y químicas. Estas neuronas están conectadas entre sí para formar una red neuronal en el cerebro. Una neurona se compone de tres partes: cuerpo celular, las dendritas y el axón.

Estructura básica de una neurona biológica.
  • Cuerpo Celular (Soma): Tiene como función principal sintetizar la mayoría de las proteínas que se encuentran en la neurona.
  • Dendritas: Son prolongaciones protoplasmáticas, cortas y ramificadas que surgen desde el cuerpo celular. Estas prolongaciones se sencargan de recibir y procesar los impulsos que llegan de otras neuronas para transmitirlas al cuerpo celular.
  • Axón: Se trata de una prolongación caracterizada por ser única y larga, pues en algunas ocasiones tiende a medir 1 metro de longitud. Esta prolongación se origina en el área del cuerpo celular. Tiene como función extraer el impulso resultante desde cuerpo celular y transmitirlo a otra zona del sistema

La comunicación entre neuronas se llama sinapsis, la cual se da en la terminación del axón y con las dendritas de la siguiente neurona liberando una sustancia, ésta cambia el balance de iones (átomos cargados electrónicamente) entre el interior y el exterior de la membrana celular.

Cuando este cambio alcanza un nivel umbral, este efecto se expande a través de la mebrana de la célula hasta el axón y se inicia un potencial de acción.

Cuando el potencial de acción alcanza la terminación del axón, causa diminutas burbujas quimicas llamadas vesículas que descargan su contenido en el salto sináptico.

Neurona Artificial (Perceptrón)

En 1943 McCulloch & Pitts inspirados en la neurona biológica desarrollaron un modelo artificial de una neurona. Esta idea fue retomada más tarde por Rosenblatt quien creó una estructura llamada perceptrón. Un perceptrón es un modelo matemático que representa la aproximación de un modelo de una neurona biológica la cual posee una o varias entradas, una función de activación y una salida.

Las entradas del perceptrón actúan como las dendritas o señales de entrada hacia la neurona. La función de activación realiza el papel del soma que decide en que momento disparar esa señal eléctrica y la salida modela al axón que al activarse envía información hacia las neuronas con las que se conecta.

Elementos de un perceptrón

A continuación se describe de manera mas detallada las estructura de un perceptrón así como parte de su funcionamiento.

Descripción del funcionamiento de un perceptron.
  1. Señales de entrada: El perceptrón recibe de la realidad o de otra neurona que le antecede ciertas señales de entrada, en la mayoría de los casos se trabaja con valores de entrada booleanos.
    La señal de entrada llamada bias es un valor de sesgo que permite cambiar o disparar la función de activación hacia la izq. o der. para garantizar un aprendizaje exitoso.
  2. Pesos sinápticos (representan los impulso eléctricos): Los pesos sinápticos permite el impulso o disparo de una señal de entrada, estos son generados de manera aleatoria en un rango de [-1,1].
  3. Unión sumatoria: La función sumatoria realiza la suma ponderada de las señales de entrada con los pesos.
  4. Función de activación: Una vez realizada la suma ponderada la función de activación evalúa que tan aptas son las señales de entrada, si la sumatoria de estas estas rebasa un cierto umbral son mandadas como salida, de lo contrario se regresa al paso 2 y se ajustan los pesos (pueden ser generados de manera aleatoria)
  5. Salida: manda la salida resultante a la siguiente neurona.

¿Entonces qué es una red neuronal?

Entonces una red neuronal se compone de un conjunto de perceptrones interconectados entre si, generando así una red, la cual su estructura puede volverse tan compleja como nosotros lo deseemos. La estructura más sencilla se conforma de tres capas, una capa de entrada, una capa oculta y una capa de salida.

Ejemplo de una red neuronal con tres capas (capa de entrada, capa oculta y capa de salida).

Ejemplo del funcionamiento de un perceptrón

Para entender cómo funciona un perceptrón, a continuación realizaremos una ejemplificación, en la que enseñaremos al perceptrón a responder a las entradas de una compuerta AND, en donde dados 2 valores de entrada input 1, input 2, nos dé un valor de salida esperado (output).

La compuerta lógica AND realiza un producto booleano dadas dos entradas, la condición que debe cumplir la compuerta AND es definida por la siguiente tabla de verdad.

Tabla de verdad de la compuerta lógica AND.

Caso 1: Entrada A (0), Entrada B (0) → Salida 0

  1. Se toman 2 entradas Entrada 0, Entrada 1, el tercer parámetro bias tomará el valor de 1 (siempre tomara el valor de 1).
  2. Se generan los pesos aleatorios Wi1, Wi2 en el rango [-1,1], Wi1=0.3, Wi2=0.7, y Wib=-0.5 (peso para el valor del bias).
  3. Se realiza la suma ponderada de las entradas por los pesos: suma = ((0X0.3)+(0X0.7)) + (1X-0.5), resultado: suma = -0.5
  4. Función de activación: 1 si suma+bias >= 0 o 0 si suma+bias <= 0, en este caso se obtiene una suma de 0.5 (de acuerdo con a función de activación) la salida es 0
  5. Salida: Obtuvimos una salida 0 y nuestra salida esperada es 0 esta condición se cumple, entonces pasamos con los valores de las siguientes entradas.

Caso 2: Entrada A (0), Entrada B (1) → Salida 0

  1. Se toman 2 entradas Entrada 0, Entrada 1, el tercer parámetro bias tomará el valor de 1 (siempre tomara el valor de 1).
  2. Se generan nuevos pesos aleatorios Wi1, Wi2 en el rango [-1,1], Wi1=0.5, Wi2=0.1, Wib=0.9
  3. Se realiza la suma ponderada de las entradas por los pesos: suma = ((0X0.5)+(1X0.1)) + (1X0.9), resultado: suma = 1
  4. Función de activación: 1 si suma+bias >= 0 o 0 si suma+bias <= 0, en este caso se obtiene una suma de 1 (de acuerdo con a función de activación) la salida es 1
  5. Salida: Obtuvimos una salida 1 y nuestra salida esperada es 0 esta condición no se cumple, entonces regresamos al paso 2 y repetimos el proceso.

Regresamos al paso 2

2. Se generan nuevos pesos aleatorios Wi1, Wi2 en el rango [-1,1], Wi1=0.1, Wi2=-0.9, Wib=0.5

3. Se realiza la suma ponderada de las entradas por los pesos: suma = ((0X0.1)+(1X-0.9)) + (1X0.5), resultado: suma = -0.3

4. Función de activación: 1 si suma+bias >= 0 o 0 si suma+bias <= 0, en este caso se obtiene una suma de 0, porque -0.3 es menor que 0.

5. Salida: Obtuvimos una salida 0 y nuestra salida esperada es 0, esta condición se cumple.

Salidas actuales

Salidas obtenidas hasta este momento.

Este proceso sera el mismo para los dos casos restantes, para fines prácticos resuelve los casos restantes, realizando el proceso antes visto.

Caso 3: Entrada A (1), Entrada B (0) → Salida 0
Caso 4: Entrada A (1), Entrada B (1) → Salida 1

Dudas y Comentarios.

Twitter: @ugarciacal

Facebook: UlisesGC

Referencias

Future Lab

Community focused on science and technology outreach as well as projects that use AI, IoT or data.

Ulises García

Written by

CM Future Lab 🚀| Software Engineer 👨‍💻| master’s student in computer science🕹| PythonDev 🐍| interests in PatterRecognition and MachineLearning 🧩

Future Lab

Community focused on science and technology outreach as well as projects that use AI, IoT or data.

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade