/ Proyectos / Agritech / Clasificación de variedades de arroz con CNN

Clasificación de variedades de arroz con CNN: cómo comparar tus resultados con la literatura y estructurar tu artículo de conferencia

El flujo de 4 pasos que usan tesistas para convertir un notebook de clasificación de imágenes en una contribución real: buscar el artículo de referencia, entender sus métricas, ejecutar y comparar, y mapear el resultado a un artículo de conferencia.

14 min de lectura Python · TensorFlow · Keras Datos: Rice Image Dataset (Kaggle, público) Aplicable a tesis y artículos de conferencia
Comparación de accuracy entre una CNN simple y Xception con transfer learning para clasificar variedades de arroz, contra el resultado reportado en la literatura

Este proyecto nace de una pregunta muy concreta que se hacen quienes están por primera vez frente a su tema de tesis: "ya entrené un modelo y funciona, ¿y ahora qué?". Un modelo que clasifica bien no es, por sí solo, una contribución. Lo que lo convierte en algo defendible frente a un comité es saber compararlo contra lo que ya existe, y a partir de ahí, mejorar algo puntual.

El ejercicio técnico es clasificar 5 variedades de arroz (Arborio, Basmati, Ipsala, Jasmine, Karacadag) a partir de imágenes, comparando una CNN simple contra Xception con transfer learning. Pero el objetivo real de este artículo es mostrar el flujo completo: buscar el artículo relacionado, entender sus métricas, ejecutar tu propio experimento y compararlo, y mapear el resultado a la estructura de un artículo de conferencia.

Para quién es esto

Este flujo es el mismo que piden muchos profesores universitarios al inicio del ciclo de tesis: no importa tanto en qué mejores, pero sí que te compares contra un artículo reciente y mejores en algún punto específico. Esa comparación y esa mejora, bien documentadas, son la contribución.


Mapa del casoContenido


Estructura de alto nivelDiagrama de la solución

1 Buscar el artículo relacionado Prioriza el paper que originó tu dataset si existe, o el más reciente en tu misma tarea exacta (mismas clases, dataset similar) 2 Entender sus métricas Qué métrica reportan como principal y bajo qué condiciones exactas la obtuvieron 3 Ejecutar tu propio experimento Mismo dataset, misma tarea, condiciones comparables a las del artículo de referencia Comparar contra el artículo Referencia: 100% accuracy (CNN, mismo dataset) Propio: 98.88% (CNN simple) · 95.99% (Xception) ⚠ El hallazgo no tiene que ser "gané" puede ser una pregunta real que abriste 4 Mapear a la estructura de un artículo de conferencia (ver detalle abajo) Título · Abstract · Introducción qué hiciste, por qué importa, qué se sabe ya y cuál es tu contribución específica (detalle completo en la sección de lecciones) Fundamentos · Metodología · Resultados Conclusiones y Trabajo Futuro cómo lo hiciste, qué obtuviste, qué sigue (detalle completo en la sección de lecciones)

Pasa el cursor sobre cada bloque para ver el detalle. Este flujo es genérico: aplica a clasificación de arroz, limones, palta, frutos rojos o cualquier otro producto.

Este flujo no es exclusivo de arroz. El mismo proceso, buscar referencia → entender métricas → ejecutar y comparar → mapear a la estructura de un artículo, aplica igual para clasificar o segmentar limones, palta, frutos rojos, o prácticamente cualquier producto agrícola con un dataset de imágenes disponible.


Cómo se construyóConstrucción de la solución

Condiciones del proyecto

RestricciónDato
ObjetivoEjercicio aplicado de clasificación de imágenes, con foco en el proceso de comparación contra literatura, no solo en el modelo
DatasetRice Image Dataset (Kaggle, público, CC0), 75,000 imágenes, 15,000 por cada una de 5 variedades
Referencia disponibleEl dataset tiene un paper de origen público, lo que da el mejor punto de comparación posible
CómputoEntrenamiento en pocas épocas (5 para la CNN simple, 8 para Xception), pensado para correr en un entorno de clase con recursos limitados
OpciónPor qué se descartó
Comparar contra "un artículo cualquiera" sobre clasificación de imágenesPierde el valor de una comparación justa: mismas clases, mismo tipo de dato
Reportar solo el resultado del mejor modelo propioNo responde la pregunta que un comité de tesis va a hacer: "¿y contra qué te comparaste?"
Asumir que un modelo más complejo (Xception) sería automáticamente mejorEl resultado real mostró lo contrario, y esa comparación es justo lo que aporta valor
Usar el paper de origen del dataset como referencia, ejecutar dos arquitecturas propias, y comparar ambas contra esa referenciaDa un punto de comparación verificable y dos resultados propios que permiten discutir por qué uno funcionó mejor que el otro

Pasos

1

Buscar el artículo relacionado

Antes de buscar en Google Scholar o Semantic Scholar cualquier paper sobre el tema general, revisa primero la página del dataset. Si viene de Kaggle, muchas veces el autor cita el paper que originó los datos, en la sección de descripción o de "citation". En este caso, el Rice Image Dataset cita directamente Koklu, Cinar & Taspinar (2021), "Classification of rice varieties with deep learning methods", publicado en Computers and Electronics in Agriculture. Es la mejor referencia posible: usa exactamente estos mismos datos, no una aproximación.

2

Entender sus métricas

El paper de referencia reporta que su modelo CNN alcanzó 100% de accuracy clasificando estas 5 variedades. Es importante leer también bajo qué condiciones se logró ese número: qué arquitectura exacta, qué split de datos, cuántas épocas. Sin ese contexto, comparar tu propio resultado directamente contra un "100%" sin más información puede llevar a conclusiones apresuradas.

3

Ejecutar tu propio experimento y comparar

Se entrenaron dos modelos propios sobre el mismo dataset: una CNN simple de 2 capas convolucionales (5 épocas) y Xception con transfer learning (8 épocas). La CNN simple llegó a 98.88% de accuracy de validación, muy cerca de la referencia. Xception, a pesar de partir de pesos preentrenados en ImageNet, llegó solo a 95.99%, por debajo de la CNN simple.

4

Mapear el resultado a un artículo de conferencia

Con la comparación hecha, el siguiente paso es organizar el hallazgo en la estructura estándar de un artículo: título, abstract, introducción, fundamentos teóricos, metodología, resultados, y conclusiones con trabajo futuro. El detalle completo de qué lleva cada sección está en "Lecciones importantes", al final de este artículo.

Proceso de iteración

El hallazgo, sin forzar una lectura favorable

La expectativa razonable era que Xception, con transfer learning desde ImageNet, superara a una CNN simple entrenada desde cero. Ocurrió lo contrario: la CNN simple (98.88% de validación) superó a Xception (95.99%) y quedó mucho más cerca del 100% reportado en el artículo de referencia. La explicación más plausible es que ImageNet enseña a reconocer objetos naturales complejos (animales, vehículos, escenas), mientras que distinguir variedades de arroz depende de detalles de textura, forma y color muy distintos a esos patrones. Los pesos preentrenados, en este caso, pueden no ser el punto de partida más útil. Esto no es una conclusión definitiva, es exactamente el tipo de pregunta abierta y bien argumentada que un profesor de tesis suele aceptar como contribución válida: no "mejoré todo", sino "encontré y expliqué por qué pasó esto, y aquí está mi propuesta para probarlo mejor" (por ejemplo, más épocas de fine-tuning, descongelar capas del backbone, o comparar contra un backbone más liviano).


CierreLecciones importantes

Esto es lo que suele llevar cada sección de un artículo de conferencia de machine learning, aplicable a este proyecto o a cualquier otro con la misma estructura de comparación:

SecciónQué responde
TítuloEl qué y el cómo en una sola línea. Ej: "Clasificación de variedades de arroz mediante CNN: una comparación con transfer learning"
Abstract150-250 palabras: problema, método, resultado clave y su significado, en ese orden
IntroducciónPor qué importa el problema, qué se ha hecho antes (resumen breve), y cuál es tu contribución específica en 1-2 oraciones
Fundamentos teóricosLos conceptos que el lector necesita para entender tu método (ej. qué es una CNN, qué es transfer learning), sin extenderse más de lo necesario
MetodologíaDataset, preprocesamiento, arquitectura(s), hiperparámetros, y cómo mediste el desempeño, con suficiente detalle para que alguien más lo reproduzca
ResultadosTus métricas, comparadas explícitamente contra las del artículo de referencia, con tablas o gráficas, sin interpretación todavía
Conclusiones y trabajo futuroQué aprendiste, qué explica tu resultado (incluso si no fue el esperado), y qué harías después con más tiempo o recursos

Un detalle que muchos pasan por alto: cuando el objetivo final es un producto agrícola destinado a consumo o exportación, no basta con reportar accuracy general. Vale la pena revisar si existen lineamientos de autoridades regulatorias de alimentos (como SENASA en Perú, para certificación fitosanitaria y de exportación) sobre qué tipo de defectos o categorías deben detectarse con más rigor, y alinear tus métricas de evaluación, por ejemplo, priorizando recall por clase en categorías críticas, a esos criterios. Esto aplica igual para arroz, limones, palta, o frutos rojos.

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.

53
proyectos
8
sectores
100%
aplicado

Sin registro. Acceso inmediato