La inteligencia artificial (IA) es hoy una de las tecnologías más importantes en diferentes sectores. Aunque parece compleja, la IA consiste en sistemas informáticos que realizan tareas que antes solo podían hacer los humanos. Estos sistemas analizan datos, encuentran patrones y toman decisiones con cierta autonomía.
Desde los asistentes de voz en nuestros móviles hasta las recomendaciones personalizadas en plataformas de streaming, la IA ya está en nuestra vida diaria.
TensorFlow destaca como una herramienta clave para desarrollar aplicaciones de IA. Creada por Google en 2015 y luego liberada como software libre, esta biblioteca permite a los programadores crear y entrenar modelos de aprendizaje profundo. Su nombre viene de su funcionamiento: usa “tensores”, que son estructuras de datos que permiten hacer cálculos matemáticos complejos de forma eficiente.
Aunque es potente, TensorFlow está diseñada para ser accesible incluso para principiantes en programación y ciencia de datos. Con una comunidad activa y buena documentación, cualquiera puede empezar a crear modelos avanzados con relativa facilidad.
En este tutorial te mostramos cómo empezar con TensorFlow y crear tus propios modelos de IA para resolver problemas reales.
Si quieres crear aplicaciones que predigan gastos, detecten caras en fotos o incluso recomienden ingredientes para pizzas según el gusto, TensorFlow es perfecto. Esta herramienta sirve tanto para pequeños proyectos personales como para grandes aplicaciones comerciales.
La instalación es muy fácil. Con solo escribir pip install tensorflow pandas matplotlib
en tu terminal ya tendrás todo lo necesario para empezar a experimentar con IA.
Para empezar con TensorFlow, puedes crear una red neuronal simple. Por ejemplo, este modelo predice precios de casas según su tamaño:
import tensorflow as tf
import numpy as np
# Datos (tamaño en pies cuadrados y precio)
temp_data = np.array([[1400], [1600], [1800], [2000], [2200]], dtype=float)
price_data = np.array([[200000], [250000], [300000], [350000], [400000]], dtype=float)
# Normalización
temp_data /= 2200
price_data /= 400000
# Creación del modelo
model = tf.keras.Sequential([
tf.keras.layers.Input(shape=[1]),
tf.keras.layers.Dense(units=1)
])
model.compile(optimizer='sgd', loss='mean_squared_error')
model.fit(temp_data, price_data, epochs=500, verbose=1)
# Hacer una predicción
prediction_input = np.array([[2400 / 2200]])
prediction = model.predict(prediction_input)
print(f"Precio predicho: ${prediction[0][0] * 400000:.2f}")
Este código hace lo siguiente:
Una vez domines lo básico, puedes probar con modelos más complejos:
from tensorflow.keras.layers import Conv2D, MaxPooling2D, Flatten, Dense
from tensorflow.keras.models import Sequential
model = Sequential([
Conv2D(32, (3, 3), activation='relu', input_shape=(64, 64, 3)),
MaxPooling2D(pool_size=(2, 2)),
Flatten(),
Dense(128, activation='relu'),
Dense(1, activation='sigmoid')
])
# Compilar el modelo
model.compile(optimizer='adam',
loss='binary_crossentropy',
metrics=['accuracy'])
Así funciona este modelo:
lstm_model = tf.keras.Sequential([
tf.keras.layers.LSTM(50, return_sequences=True, input_shape=(100, 1)),
tf.keras.layers.LSTM(50),
tf.keras.layers.Dense(1)
])
# Compilar el modelo LSTM
lstm_model.compile(optimizer='adam', loss='mean_squared_error')
Este modelo LSTM:
Este ejemplo muestra cómo crear un modelo para detectar diabetes usando datos médicos reales:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import tensorflow as tf
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
# Cargar datos
url = "https://raw.githubusercontent.com/jbrownlee/Datasets/master/pima-indians-diabetes.data.csv"
column_names = ["Embarazos", "Glucosa", "PresionArterial", "GrosorPiel",
"Insulina", "IMC", "FuncionPedigri", "Edad", "Resultado"]
data = pd.read_csv(url, names=column_names)
# Separar características y etiquetas
X = data.iloc[:, :-1].values
y = data.iloc[:, -1].values
# Dividir 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)
# Estandarizar los datos
scaler = StandardScaler()
X_train = scaler.fit_transform(X_train)
X_test = scaler.transform(X_test)
# Crear el modelo
model = tf.keras.Sequential([
tf.keras.layers.Dense(16, activation='relu', input_shape=(X_train.shape[1],)),
tf.keras.layers.Dense(8, activation='relu'),
tf.keras.layers.Dense(1, activation='sigmoid')
])
# Configurar el modelo
model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy'])
# Entrenar el modelo
history = model.fit(X_train, y_train, epochs=100, batch_size=16,
validation_data=(X_test, y_test), verbose=1)
# Evaluar el modelo
loss, accuracy = model.evaluate(X_test, y_test)
print(f"Precisión del modelo: {accuracy:.4f}")
# Hacer predicciones
predictions = model.predict(X_test[:5])
for i, pred in enumerate(predictions):
print(f"Paciente {i+1}: {'Diabetes' if pred[0] > 0.5 else 'No diabetes'}")
Este ejemplo más completo:
¿Quieres saber más? Únete a los canales oficiales de Facialix:
TensorFlow hace que la IA sea accesible para cualquiera con conocimientos básicos de programación. Ya sea que quieras crear sistemas de recomendación, aplicaciones que reconozcan imágenes o herramientas de análisis, TensorFlow te da todo lo necesario para convertir tus ideas en realidad.
¿Te interesa alguna otra biblioteca de aprendizaje automático? ¿Tienes algún proyecto en mente donde aplicar estos conocimientos?
Aprende a usar tablas dinámicas en Excel con este curso gratuito. Domina el análisis de…
Curso gratuito de matemáticas básicas con certificado oficial. Aprende a tu ritmo con expertos de…
Aprende alimentación saludable con este curso gratuito de Fundación Carlos Slim. 51 horas de formación…
Si estás interesado en la programación pero no sabes por dónde empezar, esta es una…
Al completarlo, recibirás un certificado que podrás añadir a tu currículum o perfil de LinkedIn
Aprende Excel gratis: curso completo con funciones básicas, tablas dinámicas y gráficas. 1:50h de duración…