31 votos

Predicción con características continuas y categóricas

Algunas técnicas de modelización predictiva están más diseñadas para manejar predictores continuos, mientras que otras son mejores para manejar variables categóricas o discretas. Por supuesto, existen técnicas para transformar un tipo en otro (discretización, variables ficticias, etc.). Sin embargo, ¿existen técnicas de modelización predictiva que estén diseñadas para manejar ambos tipos de entrada al mismo tiempo sin simplemente transformar el tipo de las características? En caso afirmativo, ¿estas técnicas de modelización tienden a funcionar mejor en los datos para los que se ajustan de forma más natural?

Lo más parecido que conozco sería que normalmente los árboles de decisión manejan bien los datos discretos y manejan los datos continuos sin requerir un al frente discretización. Sin embargo, esto no es exactamente lo que buscaba, ya que efectivamente las divisiones en características continuas son sólo una forma de discretización dinámica.

A modo de referencia, he aquí algunas preguntas relacionadas, no duplicadas:

8voto

Link Puntos 63

Hasta donde yo sé, y he investigado profundamente este tema en el pasado, no hay técnicas de modelado predictivo (además de árboles, XgBoost, etc.) que estén diseñadas para manejar ambos tipos de entrada al mismo tiempo sin simplemente transformar el tipo de las características.

Tenga en cuenta que algoritmos como Random Forest y XGBoost aceptan una entrada de características mixtas, pero aplican cierta lógica para manejarlas durante la división de un nodo. Asegúrese de que entiende la lógica "bajo el capó" y que está de acuerdo con lo que ocurre en la caja negra.

Todavía, modelos basados en la distancia/el núcleo (por ejemplo, K-NN, regresión NN, máquinas de vectores de apoyo) pueden utilizarse para manejar un espacio de características de tipo mixto definiendo una función de distancia "especial". De manera que, para cada característica, se aplica una métrica de distancia apropiada (por ejemplo, para una característica numérica calcularemos la distancia euclidiana de 2 números, mientras que para una característica categórica simplemente calcularemos la distancia de solapamiento de 2 valores de cadena). Así, la distancia/similitud entre el usuario $u_1$ y $u_2$ en la función $f_i$ de la siguiente manera: $d(u_1,u_2 )_{f_i}=(dis-categorical(u_1,u_2 )_{f_i} $ si la característica $f_i$ es categórica, $d(u_1,u_2 )_{f_i}=dis-numeric(u_1,u_2 )_{f_i} $ si la característica $f_i$ es numérico. y 1 si la característica $f_i$ no se define en $u_1$ o $u_2$ .

Alguna función de distancia conocida para características categóricas:

  • Distancia de Levenshtien (o cualquier forma de "distancia de edición")

  • Métrica de la subsecuencia común más larga

  • Distancia de Gower

  • Y más métricas ici

    • Boriah, S., Chandola y V., Kumar, V. (2008). Medidas de similitud para datos categóricos: Una evaluación comparativa. En: Proceedings of the 8th SIAM International Conference on Data Mining, SIAM, p. 243-254.

5voto

Jiesi Luo Puntos 21

Sé que ha pasado un tiempo desde que se publicó esta pregunta, pero si todavía está buscando este problema (u otros similares) es posible que desee considerar el uso de modelos aditivos generalizados (GAM). No soy un experto, pero estos modelos permiten combinar diferentes modelos para crear una única predicción. El proceso utilizado para encontrar los coeficientes de los modelos que pones los resuelve todos a la vez, así que puedes enviar a un modelo aditivo generalizado tu modelo favorito para los predictores categóricos y tu modelo favorito para los predictores continuos y obtener un único modelo que minimice el RSS o cualquier otro criterio de error que quieras utilizar.

De momento, el único paquete de software que conozco que tiene una implementación de GAM es el lenguaje R, pero estoy seguro de que hay otros.

4voto

unk2 Puntos 36

Mientras que la discretización transforma los datos continuos en datos discretos, no se puede decir que las variables ficticias transformen los datos categóricos en datos continuos. De hecho, dado que los algoritmos pueden ejecutarse en ordenadores, difícilmente puede haber un algoritmo clasificador que NO transforme los datos categóricos en variables ficticias.

En el mismo sentido, un clasificador transforma en última instancia sus predictores en una variable discreta que indica la pertenencia a una clase (incluso si emite una probabilidad de clase, en última instancia se elige un límite). De hecho, muchos clasificadores como la regresión logística, el bosque aleatorio, los árboles de decisión y la SVM funcionan bien con ambos tipos de datos.

Sospecho que sería difícil encontrar un algoritmo que funcione con datos continuos pero que no pueda manejar datos categóricos en absoluto. Por lo general, tiendo a encontrar más diferencia en el tipo de datos que tiene en el lado izquierdo de su modelo.

1voto

Earnest_learner Puntos 96

Se trata de una cuestión filosófica profunda que suele abordarse tanto desde el punto de vista estadístico como del aprendizaje automático. Algunos dicen que la categorización es mejor para los indicadores discretos a los categóricos, para que los paquetes puedan digerir fácilmente las entradas del modelo. Otros dicen que el binning puede causar pérdida de información, pero sin embargo las variables categóricas pueden/deben ser convertidas en variables indicadoras {1,0} dejando fuera la última clase para los residuos del modelo.

El libro - Regresión lineal aplicada (Kutner et al. ) menciona la lógica de introducir variables indicadoras en el modelo en los primeros capítulos. Es posible que también haya otros textos similares.

Mi opinión sobre esto quizá sea un poco exagerada: Si imaginamos las variables categóricas como bloques en un diseño experimental, la variable indicadora es una extensión natural al análisis de datos no basados en experimentos. Con respecto a los algoritmos de minería de datos (familias de árboles de decisión), es inevitable la categorización (ya sea manual o automatizada) que tiene que alimentar el modelo.

Por lo tanto, es posible que no exista un modelo especializado para variables numéricas y categóricas de la misma manera (sin binning-numérico o utilizando indicadores-categóricos).

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X