/ Proyectos / Agricultura / Segmentación de operarios de raleo

Segmentación de operarios de raleo y otros usos de aprendizaje no supervisado: clustering, grafos y GANs

Un proyecto en dos partes sobre la misma operación agroindustrial: comparar 4 algoritmos de clustering para segmentar operarios de raleo de uva, y usar segmentación por grafos y GANs para preparar datos visuales de inspección de calidad.

16 min de lectura Python · scikit-learn · scikit-image · TensorFlow Datos: operarios de raleo de uva, campañas 19-21 (Pedregal, Piura) Aplicable a tesis y proyectos aplicados de agritech
Operarios de raleo de uva en campo, analizados con clustering, y racimos de uva segmentados con grafos y GANs para control de calidad

Este proyecto nace de una necesidad real de campo: Pedregal, empresa agroindustrial dedicada al cultivo de uva, necesitaba entender qué perfiles de operarios de raleo eran más productivos para diseñar mejores acciones de retención y selección. La respuesta no dependía de un solo algoritmo de clustering, sino de comparar varios y justificar cuál conviene con el contexto de negocio, no solo con la métrica más alta.

El proyecto tiene dos partes (folds) que comparten el mismo espíritu: no asumir un único método de aprendizaje no supervisado. La primera parte compara 4 algoritmos de clustering, K-Means, GMM, K-Medoids y Fuzzy C-Means, para segmentar a los operarios de raleo por productividad y perfil demográfico. La segunda parte explora otros dos usos de aprendizaje no supervisado que van más allá del clustering tabular, segmentación de imágenes con grafos y generación de datos sintéticos con GANs, aplicados aquí a un problema visual del mismo dominio: aislar el racimo de uva del fondo y compensar la escasez de fotos de racimos defectuosos.


Mapa del casoContenido


Estructura de alto nivelDiagrama de la solución

Fold 1 — Segmentación de operarios Fold 2 — Grafos + GANs Variables Productividad, edad, antigüedad, deuda... k óptimo Método del codo + Silhouette score 4 algoritmos K-Means · GMM K-Medoids · FCM Evaluación SS-between + error LDA Perfil de 4 segmentos de operarios Imágenes Fotos de racimos en campo Grafos SLIC + corte normalizado (RAG) GrabCut Segmentación semi- automática (fondo) GAN Datos sintéticos de racimos defectuosos Dataset balanceado para control de calidad Lectura conjunta Comparar, no asumir un solo método Decisiones de campaña + inspección visual de racimos Aplicación real

Pasa el cursor sobre cada bloque para ver qué hace ese paso.

Las dos ramas se desarrollaron y evaluaron por separado, pero convergen en la misma lectura: en aprendizaje no supervisado no existe una única respuesta correcta, existe la mejor respuesta justificada para el contexto que tienes.


De la decisión al códigoConstrucción de la solución

Condiciones del proyecto

RestricciónDato
Universo de datosOperarios de raleo de uva de Pedregal, campañas 19, 20 y 21, sedes Ica y Piura
Variables disponiblesProductividad, importe, antigüedad, edad, número de hijos, indicador de pobreza, distancia al fundo, y datos de bancarización (RCC)
ConfidencialidadDatos de RR.HH. y financieros del cliente, no publicables tal cual — el repositorio usa datos de ejemplo
Datos visuales (fold 2)Fotos de racimos sanos abundantes; fotos de racimos con defectos escasas frente a las sanas
OpciónPor qué se descartó
Usar un solo algoritmo de clustering (K-Means) sin compararNo hay evidencia de que sea el mejor ajuste para variables mixtas de desempeño humano sin comparar contra otros enfoques
DBSCAN como método principal de segmentación de operariosNo encontró separación de clusters — las variables de desempeño forman un continuo sin densidad diferenciada
Esperar a acumular más fotos reales de racimos defectuososTomaría campañas completas; el desbalance frenaría el entrenamiento del clasificador de calidad mientras tanto
Comparar 4 algoritmos con doble métrica (K-Means, GMM, K-Medoids, FCM) + segmentación por grafos y GAN para el fold visualDa evidencia comparativa real antes de elegir, y resuelve la escasez de datos visuales sin esperar más campañas

Pasos

Fold 1 — Segmentación de operarios

1

Selección de variables y número óptimo de clusters

Agente: propuso fijar k=3 por convención, sin justificación estadística.
Criterio aplicado: usar el método del codo combinado con el score de Silhouette (KElbowVisualizer) sobre las 8 variables seleccionadas, para no imponer un número de segmentos de antemano.

2

Comparación de 4 algoritmos de clustering

Agente: sugirió quedarse solo con K-Means por ser el más común.
Criterio aplicado: entrenar también GMM, K-Medoids y Fuzzy C-Means sobre las mismas variables, y probar DBSCAN como referencia — DBSCAN no encontró clusters, lo que en sí mismo es información útil sobre la forma de los datos.

3

Evaluación con doble métrica

Agente: propuso reportar solo el error de clasificación del LDA.
Criterio aplicado: combinar el error de clasificación (consistencia interna del cluster) con el SS-between-cluster (separación entre grupos), porque un solo número no captura si los clusters son útiles para negocio.

4

Perfilamiento de los segmentos con variables de negocio

Agente: generó únicamente el promedio de productividad por cluster.
Criterio aplicado: cruzar cada cluster con edad, estado civil, hijos, distancia al fundo, antigüedad y variables financieras (RCC) para que cada segmento tuviera una historia accionable, no solo un número.

Fold 2 — Grafos y GANs

1

Segmentación de racimos con SLIC + corte normalizado

Agente: propuso segmentar directamente por umbral de color.
Criterio aplicado: generar primero superpíxeles con SLIC y construir un grafo RAG (Region Adjacency Graph) sobre ellos, porque el umbral simple falla con variaciones de luz e iluminación de campo.

2

Aislamiento del racimo con GrabCut

Agente: sugirió entrenar un modelo de segmentación supervisado desde cero.
Criterio aplicado: usar GrabCut con una inicialización mínima (un rectángulo) para obtener una máscara rápida sin necesitar miles de imágenes etiquetadas.

3

Generación de datos sintéticos con GAN

Agente: propuso resolver el desbalance solo con data augmentation clásico (rotaciones, flips).
Criterio aplicado: entrenar una GAN sobre la clase minoritaria de racimos defectuosos, porque el augmentation clásico no genera variabilidad nueva, solo transforma lo que ya existe.

Proceso de iteración

Ajuste documentado, no forzado

La primera corrida de DBSCAN sobre las variables de operarios devolvió casi todos los puntos como ruido (-1). En vez de forzar un epsilon distinto hasta que "funcionara", se documentó el resultado como evidencia de que las variables de desempeño humano no tienen la separación por densidad que DBSCAN necesita, y se avanzó con los 4 algoritmos basados en centroides o probabilidad. En el fold visual, las primeras máscaras de GrabCut con la inicialización por defecto dejaban cabello y ramas sin segmentar; se corrigió con una segunda pasada de máscara manual sobre las zonas mal etiquetadas, mejorando notablemente el resultado.


CierreLecciones importantes

La lección que atraviesa las dos partes de este proyecto es la misma: en aprendizaje no supervisado no hay una etiqueta correcta contra la cual validar, así que la única forma de confiar en un resultado es compararlo contra alternativas y contra el contexto real del negocio. Elegir K-Means porque "es el más conocido" no es una decisión, es una omisión. Comparar 4 algoritmos con dos métricas distintas, y documentar incluso el que falló (DBSCAN), es lo que convierte un ejercicio de clustering en un análisis defendible ante un comité de tesis o un equipo de negocio.

La segunda parte deja una lección complementaria: el aprendizaje no supervisado no es solo clustering. La segmentación por grafos resuelve un problema de percepción (separar objeto de fondo) sin miles de imágenes etiquetadas, y las GANs resuelven un problema de escasez de datos (pocos ejemplos de la clase que más importa) generando variabilidad genuina en vez de solo transformar lo que ya existe.

Termina ya tu proyecto

¿Tienes un proyecto similar y no sabes por dónde empezar? Yo te ayudo a diseñarlo.

El 92% de los profesionales de datos desbloquea sus proyectos al ver ejemplos completos resueltos.

54
proyectos
8
sectores
100%
aplicado

Sin registro. Acceso inmediato