Ir al contenido principal

Resumen de metodologías de codificación

En este tutorial, verás un adelanto de técnicas de codificación junto con algunas referencias avanzadas que te ayudarán a trabajar con variables categóricas.
Actualizado 17 sept 2026  · 5 min leer

Explorar con IA

ChatGPTClaudePerplexity
pencils graphic

«En muchas tareas prácticas de ciencia de datos, el conjunto de datos contiene variables categóricas. Estas variables suelen almacenarse como valores de texto». (Practical Business Python) Dado que el aprendizaje automático se basa en ecuaciones matemáticas, dejar las variables categóricas tal cual puede generar problemas. Muchos algoritmos admiten valores categóricos sin más manipulación, pero incluso en esos casos sigue habiendo debate sobre si conviene codificarlas o no. Los algoritmos que no admiten valores categóricos requieren, en ese caso, aplicar metodologías de codificación. Veamos algunos métodos.

Metodologías de codificación

Codificación por etiquetas (label encoding)

En la codificación por etiquetas, asignamos a cada categoría un número o etiqueta. Las etiquetas elegidas para las categorías no guardan relación entre sí. Por ello, categorías que están vinculadas o son cercanas entre sí pierden esa información tras la codificación.

Codificación por frecuencia

Es una forma de usar la frecuencia de las categorías como etiquetas. En los casos en que la frecuencia guarda cierta relación con la variable objetivo, ayuda al modelo a entender y asignar pesos en proporción directa o inversa, según la naturaleza de los datos.

Codificación one-hot

En este método, asignamos a cada categoría un vector con 1 y 0 que indica la presencia o ausencia de la característica. El número de vectores depende de las categorías que queramos conservar. En características de alta cardinalidad, este método genera muchas columnas y ralentiza notablemente el aprendizaje. Suele haber debate entre one-hot encoding y dummy encoding y cuándo usar cada uno. Son muy parecidos, salvo que one-hot genera un número de columnas igual al de categorías, mientras que el dummy genera una menos. En última instancia, debe gestionarlo quien modela durante la validación.

Trampa de las variables ficticias (dummy variable trap):

Imagina que tienes dos categorías en una característica categórica. Tras aplicar one-hot encoding, habrá dos columnas que la representan, pero si te fijas, con un solo vector basta para representar ambos valores. Por ejemplo, una característica categórica con dos valores, «red» y «blue». Con one-hot se crearán dos vectores, uno para «red» y otro para «blue», pero la información puede aprenderse usando solo uno, y el otro será constante. Así que podemos eliminar un vector, lo que reduce los datos sobre los que entrenar los algoritmos. Esto ayuda al modelo a rendir mejor y facilita explicar su funcionamiento. En escenarios reales, a menudo debemos tratar muchas características categóricas, a veces con conocimiento previo de sus resultados. Las prácticas de codificación te permiten abordar la entrada de datos, pero también pueden convertir el proceso y el aprendizaje en una tarea muy pesada.

Codificación por objetivo, impacto o verosimilitud

La codificación por objetivo (target encoding) es similar a la codificación por etiquetas, salvo que aquí las etiquetas se correlacionan directamente con la variable objetivo. Por ejemplo, en la codificación por la media del objetivo, para cada categoría la etiqueta se decide con el valor medio de la variable objetivo en los datos de entrenamiento. Este método resalta la relación entre categorías similares, pero las relaciones quedan acotadas a las propias categorías y al objetivo. Sus ventajas son que no afecta al volumen de datos y facilita un aprendizaje más rápido; su desventaja es que resulta más difícil de validar. Es necesaria la regularización en la implementación de esta metodología. Consulta target encoder en python y en R.

Estadísticas de codificación

La variabilidad de la codificación describe la variación de la codificación dentro de una misma categoría. En one-hot encoding, la variabilidad depende del momento de implementación en el que se decide cuántas categorías incluir, es decir, aquellas con suficiente impacto en la variable objetivo. Otras metodologías de codificación también muestran una variabilidad significativa que se identifica en la fase de validación.

Para calcular la distinguibilidad de la codificación, contamos las etiquetas de las categorías y luego calculamos la desviación estándar de esas etiquetas. Esto muestra si las categorías codificadas están bien separadas o si se agrupan en una zona.

Ten en cuenta que, si eliges un estilo de codificación sencillo al crear un modelo, este tenderá a sesgarse. Para entenderlo mejor, visita este debate; además, para distintos modelos conviene ajustar la metodología de codificación: por ejemplo, en regresión puedes usar codificación por la media del objetivo, y en clasificación puedes optar por codificación por frecuencia relativa.

Para terminar, me gustaría compartir un transformador al estilo scikit-learn que ayuda a codificar variables categóricas con distintas técnicas.

category_encoders

Esta librería de scikit-learn ofrece las siguientes técnicas implementadas actualmente:

  • Ordinal
  • One-Hot
  • Binary
  • Helmert Contrast
  • Sum Contrast
  • Polynomial Contrast
  • Backward Difference Contrast
  • Hashing
  • BaseN
  • LeaveOneOut
  • Target Encoding

Admite dataframes de pandas como entrada y puede transformar datos. También es compatible con pipelines de sklearn; para más detalles, visita aquí.

Si quieres aprender más sobre scikit-learn, realiza el curso de DataCamp Supervised Learning with scikit-learn.

Temas
Aprendizaje automático

Aprende más sobre machine learning

Curso

Comprender el machine learning

2 h
308.1K
Introducción al machine learning, ¡y no hay que programar!
Ver detallesRight Arrow
Iniciar Curso
Ver másRight Arrow
Relacionado

blog

Clasificación en machine learning: Introducción

Aprende sobre la clasificación en machine learning viendo qué es, cómo se utiliza y algunos ejemplos de algoritmos de clasificación.
Zoumana Keita 's photo

Zoumana Keita

14 min

blog

8 modelos de machine learning explicados en 20 minutos

Descubre todo lo que necesitas saber sobre los tipos de modelos de machine learning, incluyendo para qué se utilizan y ejemplos de cómo ponerlos en práctica.
Natassha Selvaraj's photo

Natassha Selvaraj

15 min

Tutorial

Aprendizaje automático de datos categóricos con el tutorial de Python

Aprenda los trucos más comunes para manejar datos categóricos y preprocesarlos para construir modelos de aprendizaje automático.
Moez Ali's photo

Moez Ali

14 min

Tutorial

Autocodificadores variacionales: Cómo funcionan y por qué son importantes

Aprende los principios fundamentales, las aplicaciones y las ventajas prácticas de los autocodificadores variacionales y sigue una implementación paso a paso con PyTorch.
Kurtis Pykes 's photo

Kurtis Pykes

14 min

Tutorial

Introducción a Q-learning: tutorial para principiantes

Conoce el algoritmo de aprendizaje por refuerzo sin modelo más popular con un tutorial en Python.
Abid Ali Awan's photo

Abid Ali Awan

11 min

Tutorial

Introducción al aprendizaje automático estadístico

Descubra la potente fusión de estadística y aprendizaje automático. Explore cómo las técnicas estadísticas sustentan los modelos de aprendizaje automático, permitiendo la toma de decisiones basada en datos.
Joanne Xiong's photo

Joanne Xiong

11 min

Ver MásVer Más