Clase 1: Calidad de los Datos y Feature Engineering
Ayudantía
Tenemos (posible) ayudante, pero tenemos un problema de horario.
Tarea 1
Fechas de Prueba
Valores a los que se les puede aplicar alguna operación matemática.
Número de Hijos
, Cantidad de Productos
, Edad
.Temperatura
, Peso
.Datos que representan una categoría.
Nacionalidad
, género
, ocupación
.Nivel de Escolaridad
, tamaño
.No todas las operaciones matemáticas son aplicables. Ej: Media, Mediana, Sumas, Restas, etc.
Datos de texto, los cuales podrían eventualmente ser tratados y representar algo. Ej:
Rescatar comunas de una dirección
,rescatar sexo desde el nombre
, etc.
Datos tipo fecha, los cuales podrían eventualmente ser tratados y representar variables de algún tipo. Ej:
Rescatar Años
,meses
,días
,semanas
,trimestres (quarters)
, etc.
Datos que representan la ubicación geográfica de un elemento. Ej:
Latitud
,Longitud
,Coordenadas
.
Sin importar el tipo de dato el mayor problema es su calidad.
Se le llama Señal
a la tendencia principal y representa la información significativa y valiosa de los datos.
"interesantes"
o errores de medición
.
Son valores que por alguna razón no están presentes.
Missing at Random (MAR): Son valores que no están presentes por causas que no se pueden controlar. Ej: No se registró, no se preguntó, fallas en el sistema de recolección de datos, etc.
Informative Missing: Es un valor no aplicable. Ej: Sueldo en niños, Precio de la entrada de un concierto si es que NO compró entrada.
Esto genera problemas en la confiabilidad de los datos. ¿Cuál es el registro correcto?
Ej: Caso particular de una Jooycar (una startup de seguros).
Ej: Caso de Super Avances en Cencosud.
También conocida como Ingeniería de Atributos, es el
arte
de trabajar lasfeatures
existentes para limpiar o corregir variables existentes o crear nuevas variables.
Se refiere al proceso de preparación de los datos para su ingreso a un modelo. En una primera parte puede incluir limpieza de datos corruptos, redundantes y/o irrelevantes. Por otra parte, también hace referencia a la transformación de datos para que puedan ser consumidos por un algoritmo.
Imputación: Se refiere al proceso de rellenar datos faltantes.
Dependiendo del nivel de valores faltantes, es necesario evaluar la eliminación de registros o atributos completos de ser necesario.
La mayoría de los modelos no tienen la capacidad de poder lidiar con variables categóricas por lo que deben ser transformadas en una representación numérica antes de ingresar a un modelo.
One Hot Encoder
suele dar mejores resultados en modelos lineales modelos que dependan de distancias.Ordinal Encoder
suele dar mejores resultados en modelos de árbol.El
escalamiento
se refiere al proceso de llevar distintas variables a una misma escala.
\[x_j=\frac{x_j-\mu_x}{\sigma_x}\]
\[x_j=\frac{x_j-min(x_j)}{max(x_j)-min(x_j)}\]
Este proceso fuerza a los datos a distribuirse entre 0 y 1.
Combinar 2 o más variables. Ej: Calcular el área de un sitio a partir del ancho y largo.
Aplicar una operación a una variable. Ej: El logaritmo de las ganancias.
Se refiere al proceso de eliminar variables que pueden ser irrelevantes o poco significativas.
Objetivo
Maldición de la Dimensionalidad
(Curse of Dimensionality).Son métricas que permiten cuantificar la relación existente entre dos o más objetos.
Sea \(p=35 °C\) y \(q = 40 °C\). Luego:
\[ S(p,q) = -5\] \[S(p,q) = \frac{1}{1 + 5} = 0.17\]
Sea
p
yq
vectores de dimensión \(m\) con sólo atributos categóricos. Para calcular la similaridad entre vectores se usa lo siguiente:
\[Sim(p,q) = \sum_{i=1}^m S(p_i,q_i)\]
\[S(p_i, q_i) = 1 - p_k(p_i)^2\]
Sea
p
yq
vectores de dimensión \(m\) con sólo atributos binarios. Para calcular la similaridad entre vectores se usa lo siguiente:
\[SMC = \frac{M_{00} + M_{11}}{M_{00} + M_{01} + M_{10} + M_{11}}\]
\[JC = \frac{M_{11}}{M_{01} + M_{10} + M_{11}}\]
name | \(a_1\) | \(a_2\) | \(a_3\) | \(a_4\) | \(a_5\) | \(a_6\) | \(a_7\) | \(a_8\) | \(a_9\) | \(a_{10}\) |
---|---|---|---|---|---|---|---|---|---|---|
p_i | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
q_i | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 |
\[SMC = \frac{M_{00} + M_{11}}{M_{00} + M_{01} + M_{10} + M_{11}} = \] \[JC = \frac{M_{11}}{M_{01} + M_{10} + M_{11}} = \]
\[\frac{7 + 0}{7 + 2 + 1 + 0} = 0.7\]
\[\frac{0}{2 + 1 + 0} = 0\]
Sean \(d_1\) y \(d_2\) dos vectores. La distancia coseno se calcula como:
\[cos(d_1, d_2) = \frac{d_1 \cdot d_2}{||d_1||||d_2||}\]
name | \(a_1\) | \(a_2\) | \(a_3\) | \(a_4\) | \(a_5\) | \(a_6\) | \(a_7\) | \(a_8\) | \(a_9\) | \(a_{10}\) |
---|---|---|---|---|---|---|---|---|---|---|
d_1 | 3 | 2 | 0 | 5 | 0 | 0 | 0 | 2 | 0 | 0 |
d_2 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 2 |
d_3 | 6 | 4 | 0 | 10 | 0 | 0 | 0 | 4 | 0 | 0 |
Una métrica o función de distancia es una función que define una distancia para cada par de elementos de un conjunto. Sean dos puntos
x
ey
, una métrica o función de distancia debe satisfacer las siguientes condiciones:
\[d(p,q) = \left(\sum_{k=1}^m |p_k - q_k|^r\right)^{1/r}\]
Resolvamos en Colab
Matriz de Distancias
a la Matriz que contiene la distancia \(d(p_i,p_j)\) en la coordenada \(i,j\).\[d(p,q) = \sqrt{(p-q)^T \Sigma^{-1}(p-q)}\]
donde \(\Sigma\) es la Matriz de Covarianza
de los datos de entrada.
\[cov(x,y) = \frac{1}{n-1}\sum_{i = 1}^n (x_i - \bar{x})(y_i - \bar{y})\]
\[\Sigma = \begin{bmatrix} cov(p,p) & cov(p,q) \\ cov(q,p) & cov(q,q) \end{bmatrix} \]
covarianza
existente entre los datos influye en la distancia
.La correlación mide la relación lineal entre 2 atributos.
Causalidad
no es igual a Correlación
. Ver video.Correlación
no se ve afectada por la escala de los datos.name | \(a_1\) | \(a_2\) | \(a_3\) | \(a_4\) | \(a_5\) | \(a_6\) | \(a_7\) | \(a_8\) | \(a_9\) | \(a_{10}\) |
---|---|---|---|---|---|---|---|---|---|---|
d_1 | 3 | 2 | 0 | 5 | 0 | 0 | 0 | 2 | 0 | 0 |
d_2 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 2 |
d_3 | 6 | 4 | 0 | 10 | 0 | 0 | 0 | 4 | 0 | 0 |
\[d_1 \cdot d_2 = 5\] \[d_1 \cdot d_3 = 84\]
\[||d_1|| = \sqrt{42} = 6.481\] \[||d_2|| = \sqrt{6} = 2.449\] \[||d_3|| = \sqrt{168} = 12.962\]
\[cos(d_1, d_2) = 0.3150\] \[cos(d_1, d_3) = 0.9999\]