Recodificación de variables categóricas de muchos niveles: ¡ayuda!

Una vez escribí al respecto. Y cuanto más lo repienso y lo reeleo, menos clara tengo mi interpretación. De hecho, estoy planteándome retractar esa entrada.

Y reconozco que llevo tiempo buscando en ratos libres algún artículo serio (no extraído del recetario de algún script kiddie de Kaggle) que justifique el uso del procedimiento. Es decir, que lo eleve de técnica a categoría. Sin éxito.

He hecho probaturas y experimentos mentales en casos extremos (p.e., cuando todos los niveles de la variable categórica son distintos, cuando son iguales, etc.) con los decepcionantes resultados que cabe esperar. Lo cual contradice las presuntas virtudes casi taumatúrgicas del procedimiento.

Por eso, y dado que esto que escribo tiene cierta llegada en el público que interesa, apelo al conocimiento de las selectas masas: ¿una referencia?

4 comentarios sobre “Recodificación de variables categóricas de muchos niveles: ¡ayuda!

  1. Jesús Para 8 enero, 2018 14:16

    Discretization: An Enabling Technique puede ser tu amiga

    Liu, Huan, et al. “Discretization: An enabling technique.” Data mining and knowledge discovery 6.4 (2002): 393-423.

  2. Daniel2018 8 enero, 2018 16:42

    A primera vista se me ocurre el siguiente algorithmo: Dado un tipo de modelo propuesto, primero ajustar el modelo sin utilizar la variable código postal, obtenemos un modelo M_0 y sus parámetros concretos asociados p(i,0), segundo para cada valor concreto del código postal cp_k ajustar el modelo M_k a los datos correspondientes a dicho código postal. Entonces reemplazar la variable código postal por la diferencia de importancias entre la de M_o y la de M_i. Creo que realmente lo que necesita un modelo para funcionar es cómo le afecta el conocer el código postal y dicha información se la estamos suministranddo en una variable de entrada, digamos que un modelo capaz de mejorar con dicho conocimiento tendría algún tipo de autoconciencia, en el sentido de que es capaz de utilizar los errores como realimentación, esto sugiere que el algoritmo anterior se podría aplicar de manera iterativa agregando como información o nuevo vector de features la diferencia entre el comportamiento sin y con nueva información.

  3. Gerardo 9 enero, 2018 23:02

    Carlos / Todos,

    No me voy a centrar tanto en el problema en general, pero sí en una entrada en particular de la nota anterior: “que se me ofenda Jorge, en aquel preciso momento me pareció una chapuza peligrosa que coqueteaba con uno de los grandes nononós del oficio: jugar con con la variable objetivo antes del ajuste. ”

    Yo no soy tan técnico aunque me considero una persona práctica y de este caso en particular, jugar con la variable objetivo antes del ajuste es muy utilizado en modelos de regresión logística cuando se calibra mediante la transformación WoE (Weight of Evidence) de los predictores.

    Al final, recordemos que “el ajuste” se trata, al final, de utilizar esta variable objetivo (junto con el resto) en un problema de optimización (salvo los casos muy específicos con solución analítica, si quieres, como MCO y Regresión Ridge que yo conozca, que de todas formas utilizan el vector y).

    Saludos!

Comenta

Your email address will not be published.

Puedes usar estas etiquetas y atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">