Modelo de un perceptrón en python
Vamos a crear un perceptron desde cero y con todos las cuestiones posibles por tener.
Al implementar el perceptrón paso a paso, se consideraron los siguientes aspectos y decisiones:
Importar la biblioteca
numpy
: Se utiliza la bibliotecanumpy
en Python para realizar cálculos numéricos eficientes, como multiplicación de matrices y sumas vectorizadas.Definir las entradas y las salidas deseadas: En el ejemplo, se definen las entradas y las salidas deseadas para la compuerta lógica AND. Esto proporciona los datos de entrenamiento para el perceptrón.
Inicializar los pesos aleatoriamente: Los pesos iniciales se inicializan con valores aleatorios utilizando
numpy.random.rand()
. La inicialización aleatoria ayuda a evitar cualquier sesgo inicial en el aprendizaje del perceptrón.Definir la función de activación: En este caso, se utiliza la función de activación escalón, que devuelve 1 si la sumatoria es mayor o igual a 0 y 0 en caso contrario. La elección de la función de activación depende del problema que se esté abordando y se selecciona para introducir no linealidad en el modelo.
Entrenamiento del perceptrón: Se define un número de épocas y se realiza un bucle para iterar a través de las épocas. Dentro de cada época, se itera a través de las entradas y las salidas deseadas. Se calcula la sumatoria de las entradas ponderadas por los pesos, se aplica la función de activación, se calcula el error y se actualizan los pesos utilizando la regla de aprendizaje del perceptrón.
Probar el perceptrón entrenado: Después del entrenamiento, se utiliza el perceptrón entrenado para predecir la salida para cada combinación de entradas de la compuerta AND. Se calcula la sumatoria de las entradas ponderadas por los pesos, se aplica la función de activación y se compara la salida obtenida con la salida deseada.
Cada decisión tomada en el proceso tiene una justificación específica. Por ejemplo, la inicialización aleatoria de los pesos ayuda a evitar problemas de simetría y garantiza que el perceptrón comience con una capacidad de aprendizaje adecuada. La elección de la función de activación escalón es apropiada para la compuerta lógica AND, ya que produce una salida binaria (0 o 1) y es capaz de separar linealmente las clases.
Es importante tener en cuenta que las decisiones específicas pueden variar dependiendo del problema y del contexto en el que se esté utilizando el perceptrón.
Programa en python
Podemos representar la compuerta AND de la siguiente manera:
Entrada 1 | Entrada 2 | Salida
0 | 0 | 0
0 | 1 | 0
1 | 0 | 0
1 | 1 | 1
Last updated