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!
Qué buen video. Es muy difícil encontrar a alguien que explique así de bien. GRACIAS!! .. Info si das clases por favor.
a mi genera un error
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)
———————————————————————————————————————————————
Muy buen video
De nuevo muy agradecido excelente video!
Muy bien… excelente
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?
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!
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
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!
me aparece error en esta línea x = datos ["Tiempo"]
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
Excelente video! Con el while me diste ideas para poder aplicarlo en otros modelos también! Pulgar arriba y me suscribo! Gracias!,
gracias por el video me gustaria saber como utilizar un modelo predictivo en una aplicacion graciass
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
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?
Si tienen un video de cómo guardar esa red neuronal ya entrenada ??
por que a ti te sale un valor y a mi me sale vector? q—q
Pero qué pedagogia!!! Muchas gracias!!!
Hola