Predicción con Redes Neuronales utilizando SciKitLearn en Python: Nivel Básico

Posted by


En este tutorial, vamos a aprender sobre redes neuronales y cómo usarlas para hacer predicciones utilizando SciKitLearn en Python. Este tutorial es muy básico y está diseñado para aquellos que recién comienzan en el desarrollo de machine learning.

¿Qué son las redes neuronales?

Las redes neuronales son algoritmos de machine learning inspirados en el funcionamiento del cerebro humano. Consisten en un conjunto de neuronas interconectadas que se organizan en capas. Cada neurona realiza una operación matemática simple y envía su resultado a las neuronas de la siguiente capa. Las redes neuronales son capaces de aprender patrones en los datos y hacer predicciones en base a esos patrones.

Instalación de SciKitLearn

Antes de comenzar con el tutorial, necesitamos instalar SciKitLearn en nuestro entorno de Python. Puedes hacerlo ejecutando el siguiente comando en tu terminal:

pip install scikit-learn

Importar bibliotecas necesarias

Para utilizar las redes neuronales en Python, necesitamos importar las siguientes bibliotecas:

import numpy as np
from sklearn.neural_network import MLPRegressor
from sklearn.model_selection import train_test_split

Cargar el conjunto de datos

En este tutorial, vamos a utilizar un conjunto de datos de ejemplo para predecir las ventas de una tienda en base a diferentes características. Puedes descargar el conjunto de datos de ejemplo desde [Enlace al conjunto de datos].

# Cargar el conjunto de datos
data = np.loadtxt('sales_data.csv', delimiter=',')

# Separar las características (X) y la variable objetivo (y)
X = data[:, :-1]
y = data[:, -1]

Dividir el conjunto de datos en entrenamiento y prueba

Es importante dividir nuestro conjunto de datos en un conjunto de entrenamiento y un conjunto de prueba para evaluar el rendimiento de nuestro modelo de redes neuronales.

# Dividir el conjunto de datos en entrenamiento y prueba
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

Crear y entrenar el modelo de redes neuronales

Ahora que hemos preparado nuestros datos, podemos crear y entrenar nuestro modelo de redes neuronales.

# Crear el modelo de redes neuronales
model = MLPRegressor(hidden_layer_sizes=(100,), max_iter=500)

# Entrenar el modelo
model.fit(X_train, y_train)

Realizar predicciones con el modelo

Una vez que hemos entrenado nuestro modelo de redes neuronales, podemos realizar predicciones en el conjunto de prueba.

# Realizar predicciones en el conjunto de prueba
predictions = model.predict(X_test)

print(predictions)

¡Y eso es todo! Ahora has aprendido cómo usar redes neuronales para hacer predicciones en Python utilizando SciKitLearn. Recuerda que este tutorial es muy básico y hay mucho más que puedes aprender sobre redes neuronales y machine learning en general. ¡Sigue practicando y experimentando!

0 0 votes
Article Rating
39 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
@javiermonima7628
1 month ago

Qué buen video. Es muy difícil encontrar a alguien que explique así de bien. GRACIAS!! .. Info si das clases por favor.

@esnaydermunoz686
1 month ago

a mi genera un error

@chefrafa6169
1 month ago

les comparto el mismo código con las nuevas actualizaciones de los parámetros de las librerías usadas.

———————————————————————————————————————————————
import pandas as pd

import numpy as np

from sklearn.neural_network import MLPRegressor

datos=pd.read_csv("puzzle.csv")

x=datos["Numeracion"]

y=datos["Sucesion"]

X=np.array(x)[:,np.newaxis]

while True:

from sklearn.model_selection import train_test_split

X_train, X_test, y_train, y_test = train_test_split(X, y)

mlr=MLPRegressor(solver='lbfgs',alpha=1e-5,hidden_layer_sizes=(3,3),random_state=1)

mlr.fit(X_train,y_train)

print(mlr.score(X_train,y_train))

if mlr.score(X_train,y_train) > 0.98:

break

prediccion=mlr.predict([[20]])

print("prediccion en T=20min ", prediccion)

———————————————————————————————————————————————

@hip9023
1 month ago

Muy buen video

@manuelc2201
1 month ago

De nuevo muy agradecido excelente video!

@educandotufe8530
1 month ago

Muy bien… excelente

@adri123161
1 month ago

Hola! copie el ejemplo tal cual pero tengo el siguiente error: ValueError: Expected 2D array, got 1D array instead:

array=20.

Reshape your data either using array.reshape(-1, 1) if your data has a single feature or array.reshape(1, -1) if it contains a single sample.
les paso?

@juanspechini2046
1 month ago

Me da este error: X = x[:, np.newaxis]

TypeError: list indices must be integers or slices, not tuple

Como se puede arreglar?
Excelente la explicación!

@joseraul3660
1 month ago

Hola quede gratamente sorprendido sin tanto rollo lo explicaste con bolitas y palitos, te hago una consulta, quiere predecir las fechas y el precio de las acciones de cualquier empresa, es necesario modificar el formato de la fecha me aparece así 2021-07-30, puesto el precio de las acciones si estan en numero decimal, para que lo pueda leer el modelo. Gracias

@leonelruppel7597
1 month ago

Excelente video! Se puede utilizar para proyectar el tamaño del mercado de un servicio en los próximos 5 años? En los ejes tendría: Y = dinero ($) y en X = años. De no ser este el video indicado por favor indícame cuál de los que has hecho lo sería. Muchas gracias!

@ingpol8
1 month ago

me aparece error en esta línea x = datos ["Tiempo"]

@ithielsanchezmendez6515
1 month ago

Hola espero me ayudes, tengo un problema, me asignaron un proyecto el cual es en python es predecir que trailero es el mejor para realizar un viaje espero me ayudes plis

@ferzim63
1 month ago

Excelente video! Con el while me diste ideas para poder aplicarlo en otros modelos también! Pulgar arriba y me suscribo! Gracias!,

@alieghmosquerarueda727
1 month ago

gracias por el video me gustaria saber como utilizar un modelo predictivo en una aplicacion graciass

@raybaca2735
1 month ago

hola es interesante la foorma como lo haces, pero cuando lo aplico en spyder me aparece un error : ModuleNotFoundError: No module named 'sklearn' y no se como solucionarlo , podrias ayudarme

@rcaballero19
1 month ago

Hola, por qué no utilizas ninguna función de activación?
Que función de activación es la mejor para casos de predicción?

@kevinalejandro3121
1 month ago

Si tienen un video de cómo guardar esa red neuronal ya entrenada ??

@eduardo1591000
1 month ago

por que a ti te sale un valor y a mi me sale vector? q—q

@carloschess2010
1 month ago

Pero qué pedagogia!!! Muchas gracias!!!

@lizflorizacrisostomomeza1880
1 month ago

Hola