Toma
de decisiones de riego inteligente para cultivos de caf con la utilizacin de
sensores LoT
Smart
irrigation decision-making for coffee crops using LoT sensors
Tomando decises
inteligentes de irrigao para lavouras de caf com o uso de sensores de lote
Johnatan Israel
Corrales Bonilla I johnatan.corrales5518@utc.edu.ec https://orcid.org/0000-0003-0843-8704 Charles Fabin Barreno
Flores II charles.barreno0992@utc.edu.ec https://orcid.org/0000-0002-6494-7143 Anderson Leonardo
Salvatierra Tacle III anderson.salvatierra6436@utc.edu.ec https://orcid.org/0009-0004-7359-0758
Correspondencia: johnatan.corrales5518@utc.edu.ec
Ciencias Agrcolas
Artculo de Investigacin
* Recibido:
31 de enero de 2025 *Aceptado:
17 de febrero de 2025 *
Publicado: 03 abril de 2025
I.
Universidad
Tcnica de Cotopaxi
II.
Universidad
Tcnica de Cotopaxi
III.
Universidad
Tcnica de Cotopaxi
IV.
Universidad
Tcnica de Cotopaxi
Resumen
La correcta administracin
del riego agrario es de suma importancia dado el contexto de escasez de
recursos hdricos y, por otro lado, el aumento en la demanda de productos
agrcolas. El cultivo del caf, para el que s que se precisa de unas prcticas
de riego que sean muy concretas y flexibles, tal y como los sistemas de
cultivo, es decir, las condiciones medioambientales son determinantes. En este
estudio se combinan tecnologas de agricultura de precisin con tecnologas del
Internet de las Cosas (IoT) para optimizar la toma de decisiones sobre el riego
en cultivos de caf. Se emplean sensores del IoT para monitorizar la humedad
del suelo, la temperatura, la radiacin solar y en general para monitorizar las
condiciones medioambientales del cultivo, por tanto, el sistema recoge datos en
tiempo real que son procesados mediante algoritmos del machine learning y cuya
aplicacin es predecir los requerimientos de riego. Este enfoque y esta
solucin pueden llevar a una adecuada gestin de los recursos hdricos y
ajustndose a las condiciones del cultivo, lo que lleva a mejoras tanto de la
productividad y calidad del caf como de las prdidas de agua.
Palabras claves: Gestin del riego, agricultura de precisin, Internet de las Cosas,
IoT.
Abstract
The correct
administration of agricultural irrigation is of utmost importance given the
context of scarcity of water resources and, on the other hand, the increase in
demand for agricultural products. The cultivation of coffee, for which
irrigation practices are required that are very specific and flexible, just as
the cultivation systems, that is, the environmental conditions are decisive.
This stufy combines precision agriculture technologies with Internet of Things
(IoT) technologies to optimize decision-making about irrigation in coffee
crops. IoT sensors are used to monitor soil humidity, temperature, solar
radiation and in general to monitor the environmental conditions of the crop,
therefore, the system collects data in real time that is processed using
machine learning algorithms and whose application is to predict irrigation
requirements. This approach and this solution can lead to adequate management
of water resources and adjustment to crop conditions, leading to improvements
in both coffee productivity and quality as well as water losses.
Keywords: Irrigation
management, precision agriculture, Internet of Things, IoT.
Resumo
A correta administrao da
irrigao agrcola de extrema importncia dado o contexto de escassez de
recursos hdricos e, por outro lado, de aumento da procura de produtos
agrcolas. O cultivo do caf, para o qual so necessrias prticas de irrigao
muito especficas e flexveis, assim como os sistemas de cultivo, ou seja, as
condies ambientais so decisivas. Este estudo combina tecnologias de agricultura
de preciso com tecnologias de Internet das Coisas (IoT) para otimizar a tomada
de decises sobre irrigao em lavouras de caf. Os sensores IoT so utilizados
para monitorar a umidade do solo, temperatura, radiao solar e em geral para
monitorar as condies ambientais da cultura, portanto, o sistema coleta dados
em tempo real que so processados por meio de algoritmos de
aprendizado de mquina e cuja aplicao prever as necessidades de irrigao.
Esta abordagem e esta soluo podem levar a uma gesto adequada dos recursos
hdricos e ao ajuste s condies das culturas, conduzindo a melhorias na
produtividade e qualidade do caf, bem como a perdas de gua.
Palavras-chave: Gesto de irrigao,
agricultura de preciso, Internet das Coisas, IoT.
Introduccin
La
gestin del riego al ser aplicada en el sistema de produccin agrcola es uno
de los problemas ms inmediatos en el mundo actual en un mundo donde el agua es
un recurso limitado y la demanda de productos agrcolas es creciente. En
concreto, los cultivos de caf, que son muy sensibles a las variables
medioambientales, mitigan los objetivos de un manejo del riego en el cultivo de
manera ptima y de calidad del producto final. Este tipo de cultivos, adems de
una importancia econmica para zonas como el cantn La Man, buscan
alternativas para mejorar el uso de los recursos y por ende la produccin
agrcola.
El
trabajo realizado se sita dentro de la agricultura de precisin donde se puede
aprovechar las ventajas que se generan a partir de las tecnologas de nuevos
avances, y en particular, el IoT en la generacin de decisiones para manejar el
riego. Con el uso de sensores inteligentes se pueden, continuamente, conocer
parmetros de medida de la humedad del suelo, temperatura, radiacin solar, etc.
Con lo cual se lograra, no solo conseguir optimizar el uso de agua, sino que
tambin lograr producir con mayor eficiencia el uso de recursos sin tener un
perjuicio en la sostenibilidad del medioambiente.
A
lo largo del proyecto hay una connotacin adicional: que sirva de base para
poner tecnologas de la agricultura de precisin en un cantn con una tradicin
agrcola rica como es La Man. La vinculacin con la sociedad es uno de los
factores de avasallador de este estudio, donde busca que estos tipos de
tecnologas vayan siendo aplicadas en la agricultura que desarrollan los
agricultores en esta zona. La introduccin de sistemas de monitoreo inteligente
en la agricultura no solo mejora la produccin, sino que puede contribuir a
mejorar la calidad de vida de los productores en cuanto que pueden adoptar
decisiones mejores, ms eficaces y sostenibles.
Estrategias
Metodolgicas / Materiales y Mtodos
Proceso de
simulacin Carga y
Preparacin de Datos: Los datos se cargan desde un
archivo Excel usando Pandas. La columna
"Fecha_hora" se convierte en un objeto de tipo datetime para
poder trabajar con fechas. Se define una funcin determinar_estacion
para asignar la estacin (verano o invierno) segn el mes de la fecha. Se crea una columna
"Tiempo" que contiene la estacin correspondiente a cada
registro. Se aplica la codificacin
one-hot a la columna "Tiempo". Se reemplazan los valores no
numricos en las columnas relevantes con NaN. Definicin de
Umbrales y Funcin de Toma de Decisiones: Se establecen umbrales para las
variables relacionadas con las condiciones de riego. Se define la funcin
tomar_decision_riego que toma decisiones de riego en funcin de las
condiciones climticas y de suelo. Aplicacin de
la Funcin de Toma de Decisiones: Se aplica la funcin de toma de
decisiones a cada fila de datos y se crea la columna
"Decision_Riego" con las decisiones resultantes. Divisin de
Datos y Entrenamiento del Modelo: Los datos se dividen en
conjuntos de entrenamiento y prueba. Se realiza una bsqueda de
hiperparmetros utilizando GridSearchCV para encontrar la profundidad
ptima del rbol de decisin. Se entrena un modelo de rbol
de decisin con la profundidad ptima encontrada. Prediccin y
Evaluacin del Modelo: Se realizan predicciones sobre
el conjunto de prueba. Se calcula la exactitud,
sensibilidad (recall) y F1-score del modelo utilizando las mtricas
proporcionadas por scikit-learn. Se calcula y muestra la matriz
de confusin. Se muestra el reporte de
clasificacin, que incluye precision, recall y F1-score para cada clase
de decisin de riego. Visualizacin
de Resultados: Se muestra el grfico del rbol
de decisin entrenado. Se crean grficos de barras para
visualizar la frecuencia de decisiones de riego en los conjuntos de
entrenamiento y prueba.
Figura SEQ Figura \* ARABIC 1. Procesos de
simulacin del modelo.
Modelo
lgico
El modelo lgico utilizado en el cdigo proporcionado
es un rbol de Decisin, que es un algoritmo de aprendizaje automtico que se
utiliza para la clasificacin y regresin (Kotsiantis, 2013).En este caso, se
est utilizando un rbol de Decisin para realizar la clasificacin y tomar
decisiones de riego en funcin de diversas variables relacionadas con el
cultivo de caf.
El rbol de Decisin divide el conjunto de
datos en diferentes grupos o ramas basndose en las caractersticas de las
variables(Canete-Sifuentes et al., 2021). En cada nodo del rbol, se realiza
una prueba en una variable especfica y se divide el conjunto de datos en dos
subconjuntos. Este proceso de divisin se repite en cada subconjunto hasta que
se alcanza un criterio de parada, como un nmero mximo de niveles o una cantidad
mnima de muestras en un nodo (Charbuty & Abdulazeez, 2021).
Cada hoja del rbol representa una
decisin o clase, y en este caso, cada hoja del rbol representa una decisin
especfica de riego que se tomar para un conjunto de condiciones ambientales y
del suelo (El Morr et al., 2022).
El modelo lgico generado por el rbol de
Decisin es fcil de interpretar y entender, lo que lo convierte en una
herramienta til para tomar decisiones en situaciones donde se requiere claridad
en el proceso de toma de decisiones. Sin embargo, es importante tener en cuenta
que el rendimiento y la precisin del modelo pueden depender de la calidad y
representatividad de los datos utilizados para entrenar el rbol (Song &
Lu, 2015). Es recomendable realizar una validacin cruzada y evaluar diferentes
mtricas para asegurarse de que el modelo sea adecuado para el problema
especfico en cuestin. Para realizar una grfica del modelo lgico, primero
debemos identificar las variables dependientes e independientes que se
utilizarn en el proceso de simulacin. En este caso, el modelo de rbol de
Decisin se utiliza para clasificar las decisiones de riego en funcin de
diversas variables ambientales y caractersticas del cultivo de caf.
Tipos de
variables
Tabla 1. Categorizacin de las variables.
Dependientes |
Independientes |
Decision_Riego:
Representa la decisin de riego que se tomar en el tiempo t+1. Es la
variable objetivo que el modelo intenta predecir. |
Rad_Solar(W/m):
Radiacin solar en watts por metro cuadrado. |
|
Vel_Viento(km/h):
Velocidad del viento en kilmetros por hora. |
|
Temperatura_Amb(C):
Temperatura ambiente en grados Celsius. |
|
Amb_Humedad(%):
Humedad ambiente en porcentaje. |
|
Suelo_Humedad1(%):
Humedad del suelo en la primera ubicacin en porcentaje. |
|
Suelo_Humedad2(%):
Humedad del suelo en la segunda ubicacin en porcentaje. |
|
Temperatura_Suelo(C):
Temperatura del suelo en grados Celsius. |
|
Tiempo_Invierno:
Variable binaria (0 o 1) que indica si la fecha corresponde a la estacin de
invierno. |
|
Tiempo_Verano:
Variable binaria (0 o 1) que indica si la fecha corresponde a la estacin de
verano. |
Secuenciacin
del proceso de simulacin
Divisin Entrenamiento Evaluacin del rendimiento Creacin
de
datos
del modelo
Figura 2. Secuenciacin del proceso de simulacin.
Para
validar matemticamente el modelo propuesto, se realizan los siguientes pasos:
●
Divisin de datos: Dividir los datos en un conjunto de
entrenamiento y un conjunto de prueba. El conjunto de entrenamiento se
utilizar para entrenar el modelo, mientras que el conjunto de prueba se
utilizar para evaluar el rendimiento del modelo en datos no vistos.
En este cdigo, hemos utilizado train_test_split para dividir los
datos en un 80% para entrenamiento (X_train e y_train) y un 20% para prueba
(X_test e y_test). El argumento test_size=0.2 indica que queremos que el 20% de
los datos sean utilizados para prueba, mientras que random_state=42 asegura que
la divisin de datos sea reproducible y consistente en diferentes ejecuciones.
●
Creacin del modelo: Se cre una instancia del
clasificador de rbol de Decisin utilizando la clase DecisionTreeClassifier.
En este caso, se defini el criterio de "entropa" para medir la
calidad de una particin, y se encontr la profundidad ptima del rbol de
decisin, para esto se utiliz la bsqueda en cuadrcula (GridSearchCV) con
validacin cruzada. La idea detrs de la bsqueda en cuadrcula es probar
diferentes valores de hiperparmetros (en este caso, la profundidad mxima del
rbol) y evaluar el rendimiento del modelo con cada valor en diferentes
divisiones de los datos mediante validacin cruzada. El proceso para encontrar
la profundidad ptima es el siguiente:
-
Definir el rango de valores posibles para la profundidad
mxima del rbol. En este caso, se eligieron los valores [2, 4, 6, 8, 10], pero
este rango puede variar dependiendo de los datos y del problema especfico.
-
Crear una instancia del clasificador de rbol de decisin
(DecisionTreeClassifier) sin especificar la profundidad mxima. Esto se hizo en
la lnea arbol_decision = DecisionTreeClassifier(criterion="entropy").
-
Crear una instancia de GridSearchCV, pasando como parmetros
el clasificador de rbol de decisin, los valores posibles de la profundidad
mxima y el nmero de divisiones para la validacin cruzada (cv=5, en este caso).
-
Ajustar el GridSearchCV a los datos de entrenamiento
(X_train y y_train) utilizando la funcin fit(). Durante este proceso, se
probarn todas las combinaciones de valores posibles de la profundidad mxima
mediante validacin cruzada y se seleccionar el mejor valor que optimice
alguna mtrica de evaluacin, como la precisin.
-
Una vez finalizada la bsqueda, se puede acceder al valor
ptimo de la profundidad mxima a travs del atributo best_params_ del objeto
GridSearchCV. En este caso, se utiliz grid_search.best_params_['max_depth']
para obtener la profundidad mxima ptima del rbol.
-
Luego, se crea una nueva instancia del clasificador de rbol
de decisin con la profundidad mxima ptima encontrada y se entrena el modelo
con estos hiperparmetros.
●
Entrenamiento del modelo: Utilizar el conjunto de
entrenamiento para entrenar el modelo de rbol de decisin. Esto se realiza
mediante la funcin fit() del clasificador de rbol de decisin. Durante el
entrenamiento del modelo, el algoritmo de rbol de decisin utiliza el conjunto
de entrenamiento (X_train y y_train) para aprender a tomar decisiones basndose
en las caractersticas y la variable objetivo (Tao et al., 2021). El proceso de
entrenamiento implica lo siguiente:
Se toman las caractersticas (variables independientes) del
conjunto de entrenamiento (X_train) y las etiquetas o valores objetivo
asociados (y_train).
El algoritmo de rbol de decisin busca la mejor forma de
dividir el conjunto de entrenamiento en diferentes nodos (cada nodo representa una
condicin o caracterstica) de manera que las muestras en cada nodo compartan
caractersticas similares. El objetivo es reducir la impureza en cada nodo y,
por lo tanto, obtener divisiones que sean ms informativas para tomar
decisiones.
El algoritmo repite el proceso de subdivisin en cada nodo
hasta que se alcanza la profundidad mxima del rbol o hasta que se cumple
algn criterio de detencin, como la cantidad mnima de muestras en un nodo o
la impureza alcanza un valor mnimo.
Una vez que el rbol ha sido construido y entrenado con el
conjunto de entrenamiento, puede utilizar esta estructura de rbol para hacer
predicciones sobre nuevos datos.
●
Predicciones: Utilizar el modelo entrenado para
hacer predicciones sobre el conjunto de prueba. Esto se realiza utilizando la
funcin predict() del clasificador de rbol de decisin (Friha et al., 2021).
Durante el entrenamiento del modelo, el algoritmo de rbol de decisin utiliza
el conjunto de entrenamiento (X_train y y_train) para aprender a tomar decisiones
basndose en las caractersticas y la variable objetivo. El proceso de
entrenamiento implica lo siguiente:
Se toman las caractersticas (variables independientes) del
conjunto de entrenamiento (X_train) y las etiquetas o valores objetivo
asociados (y_train).
El algoritmo de rbol de decisin busca la mejor forma de
dividir el conjunto de entrenamiento en diferentes nodos (cada nodo representa
una condicin o caracterstica) de manera que las muestras en cada nodo
compartan caractersticas similares (Ferrndez-Pastor et al., 2018). El
objetivo es reducir la impureza en cada nodo y, por lo tanto, obtener
divisiones que sean ms informativas para tomar decisiones.
El algoritmo repite el proceso de subdivisin en cada nodo
hasta que se alcanza la profundidad mxima del rbol o hasta que se cumple
algn criterio de detencin, como la cantidad mnima de muestras en un nodo o
la impureza alcanza un valor mnimo.
Una vez que el rbol ha sido construido y entrenado con el
conjunto de entrenamiento, puede utilizar esta estructura de rbol para hacer
predicciones sobre nuevos datos.
Durante la fase de prediccin, el rbol de decisin recorre
el rbol siguiendo las condiciones en cada nodo y llega a una hoja que
representa una decisin de riego especfica para las condiciones climticas y
la estacin del ao de los datos de prueba.
El rendimiento del modelo se evala utilizando el conjunto
de prueba (X_test y y_test) para medir qu tan bien generaliza el modelo a
datos no vistos. La exactitud, matriz de confusin, precisin y F1-score son
algunas de las mtricas utilizadas para evaluar el rendimiento del modelo.
●
Evaluacin del rendimiento: Una vez que se realizaron las
predicciones en el conjunto de prueba, se compararon con las etiquetas reales
(y_test). Se calcul la exactitud del modelo, que es la proporcin de
predicciones correctas sobre el total de predicciones realizadas en el conjunto
de prueba. Adems, tambin se calcul la matriz de confusin y el F1-score para
evaluar el rendimiento del modelo en cada una de las clases de decisiones de
riego (Vamshi et al., 2023). En la etapa de evaluacin del rendimiento, se
comparan las predicciones realizadas por el modelo en el conjunto de prueba
(y_pred) con las etiquetas reales conocidas del conjunto de prueba (y_test). Esto
nos permite medir la precisin y el rendimiento general del modelo en datos no
vistos.
Exactitud del modelo: La exactitud del modelo se calcula
dividiendo el nmero de predicciones correctas entre el nmero total de
predicciones realizadas en el conjunto de prueba. Representa la proporcin de
predicciones correctas en relacin con el tamao del conjunto de prueba. Una
alta exactitud indica que el modelo ha logrado realizar una cantidad
significativa de predicciones correctas.
Matriz de confusin: La matriz de confusin es una tabla que
muestra la cantidad de predicciones realizadas por el modelo para cada clase de
decisin de riego en el conjunto de prueba y cmo estas predicciones se
comparan con las etiquetas reales. La matriz de confusin tiene la estructura
detallada en la Imagen 1.
Imagen 1
Output
matriz de confusin modelo
Fuente: Realizado en base a (Charbuty & Abdulazeez, 2021).
Verdadero Positivo (TP): El modelo
predijo correctamente que la decisin de riego es positiva (acert).
Falso Positivo (FP): El modelo
predijo incorrectamente que la decisin de riego es positiva cuando en realidad
es negativa.
Verdadero Negativo (TN): El modelo
predijo correctamente que la decisin de riego es negativa (acert).
Falso Negativo (FN): El modelo
predijo incorrectamente que la decisin de riego es negativa cuando en realidad
es positiva.
La
matriz de confusin nos permite evaluar el rendimiento del modelo en trminos
de falsos positivos, falsos negativos y aciertos para cada clase de decisin de
riego.
-
Sensibilidad, tambin conocida como recall o tasa de
verdaderos positivos (TPR), es una mtrica de evaluacin utilizada en problemas
de clasificacin y se enfoca en la capacidad del modelo para identificar
correctamente los casos positivos entre todas las muestras que realmente son
positivas (Vamshi et al., 2023). En otras palabras, mide la proporcin de
ejemplos positivos que el modelo ha clasificado correctamente como positivos.
En el contexto de una matriz de confusin, la sensibilidad se calcula como:
Sensibilidad (Recall) = Verdaderos
Positivos (TP) / (Verdaderos Positivos (TP) + Falsos Negativos (FN))
Donde:
Verdaderos Positivos (TP)
representa el nmero de ejemplos positivos que el modelo ha clasificado
correctamente como positivos.
Falsos Negativos (FN)
representa el nmero de ejemplos positivos que el modelo ha clasificado
incorrectamente como negativos.
Una
sensibilidad alta indica que el modelo es eficiente en detectar los casos
positivos. En el contexto de problemas de riego, una alta sensibilidad
significa que el modelo es capaz de predecir con precisin las decisiones de
riego adecuadas en situaciones donde son necesarias. Es especialmente
importante en casos donde clasificar correctamente ejemplos positivos es de
gran relevancia, como en aplicaciones mdicas donde detectar enfermedades o en
problemas de seguridad donde identificar eventos riesgosos. La sensibilidad es
una medida crucial para evaluar el rendimiento de un modelo de clasificacin
cuando la identificacin de ejemplos positivos es importante y se busca reducir
al mnimo los falsos negativos.
-
F1-score: El F1-score es una mtrica que combina la
precisin y el recall del modelo. Se calcula como la media armnica de la
precisin y el recall, y es til cuando hay clases desbalanceadas en los datos.
El F1-score oscila entre 0 y 1, donde 1 indica una precisin y recall
perfectos, y 0 indica un rendimiento deficiente (Bishnoi & Hooda, 2022).
Arboles de Decisin vs Arboles de
Regresin
En
el caso presentado, se est abordando un problema de toma de decisiones basado
en condiciones sobre mltiples caractersticas. Esto se alinea perfectamente
con el uso de "rboles de Decisin". A continuacin, se presentan
algunas razones que justifican el uso de rboles de Decisin en este caso en lugar
de rboles de Regresin:
●
Variable Objetivo Categrica: Se est tomando decisiones sobre el
riego de las plantas en funcin de diferentes condiciones climticas y del
suelo. La variable objetivo es la decisin de riego que cae en categoras
discretas, como "Riego Aplicado (Bajo) en t+1", "Riego Aplicado
(Medio) en t+1", etc. Esto se ajusta a un problema de clasificacin, lo
que hace que los rboles de Decisin sean una opcin natural.
●
Condiciones y Reglas: Los rboles de Decisin son ideales
cuando se necesita tomar decisiones basadas en una serie de condiciones y
reglas sobre varias variables (Kotsiantis, 2013). En este caso, se est
evaluando mltiples condiciones como humedad del suelo, temperatura del suelo,
radiacin solar, velocidad del viento, etc., para decidir el nivel de riego
necesario.
●
Interpretacin: Los rboles de Decisin son
altamente interpretables, cada nodo y rama del rbol representa una regla o
condicin, lo que te permite comprender cmo se toma cada decisin. Esto es
beneficioso en aplicaciones donde se necesita entender y justificar el
razonamiento detrs de las decisiones.
●
Visualizacin: Los rboles de Decisin se pueden
visualizar fcilmente, lo que facilita la comunicacin de los resultados a
partes interesadas y permite una comprensin ms clara del proceso de toma de
decisiones (Canete-Sifuentes et al., 2021).
●
No Linealidades y Relaciones
Complejas:
Dado que se est tomando decisiones basadas en mltiples variables, los rboles
de Decisin pueden capturar relaciones no lineales y complejas entre estas
variables, lo que puede ser difcil de lograr con un simple modelo de regresin
(Kotsiantis, 2013).
Dado
que se est tomando decisiones basadas en reglas y condiciones sobre mltiples
caractersticas para clasificar en diferentes niveles de riego, los rboles de
Decisin son una opcin slida y adecuada para tu problema. Estos modelos te
permitirn capturar las decisiones en funcin de las caractersticas de manera
clara, interpretable y efectiva.
Conveniencia de usar una Validacin
Cruzada
El
uso de la "Validacin Cruzada" en este proyecto es altamente
conveniente por varias razones:
●
Mejora de la Generalizacin: La Validacin Cruzada ayuda a
estimar cmo se comportar tu modelo en datos no vistos. Dividir los datos en
conjuntos de entrenamiento y prueba mltiples veces y calcular promedios de
rendimiento te da una medida ms confiable de cmo el modelo generalizar a
nuevos datos (Ferrndez-Pastor et al., 2018).
●
Reduccin de la Variabilidad: Al realizar mltiples divisiones de
los datos en conjuntos de entrenamiento y prueba, se reduce la posibilidad de
obtener resultados extremadamente sesgados debido a la eleccin de un solo
conjunto de prueba.
●
Mayor Utilizacin de los Datos: La Validacin Cruzada utiliza
eficientemente los datos disponibles al entrenar y probar el modelo en
diferentes subconjuntos de datos (Kalesanwo et al., 2020). Esto es
especialmente til cuando el tamao del conjunto de datos es limitado.
●
Seleccin de Hiperparmetros: Si ests ajustando hiperparmetros,
como la profundidad mxima del rbol en tu caso, la Validacin Cruzada te ayuda
a seleccionar los valores ptimos al evaluar el rendimiento del modelo con
diferentes combinaciones de hiperparmetros en distintos conjuntos de
entrenamiento y prueba (Edwards-Murphy et al., 2016).
●
Evaluacin Consistente del
Rendimiento: Con la Validacin Cruzada, se obtiene una evaluacin ms robusta
del rendimiento del modelo, en lugar de depender de una nica mtrica calculada
a partir de un solo conjunto de prueba, obtienes una estimacin ms precisa de
cmo el modelo se desempear en la realidad.
●
Reduccin del Sobreajuste
(Overfitting): La Validacin Cruzada ayuda a evitar el sobreajuste ya que el
modelo se evala en diferentes subconjuntos de datos. Esto permite identificar
si el modelo es capaz de generalizar bien en lugar de ajustarse demasiado a un
conjunto particular de datos.
La
Validacin Cruzada es una prctica estndar en el desarrollo de modelos de
aprendizaje automtico, ya que proporciona una evaluacin ms confiable y
realista del rendimiento del modelo. Permite tomar decisiones informadas sobre
qu modelo y qu hiperparmetros son los ms adecuados para tu proyecto,
ayudndote a construir un modelo ms robusto y generalizable.
Resultados
Validacin de
predicciones
Interpreta la comparacin las predicciones del modelo con las
etiquetas reales del conjunto de prueba. Con base en las mtricas de
rendimiento y la matriz de confusin, se puede interpretar qu tan bien est
funcionando el modelo en el conjunto de prueba. Un modelo con un alto nivel de
exactitud, precisin, sensibilidad y F1-score generalmente indica un buen
rendimiento en la clasificacin de los datos del conjunto de prueba. La
validacin de predicciones es esencial para determinar si el modelo generaliza
bien a datos no vistos y para tomar decisiones informadas sobre el desempeo
del modelo en situaciones del mundo real. Al aplicar el cdigo en Python, se
tiene los resultados mostrados en la Imagen 2.
Output
parmetros para la toma de decisin de regado
Fuente:
Realizado por el autor, lenguaje de programacin Python
Interpretacin
de resultados
●
Profundidad ptima del rbol: La bsqueda de hiperparmetros ha
determinado que la profundidad ptima para el rbol de decisin es 10.
●
Exactitud del modelo: La exactitud del modelo en el conjunto
de prueba es de aproximadamente 0.839. Esto indica que aproximadamente el 83.9%
de las predicciones del modelo coinciden con las etiquetas reales en el
conjunto de prueba.
●
Sensibilidad del modelo: La sensibilidad (recall) del modelo
es una mtrica que indica la proporcin de casos positivos que el modelo ha
identificado correctamente en relacin con el total de casos positivos reales.
En este caso, se presenta una lista de valores para cada clase de decisin de
riego. Por ejemplo, para la clase "Riego Aplicado (Bajo) en t+1", el
modelo ha identificado correctamente todos los casos positivos (sensibilidad de
1.0). Sin embargo, para la clase "Riego Aplicado (Medio) en t+1", la
sensibilidad es aproximadamente 0.636, lo que significa que el modelo ha
identificado solo el 63.6% de los casos positivos reales para esta clase.
●
F1-score del modelo: El F1-score es una mtrica que
combina la precisin y la sensibilidad en una sola medida. Al igual que con la
sensibilidad, se presenta una lista de valores para cada clase de decisin de
riego. Por ejemplo, el F1-score para la clase "Riego Aplicado (Bajo) en
t+1" es aproximadamente 0.571. Un valor bajo del F1-score puede indicar un
desequilibrio entre la precisin y la sensibilidad en la clasificacin de esa
clase.
●
Matriz de Confusin: La matriz de confusin es una
representacin tabular que muestra cmo las predicciones del modelo se comparan
con las etiquetas reales para cada clase de decisin de riego. Los valores
diagonales de la matriz son las predicciones correctas, mientras que los
valores fuera de la diagonal son las predicciones incorrectas.
●
Reporte de Clasificacin: El reporte de clasificacin
presenta varias mtricas para cada clase de decisin de riego, incluyendo
precisin, sensibilidad y F1-score. La precisin es la proporcin de
predicciones correctas en relacin con el total de predicciones para cada
clase. La sensibilidad es la misma mtrica mencionada anteriormente. El
F1-score es una medida que combina precisin y sensibilidad.
●
El modelo de rbol de decisin parece tener un rendimiento
razonable en la clasificacin de las decisiones de riego en el conjunto de
prueba. Sin embargo, hay algunas diferencias notables en la sensibilidad y el
F1-score entre las diferentes clases de decisin de riego, lo que podra
indicar que el modelo tiene ms dificultades para identificar ciertas clases.
Se podra considerar ajustar el modelo o recopilar ms datos para mejorar su
rendimiento en estas reas.
Ajuste
y mejora del modelo
Con
el fin de mejorar la respuesta del modelo, podemos ajustar los hiperparmetros
del clasificador de rbol de decisin, los criterios de divisin hasta obtener
un modelo con un rendimiento aceptable, la Imagen 3,
muestra los resultados al ajustar los hiperparmetros.
Imagen 3
Output
modelo ajustado
Fuente:
Realizado por el autor, lenguaje de programacin Pyton
●
Output 2 (Hiperparmetros ptimos: {'max_depth': 6,
'min_samples_leaf': 2, 'min_samples_split': 2}):
-
Hiperparmetros ptimos: {'max_depth': 6,
'min_samples_leaf': 2, 'min_samples_split': 2}.
-
Exactitud del modelo ajustado: 0.9677.
-
Sensibilidad del modelo ajustado para cada clase:
-
Riego Aplicado (Bajo) en t+1: 1.00
-
Riego Aplicado (Medio) en t+1: 1.00
-
Riego Aplicado (ptimo) en t+1: 0.9444
-
F1-score del modelo ajustado para cada clase:
-
Riego Aplicado (Bajo) en t+1: 1.00
-
Riego Aplicado (Medio) en t+1: 0.9565
-
Riego Aplicado (ptimo) en t+1: 0.9714
-
La matriz de confusin muestra que el modelo ajustado predijo
correctamente todas las clases, sin errores en la prediccin.
El modelo ajustado tiene un rendimiento excepcionalmente alto en
trminos de exactitud, sensibilidad y F1-score.
Los hiperparmetros ptimos incluyen una profundidad mxima del
rbol de 6, un mnimo de 2 muestras por hoja y una divisin mnima de 2
muestras. Estos hiperparmetros permitieron que el modelo alcanzara su mximo
rendimiento.
Validacin cruzada
En
el caso de datos de series temporales, es importante aplicar tcnicas de
validacin cruzada especializadas, como la validacin cruzada por bloques o la
validacin cruzada de series de tiempo. Esto nos permite evaluar el rendimiento
del modelo en diferentes intervalos de tiempo y asegurarnos de que no haya fuga
de informacin del futuro al pasado. Para este modelo se utiliza la clase
cross_val_score de scikit-learn, la Imagen 4, muestra los resultados al aplicar
la validacin cruzada.
Output
Validacin cruzada
Fuente: Realizado por el autor, lenguaje de programacin
Pyton
●
Hiperparmetros ptimos: Los hiperparmetros encontrados por
la bsqueda en cuadrcula son max_depth: 8, min_samples_leaf: 2 y
min_samples_split: 5. Estos valores son los que optimizan el rendimiento del
modelo.
●
Exactitud del modelo ajustado: La exactitud del modelo en el
conjunto de prueba es aproximadamente 0.9355, lo que significa que alrededor
del 93.55% de las decisiones de riego se predicen correctamente.
●
Sensibilidad del modelo ajustado: La sensibilidad (recall)
del modelo vara para cada clase. Para la clase "Riego Aplicado (Bajo) en
t+1", la sensibilidad es del 100%, lo que significa que todos los casos
positivos de esta clase fueron correctamente identificados. Para la clase
"Riego Aplicado (Medio) en t+1", tambin es del 100%, lo que
significa que todos los casos positivos de esta clase fueron correctamente
identificados. Para la clase "Riego Aplicado (ptimo) en t+1", la
sensibilidad es del 88.89%, lo que significa que el 88.89% de los casos
positivos de esta clase fueron correctamente identificados.
●
F1-score del modelo ajustado: El F1-score es una medida que
combina la precisin y la sensibilidad. Para la clase "Riego Aplicado
(Bajo) en t+1", el F1-score es 1.00. Para la clase "Riego Aplicado
(Medio) en t+1", el F1-score es aproximadamente 0.9167. Para la clase
"Riego Aplicado (ptimo) en t+1", el F1-score es aproximadamente
0.9412.
●
Exactitud en cada pliegue: Durante la validacin cruzada, se
realiz la evaluacin del modelo en 5 pliegues diferentes. Los resultados de la
exactitud en cada pliegue son [0.9032, 0.7333, 0.7, 0.8667, 0.9667].
●
Exactitud promedio: La exactitud promedio de todas las
iteraciones de validacin cruzada es aproximadamente 0.8340, lo que indica el
rendimiento promedio del modelo en diferentes conjuntos de datos de prueba
simulados.
●
Desviacin estndar de la exactitud: La desviacin estndar
de la exactitud entre las iteraciones de validacin cruzada es aproximadamente
0.1015. Esto da una idea de la variabilidad del rendimiento del modelo en
diferentes conjuntos de datos de prueba.
●
Matriz de Confusin del modelo ajustado: La matriz de
confusin muestra cmo el modelo clasific las instancias en cada clase. En
este caso, se pueden ver los valores correspondientes a verdaderos positivos, falsos
positivos y falsos negativos para cada clase.
●
Reporte de Clasificacin del modelo ajustado: Este reporte
proporciona medidas como precisin, recall y F1-score para cada clase, as como
promedios ponderados y macro. Adems, se presenta la exactitud general y el
soporte (cantidad de casos) para cada clase.
●
En la Figura 3, se muestra la una grfica de barras donde se
puede observar que el rendimiento del modelo en los 5 pliegues establecidos
para la validacin cruzada se aproxima a la exactitud promedio, determinando
grficamente la validez del modelo.
Figura 3. Pliegue de validacin cruzada.
Establecer una semilla
aleatoria:
Es
normal que los resultados varen cada vez que ejecutas el modelo, especialmente
cuando se trabaja con algoritmos que tienen un componente aleatorio o cuando se
utilizan tcnicas como la validacin cruzada (Canete-Sifuentes
et al., 2021). Para abordar este problema, es recomendable establecer
semillas aleatorias antes de cada ejecucin para que los resultados sean
reproducibles (Song & Lu, 2015). Esto se
hace configurando la semilla aleatoria en el generador de nmeros aleatorios
utilizado por el algoritmo. En este caso, en Scikit-Learn (una biblioteca de
aprendizaje automtico en Python), se establece la semilla aleatoria usando la
funcin random_state en los objetos de los modelos.
Validacin de resultados
Se
est utilizando la prueba de Tukey, que es una prueba estadstica post hoc
utilizada para realizar comparaciones mltiples entre las medias de varios
grupos. La prueba de Tukey es comnmente utilizada despus de realizar un
anlisis de varianza (ANOVA) para determinar si existen diferencias
significativas entre las medias de tres o ms grupos.
En
tu caso, la prueba de Tukey se est utilizando para comparar las medias de exactitud
entre dos grupos: el grupo "Prueba" y el grupo "Validacin
Cruzada". La prueba de Tukey evala si hay diferencias estadsticamente
significativas entre estas medias y ayuda a identificar qu grupos especficos
tienen medias significativamente diferentes. Al aplicar este modelo, se tiene
el output de la Imagen 5:
Output
Anlisis estadstico
Fuente: Realizado por el autor, lenguaje de programacin
Pyton
Desviacin estndar de la
exactitud: El valor de 0.07199324231850222 representa
la desviacin estndar de las exactitudes obtenidas durante la validacin
cruzada. Esto mide cunto varan las exactitudes en los diferentes pliegues de
validacin cruzada, proporcionando una idea de la consistencia del rendimiento
del modelo en diferentes divisiones del conjunto de datos.
Matriz de Confusin del
modelo ajustado: Esta matriz muestra cmo el modelo
clasific las muestras en cada una de las clases. Los nmeros en la matriz
indican cuntas muestras se clasificaron correctamente o incorrectamente en
cada clase.
Anlisis de Varianza
(ANOVA) en la Exactitud: Estos valores
corresponden a los resultados del anlisis de varianza realizado en las
exactitudes entre los grupos de validacin cruzada y el conjunto de prueba. El
estadstico F calculado es 0.9757294548050331 y el valor p asociado es
0.3791749978317657. El valor p es mayor que un nivel de significancia tpico de
0.05, lo que sugiere que no hay diferencias estadsticamente significativas en
las exactitudes entre los dos grupos.
Prueba de Tukey:
La prueba de Tukey se utiliza para realizar comparaciones mltiples entre los
grupos y determinar si hay diferencias significativas en las medias. En tu
caso, se compara la exactitud entre el grupo "Prueba" y el grupo
"Validacin Cruzada". El resultado indica que no hay evidencia para
rechazar la hiptesis nula de que no hay diferencias significativas en las
medias de exactitud entre estos dos grupos. De esta manera, no hay una
diferencia estadsticamente significativa en la exactitud entre la prueba y la
validacin cruzada.
En
general, estos resultados indican que tu modelo est funcionando bien en la
clasificacin de las diferentes clases y que no hay diferencias
estadsticamente significativas en las exactitudes entre la validacin cruzada
y el conjunto de prueba.
Discusin
La adopcin de la
tecnologa IoT en el campo de la agricultura, aunque ha cobrado importancia an
no estaba bien integrada en el cultivo de caf que plantea un manejo particularmente
delicado por la sensibilidad del cultivo a las condiciones del entorno.
El aporte ms
significativo de este trabajo de investigacin se encuentra en el hecho de
integrar sensores IoT con algoritmos de machine learning para realizar predicciones
en tiempo real sobre las necesidades de riego, de forma que se pueden ir
adaptando las prcticas de riego a las condiciones particulares de cada
cultivo, lo cual permite dejar atrs los sistemas tradicionales que no
proporcionaban datos continuos, accediendo a datos a muy alta resolucin; con
ello se potencia una toma de decisiones ms robusta y eficiente. Tambin hay
que sealar que la capacidad de implementar big data y machine learning en el
ajuste del riego en funcin de factores como la radiacin solar y la
evapotranspiracin aporta una innovacin importante al xito del riego que
permite aportar una mejora significativa en la precisin de los sistemas de
riego, adems de dificultar el principio de sostenibilidad. En cuanto a la
sostenibilidad, un aspecto que vale la pena destacar es la posibilidad de
optimizar el uso del agua, un recurso cada vez ms escaso en muchas regiones
agrcolas a causa de la explotacin de los acuferos. Al ser un sistema
inteligente, se separa de los sistemas convencionales que normalmente tienen
patrones fijos de riego, ya que responde a las dinmicas del ambiente y con
ello reduce el malgasto de agua. De este modo, es posible salvar los recursos
hdricos y mejorar la sostenibilidad del cultivo.
La aportacin que esta
investigacin hace al conocimiento acadmico y cientfico es muy significativa.
En primer lugar, se pasa a contribuir con la agricultura de precisin y las
tecnologas de IoT dado que permite su aplicacin a cultivos de alta demanda
(como es el caso del caf). En segundo lugar, se convierte en la base para
generar soluciones ms adaptativas y escalables a la gestin del riego de otras
especies agrcolas. Y en tercer lugar, se genera un sistema replicable (que
puede ser trasladado a otras regiones o condiciones agrcolas), ayudando a una
mayor adopcin de prcticas sostenibles a una escala global.
Conclusiones
El modelo de rbol de
decisin fue ajustado con hiperparmetros ptimos {'max_depth': 8,
'min_samples_leaf': 2, 'min_samples_split': 5}, lo que sugiere que un rbol con
una profundidad mxima de 6, una hoja mnima de tamao 1 y una divisin mnima
de 10 muestras en cada nodo proporciona el mejor equilibrio entre complejidad y
capacidad de generalizacin.
Evaluando el rendimiento
del Modelo en el Conjunto de Prueba, el modelo de rbol de decisin demostr un
alto nivel de precisin en el conjunto de prueba, con una exactitud del 93.5%.
Esto indica que el modelo es capaz de tomar decisiones acertadas en la
clasificacin de las decisiones de riego.
En cuanto al rendimiento
por Clase, el modelo demostr una excelente sensibilidad y F1-score en las
clases "Riego Aplicado (Bajo)" y "Riego Aplicado (Medio)",
con una sensibilidad y F1-score del 100%. La clase "Riego Aplicado
(ptimo)" tambin mostr un buen rendimiento con una sensibilidad del 88%
y un F1-score del 94.1%.
La validacin cruzada
realizada en el modelo mostr una exactitud promedio del 83.3% con una
desviacin estndar de 0.07. El anlisis de varianza (ANOVA) no revel
diferencias estadsticamente significativas en la exactitud entre los grupos de
validacin cruzada y el conjunto de prueba. Adems, la prueba de Tukey no
rechaz la hiptesis nula de que no hay diferencias significativas entre los
grupos.
En funcin de los modelos
utilizados y los resultados obtenidos, podemos concluir que el enfoque de
Simulacin de la toma de decisiones de riego inteligente para cultivos de caf
con la utilizacin de sensores IoT, demuestra la eficacia del modelo de rbol
de decisin en la toma de decisiones de riego para diferentes condiciones de
cultivo. La precisin y capacidad de clasificacin del modelo, respaldadas por
el anlisis de validacin cruzada y las pruebas estadsticas, refuerzan la
viabilidad de este enfoque para optimizar la gestin de riego en los cultivos
de caf mediante la integracin de sensores IoT y tcnicas de aprendizaje
automtico.
El uso de sensores IoT en
combinacin con modelos de aprendizaje automtico, como el rbol de decisin,
permite una gestin eficiente e inteligente del riego en cultivos de caf. Los
sensores proporcionan datos clave sobre las condiciones del ambiente y del
suelo, lo que permite predicciones precisas y decisiones optimizadas. Este enfoque mejora el uso de recursos
hdricos y promueve la sostenibilidad agrcola
Recomendaciones
Dado que el modelo de
rbol de decisin ha demostrado un alto rendimiento en la clasificacin de
decisiones de riego, se recomienda implementar esta metodologa en el campo.
Utilizando los hiperparmetros ptimos determinados durante el proyecto, el
modelo puede ayudar a automatizar la toma de decisiones de riego, optimizando
el uso del agua y mejorando la eficiencia del proceso.
Para garantizar la
precisin y eficacia del modelo de toma de decisiones, se debe establecer un
sistema de monitoreo continuo utilizando sensores IoT. Esto permitir recopilar
datos en tiempo real sobre variables clave como humedad del suelo, temperatura,
radiacin solar y velocidad del viento. Los datos actualizados mejorarn la
precisin del modelo y la capacidad de respuesta a las condiciones cambiantes
del cultivo.
Aunque el modelo ha
mostrado un rendimiento prometedor en el entorno de prueba, es fundamental
validar su desempeo en condiciones reales en el campo. La implementacin
piloto en una parcela de cultivo de caf permitir evaluar cmo el modelo se
adapta a situaciones variables y confirmar su eficacia en la toma de decisiones
en tiempo real.
Despus de la
implementacin en el campo, se debe realizar un seguimiento constante de la
eficacia del modelo y las decisiones de riego que genera. Esto permitir
identificar posibles desviaciones y ajustar el modelo segn sea necesario.
Adems, se pueden recopilar comentarios y experiencias de los agricultores para
mejorar an ms el sistema.
Es esencial capacitar a
los agricultores en el uso del sistema de toma de decisiones basado en el
modelo de rbol de decisin. Los agricultores deben comprender cmo se generan
las decisiones de riego y cmo interpretarlas. Esto fomentar la confianza en
el sistema y su adopcin exitosa.
Adems de los beneficios ambientales y agronmicos, es importante
llevar a cabo una evaluacin econmica del sistema de toma de decisiones. Esto
incluye analizar los ahorros en costos de agua, la optimizacin de la
produccin y cualquier inversin adicional requerida para la implementacin del
sistema.
Bibliografa
Bishnoi, S., & Hooda, B. K. (2022).
Decision Tree Algorithms and their Applicability in Agriculture for
Classification. Journal of
Experimental Agriculture International. https://doi.org/10.9734/jeai/2022/v44i730833
Canete-Sifuentes, L., Monroy, R., &
Medina-Perez, M. A. (2021). A Review and Experimental Comparison of
Multivariate Decision Trees. IEEE
Access, 9.
https://doi.org/10.1109/ACCESS.2021.3102239
Charbuty, B., & Abdulazeez, A.
(2021). Classification Based on Decision Tree Algorithm for Machine
Learning. Journal of Applied Science
and Technology Trends, 2(01).
https://doi.org/10.38094/jastt20165
Edwards-Murphy, F., Magno, M., Whelan,
P. M., OHalloran, J., & Popovici, E. M. (2016). B+WSN: Smart beehive
with preliminary decision tree analysis for agriculture and honey bee health
monitoring. Computers and Electronics
in Agriculture, 124.
https://doi.org/10.1016/j.compag.2016.04.008
El Morr, C., Jammal, M., Ali-Hassan,
H., & El-Hallak, W. (2022). Decision Trees. In International Series in Operations Research and Management Science
(Vol. 334). https://doi.org/10.1007/978-3-031-16990-8_8
Ferrndez-Pastor, F. J.,
Garca-Chamizo, J. M., Nieto-Hidalgo, M., & Mora-Martnez, J. (2018).
Precision agriculture design method using a distributed computing
architecture on internet of things context. Sensors (Switzerland), 18(6).
https://doi.org/10.3390/s18061731
Friha, O., Ferrag, M. A., Shu, L.,
Maglaras, L., & Wang, X. (2021). Internet of Things for the Future of
Smart Agriculture: A Comprehensive Survey of Emerging Technologies. In IEEE/CAA Journal of Automatica Sinica
(Vol. 8, Issue 4). https://doi.org/10.1109/JAS.2021.1003925
Kalesanwo, O., Awodele, O., Eze, M.,
Kuyoro, S., & Ajaegbu, C. (2020). Evaluation of Decision Tree
Algorithms in Precision Agriculture. International
Journal of Computing and Technology (IJCAT), 7(3).
Kotsiantis, S. B. (2013). Decision
trees: A recent overview. In Artificial
Intelligence Review (Vol. 39, Issue 4).
https://doi.org/10.1007/s10462-011-9272-4
Song, Y. Y., & Lu, Y. (2015).
Decision tree methods: applications for classification and prediction. Shanghai Archives of Psychiatry, 27(2).
https://doi.org/10.11919/j.issn.1002-0829.215044
Tao, W., Zhao, L., Wang, G., &
Liang, R. (2021). Review of the internet of things communication
technologies in smart agriculture and challenges. In Computers and Electronics in Agriculture (Vol. 189).
https://doi.org/10.1016/j.compag.2021.106352
Vamshi, H., Vamshi, D., Dakshiraju, S.,
Chennauahgari, S., Saswati, B., & Loganayagi, B. (2023). SMART
AGRICULTURE USING DECISION TREE IN IOT. International
Research Journal of Modernization in Engineering Technology and Science,
5(03/March-2023).
https://doi.org/10.56726/irjmets35152
2025 por
los autores. Este artculo es de acceso abierto y distribuido segn los
trminos y condiciones de la licencia Creative Commons
Atribucin-NoComercial-CompartirIgual 4.0 Internacional (CC BY-NC-SA 4.0)
(https://creativecommons.org/licenses/by-nc-sa/4.0/).
Enlaces de Referencia
- Por el momento, no existen enlaces de referencia
Polo del Conocimiento
Revista Científico-Académica Multidisciplinaria
ISSN: 2550-682X
Casa Editora del Polo
Manta - Ecuador
Dirección: Ciudadela El Palmar, II Etapa, Manta - Manabí - Ecuador.
Código Postal: 130801
Teléfonos: 056051775/0991871420
Email: polodelconocimientorevista@gmail.com / director@polodelconocimiento.com
URL: https://www.polodelconocimiento.com/