Algoritmos de aprendizaje automático para manejar datos faltantes

25

Estoy tratando de desarrollar un modelo predictivo utilizando datos clínicos de alta dimensión, incluidos los valores de laboratorio. El espacio de datos es escaso con 5k muestras y 200 variables. La idea es clasificar las variables usando un método de selección de características (IG, RF, etc.) y usar características de alto rango para desarrollar un modelo predictivo.

Si bien la selección de funciones va bien con un enfoque Naïve Bayes, ahora estoy teniendo problemas para implementar un modelo predictivo debido a la falta de datos (NA) en mi espacio variable. ¿Existe algún algoritmo de aprendizaje automático que pueda manejar cuidadosamente las muestras con datos faltantes?

Khader Shameer
fuente
1
La existencia de respuestas votadas implica para mí que esta pregunta no es demasiado amplia para responder. Estoy votando para dejarlo abierto.
gung - Restablece a Monica

Respuestas:

15

Depende del modelo que uses. Si está utilizando algún modelo generativo, entonces hay una forma de principios para tratar con los valores faltantes (). Por ejemplo, en modelos como Naive Bayes o Gaussian Processes, integraría las variables faltantes y elegiría la mejor opción con las variables restantes.

Para los modelos discriminativos es más elaborado, ya que eso no es posible. Hay una serie de enfoques. Gharamani y Jordan describen un enfoque basado en principios, donde los valores perdidos se tratan como variables ocultas, y se usa una variante del algoritmo EM para estimarlos. De manera similar, Smola et al. describe una variante del algoritmo SVM que aborda explícitamente el problema.

Tenga en cuenta que a menudo se recomienda sustituir los valores faltantes por el valor medio de la variable. Esto es problemático, como se describe en el primer artículo. A veces, me he encontrado con documentos que hacen regresión sobre las variables para estimar los valores faltantes, pero no puedo decir si eso se aplica a su caso.

jpmuc
fuente
2
A menudo se recomienda sustituir los valores faltantes por el valor medio de la variable . ¿Puedes señalar la fuente?
Sergey Bushmanov
1
@juampa ¿Por qué afirma que no es posible integrar las variables que faltan en modelos discriminativos? Hacemos esto para la regresión logística todo el tiempo. De hecho, se puede demostrar que es igual a la imputación múltiple.
AdamO
1
@SergeyBushmanov Estoy contigo en tu confusión aquí. A menudo no se recomienda usar una imputación media (única) porque conduce a sesgos en algunos casos y métricas de validación anticonservadora en otros casos.
AdamO
2

Pruebe la imputación con los vecinos más cercanos para deshacerse de los datos faltantes.

Además, el paquete Caret tiene interfaces para una amplia variedad de algoritmos y todos vienen con métodos de predicción en R que se pueden usar para predecir datos nuevos. Las métricas de rendimiento también se pueden estimar utilizando la validación cruzada k-fold utilizando el mismo paquete.

Ankur Chakravarthy
fuente
2

También hay algoritmos que pueden usar el valor faltante como un valor único y diferente al construir el modelo predictivo, como los árboles de clasificación y regresión. como xgboost

Ajay
fuente