Seleccionar una herramienta visual de preparación de datos.
→Centrada en ML, se integra con SageMaker Studio + flujo → Tarea de procesamiento → Pipeline → Exportación de Notebook → SageMaker Data Wrangler. Limpieza de datos genérica con recetas reutilizables, perfilado, sin dependencia de SageMaker → AWS Glue DataBrew. 50 TB+ Spark con código personalizado → Amazon EMR.
Por qué: Data Wrangler es la opción nativa de SageMaker (más de 300 transformaciones, extracción de fecha y hora, exportaciones a Pipeline/Processing). DataBrew se basa en recetas y es agnóstico a la fuente. EMR gestiona la escala y cualquier Spark.
Referencia↗
Catalogar datos a través de S3, RDS, DynamoDB para que los analistas y SageMaker puedan descubrir conjuntos de datos.
→Los AWS Glue Crawlers pueblan el AWS Glue Data Catalog con esquemas + metadatos. Athena, Redshift Spectrum y SageMaker lo consumen.
Referencia↗
Necesidad de control de acceso a nivel de columna y fila en el data lake con registro de auditoría.
→AWS Lake Formation. IAM y las políticas de bucket de S3 no proporcionan granularidad a nivel de columna en datos estructurados.
Por qué: Lake Formation centraliza la gobernanza para el Glue Data Catalog y se integra con CloudTrail para la auditoría.
Referencia↗
Ejecutar SQL ad-hoc en datos de S3 sin aprovisionar nada.
→Amazon Athena. Serverless, pago por TB escaneado. Particione los datos y use Parquet para reducir costos y tiempo.
Referencia↗
50 TB de ingeniería de características con código PySpark existente, debe finalizar en 4 horas.
→Amazon EMR con Spark. Tamaño de clúster ajustable, soporte para Spot, ejecuta el código existente sin cambios.
Por qué: Glue ETL también ejecuta Spark, pero EMR ofrece más control sobre la forma del clúster; SageMaker Processing es para trabajos de contenedor único a menor escala.
Referencia↗
Ejecutar un script personalizado de preprocesamiento scikit-learn / pandas antes del entrenamiento. Computación efímera, sin costo por inactividad.
→Tarea de SageMaker Processing con el contenedor SKLearn (o PySpark). Aprovisiona, ejecuta, termina.
Por qué: Mejor que ejecutar en un notebook (permanece activo, cuesta dinero) o Lambda (límite de 15 minutos, límites de memoria).
Referencia↗
Etiquetar 100.000 imágenes de manera rentable: se desea etiquetado humano + automatizado.
→Amazon SageMaker Ground Truth con etiquetado de datos automatizado habilitado. Después de un subconjunto inicial etiquetado por humanos, Ground Truth entrena un modelo y auto-etiqueta las muestras de alta confianza.
Por qué: El aprendizaje activo generalmente reduce el costo de etiquetado hasta en un 70%. A2I es para la revisión humana de predicciones de modelos, no para el etiquetado masivo.
Referencia↗
Múltiples anotadores discrepan; se necesita un revisor sénior para verificar una muestra de etiquetas.
→Flujo de trabajo de verificación de etiquetas (auditoría) de Ground Truth. Un subconjunto de etiquetas se enruta a una fuerza de trabajo de revisión que aprueba, rechaza o ajusta. Combinar con la consolidación de anotaciones para la votación por mayoría de varios trabajadores.
Referencia↗
Las mismas características ingenierizadas necesarias en el entrenamiento (batch) y la inferencia (menos de 10 ms).
→Amazon SageMaker Feature Store con almacenes online + offline habilitados en el grupo de características. El almacén online respalda GetRecord en tiempo real; el almacén offline (Parquet en S3) respalda el entrenamiento.
Por qué: Elimina la asimetría entre entrenamiento y servicio sin una sincronización personalizada DynamoDB ↔ S3.
Referencia↗
Definir un grupo de características — qué es obligatorio.
→Nombre del identificador de registro (clave única por registro) y nombre de la característica de tiempo del evento (marca de tiempo para consultas de punto en el tiempo).
Referencia↗
Unir dos grupos de características para el entrenamiento sin filtrar valores futuros de características.
→Unión de punto en el tiempo contra el almacén offline usando la columna de tiempo del evento. Cada fila de entrenamiento ve solo los valores de características que existían en su marca de tiempo de evento.
Por qué: Una JOIN simple sobre los valores más recientes provoca fuga de datos al exponer al modelo la deriva de características posterior al evento.
Referencia↗
Elegir un modo de entrada de datos de entrenamiento de SageMaker para un conjunto de datos de 500 GB.
→Modo Archivo → se descarga todo el conjunto de datos primero (inicio lento, costo de EBS). Modo Pipe → transmite desde S3, bajo inicio, bajo almacenamiento. Modo FastFile → streaming perezoso a nivel de archivo. Usar Pipe (o FastFile) para conjuntos de datos grandes para evitar la descarga.
Referencia↗
Millones de archivos pequeños (cada uno ~50 KB) — el rendimiento del modo Pipe es deficiente.
→Agrupar en Amazon RecordIO (protobuf) y transmitir mediante el modo Pipe. Los registros secuenciales eliminan la sobrecarga de S3 GET por archivo.
Referencia↗
Seleccionar un formato de almacenamiento y diseño para un data lake de ML en S3 con lecturas frecuentes de subconjuntos de columnas + filtros de partición.
→Parquet (columnar, comprimido) particionado por la columna más filtrada (por ejemplo, fecha o región). Impulsa la poda de columnas + poda de particiones en Athena y SageMaker.
Referencia↗
Glue ETL reprocesa archivos ya manejados en cada ejecución.
→Habilitar marcadores de trabajos de Glue. Usar la opción PAUSE para que una ejecución fallida no avance el marcador; reiniciar solo cuando sea necesario.
Referencia↗
Validar esquema, tipos, rangos de valores y restricciones de nulidad dentro del pipeline Glue ETL.
→AWS Glue Data Quality con reglas DQDL. Detiene el pipeline cuando fallan las comprobaciones.
Referencia↗
Codificar características categóricas. Algunas están ordenadas (Básico/Estándar/Premium), otras no (estados de EE. UU.).
→Ordenadas → codificación ordinal (conserva el rango). No ordenadas → codificación one-hot (evita la ordinalidad falsa). Evitar la codificación de etiquetas en características no ordenadas. La codificación de destino requiere una CV cuidadosa para evitar fugas.
Una columna numérica tiene valores faltantes que se correlacionan con otra característica (por ejemplo, ingresos faltantes dependen del tipo de empleo).
→Imputación por mediana basada en grupos (mediana por tipo de empleo). Preserva la relación; la media es sensible a valores atípicos; eliminar pierde datos; cero agrega sesgo.
Clasificación binaria con 0.3% de clase positiva.
→Sobremuestreo SMOTE solo en el fold de entrenamiento (después de la división). Combinar con evaluación PR-curve / F1, no con precisión.
Por qué: Aplicar sobremuestreo DESPUÉS de la división para evitar fugas. La precisión es engañosa en datos desequilibrados.
Una característica numérica sesgada a la derecha (por ejemplo, ingresos) perjudica el rendimiento del modelo lineal.
→Transformación logarítmica. Comprime la cola derecha y produce una distribución más simétrica. La estandarización/min-max cambia la escala, no la forma.
50 características altamente correlacionadas; se desea menor dimensionalidad preservando la varianza.
→PCA. Transforma características correlacionadas en componentes principales no correlacionados clasificados por varianza.
Elegir una división de entrenamiento/validación/prueba.
→Clasificación desequilibrada → división estratificada (preserva la proporción de clases). Series de tiempo → división cronológica (entrenar en período temprano, probar en el más reciente); nunca mezclar aleatoriamente. Tabular IID → aleatorio.