Que un modelo alcance alta precisión en un conjunto de test no es suficiente para considerarlo válido en un entorno real. La calidad técnica —medida como accuracy— dice poco sobre si los datos son representativos, si el pipeline introduce sesgos, o si las predicciones se pueden explicar a las personas afectadas por ellas. Esta sección desarrolla la reflexión ética incluida en la Sección 9 de la app Streamlit del módulo, adaptada para un análisis más profundo que acompañe la entrega técnica.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/HelenDiMo/pildora-bootcamp-preprocesamiento/llms.txt
Use this file to discover all available pages before exploring further.
Contexto y limitaciones del dataset
El dataset Palmer Penguins fue recopilado por la Dra. Kristen Gorman en la Estación Palmer (Antártida). Incluye 344 observaciones de tres especies de pingüinos distribuidas en tres islas concretas: Torgersen, Biscoe y Dream. Su origen controlado y su pequeño tamaño le confieren características importantes que deben tenerse en cuenta antes de cualquier uso fuera del aula:- Una única región geográfica: todos los datos proceden del mismo archipiélago antártico. No existe variabilidad climática, ecológica ni de hábitat entre muestras.
- Pocas especies y pocas muestras: con solo tres especies y 344 filas, cualquier patrón aprendido puede ser artefacto del conjunto concreto, no una ley biológica generalizable.
- No generalizable: los modelos entrenados con Palmer Penguins no deben aplicarse a poblaciones de pingüinos de otras regiones, ni como base de un clasificador de especies en producción.
Riesgos algorítmicos
Tanto Random Forest como XGBoost son algoritmos potentes, pero su potencia trae consigo riesgos que conviene reconocer explícitamente.Sobreajuste en datasets pequeños
Sobreajuste en datasets pequeños
Ambos modelos, RF y XGB, pueden alcanzar 100% de accuracy en el conjunto de test de Palmer Penguins. Este resultado no refleja una capacidad de generalización extraordinaria: refleja que el dataset tiene fronteras de clase muy bien definidas y muy pocas muestras. Un modelo puede memorizar el conjunto de entrenamiento sin aprender nada útil sobre la tarea real.Para distinguir generalización real de artefacto del split, valida siempre con cross-validation antes de confiar en los resultados:Si la media de CV es consistentemente alta y la desviación estándar es baja, el resultado es robusto. Si varía mucho entre folds, hay sobreajuste.
Caja negra
Caja negra
Ni Random Forest ni XGBoost son modelos intrínsecamente interpretables. Dado un ejemplo concreto —un pingüino con unas medidas específicas— es difícil explicar por qué el modelo predice la especie que predice. En contextos pedagógicos esto es tolerable; en aplicaciones reales que afectan a personas, la opacidad del modelo puede ser un problema legal y ético.El primer paso hacia la explicabilidad es revisar las importancias de variables, que ambos modelos exponen (ver sección Explicabilidad más abajo). Para análisis más rigurosos, se recomienda integrar SHAP.
Validación insuficiente
Validación insuficiente
Un único split train/test con La función
random_state=42 puede dar resultados que dependen de cómo se dividió el conjunto por casualidad. Antes de confiar en cualquier métrica, valida siempre con cross-validation:cross_val_score divide los datos en 5 particiones, entrena en 4 y evalúa en 1, rotando hasta cubrir todo el conjunto. El resultado es mucho más fiable que un único split.Riesgos al aplicar el pipeline a datos sensibles
El pipeline de este módulo es inocuo porque trabaja con medidas de pingüinos. Sin embargo, el mismo flujo técnico —outlier treatment, imputation, encoding, train/test split, entrenamiento de ensemble— aplicado a datos que afectan a personas puede causar daño real. Es importante reconocer dónde están los puntos de fallo. Tratamiento de outliers y amplificación de sesgos Técnicas como el capping (recortar valores extremos al percentil 5–95) asumen que los valores fuera del rango central son errores de medición. En datos demográficos o médicos, esos “outliers” pueden ser características legítimas de grupos minoritarios. Eliminarlos o transformarlos sistemáticamente amplifica los sesgos existentes: el modelo aprende mejor el comportamiento del grupo mayoritario y clasifica mal a los demás. Accuracy insuficiente como métrica única En datasets desbalanceados —o en decisiones de alto impacto—, la accuracy global puede ser engañosa. Un modelo que predice siempre la clase mayoritaria puede alcanzar 90% de accuracy si esa clase representa el 90% de los datos, sin haber aprendido nada útil. Siempre inspecciona precision, recall y F1 por clase medianteclassification_report.
Impacto real en dominios sensibles
El mismo pipeline aplicado a datos reales puede tener consecuencias directas en ámbitos como:
- Salud: diagnóstico erróneo por sesgos en los datos de entrenamiento.
- Concesión de crédito: denegación injusta basada en patrones correlacionados con variables protegidas.
- Selección de personal: filtrado automatizado que perpetúa discriminaciones históricas.
- Evaluación de riesgo: perfiles de riesgo inflados o deflados para grupos específicos.
Checklist de responsabilidad
Antes de poner cualquier modelo en producción —incluso un modelo entrenado con un dataset “seguro”— verifica los siguientes puntos:- ¿Los datos representan la población real a la que se aplicará el modelo?
- ¿Se ha validado con cross-validation y no solo con un único split?
- ¿Se han inspeccionado las métricas por clase (precision, recall, F1), no solo la accuracy global?
- ¿El preprocessor se ajustó SOLO sobre el train set y nunca sobre el conjunto completo?
- ¿Los outliers tratados representan errores de medición o valores legítimos de grupos minoritarios?
- ¿Hay sesgos en las variables categóricas (
island,sex) que puedan perpetuarse al codificarlas? - ¿Existe un mecanismo de explicabilidad (SHAP, feature importances) para justificar las predicciones?
Explicabilidad
Aunque RF y XGBoost son cajas negras, ambos exponen importancias de variables como primer nivel de explicabilidad. Estas importancias indican qué variables contribuyeron más al proceso de decisión del modelo, aunque no explican predicciones individuales..named_steps, que devuelve cada componente por su nombre ('preprocessor', 'model'). El transformador categórico del ColumnTransformer es un sub-pipeline, por lo que se navega con .transformers_[1][1].named_steps['onehot'] para llegar al OneHotEncoder y obtener los nombres de las columnas codificadas.
Para explicabilidad a nivel de predicción individual, integra SHAP sobre el modelo extraído del pipeline: shap.TreeExplainer(rf_model).
La reflexión ética incluida en la Sección 9 de la app Streamlit no es un Análisis de Impacto Algorítmico formal. Es un ejercicio pedagógico diseñado para concienciar sobre las responsabilidades que conlleva el despliegue de modelos de ML. Un AIA real requiere metodologías específicas, participación de personas afectadas y revisión por equipos multidisciplinares.