Documentos de Académico
Documentos de Profesional
Documentos de Cultura
M0
Brayan Stiven Rodríguez Cuervo 1, María Fernanda Rodríguez Peña, Javier Alberto
Chaparro Preciado3
1 Pregrado
Ingeniería Electrónica
Escuela Colombiana de Ingeniería Julio Garavito
Brayan.rodriguez-c@mail.escuelaing.edu.co 0000-
0002-5378-6313
Investigación y desarrollo
2 Pregrado
Ingeniería Electrónica
Escuela Colombiana de Ingeniería Julio Garavito
Maria.rodriguez-pe@mail.escuelaing.edu.co 0000-
0002-2262-7176
Investigación y desarrollo
3 Doctorado Ingeniería
Electrónica
Escuela Colombiana de Ingeniería Julio Garavito
Javier.chaparro@escuelaing.edu.com Investigación,
Desarrollo y asesoría
Abstract
This article contains a detailed report on the development and execution of the project that aims to
identify the irrigation factor in plants using the automatic learning method and then implement an
irrigation system capable of predicting this factor and activate the irrigation system accordingly. The
development includes a research process, data collections for training, the use of classification
techniques and finally their implementation.
Palabras clave
Machine Learning, Factores de riego, goteo, aspersión, microaspersión, técnicas de clasificación-
1. INTRODUCCIÓN modelos matemáticos y estadísticos para guiar
el aprendizaje automático. La selección del
Según los expertos, una planta en tipo de técnica de machine learning a usar en
condiciones ideales se encuentra en un estado un sistema recae sobre la eficiencia y el
fisiológico óptimo gracias a sus procesos de rendimiento que este tenga ante el tratamiento
autorregulación, sin embargo, cuando se de los datos, razón por la cuál varían los usos
rompe este equilibrio la planta empieza a tener muchas veces según la clase de datos que se
afectaciones en sus células que se ven están analizando e incluso debido a algunos
reflejados en su rendimiento. [1] comportamientos estadísticos. Para el
desarrollo de este proyecto se han utilizado
Todos los procesos de ruptura de dicho todos los algoritmos anteriormente descritos,
equilibrio son causados por varios factores; sin embargo, la selección del algoritmo estará
durante el desarrollo de este proyecto el dada por temas de eficiencia y exactitud en el
enfoque se hará en dos de los factores que más tratamiento de los datos.
afectan el desarrollo de la planta (Temperatura
y humedad del suelo). Estos factores tienen El primer paso para desarrollar los modelos
repercusiones en el desarrollo de la planta, de predicción y machine learning es la toma
especialmente en relación con el tema del de los datos, para lo cual se hace uso de dos
déficit o exceso hídrico, por tal motivo el sensores: temperatura y humedad en suelo
principal objeto de estudio será evaluar los (DHT11 y FC-28 respectivamente). Estos
factores anteriormente descritos para datos son tomados durante 1 semana en un
automatizar el proceso de riego en las plantas pequeño arbusto puesto en un jardín (Buxus
según su necesidad. Sempervirens) bajo condiciones de sol,
Se hará uso de las técnicas de machine oscuridad, lluvia, neblina y sequía. Una vez
learning para clasificar el tipo de necesidad obtenidos los datos se realiza un proceso de
hídrica que requiere una planta ante la normalización y filtración sobre los mismos
variación de los factores anteriormente para eliminar redundancias y datos erróneos,
descritos. Las técnicas de machine learning luego de ello se realiza el proceso de clustering
son métodos analíticos que permiten que un para determinar características similares en los
sistema de forma automatizada descubra datos y posteriormente definir las clases y
patrones, tendencias y relaciones en los datos, variables predictoras requeridas en machine
así los datos de entrada de un sistema son learning. Una vez se tienen definidas las
analizados para predecir valores de salida características de los datos, inicia el proceso de
dentro de un rango aceptable. [2] Algunos de uso de los algoritmos de machine learning
los algoritmos más usados para machine para encontrar el método más eficiente y
learning son: Clasificadores KNN, Árboles de exacto que permita determinar la necesidad
decisión, Clasificador de Naive Bayes, hídrica que requiere la planta en tratamiento.
Regresión lineal y logística, Máquinas de Una vez se ha elegido el método más eficiente
soporte vectorial, redes neuronales y para el conjunto de
Perceptrón multicapa; todos ellos utilizan
distintos
datos dispuestos, se procede a realizar la 2. METODOLOGÍA
implementación del sistema de riego mediante
la tarjeta programable Arduino Nano 33 que
utiliza un procesador Arm Cortex-M0 [3] este El riego de las plantas es uno de los factores que más
hardware responde de manera eficiente al influyen en la vida de las plantas, es una de las
prototipado de máquina inteligente, a través actividades más simples para el cuidado de las plantas,
de dispositivos electrónicos realiza: la toma de sin embargo, en muchos casos el riego no es solamente
datos, clasifica el factor de riego y predice la regarles o rociarles un poco de agua; son varios los
necesidad hídrica de la planta. factores que inciden en la cantidad y la forma en cómo se
les suministra agua a las plantas. La agricultura de riego
sobre la cual trabaja este proyecto consiste en durante 1 semana (realizando tomas cada 10
determinar el suministro de la cantidad minutos), dejando la planta bajo condiciones
necesaria de agua en las plantas o cultivos normales de iluminación excesiva,
mediante diversos métodos artificiales de riego iluminación moderada, oscuridad, lluvia,
(goteo, microaspersión y aspersión). [4] neblina y sequía. Para poder obtener la mayor
cantidad de datos que informen sobre el
2.1 Dataset estado de la planta, se han forzado estados
como inundación y sequía absoluta a
Para obtener el Dataset se utiliza un diferentes temperaturas.
pequeño arbusto puesto en un jardín (Buxus
Sempervirens), en condiciones normales, le
hemos instalado dos tipos de sensores, un
sensor de temperatura DHT11 y un
higrómetro (sensor de humedad) FC-28. Una
vez conectados los sensores se inicia la toma
de datos a través de un programa
implementado en un Arduino 1, el cuál
entrega valores correspondientes a la
temperatura ambiente y humedad en el suelo
de la planta.
Esta toma de datos se lleva a cabo
Ilustración 1. Evidencia de la toma de datos en Buxus Sempervirens
2.2 Caracterización
2.3 Clasificadores
Ilustración 3. Caracterización y clasificación
a) Clasificador KNN
En la figura 1. Representamos las En En la Es un algoritmo basado en instancia de
Ilustración 3. Se representan las clases tipo supervisado de Machine Learning. Es
anteriormente descritas: un método bastante sencillo que
esencialmente busca las observaciones
- Verde: Riego por aspersión más cercanas a la que está tratando de
- Azul: Riego por microaspersión predecir y clasifica el nuevo punto de
- Amarillo: Riego por goteo. interés basado en la mayoría de los datos
que le rodean. Para encontrar la distancia
Amarillo/Riego por goteo: Plantas en más corta entre las múltiples
extrema sequía y humedad media observaciones se aplica la ecuación de la
sometidas a altas temperaturas distancia Euclídea [4]:
requieren el mayor factor de riego (90
-95%).
Azul /Riego por microaspersión: 𝒏
Plantas con suelo húmedo a
temperaturas altas requieren un factor 𝒅(𝑨, 𝑩) = √∑(𝑨𝒊 − 𝑩𝒊 )𝟐 (𝟏)
de riego medio (85 – 90%).
𝒊=𝟏
Verde/ Riego por aspersión:
Plantas con suelo húmedo y con
tendencia a la sequía, sometidas a KNN al ser un algoritmo de aprendizaje
temperaturas bajas y medias requieren supervisado, significa que previamente se
un factor de riego mínimo (80 – 85%) debe etiquetar el conjunto de datos de
para compensar los efectos de un alza entrenamiento con la clase esperada dada
de temperatura por cada fila de datos, en este caso, sin tos
inmediatamente después de una fuerte o con tos.
helada.
La desventaja que tiene KNN es que no
Uno de los análisis estadísticos que se les realiza puede aprender un modelo explícito, lo
a los datos es el cálculo de la media y que hace es memorizar las instancias de
desviación estándar para cada una de las entrenamiento, las cuales forman la base
variables predictoras y para cada una de de
conocimiento para la fase de construir y particularmente útil para conjuntos de datos
predicción. [6] muy grandes.
b) Clasificador de Naive Bayes El clasificador asume que el efecto de una característica
particular en una clase es independiente de otras
Naive Bayes es un algoritmo muy bueno para características. Incluso si estas características son
la clasificación basado en el teorema de Bayes interdependientes, estas características se consideran de
con una suposición de independencia entre los forma independiente. Esta suposición simplifica la
predictores, en realidad es muy sencillo, fácil de computación, y por eso se considera ingenua. Esta
suposición se denomina independencia condicional de
clase. [7]
𝑷(𝑨|𝒃𝟏, 𝒃𝟐, . . , 𝒃𝒏−𝟏, 𝒃𝒏)
La fórmula del teorema de Bayes es: = 𝑷(𝑨)𝑷(𝒃𝟏, 𝒃𝟐, . . , 𝒃𝒏−𝟏, 𝒃𝒏|𝑨)
𝑷(𝑩|𝑨) 𝑷(𝑨)
𝑷(𝑨|𝒃𝟏, 𝒃𝟐, . . , 𝒃𝒏−𝟏, 𝒃𝒏)
𝒏
= 𝑷(𝑨) ∏ 𝑷(𝒃𝒊 |𝑨) (𝟑)
𝒊=𝟏
c) Árbol de decisión
El árbol de decisiones en esencia es un
diagrama de flujo, con una amplia
aplicabilidad, aunque no tienen un ajuste ideal
si los datos tienen un gran número de
características, esto genera una cantidad
enrome de decisiones y la complejidad del
árbol sería alta.
𝜷𝟎 + 𝜷 𝟏 𝑿 𝟏 + 𝜷 𝟐 𝑿 𝟐 = 𝟎 (𝟖)
El algoritmo escoge el mejor plano posible
buscando que exista el mayor margen de
separación entre las clases a dividir ya que es
muy probable que la línea (o el plano) con
mayor margen conduzca a una clasificación más
acertada en el futuro. Dentro de este
clasificador, existen los vectores de soporte, que
son aquellos puntos que están sobre el límite de
los planos de división, usando estos vectores es
que se define el MMH (maximal magin
hyperplane).
𝑵
𝑵𝒆𝒕𝒋 = ∑ 𝒙𝒊 𝒘𝒋𝒊 + 𝜽𝒋 (𝟔)
𝒑 𝑵
(𝒌) (𝒌) 𝟐
𝑬𝒓𝒓𝒐𝒓 = 𝟏 ∑ ∑(𝒚 − 𝒅 ) (𝟕)
En general las redes neuronales son alimentadas 𝟐𝑷 𝒌=𝟏 𝒋=𝟏 𝒋 𝒋
por la señal de entrada dirigiéndose en una
dirección continua de
Donde: f) Regresión Logística Multivariable
N: número de neuronas en la capa de
salida Las regresiones en general consideran la
P: número de patrones de relación que existe entre una variable
entrenamiento [10] numérica con una o más variables numéricas
dependientes o independientes. La regresión
Para la aplicación de este algoritmo logística es un método de regresión que
(específicamente para el factor de riego) se han relaciona una variable cualitativa binaria con
dispuesto de dos capas ocultas, para lograr la una o más variables cuantitativas. En este
mejor exactitud, toda vez que con una sola capa caso, utilizamos esta bondad de la regresión
la exactitud oscilaba entre el 30% y 40%, logística ya que la clasificación de los datos de
mientras que, con una capa extra, la exactitud tos se puede expresar de manera binaria. [11]
del método mejora a un 90% de exactitud.
La regresión logística permite modelar los
En la Ilustración 5, se muestra el diagrama que datos no linealmente sino con una función cuyo
corresponde a la red neuronal propuesta para el
sistema en mención; para este caso los pesos y rango esta siempre entre 0 y
kernel se obtienen del programa usando las 1. Una de las funciones más usadas en casos
librerías de Sk. Learn y sobre esos valores como este es la función sigmoide.
se realizan manualmente las funciones
RELU y Sigmoide correspondientes para cada 𝟏
capa de entrada y salida 𝝈(𝒙) = (𝟒)
respectivamente. 𝟏+𝒆 −𝒙
Este modelo se basa en asignar una
probabilidad (valor de la función) al clasificador
en donde discriminará unos datos de otro y
finalmente los clasificará según su nivel de
probabilidad. Por lo cual una vez estimados los
coeficientes del modelo logístico, es posible
conocer la probabilidad de que la variable
dependiente pertenezca al nivel de referencia,
dado un determinado valor del predictor. Para
ello se emplea la ecuación del modelo:
𝟏 ̂ ̂ (𝟓)
𝒑̂ (𝒀 = )= 𝒆𝜷𝟎 +𝜷 𝟏𝒙
𝜷̂ +𝜷̂ 𝒙
I. Matriz de Confusión
a) Clasificador KNN
DATOS DE PRUEBA
PREDICCIÓN ASPERS MICROASPER GOT
IÓN SIÓN EO
Ilustración 6. Ecuaciones clasificador de regresión ASPERSIÓN 15 0 0
logística MICROASPER 2 17 0
SIÓN
GOTEO 0 1 20
Clasificador Exactitu
d
Clasificador KNN 94%
Clasificador Naive Bayes 96%
Árbol de Decisión 99,20%
Máquina de Soporte Vectorial 49%
Red Neuronal (MLP) 96%
Regresión Logística
Multivariable 100%
a) Validación
Haciendo un estudio sobre el desempeño
de cada uno de los clasificadores, resulta ser
el clasificador de Regresión Logística
Multivariable el que mejor desempeño
presenta; con un rendimiento del 100% y
una matriz de confusión perfecta
(clasificando al 100%) se elige como el
clasificador estrella de todo el proceso de la
aplicación de los algoritmos de machine
learning.
b) Implementación
8. ANEXOS