Creando tu primera red neuronal en Python y Tensorflow

Posted by


Una red neuronal es un modelo matemático que está inspirado en la forma en que funciona el cerebro humano. Consiste en una red de nodos interconectados que se utilizan para procesar y analizar datos. En este tutorial, te enseñaré cómo crear tu primera red neuronal en Python utilizando la popular biblioteca de aprendizaje profundo TensorFlow.

Paso 1: Instalar TensorFlow
Lo primero que necesitas hacer es instalar TensorFlow en tu entorno de Python. Puedes hacerlo fácilmente utilizando pip, el administrador de paquetes de Python. Simplemente ejecuta el siguiente comando en tu terminal:

pip install tensorflow

Paso 2: Importar TensorFlow y otras bibliotecas necesarias
Una vez que hayas instalado TensorFlow, puedes comenzar a trabajar con él en tu script de Python. Importa TensorFlow y otras bibliotecas necesarias en tu script:

import tensorflow as tf
import numpy as np

Paso 3: Crear los datos de entrenamiento
Para entrenar tu red neuronal, necesitas crear un conjunto de datos de entrenamiento. En este ejemplo, vamos a crear un conjunto de datos simple que consta de entradas y salidas.

# Definir las entradas y las salidas
inputs = np.array([[0, 0], [0, 1], [1, 0], [1, 1]])
outputs = np.array([[0], [1], [1], [0]])

Paso 4: Definir el modelo de la red neuronal
Ahora que tienes tus datos de entrenamiento, puedes definir el modelo de tu red neuronal. En este caso, vamos a utilizar un modelo de red neuronal básico con una capa oculta y una capa de salida.

model = tf.keras.Sequential([
    tf.keras.layers.Dense(2, activation='relu', input_shape=(2,)),
    tf.keras.layers.Dense(1, activation='sigmoid')
])

Paso 5: Compilar el modelo
Una vez que hayas definido el modelo de tu red neuronal, debes compilarlo. Durante este paso, debes especificar la función de pérdida y el optimizador que se utilizarán durante el entrenamiento.

model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])

Paso 6: Entrenar el modelo
Ahora estás listo para entrenar tu red neuronal. Utiliza el método fit para entrenar el modelo con tus datos de entrenamiento.

model.fit(inputs, outputs, epochs=1000)

Paso 7: Utilizar el modelo entrenado
Una vez que hayas entrenado tu red neuronal, puedes utilizarla para hacer predicciones sobre nuevos datos. Utiliza el método predict para predecir la salida para un conjunto de entradas.

predictions = model.predict(inputs)
print(predictions)

¡Y eso es todo! Has creado tu primera red neuronal en Python utilizando TensorFlow. ¡Felicitaciones! Ahora puedes experimentar con diferentes arquitecturas de redes neuronales, conjuntos de datos y técnicas de entrenamiento para mejorar el rendimiento de tu modelo. ¡Buena suerte!

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

Ya tengo cursos!
Aprende a programar desde cero con Python:
https://www.domestika.org/es/courses/5228-introduccion-a-la-programacion-con-python/ringatech
Aprende IA desde cero con Python:
https://www.domestika.org/es/courses/5239-introduccion-a-la-ia-con-python/ringatech

También puedes seguir mi lista de reproducción aquí en Youtube para más videos de IA:
https://youtube.com/playlist?list=PLZ8REt5zt2Pn0vfJjTAPaDVSACDvnuGiG

@Javier_639_
1 month ago

Si a una computadora ingresas así sin más, un valor de 20 y un valor de 15, la computadora no hará absolutamente nada. Lo digo porque no existe la inteligencia artificial, quizás, como en este caso, ya no sea necesario definir la operación a realizar, sin embargo eso no significa que la máquina piense. Cuando se hace el proceso de "entrenamiento" en realidad se están ejecutando los algoritmos que nos estamos ahorrando en la programación. A lo que voy es que la inteligencia artificial no existe. Nunca ninguna máquina podrá ser inteligente, en la inteligencia se necesita voluntad, cosa que una máquina no posee. Lo digo sin demeritar la complejidad que debe ser realizar ese tipo de algoritmos y programar a este nivel, pero tampoco debemos demeritar la grandeza inexplicable de lo que un ser inteligente es, y no hay ningún tipo de comparación.

@Pan_Gaming133
1 month ago

A mi me dio error con todo <_>

@abelcruz5803
1 month ago

Hola. realice el ejercicio pero me marca error cuando intento predecir un valor con el modelo.

resultado=modelo.predict([100])

File ~anaconda3Libsite-packageskerassrctrainersdata_adapters__init__.py:120, in get_data_adapter(x, y, sample_weight, batch_size, steps_per_epoch, shuffle, class_weight)

112 return GeneratorDataAdapter(x)

113 # TODO: should we warn or not?

114 # warnings.warn(

115 # "`shuffle=True` was passed, but will be ignored since the "

(…)

118 # )

119 else:

–> 120 raise ValueError(f"Unrecognized data type: x={x} (of type {type(x)})")

ValueError: Unrecognized data type: x=[100] (of type <class 'list'>)

@tangao12
1 month ago

Como sabe la maquina que al primer numero lo tiene que multiplicar y el segundo sumar?
O siempre funciona asi ? las conexiones multiplican y los sesgos se suman?

@VAZTICK
1 month ago

Joder que buen maestro, y su voz, nel no desespera, al contrario transmite confianza para seguir aprendiendo 😀 Gracias!

@danielisaacmendozagutierre497
1 month ago

video super, la explicacion es increiblemente buena, me encantó

@VictorManuelRomeroBenitez
1 month ago

Felicidades Ringa Tech por compartir tus conocimientos, muy interesantes y lo haces ver muy facil. Yo estoy tratando de aplicar este tipo de tecnología para aplicarlo en un modelo predictivo de humedales para México pero viendo tus videos me da una idea para irme adentrando. Gracias

@sergiocuestarod
1 month ago

muy buenos videos

@frankmelendez9967
1 month ago

Hola amigo, en tu ejemplo de colab del enlace que compartiste me resulta error cuando genero la predicción en el primer ejemplo. ValueError: Unrecognized data type: x=[100.0] (of type <class 'list'>)

@JHONTHERAP
1 month ago

muy buen tutorial es hora de actualizarlo gracias solucion al predecir
print("hagamos una prediccion")

resultado = modelo.predict(np.array([100.0])) # Convert the list [10.0] to a NumPy array

print("nnel resultado es "+ str(resultado)+" fahrenheitnn")

@miguelviloria4596
1 month ago

grande pa

@juancarlosruiz3399
1 month ago

me volvi loco con este canal ufff

@rilezaos
1 month ago

Gracias!!! excelente aporte.

@DANIELCALLAZZO
1 month ago

Y QUE ES UNA red neuronal

@Beltrain
1 month ago

tremendo crack!! 2024

@gmolleda
1 month ago

Excelente.
Al ejecutar el código donde pone capa = tf.keras.layers.Dense(units=1, input_shape=[1]) me dio el error: …dense.py:87: UserWarning: Do not pass an `input_shape`/`input_dim` argument to a layer. When using Sequential models
Creo que fue por no esperar a que terminara de ejecutarse lo anterior, volví a ejecutar lo anterior y entonces funcionó.

@elkinuruena4238
1 month ago

Eres el puto amo explicando LLM a quienes no saben!!!!
Graciaaaaas!!!

@personalplanow
1 month ago

que mente tan brillante

@thenny4444
1 month ago

no entendi :c