La ciencia de datos es un campo interdisciplinar que utiliza métodos, algoritmos, procesos y sistemas para extraer conocimiento y conclusiones a partir de todo tipo de datos. A través del aprendizaje automático combina elementos de estadística, informática, matemáticas y técnicas de análisis para resolver problemas, hacer predicciones y generar valor a partir de los datos. Se apoya en grandes volúmenes de datos (Big Data) para descubrir patrones, tendencias y relaciones que pueden ser utilizadas para la toma de decisiones.
En este libro se desarrollan técnicas de aprendizaje supervisado utilizadas habitualmente en las aplicaciones de Inteligencia Artificial Predictiva y Ciencia de Datos.
Las técnicas se ilustran con ejemplos totalmente resueltos a partir del software adecuado para ello. Se utilizará el lenguaje Python y sus librerías relativas al aprendizaje supervisado, ideales para trabajar en este campo.
Se profundiza en algoritmos predictivos como:
Regresión Lineal Múltiple,
Ridge Regression
PLS Regression
LARS Regression
LASSO Regression
Elastic Net Regression
Modelo Lineal Generalizado
Regresión Robusta
Support Vector Regression (SVR)
Kernel Ridge Regression (KRR)
Stochastic Gradient Descendent Regression (SGD)
Regresión de Hubert
Regresión de Poisson
Regresión Binomial Negativa
Modelos Logit y Probit
Modelos de Recuento
Modelos de Regresión con Redes Neuronales.
Inteligencia artificial, ciencia de datos y aprendizaje automático
1. Aprendizaje automático
1.1 Clasificación de los sistemas de aprendizaje automático: supervisado y no supervisado
1.1.1 Aprendizaje supervisado
1.1.2 Aprendizaje no supervisado
1.2 Algoritmos aplicados al aprendizaje automático
1.3 Herramientas de aprendizaje automático
2. Modelo predictivo básico de regresión lineal múltiple. Ejemplos con Python
2.1 Regresión lineal múltiple
2.2 Hipótesis en el modelo de regresión múltiple
2.2.1 Hipótesis para la validación del error
2.2.2 Hipótesis para la validación de los regresores
2.2.3 Hipótesis para los parámetros
2.2.4 Hipótesis para la ecuación del modelo
2.3 Estimación por MCO (mínimos cuadrados ordinarios)
2.4 Estimación por máxima verosimilitud
2.5 Validación en el modelo MCO
2.6 Predicción en el modelo MCO
2.6.1 Predicciones puntuales y en media e intervalos de confianza
2.6.2 Indicadores de la Capacidad Predictiva de un modelo
2.7 Regresión paso a paso
2.8 Diagnosis de los residuos
2.9 Python y el trabajo básico con el modelo de regresión múltiple
3. Validación en el modelo de regresión: multicolinealidad, autocorrelación y heteroscedasticidad
3.1 Diagnosis: el problema de la autocorrelación
3.2 Diagnosis: indicadores y contrastes para detección de la autocorrelación
3.2.1 Indicadores para la Autocorrelación: Estadístico DW de Durbin-Watson
3.2.2 Contrastes matemáticos para la Autocorrelación. Prueba de Breusch-Godfrey
3.2.3 Tratamiento de la autocorrelación
3.3 Diagnosis: el problema de la heteroscedasticidad
3.4 Diagnosis: indicadores y contrastes de detección de la heteroscedasticidad
3.4.1 Diagnosis mediante el contraste de Goldfeld-Quandt
3.4.2 Diagnosis mediante el contraste de Glesjer
3.4.3 Diagnosis mediante el contraste W de White
3.4.4 Diagnosis mediante el contraste RESET de Ramsey
3.4.5 Diagnosis mediante el contraste de Breush-Pagan
3.5 Tratamiento de la heteroscedasticidad
3.5.1 Estimación mediante Mínimos Cuadrados Generalizados y Mínimos Cuadrados Ponderados
3.5.2 Estimación mediante el método de White
3.6 Diagnosis: el problema de la multicolinealidad
3.6.1 Diagnosis: detección de la multicolinealidad
3.6.2 Tratamiento de la multicolinealidad
3.7 Diagnosis: normalidad de los residuos
3.7.1 Ausencia de normalidad en los residuos
3.7.2 Tratamiento de la falta de normalidad residual
3.8 Diagnosis: no linealidad y errores de especificación en el modelo
3.8.1 El problema del error de especificación en la selección de las variables explicativas
3.8.2 El problema del error de especificación en la forma funcional. Contrastes de linealidad
3.9 Diagnosis: problemas de exogeneidad y regresores estocásticos
3.10 Diagnosis: el problema de las observaciones influyentes
3.11 Multicolinealidad, autocorrelación, heteroscedasticidad y valores influyentes a través de Python
3.11.1 Valores influyentes a través de Python
3.11.2 Heteroscedasticidad a través de Python: Contrastes de Breusch-Pagan y White. Estimación robusta
3.11.3 Multicolinealidad a través de Python. Factores de Inflación de la Varianza y Método de la Regresión en Cadena (Ridge Regression)
3.11.4 Autocorrelación a través de Python. Contrastes de Ljung-Box, Breusch-Godfrey y Durbin-Watson
4. Multicolinealidad en el modelo de regresión lineal. Métodos PLS y Ridge Regression. Ejemplos con Python
4.1 Multicolinealidad en el modelo predictivo de regresión lineal
4.2 Mínimos cuadrados parciales. método PLS
4.2.1 Mínimos cuadrados parciales (PLS) en Python
4.2.2 Número de componentes óptimo en el método PLS
4.3 El método Ridge Regression de la regresión en cadena
4.3.1 Ridge Regression a través de Python
5. Selección de variables en regresión y validación cruzada. Lars Regression, Lasso Regression y Elastic Net Regression.
5.1 Regresión del lazo (Lasso Regression)
5.2 La regresión del lazo en Python
5.3 Lasso multitarea
5.4 Regresión del ángulo mínimo (Lars Regression)
5.5 Regresión Elastic Net
5.6 Regresión Elastic net multitarea
6. Regresión robusta. Valores atípicos y errores de medida. Regresiones RANSAC, Theil-Sen y Huber
6.1 Regresión robusta: valores atípicos y errores de modelización
6.2 Ransac (Random Sample Consensus)
6.2.1 Estimación de un modelo lineal robusto usando RANSAC con Python
6.3 Estimador Theil-Sen
6.4 Regresión de Huber
6.4.1 Comparación de la regresión OLS y la regresión de Huber
6.4.2 Comparación de la regresión de Ridge y la regresión de Huber
7. Métodos de Regresión Robusta: Kernel Ridge Regression (KRR), Support Vector Regression (SVR) y Stochastic Gradient descendt (SGD)
7.1 Kernel Ridge Regression
7.2 Nyström Kernel Ridge Regression
7.3 Support Vector Regression (SVR)
7.4 Comparación de Kernel Ridge Regression (KRR) y Support Vector Regression (SVR)
7.5 Descenso de gradiente estocástico (SGD)
8. Regresión logística y modelos lineales generalizados. Ejemplos con Python
8.1 Aprendizaje supervisado: modelo lineal generalizado
8.1.1 Elementos de un modelo lineal generalizado:
8.2 Modelos de variable dependiente limitada y recuento: Logit, Probit, poisson y binomial negativa
8.3 Distribuciones de la familia exponencial
8.4 Modelos de elección discreta
8.5 Modelos de elección discreta binaria
8.5.1 Modelo MLP (Modelo lineal de probabilidad)
8.5.2 Modelos Logit y Probit binarios: estimación por máxima verosimilitud
8.6 Modelos de elección múltiple
8.6.1 Modelo Logit Multinomial
8.6.2 Modelo Probit Multinomial
8.7 Modelos Logit y Probit ordenados
8.8 Modelos de datos de recuento
8.8.1 Modelo de Regresión de Poisson
8.8.2 Modelo Binomial Negativa
8.8.3 Modelo Exponencial
8.8.4 Modelo Normal
8.9 Tratamiento de los modelos lineales generalizados a través de Python
8.9.1 Modelo Logit binario a partir de la librería Statsmodels
8.9.2 Modelo Probit binario a partir de la librería Statsmodels
8.9.3 Modelo de Poisson a partir de la librería Statsmodels
8.9.4 Modelo Binomial Negativa a partir de la librería Statsmodels
8.10 modelos Logit y Probit multinomiales a través de la librería Statmodels
8.11 modelos Logit y Probit ordenados a través de Statsmodels
8.12 modelo Logit binario a través de Scikit Learn
8.13 modelo Logit múltiple a través de Scikit Learn
9. Modelos de regresión con redes neuronales. Ejemplos con Python
9.1 Descripción de una red neuronal
9.1.1 Definición
9.1.2 Función de salida y funciones de transferencia o activación
9.2 Redes neuronales y ajuste de modelos de regresión
9.3 Redes neuronales para regresión en Python
9.3.1 Redes neuronales para regresión con Scikit Learn
9.3.2 Redes neuronales para regresión con Keras/Tensor Flow
9.4 Red neuronal perceptrón multicapa para clasificación en Python