septiembre 10, 2024


Dominar el aprendizaje automático: cómo implementar un perceptrón con Python

El aprendizaje automático es el componente básico de la inteligencia artificial y la ciencia de datos. Es un método que permite que las máquinas aprendan por sí mismas sin ser programadas explícitamente. Los algoritmos de aprendizaje automático mejoran constantemente y ahora se utilizan en una amplia gama de aplicaciones, como reconocimiento de imágenes, análisis de voz y traducción de idiomas.

Uno de los algoritmos de Machine Learning más fundamentales es el Perceptron. Es un algoritmo de red neuronal que se utiliza para tareas de clasificación y predicción. En este artículo, discutiremos cómo implementar un Perceptron desde cero usando Python.

¿Qué es un perceptrón?

Un Perceptron es un algoritmo de red neuronal que se utiliza para el aprendizaje supervisado. Es una red neuronal de una sola capa que se utiliza para tareas de clasificación. El Perceptrón consta de un conjunto de entradas, pesos y sesgos. Las entradas se multiplican por los pesos y luego se agrega el sesgo al resultado. La salida del Perceptron está determinada por si la suma es mayor o igual a un valor de umbral.

El algoritmo del perceptrón

El algoritmo Perceptron es un algoritmo de clasificación lineal simple. Toma un conjunto de valores de entrada y devuelve la salida en función del conjunto de pesos y sesgos. Si la salida es mayor que el umbral, se clasifica como uno, de lo contrario, se clasifica como cero.

El algoritmo Perceptron funciona ajustando los pesos y los valores de sesgo durante el proceso de entrenamiento. El algoritmo ajusta los pesos y los valores de sesgo en función del error entre la salida prevista y la salida real. El error se minimiza iterativamente hasta que el algoritmo converge en un conjunto de pesos y valores de sesgo que pueden clasificar con precisión los datos de entrada.

Implementando un perceptrón con Python

Para implementar un Perceptron con Python, primero debemos comprender la estructura del algoritmo. Comenzaremos definiendo la clase Perceptron y luego implementando la función de entrenamiento.

Subclase de la Clase Perceptrón

Comenzamos creando una subclase de la clase de lista de Python, que contendrá los valores de ponderación y sesgo. La clase también tiene un método para inicializar los valores de ponderación y sesgo.

«`pitón
clase Perceptrón (lista):
def __init__(self, tamaño_de_entrada):
self.pesos = [0] * tamaño_de_entrada
auto.sesgo = 0
«`

La clase Perceptron contiene dos atributos: pesos y sesgo. El constructor acepta un argumento entero, input_size, que representa el número de entradas.

El atributo de pesos se inicializa en una lista de ceros, con una longitud igual al tamaño de entrada. El atributo de sesgo se inicializa a cero.

Implementar la Función de Entrenamiento

La función de entrenamiento es responsable de actualizar los valores de ponderación y sesgo para minimizar el error entre la salida prevista y la salida real. La función de entrenamiento toma un conjunto de valores de entrada y un valor de salida esperado como argumentos.

«`pitón
def tren(auto, entradas, salida_esperada):
# Calcular la salida prevista
salida_predicha = self.predict(entradas)

# Calcular el error
error = resultado_esperado – resultado_predicho

# Actualizar los pesos y valores de sesgo
for i in range(len(self.weights)):
auto.pesos[i] += error * entradas[i]

self.sesgo += error
«`

La función de tren calcula la salida pronosticada llamando a la función de predicción y pasando los valores de entrada. Luego, la función calcula el error restando la salida prevista de la salida esperada.

A continuación, los valores de ponderación y sesgo se actualizan en función del error. Los pesos se actualizan multiplicando el error por el valor de entrada y sumando el resultado al valor de peso actual. El valor de sesgo se actualiza sumando el error al valor de sesgo actual.

Implementar la función de predicción

La función de predicción es responsable de calcular la salida en función de los valores de entrada, los pesos y el sesgo. La función de predicción toma un conjunto de valores de entrada como argumento y devuelve el valor de salida previsto.

«`pitón
def predecir (auto, entradas):
activación = 0

for i in range(len(self.weights)):
activación += pesos propios[i] * entradas[i]

activación += auto.sesgo

si activación >= 0:
volver 1
demás:
volver 0
«`

La función de predicción inicializa la variable de activación a cero. Luego, la función itera sobre los valores y pesos de entrada, multiplicando cada valor de entrada con su peso correspondiente y sumando el resultado a la variable de activación. El valor de sesgo se suma luego al valor de activación.

Finalmente, la función comprueba si el valor de activación es mayor o igual a cero. Si es así, la función devuelve uno, de lo contrario, devuelve cero.

Implementando el Algoritmo de Perceptrón con Python

Ahora que hemos definido la clase Perceptron y sus métodos, podemos comenzar a implementar el algoritmo Perceptron.

«`pitón
entradas = [[0, 0], [0, 1], [1, 0], [1, 1]]
resultado_esperado = [0, 0, 0, 1]

perceptrón = perceptrón(len(entradas[0]))

para i en el rango (1000):
para j en el rango (len (entradas)):
perceptron.tren(entradas[j]Rendimiento esperado[j])

para i en el rango (len (entradas)):
imprimir (entradas[i]perceptron.predict(entradas[i]))
«`

En este ejemplo, creamos una lista de entradas y valores de salida esperados. Luego creamos una instancia de la clase Perceptron, pasando la longitud de los valores de entrada como argumento.

Luego iteramos sobre los datos de entrenamiento 1000 veces, actualizando los pesos y los valores de sesgo después de cada vez. Finalmente, iteramos sobre los valores de entrada e imprimimos la salida prevista para cada entrada.

Contenido compatible con SEO

Aquí están los subtítulos H2 que ayudarán a organizar el contenido y resaltar los diferentes temas que se abordarán en la publicación:

1. ¿Qué es un perceptrón?
2. El algoritmo del perceptrón
3. Implementando un Perceptrón con Python
4. Subclase de la clase Perceptron
5. Implementar la Función de Capacitación
6. Implementar la función de predicción
7. Implementando el Algoritmo de Perceptrón con Python

En conclusión, el Perceptron es un algoritmo fundamental de Machine Learning que se utiliza para tareas de clasificación y predicción. Es una red neuronal de una sola capa que se entrena utilizando el algoritmo Perceptron. En este artículo, hemos discutido cómo implementar un Perceptron desde cero usando Python. Hemos definido la clase Perceptron y sus métodos, y luego implementamos el algoritmo Perceptron. Si sigue los pasos descritos en este artículo, puede comenzar a dominar el aprendizaje automático y comenzar a crear sus propios modelos.