imputación
Imputación en Cran
La imputación de datos faltante (también conocida como finalización de matriz) es una ciencia extremadamente difícil que trata de completar los valores faltantes de un conjunto de datos con la mejor suposición. Recientemente, fue popularizado por el Netflix Challenge, donde una matriz de usuarios de Netflix y sus calificaciones de películas se presentaron a la comunidad de ciencias de datos para ver si se podrían desarrollar algoritmos para predecir cómo un usuario calificaría una determinada película que el usuario aún no ha visto.
Referencias:
- Métodos de estimación de valor faltantes para microarrays de ADN. Troyanskaya, et al.
- Un algoritmo de umbral de valor singular para la finalización de la matriz. Cai, Codas, Shen.
## Algoritmos de imputación presentados
- Imputación media
- K-Nearsest Vecinos
- Imputación de SVD
- Imputación de SVT
- Imputación de árboles impulsados
- Mínimos cuadrados pesados localmente
##Reflejos
- MeanDimpute es una buena manera de comenzar cualquier problema de datos faltante. Es la técnica de imputación más rápida y es razonablemente bien
- A veces, queremos identificar valores faltantes e imputarlos ajustando una línea a través de sus vecinos. Esto se puede hacer tomando un conjunto de puntos {y_t, x_t} y regresando y_t en el índice t. Además, podemos usar una línea de regresión de mínimos cuadrados ponderadas localmente para Taylor los pesos de los puntos de datos que se observan cerca de los faltantes. Esto se hace en LMIMPUTE
- GBMIMPUTE es una técnica para imputar datos faltantes cuando hay datos categóricos y numéricos disponibles. Utiliza árboles de decisión impulsados, que requieren muchos datos para funcionar bien. Tiene la ventaja de los datos de partición y luego ajuste diferentes medios para las particiones
- Tsimpute es una técnica para imputar datos de series de tiempo. Hay tres componentes significativos para cualquier problema de series de tiempo: tiempo, dimensiones y métricas. Las dimensiones son variables categóricas que describen los puntos de datos, y las métricas son los datos reales de la serie temporal. Tsimpute proyecta la variable de tiempo utilizando Timeproyección, y luego imputa las métricas usando árboles impulsados nuevamente. Las proyecciones de tiempo ayudan a segmentar aún más los puntos de datos, por ejemplo, identificar segmentos de día vs nocturno, segmentos de fin de semana vs de fin de semana, etc.
- KNN y SVD imputan son métodos de imputación clásicos descritos en Troyanskaya. El SVD encuentra una aproximación de bajo rango K a los datos, que pueden ser adecuados para datos ruidosos. KNN solo es bueno cuando el número de características es pequeña
- SVT es un algoritmo de imputación recientemente popularizado que funciona muy bien con los datos numéricos. Sin embargo, es el algoritmo más lento presentado aquí, que requiere el cálculo de muchos SVD. SVTApproximpute se puede usar como una estimación, simplemente calculando el SVD una vez, umbralizando los valores singulares en Lambda, luego multiplicando la descomposición nuevamente para obtener la imputación
## Diseño de algoritmo
Cada función en este paquete incluye el algoritmo de imputación, así como un algoritmo de validación cruzada. El algoritmo CV elimina artificialmente 1/3 de los datos en un conjunto de datos y ejecuta la función de imputación. Usando los datos completos, el RMSE se calcula en la parte de los datos que se eliminó artificialmente. Los diferentes algoritmos de imputación funcionarán de manera diferente en diferentes conjuntos de datos, por lo que es importante tener estas funciones para comparar.