Ultralytics YOLO27: Únete a la lista de espera.
Licencia YOLO
Volver al glosario de Ultralytics

Feature Engineering

La ingeniería de características transforma los datos sin procesar en entradas que un modelo puede aprender con facilidad, mediante conocimientos del dominio. Técnicas clave, riesgos de fuga de datos, usos y código.

La ingeniería de características consiste en crear, transformar y seleccionar las variables de entrada, o características, a partir de las cuales aprende un modelo de aprendizaje automático, utilizando el conocimiento del dominio y de los datos. Una marca de tiempo sin procesar se convierte en la hora del día y el día de la semana; una lista de transacciones con tarjeta se convierte en el gasto de un cliente durante los últimos 30 días, y la distancia y la duración de un viaje se convierten en su velocidad. Las características bien elegidas permiten que un modelo sencillo detecte patrones que, de otro modo, no encontraría. Son especialmente importantes para los datos tabulares y de series temporales, en los que un modelo solo puede utilizar las columnas que recibe. Los modelos de aprendizaje profundo aprenden sus propias características a partir de imágenes, audio y texto sin procesar; esto ha desplazado la ingeniería de características en esos campos hacia la preparación de datos y la creación de características a partir de las salidas del modelo.

Técnicas habituales#

  • Escalado y normalización: Estandarizar las características para que tengan media cero y varianza unitaria evita que las características con unidades grandes dominen los modelos basados en distancias y el entrenamiento basado en gradientes; además, una transformación logarítmica comprime valores sesgados, como los ingresos o los precios.
  • Codificación de variables categóricas: La codificación one-hot convierte una categoría, como un color, en columnas binarias; la codificación por objetivo sustituye cada categoría por la media del objetivo correspondiente, calculada en particiones separadas para que la codificación no revele la etiqueta de cada propia fila.
  • Proporciones e interacciones: La relación entre deuda e ingresos, el precio por metro cuadrado y el índice de masa corporal combinan dos valores sin procesar en la magnitud que realmente determina el resultado.
  • Características de fecha y hora: La hora, el día de la semana, el mes y los indicadores de festivos muestran patrones cíclicos; las codificaciones seno y coseno de la hora sitúan las 23:00 junto a las 00:00.
  • Retardos y ventanas móviles: Los valores anteriores, las medias móviles y los recuentos de ventanas recientes proporcionan al modelo el historial reciente de un sensor, una cuenta o un producto.
  • Agrupación en intervalos: Agrupar valores continuos en rangos, como franjas de edad, permite captar efectos escalonados y limita la influencia de los valores extremos.
  • Reducción de dimensionalidad con PCA: El análisis de componentes principales comprime muchas características correlacionadas en unas pocas que no están correlacionadas.
  • Selección de características: Los métodos de filtrado ordenan las características según su correlación o información mutua con el objetivo; los métodos envolventes prueban subconjuntos de características con un modelo, y los métodos integrados, como la regularización L1, descartan características durante el entrenamiento.

Una característica de razón muestra por qué funciona. Un árbol de decisión con profundidad limitada solo puede dividirse según una característica cada vez, por lo que aproxima mal la regla «velocidad media superior a 90 km/h» usando únicamente la distancia y la duración, y la aplica exactamente cuando se calcula la velocidad:

import numpy as np
from sklearn.model_selection import cross_val_score
from sklearn.tree import DecisionTreeClassifier

# 1,000 trips: raw distance (km) and duration (h); label = average speed above 90 km/h
rng = np.random.default_rng(0)
distance = rng.uniform(10, 300, 1000)
hours = rng.uniform(0.5, 4.0, 1000)
y = (distance / hours > 90).astype(int)

raw = np.column_stack([distance, hours])
engineered = (distance / hours).reshape(-1, 1)  # domain knowledge: speed = distance / time

tree = DecisionTreeClassifier(max_depth=2, random_state=0)
for name, X in [("Raw distance and duration", raw), ("Engineered speed", engineered)]:
    print(f"{name}: accuracy {cross_val_score(tree, X, y, cv=5).mean():.3f}")

Con el mismo árbol de profundidad 2, la precisión de la validación cruzada pasa de 0,861 con la distancia y la duración sin procesar a 1,000 con la característica de velocidad diseñada, porque el límite diagonal en el espacio de distancia y duración se convierte en un único umbral sobre la velocidad.

Validación de características sin fugas de datos#

Una característica solo es válida si se conoce su valor en el momento de hacer la predicción. Un modelo de abandono que usa el «número de llamadas al servicio de asistencia durante el mes posterior a la cancelación», o una codificación del objetivo calculada en todo el conjunto de datos, obtiene buenos resultados en las pruebas y falla en producción: es una forma de fuga de datos. Por tanto, cada transformación con parámetros aprendidos, como las medias del escalador o las codificaciones de categorías, se ajusta solo con los pliegues de entrenamiento, tal como hacen automáticamente las canalizaciones de scikit-learn, y cada característica nueva se conserva únicamente si mejora la puntuación de validación cruzada. Los sistemas de producción también deben calcular cada característica exactamente igual que durante el entrenamiento, algo que resuelven los almacenes de características al ofrecer las mismas definiciones de características a ambos.

Ingeniería de características en visión artificial#

La visión artificial clásica se basaba en características diseñadas manualmente, como mapas de bordes, descriptores de puntos clave SIFT e histogramas de gradientes orientados, que después clasificadores como las máquinas de vectores de soporte etiquetaban. Desde que AlexNet ganó el desafío ImageNet en 2012, las redes neuronales convolucionales aprenden sus propios mapas de características a partir de los píxeles, y el esfuerzo de ingeniería se desplazó hacia los datos de entrenamiento, mediante el aumento de datos, y hacia las salidas de los modelos de visión. El SpeedEstimator de Ultralytics crea una característica de velocidad a partir de la salida del seguimiento de objetos de YOLO26: cuando una trayectoria tiene cinco posiciones, convierte en metros el desplazamiento en píxeles entre la primera y la última mediante la escala meter_per_pixel y lo divide por el tiempo transcurrido para obtener la velocidad en km/h.

Aplicaciones#

  • Riesgo crediticio: Los prestamistas calculan la ratio deuda-ingresos, la utilización del crédito y los meses transcurridos desde el último impago a partir de los registros brutos de las cuentas; estas características predicen el impago mejor que los saldos sin procesar.
  • Mantenimiento predictivo: Las medias móviles, las tasas de cambio y la energía por bandas de frecuencia calculadas a partir de flujos de vibración y temperatura revelan el desgaste incipiente antes de que ninguna lectura bruta supere un límite de alarma.
  • Detección de fraudes: Las características de frecuencia, como el número de transacciones con tarjeta durante la última hora y la distancia entre una compra y la ubicación habitual del titular de la tarjeta, permiten distinguir el fraude del gasto normal.
  • Previsión de la demanda: Los modelos minoristas combinan retardos de ventas, medias móviles, cambios de precios, indicadores de promociones e indicadores de festivos para cada tienda y producto.
  • Extracción de características: Calcula características automáticamente mediante un algoritmo fijo o un modelo aprendido, como PCA o la red troncal de una red neuronal. A menudo, ambos términos se usan indistintamente, aunque la ingeniería de características abarca un proceso más amplio, guiado por el dominio.
  • Preprocesamiento de datos: Limpia y da formato a los datos corrigiendo errores, rellenando valores ausentes y convirtiendo tipos; es el paso previo al diseño de características.
  • Embeddings: Vectores densos que un modelo aprende durante el entrenamiento para representar palabras, imágenes o usuarios. En la mayoría de los sistemas de lenguaje y visión sustituyen a características creadas manualmente, como los recuentos de palabras.

Explora las soluciones

Visión artificial en el deporte

Visión artificial en el deporte

Descubre cómo Ultralytics YOLO impulsa la visión artificial en el deporte con el seguimiento de jugadores y balones, analíticas de rendimiento, información útil para entrenadores y rehabilitación de deportistas.
Más información
Visión artificial para imágenes aéreas

Visión artificial para imágenes aéreas

Convierte imágenes aéreas y de drones en información útil en tiempo real para la agricultura, la acuicultura, la conservación y el análisis geoespacial con Ultralytics YOLO.
Más información
Visión artificial en el sector aeroespacial

Visión artificial en el sector aeroespacial

Aplica la visión artificial en el sector aeroespacial con Ultralytics YOLO para inspeccionar aeronaves, detectar objetos extraños en pistas, gestionar operaciones en tierra y detectar defectos en materiales compuestos.
Más información
Visión artificial en seguridad

Visión artificial en seguridad

Protege todas tus instalaciones con los modelos Ultralytics YOLO. La IA visual permite supervisar perímetros, detectar amenazas, reconocer matrículas y mejorar la seguridad laboral.
Más información
Visión artificial en robótica

Visión artificial en robótica

Potencia máquinas más inteligentes con los modelos Ultralytics YOLO. La IA visual en robótica impulsa la navegación autónoma, la percepción, el seguimiento de objetos y el control en tiempo real.
Más información
Visión artificial en logística

Visión artificial en logística

Agiliza la logística con modelos Ultralytics YOLO. La IA visual permite inspeccionar paquetes, clasificarlos, realizar el seguimiento de vehículos y supervisar la seguridad del almacén en tiempo real.
Más información
Visión artificial en el comercio minorista

Visión artificial en el comercio minorista

Reinventa el comercio minorista con modelos Ultralytics YOLO. La IA visual permite realizar el seguimiento del inventario, supervisar estanterías, gestionar colas y obtener información más útil sobre los clientes.
Más información
Visión artificial en el sector sanitario

Visión artificial en el sector sanitario

Desarrolla soluciones sanitarias con modelos Ultralytics YOLO. La IA visual en el sector sanitario permite acelerar el diagnóstico por imagen, mejorar los diagnósticos y supervisar a los pacientes.
Más información
Visión artificial en la fabricación

Visión artificial en la fabricación

Optimiza la fabricación con modelos Ultralytics YOLO. La IA visual mejora el control de calidad, la detección de defectos, el cumplimiento de las normas de uso de EPI y la automatización de las líneas de montaje.
Más información
Visión artificial en la automoción

Visión artificial en la automoción

Aplica la visión artificial al sector de la automoción con modelos Ultralytics YOLO. La IA visual mejora la seguridad vial, la asistencia al conductor y la automatización de vehículos para lograr carreteras más inteligentes.
Más información
Visión artificial en la agricultura

Visión artificial en la agricultura

Incorpora la IA de visión a la agricultura inteligente con modelos Ultralytics YOLO. Impulsa la monitorización de cultivos, el seguimiento del ganado y la agricultura de precisión para obtener cosechas más abundantes e inteligentes.
Más información

¡Construyamos juntos el futuro de la IA!

Inicia tu recorrido hacia el futuro del aprendizaje automático