Descripción
¿Está preparado para dejar de ser un espectador y convertirse en creador de inteligencia artificial?
Inteligencia artificial con Python es una guía práctica para aprender a desarrollar aplicaciones reales de IA desde cero, sin perderse en teorías abstractas ni en fórmulas matemáticas innecesariamente complejas.
A través de explicaciones claras, ejemplos de código y proyectos progresivos, el lector aprenderá los fundamentos del machine learning y el deep learning, trabajará con herramientas profesionales como Pandas, scikit-learn, Keras y TensorFlow, y descubrirá cómo crear modelos capaces de analizar datos, predecir tendencias y clasificar imágenes mediante redes neuronales artificiales.
El libro aborda también técnicas avanzadas como árboles de decisión, random forest y XGBoost, mostrando cómo aplicarlas a problemas reales de análisis y predicción. Su enfoque eminentemente práctico permite transformar los conceptos de inteligencia artificial en proyectos funcionales desde las primeras páginas.
Además, esta obra constituye un manual de referencia para estudiantes del Curso de Especialización en Inteligencia Artificial y Big Data, ya que desarrolla contenidos clave de los módulos profesionales 5071, 5072 y 5073.
Dirigido a estudiantes, docentes, programadores y entusiastas de la tecnología, Inteligencia artificial con Python ofrece un punto de partida sólido para comprender la IA, utilizar Python como herramienta de desarrollo y empezar a crear soluciones inteligentes aplicables al mundo real.
Dé el paso de comprender la inteligencia artificial a crearla.
Índice
CONTENIDO
Prefacio
Antes de comenzar a leer este libro
Prólogo
Agradecimientos
CAPÍTULO 1. Fundamentos de la IA
1.1 Definición y alcance de la inteligencia artificial
1.2 ¿Qué es un sistema de aprendizaje?
1.3 La ecuación del aprendizaje automático
1.4 Generalización: el objetivo definitivo
1.5 Tipos de sistemas de aprendizaje
1.6 El ecosistema técnico de Python
1.7 Entorno de trabajo: Jupyter Notebooks
CAPÍTULO 2. Introducción al proyecto de datos
2.1 Metodología de proyecto (CRISP-DM)
2.1.1 FASE 1: Business Understanding (comprensión del negocio)
2.1.2 FASE 2: Data Understanding (comprensión de los datos)
2.1.3 FASE 3: Data Preparation (preparación de los datos)
2.1.4 FASE 4: Modeling (modelado)
2.1.5 FASE 5: Evaluation (evaluación)
2.1.6 FASE 6: Deployment (implantación/puesta en producción)
2.2 Relación entre proyecto de datos y sistema de aprendizaje
2.3 De los datos al conocimiento
CAPÍTULO 3. Análisis exploratorio de datos (EDA)
3.1 La importancia de la exploración previa
3.1.1 Objetivos del EDA. ¿Qué se busca en el EDA?
3.1.2 Las 3 grandes fases del EDA
3.2 FASE 1: La radiografía general
3.3 FASE 2: Análisis univariante
3.4 FASE 3: Análisis bivariante y multivariante
3.4.1 Numérica vs. numérica (Scatter Plot)
3.4.2 Numérica vs. categórica
3.4.3 Matriz de correlación y mapa de calor
3.5 Lista de comprobación final (checklist)
CAPÍTULO 4. Preprocesamiento: preparando los ingredientes
4.1 Limpieza de datos
4.1.1 Valores nulos
4.1.2 Duplicados y valores incoherentes
4.2 Transformación de variables categóricas
4.2.1 Label Encoding (con orden lógico)
4.2.2 One-Hot Encoding y variables dummy
4.2.3 ¿Qué es la Curse of Dimensionality?
4.2.4 Cuándo usar cada opción
4.3 Escalado de valores (Feature Scaling)
4.3.1 Formas de escalar
4.3.2 Qué escalador elegir
4.4 La regla de oro: Train/Test Split (entrenamiento y prueba)
4.4.1 La analogía: El estudiante y el examen
4.4.2 Cómo se hace en Python (Scikit-learn)
4.4.3 Fugas de información (Data Leakage)
4.4.4 ¿Qué porcentaje usar?
4.4.5 Automatización del flujo mediante Pipelines
4.5 Checklist final de preprocesamiento
CAPÍTULO 5. Aprendizaje supervisado (parte I). Regresión
5.1 Introducción al aprendizaje supervisado
5.2 Regresión. ¿Cómo predecir el futuro?
5.2.1 Regresión lineal simple
5.2.2 Regresión polinómica
5.2.3 Regresión múltiple
5.3 Regularización: Los frenos de mano
5.3.1 Resolución algebraica mediante la ecuación normal
5.3.2 Estabilidad numérica a través de Ridge (L2)
5.4 Métricas de evaluación en regresión
5.4.1 MAE (Mean Absolute Error)
5.4.2 RMSE (Root Mean Squared Error)
5.4.3 R² (R-cuadrado o coeficiente de determinación)
5.5 Optimización: El descenso del gradiente
CAPÍTULO 6. Aprendizaje supervisado (parte II). Clasificación
6.1 Modelos probabilísticos
6.1.1 Regresión logística (Logistic Regression)
6.1.2 Naive Bayes
6.2 Modelos geométricos
6.2.1 KNN (K-Nearest Neighbors)
6.2.2 SVM (Support Vector Machine)
6.3 Evaluación: ¿Cómo saber si el modelo es correcto?
6.3.1 Matriz de confusión: La realidad frente a la predicción
6.3.2 Métricas clave: Precisión, exhaustividad y exactitud
6.3.3 Conceptos relacionados con la evaluación
CAPÍTULO 7. Aprendizaje supervisado (parte III). Ensemble Learning
7.1 Introducción a la fuerza del equipo
7.2 El ladrillo fundamental: el árbol de decisión (Decision Tree)
7.2.1 ¿Para qué sirve un árbol de decisión?
7.2.2 Anatomía de un árbol
7.2.3 El mecanismo de aprendizaje (la impureza de Gini)
7.2.4 El gran peligro: El Overfitting
7.3 Implementación en Python (clasificación)
7.4 Árboles de regresión
7.4.1 Lógica interna: Agrupar y promediar
7.4.2 Criterio de división (reducción de varianza)
7.5 El dilema del sesgo y la varianza (Bias-Variance Tradeoff)
7.6 Random Forest (la solución a la varianza)
7.6.1 Mecánica de funcionamiento
7.6.2 Estrategias de descorrelación
7.7 XGBoost: aprender de los errores (la solución al sesgo)
7.7.1 Mecanismo de optimización
CAPÍTULO 8. Optimización: Ajuste del modelo (hiperparámetros)
8.1 Overfitting frente a Underfitting: El equilibrio del aprendizaje
8.1.1 Underfitting (subajuste) = «El vago»
8.1.2 Overfitting (sobreajuste) = «El que se pasó de listo»
8.1.3 El ajuste óptimo (generalización) = «El que entiende»
8.2 Parámetros frente a hiperparámetros (analogía del DJ)
8.3 Validación cruzada (Cross-Validation)
8.4 Estrategias de ajuste (Tuning)
8.4.1 Grid Search: el método exhaustivo
8.4.2 Random Search: el método intuitivo
8.4.3 Implementación en Python
CAPÍTULO 9. Aprendizaje no supervisado
9.1 Introducción: Aprendiendo sin respuestas
9.1.1 La diferencia técnica
9.1.2 ¿Para qué sirve si no puede predecir el futuro?
9.1.3 El reto matemático
9.2 La distancia euclidiana
9.2.1 ¿Por qué «euclidiana»?
9.2.2 Fórmula general
9.2.3 ¿Para qué se usa en programación o IA?
9.3 K-Means Clustering: La forma básica
9.3.1 Paso a paso del algoritmo K-Means
9.3.2 ¿Qué es K-Means++?
9.3.3 Criterio de convergencia en Scikit-learn
9.3.4 Ejemplo de implementación en Python
9.3.5 Bucle de validación con Silhouette Score
9.4 DBSCAN vs. HDBSCAN: Agrupar por densidad
9.4.1 DBSCAN: El organizador estricto
9.4.2 HDBSCAN: El organizador adaptable
9.4.3 Tabla comparativa
9.4.4 ¿Cuándo usar cada uno?
9.5 Evaluación de clusters
9.5.1 Inercia (SSE – Suma de errores al cuadrado)
9.5.2 Método del codo (Elbow Method)
9.5.3 Índice de Silhouette
9.5.4 Calinski-Harabasz y Davies-Bouldin
9.6 PCA: Reducción de dimensiones
9.6.1 El problema: La maldición de la dimensión
9.6.2 La solución: PCA actúa como un «fotógrafo»
9.6.3 El concepto técnico: Proyectar la varianza
9.6.4 Código: Visualizando lo imposible
CAPÍTULO 10. Deep Learning (redes neuronales)
10.1 El perceptrón (la neurona artificial)
10.1.1 Anatomía de una neurona
10.1.2 La fórmula matemática
10.2 Programación de una neurona desde cero
10.3 Funciones de activación
10.4 Arquitectura: construcción de la red
10.5 Backpropagation y el proceso de aprendizaje
10.6 Tipos de redes neuronales
10.7 Primera red neuronal con Keras y TensorFlow
CAPÍTULO 11. Inteligencia artificial generativa
11.1 ¿Qué es la inteligencia artificial generativa?
11.2 Aplicaciones de la IA generativa en ciencia de datos
11.3 Los modelos de difusión (Diffusion Models)
11.3.1 Proceso de entrenamiento y generación
11.3.2 Implementación conceptual en Python
11.4 Transformers y el lenguaje natural
11.4.1 Implementación conceptual de la atención
11.5 Sinergia: Difusión y Transformers
11.6 Redes generativas antagónicas (GAN)
11.7 Modelos autorregresivos (Autoregressive Models)
11.8 Resumen de arquitecturas generativas
CAPÍTULO 12. Profesionalizando la IA: Del laboratorio al mundo real
12.1 Pipelines (canalizaciones de datos)
12.1.1 La analogía de la depuradora de agua
12.1.2 Estructura de un Pipeline
12.1.3 Validación y ajuste del Pipeline
12.2 Data Leakage (fuga de información)
12.3 Persistencia (Joblib): «Guardar la partida»
12.3.1 ¿Cómo funciona la serialización?
12.3.2 Implementación del guardado y carga en Python
12.4 Del código a la aplicación web: Streamlit
12.4.1 ¿Qué es Streamlit?
12.4.2 Construcción de una aplicación predictiva
ANEXOS
A. Fundamentos estadísticos y matemáticos para IA
B. Cálculo matricial con NumPy
C. Manipulación de datos con Pandas
D. Machine Learning con Scikit-learn
Valoraciones
No hay valoraciones aún.