machine learning
machine learning
Inteligencia Artificial (IA): Cualquier técnica que permite a las máquinas resolver un
problema de la misma manera que lo harían los humanos.
Aprendizaje supervisado:
Aprendizaje no supervisado:
Resumen de los tipos de tareas de machine learning:
Algoritmo:
Conjunto de reglas para realizar cálculos, ya sea manualmente o en una máquina, o
secuencia de pasos computacionales que transforman la entrada(input) en la
salida(output).
Tipos de modelos:
Según su PROPÓSITO
• Explicativos (pruebas de hipótesis)
• Predictivos (aprendizaje automático)
Los modelos tienen diferentes NIVELES DE INTERPRETABILIDAD
• Modelos interpretables (simples y de baja precisión)
• Modelos de caja negra (complejos y de alta precisión)
Hacer que los datos sean más comprensibles para reducir el riesgo de sacar conclusiones
incorrectas en el proceso de aprendizaje
La metodología de machine learning:
Ejercicio:
Dado un conjunto de fotos de cuadros predecir si son del estilo barroco, impresionista o
cubista:
- Clasificación
- Aprendizaje supervisado: Tenemos un conjunto de observaciones en los cuales
tenemos la foto y la etiqueta, datos etiquetados no estructurados
Ejercicio:
Aprender a jugar al minecraft desde 0 a base de prueba y error
- Aprendizaje reforzado
Ejercicio:
Horas deporte semana Índice de
Índice masa corporal rendimiento
deportivo
En algún equipo deportivo
PCA: Principal
components
Nota en matemáticas Analysis
Índice de
Nota en finanzas rendimiento
académico
Horas de estudio diarias
(+) interpretabilidad
Árbol de clasificación
Red neuronal profunda
Random forest
TEMA 3:
Técnica de aprendizaje supervisado:
Regresión: predicción del valor de una variable objetivo cuantitativa (y) como función
de una o varias variables explicativas x (características), (cualitativas o cuantitativas).
• modelos de regresión lineal → predecir y analizar, con parámetros interpretables.
• origen de la palabra “regresión” galton (siglo xix).
R-cuadrado ajustada:
R cuadrado ajustado: penaliza el R² en función del número de variables en el modelo.
• Para elegir entre modelos (con la misma variable Y), podemos optar por el que tenga
un R² AJUSTADO MAYOR.
• PRECAUCIÓN: En los modelos predictivos (como suele ser el caso para los
practicantes de aprendizaje automático), la característica más importante es el
rendimiento predictivo en el conjunto de validación/prueba, ¡no el R²!
Estadística F:
La estadística F se utiliza para comprobar si un modelo es estadísticamente
significativo (no debido al azar). Es significativa si el valor p asociado es pequeño.
Educación:
Con variables que:
• Tienen un rango amplio
• Su distribución presenta sesgo a la derecha (+)
• Una mujer gana un 21% menos en comparación con un hombre (brecha salarial de
género).
- Linear-log model:
- Log-log model:
Características cualitativas:
Variables que no expresan una cantidad
Variables categóricas o no numéricas.
Multicolinealidad perfecta:
Se produce cuando una variable independiente puede ser expresada exactamente como
una combinación lineal de otras variables independientes en el modelo. En otras
palabras, hay una relación exacta entre las variables.
Consecuencias:
No se puede estimar el modelo de regresión porque el sistema de ecuaciones se
vuelve indeterminado.
Cualquier intento de calcular los coeficientes de regresión resultará en errores o
en la imposibilidad de realizar la estimación.
Ejemplo: Si tienes dos variables que son idénticas, como “ingresos anuales en dólares”
y “ingresos anuales en dólares” con diferentes nombres, esto sería un caso de
multicolinealidad perfecta.
Imperfecta multicolinealidad:
Se presenta cuando las variables independientes están correlacionadas, pero no de
manera perfecta. Hay alguna relación lineal entre ellas, pero no se puede expresar una
variable como una combinación exacta de las otras.
Consecuencias:
Puede inflar los errores estándar de los coeficientes, lo que lleva a estimaciones
menos precisas y a una dificultad para determinar la significancia estadística de
las variables.
Puede hacer que los coeficientes sean inestables y sensibles a pequeños cambios
en los datos.
Ejemplo: Si tienes dos variables como "nivel educativo" y "años de experiencia
laboral", estas pueden estar correlacionadas (una persona con más educación puede
tener más experiencia), pero no son perfectamente colineales.
Efecto cuadrático:
Si la beta de una variable al cuadrado es:
>0: cóncava
<0: convexa
El efecto de X sobre Y es primero decreciente y luego creciente (relación en forma de
U) o primero creciente y luego decreciente (relación en forma de U invertida).
EJEMPLO DE TRANSPORTE:
Usar para el eje Y transformación con logaritmo neperiano
ln(nº viajes bici (t))= B1+B2 nºtweets (t-1)
relación uso bicis con temperatura forma invertida (eje y:temp, eje x:viajes bici)
t*= -0.0781/ 2x(-0.001557)=25.08 º
Si llueve, uso bici se reduce un 25,82%
Día de referencia es el lunes
EFECTO DE INTERACCIÓN:
El efecto de X sobre Y es diferente según los valores de otra variable Z.
El efecto marginal sobre el nivel de alcohol de una bebida adicional es diferente para
hombres y mujeres.
En el ejemplo, ese efecto es dY/dX=3.2 para hombres y dY/dX=(3.2+1.2)=4.4 para
mujeres.
Efecto del nº copas en el nivel de alcoholemia:
Nivel de alcoholemia i = B1+B2 nºcopas i + B3mujer + B4(nºcopas*mujer) +u
Nºcopas*mujertérmino de interacción
derivada alcohol/derivada copas= B2+B4*mujer
Si soy mujerderivada alcohol/derivada copas= B2+B4
Si soy hombrederivada alcohol/derivada copas= B2 eje y(nºcopas), eje x(nivel alcohol)
mujer
hombre
Introducción:
La predicción del valor de **Y** para un nuevo individuo en regresión lineal consiste
en sustituir los valores de **X** en el modelo estimado y obtener su valor
correspondiente de **Y**.
DATA PARTITIONS:
Ejemplo examen de matemáticas:
¿Es precisa la predicción?
Enfoque directo: comparar el valor predicho de Y con el valor real de Y y estimar el
error de predicción:
Error de predicción = Valor real de Y – Valor predicho de Y
NUNCA usar todo el conjunto de datos para estimar el modelo.
• No obtendremos una verdadera predicción y nuestras medidas de error no serán
GENERALIZABLES.
• Deberíamos predecir el valor de Y para un individuo desconocido que no se
haya utilizado para estimar el modelo, con el fin de EVALUAR el rendimiento
predictivo del modelo.
• Si no conocemos el valor real de Y de este individuo, no podemos estimar el
error de predicción.
Solución
Dividir los datos en dos PARTICIONES:
• CONJUNTO DE ENTRENAMIENTO. Usado para ajustar y estimar el
modelo, para que el modelo "aprenda" y extraiga conclusiones a partir de los
datos.
• CONJUNTO DE PRUEBA. Un subconjunto de los datos originales que no se
ha utilizado para estimar el modelo. Se utiliza el conjunto de prueba para estimar
el error de generalización predictiva y calcular las medidas de rendimiento
predictivo.
La partición de los datos debe realizarse para todos los algoritmos de APRENDIZAJE
SUPERVISADO.
Para mitigar sesgos, dividimos los datos de manera ALEATORIA entre el conjunto de
entrenamiento y el conjunto de prueba.
¿Cómo?
Varias formas de hacer la partición:
• Barajar el conjunto de datos y elegir las primeras P% de filas como conjunto de
entrenamiento, y las filas restantes como conjunto de prueba.
• Generar números aleatorios de una distribución B(1, P) y seleccionar las filas con
valor "1" como conjunto de entrenamiento.
• Usar funciones específicas para esto, como train_test_split del paquete scikit-learn
RENDIMIENTO PREDICTIVO:
Métricas de rendimiento predictivo
Estimamos los errores de predicción en el CONJUNTO DE PRUEBA y los
promediamos de diferentes maneras:
Podemos decir que el modelo es mejor si los valores de las medidas de rendimiento
predictivo son más bajos.
Línea de referencia a superar: “modelo nulo” y=media(y)
Las más usadas MSE, RMSE
Error Medio. Representa si el modelo infrapredice(si es mayor a 0) (lo predicho es menor a lo
observado) o sobrepredice (si es menor a 0) (lo predicho es mayor a lo observado)
Selección de variables
¿QUÉ VARIABLES PUEDO INCLUIR EN EL
MODELO?
Enfoque "kitchen-sink": inclúyelas todas y
veamos qué sucede…
¡Cuidado! Debes considerar:
Costo o posibilidad de obtener datos de
buena calidad.
Valores de datos faltantes.
Riesgo de multicolinealidad (modelo inestable, difícil de interpretar).
Se prefiere un modelo parcimonioso (baja complejidad, pocas variables) en
términos de interpretabilidad.
Compensación entre sesgo y varianza (si se omite una variable: SESGO; si se
incluye una variable irrelevante: VARIANZA en la predicción).
Usar demasiadas variables puede llevar a menudo a sobreajuste.
Más sobre la compensación entre sesgo y varianza (more on bias-variance tradeoff)
Selección del modelo:
Idealmente, se realiza comparando las medidas de rendimiento en el CONJUNTO DE
PRUEBA
Comparando errores entre los conjuntos de entrenamiento y validación
En general, esto es válido para todos los algoritmos de aprendizaje supervisado.
¿POR QUÉ?
• El error más bajo en el conjunto de prueba.
• Compensación entre complejidad y rendimiento.
Predicción:
Una vez que el modelo ha sido ajustado utilizando los datos de entrenamiento, usamos
la función predict() para obtener predicciones para los datos del conjunto de prueba.
Para calcular el RMSE (Raíz del Error Cuadrático Medio) en el conjunto de prueba,
podemos aplicar la fórmula manualmente o utilizar la métrica predefinida del paquete
scikit-learn (sklearn).