📗AND Código python

import numpy as np

# Definir las entradas y las salidas deseadas para la compuerta AND
entradas = np.array([[0, 0], [0, 1], [1, 0], [1, 1]])
salidas_deseadas = np.array([0, 0, 0, 1])

# Inicializar los pesos aleatoriamente
np.random.seed(0)
pesos = np.random.rand(2)

# Definir la función de activación (en este caso, la función escalón)
def funcion_activacion(sumatoria):
    return 1 if sumatoria >= 0 else 0

# Entrenamiento del perceptrón
num_epocas = 10
tasa_aprendizaje = 0.1

for epoca in range(num_epocas):
    for entrada, salida_deseada in zip(entradas, salidas_deseadas):
        # Calcular la sumatoria de las entradas ponderadas por los pesos
        sumatoria = np.dot(entrada, pesos)

        # Aplicar la función de activación
        salida = funcion_activacion(sumatoria)

        # Calcular el error
        error = salida_deseada - salida

        # Actualizar los pesos
        pesos += tasa_aprendizaje * error * entrada

# Probar el perceptrón entrenado
for entrada, salida_deseada in zip(entradas, salidas_deseadas):
    sumatoria = np.dot(entrada, pesos)
    salida = funcion_activacion(sumatoria)
    print(f'Entrada: {entrada}, Salida deseada: {salida_deseada}, Salida del perceptrón: {salida}')

Last updated