Cómo programar una red neuronal con Tensorflow, Keras y Sklearn

Posted by


En este tutorial, te enseñaré paso a paso cómo programar una red neuronal utilizando TensorFlow, Keras y scikit-learn. Una red neuronal es un modelo de aprendizaje automático inspirado en el funcionamiento del cerebro humano, que se utiliza para predecir valores a partir de datos de entrada.

Antes de empezar, es importante tener instaladas las siguientes bibliotecas: TensorFlow, Keras y scikit-learn. Puedes instalarlas fácilmente utilizando pip en tu terminal:

pip install tensorflow
pip install keras
pip install scikit-learn

Ahora, vamos a crear una red neuronal para predecir la cantidad de ventas de un producto basándonos en diferentes características, como el precio, la publicidad, la competencia, etc. Para esto, utilizaremos un conjunto de datos de ejemplo que contiene estas características.

Paso 1: Importar las bibliotecas necesarias

import numpy as np
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from keras.models import Sequential
from keras.layers import Dense

Paso 2: Cargar y preprocesar los datos

data = pd.read_csv('datos.csv')
X = data.drop('ventas', axis=1).values
y = data['ventas'].values

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

scaler = StandardScaler()
X_train = scaler.fit_transform(X_train)
X_test = scaler.transform(X_test)

Paso 3: Crear el modelo de la red neuronal

model = Sequential()
model.add(Dense(10, input_shape=(X_train.shape[1],), activation='relu'))
model.add(Dense(10, activation='relu'))
model.add(Dense(1, activation='linear'))
model.compile(optimizer='adam', loss='mean_squared_error')

En este caso, hemos creado un modelo de red neuronal con dos capas ocultas, cada una con 10 neuronas y función de activación ReLU. La capa de salida tiene una neurona y función de activación lineal, ya que estamos tratando de predecir un valor continuo (el número de ventas).

Paso 4: Entrenar el modelo

model.fit(X_train, y_train, epochs=100, batch_size=32, validation_data=(X_test, y_test))

Paso 5: Evaluar el modelo

loss = model.evaluate(X_test, y_test)
print('Test loss:', loss)

Una vez que hayas completado estos pasos, habrás creado y entrenado con éxito una red neuronal para predecir la cantidad de ventas de un producto. Si quieres mejorar el rendimiento de tu modelo, puedes probar diferentes arquitecturas de red, optimizadores y funciones de activación, así como también ajustar los hiperparámetros, como el número de épocas, el tamaño del lote, etc.

¡Espero que este tutorial te haya sido útil y te haya ayudado a comprender cómo programar una red neuronal con TensorFlow, Keras y scikit-learn! ¡Buena suerte!

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

📸 Sígueme en Instagram para más contenido tras las cámaras : https://www.instagram.com/dotcsv/
💸 …y apoya el canal en Patreon!!! : https://www.patreon.com/dotcsv

@galiciaspaceoddity2760
1 month ago

5:28

import scipy as sc

import matplotlib.pyplot as plt

from sklearn.datasets import make_circles

#Creamos nuestros datos artificiales, donde buscaremos clasificar

#dos anillos concéntricos de datos. X, Y make circles(n_samples=500, factor=0.5, noise=0.05)

# Resolución del mapa de predicción.

res = 100

# Coordendadas del mapa de predicción.

_x0= np.linspace(-1.5, 1.5, res) x1 = np.linspace(-1.5, 1.5, res)

#Input con cada combo de coordenadas del mapa de predicción.

_PX = np.array(np.meshgrid(_x0, x1)).T.reshape(-1, 2)

# Objeto vacio a 0.5 del mapa de predicción. _PY = np.zeros((res, res)) +0.5

# Visualización del mapa de predicción. plt.figure(figsize=(8, 8))

plt.pcolormesh(_x0, x1, py, cmap="coolwarm", vmin=0, vmax=1)

#Visualización de la nube de datos.

plt.scatter (X[Y == 0,0], X[Y == 0,1], c="skyblue") plt.scatter (X[Y == 1,0], XV 1,1), c= "salmon")

plt.tick_params(labelbottom=False, labelleft=False)

@diegozambrana
1 month ago

5:25 me pongo a poner pausa el video para copiar el código y después sale que el notebook estaba en la descripción 😓😆

@javierjavierman
1 month ago

Muchas gracias por el video

@guidoprd
1 month ago

Capooo

@MiguelLopez-j2w
1 month ago

No me funciona el tf.placeholder

@alfierimorillo
1 month ago

Excelente video, felicitaciones!!!

@elvisleon9695
1 month ago

Podrias programar un ejemplo usando transformers?, seria de gran ayuda.

@MarianaCMo
1 month ago

No entendí ni miercoles, pero es un excelente video. Me entretuve mucho.

@anthonymlop
1 month ago

Hace un año aprendí los conceptos de IA y mesomenos entendí tus vídeos, ahora me doy cuenta es son una joyita 🥵 gracias

@ahidalgo131313
1 month ago

No me parece adecuado tu video

@cervantesjuarezisrael3981
1 month ago

Estoy asombrado con el nivel de calidad de tus videos y lo magnifico que explicas, como utilizas los recursos digitales, cada uno de tus videos lo he entendido a la perfección.
Ojala así enseñaran en las universidades. 🙁

@Fernando54655
1 month ago

buentrabajo

@hbmichang
1 month ago

Hola, ya no existe Akademy AI?

@eduardoedd8566
1 month ago

¡Muchas gracias Carlos!
Recién con este video tuyo el acabo de comprender los rudimentos de la inteligencia artificial desde adentro.
Este video es fundamental.

@sergioramoneroles5807
1 month ago

Realmente veo q están ultra avanzados en el dialecto informatico de IA
Ahora bien el pronpts directamente puede ser un código símbolo como Qr con la facultad ej el idioma chino en su interpretación semántica y simbolica de caracteres para su asistencia de enlaces neuronal
Más de lo mismo pero con un nuevo orden de uso
Gracias por tu exposición

@danielocanto3968
1 month ago

Efectivamente debiste decir lo del codigo en el notebook antes… Uno aqui usando Google lens

@wilmerbravo7
1 month ago

Otras herramientas como keras sabeis?

@carmen5443
1 month ago

este canal es oro, gracias de verdad, eres super didáctico

@rolandoflores3048
1 month ago

Yo vengo inciando en el mundo de la programación, soy un novato a todo nivel pero con este video ya ne ciento todo un senior. 😂😂😂 y lo lograremos banda lo lograremos.