ARK CAICYT: http://id.caicyt.gov.ar/ark:/s18539777/w7ehe0kze
DISEÑO DE UN AGENTE INTELIGENTE BASADO EN UNA RED NEURONAL ARTIFICIAL SUPERVISADA.
VALIDACIÓN EN UN DOMINIO BOTÁNICO
SONIA I. MARIÑO- CARLOS R. PRIMORAC
Departamento de Informática-Facultad de Ciencias Exactas y Naturales y Agrimensura. Universidad Nacional del Nordeste, Corrientes, Argentina.
simarinio@yahoo.com
Fecha recepción: diciembre 2020 Fecha aprobación: abril 2021
RESUMEN
Las Redes Neuronales Artificiales (RNA) se crearon para simular los componentes y las funciones del cerebro humano. Las propiedades de las RNA permiten aplicarlas en problemas de reconocimiento de patrones y clasificación, dado que son capaces de descubrir relaciones no aparentes entre variables, y por la tanto, dan significado a los datos. Se describe un agente inteligente cuyo elemento de desempeño son modelos supervisados de RNA. Su validación se aplicó para la identificación automática de tres especies vegetales del género Rollinia: R. salicifolia, R. emarginata y R. rugulosa. Se presentan los modelos construidos, validados, y aquel seleccionado a partir de los mejores resultados obtenidos mediante la evaluación del Error Cuadrático Medio y del porcentaje de los errores, éste se incorporó al agente inteligente. El agente consta de una interfaz de usuario a fines de asegurar su uso. La propuesta podrá adaptarse a otros dominios de conocimiento.
PALABRAS CLAVE: Agentes inteligentes, técnicas inteligentes, Redes Neuronales Artificiales, sistemas de reconocimiento, identificación, aplicaciones en dominios botánicos.
ABSTRACT
Artificial Neural Networks (ANN) were created to simulate the components and functions of the human brain. The properties of ANN enable problems apply in pattern recognition and classification, as they are able to discover no apparent relationships between variables, and both give meaning to data. An intelligent agent whose performance is monitored element models of RNA is described. Validation was applied to the automatic identification of three plant species of Rollinia: R. salicifolia, R. emarginata and R. rugulosa. The constructed and validated models are presented, and the one selected from the best results obtained by evaluating the Mean Square Error and the percentage of errors, this was incorporated into the intelligent agent. The agent consists of a user interface to ensure its use. The proposal may be adapted to other knowledge’s domains.
KEYWORDS: Intelligent agents, smart techniques, Artificial Neural Networks, recognition systems, identification, botanical applications domains.
1. INTRODUCCIÓN
La investigación en Inteligencia Artificial (IA) y en Ingeniería del Software (IS), permitió el desarrollo de herramientas computacionales empleadas como base de los denominados sistemas inteligentes (Obregón Neira y Fragala, 2003). Según Pressmann (2007), el software de IA es una de las siete grandes categorías del software de computadora que presentan retos continuos para los ingenieros de sistemas. La IS proporciona los métodos y las herramientas para construir software, y puesto que el software de IA es software de computadora, entonces se puede decir que existe una estrecha vinculación entre ambas disciplinas.
1.1 Agentes inteligentes para modelos de Redes Neuronales Artificiales
La revisión bibliográfica permitió detectar una diversidad de definiciones de la expresión agentes inteligentes, que podrían sintetizarse como fragmentos de software con características humanas diseñados y desarrollados para ejecutar una determinada acción.
En Russell y Norving (2004) se define a un agente como aquello capaz de percibir su ambiente con la ayuda de sensores y actuar en ese medio utilizando actuadores. Estos autores conciben a los agentes con capacidad para aprender en cuatro componentes conceptuales. i) el elemento de aprendizaje, ii) el elemento de desempeño, iii) el crítico y iv) el generador de problemas. El elemento de aprendizaje debe mejorar la eficiencia del elemento de desempeño, que se considera como todo el agente, es decir, quien recibe las percepciones y decide las acciones a emprender.
Una de las actividades de las tecnologías inteligentes se orienta a diseñar el software que implemente la función del agente que proyecta las percepciones en las acciones. Este software se ejecuta en algún tipo de computadora, con sensores físicos y actuadores, denominada arquitectura. Es decir, el agente está compuesto por una arquitectura más un software de computadora
El diseño del elemento de aprendizaje depende de i) los componentes del elemento de acción tienen que aprenderse, ii) la realimentación disponible para aprender estos componentes y, iii) la representación utilizada en los componentes. En la IA se han producido una gran variedad de elementos de aprendizaje. En uno de sus dos paradigmas, paradigma conexionista o subsimbólico, se inscriben las Redes Neuronales Artificiales (RNA). Éstas se crearon para duplicar y simular los componentes y las funciones del cerebro humano (Castillo, Cobo, Gutierrez y Pruneda, 1999; Russell y Norving, 2004).
Desde un punto de vista computacional, el aprendizaje se trata de métodos para la representación de funciones utilizando redes de elementos sencillos de cálculo aritmético y de métodos para aprender esas representaciones a partir de ejemplos. Las RNA se valen de un modelo matemático en que sus elementos de cálculo aritmético se corresponden con las neuronas, las células que procesan la información en el cerebro, y la red como un todo concierne a una colección de neuronas interconectadas.
Los modelos de RNA pueden responder al aprendizaje supervisado o no supervisado. En este caso, la propuesta se sitúa en el primero de ellos. Es decir, el aprendizaje supervisado requiere de un conjunto de ejemplares o patrones certeramente identificados o comprendidos en una de las clases o categorías de variables de salida que se contemplan en el modelo del dominio.
En Vargas Sállago, López Cruz y Rico García, (2012) se menciona que los modelos matemáticos como herramientas, permiten “probar hipótesis, sintetizar conocimiento y entender complejos sistemas, así como comparar diferentes escenarios; además, han sido empleados en sistemas de apoyo a toma de decisiones” (p. 748). Así, las RNA como modelos matemáticos de representación y simulación del conocimiento de los especialistas en un dominio son ampliamente utilizadas en vastos contextos para apoyar la toma de decisiones. Abiodun, Jantan, Omolara., Dada., Mohamed y Arshad (2018) presentan un estudio ejemplificando las numerosas aplicaciones de las RNA en diversas disciplinas, entre las que se mencionan computación, ciencia, ingeniería, medicina, medio ambiente, agricultura, minería, tecnología, clima, negocios, artes y nanotecnología. En particular, a continuación, se presentan algunos antecedentes de la aplicación de esta tecnología en la Botánica.
1.2 Algunos antecedentes del uso de tecnologías informáticas en Botánica
Besnard et al. (2018) exponen una síntesis de cómo la ciencia del siglo XXI basada en los ejemplares del herbario posibilita abordar otros estudios e investigaciones. En Mariño y Dematteis (2014) se presentó un relevamiento aplicado al dominio de conocimiento botánica, a través del cual se identificaron distintos modelos computacionales para simular la identificación de entidades.
Esta indagación se actualiza periódicamente identificándose a las RNA como una estrategia de apoyo a la toma de decisiones. Entre otros antecedentes se mencionan los resultados expuestos en Hernandez-Serna y Jimenez-Segura (2014) donde se aplican RNA para el reconocimiento de patrones. En Mariño y Primorac (2016), Mariño (2019a, 2019b) a efectos de validar el comportamiento de modelos supervisados de RNA y contrastar con el conocimiento del especialista. Zhang, Kong, Zeng y Ren (2008), proponen un modelo de red neuronal de mapa de características autoorganizado (SOM) aplicado a la identificación de especies de plantas utilizando imágenes de hojas, basado en las características de textura de la nervadura. En Vargas Vargas Sállago, López Cruz y Rico García (2012) proponen estas tecnologías para simular fotosíntesis en jitomate. Ledford (2017) propone el uso de métodos de aprendizaje profundo para clasificar los numerosos ejemplares de herbario. Sun, Liu, Wang y Zhang (2017) se presenta el primer conjunto de datos de imágenes de plantas recopiladas por teléfono móvil, y un modelo de aprendizaje profundo para la clasificación de plantas a gran escala en un entorno natural. En Piscoya Ferreñan (2019) se propone el uso de la visión artificial para apoyar en la identificación de plagas y enfermedades del cultivo de sandía. Buonomo Giacoponello (2019) plantea el uso de redes neuronales convolutivas para lograr aprendizaje y decisión supervisada a partir de imágenes. Jafari y Shahsavar (2020) presentan un modelo para predecir las respuestas morfológicas (longitud de la hoja, número de hojas / plantas, diámetro de la copa, altura de la planta y longitud de los entrenudos) de los cítricos al estrés por sequía, basándose en cuatro variables de entrada,
En el campo de la Botánica, la identificación de los taxones se realiza sobre la base de ejemplares con flores y frutos. Los ejemplares estériles son difíciles de identificar con los métodos tradicionales empleados por los botánicos. Frente a este problema, las propiedades de las RNA permitirán usarlas en la clasificación o identificación de patrones (ejemplares botánicos), dado que son capaces de descubrir relaciones no aparentes entre variables, y por la tanto, dan significado a los datos.
En el artículo se propone el abordaje de modelos de RNA desde la definición de un agente inteligente. En particular, el agente utiliza un modelo supervisado de RNA para la identificación de especies vegetales (taxones). La arquitectura es una computadora, cuyos sensores son el teclado y el mouse y como actuador el monitor. Incluye una interfaz gráfica de usuario, que permite recibir las percepciones del ambiente a través de los sensores mencionados y visualizar las acciones del agente en el monitor. El software, que implementa la función que proyecta las percepciones en las acciones, es un software de cálculo científico.
Para validar la propuesta, el agente actúa como sistema de reconocimiento en un dominio de la botánica para la identificación de tres especies del género Rollinia: R. salicifolia (RS), R. emarginata (RE) y R. rugulosa (RR), a partir de las características de sus hojas.
2. METODOLOGÍA
La metodología aplicada en el diseño y desarrollo del software del agente inteligente surgió de integrar el modelo de proceso evolutivo incremental (Pressmann, 2007) y un método diseñado ad-hoc Mariño, (2019a, 2019b) para entrenar los modelos supervisados de RNA. Los datos botánicos empleados se validaron por un experto como se describe en Mariño y Tressens. (2001). A continuación, se mencionan las etapas abordadas.
Etapa 1. Estudio y análisis de factibilidad
El estudio y análisis de la factibilidad implicó elaborar la estimación de los recursos necesarios y los escenarios posibles para modelar y simular el problema utilizando una tecnología inteligente. En este caso, permitió establecer claramente los límites del agente inteligente para identificar las especies. Como paso fundamental y previo a la etapa de selección de la herramienta se observaron las necesidades del sistema y los usuarios, y la aplicabilidad con miras a acotar los posibles lenguajes o herramientas utilizados a tal efecto.
Etapa 2. Análisis del Agente Inteligente
La etapa 2 orientada al análisis del agente inteligente propuesto, se compuso de las siguientes fases:
La construcción de un agente inteligente implicó definir la jerarquía de usuarios intervinientes en el modelo propuesto, como se presenta en la Figura 1. Como se expresó en Mariño (2019c) estos sujetos intervienen en distintas etapas del proceso del diseño, construcción y validación del agente inteligente. Por ello, las consideraciones contempladas para sistemas inteligentes se extienden al agente inteligente que se describe. En particular los usuarios finales, pueden ser especialistas en el dominio de conocimiento representado en el artefacto o especialistas de otros dominios, o usuarios finales.
En la propuesta, la definición de los especialistas informáticos, contemplan tanto al ingeniero de sistemas como al ingeniero en conocimiento. El primero también puede representar un equipo de personas dedicadas al análisis, diseño, desarrollo e implementación del agente software. El segundo es responsable de obtener el conocimiento del dominio que se aborda y representarlo en un esquema manipulable por el agente inteligente. Específicamente, el proceso de construcción del modelo de RNA, implica la captura de la experiencia del experto en el dominio del conocimiento (EDC), que plasmado en los patrones de los archivos de entrenamiento y validación transforma el conocimiento implícito en conocimiento explícito.
Los EDC actúan como fuentes de información, cuyo conocimiento puede combinarse con el obtenido de la observación directa o de textos especializados en el dominio.
Al diseñar un software un interrogante muy importante se vincula con los potenciales usuarios. Los destinatarios o usuarios finales (UF) son otros especialistas, los principiantes y los usuarios. En este estudio de caso, estaría representado por los botánicos o interesados en el reconocimiento de especies de Rollinia.
Se estableció de manera clara y precisa el conjunto de requerimientos a satisfacer. Se determinaron requerimientos funcionales y no funcionales. Un requerimiento no funcional se establece en disponer una interfaz de usuario que apoye la apropiación del sistema por parte de los usuarios finales.
FIGURA 1. Definición de usuarios intervinientes en el agente software. (Mariño, 2019c)
Etapa 3. Diseño del Agente
Las fases de esta etapa consistieron en:
· Diseño de interfaces. La tendencia actual se orienta a diseñar interfaces centradas en los usuarios, lo que influye en la selección de las herramientas de programación.
· Diseño del prototipo. Consistió en la elaboración de prototipos incrementales, incluyendo opciones funcionales. Es así como esta técnica permite acercarse a los reales requerimientos de los usuarios de modo de asegurar que al final del proceso se obtenga un agente inteligente que se ajuste a sus necesidades.
· Definición de la arquitectura. En base a los requerimientos funcionales y no funcionales, se decidió por una computadora personal o portátil.
· Selección y evaluación de las herramientas de software. Se abordó la selección de un software de cálculo científico que incluya herramientas para la modelización de RNA supervisadas. En la selección de las mismas se mencionan características como la velocidad de ejecución, requerimientos del sistema, interfaces de usuario, número de nodos y capas a especificar. Otras características incluyeron la posibilidad del diseño de interfaces graficas de usuario y compiladores que permitan distribuir las aplicaciones en forma autónoma posibilitando la distribución a usuarios que no cuenten con el software de cálculo científico.
· Definición de modelos neuronales de clasificación o identificación. Esta etapa se vinculó a la recopilación de los datos y determinación de variables de entrada y salida en función a los requerimientos obtenidos. A continuación, se sintetizan las actividades realizadas:
Etapa 4. Desarrollo del Agente Inteligente
En el desarrollo se distingue la construcción de los modelos supervisados de RNA y la programación de otros componentes del agente inteligente que integran los modelos de clasificación automática.
· Construcción de modelos de RNA. Se realizó un estudio y revisión de conceptos relacionados con la topología de una red neuronal, dimensionamiento de la red, arquitectura de una RNA, algoritmos de aprendizaje. Se seleccionó el método de aprendizaje supervisado por considerarse el más adecuado al problema y que presenta mayor validez en amplios dominios del conocimiento. A continuación, se sintetizan las actividades desarrolladas:
• Definición de la Arquitectura. El modelo de RNA empleado el problema de reconocimiento de patrones planteado es el Perceptrón Multicapa (MLP). Los MLP son redes de alimentación hacia delante (feedforward), con una o más capas de unidades ocultas entre las unidades de entrada y las de salida (Beale, Hagan y Demuth, 2010).
• Definición de archivos de datos. El conjunto de datos disponible se dividió aleatoriamente en tres subconjuntos: entrenamiento compuesto por un 80% de los datos, un 10% destinado a la validación y otro 10% reservado para el testeo. El subconjunto de entrenamiento se empleó para calcular el gradiente y actualizar pesos y error de la red. El subconjunto de validación permitió monitorear el error durante el proceso de entrenamiento. El subconjunto de testeo no se utilizó durante el entrenamiento, sino para comparar modelos diferentes.
• Creación, configuración e inicialización de la red. Siguiendo lo expuesto en [7], para la clasificación de las tres especies se utilizó una red con tantos nodos de entrada como variables independientes y tantos nodos de salida como variables dependientes. Cada nodo de entrada se corresponde con un atributo simple que representa una entrada a la red. El conjunto de datos se conservó en el archivo “rolliniaDataset.mat”. Los datos de entrada se dispusieron como vectores columnas en una matriz y los datos de salida como vectores columnas en otra matriz, en el cual un 1 indica con que clase se corresponde el conjunto de datos de entrada dados. Para cada modelo de red se creó el archivo “*.mat”, que contiene información de la estructura de la red, performance, valores de salidas y errores. Se configuró el número de épocas igual a 1000.
· Entrenamiento de la red. Definida la topología de la RNA y con fines de experimentación, se propusieron distintas configuraciones modificando el número de nodos y capas intermedias, funciones de activación y parámetros, debido a que se carece de un procedimiento específico para definir a priori como lograr un aprendizaje óptimo en modelos de RNA. En el entrenamiento de la red se aplicó una variante del algoritmo de retropropagación de errores basado en el Gradiente Conjugado Escalado (Moller, 1990). En cada uno de los entrenamientos de la red, los pesos, errores y primeros estados de la red se inicializaron aleatoriamente.
· Ejecución de los modelos. Se entrenaron los modelos de RNA utilizando el algoritmo seleccionado. En la Figura 2 se muestra la topología del Modelo de RNA diseñado, entrenado y validado. El modelo constó de seis neuronas en la capa de entrada y tres en la capa de salida, correspondiente respectivamente a las variables de entrada y de salida, representativas de los posibles valores que asume el nombre de la especie.
· Análisis y selección de los modelos. Este proceso permite asegurar que el modelo represente una descripción adecuada del fenómeno en estudio considerando los objetivos planteados. Se realizaron los siguientes estudios a fin de optar el modelo más apropiado:
• Aplicación de medidas de calidad: Se aplican a fines de evaluar y seleccionar el rendimiento de los modelos. i) Error Cuadrático Medio (Mean Square Error. MSE) que representa el promedio de las diferencias al cuadrado entre las salidas de la red y las salidas deseadas (Ecuación. 1). ii) Porcentaje de Error (%E), que indica el porcentaje de los ejemplos clasificados erróneamente.
• Generación y análisis de las representaciones graficas disponibles: Matriz de Confusión. Las matrices de confusión son típicamente utilizadas para validar aplicaciones de reconocimiento de patrones.
Ecuación 1
Donde: : valores observados, : valores estimados, r: número de puntos
· Desarrollo del software. Se desarrolló el software del agente o sistema de reconocimiento
• Desarrollo de interfaces y códigos de programación. Se construyó una versión preliminar o prototipo, orientada a comunicar la visión entendida a partir de la obtención de requerimientos. Se concretaron las siguientes actividades: i) Diseño de las interfaces, ii) Desarrollo de las mismas, iii) Definición de funcionalidades del entorno. El diagrama de secuencia de la Figura 3 ilustra la interacción del agente con su ambiente.
• Integración de modelos neuronales. Construidos y validados los modelos neuronales, estos se incorporaron al agente para que simulara su actuación como un sistema de reconocimiento. Así mismo, se agregaron otras opciones para facilitar la experimentación de usuarios no informáticos.
Finalizado el desarrollo de los modelos, es imprescindible verificar su correcto funcionamiento. Se deben implementar validaciones internas y externas. Ambas, realizadas por los autores del trabajo.
FIGURA 2. Topología del Modelo de RNA del caso de estudio
FIGURA 3. Diseño de la interacción del agente con su ambiente
Etapa 5. Implementación
La implementación constó de las siguientes fases:
• Validaciones. Finalizado el desarrollo, se verificó su correcto funcionamiento. Se comprobó: i) la navegación o estructuración de las interfaces permitió acceder correctamente a los contenidos del sistema. ii) la velocidad entre el usuario y el programa (lectura de datos, simulaciones, entre otros aspectos) resultó adecuada. iii) ejecución del programa incluido para actuar como simulador de los problemas abordados.
• Despliegue. Se dispone de un software que permitirá a los usuarios interactuar con fines de disponer una opción de apoyo al reconocimiento automático de especies, en este caso de tres especies del género Rollinia.
• Documentación del agente inteligente. Cabe aclarar que la documentación, como buena práctica desde la Ingeniería del Software, se abordó a lo largo del proyecto, consistiendo en documentar las actividades comprendidas en el análisis, diseño, desarrollo e implementación de la solución de agente inteligente propuesto.
3. RESULTADOS
A continuación, se exponen los resultados atendiendo a los siguientes aspectos: i) los modelos entrenados y validados utilizando la herramienta de cálculo científico, ii) el agente inteligente, como un sistema de reconocimiento y el despliegue de una herramienta para especialistas en botánica, un agente inteligente que actúa como un sistema de reconocimiento para identificar especies.
3.1 Modelos entrenados y validados utilizando la herramienta de cálculo científico
La Tabla 1 ilustra la configuración de los modelos de redes neuronales y los parámetros de entrenamiento correspondientes. La topología indica el número de unidades en la capa de entrada, en las capas ocultas y en la capa de salida, valores separados por dos puntos. La magnitud del gradiente se utiliza como criterio para detener el entrenamiento. Los parámetros lambda y sigma se emplean para la optimización del algoritmo del gradiente conjugado escalado. Como se observa, la definida para el modelo identificado como network02, es similar a la del modelo elegido como óptimo en [7].
Modelo |
Topología |
Parámetros de Aprendizaje |
|||
Épocas |
Gradiente Mínimo |
Sigma |
Lambda |
||
network01 |
6:4:3 |
1000 |
1.0e-6 |
5.0e-5 |
5.0e-7 |
network02 |
6:5:3 |
1000 |
1.0e-6 |
5.0e-5 |
5.0e-7 |
network03 |
6:6:3 |
1000 |
1.0e-6 |
5.0e-5 |
5.0e-7 |
network04 |
6:7:3 |
1000 |
1.0e-6 |
5.0e-5 |
5.0e-7 |
TABLA 1: Configuración de los modelos de redes neuronales empleados
Como se mencionó previamente, se utilizó una herramienta de cálculo científico para el diseño y entrenamiento de los modelos de RNA presentados en la Tabla 1 y se procedió a comprobar el rendimiento de cada uno de ellos.
Para seleccionar la mejor configuración, se analizaron las medidas de calidad definidas por el error cuadrático medio (MSE) y el porcentaje de error (%E). En la Tabla 2 se indican estas medidas para cada una de las configuraciones. Los modelos identificados como network01 y network02, se descartaron considerando los valores obtenidos en las medidas de calidad MSE y %E
Entre los modelos network03 y network04, se eligió el segundo, puesto que presenta el menor valor del MSE y %E para cada uno de los conjuntos de datos respectivamente es cero. Este modelo está compuesto por 7 nodos en la capa oculta, y entrenado con el método del Gradiente Conjugado Escalado (Beale, Hagan y Demuth, 2010).
Modelo |
Épocas |
MSE |
%E |
||||
Entrenamiento |
Validación |
Test |
Entrenamiento |
Validación |
Test |
||
network01 |
27 |
3.01312e-2 |
5.82292e-2 |
9.63939e-2 |
7.01754e-0 |
14.28571e-0 |
14.28571e-0 |
network02 |
22 |
2.67781e-2 |
1.69727e-2 |
1.79579e-3 |
5.26315e-0 |
0 |
0 |
network03 |
50 |
2.73266e-5 |
1.27712e-5 |
2.50897e-5 |
0 |
0 |
0 |
network04 |
55 |
3.07611e-7 |
5.17595e-6 |
1.12795e-5 |
0 |
0 |
0 |
|
|
|
|
|
|
|
|
TABLA 2. Análisis de las medidas de calidad
La matriz de confusión puede ser utilizada para visualizar y evaluar la precisión de la clasificación sobre este conjunto de datos. Presenta una visión general de las asignaciones correctas (los valores en la diagonal) e incorrectas (los valores ubicados fuera de la diagonal, de omisión en las filas y de comisión en las columnas) (Ariza, Pinilla y Garcia, 2011). En ella cada columna representa el número de predicciones de cada clase, mientras que cada fila las instancias en la clase real. En el aprendizaje supervisado, una cuestión importante radica en la utilidad para determinar si el sistema está confundiendo entre clases (Zaknich, 2003).
La Figura 4, ilustra las matrices de confusión para el entrenamiento, validación, testeo y los tres tipos de conjuntos de datos combinados, para el modelo seleccionado como óptimo. El porcentaje de predicciones del modelo muestra ser exacto como se puede apreciar en la diagonal principal -dispuestas en las casillas verde-, mientras que el porcentaje de predicciones incorrectas – indicadas en las casillas rojas- es exactamente cero. El porcentaje global de exactitud del modelo, para predecir entre estos tres taxones (en casillas de color azul) es del 100%.
Finalizado el entrenamiento y la validación, el modelo de RNA seleccionado como una mejor representación del conocimiento, se puede utilizar para calcular las respuestas a cualquier nuevo patrón de datos. Es decir, en el caso de la experimentación presentada, testear su comportamiento con un nuevo ejemplar perteneciente a una de las tres especies de Rollinia estudiadas.
El uso directo de software de cálculo científico puede resultar poco accesible para los especialistas en botánica, puesto que se trabaja con modelos matemáticos y, en general con entornos de programación en los que se utiliza la línea de comandos.
Por ello, para asegurar la adopción del agente inteligente por los usuarios se desarrolló una interfaz gráfica. La misma permite seleccionar el modelo de identificación, a partir de uno previamente construido y validado, e ingresar los atributos del nuevo ejemplar (Figura 5). Al presionar el botón “identificar” se ejecuta el procesamiento. El modelo neuronal determina el taxón más probable en base al modelo de RNA elegido.
FIGURA 4. Matriz de confusiones del modelo seleccionado
3.2 Propuesta de agente inteligente
El agente inteligente propuesto, se representa en la Figura 5 como un sistema de reconocimiento, centrado en el proceso de identificación de botánica.
Este agente inteligente incluye funcionalidades propias de la IA simulando: i) inteligencia: razona y aprende a partir de la información que obtiene; ii) interactividad: interactúa con su entorno, es decir, recupera los valores observados e ingresados en la interfaz por el EDC y UF y a partir de los mismos propone una respuesta desplegada en la interfaz. Además, es factible mediar la comunicación con otros agentes, a modo de ejemplo se menciona brindar información complementaria del nombre de la especie propuesta como respuesta por el agente inteligente; iii) autonomía: puede tomar decisiones autónomamente, a partir del modelo de RNA previamente entrenado y validado por el EDC. Es decir, el agente aprende una función que a partir de un patrón numérico identifica la especie a de pertenencia del ejemplar botánico.
La arquitectura del agente es una computadora, cuyos sensores son el teclado y el mousse y como actuador el monitor. La arquitectura incluye una interfaz gráfica (Figura 5) de usuario, que permite recibir las percepciones del ambiente a través de los sensores mencionados y visualizar las acciones del agente mediante el monitor. La arquitectura, utiliza un software de cálculo científico, para el procesamiento inteligente, que implementa la función del agente que proyecta las percepciones en las acciones.
Así, por medio de los sensores, el agente recibe los datos del ejemplar botánico a reconocer o identificar. Estos valores son ingresados por teclado en la interfaz gráfica (Figura 6) a través de panel “Atributos”. A continuación, se ejecuta el software del agente que implementa la función para identificar el ejemplar en base a estos atributos (las percepciones) y, a través de los efectores, visualiza el nombre de la especie a la cual pertenece el mismo (las acciones). Estas acciones se visualizan en la misma interfaz, en el panel “Identificación” y mediante la gráfica de barras. La importancia de incluir interfaces de usuario en sistemas inteligentes se orienta a lograr el uso de las tecnologías inteligentes en usuarios finales (Mariño y Alfonzo, 2017).
Además, de percibir los atributos del ejemplar a reconocer, otra de las percepciones que recibe el agente, es la acción de identificar, la cual se recupera a través de la misma interfaz gráfica por medio del botón “Identificar”.
FIGURA 5. El agente inteligente cómo un sistema de reconocimiento.
FIGURA 6. La interfaz gráfica. Componente de la arquitectura del agente.
Puede decirse que se trata de un agente reactivo, dado que devuelve una solución ante el problema de identificación de taxones planteado y ésta es plasmada en la casilla Identificación.
§ El elemento de desempeño dispone del conocimiento y procedimientos que tiene el sistema de reconocimiento para elegir sus acciones, es decir, para determinar dados los valores de un ejemplar botánico a que especie pertenece.
§ El elemento de aprendizaje es el modelo de RNA que considera los componentes del elemento de desempeño que se deben aprender, la retroalimentación para aprenderlos y el tipo de representación para esos componentes. En este trabajo el aprendizaje de la RNA aborda la identificación de las especies (componentes) por medio de ejemplos (aprendizaje supervisado) a una RNA (el formalismo de representación)
§ El generador de problemas es el componente que permite obtener nuevas experiencias que aporten información. Siguiendo a Rusell y Norving (2004) emula al científico cuando realiza sus ensayos, y se definió:
§ Consiste en los distintos modelos de RNA construidos, entrenados y validados a partir de la definición de una serie de parámetros establecida por el IC y el EDC, y requeridos en los modelos supervisados y por las variables de entrada y salida representadas en los nodos de la RNA.
§ Es un componente semi-automático dado que se genera un nuevo modelo neuronal cuando el IC y el EDC determinan la necesidad de disponer de uno y lo diseñan como una respuesta.
§ Se prevé como futura línea de trabajo automatizar el aprendizaje a partir de nuevos patrones o patrones con ruido. Es decir, el modelo implementado a nivel de prototipo implica el desarrollo de los problemas que luego son incluidos.
§ El elemento identificado como crítico, tiene por función informar al elemento de aprendizaje su evaluación respecto al desempeño del agente. En este sentido Russell y Norving (2004) recomiendan que “la norma para juzgar el desempeño sea una medida fija que conceptualmente este fuera del agente”, es así como se evitaría que las normas se ajusten al comportamiento. En el presente trabajo, se propone la actuación de este elemento en los siguientes casos: i) durante el entrenamiento cuando mide el desempeño utilizando alguna medida de calidad, por ejemplo analizar el error en el conjunto de validación y determinar si realmente generaliza o simplemente memoriza patrones, por ejemplo, la aplicación del criterio de detención temprana, ii) la medida del error en el conjunto de testeo, si se considera un tercer conjunto de patrones denominados como prueba o testeo, que contiene datos no utilizados durante el proceso de entrenamiento y de validación, entonces es el EDC quien cumple la función de crítico.
En dominios complejos, como aquellos asociados a la identificación de taxones, se requiere de grandes volúmenes de datos para inferir con la mejor proximidad para todas las situaciones posibles. En el agente inteligente diseñado, se prevé un módulo de aprendizaje que ante una situación de conflicto –los datos brindados como respuesta por el agente difirieren del conocimiento del especialista – permita evolucionar el modelo de RNA. Este proceso puede analogarse con el denominado aprendizaje continuo como es referido en algunas herramientas software.
4. CONCLUSIONES
Los aportes de este artículo giran en torno a un agente inteligente que se desempeña como un sistema de reconocimiento de taxones utilizando modelos supervisados de RNA previamente entrenados y validados. El prototipo software que implementa la solución tecnológica, podrá ser utilizado independientemente por especialistas botánicos. Es de interés presentar enfoques interdisciplinarios en contextos de educación superior. En la formación de licenciados en sistemas, y dada la evolución de diversas tecnologías emergentes, es menester fomentar en los estudiantes el desarrollo de competencias en equipos interdisciplinarios. Especialmente, en el abordaje del modelado y la experimentación con problemas relacionados con la investigación aplicada.
En referencia al agente inteligente descripto, se optó por una herramienta de cálculo científico en la construcción de distintos modelos supervisados de RNA en base a los datos proporcionados por el EDC, posibilitando la especificación de diversos parámetros de aprendizaje. Por otra parte, la conjunción de las funcionalidades provistas por la herramienta de RNA utilizada permitió la definición de distintas arquitecturas de modelos conexionistas supervisados que se constituyen en el elemento de aprendizaje del agente inteligente.
En cuanto al caso de estudio, este modelo de red neuronal multicapa contribuye a experimentaciones como las expuestas en otros trabajos del área de Biología, y que podría presentarse como una estrategia alternativa para apoyar toma de decisiones en el dominio de la Biología. Particularmente, la construcción de modelos de RNA para apoyar la toma de decisiones en el proceso de identificación, permitió seleccionar aquel modelo que presentó mejores resultados para el reconocimiento de los patrones o ejemplares botánicos. Es decir, este modelo refleja el conocimiento de un especialista botánico plasmado en un sistema artificial inteligente para su simulación computacional. Asimismo, se destaca la precisión del modelo seleccionado como óptimo, aun cuando se dispuso de un número relativamente bajo de ejemplares con los cuales se entrenó y validó. Lo expuesto puede sustentarse en que los datos que conforman los patrones de entrenamiento y de prueba representan el conocimiento de un especialista de este dominio de conocimiento.
La matriz de confusión, como herramienta de análisis de resultados, se aplicó dadas sus capacidades predictivas, permitiendo examinar el grado de precisión con el cual distingue las clases el modelo seleccionado. Como se ilustra en las gráficas comparativas los valores obtenidos para una determinada especie son muy similares a los valores esperados. Además, proporciona una medida global de exactitud del modelo neuronal en el proceso de identificación.
Actualmente, existe una vasta área de estudio orientada al diseño de interfaces centradas en los potenciales usuarios. El agente inteligente utilizado ha permitido desarrollarlas, adecuándose a los requerimientos pre-establecidos. Se espera lograr su validación con usuarios especialistas a fin de generar información de realimentación para el mejoramiento de estas. Por lo expuesto, se realizó un abordaje integral de la Inteligencia Artificial representada por un método conexionista para simular el conocimiento del experto y la Ingeniería del Software, que proporciona sus métodos y herramientas para la construcción de agentes inteligentes.
5. AGRADECIMIENTOS: A la Universidad Nacional del Nordeste. A la Prof. Sara Tressens por su invalorable apoyo.
6. REFERENCIAS
Abiodun O. I, Jantan A., Omolara A. E., Dada K. V., Mohamed N A.M Arshad, H. (2018). State-of-the-art in artificial neural network applications: a survey. Heliyon 4 (11). https://doi.org/10.1016/j.heliyon.2018.e00938
Ariza F.J., Pinilla C. y Garcia J. L. (2011). Comparación de matrices de confusión celda a celda mediante bootstraping. Http://Coello.Ujaen.Es/Asignaturas/Pcartografica/Pqcarto/Cpqc28/Bootstrapping_Matrices_Confusion.Pdf. Consulta: 05/02/2011.
Beale M. H., Hagan M. T. y Demuth H. B. (2010). Neural Network Toolbox 7. User’s Guide. The Matworks Inc.
Besnard G, Gaudeul M, Lavergne S, Muller S, Rouhan G, Sukhorukov A P., Vanderpoorten A Y Jabbour F (2018). Herbarium-based science in the twenty-first century. Botany Letters, 165:3-4, 323-327. https://doi.org/10.1080/23818107.2018.1482783
Buonomo Giacoponello, G. E. (2019). Clasificación supervisada de imágenes mediante redes neuronales convolutivas. Proyecto fin de carrera / Trabajo fin de grado, E.T.S.I. de sistemas informáticos (UPM), Madrid.
Castillo E., Cobo A., Gutierrez J. M. y Pruneda R. E. (1999). Introducción a las redes funcionales con aplicaciones. Ed. Paraninfo,
Colmenares, G. (2000). Stratified/PCA: un método de preprocesamiento de datos y variables para la construcción de modelos de redes neuronales. Revista Economía,16:1-31. En Http://Iies.Faces.Ula.Ve/Cdcht/Cdcht%20e2170309b/Articulos/Revista-Economia-16.Pdf.
Hilera J. R. y Martínez V. J. (1995). Redes Neuronales Artificiales. Madrid, Ra-Ma,
Hernandez-Serna, A. y Jimenez-Segura, L. (2014). Automatic identification of species with neural networks. Peerj. 2. E563. 10.7717/Peerj.563.
Jafari M, Shahsavar A (2020). The application of artificial neural networks in modeling and predicting the effects of melatonin on morphological responses of citrus to drought stress. PLoS ONE 15(10): e0240427. https://doi.org/10.1371/journal.pone.0240427
Ledford, H (2017). Artificial intelligence identifies plant species for science, Nature, Doi: 10.1038/Naturaleza.2017.22442
Mariño S. I. y Tressens. (2001). Artificial neural networks application in the identification of three species of Rollinia (Annonaceae): Ann. Bot. Fenicci, 38: 215-224.
Mariño S. I. Y Primorac C. R. (2016). Propuesta Metodológica Para Desarrollo De Modelos De Redes Neuronales Artificiales Supervisadas. International Journal of Educational Research and Innovation (Ijeri), 6, 231-245
Mariño S. I. (2019a). A model of software process generation of a connectionist systems. Journal Of Multidisciplinary Engineering Science and Technology (Jmest) Issn: 2458-9403 Vol. 6 Issue 3, March – 2019, 9676-9681.
Mariño S. I. (2019b). Simulación En La Identificación De Mirtáceas Basado En Redes Neuronales Artificiales Supervisadas, Investigación Operativa, Año Xxvii - Nº 45, Pp. 25-41.
Mariño S. I. (2019c). Modelo De Gestión De Conocimiento Como Apoyo A La Toma De Decisiones Basado En Una Tecnología Inteligente. Descubrimiento Y Validación En Dominios Botánicos, Tesis Doctoral En Ciencias Cognitivas, Universidad Nacional Del Nordeste.
Mariño, S. I. y Alfonzo, P. L. (2017). Una propuesta de integración de interfaces de usuario en métodos de minería de datos. Investigación Operativa, 25 (41): 42-53.
Moller, M. F. (1990). A scaled conjugate gradient algorithm for fast supervised learning. November 13, Computer Science Department University of Aarhus Denmark.
Piscoya Ferreñan, J.E. (2019). Sistema de visión artificial para apoyar en la identificación de plagas y enfermedades del cultivo de sandía en el distrito de ferreñafe. Tesis para optar el título de Ingeniero de Sistemas y Computación.
Obregón Neira N. Y Fragala F. (2003). Sistemas inteligentes, ingeniería e hidroinformática. Ciencia E Ingeniería Neogranadina, 13, 71-82. Consulta:31/03/2011.Http://Redalyc.Uaemex.Mx/Src/Inicio/Artpdfred.Jsp?Icve=91101308.
Pressmann, R. (2007). Ingeniería Del Software. Ed. Prentice Hall.
Russell S. J. y Norving P. (2004). Artificial Intelligence. A Modern Approach. Prentice- Hall Inc.
Sun Y., Liu Y., Wang G. y Zhang H. (2017). Deep learning for plant identification in natural environment. Comput Intell Neurosci. Doi: 10.1155/2017/7361042. Epub 2017 May 22. Pmid: 28611840; Pmcid: Pmc5458433.
Vargas Sállago, J. M, López Cruz, I. L. y Rico García, E. (2012). Redes neuronales artificiales aplicadas a mediciones de fitomonitoreo para simular fotosíntesis en jitomate bajo invernadero. Revista Mexicana de Ciencias Agrícolas, 3(Spe4), 747-756. Recuperado el 18 de febrero de 2021,Http://Www.Scielo.Org.Mx/Scielo.Php?Script=Sci_Arttextypid=S2007-09342012000900018ylng=Esytlng=Es.
Zaknich A. (2003). Neural networks for intelligent signal processing. World Scientific Publishing Co. Pte. Ltd,
Zhang, L, Kong, J, Zeng, X. Y Ren, J (2008). Plant species identification based on neural network. Fourth International Conference on Natural Computation, Doi: 10.1109/Icnc.2008.253.
L. Zhang, J. Kong, X. Zeng and J. Ren (2008). Plant Species Identification Based on Neural Network. Fourth International Conference on Natural Computation, 2008, pp. 90-94, doi: 10.1109/ICNC.2008.253.