Download Construcción de una red neurona1 artificial para clasificar
Document related concepts
Transcript
Universidad de Costa Rica Sistema de Estudios de Posgrado Construcción de una red neurona1 artificial para clasificar cantos de aves: una aplicaciin de la inteligencia artificial a la biología Tesis sometida a la consideración de la Comisión del Programa de Estudios de Posgrado en Computación e Informática para optar al grado de Magíster Scientiae Arturo Castro Ramírez Ciudad Universitaria Rodrigo Facio, Costa Rica 2006 Redes neuronales artificiales aplicadas a la biología I Esta tesis fue aceptada por la Comisión del Programa de Estudios de Posgrado en Computación e Informática de la Universidad de Costa Rica, como requisito parcial para optar al grado Magíster Scientiae Ms. Luis Golcher Varguil (Representante del Decano del Sistema de Estudios de Posgrado) PhD. Juan José Vargas $?)?,o*& PhD. Gabriela Marín (Co-directora de la tesis) (Co-director de la tesis) PhD. Gilbert Barrantes (Lector) PhD. Alvaro de la Ossa (Lector) PhD. Marcelo Jenkins (Representante del Director del Programa) Diciembre, 2006 Redes neuronales artificiales aplicadas a la biología ¡¡ A mlS padres Grace y Arturo Redes neuronales artificiales aplicadas a la biología ... 111 Agradecimientos Esta investigación fue realizada gracias al aporte y contribución de muchas personas a las que quisiera extender mi más sincero reconocimiento. Primeramente quiero expresar una profunda gratitud a mi directora de tesis la Doctora Gabriela Marín por el invaluable apoyo brindado a lo largo de todo este proceso, por su continua motivación, impecable profesionalismo y por estar presente en todo momento, tanto a nivel académico como personal. Su contribución a mi desarrollo profesional será apreciada siempre. Así mismo, deseo agradecer a mi director el Doctor Juan José Vargas por sus valiosos y acertados aportes a la investigación, por su rigurosidad científica y por las acaloradas discusiones alrededor de los temas trascendentales de la tesis. Al Doctor Gilbert Barrantes por sus contribuciones desde el área de la biología y por el curso de bioacústica, el cual se convirtió en una indiscutible fuente de ideas para la realización de este trabajo. Al Doctor Álvaro de la Ossa por sus todos sus comentarios y por ser referente indiscutible en el campo de la Inteligencia Artificial. Al biólogo y colega César Sánchez por su oportuna ayuda en la búsqueda de los datos utilizados en la investigación. También deseo extender un especial agradecimiento a todas las personas que de una u otra manera estuvieron presentes durante este período: a mis profesores de la Escuela de Biología por todo su apoyo y su amistad, a los profesores y estudiantes de la Universidad de Ulm por sus enseñanzas y su amabilidad, a estudiantes y compañeros de trabajo en la Universidad de Costa Rica, a mis colegas músicos y a mis demás amigos. Finalmente y de manera muy especial quiero dar gracias a Aída Cristina por su vital apoyo y cariño incondicional, a mi hermana Pamela por estar siempre conmigo y a mis padres por su maravilloso esfuerzo y gran dedicación. Redes neuronales artificiales aplicadas a la biología ¡V Índice Resumen ............................................................................................................................................................ vi vii Lista de cuadros.................................................................................................................................................. Lista de ilustraciones y figuras ............................................................................................................................. ix 1. Introducción.................................................................................................................................................... 1 1.1 1.2 1.3 1.4 Objetivos .............................................................................................................................................. 2 3 Metas ................................................................................................................................................... . 4 Importancia de la investigacion.............................................................................................................. 6 Antecedentes ........................................................................................................................................ . 2 . Sonido y bioacústica....................................................................................................................................... 10 10 2.1 Generalidades del sonido ..................................................................................................................... 11 2.1.1 Ondas periódicas ......................................................................................................................... 2.1.2 Ondas aperiódicas ....................................................................................................................... 12 12 2.2 El espectro ........................................................................................................................................ 2.2.1 Representaciones del sonido en el dominio del tiempo y frecuencia ........................................... 13 14 2.2.2 El espectrograma ......................................................................................................................... 2.3 Organización de los sonidos en aves ..................................................................................................... 15 3. Redes Neuronales Artificiales.......................................................................................................................... 16 16 3.1 Panorama histórico ............................................................................................................................. 3.2 El modelo biológico ............................................................................................................................. 18 19 3.2.1 Estructura de las neuronas ........................................................................................................... Naturaleza bioelectrica de las neuronas ......................................................................................... 20 3.2.2 Definición y características de las redes neuronales artificiales ............................................................... 22 3.3 24 La neurona o unidad de proceso................................................................................................... 3.3.1 26 El estado de activación................................................................................................................. 3.3.2 Función de salida o transferencia .................................................................................................. 26 3.3.3 3.3.4 Neuronas con función escalón ...................................................................................................... 27 3.3.5 Neuronas con función lineal y mixta .............................................................................................. 28 3.3.6 Neuronas con función continua (sigmoidal) .................................................................................. 28 3.3.7 Conexiones entre neuronas o pesos.............................................................................................. 29 3.4 Tipos de arquitecturas en las redes neuronales artificiales ................................................................... 30 Perceptrón Multicapa (PMC) ......................................................................................................... 31 3.4.1 Red recurrente de Elman.............................................................................................................. 32 3.4.2 Red auto-organizativa de Kohonen ............................................................................................... 33 3.4.3 Mecanismos de aprendizaje ................................................................................................................. 36 3.5 Aprendizaje de las redes PMC ...................................................................................................... 38 3.5.1 Aprendizaje de las redes Elman .................................................................................................... 39 3.5.2 3.5.3 Aprendizaje de las redes de Kohonen ............................................................................................ 40 4 . Metodología.................................................................................................................................................. 42 4.1 Origen de los datos ........................................................................................................................... 43 4.2 Pre procesamiento .............................................................................................................................. 43 4.2.1 Digitalización de los cantos ........................................................................................................... 44 4.2.2 Fragmentación de los cantos ........................................................................................................44 4.2.3 Generación de los espectrogramas................................................................................................45 Aplicación de filtros y normalización de los volúmenes ................................................................. 46 4.2.4 . 4.3 Codificacion ........................................................................................................................................ 47 4.3.1 Codificación mediante barrido de la frecuencia fundamental ...........................................................47 Codificación mediante el procesamiento de los espectrogramas como imágenes .............................. 48 4.3.2 4.4 Redes neuronales artificiales ................................................................................................................ 51 4.4.1 Red perceptrón multicapa con retropropagación .......................................................................... 52 r Redes neuronales artificiales aplicadas a la biología 4.4.2 4.4.3 V Red auto-recurrente de Elrnan ........................................................................ .............................54 54 Red auto-organizativa de Kohonen ............................................................................................... 56 5. Implementación y resultados.......................................................................................................................... 5.1 Codificación mediante barrido de la frecuencia fundamental .................................................................. 56 5.2 Codificación mediante procesamiento de imágenes ............................................................................... 57 . 5.3 59 PMC con retropropagacion ................................................................................................................... 59 PMC - Frecuencia fundamental (Variante gradiente descendente con momentum) ........................... 5.3.1 68 PMC - Frecuencia fundamental (Variante Levenberg-Marquardt) ..................................................... 5.3.2 7 1 5.3.2 PMC - Imágenes (Variante gradiente descendente con momenturn) ........................................... 5.3.3 PMC - Imágenes (Variante Levenberg-Marquardt) ......................................................................... 76 5.4 Red recurrente de Elrnan ..................................................................................................................... 78 5.4.1 Elman - Frecuencia fundamental (variante gradiente descendente con rnomenturn) ........................78 81 Elman - Frecuencia fundamental (variante gradiente Levenberg-Marquardt) ................................... 5.4.2 8 2 Elrnan - Imágenes (variante gradiente descendente con rnomentum) ...................................... 5.4.3 5.5 Red auto organizativa de Kohonen ....................................................................................................... 86 5.5.1 Kohonen - Frecuencia fundamental .............................................................................................. 87 5.5.2 Kohonen .Imágenes .............................................................................................................. 9 0 r 6 . Conclusiones.................................................................................................................................................. 96 6.1 6.2 6.3 6.4 El pre procesamiento........................................................................................................................... 96 La codificación .................................................................................................................................... 97 98 Redes neuronales......................................................................................................................... 102 Trabajo futuro .................................................................................................................................. 7. Bibliografía................................................................................................................................................... 103 108 Apéndice A. Ejemplo de una de las matrices utilizadas en la evaluación de una red PMC ...................................... 109 Apéndice B. Código fuente de las redes neuronales de la codificación por imágenes ............................................ vi Redes neuronales artificiales aplicadas a la biología Resumen En el presente trabajo se implementaron y probaron tres diferentes modelos de redes neuronales artificiales, orientadas al reconocimiento y a la clasificación de patrones en señales acústicas de cinco especies de aves de Costa Rica. Se le dio particular énfasis al tema de la codificación de los datos, proponiéndose tres métodos basados en la extracción de características para generar vectores que sirvieran como las entradas de las redes neuronales. Se experimentó con diversas arquitecturas de red y estrategias de entrenamiento con el fin de encontrar una o varias redes que pudieran aprender a clasificar cantos de aves en períodos razonables de tiempo y con altos porcentajes de éxito en su respuesta. Se demostró que las estrategias de codificación propuestas permiten reducir de manera importante y sin excesiva perdida de información, el número de valores que describen a una señal bioacústica. Los esquemas de codificación basados en la vectorización de las imágenes o espectrogramas de los cantos mostraron ser mejores descriptores en términos de los resultados de clasificación obtenidos, comparados con aquellos basados en la vectorización de la frecuencia fundamental de los cantos. Redes neuronales artificiales que utilizaron el aprendizaje supervisado alcanzaron porcentajes de éxito que superaron el 90% de éxito cuando se les entrenó y evaluó con el 50% de los datos, mientras que aquellas que utilizan el aprendizaje no supervisado requirieron de la totalidad de los datos para alcanzar porcentajes similares en la clasificación de patrones de entrenamiento. La mejor red lograda fue del tipo perceptrón multicapa (100% de éxito en la clasificación de datos de entrenamiento y 91°/o en la generalización), la cual fue entrenada con el algoritmo clásico de retropropagación y gradiente descendente con momentum, esto a pesar de los mayores tiempos requeridos en la fase de aprendizaje. Las redes Elman también demostraron ser una buena opción para reconocer señales biológicas de aves, alcanzando porcentajes de éxito cercanos al 90% en la generalización. Las redes auto organizativas de Kohonen obtuvieron en general porcentajes de éxito más bajos (en promedio 68% de éxito) y los resultados indican que son redes que se pueden utilizar para establecer agrupaciones de datos a partir de sus características comunes aún cuando no se conozcan las respuestas esperadas. Se concluye que las redes neuronales artificiales son una herramienta efectiva para el reconocimiento y clasificación de señales acústicas de aves, aún cuando se está en presencia de muestras de tamaño pequeño, con diferentes grados de variabilidad intra e ínter específica y con altos niveles de ruido. Redes neuronales artificiales aplicadas a la biología vi¡ Lista de cuadros Cuadro 1. Algunas referencias bibliográficas de investigación bioacústica clasificadas según el grupos de estudio [Chesmore04]. ............................................................................................................................................. 8 11 Cuadro 2. Velocidad del sonido en diversos medios de propagación [MiyaraOO]. ................................................. Cuadro 3. Tiempos de entrenamiento y porcentajes de éxito en generalización para las redes PMC traingdm. Se incluye una columna con el correspondiente valor de la tasa de aprendizaje Ir. Los tiempos se expresan como ., minutos: segundos. NC = No convergio ...................................................................................................... 66 Cuadro 4. Resultados de la validación con datos nuevos para la mejor red obtenida en esta etapa de la investigación. Se presentan los porcentajes de clasificación correcta para cada especie y el detalle del número de cantos por especie. ..................................................................................................................................................... 67 Cuadro 5. Tiempos de entrenamiento y porcentajes de éxito en generalización redes PMC traingdm entrenadas con 68 vectores de 15 elementos. Los tiempos se expresan en minutos y segundos. ................................................. Cuadro 6. Resumen de los tiempos de entrenamiento y porcentajes de éxito en generalización para las redes trainlm. Los tiempos se expresan como minutos: segundos. ...................................................................................... 70 Cuadro 7. Resultados de la validación con datos nuevos para la mejor red obtenida del tipo PMC variante trainlm. Se presentan el detalle del número de cantos por especie y los porcentajes de clasificación correcta para cada 71 especie. N = número de cantos en donde las 5 neuronas de salida contienen Os. ........................................... Cuadro 8. Resumen de los tiempos de entrenamiento y porcentajes de éxito en generalización para las redes traingdm PMC con codificación de imágenes. Los tiempos se expresan como minutos y segundos. ..................73 Cuadro 9. Porcentajes de éxito por especie para la red PMC 120-75-5 traingdm. N = número de cantos en donde las 5 neuronas de salida contienen Os. .............................................................................................................. 73 Cuadro 10. Resumen de los tiempos de entrenamiento y porcentajes de éxito en generalización para las redes traingdm. Los tiempos se expresan como minutos: segundos. ....................................................................... 76 Cuadro 11. Resultados de la validación con datos nuevos para la mejor red obtenida del tipo PMC variante traingdm. Se presenta el detalle para cada especie y porcentaje de clasificación correcta. N = número de cantos en donde 76 las 5 neuronas de salida contienen Os. ......................................................................................................... Cuadro 12. Resultados de la validación con datos nuevos para la mejor red obtenida del tipo PMC variante trainlm y codificación a partir de imágenes. Se presentan los porcentajes de clasificación correcta para cada especie y el detalle del número de cantos por especie. N = número de cantos en donde las 5 neuronas de salida contienen os. ............................................................................................................................................................. 77 Cuadro 13. Resumen de los tiempos de entrenamiento y porcentajes de éxito en generalización para las diferentes redes traingdrn. Se incluye una columna con el correspondiente valor de la tasa de aprendizaje Ir. Los tiempos se expresan como minutos y segundos. ....................................................................................................... 80 Cuadro 14. Resultados de la validación con datos nuevos para la mejor red obtenida en esta etapa de la investigación. Se presentan los porcentajes de clasificación correcta para cada especie y el detalle del número de cantos por especie. .............................................................................................................................. 81 Cuadro 15. Resumen de los tiempos de entrenamiento y porcentajes de éxito en generalización para 3 redes trainlm con datos de frecuencia fundamental. Los tiempos se expresan como minutos y segundos. ............................ 82 Cuadro 16. Resultados de la validación con datos nuevos para la mejor red obtenida Elman con trainlm y frecuencias fundamentales. Se presenta el número de cantos por especie y los porcentajes de clasificación correcta para cada una .................................................................................................................................................... 82 Cuadro 17. Resumen de los tiempos de entrenamiento y porcentajes de éxito en generalización para 3 redes traingdm con datos de imágenes. Los tiempos se expresan como minutos y segundos. ..................................84 Cuadro 18. Resultados de la validación con datos nuevos para la mejor red obtenida Elman con traingdm y datos de imágenes. Se presenta el número de cantos por especie y los porcentajes de clasificación correcta para cada una ............................................................................................................................................................ 84 Cuadro 19. Resumen de los tiempos de entrenamiento y porcentajes de éxito en generalización para 3 redes trainlm con datos de frecuencia fundamental. Los tiempos se expresan como minutos y segundos. ............................ 85 Cuadro 20. Resultados de la validación con datos nuevos para la mejor red obtenida Elman con trainlm y frecuencias fundamentales. Se presenta el número de cantos por especie y los porcentajes de clasificación correcta para cada una .................................................................................................................................................... 86 Cuadro 21. Respuestas de la red de Kohonen entrenada con el 100°/o de los datos de frecuencia fundamental y evaluada con el mismo grupo de datos. Los aciertos se aprecian en negrita. ..................................................89 Cuadro 22. Respuestas de la red de Kohonen entrenada con el 100% de los vectores de imágenes de 120 elementos. Los aciertos se aprecian en negrita y los cantos clasificados dentro del cluster de otra especie, se remarcan en un círculo. .................................................................................................................................................. 91 Redes neuronales artificiales aplicadas a la biología vi¡¡ Cuadro 23. Respuestas de una red de Kohonen de 6 neuronas entrenada con los vectores de imágenes de 120 elementos. Los aciertos se aprecian en negrita. Las elipses enfatizan las dos especies con las que la red ha definido el cluster extra ..............................................................................................................................92 Cuadro 24. Respuestas de una red de Kohonen de 7 neuronas entrenada con los vedores de imágenes de 120 elementos. Los aciertos se aprecian en negrita. Las elipses engloban la conjunción entre los clusters 3-4 y 5-6 respectivamente. ........................................................................................................................................ 93 Cuadro 25. Respuestas de una red de Kohonen de 5 neuronas entrenada con los vectores de imágenes de 15 elementos. Los aciertos se aprecian en negrita. Los círculos resaltan los cantos que, siendo de otras especies, fueron clasificados como pertenecientes a la especie vinculada al cluster. ...................................................... 94 Cuadro 26. Respuestas de una red de Kohonen de 7 neuronas entrenada con los vectores de imágenes de 15 elementos. Los aciertos se aprecian en negrita. La elipse resalta el aporte que los 2 clusters extra incorporados hacen al cluster 6 vinculado a C. mexicanus. ................................................................................................ 95 Cuadro 27. Resumen de las mejores redes obtenidas para todas las combinaciones aplicadas de topología, 101 entrenamiento y esquema de codificación. ................................................................................................. Redes neuronales artificiales aplicadas a la biología ¡X Lista de ilustraciones y figuras Figura 1. Representaciones de una señal acústica a) en el dominio del tiempo y b) en el dominio de la frecuencia (para un ton0 puro) [Cornell95] ................................................................................................................ 13 Figura 2. Espectrograma de un extracto del canto de Junco volcani. Puede observase la representación de frecuencias en función del tiempo y la superposición de armónicos. Fuente: datos de la investigación.............14 19 Figura 3. Esquema de la estructura anatómica de una neurona [Kandel82] ......................................................... 20 Figura 4. Esquema de la conexión típica (sinapsis) entre dos neuronas [Kandel82] ................................................ Figura 5. Propagación del impulso eléctrico a lo largo del axón . [AEIA] .............................................................21 Figura 6. Modelo de una neurona artificial. X son las entradas, W representa los pesos y Y la salida [ChristoOl] ......25 27 Figura 7. Funciones de transferencia del tipo escalón [Hilera001........................................................................... Figura 8. Funciones de transferencia del tipo mixto [Hilera001............................................................................28 29 Figura 9 . Funciones de activación tipo sigmoidal [Hilera001.................................................................................. Figura 10. Arquitectura típica de una red PMC con una capa oculta y alimentación hacia delante [ChristoOl] ...........32 Figura 11. Arquitectura de una red recurrente de Elman con una capa oculta . Se aprecia la conexión recurrente en la 33 capa oculta y la capa contexto [Elman90] .................................................................................................... Figura 12. Arquitectura de una red auto organizativa de Kohonen LVQ. A las entradas le sigue la capa auto34 organizativa de neuronas que aprenden por competencia............................................................................. Figura 13. Arquitectura de una red auto organizativa de Kohonen MAK. Las neuronas de entrada se encuentran 35 conectadas a un mapa bidimensional de M neuronas [Viñuela04] .................................................................. 42 Figura 14. Diagrama resumen de los pasos metodológicos seguidos a través de la investigación ........................... Figura 15. Procedimiento de extracción de dos fragmentos a partir de la grabación maestra mediante la aplicación CoolEdit 4.0. .............................................................................................................................................. 45 Figura 16. Tres espectrogramas calculados con Saslab. Se observan tres cantos emitidos por tres individuos 46 diferentes de Catarus gracilirostris............................................................................................................. Figura 17. Curva de puntos de la frecuencia fundamental obtenida cada 30 ms a partir del canto de C. aurantirostris. Se aprecia al final de la misma un espacio vacío donde el algoritmo captura parte del ruido residual...............48 Figura 18. Subdivisión de un espectrograma en bloques de lOOms x 1KHz. El procesamiento por bloques contribuye a 50 la reducción en el tamaño de los productos de la codificación....................................................................... Figura 19. Ejemplo de codificación por frecuencia fundamental. Arriba un fragmento de canto original . Abajo la señal sintetizada por proyección de los puntos muestreados de la frecuencia fundamental [SASLAB] .......................57 Figura 20 . Ejemplo de codificación por imágenes. A) Fragmento de canto original, 6) simplificación del 58 espectrograma tras el procesamiento por bloques........................................................................................ Figura 21. Esquema de la primera red PMC utilizada . Estructura 10 - 16 - 5 con funciones de transferencia tansig y purelin . Fuente: nntool de Matlab, Mathworks inc......................................................................................... 60 Figura 22 . Parámetros y curva del proceso de entrenamiento para la red PMC 10-16-5 con un valor para la tasa de aprendizaje de 0.005. ................................................................................................................................. 61 Figura 23 . Parámetros y curva del proceso de entrenamiento para el PMC 10-16-5 luego de la modificación de la tasa 62 de aprendizaje de 0.005 a 0.01 y normalización de los datos al intervalo [-1,1]............................................. Figura 24 . Parárnetros y curva del proceso de entrenamiento para el PMC 10-16-5 después de la modificación de la tasa de aprendizaje (Ir= 0.05) y normalización de los datos a un rango [-1, 11................................................ 62 Figura 25 . Parárnetros y curva del proceso de entrenamiento para el PMC 10-16-5 después de la modificación de la tasa de aprendizaje (Ir= 0.1) y normalización de los datos a un rango [-1,1] ................................................ 63 Figura 26 . Resultados de validación para una red PMC y retropropagación con datos de entrenamiento . Se coteja la respuesta de la red (abajo en negrita y gris) contra los vectores meta (arriba en negrita) ............................... 63 Figura 27 . Resultados de validación para una red PMC y retropropagación con datos nuevos. Se coteja la respuesta de la red (abajo en gris) contra los vectores meta (arriba en negrita) ............................................................ 64 Figura 28 . Parámetros y curva del proceso de entrenamiento para el PMC 10-13-5 con tasa de aprendizaje Ir= 0.1 y datos normalizados a [-1,1] ......................................................................................................................65 Figura 29 . Parámetros y curva del proceso de entrenamiento para la red PMC 10-20-5 con tasa de aprendizaje Ir= 0.2 y datos normalizados a [-1, 11...............................................................................................................66 Figura 30 . Parámetros y curva del proceso de entrenamiento para la red PMC 15-24-5 con tasa de aprendizaje Ir= 0.1 y datos normalizados a [-1, 11...............................................................................................................68 Figura 31. Parámetros y curva del proceso de entrenamiento para la red PMC 10-16-5 con la variante trainlm ........ 69 Figura 32. Parámetros de red y curva del proceso de entrenamiento para el PMC 10-20-5 con la variante trainlrn .... 69 Figura 33 . Parámetros de red y curva del proceso de entrenamiento para PMC 10-12-5 con la variante trainlm ....... 70 Figura 34. Esquema de la primera red PMC utilizada . Estructura 120 - 50 - 5 con funciones de transferencia tansig y 71 purelin . Fuente: nntool de Matlab, Mathworks inc......................................................................................... Redes neuronales artificiales aplicadas a la biología X Figura 35. Parárnetros y curva del proceso de entrenamiento para el PMC 120-50-5 de retropropagación. ..............72 Figura 36. Parárnetros y curva del proceso de entrenamiento para el PMC 120-75-5 de retropropagación. ..............72 Figura 37. Resultados de validación para una red PMC 120-75-5, traingdrn con datos nuevos. Se coteja la respuesta 73 de la red (abajo en negrita) contra los vectores meta (arriba en negrita). ...................................................... Figura 38. Parárnetros de red y curva del proceso de entrenamiento para PMC 15-20-5 con la variante traingdm. Los 74 datos utilizados provienen de la codificación por imágenes........................................................................... Figura 39. Resultados de validación para una red PMC 15-20-5, traingdrn con datos nuevos. Se coteja la respuesta de la red (abajo en negrita) contra los vectores meta (arriba en negrita). ..........................................................74 Figura 40. Parárnetros de red y curva del proceso de entrenamiento para PMC 15-16-5 con la variante traingdm. Los datos utilizados provienen de la codificación por imágenes ............................................................................ 75 Figura 41. Parárnetros de red y curva del proceso de entrenamiento para PMC 15-12-5 con la variante traingdm. Los datos utilizados provienen de la codificación por imágenes............................................................................ 75 Figura 42. Parámetros de red y curva del proceso de entrenamiento para PMC 15-12-5 con la variante trainlm. Los 77 datos utilizados provienen de la codificación por imágenes........................................................................... Figura 43. Parárnetros y curva del proceso de entrenamiento para una red Elman 15-19-5 con la variante traingdrn. 79 Los datos utilizados provienen de la codificación por frecuencias fundamentales. .......................................... Figura 44. Parámetros y curva del proceso de entrenamiento para una red Elman 15-23-5 con la variante traingdm. 79 Los datos utilizados provienen de la codificación por frecuencias fundamentales. ........................................... Figura 45. Parárnetros y curva del proceso de entrenamiento para una red Elman 15-27-5 con la variante traingdm. Los datos utilizados provienen de la codificación por frecuencias fundamentales. ..........................................80 Figura 46. Parárnetros y curva de entrenamiento para una red Elrnan con estructura 10-19-5 entrenada con la variante trainlrn de retropropagación y datos de frecuencias fundamentales................................................... 81 Figura 47. Parárnetros y curva de entrenamiento para una red Elrnan con estructura 120-75-5 entrenada con la variante traingdrn de retropropagación y datos de codificación por imágenes. .............................................83 Figura 48. Resultados de la simulación. Se alcanza un porcentaje de éxito del 93% en generalización ....................83 Figura 49. Parárnetros y curva de entrenamiento para una red Elrnan con estructura 10-16-5 entrenada con la 83 variante traingdrn de retropropagación y datos de codificación por imágenes. ........................................... Figura 50. Parárnetros y curva de entrenamiento para una red Elrnan con estructura 15-16-5 entrenada con la 85 variante traingdrn de retropropagación y datos de codificación por imágenes ................................................. Figura 51. Respuestas de una red de Kohonen de 5 neuronas tras ser evaluada con el juego de datos utilizados en la 87 fase de entrenamiento. Los aciertos para cada especie se resaltan en negrita. ............................................ Figura 52. Respuestas de una red de Kohonen de 5 neuronas tras ser evaluada con cantos no utilizados en el entrenamiento. Los aciertos se resaltan en negrita. .....................................................................................88 Figura 53. Respuestas de una red de Kohonen de 5 neuronas tras ser evaluada con el 100% de los datos de entrenamiento. Los aciertos se resaltan en negrita. ...................................................................................... 88 Figura 54. Proyección tridimensional de las 5 neuronas para la red de Kohonen entrenada con frecuencias fundamentales (puntos negros interconectados por una línea) en el conjunto de datos de entrenamiento (puntos grises) Fuente: Matlab. ............................................................................................................................... 90 Figura 55. Respuestas de simulación de una red de Kohonen de 5 neuronas entrenada con 100% de los datos de 91 imágenes de 120 elementos. Los aciertos se resaltan en negrita. .................................................................. Figura 56. Respuestas de simulación de una red de Kohonen de 7 neuronas entrenada con 100% de los datos de imágenes de 120 elementos. Los aciertos se resaltan en negrita y en gris los aciertos contabilizados para los 92 clusters extra. ............................................................................................................................................ Figura 57. Respuestas de simulación de una red de Kohonen de 5 neuronas entrenada con 100% de los datos de imágenes de 15 elementos. Los aciertos se resaltan en negrita. .................................................................... 93 Figura 58. Respuestas de simulación de una red de Kohonen de 7 neuronas entrenada con 100% de los datos de imágenes de 15 elementos. Los aciertos se resaltan en negrita y los aciertos en los clusters extra se resaltan en gris ............................................................................................................................................................94 Redes neuronales artificiales aplicadas a la biología 1 Capitulo 1 Introducción En la biología tradicional se acostumbra ir al campo para observar y registrar información de hechos concretos que son de interés para el investigador. En la rama de la zoología lo habitual es recolectar datos de observaciones de la ecología, la historia natural y el comportamiento de individuos en sus poblaciones, y analizarlos posteriormente en el laboratorio, o bien realizar dichas observaciones en cautiverio. La adecuada categorización de los datos obtenidos en clases separadas y definidas constituye un aspecto trascendental en el estudio de las relaciones entre dichos individuos [BurguessOl]. El número de variables y observaciones a considerar se encuentra determinado por aquellos intereses particulares del científico, y por el grupo biológico en estudio. Esto representa a su vez un subconjunto del posible compendio de aspectos que se pueden medir en un entorno biótico abiótico. Entre las características que se pueden estudiar en las poblaciones biológicas se encuentran los sonidos. Muchos grupos los utilizan como un recurso esencial para establecer relaciones e interacciones con individuos de su propia especie así como con individuos de otras especies [RyanOO]. En el caso particular de las aves, los sonidos que utilizan poseen generalmente estructuras complejas, llegándose inclusive al punto de definir, para efectos de análisis, una escala jerárquica de componentes acústicos: notas, sílabas, frases, cantos y dialectos. Constituyen de manera categórica uno de los grupos más complejos y requieren de modelos bien fundamentados para el tratamiento y análisis de datos [AlstromOl]. Tales niveles de complejidad reflejan a su vez patrones complejos de comunicación. La comunicación es una parte integral del comportamiento animal. Las aves se comunican entre sí primordialmente por señales visuales y auditivas. Plumajes elaborados, colores vistosos, niovimientos, elaboración de nidos y presentación de alimentos constituyen señales visuales que no necesariamente van acompañadas de sonidos. El sonido participa esencialmente en situaciones de larga distancia, en presencia de obstáculos o falta de luz que impidan la visibilidad y también aparece como un complemento a señales visuales como las que suceden en el cortejo. 2 Redes neuronales artificiales aplicadas a la biología Con el creciente interés por parte de los biólogos en esta perspectiva acústica, se fue conformando una nueva área de investigación científica hoy conocida como bioacústica. La bioacústica es el estudio y análisis de manifestaciones sonoras emitidas por organismos biológicos [Gerhard98]. Tales emisiones se encuentran en su mayor parte circunscritas a un contexto social de interacción y comunicación entre individuos de una o más especies. Esta disciplina se ha desarrollado notablemente en la última década gracias al advenimiento de más y mejores medios técnicos capaces de almacenar y analizar señales acústicas [AlstromOl]. Entre estos, la informática ha sido el más influyente en el avance de esta rama. A su vez, ha permitido ampliar la gama de posibilidades de análisis de datos e información sonora. Dentro de las técnicas computacionales exploradas recientemente en la bioacústica, se encuentran las redes neuronales artificiales. Las redes neuronales artificiales constituyen una abstracción del sistema nervioso biológico, y análogamente al cerebro orgánico, se encuentran constituidas por redes conformadas de unidades simples de procesamiento interconectadas entre sí y que pueden operar de forma paralela para resolver problemas de elevada complejidad [HileraOO]. El presente trabajo profundiza en la aplicación de tecnologías de redes neuronales artificiales y sus implicaciones en un caso de identificación y clasificación de cantos de aves de Costa Rica. Seguidamente se enuncian los objetivos del mismo. 1.1 Objetivos Los objetivos definidos para la presente investigación son: Objetivo aeneral Construir una red neurona1 artificial para clasificar cantos de diferentes especies de aves, obtenidos, pre procesados, y codificados a partir de grabaciones analógicas. Redes neuronales artificiales aplicadas a la biologia 3 Obietivos es~ecíficos 1) Extraer un subconjunto de las características físico-acústicas subyacentes en los cantos desde el cual sea posible generar una codificación que funcione como datos de entrada a la red neuronal artificial. 2) Construir, a partir de algunas de las alternativas de diseño e implementación existentes, una red neuronal artificial apta para clasificar, dentro de límites definidos, cantos que le sean presentados, tomando en cuenta los aspectos de pre procesamiento, especies involucradas y niveles de ruido presentes en los datos utilizados en las etapas de entrenamiento. 3) Comparar algunas de las mejores redes obtenidas en función de su topología, tipo y duración de entrenamiento utilizado y capacidad de respuesta ante la presencia de datos de prueba. 4) Constatar y verificar que las redes neuronales artificiales son una alternativa viable y efectiva para atacar problemas de clasificación de señales bioacústicas, en este caso particular, cantos de algunas especies de aves costarricenses. Metas Con el fin de delimitar en más detalle los alcances del trabajo en función de los objetivos trazados se plantearon las siguientes metas: 1) Proponer y probar al menos dos esquemas de codificación de los datos con base en la extracción de características. 2) Implementar al menos tres diferentes modelos de redes neuronales artificiales y probar cada uno de ellos con los dos tipos de codificación propuestos. 3) Alcanzar tiempos promedio de entrenamiento de 60 minutos o menos para al menos uno de los modelos de red neuronal artificial implementados. Redes neuronales artificiales aplicadas a la biología 4 4) Alcanzar porcentajes de éxito en la clasificación de los cantos de 75% o más para al menos uno de los modelos de red neurona1 artificial probados. 1.3 Importancia de la investigación Las dos interrogantes principales que justifican la realización del presente trabajo pueden plantearse de la siguiente manera: ¿Por qué es importante clasificar cantos de aves a través de una computadora, o en otras palabras, qué beneficios brinda a los especialistas en biología un sistema que pueda realizar tareas de clasificación de señales acústicas de manera automática, ya sea total o parcialmente? Y la segunda, ¿Por qué puede ser conveniente utilizar redes neuronales artificiales como una parte esencial de un sistema orientado a tales fines? Atendiendo a la primera pregunta, existe hoy en día un interés particular por aspectos de conservación y manejo de poblaciones biológicas, además de otros si se quiere más tradicionales, como la etología y la sistemática. En todos ellos se utilizan diversos métodos de estudio, y la bioacústica se ha convertido, especialmente en grupos como las aves, en un mecanismo viable para acceder y analizar información valiosa que funciona como soporte a cualquiera de los diferentes enfoques antes mencionados Vubaro991. Para los especialistas en la rama, esta información que es almacenada primordialmente en archivos de audio, requiere de una elevada inversión de tiempo y esfuerzo, tanto en términos propiamente de inspección auditiva como en términos de inspección visual cuando los datos son transformados a algún tipo de representación gráfica. Inicialmente interesa identificar elementos presentes en los cantos que puedan ser informativos, como por ejemplo frecuencias fundamentales, duración de los cantos, intensidades promedio de ciertos componentes, rangos, entre otros. Posteriormente, dichas mediciones suelen ser utilizadas para establecer comparaciones entre poblaciones o especies, o bien en tareas de clasificación que conlleven a interpretaciones biológicas. Existen múltiples herramientas informáticas que apoyan principalmente tareas de pre procesamiento de esta clase de información. Sin embargo, la gran mayoría carece de módulos o funciones que permitan someter una serie de cantos a la clasificación o al reconocimiento ya sea Redes neuronales artificiales aplicadas a la biología 5 de familias, especies, poblaciones o incluso individuos, de una manera ágil. Es por esto que es importante plantear una alternativa que permita ejecutar este tipo de tareas de manera eficiente y que pueda, dicho de alguna forma, incluir gradualmente más especies o grupos de interés. En cuanto al porqué utilizar redes neuronales, se ha observado que dentro de las distintas posibilidades que ofrece la inteligencia artificial, éstas han sido utilizadas con éxito en investigaciones que requieren resolver situaciones de reconocimiento de patrones y clasificación [DudaOl], [ChallonerOZ]. Algunas de las características de las redes neuronales que las hacen una opción interesante en este esquema son: 1) Pueden funcionar como clasificadores aún cuando el espacio muestra1 es reducido. Este es el caso de muchos estudios biológicos, en los que el acceso a la información está generalmente limitado a aspectos temporales, espaciales, de distribución, y por tanto genera muestras escasas. 2) Una vez que las redes están entrenadas quedan listas para futura utilización. Esto facilita la continua utilización para la revisión de nuevos datos, o bien para la educación de nuevos especialistas en el campo, que las puedan usar para evaluar su conocimiento. 3) Poseen capacidad para generalizar. Esto permite utilizar datos nunca antes vistos por la red que a su vez estén dentro de las posibilidades que éstas desarrollaron durante su entrenamiento. Así, nuevos individuos de poblaciones nuevas podrían ser dados a la red para su clasificación. Otros aspecto importante que este trabajo puede aportar radica en que, al tratarse de un trabajo interdisciplinario, plantea algunos aspectos trascendentales relacionados con la forma en que se hace ciencia en nuestros días; uno de ellas, el cómo integrar adecuadamente el conocimiento en una época en la que la alta especialización ha sido la tendencia que marca la pauta, o bien, el cómo establecer puentes más sólidos entre áreas del conocimiento en principio suficientemente distantes entre sí. Es bien conocido el hecho, y especialmente en nuestros países latinoamericanos, de que la falta de una comunicación efectiva entre profesionales de áreas diferentes interpone una barrera que impide en muchas ocasiones obtener resultados objetivos en plazos razonables de tiempo. Redes neuronales artificiales aplicadas a la biología 6 Por otro lado, tanto a nivel local como global, existe hoy en día una tremenda presión sobre las áreas naturales que albergan a gran parte de nuestras especies biológicas. Ésta es debido mayoritariamente a la destrucción de ecosistemas, la fragmentación de bosques y la contaminación de ríos, derivados de un crecimiento urbano carente de planificación, del desarrollo descontrolado de proyectos turísticos e industriales, y de la falta de conciencia ciudadana. En tal sentido, se vuelven importantes todos aquellos esfuerzos, que desde un enfoque científico, puedan aportar métodos y técnicas de experimentación que generen el menor impacto posible sobre el ambiente y sus organismos. La bioacústica ha venido a contribuir con dichos aspectos, pues está basada primordialmente en la recopilación de datos a partir de grabaciones realizadas en ambientes naturales, con un impacto relativamente pequeño sobre los individuos y el entorno. Al legitimar y hacer válidas las investigaciones basadas en el análisis y estudios de los sonidos, se promueve un factor de conservación, pues se motiva la utilización de métodos alternativos de monitoreo, identificación y clasificación de especies que sustituyan a los métodos tradicionales de captura, marcaje y cautiverio. Esto puede ser crucial para la preservación de la biodiversidad, así como para la buena salud de nuestros espacios naturales. 1.4 Antecedentes La bioacústica así como las redes neuronales artificiales cuentan ya con varias décadas de existencia y desarrollo. Sin embargo no es sino hasta años recientes que se han comenzando a utilizar conjuntamente en la realización de investigaciones de carácter taxonómico, etológico, evolutivo, y de conservación de especies que utilizan el sonido como una de sus principales formas de comunicación [Chesmore04]. Con el fin de realizar una mejor retrospectiva, es válido señalar que los primeros acercamientos surgieron a finales de la década de los 80s y principios de los 90s, cuando se comenzaba a experimentar con redes neuronales artificiales y el reconocimiento de palabras (Maravall et al., 1991; Gemello & Mana, 1991; Waibel et al., 1989; Lefebvre et al., 1990), así como con el reconocimiento de caracteres e imágenes (Belliustin et al., 1991; Van Allen et al., 1990; Tirakis et al., 1990; Omatu et al., 1990; Fukushima and Wake, 1990; Iwata et al., 1990) [Reby97]. La explosión en la cantidad y complejidad de las investigaciones y en el interés hacia las redes neuronales propició un caldo de cultivo que daría origen a los primeros aportes vinculados directamente a las ciencias biológicas. Así, aparecen publicaciones en los campos de la Redes neuronales artificiales aplicadas a la biología 7 hidrobiología (Lek et al., 1994,1995), en el análisis de estructuras de proteínas (Qian and Sejnowski, 1988; Andreassen et al., 1990), y en la clasificación de varios tipos de semillas de plantas de ambientes marinos (Smits et al., 1992) lReby971. Entre los primeros trabajos propiamente bioacústicos surge el realizado por Nicolas y colaboradores en 1989, en el que se utilizan redes neuronales artificiales para el reconocimiento de impulsos producidos por mamíferos marinos lReby971. Algunas de las publicaciones posteriores fueron: la clasificación de señales de ecolocalización de cetáceo5 (Au, 1994; Au et al., 1995), las señales de ecolocalización de murciélagos (Altes, 1995; Dror et al., 1995; Wotton and Jenison, 1997), y la clasificación de vocalizaciones de mamíferos marinos (Deecke et al., 1999; Murray et al., 1998) [ParsonsOO]. Las redes neuronales artificiales constituyen una novedosa alternativa, y han demostrado comportarse adecuadamente cuando sus entradas contienen ruido o bien no existen bases a priori para su clasificación. En [Reby97], se supervisó el entrenamiento de redes neuronales con una sola capa oculta para discriminar entre vocalizaciones de cuatro machos de siervo (Dama dama) utilizando propagación hacia atrás. A su vez, Potter y colaboradores (1994), utilizaron una arquitectura de red similar para clasificar cantos de mamíferos marinos en condiciones muy ruidosas (viento, olas, cables, y sonidos producidos por hielo). En ambos casos el desempeño de las redes fue satisfactorio, y un posterior aumento en la cantidad de datos utilizados en la fase de entrenamiento resultó en tasas de error menores al 5% [Reby971 En la publicación citada al principio de la sección [Chesmore041, se efectúa una revisión de literatura y se cita los principales trabajos realizados recientemente, y orientados a la automatización de la clasificación e identificación de especies en general desde un enfoque bioacústico. La mayoría de los autores incluyeron en su metodología al menos una de las varias arquitecturas de clasificadores neuronales artificiales disponibles hoy en día. En el cuadro 1 se detallan los títulos de dichos trabajos y sus correspondientes autores. Aunque existen algunos trabajos en los que se utilizan redes neuronales artificiales para tratar con señales acústicas de aves, posiblemente uno de los más interesantes es el publicado por Andrew y McGregor en el 2002. En éste se utilizan estos modelos para identificar cantos de un grupo de aves pertenecientes a una misma especie. El principal argumento expuesto sugiere que es posible separar y reconocer individuos a través de variaciones sutiles en sus cantos, y que a la vez esto representa un mecanismo utilizable en la realización de censos y monitoreo de especies en zonas naturales. [AndrewOZ]. Redes neuronales artificiales aplicadas a la biología 9 informativas y se deben utilizar para construir o codificar los vectores que alimentarán a la red?, ¿qué arquitectura y valores paramétricos debe poseer una red para aprender de dichos datos de la manera más adecuada? Estas son quizás, y como se ha mencionado antes, las más sobresalientes. Como factor adicional, considerando el amplio espectro de matices acústicos que se pueden encontrar en la naturaleza, cada problema se vuelve único. Aún cuando se habla concretamente de cantos de aves, la diversidad sonora es enorme, y la complejidad propia de este grupo en términos de manifestaciones acústicas hace que cada investigación sea prácticamente irrepetible, pues las especies, su entorno y sus interacciones cambian dinámicamente con el tiempo, y cada nuevo estudio debe ajustar en mayor o menor grado ciertos valores y expectativas. Así entonces, trabajos como los anteriormente citados brindan una percepción general del estado y dirección que está tomando la investigación bioacústica y su reciente vinculación con las redes neuronales artificiales. A continuación se presentan en más detalle los preceptos teóricos que sustentan las áreas involucradas en este trabajo. Redes neuronales artificiales aplicadas a la biología 10 Capitulo 2 Sonido y bioacústica En el presente apartado se hace un recorrido por los principales conceptos y consideraciones teóricas relacionadas con el sonido. Se considera conveniente tratar algunos temas entre los cuales destacan: aspectos básicos del sonido (sección 2. l), ondas (secciones 2.1.1 y 2.1.2), espectro (sección 2.2), representaciones en dominios tiempo-frecuencia (sección 2.2.1), el espectrograma (sección 2.2.3), organización del canto en las aves (sección 2.3). Generalidades del sonido El sonido es una manifestación energética producida por la perturbación de un agente sobre un sistema con características vibracionales, que puede ser transmitida a través de un medio elástico y eventualmente percibida por un receptor [Kinsleról]. En más detalle, las vibraciones suscitadas en el sistema causan también una perturbación de presión en su entorno circundante, dígase en la forma de una compresión, y dicha región tiende a expandirse hacia las regiones vecinas. Esto produce a su vez una compresión en dichas regiones, que volverán a expandirse creando una compresión más lejos todavía. Este proceso se desarrolla en forma continua haciendo que la perturbación original se propague a través del medio (en forma de onda) alcanzando en algún momento la posición que ocupa algún receptor (por ejemplo un oído o un micrófono). [MiyaraOO]. Dichas propagaciones u ondas comparten tres propiedades físicas fundamentales que a su vez las describen: amplitud, longitud de onda y frecuencia. La amplitud es el valor máximo del movimiento de una onda, y refleja la intensidad con que la perturbación se ha producido. La distancia entre dos compresiones o entre dos expansiones se denomina longitud de onda. La frecuencia se define como el número de cambios (de una compresión a otra, por ejemplo) que ocurren en un lugar dado en el transcurso de un segundo. La frecuencia y el período se relacionan de manera inversa: Frecuencia = 11 Período o bien: f = 1/T Cuando una onda tiene lugar en un medio líquido o gaseoso se denomina onda acústica y cuando resulta audible, se llama onda sonora [MiyaraOO]. Las ondas acústicas, bajo condiciones Redes neuronales artificiales aplicadas a la biología 12 un caso notable, ya que emite y escucha sonidos de más de 100000 Hz, y esto le permite orientarse en vuelo según el principio del sonar (ecolocalización). 2.1.2 Ondas aperiódicas Por otro lado, aún cuando muchos sonidos son periódicos, como los sonidos producidos por los instrumentos musicales de altura determinada (guitarra, flauta, piano), la vasta mayoría de los sonidos naturales son aperiódicos, es decir, las sucesivas perturbaciones no se producen a intervalos regulares y no mantienen constante la forma de la onda. Esto es lo que técnicamente se denomina ruido. Las ondas aperiódicas en general no producen la sensación de sonidos coherentes, pero son importantes incluso para la comunicación. Algunos ejemplos son el ruido urbano, las consonantes del lenguaje hablado, el ruido del mar, y el sonido de muchos instrumentos de percusión tales como los tambores o los platillos. 2.2 El espectro El concepto de espectro es de importancia capital en acústica. Cuando se introdujo el concepto de frecuencia, se dijo que las ondas periódicas tienen asociada una frecuencia. Sin embargo, esto es sólo parte de la verdad, ya que por lo general dichas ondas contienen varias frecuencias a la vez. Esto lo explica un notable teorema matemático denominado Teorema de Fourier (en honor a su descubridor, el matemático francés Joseph Baptiste Fourier), que afirma que cualquier forma de onda periódica puede descomponerse en una serie de ondas de una forma particular denominada onda senoidal (o senoide, o sinusoide), cada una de las cuales tiene una frecuencia que es múltiplo de la frecuencia de la onda original (frecuencia fundamental). Así, cuando escuchamos un sonido de 100 Hz, realmente estamos escuchando ondas senoidales de frecuencias 100 Hz, 200 Hz, 300 Hz, 400 Hz, 500 Hz, etc. Estas ondas senoidales se denominan armónicos del sonido original, y en muchos instrumentos musicales (como la guitarra) y ciertos animales (como las aves) son claramente audibles [MiyaraOO]. La descripción de las ondas senoidales que componen un sonido dado se denomina espectro del sonido. El espectro es importante debido a varias razones. Primero porque permite una descripción de las ondas sonoras que está íntimamente vinculada con el efecto de diferentes dispositivos y modificadores físicos del sonido. En otras palabras, si se conoce el espectro de un sonido dado, es posible determinar cómo se verá afectado por las propiedades absorbentes de Redes neuronales artificiales aplicadas a la biología 15 A continuación se expone el modelo más utilizado para explicar la producción del canto en las aves. 2.3 Organización de los sonidos en aves Se puede decir que todas las aves producen algún tipo de canto. Entre los diversos órdenes, por ejemplo los Oscines, un suborden del orden de los Passeriformes, son los que muestran en general cantos más complejos, en tanto que otro suborden dentro de este mismo orden, los Suboscines, no suelen cantar de una manera tan elaborada. La diversidad de sonidos que un ave produce es alta. Pueden enfatizar intensidades de diferentes armónicos con propiedades de filtro que el tracto vocal les confiere, pero además pueden producir tonalidades puras que carecen de armónicos, así como sonidos con características de ruido [Fagerlund03]. Tales posibilidades pueden ser moduladas tanto en frecuencia como en amplitud. Las modulaciones en amplitud son principalmente generadas por la siringe (órgano principal de producción de sonido en las aves, homólogo a las cuerdas vocales humanas), pero diferencias entre los armónicos son debidas las propiedades del tracto vocal. En adición, los sonidos de aves pueden ser ruidosos o caóticos en estructura [Gaunt83]. Redes neuronales artificiales aplicadas a la biología 16 Capkulo 3 Redes Neuronales Artificiales En el presente apartado se desarrollan los principales conceptos teóricos relacionados con las Redes Neuronales Artificiales, iniciando con un breve recuento de los acontecimientos históricos que marcaron sus orígenes y evolución, para seguidamente dar paso a algunas definiciones formales, el modelo biológico en el cual está basada su teoría, los elementos característicos que las componen, los principales tipos y arquitecturas de red conocidos y los mecanismos de aprendizaje y entrenamiento comúnmente utilizados en su diseño e implementación. 3.1 Panorama histórico El diseño y construcción de máquinas que puedan realizar acciones "inteligentes" ha sido una de las principales preocupaciones científicas a través de los últimos años. A partir de numerosos aportes se han llegado a sentar las bases fundamentales para la construcción de máquinas con cierto grado de inteligencia. Se resumen a continuación los principales acontecimientos que han marcado la evolución de esta rama. En el año de 1936, Allan Turing fue el primer investigador en estudiar el cerebro desde un punto de vista computacional. Sin embargo los primeros teóricos que concibieron los fundamentos de la computación neuronal fueron Warren McCulloch, un neurofisiólogo, y Walter Pitts, un matemático, quienes en 1943, propusieron una teoría acerca de la forma en que funcionan las neuronas. Ellos modelaron una red neuronal simple mediante circuitos eléctricos. Unos años después en 1949, Donald Hebb escribe un libro que fue importante en los inicios de la computación neuronal, La organización del compo/tamiento, en el que se establece una conexión entre la psicología y la fisiología [HileraOO]. En 1957, Frank Rosenblatt comienza con el desarrollo del perceptrón, conocido hoy como la más antigua red neuronal, y que se utiliza aún hoy en algunas aplicaciones de reconocimiento de patrones. Este modelo podía ya generalizar, es decir, luego de haber aprendido una serie de patrones era capaz de reconocer otros similares, aunque no se le hubieran presentado con anterioridad. Sin embargo, tenía una serie de limitaciones, quizá la más conocida era su Redes neuronales artificiales aplicadas a la biología 17 incapacidad para resolver el problema de la función OR-exclusiva y, en general no era capaz de clasificar clases no separables linealmente LRosenblatt581. En 1959, Bernard Widrow y Macial Hoff, de la Universidad de Stanford, desarrollaron el modelo ADALINE (ADAptative LINear Elements). Esta fue la primera red neuronal artificial aplicada a la resolución de un problema real (filtros adaptativos para eliminar ecos en las líneas telefónicas) y fue utilizada comercialmente durante varias décadas [HileraOO]. Uno de los mayores investigadores en redes neuronales desde los años 60 hasta nuestros días es Stephen Grossberg (Universidad de Boston) LGrossberg82L quien a partir de su extenso conocimiento fisiológico, ha escrito numerosos libros y desarrollado modelos de redes neuronales artificiales. Estudió los mecanismos de la percepción y la memoria y realizó en 1967 una red llamada Avalancha, que consistía de elementos discretos con actividad que varía con el tiempo y que satisfacen ecuaciones diferenciales continuas. Se utilizó para intentar resolver problemas tales como reconocimiento continuo del habla y aprendizaje del movimiento de los brazos de un robot. En 1969 surgieron numerosas críticas que frenaron, hasta 1982, el crecimiento que estaba experimentando el campo de las redes neuronales artificiales. Marvin Minsky y Seymour Papert, del Instituto Tecnológico de Massachussets (MIT), publicaron el libro Perceptrons, que además de contener un análisis matemático detallado del perceptrón, consideraba que la extensión a perceptrones multinivel (el perceptrón original solo poseía una capa) era completamente estéril. Las limitaciones del perceptrón eran importantes, sobre todo su incapacidad de resolver muchos tipos de problemas. Muchas investigaciones dieron en este punto un nuevo giro hacia la inteligencia artificial [HileraOO]. Seguidamente, James Anderson LAnderson771 desarrolló un modelo lineal llamado Asociador Lineal, que consistía de elementos integradores lineales (neuronas) que sumaban sus entradas. Este modelo se basa en el principio de que las conexiones entre neuronas son reforzadas cada vez que están activadas. Anderson diseñó una potente extensión del asociador lineal, llamada Brain-State-in-a-Box (BSB). En Europa y Japón también se hacía investigación en este campo. Kunihiko Fukushima desarrolló el Neocognitrón, un modelo de red neuronal para el reconocimiento de patrones visuales. Teuvo Kohonen, un ingeniero electrónico de la Universidad de Helsinki, desarrolló independientemente un modelo similar al de Anderson. [HileraOO]. Redes neuronales artificiales aplicadas a la biología 18 En 1982, coincidieron numerosos eventos que hicieron resurgir el interés por las redes neuronales. Jhon Hopfield presentó su trabajo sobre redes neuronales en la Academia Nacional de Ciencias. En el trabajo, describe con claridad y rigor matemático una red a la que ha dado su nombre, que es una variación del asociador lineal, pero además, mostró como tales redes pueden trabajar y qué pueden hacer. Además, en 1982 se celebró la U3-Japan Joint Conference on Cooperative/COmpetitive Neural Networks y Fujitsu comenzó el desarrollo de computadoras pensantes para aplicaciones en robótica [HileraOO]. En 1985, el Instituto Americano de Física comenzó lo que ha sido la reunión anual Neural Networks of Computing, Esta ha sido la primera de muchas otras. En 1987, la IEEE celebró la primera conferencia internacional sobre redes neuronales, con más de 1800 asistentes y 19 nuevos productos mostrados. En el mismo año se formó la Internacional Neural Network Society (INNN) bajo la iniciativa y dirección de Grossberg en U.S.A., Kohonen en Finlandia y Amari en Japón; y en menos de 2 años la INNN tenía más de 3000 socios. A partir de este momento, el interés por el área se ha incrementado de forma notable, contándose hoy en día con un gran número de congresos, reuniones científicas, revistas especializadas y el interés de un gran número de empresas en incorporar esta tecnología a una amplia gama de aplicaciones específicas [Singüenza931. . Seguidamente se exponen las principales ideas en torno al modelo que ha servido de base para la teoría de las redes neuronales artificiales. El modelo biológico La feoría y el modelado de las redes neuronales artificiales se sustentan en información conocida acerca de la estructura y funcionamiento de los sistemas nerviosos biológicos. De todos los elementos que componen a estos sistemas, la neurona es el bloque básico de construcción y funcionamiento. Aunque en la naturaleza éstas pueden encontrarse en diversas formas, tamaños y longitudes, su estructura y principio de funcionamiento esencialmente parecen ser siempre los mismos. A continuación algunas generalidades acerca de su anatomía y fisiología. Redes neuronales artificiales aplicadas a la biología 20 Figura 4. Esquema de la conexión típica (sinapsis) entre dos neuronasJKandel82] 3.2.2 Naturaleza bioeléctrica de las neuronas Las señales utilizadas en las redes neuronales biológicas son de dos tipos: eléctricas y qulmicas. La señal generada por la neurona y que es transportada a lo largo del axón es un impulso eléctrico, en tanto que la señal transmitida entre los terminales axónicos de una neurona y las dendritas de las neuronas siguientes es de origen químico. Este último tipo de señal media en el intercambio de información entre neuronas y se realiza a través de los espacios ínter-neuronales (50-200 Ángstroms de separación). A este proceso de comunicación entre neuronas se le conoce como transmisión sin2ptica, y es llevado a cabo a través de unas moléculas llamadas neurotransmisore~las cuales fluyen de una neurona a otra por este pequeño espacio gracias a receptores específicos. La codificación de la información que se intercambia entre neuronas viene dada por varios factores como el tipo de neurotransmisor, el volumen del mismo, la velocidad de flujo, etc. Estos determinan variaciones particulares que son interpretadas por las neuronas circundantes y que marcan dentro de la red total zonas diferenciales de actividad [Haykin94]. En cuanto a las señales de tipo eléctrico, se sabe que éstas son originadas en los censores de frontera con el medio (input'), conocidos comúnmente como los sentidos. Desde allí se propagan a través de la red hasta el cerebro para desencadenar una respuesta o reacción (outpuo. La generación de éstas señales eléctricas está íntimamente relacionada con la composición de la membrana celular. Existen muchos procesos complejos involucrados en dichas señales, sin embargo se pueden simplificar para un más fácil entendimiento. Las neuronas, como todas las Redes neuronales artificiales aplicadas a la biología células, 21 son capaces de mantener en su interior un líquido cuya composición difiere marcadamente de la composición del líquido exterior. La diferencia más notable se da en relación con la concentración de iones sodio y potasio, Esta diferencia de concentración en ambos iones a cada lado de la membrana produce una diferencia de potencial de aproximadamente 70 milivoltios, negativa en el interior de la célula. Esto es lo se conoce como el potencial de reposo de una célula nerviosa lKande1821. 20 22 ua, 5. a - ,, 40 Potencial de acción-b 0 Potencial de reposo -20 -60 -80 2 miliseg. Interior de N, .................................. ----- Figura 5 . Propagación del impulso eléctrico a lo largo del axón. [AEIA] La llegada de señales procedentes de otras neurona5 a través de las dendritas actúa de una manera acumulativa, bajando ligeramente el valor del potencial de reposo. Dicha variación modifica la permeabilidad de la membrana, de manera que cuando llega a cierto valor crítico se inicia una entrada masiva de iones sodio que cambian la relación de cargas. La inversión del voltaje de la cara interior de la membrana cierra el paso a los iones sodio y a su vez abre el paso a los iones potasio hasta que se reestablece el equilibrio de reposo. La inversión del voltaje, conocida como el potencial de acción, se propaga a lo largo del axón y, a su vez, provoca la emisión de los neurotransmisores en los terminales axónicos. Luego de un pequeño período refractario, puede darse un segundo impulso. El resultado de todo esto es la emisión por parte de la neurona de trenes de impulsos cuya frecuencia varía en función (entre otros factores) de la cantidad de neurotransmisores recibidos LKandel821. Existen dos tipos de sinapsis: a) las sinapsis excitatorta$ cuyos neurotransmisores provocan disminuciones de potencial en la membrana de la célula postsináptica, facilitando la generación Redes neuronales artificiales aplicadas a la biología 22 de impulsos a mayor velocidad, y b) las sinapsis inhibitorjas, cuyos neurotransmisores tienden a estabilizar el potencial de la membrana, reduciendo la emisión de impulsos. Casi todas las neuronas reciben entradas procedentes de sinapsis excitatorias e inhibitorias. En un instante dado, algunas de ellas estarán activas y otras se hallarán en reposo; la suma de los efectos excitadores e inhibidores determinan si la célula será o no estimulada, es decir, si emitirá o no un tren de impulsos y a qué velocidad LHilera001. Con el fin de establecer una analogía entre lo anterior y las redes neuronales artificiales, a continuación se describen algunos de los aspectos fundamentales de éstas últimas. Definición y características de las redes neuronales artificiales Las Redes Neuronales Artificiales (RNA), llamadas también sistemas conexionistas, son sistemas de procesamiento de información, cuya estructura y funcionamiento están inspirados en las redes neuronales biológicas. A través de su reciente historia, diferentes autores les han dado diversas definiciones: "Una nueva forma de computación, inspirada en modelos biológicos. Un modelo matemático compuesto por un gran número de elementos procesales organizados en niveles." [Hilera001 "Un sistema de computación conformado por un gran número de elementos simples, elementos de proceso muy interconectados, los cuales procesan información por medio de su estado dinámico como respuesta a entradas externas." [Hecht88] "Redes de elementos simples conectados masivamente y en paralelo, con una organización jerárquica, que interactúan con el mundo real en una forma análoga a como lo hacen los sistemas nerviosos biológicos." [Kohonen88] "Es un procesador masivamente paralelo que posee una propensión natural de almacenar conocimiento experimental y hacerlo disponible para el uso. Se asemeja al cerebro en dos aspectos: 1. El conocimiento es adquirido por la red a través de un proceso de aprendizaje Redes neuronales artificiales aplicadas a la biologia 23 2. Las conexiones entre neuronas conocidas como pesos sinápticos son utilizadas para almacenar el conocimiento." [Haykin94] Más precisamente, otros aspectos que definen y caracterizan una red neuronal son su topología, su mecanismo de aprendizaje, el tipo de asociación realizada entre la información de entrada y de salida, y la manera de representar éstas informaciones. Estos se discutirán en las secciones subsiguientes, no obstante, es conveniente apuntar ciertos detalles particulares de las redes neuronales artificiales cuando se les compara con los modelos tradicionales de hacer computación. La arquitedura de procesamiento de la información de los sistemas de RNA se distingue de la arquitedura convencional Von Neumann (que es el fundamento de la mayor parte de los computadores existentes) en una serie de aspectos trascendentales. En primer lugar, el procesamiento de la información de un modelo Von Neumann es secuencia1 mientras que el procesamiento en un sistema conexionista es paralelo, esto es, muchas unidades de procesamiento pueden estar funcionando simultáneamente [Bishop99]. En segundo lugar, un rasgo fundamental de una arquitedura Von Neumann es el carácter discreto de su memoria, mientras que en redes neuronales, la información no se almacena en compartimentos discretos, sino que se distribuye a través de los pesos que vinculan unas neuronas con otras. Los parámetros que definen el "conocimiento" que una red neuronal posee en un momento dado son sus conexiones y las funciones de activación de sus unidades de procesamiento. En un sistema conexionista las expresiones lingüísticas o simbólicas (reglas explícitas) no existen como tales, sino que son el resultado emergente de la interacción de muchas unidades en un nivel subsimbólico o carente de un conjunto establecido de símbolos interpretables. [Montaño02]. Por último, un sistema de RNA no se programa para realizar una determinada tarea a diferencia de una arquitectura Von Neumann, sino que es entrenado para tal efecto. Considérese un ejemplo típico de aprendizaje o formación de conceptos en la estructura de una RNA. Supóngase que se le presentan a una red dos tipos de objetos, por ejemplo la letra A y la letra E con distintos tamaños y en distintas posiciones. En el aprendizaje de la red neuronal se consigue, tras un número elevado de presentaciones de los diferentes objetos y consiguiente ajuste o modificación de las conexiones del sistema, que la red distinga entre As y Es, sea cual fuere su tamaño y posición en la pantalla. Para ello, podríamos entrenar la red neuronal para que proporcionase como salida el valor 1 cada vez que se presente una A y el valor O en caso de que se presente una E. El aprendizaje en una RNA es un proceso de ajuste o modificación de los valores o pesos de las conexiones, hasta que la conducta del sistema acaba por reproducir las Redes neuronales artificiales aplicadas a la biología 24 propiedades estadísticas de sus entradas [Freeman93]. En el presente ejemplo, podría decirse que la red ha "aprendido" el concepto de letra A y letra E sin poseer reglas concretas para el reconocimiento de dichas figuras, sin poseer un programa explícito de instrucciones para su reconocimiento. Por lo tanto, para entrenar a un sistema conexionista en la realización de una determinada clasificación es necesario realizar dos operaciones. Primero, hay que seleccionar una muestra representativa con respecto a dicha clasificación, de pares de entradas y sus correspondientes salidas. Segundo, es necesario un algoritmo o regla para ajustar los valores modificables de las conexiones entre las unidades en un proceso iterativo de presentación de entradas, observación de salidas y modificación de las conexiones. Las RNA son entonces un modelo que, bajo altos niveles de simplificación, trata de reproducir algunas características del comportamiento del cerebro. Dicha simplificación induce a determinar cuáles son los elementos relevantes del sistema. Una elección adecuada de componentes y características, aunado a una selección de una estructura conveniente, han permitido a través de los úItimos años construir redes neuronales artificiales capaces de realizar tareas particulares. Como se mencionó anteriormente, el elemento primigenio de una RNA es la neurona. A partir de ella es posible generar representaciones específicas, de tal forma que un conjunto de ellas, bajo un estado particular, puede significar una letra, un número o cualquier otro objeto. Para lograr esto, cada una de éstas neuronas o unidades de proceso consta a su vez de sub-elementos: a su haber conexiones sinápticas de entrada, un estado de activación y una función de salida o de transferencia. 3.3.1 La neurona o unidad de proceso La neurona o unidad de proceso, también conocida como nodo es la unidad de procesamiento fundamental de cualquier red neuronal. En ella se pueden identificar tres elementos principales: 1) las entradas o inputsa través de las conexiones sinápticas, 2) un sumador de las señales de entrada y 3) una función, g(.), de activación que influye en la salida u output de la neurona (figura 6). Redes neuronales artificiales aplicadas a la biología 25 + net j Figura 6. Modelo de una neurona artificial. X son las entradas, W representa los pesos y Y la salida [ChristoOl] El modelo de la neurona expuesto también incluye un umbral (conocido como bias) que participa como otra entrada al surnador. Dicho elemento representa un fenómeno biológico característico de las neuronas; éstas requieren, para disparar su activación, que el efecto acumulativo de todas las entradas provenientes de las neuronas conectadas supere cierto umbral. En neuronas vivas esto sucede gracias a variaciones eléctricas en los potenciales celulares. En una neurona artificial este umbral viene dado usualmente por una neurona conectada como entrada cuya salida es un valor fijo o constante (por ejemplo 1 o -1) [ChristoOl]. En términos matemáticos, la neurona de la figura 6 puede describirse mediante la siguiente ecuación: K net j = I ~ ~ k x k - 0 ~ k=l donde x,, x2,.....XK son las entradas, w,,, wI2 ,..., klK son los pesos sinápticos que convergen a la neurona j, y 8, es el bias o umbral. El estado global o estado de activación que alcanza una neurona tras la sustitución de valores en la ecuación 3.1 es luego transmitido a la función de activación g(.) (figura 6) y finalmente a la salida. Redes neuronales artificiales aplicadas a la biología 26 3.3.2 El estado de activación Una neurona artificial puede tener diferentes estados de activación; a veces como las neuronas biológicas solamente dos, pero otras veces pueden tomar cualquier valor dentro de un rango definido. La función de activación calcula el estado de actividad de una neurona; transformando la entrada global (menos el umbral) en un valor (estado) de activación, cuyo rango normalmente va de (O a 1) o de (-1 a 1) [HileraOO]. Una definición formal para un estado de activación resultante de una función de activación de tipo lineal es el siguiente: donde gin, representa el estado global producto de las entradas y pesos a la neurona y 0, es el umbral [MatichOl]. El procesamiento que realiza la red se ve entonces como la evolución de un patrón de activación en el conjunto de unidades que lo componen a través de las fases de entrenamiento. Todas las neuronas que componen la red se hallan en cierto estado, y es el estado global de la red misma el que le brinda un estado de conocimiento [MontañoOZ]. 3.3.3 Función de salida o transferencia Entre las unidades de proceso que conforman una red neuronal, existe un conjunto de conexiones que unen a unas con otras. Cada unidad transmite señales a aquellas que están directamente conectadas a su salida. Asociada con cada unidad U, hay una función de salida fi (a¡ (t-,que transforma el estado actual de activación ai (t) en una señal de salida yi (t), es decir: Redes neuronales artificiales aplicadas a la biología 27 y el vector que contiene las salidas de todas las neuronas en un instante t es: y (t) = (fi (al (t)), fz (az (U), f3 (33 (t)),, . ,S.. f~( a (t))) ~ En algunos modelos, esta salida es igual al nivel de activación de la unidad, en cuyo caso la función fi es la función identidad, fi (ai (t)) = ai (t). A menudo, fi es de tipo sigmoidal, y suele ser la misma para todas las unidades [HileraOOJ. Existen cuatro funciones de transferencia típicas que determinan distintos tipos de salidas: Función escalón, función lineal y mixta, función sigmoidal y función Gaussiana. 3.3.4 Neuronas con función escalón La función escalón, conocida también como función umbral se utiliza únicamente cuando las salidas de la red son binarias. La salida de una unidad de proceso se produce solo cuando el estado de activación es mayor o igual a cierto valor umbral [HileraOO]. Y Y 1 1 o X X -1 1 s i x >= O f(x) = f(x) = Osix < O I lsixi=O -1 si x < O A Figura 7. Funciones de transferencia del tipo escalón [HileraOO]. 28 Redes neuronales artificiales aplicadas a la biología 3.3.5 Neuronas con función lineal y mixta La función lineal o identidad responde a la expresión f(x) = x. Esto es equivalente a no aplicar función alguna, o bien conservar el actual estado de activación como la salida. En cambio, en las neuronas con función mixta, si la suma de las señales de entrada es menor que cierto límite inferior, la activación se define entonces como O (o -1). Si dicha suma es mayor o igual que el límite superior, entonces la activación es igual a 1. Si la suma de entradas está comprendida entre ambos límites (superior e inferior), entonces la activación se define como una función lineal de la suma de las señales de entrada [HileraOO]. Se puede representar las funciones de activación como se muestra en las figura 8. Y Y 1 = 1 Q c X 1 six€ c f ( + = Osix > c >q'(2c)+ l/2 e n o t r o caso I t 1 si x € -e f ( g = lsix > c x e n o t r o caso Figura 8. Funciones de transferencia del tipo mixto [HileraOO]. 3.3.6 Neuronas con función continua (sigmoidal) Cualquier función definida simplemente en un intervalo de posibles valores de entrada, con un incremento monotónico y que tenga ambos límites superior e inferior (por ejemplo la función sigmoidal o la arco tangente), podrá realizar la función de activación o de transferencia de manera satisfactoria. Con la función sigmoidal, para la mayoría de los valores de entrada, se retorna un valor que es cercano a una de las asíntotas. Esto hace que en la mayoría de los casos, el valor de salida esté comprendido en la zona alta o bien baja del sigmoideo. De hecho, cuando la pendiente es elevada, esta función tiende a la función escalón, Sin embargo, la importancia de la función Redes neuronales artificiales aplicadas a la biología 29 sigmoidal es que su derivada es siempre positiva y cercana a cero para los valores grandes positivos o negativos; además, la función identidad toma su valor máximo cuando x e s O. Esto a su vez posibilita que se puedan utilizar reglas de aprendizaje definidas para las funciones escalón, con la ventaja de que para la sigmoidea, la derivada está definida en todo el intervalo. La función escalón no puede definir la derivada en el punto de transición, lo cual no ayuda a los métodos de aprendizaje en los cuales se utilizan derivadas [MatichOl]. Figura 9. Funciones de activación tipo sigmoidal [HileraOO]. 3.3.7 Conexiones entre neuronas o pesos Cada conexión entre las neuronas de una RNA tiene asociado un peso, y en conjunto hacen que la red alcance algún grado de conocimiento. Considérese y, como el valor de salida de una neurona í en un instante dado. Una neurona recibe un conjunto de señales que le brindan información del estado de activación de todas las neuronas con las cuales se encuentra conectada. Cada conexión (sinapsis) entre la neurona í y la neurona j está ponderada por un peso w,;, Normalmente, como simplificación, se considera que el efecto de cada señal es aditivo, de tal forma que la entrada neta que recibe una neurona (potencial post sináptico) nec es la suma del producto de cada señal individual por el valor de la sinapsis que conecta ambas neuronas: nec= (eq 3.5) 1w j j s n Redes neuronales artificiales aplicadas a la biología 30 Esta regla muestra como se combinan los valores de entrada a la unidad con los pesos de las conexiones que llegan a esa unidad y es conocida como regla de propagación. Suele utilizarse una matriz W con todos los pesos wji que refleja la influencia que ejerce la neurona i sobre la neurona j. W es un conjunto de valores positivos, negativos o nulos. Si w,¡ es positivo, indica que la interacción entre las neuronas i y j es excitatoria, es decir, siempre que la neurona está activada, la neurona j recibirá una señal de i que tenderá a activarla. Si w, es negativo, la sinapsis será inhibitoria. En este caso, si i está activada, enviará una señal a j que tenderá a desadivar a ésta. Finalmente, si y,= O, se supone que no hay conexión entre ambas [HileraOO]. A continuación se describen algunas de las arquitecturas de redes neuronales artificiales más conocidas, haciéndose énfasis en aquellas que serán utilizadas en la investigación. 3.4 Tipos de arquitecturas en las redes neuronales artificiales Existen diversos tipos de arquitecturas en las redes neuronales artificiales, que en principio, están determinadas por la manera en la que sus neuronas se disponen así como por la relación que se establece entre ellas. El número de capas, la cantidad de neuronas por capa, el grado y tipo de conexiones entre neuronas y entre capas constituyen las principales características topológicas de una RNA. Según el número de capas, las redes neuronales artificiales se clasifican en dos tipos: de una capa y de múltiples capas. En las redes de una capa se establecen conexiones laterales, cruzadas o auto recurrentes entre las neuronas de la red. Se utilizan en tareas relacionadas con lo que se conoce como auto asociación; por ejemplo, para generar informaciones de entrada que se presentan a la red ya sea incompletas o distorsionadas. Dos ejemplos son la red de HOPFIELD y la BRAIN-STATE-IN-A-BOX [HileraOO]. Las redes multicapa por su parte son aquellas que disponen de conjuntos de neuronas agrupadas en varios niveles o capas. Una forma de distinguir la capa a la que pertenece la neurona, consiste en fijarse en el origen de las señales que recibe a la entrada y el destino de la señal de salida. Normalmente, todas las neuronas de una capa reciben las señales de entrada de otra capa anterior, más cercanas a la entrada de la red, y envían la salida a una capa posterior, más Redes neuronales artificiales aplicadas a la biología 31 cercana a la salida de la red. Según el tipo de conexión, se distinguen las redes feedforward, y las redes feedfomardl feedback. En las primeras, todas las señales se propagan hacia adelante a través de las capas de la red. No existen conexiones hacia atrás, y normalmente tampoco autorecurrentes ni laterales, excepto en algunos modelos propuestos por Kohonen. Las redes feedforward más conocidas son: PERCEPTRÓN, ADALINE, MADALINE, LINEAR ADAPTIVE MEMORY, BACKPROPAGATION. En cuanto a las redes feedfotward / feedback, se da un flujo de información tanto hacia adelante como hacia atrás, esto gracias a conexiones independientes. En general, excepto en el caso particular de las redes COGNITRON y NEOCOGNITRON, suelen ser de dos capas, existiendo por lo tanto dos conjuntos de pesos, que no necesariamente coinciden uno con el otro [MatichOl]. Seguidamente se anotan las principales características de los tres tipos de redes utilizados en la investigación; una del tipo Perceptrón Multicapa (PMQ, una red auto recurrente de Elman y una red auto organizativa de Kohonen 3.4.1 Perceptrón Multicapa (PMC) Varias unidades de proceso pueden combinarse para formar una capa de neuronas (perceptrón mono capa) y varias capas pueden a su vez combinarse para formar un Perceptrón Multicapa (PMC). En el caso de la red mono capa, que es el más simple posible en este tipo de redes, la información fluye desde las entradas hasta una sola capa de salida. Cuando este modelo se extiende a una red con por lo menos una capa más, se habla ya de un PMC. Las entradas se denominan capa O porque no realizan ningún cálculo, su cometido es presentar los patrones a la red. La siguiente capa (capa 1) es una capa oculta, la cual recibe los datos provenientes de la capa O y tras algún procesamiento pasa información a la capa siguiente, que puede ser otra capa oculta o bien la capa de salida en este caso. La figura 10 muestra una red de este tipo, con alimentación hacia delante, con una capa O de K neuronas, una capa oculta de 3 neuronas y una capa de salida de 1 neuronas [ChristoOl]. 32 Redes neuronales artificiales aplicadas a la biología capa 2 capa de salida capa 1 I r a capa oculta capa O capa de entrada Figura 10. Arquitectura típica de una red PMC con una capa oculta y alimentación hacia delante [ChristoOl]. 3.4.2 Red recurrente de Elman Inicialmente propuesta por Jordan en 1988 y posteriormente modificada por Elman en 1990 la arquitectura de esta red es similar a una red PMC con una capa oculta [Dietrich03]. Está conformada por una capa de entrada por donde se presentan los datos, una capa oculta en donde se realiza la representación interna de la información y una capa donde se producen las salidas (capa de salida). Adicionalmente existe otra capa denominada capa de contexto, la cual recibe información directamente de la capa oculta y transmite su salida a la misma capa oculta. [ChristoOl] (Figura 11). Esta capa de contexto produce lo que se conoce como un retardo o delay, el cual permite a la red almacenar información del estado anterior inmediato de las conexiones cuando se encuentra en la fase de aprendizaje. Con esto, una red Elman es capaz no solo de aprender a reconocer las particularidades contenidas en los patrones de entrada, sino también a construir una representación de las propiedades temporales o espaciales presentes en dichos patrones [Elman90]. Un requisito para este tipo de red es que se debe asignar un número mayor de neuronas en la capa oculta que el que requiere por ejemplo una red PMC. La justificación a esto viene dada por el aumento en complejidad de la función que la red aproxima internamente para lograr el mapeo temporal o espacial antes mencionado. Redes neuronales artificiales aplicadas a la biología 33 capa de contexto Figura 11. Arquitectura de una red recurrente de Elman con una capa oculta. Se aprecia la conexión recurrente en la capa oculta y la capa contexto [Elman90]. 3.4.3 Red auto-organizativa de Kohonen Existen evidencias que demuestran cierto nivel de organización espacial de grupos de neuronas en el cerebro humano, permitiendo una representación ordenada de la información adquirida a través de los órganos sensoriales. Esta organización parece darse principalmente en la corteza, en la forma de mapas bidimensionales. Dos ejemplos que se han estudiado son los mapas del campo visual encontrados en la parte de la corteza encargada de este sentido y los mapas auditivos encontrados en la parte que procesa los sonidos LHileraOOJ. Dichas evidencias impulsaron a T. Kohonen IKohonen821 a proponer en 1982 un modelo de red neurona1 artificial capaz de formar mapas de características en una manera similar a como se ha observado que ocurre en el cerebro. Este modelo cuenta con dos variantes; LVQ (Learning Vector Quant~zation)y SOM (Self Organizing Map) o Mapa Auto-organizativo de Kohonen (MAK). Ambas parten del principio de la formación de mapas topológicos para establecer características comunes entre los datos de entrada a la red. En términos generales, la LVQ (Figura 12) es una red de dos capas con N neuronas de entrada, en donde cada una de éstas se conecta con M neuronas de salida a través de conexiones hacia delante (feedforwaxl). Además puede decirse que entre las neuronas de la capa de salida existen conexiones laterales de inhibición, modeladas a través de una función de proximidad o vecindad, Redes neuronales artificiales aplicadas a la biologia 34 en donde la influencia de una neurona sobre las demás depende de la distancia que existe entre ésta y sus vecinas [HileraOO]. Figura 12. Arquitectura de una red auto organizativa de Kohonen LVQ. A las entradas le sigue la capa auto-organizativa de neuronas que aprenden por competencia. El MAK por su parte consiste en una capa de neuronas distribuidas en un espacio n-dimensional que generalmente tiene la forma de un hipercubo y al cual se le puede imaginar como una "rejilla" en donde se ubican las neuronas. Esta rejilla sirve para establecer una relación de distribución y de vecindad entre aquellas y se dice entonces que en una rejilla n-dimensional cada neurona- excepto las que se encuentran en los bordes tiene 2 * n vecinos (Figura 13). El MAK define una red elástica de puntos (vectores prototipo) que se ajustan al espacio de señales de entradas para aproximar la función de densidad de probabilidad de la variable vectorial de entrada. El MAK se usa extensivamente en minería de datos, representación de datos multidimensionales en dos dimensiones, categorización de datos (clustering) y análisis de relaciones entre variables [Viñuela04]. La distancia entre éstas neuronas vecinas se suele medir a través de la distancia Euclidiana, que no es más que la distancia lineal que existe entre una neurona A y una neurona B. Cada neurona tiene además un vector prototipo, que es un vector de pesos, tantos como dimensiones [Kohonen82]. La idea detrás consiste en establecer una adecuada correspondencia entre los datos de entrada y el espacio n-dimensional de salidas. Es común que estos mapas de salida sean de dos dimensiones, lo que facilita su visualización e interpretación. Los MAK aprenden a través de entrenamiento no supervisado y por lo que se conoce como aprendizaje competitivo. Redes neuronales artificiales aplicadas a la biología 3.5 36 Mecanismos de aprendizaje El aprendizaje es el proceso por el cual una red neurona1 modifica sus pesos en respuesta a una información de entrada. Los cambios que se producen durante el proceso de entrenamiento se reducen a la destrucción, modificación y creación de conexiones entre las neuronas. En los sistemas biológicos existe una continua creación y destrucción de conexiones. En los modelos de redes neuronales artificiales, la creación de una nueva conexión implica que el peso de la misma pasa a tener un valor distinto de cero. De la misma forma, una conexión se destruye cuando su peso pasa a ser cero [HileraOO]. Un aspecto importante respecto al aprendizaje de las RNA es el conocer cómo se modifican los valores de los pesos, es decir, cuales son los criterios que se siguen para cambiar el valor asignado a las conexiones cuando se pretende que la red aprenda una nueva información. Estos criterios determinan las reglas de aprendizaje de la red. A grandes rasgos, se suelen considerar dos tipos de reglas: las que corresponden a lo que se conoce como aprendizaje supervisado, y las que corresponden al aprendizaje no supervisado. La diferencia fundamental entre ambos tipos estriba en la existencia o no de un agente externo (supervisor) que supervisa el proceso de aprendizaje de la red. En el aprendizaje supervisado este agente externo comprueba la salida de la red y en caso de que ésta no coincida con la deseada, procederá a modificar los pesos sinápticos, con el fin de conseguir que la salida se aproxime a la deseada. Existen tres estilos de llevar a cabo este tipo de aprendizaje: 1) aprendizaje por corrección de error, en donde los pesos se ajustan en función de la diferencia entre los valores deseados y los obtenidos en la salida de la red, o dicho de otra forma, en función del error observado en cada ciclo del entrenamiento, 2) aprendizaje por refuerzo, el cual se basa en la idea de no indicar durante el entrenamiento el valor deseado de salida sino más bien aplicar una señal de refuerzo si la salida obtenida se ajusta a la deseada (éxito = +1 o fracaso = -1) y 3) aprendizaje estocástico, en donde el principio es realizar cambios aleatorios en los valores de los pesos sinápticos de la red y evaluar su efecto a partir del objetivo deseado y de las distribuciones de probabilidad asociadas [IzaurietaOZ]. En el aprendizaje no supervisado, la red no recibe ninguna información por parte del entorno que le indique si la salida generada es o no correcta, por lo que se pueden dar varias posibilidades en Redes neuronales artificiales aplicadas a la biología 37 cuanto a la interpretación de la salida de éstas redes. En algunos casos, la salida representa el grado de familiaridad o similitud entre la información que se le está presentando en la entrada y las informaciones que se le han mostrado en el pasado. En otro caso podría realizar una codificación de los datos de entrada, generando a la salida una versión codificada de la entrada, con menos bits, pero manteniendo la información relevante de los datos. Algunas redes con aprendizaje no supervisado realizan también lo que se conoce como un mapeo de características, obteniéndose en las neuronas de salida una disposición geométrica que representa un mapa topográfico de las características de los datos de entrada, de tal forma que si se presentan a la red informaciones similares, siempre sean afectadas neuronas de salidas próximas entre sí, en la misma zona del mapa [Kohonen82, HileraOO]. Dos tipos de aprendizaje no supervisado son: 1) aprendizaje Hebbiano, el cual consiste en modificar los pesos de las conexiones de acuerdo a un factor de correlación entre dos neuronas conectadas entre sí. Cuando ambos nodos están activos (positivos), se produce un reforzamiento de la conexión. Por el contrario cuando uno se encuentra activo y el otro pasivo (negativo), se produce un debilitamiento de la conexión. 2) aprendizaje competitivo / cooperativo, en donde las neuronas compiten (y cooperan) unas con otras con el fin de llevar a cabo una tarea asignada. Con este tipo de aprendizaje se pretende que cuando se presente a la red cierta información de entrada, solo una de las neuronas de salida se active (alcance su valor de respuesta máximo). Por tanto las neuronas compiten por activarse, quedando finalmente una, o una por grupo, como neurona vencedora [Haykin94]. Otro criterio que puede utilizarse para diferenciar las reglas de aprendizaje se basa en considerar si la red puede aprender durante su funcionamiento habitual, o bien si el aprendizaje supone la desconexión de la red, es decir su inhabilitación hasta que el proceso termine. En el primer caso, se trata de un aprendizaje online (en Iínea), mientras que el segundo se conoce como aprendizaje oHIne (fuera de Iínea) [IzaurietaOZ]. Cuando el aprendizaje es fuera de Iínea, se distingue entre una fase de aprendizaje o entrenamiento y una fase de operación o funcionamiento, existiendo un conjunto de datos de entrenamiento y un conjunto de datos de prueba que serán utilizados en la correspondiente fase de funcionamiento. Considerando las tres arquitecturas seleccionadas en la presente investigación en introducidas en los apartados anteriores, se describen a continuación los algoritmos de entrenamiento o aprendizaje utilizados por cada una de ellas. Redes neuronales artificiales aplicadas a la biología 38 3.5.1 Aprendizaje de las redes PMC Las redes tipo PMC utilizan aprendizaje supervisado y el algoritmo más extendido para entrenar éstas redes es el de retropropagación (back propagatiun). Este requiere de una red neuronal típica PMC, con conexiones hacia delante y sin conexiones laterales. Partiendo de una red PMC con una capa oculta, con una colección de patrones de entrada x(PT) y blancos o meta d(PT) a ser mapeados, el algoritmo puede describirse como sigue [ChristoOl]: 1) Se inicializan los pesos de toda la estructura neuronal en valores aleatorios pequeños 2) Se presenta el patrón de entrada x(p) de la colección de patrones de entrenamiento 3) Se calcula las salidas en las neuronas de la capa oculta y de la capa de salida a través de las respectivas ecuaciones: 4) Se verifica si y2,(p) = d,(p) (targeo para 1 <= i < = I . Esto conlleva a dos casos posi bles: a) Si se cumple la igualdad, ir al paso 7 b) Si no se cumple la igualdad, continuar con el paso 5 5 ) Se calculan los respectivos términos de error para los nodos en las capas de salida y oculta (es este orden), para retro-propagar el error a través de la red. Esto se realiza a través de las ecuaciones: Redes neuronales artificiales aplicadas a la biología 39 6) Una vez calculadas las salidas y los términos de error, se actualizan los pesos de acuerdo con: donde n es la tasa de aprendizaje. Lo anterior se conoce como la regla delta generalizada 7) Ahora, ante los dos posibles casos: a) p # PT, ir al paso dos y presentar el siguiente patrón de entrada b) p = PT, y un criterio de convergencia ha sido satisfecho (por ejemplo que la suma de errores al cuadrado sea menor que un valor predefinido), el entrenamiento se da por finalizado. Si este criterio no se ha cumplido, ir al paso dos y presentar el primer patrón de entrenamiento. Existen muchas variantes del algoritmo de retropropagación. La más común realiza la actualización de los pesos en la dirección en la cual la función de desempeño (encargada del error medio cuadrático) decrece más rápidamente, esto es, hacia la dirección negativa del gradiente. Es por eso que se utiliza el término gradiente descendente, pues en realidad el entrenamiento busca minimizar dicha función por pequeños pasos a través de un descenso paulatino. Además se puede contar con la participación de otro parámetro denominado mornentum, el cual establece el cambio en los pesos como la suma de una fracción del último valor de cambio de pesos y el nuevo cambio sugerido por la regla de retropropagación. La magnitud del efecto que el último cambio en el peso puede ejercer es mediada por la constante del momentum, la cual puede ser un valor entre O y 1 [Demuth06]. 3.5.2 Aprendizaje de las redes Elman En términos generales, las redes Elman pueden aprender a través del algoritmo de retropropagación. Aduciendo a la particularidad de este tipo de redes, la capa de contexto es tratada como otra capa oculta, en la que simplemente queda almacenada información del estado Redes neuronales artificiales aplicadas a la biología 40 anterior interno de la red. La capa oculta tiene la tarea de realizar el mapeo no solo de su información con la información de la capa de salida, sino también con la información contenida en esta capa de contexto [Dietrich03]. Esto se traduce en un mayor número de cálculos durante la etapa de entrenamiento, pero básicamente las funciones tanto de error como de salidas y la forma de actualización de pesos son homólogas a las utilizadas por el mecanismo de retropropagación. 3.5.3 Aprendizaje de las redes de Kohonen Estas redes utilizan aprendizaje no supervisado de tipo competitivo. En su entrenamiento se presenta a la red un conjunto vectores de entrada y la red busca establecer categorías o grupos en función de la semejanza de la información contenida en dichos vectores. El número de posibles categorías viene determinada por el número de neuronas definidas para la capa de salida [Haykin94]. El algoritmo de aprendizaje utilizado para asignar los valores a los pesos sinápticos entre las N neuronas de entrada y las Mneuronas de salida [Demuth06, Hilera001 puede resumirse así: 1) Se inicial los pesos (w,) con valores aleatorios pequeños y fijar la zona inicial de vecindad entre las neuronas de la capa de salida. 2) Se presenta a la red los patrones de entrada de la forma Ek = (e,? 3) ..., eik)). Para cada patrón de entrada se determina la neurona vencedora (aquella cuyo vector de pesos sinápticos sea más parecido a dicho patrón de entrada). Esto se efectúa calculando las distancias o diferencias entre ambos vectores. La distancia Euclidiana suele ser el método más utilizado: Siendo eJk' el componente i-ésimo del vector k-ésimo de entrada, y,, el peso de la conexión entre la neurona i de la capa de entrada y la neurona j d e la capa de salida. 4) Una vez determinada la neurona vencedora se actualizan los pesos de las conexiones entre las entradas y la neurona vencedora, asociando la información Redes neuronales artificiales aplicadas a la biología 41 de entrada con cierta zona de la capa de salida. Esto se hace con lo que se conoce como la regla de aprendizaje de Kohonen (learnkr o Kohonen Learning Rule) y que se realiza a través de: para j E Zona, (t) donde Zona, (t) es la zona de vecindad alrededor de la neurona vencedora j. Vale decir que el tamaño de esta zona se puede reducir en cada iteración del proceso de ajuste de pesos, con lo que el conjunto de neuronas que pueden considerarse vecinas cada vez es menor. El término a(t) es un parámetro de ganancia o coeficiente de aprendizaje, con valor entre O y 1, el cual decrece con el número de iteraciones (t). 5) Repetir el proceso presentando nuevamente todo el juego de patrones de entrada hasta cumplir una condición de parada (por ejemplo realizar el ciclo 500 veces, t < = 500). En el capítulo siguiente se describe la metodología utilizada en la investigación. Redes neuronales artificiales aplicadas a la biología 44 4.2.1 Digitalización de los cantos Esta etapa consiste en obtener señales digitales a partir de las grabaciones analógicas originales. Esto implica discretizar, bajo ciertos parámetros, el conjunto continuo de valores que compone una señal analógica. Para realizar esto, se utilizó una grabadora Sony WM-D6C conectada a la entrada de la tarjeta de sonido de la computadora mediante un cable espiga de 118 de pulgada. Como interfaz se utilizó el CoolEdit 4.0, el cual es un programa diseñado para el manejo y tratamiento de sonidos. En todo proceso de digitalización se deben especificar al menos tres parámetros: la frecuencia de muestreo, el número de bits, y el booleano estéreo - mono. La frecuencia de muestreo es la cantidad de veces que se tomará un valor de la señal original por unidad de tiempo. Dos opciones típicamente utilizadas para este parámetro en investigación bioacústica son 22.000 Hz y 44100 Hz. Si 1 Hz es la ocurrencia de un ciclo en un segundo, entonces 44100 Hz son esa magnitud de ciclos ocurridos en un segundo, o bien en nuestro caso, la toma de 44100 valores en cada segundo de la señal analógica de entrada. El segundo parámetro es el número de bits con el que se almacena cada muestra, en donde 8 y 16 son las opciones más comunes. La primera es menos precisa (menos dígitos de punto flotante), pero requiere menos espacio en disco. Finalmente, el booleano mono-estéreo permite seleccionar entre uno o dos canales respectivamente. Para efectos de la investigación y bajo el criterio de obtener todo el material digitalizado con una buena calidad de audio (comúnmente conocida como calidad CD), se ha utilizado un solo canal, además de 16 bits por muestra y una frecuencia de muestreo de 44100 Hz. 4.2.2 Fragmentación de los cantos La fragmentación de los cantos se realizó mediante la inspección auditiva y visual de todas las cintas digitalizadas, acompañada de la extracción y almacenamiento de los extractos en archivos individuales (Figura 15). Como se ha mencionado, la idea central era obtener un número representativo de cantos por especie y almacenarlos posteriormente como archivos tipo audio (.wav). Bajo este criterio, se dejó por fuera a especies con pocos cantos, o especies cuyos cantos grabados no fueran catalogados como de cortejo, pues otros tipos de cantos como por ejemplo llamadas de alarma o de contacto no suelen ser tan característicos y representativos de la especie [Kumar031. Así, se obtuvo un número inicial de 118 archivos correspondientes a 5 Redes neuronales artificiales aplicadas a la biología 47 acompaña a la señal principal (canto de la especie en cuestión), y por esta razón es importante la previa aplicación de los filtros antes mencionados. Así, el volumen de todos los archivos tienen un valor de referencia común, contribuyendo a minimizar sesgos relacionados con diferencias energéticas debidas a factores humanos y de equipo. 4.3 Codificación La codificación es una parte fundamental en el desarrollo de cualquier sistema neuronal ya que en ella se definen las características de los valores que servirán como entradas a la red. Los patrones se construyen a partir de valores que se combinan en lo que se conoce como un vector de características [Estévez99]. Un adecuado esquema de codificación facilita tanto el proceso de diseño como el de aprendizaje y funcionamiento de cualquier red neuronal artificial. A continuación se describen los dos esquemas de codificación propuestos. 4.3.1 Codificación mediante barrido de la frecuencia fundamental Este método para codificar los cantos se basa en una propiedad de las señales acústicas denominada frecuencia fundamental. Esta es la frecuencia en donde la energía (vista como amplitud) es máxima para un momento particular en el tiempo. Considerando que las señales en juego se componen de un espectro complejo en el plano de la frecuencia, lo que hace el algoritmo es barrer la señal desde tiempo O hasta tiempo t, y para cada punto especificado (cada 50ms o 100ms por ejemplo según se determine), toma el valor de la frecuencia que en el eje vertical (frecuencia) tenga un valor máximo de energía. Este procedimiento genera un vector cuyos valores constituyen magnitudes de frecuencia fundamental, tantas como puntos de muestre0 se hayan preestablecido en los parámetros del algoritmo. No existe evidencia en la literatura de cómo seleccionar dicho número de puntos. En realidad esto puede variar enormemente según la naturaleza de las señales, su duración y de la especificad de los resultados de clasificación esperados. Posiblemente se requiera una gran cantidad de puntos si el objetivo fuera clasificar individuos de una sola especie de ave, en donde las diferencias pueden ser sutiles. Se esperaría menos puntos en una clasificación de individuos de diferentes especies de aves y probablemente aún menos si se tratara de individuos de diferentes grupos (por ejemplo aves e insectos). Redes neuronales artificiales aplicadas a la biología 49 aunado al hecho de que se han utilizado anteriormente redes neuronales artificiales en el campo del reconocimiento de imágenes [BurguessOl], UadeoOlL [SymeonidisOOL surge la idea de probar un esquema de codificación basado en el espectrograma mismo. La extracción de características a partir de imágenes involucra en muchos casos el uso de procedimientos de normalización para variables como el tamaño de los objetos, la luz y las sombras, la posición relativa, la gama de colores, etc. Dichos ajustes tienen como fin homogenizar la información y eliminar la mayor cantidad del ruido que aquellas variables introducen nade00 11. En el caso de las imágenes de los cantos de aves o espectrogramas, el ruido como tal proviene en su mayoría más bien de las condiciones del entorno acústico de origen de las grabaciones. Es en este sentido un ruido más literal si se quiere, pues la noción habitual dé'ruido es de naturaleza acústica. Este ruido ha sido tratado ya en las etapas previas del pre procesamiento, cuando los archivos son vistos aún como sonido más que como imagen. La posible intervención del ruido del tipo discutido en el párrafo anterior se ve reducida a aspectos de dimensión y densidad de las imágenes. Esto es gracias a que la forma en que los programas para bioacústica representan los sonidos está libre de factores como luz y sombras, y algo como la posición de los elementos dentro de la imagen se ve normalizada con solo establecer las mismas dimensiones y puntos de inicio para todos los cantos. Lo mismo pasa con el color, pues ya sea que se utilice la escala de grises o bien alguna paleta de colores en particular, basta con que éstas sean comunes para todo el conjunto de datos. No obstante, así como sucede con el sonido, el tamaño de los archivos de tipo imagen suele ser grande y esto motiva la búsqueda de un método de simplificación de la información. Una posibilidad es realizar un procesamiento por bloques para cada imagen, definiendo un tamaño fijo por bloque (por ejemplo 20 x 20 píxeles) y extraer de cada uno un valor promedio, o un valor máximo para algún aspecto de interés represente en la señal. Redes neuronales artificiales aplicadas a la biología 4.4 51 Redes neuronales artificiales Los tres modelos o tipos de red seleccionados para el trabajo fueron: 1) un perceptrón multicapa o PMC, 2) una red auto recurrente de Elman y 3) una red de Kohonen (MAK). La implementación de estos se llevó a cabo en una computadora Dell Inspiron 9300 con un procesador Pentium M de 1.8 GHz y 1GB de memoria RAM. Se utilizó el entorno Matlab 7, con ayuda del módulo neural toolbox 5.0 [Demuth06], que es una extensión del mismo Matlab que cuenta con una serie definiciones de modelos de redes neuronales artificiales. Cada tipo de red fue probado con los esquemas de codificación y el proceso metodológico para cada red se ha dividido en tres partes: 1) definición de la estructura, 2) entrenamiento y 3) validación. En la definición de la estructura se especifica el número de capas, el número de neuronas por capa y las funciones de transferencia utilizadas entre capas. En el entrenamiento se específica el algoritmo de entrenamiento, los valores seleccionados para los parámetros propios del algoritmo y los resultados obtenidos para cada variante utilizada en función de los criterios mencionados en el párrafo anterior. La validación se realizó tanto con los datos usados en el entrenamiento así como con datos no conocidos por las redes. Estos últimos en particular son los que brindan información del estado alcanzado por la red en cuanto a su capacidad para clasificar como a su capacidad para generalizar. Es conveniente mencionar que los vectores obtenidos en el pre procesamiento fueron almacenados en archivos independientes de tipo texto (.M),uno para cada archivo de audio. Éstos se leyeron posteriormente a través de una rutina llamada desde la línea de comandos de Matlab. Los vectores contenidos en cada archivo se añadieron al espacio de memoria del Matlab en una matriz de la forma [M x N], donde M representa el número de elementos en cada vector y N el número de archivos a utilizar ya sea en el entrenamiento o bien en la evaluación de las redes. En el caso de la red perceptrón multicapa con retropropagación y la red Elman, también se debió proporcionar una matriz con vectores meta (targets), pues al tratarse de redes con entrenamiento supervisado el aprendizaje se realiza a través de la continua comparación de las salidas contra las respuestas deseadas, que son precisamente las especificadas en esta matriz de vectores meta. Esta tiene la forma [J x N], donde 3 es el número de clases o categorías de Redes neuronales artificiales aplicadas a la biología 52 clasificación (en este caso 5 especies de aves), y N nuevamente es el número de archivos utilizados en el entrenamiento o la validación. Finalmente, se estableció un valor general para todas las redes del error medio cuadrático igual a 0.001, que funciona a su vez como la condición ideal de parada en la fase de entrenamiento. Seguidamente se explica la implementación para cada tipo de red. 4.4.1 Red perceptrón multicapa con retropropagación La estructura de esta red viene determinada en primera instancia por el número de elementos que conforman los vectores de datos y por el número de clases en el que se desea clasificar dichos datos. El primer caso define el número de nodos o neuronas de entrada mientras el segundo caso define el número de nodos de la capa de salida. Posteriormente se establece el número de capas ocultas y el número de nodos para cada una de éstas capas, además de las funciones de transferencia entre las capas. Hilera [Hilera001 y Christodoulou y Georgiopoulos [ChristoOl] sostienen que una red neurona1 artificial con una sola capa oculta y funciones tangencia1 y lineal tiene la capacidad de aproximar cualquier función de carácter no lineal. Este se considera un buen argumento para la decisión tomada en primera instancia; efectuar todas las pruebas con redes de una sola capa oculta, bajo la premisa de lograr resultados acordes con las expectativas planteadas en los objetivos y en las metas. Para seleccionar el número inicial de neuronas que conforman la capa oculta existe no obstante bastante discusión. Aunque se pueden encontrar en la literatura varias fórmulas que brindan un punto de partida, se coincide en que se trata de un asunto de prueba y error, en donde la experimentación y realización de varias pruebas son la estrategia más segura. Por ejemplo Baum y Haussler [ChristoOl] proponen una fórmula para estimar el número de neuronas de la capa oculta, dividiendo el número de patrones que se utilizará en la fase de entrenamiento entre la suma de las neuronas de entrada y salida multiplicada por 10 (J=PT/IO(K+IA, representa el número de neuronas buscado, P T el en donde J número de patrones (igual al número respectivo de valores meta) de entrenamiento, K e Ison respectivamente el número de neuronas de entrada y salida. Dicho en otras palabras, lo que se sugiere con esta expresión es Redes neuronales artificiales aplicadas a la biología 53 que la relación entre los patrones de entrenamiento y la cantidad de conexiones sinápticas de la red debe ser de 10: 1 para lograr una buena capacidad de generalización. Como en la investigación esta relación no se cumple debido a que la muestra es pequeña, se ha utilizado la prueba y error para buscar un número óptimo de neuronas de capa oculta. Inicialmente se estudió una red con estructura 10-16-5, lo que quiere decir, con 10 neuronas de entrada, 16 en la capa oculta y 5 en la capa de salida. Las funciones de transferencia fueron respectivamente tansig y purelin (Figuras 8 y 9). A las posteriores redes se les varió el número de neuronas en la capa oculta en un factor de 4, ya sea aumentando 4 y comparando los porcentajes de clasificación con la red predecesora o bien disminuyendo en 4 el número de neuronas para efectuar una comparación similar (resultados en el capítulo siguiente). En cuanto a los detalles de entrenamiento, existen en Matlab (neural toolbox 5.0) unas 9 variantes disponibles para el algoritmo de retropropagación. Éstas han sido desarrolladas en su mayoría para optimizar los tiempos de entrenamiento y convergencia, que son usualmente muy altos para las variantes clásicas de retropropagación (gradiente descendente y gradiente descendente con momentum). Todas estas versiones del algoritmo funcionan solo bajo la modalidad por lotes (batch), la cual consiste en realizar la actualización de los pesos de de la red al final de cada época (ciclo de entrenamiento), solo hasta que hayan sido presentados la totalidad de los vectores de entrada. Se seleccionaron dos de éstas variantes: gradiente descendente con momentum (traingdm) y Levenberg-Marquardt (trainlm). La primera es talvez la forma más utilizada hasta ahora en la retropropagación y se consideró importante tomarla en cuenta como referencia en el proceso de evaluación de los demás tipos de red y sus mecanismos de aprendizaje. Levenberg-Marquardt por otra parte se ha seleccionado en vista de su velocidad y aspectos en el manejo de memoria y en su uso en aplicaciones vinculadas al reconocimiento de patrones [VoMa88]. Finalmente, después de completada las respectivas fases de entrenamiento para cada red, la capacidad de clasificación de cada una se midió en la fase de simulación o prueba (generalización), esto a través de los datos usados en el entrenamiento y de datos nuevos (desconocidos para la red) mediante el porcentaje de aciertos en cada caso o porcentaje de éxito (eq 4.2) Redes neuronales artificiales aplicadas a la biología 9 b de éxito = 54 # de aciertos # Total de cantos * 100 4.4.2 Red auto-recurrente de Elman Como se ha visto, la red de Elman es una red con conexiones hacia adelante entre sus capas, pero que además presenta conexiones hacia atrás entre la capa oculta y una capa adicional y exclusiva de esta arquitectura, denominada capa de contexto. Según el mismo Elman LElman90L esta particularidad le confiere a la red no solo la capacidad de construir representaciones internas . de los patrones que le son entregados, sino también la capacidad de incorporar características temporales y/o espaciales de los datos en dichas representaciones. Para lograr esto, uno de los aspectos de diseño que se deben tomar en cuenta es añadir más neuronas a la capa oculta, pues la complejidad de aquella representación interna es mayor. Considerando que estas cualidades han sido útiles en aplicaciones relacionadas con el reconocimiento de patrones acústicos LPfennig061, se utilizó en primera instancia una conformación 10-19-5; 10 neuronas de entrada, 19 en la capa oculta, 19 en la capa de contexto y 5 en la capa de salida. Las funciones de transferencia fueron respectivamente tansig y purelin. El entrenamiento se realizó mediante retropropagación, pues la topología de la red lo permite. Las variantes utilizadas fueron nuevamente el gradiente descendente con momentum (traingdm) y Levenberg-Marquardt (trainlm). Esto permitió comparar formas de entrenamiento iguales en redes con arquitectura diferente. 4.4.3 Red auto-organizativa de Kohonen Esta red fue utilizada en su versión conocida como mapa auto-organizativo de Kohonen. Como se mencionó en la parte teórica, esta es una red compuesta por una sola capa de neuronas, en donde los pesos sinápticos se van modificando durante la fase de entrenamiento y cada una de estas neuronas compite por activarse ante un patrón específico de entrada. Partiendo de las 5 especies de aves que interesa clasificar, se definió inicialmente una red de Kohonen compuesta por 5 neuronas. Esta fue entrenada tanto con los patrones obtenidos de la codificación de las frecuencias fundamentales así como con los patrones obtenidos de la codificación por imágenes y dicho entrenamiento fue realizado varias veces modificando parámetros típicos de este tipo de Redes neuronales artificiales aplicadas a la biología 55 red como lo son la tasa de aprendizaje, el número de épocas, el error medio cuadrático, el número de ciclos de ordenamiento y el valor para la función de distancia entre neuronas vecinas. El conjunto de los datos utilizados en la investigación fue dividido en dos subconjuntos al 50:50, la primera mitad utilizada para la fase de entrenamiento y la segunda mitad utilizada para la fase de evaluación. En una segunda ronda de pruebas, se tomó la determinación de utilizar el 10O0/0 de los datos para el entrenamiento y realizar la validación con los mismos datos. Con esto se quiso estudiar el efecto del tamaño de la muestra en el aprendizaje de una red que se entrena de manera no supervisada. Posteriormente se aumentó el número de neuronas de cinco a seis y posteriormente a siete, con la intención de aumentar la probabilidad de que la red estableciera subgrupos en aquellos casos en donde no sería clara la separación entre algunas de las especies. Finalmente se graficaron algunas de estas redes en una proyección de tres dimensiones con el fin de observar la separación espacial que los mapas de Kohonen realizan sobre el conjunto muestra1 de los datos. En el siguiente capítulo se presentan los resultados obtenidos para todas las pruebas experimentales definidas en la metodología. Redes neuronales artificiales aplicadas a la biología 56 Capitulo 5 Implementación y resultados A continuación se presenta la secuencia experimental de la implementación, pruebas realizadas y resultados obtenidos para los esquemas de codificación y su combinación con las diferentes redes neuronales utilizadas. Para cada una, se transcriben y discuten las líneas más importantes del código, se presenta un esquema de la estructura de cada red, una gráfica del proceso de entrenamiento con los respectivos parámetros y algunos cuadros con el resumen de los tiempos de entrenamiento y los porcentajes de clasificación obtenidos. 5.1 Codificación mediante barrido de la frecuencia fundamental Como se mencionó en la metodología, el algoritmo utilizado en este esquema extrae un valor de la frecuencia fundamental de una señal cada cierto tiempo. Según sea este valor del tiempo (expresado como el intervalo entre puntos de muestreo), así es el número de muestras o puntos obtenidos. La pregunta principal es ¿cuántos puntos son suficientes para lograr una descripción numérica de la señal que la identifique y permita distinguirla de las demás? Como no existe una fórmula que satisfaga esta interrogante y considerando que la descripción de una señal está íntimamente ligada a los alcances de la investigación y al juego de datos disponible, se utilizó un criterio simple para definir este número. Si el número de puntos obtenido permite reconstruir una señal que auditivamente contenga los elementos esenciales de la señal original, entonces se considera un número válido. Esto fue posible gracias a un sintetizador que viene integrado con el SASLAB pro. Este recibe un conjunto de puntos de frecuencia fundamental y sintetiza una señal tomando en cuenta el tiempo entre cada uno de ellos en la fase de muestreo. Así, tras sintetizar y escuchar minuciosamente diversas señales, se estableció una relación de 10 puntos de muestreo por cada segundo de grabación, lo que equivale a un intervalo de tiempo aproximado de 100 ms entre cada uno de estos puntos. La validez de esta relación fue corroborada posteriormente midiendo la capacidad de las redes para clasificar correctamente a las especies a través de estos vectores de codificación. Un ejemplo de los datos resultantes tras la aplicación de este esquema puede verse en la figura 19. La señal original (arriba) es barrida desde tiempo O hasta tiempo t. Aproximadamente cada 30 ms se observa un punto (abajo) que corresponde a un valor de frecuencia fundamental. Estos se conectan a través de Lina línea y se proyectan en la ventana del sintetizador. Esta señal Redes neuronales artificiales aplicadas a la biología 59 Posteriormente se redujo la dimensionalidad de éstas matrices mediante una forma de compactación de la matriz en su eje vertical. Las ocho filas que componían dicho eje se redujeron a una, esto mediante la concatenación de los valores que compartían posición en cada columna. El orden de los dígitos dentro del nuevo valor obedece a un orden de posición vertical. Los valores más a la derecha corresponden con frecuencias bajas y los valores más a la izquierda a frecuencias altas. La posición de cada valor dentro de los vectores refleja el punto en el tiempo que dentro de la señal ocupaba cada uno de dichos valores. Concluidos los procedimientos que permitieron codificar los datos originales, se presentan a continuación los resultados obtenidos para las diferentes redes neuronales artificiales desarrolladas. 5.3 PMC con retropropagación Esta sección detalla la implementación y pruebas realizadas para una red perceptrón multicapa entrenada con el algoritmo de retropropagación. Para este último, se exponen los resultados obtenidos para dos variantes, tanto cuando se trató del uso de los patrones codificados como frecuencias fundamentales así como con los patrones codificados a partir de imágenes. 5.3.1 PMC - Frecuencia fundamental (Variante gradiente descendente con momentum) Las líneas principales del código que implementan el diseño inicial de esta red son: 1 . net=newff(minmax(p), ( 1 6,5),('tansig: 'purelin 7, 'traingdrn7,, 2. net.trainParam.show = 50; 3. net.trainparam.Ir = 0.001; 4. net.trainparam.epochs = 50 000; 5. net.trainParam.goa1 = 1 e-3; 6.net.trainparam.m c = 0.9 En la primera línea se crea una nueva instancia de un objeto del tipo red alimentada hacia delante (feed forward) y cuyo constructor recibe los parámetros que definen las demás características topológicas; rninmax(pl extrae los valores mínimos y máximos de los vectores en Redes ineuronales artificiales aplicadas a la biología 63 Manteniendo las mismas condiciones para todos lo demás parámetros se aumentó la tasa de aprendizaje a un valor de 0.1. Los resultados se aprecian en la figura 25. La red ha convergido al error cuadrático esperado, por lo que la fase de entrenamiento se considera exitosa. La figura incluye la gráfica de la mejor ejecución de entrenamiento y el tiempo promedio después de 5 corridas. Estructura:lO-16-5 Transferencia: tansig-purelin Variante: traingdm # Máx. de épocas: 50000 Error cuadrático: 0.001 Tasa aprendizaje: 0.1 Momentum: 0.9 Tiempo requerido: 18.37 minutos. Figura 25. Parámetros y curva del proceso de entrenamiento para el PMC 10-16-5 después de la modificación de la tasa de aprendizaje (Ir= 0.1) y normalización de los datos a un rango [-1,1]. Una vez que se logró la convergencia de la red al valor meta establecido, se evaluó nuevamente su capacidad de clasificación (figura 25) y generalización (figura 26). La línea de código que permiten hacer esto en Matlab es: salidas = sim(net, D a t o s Validacion), Esta instrucción toma el objeto net, que alberga toda la estructura de la red entrenada con los respectivos pesos y le presenta los vectores contenidos en Datos-Validación (en total 56 patrones), que son los datos no vistos antes por la red. Figura 26. Resultados de validación para una red PMC y retropropagación con datos de entrenamiento. Se coteja la respuesta de la red (abajo en negrita y gris) contra los vectores meta (arriba en negrita). Redes neuronales artificiales aplicadas a la biología - 67 Cuadro 4. Resultados de la validación con datos nuevos para la mejor red obtenida en esta etapa de la investigación. Se presentan los porcentajes de clasificación correcta para cada especie y el detalle del número de cantos por especie. Especie # cantos Clasificado como Ca Cf Cg Cm Sat # clasificados Exito correctos generalización C aurantirostris(Ca) C fuscater (Cf) 10 4 0 6 0 O 4 40 4 0 2 2 0 O 2 50 O/O C gracilirostris(Cg) 17 0 0 2 O 15 88 O/O C mexicanus (Cm) 17 0 1 0 11 65 Oh S atriceps (Sat) 8 O 7 7 87 O/O Total 56 1 5 3 0 1 1 1 0 39 O/O 70 010 Hasta este punto los resultados presentados corresponden a redes neuronales entrenadas y evaluadas con vectores de 10 elementos. Los resultados para redes que utilizaron vectores de 15 elementos se resumen a continuación. Se consideró como punto de partida la mejor red lograda para la codificación de los 10 elementos y con sus valores paramétricos se sustituyeron los patrones de entrada por aquellos con 15 componentes para estudiar el efecto de agregar más elementos de entrada a una configuración de red ya probada. Las primeras pruebas indicaron que la configuración de red-que mostró buenos resultados con vectores de 10 elementos, dista significativamente de ser una buena configuración para el nuevo conjunto de datos de entrada. No obstante sí facilitó el proceso de búsqueda de una buena red que procesara los patrones de 15 elementos, siendo la mejor red obtenida aquella con una conformación 15 - 24 - 5 (cuadro 5), entrenada con una tasa de aprendizaje de 0.1 y cuyos porcentajes de éxito fueron del 10O0/0 en la clasificación de patrones de entrenamiento y de un 68% en la generalización. 68 Redes neuronales artificiales aplicadas a la biología u- Parámetros d e entrena-miento: Estructura: 15-24-5 Transferencia: tansig-purelin Variante: traingdm # máx de épocas: 50000 Error cuadrático: 0.001 Tasa aprendizaje: 0.1 Momentum: 0.9 1 Tiempo requerido: 16.3 minutos. Figura 30. Parámetros y curva del proceso de entrenamierito para la red PMC 15-24-5 con tasa de aprendizaje Ir= 0.1 y datos normalizados a [-1, 11. No se observaron diferencias marcadas entre redes que utilizaron vectores de entrada de 10 elementos y las que utilizaron vectores de entrada de 15 elementos en lo que respecta a los porcentajes de éxito en la generalización. Conformación Ir (tasa Tmin Tmax Tpromedio Exito generalización aprendizaje) (minutos) (minutos) (minutos) 0.2 9.18 15.50 12.25 45% 15-20-5 15-24-5 0.1 13.30 18.45 16.30 68% 15-28-5 0.1 18.26 21.05 20.37 61O/o 15-15-5 O. 1 7.45 14.50 11.09 53O/O - Cuadro 5.Tiempos de entrenamiento y porcentajes de éxito en generalización redes PMC traingdm entrenadas con vectores de 15 elementos. Los tiempos se expresan en minutos y segundos. Se verán seguidamente los resultados obtenidos para la variante Levenberg-Marquardt como segunda opción de retropropagación para la red PMC. 5.3.2 PMC - Frecuencia fundamental (Variante Levenberg-Marquardt) Para crear una red PMC que se entrenara con esta variante de retropropagación se utilizó la siguiente instrucción: net=newff(minmax(Datos Entrenamiento), (16,5),('fansig','purelin3, 'trainlm7, 69 Redes neuronales artificiales aplicadas a la biología en la que de manera similar a la variante utilizada anteriormente (traingdm), se declara un nuevo objeto tipo red con conexiones hacia adelante, con la misma estructura, las mismas funciones de transferencia, pero ahora con trainlm como una variante del algoritmo de retropropagación. Los primeros resultados para esta red (figura 31) muestran que la convergencia al valor del error medio cuadrático establecido es muy rápida e incluso abrupta (duración promedio = 0.15 minutos.) y que la cantidad de épocas para converger es sumamente baja (promedio = 10). Estructura:lO-16-5 Transferencia: tansig-purelin Variante: trainlm # máx de épocas: 10000 Error cuadrático: 0.001 Tiempo requerido: 0.15 minutos. I I Figura 31. Parámetros y curva del proceso de entrenamiento para la red PMC 10-16-5 con la variante trainlm. La validación de la red 10-16-5 se realizó nuevamente con los datos utilizados en el entrenamiento (lOOO/í de éxito) y con los datos no conocidos por la red (51% de éxito). Parece ser que un entrenamiento rápido no se traduce necesariamente en buenos porcentajes de generalización. Estructura: 10-20-5 Transferencia: tansig-purelin Variante: trainlm # máx de épocas: 10000 Error cuadrático: 0.001 Tiempo requerido: 0.20 minutos. Figura 32. Parárnetros de red y curva del proceso de entrenamiento para el PMC 10-20-5 con la variante trainlm. Redes neuronales artificiales aplicadas a la biología 70 Posteriormente se aumentó el número de neuronas en la capa oculta de 16 a 20 El comportamiento observado fue muy similar. La duración del entrenamiento promedio fue de 0.20 minutos y el porcentaje de éxito de generalización fue del 5O0/0 (figura 32). En vista de que el aumento de neuronas no pareció tener efecto alguno, se procedió a disminuir este número a 12 (figura 33). Con esta variación la red presenta duraciones de entrenamiento similares a los dos casos anteriores. No obstante, el porcentaje de éxito en la generalización aumentó levemente (58 %) Parámetros de entrenamiento: Estructura: 10-12-5 Transferencia: tansig-purelin Variante: trainlm # rnáx de épocas: 10000 Error cuadrático: 0.001 Tiempo requerido: 0.22 minutos. Figura 33. Parámetros de red y curva del proceso de entrenamiento para PMC 10-12-5 con la variante trainlm. Los resultados generales para las redes PMC entrenadas con retropropagación y variante Levenberg-Marquardt se resumen en los cuadros 6 y 7. Puede apreciarse la notable disminución en los tiempos de entrenamiento y lo rápido que convergen las redes al error medio cuadrático en comparación con redes que utilizaron la variante gradiente descendente y momentum. También es claro el bajo desempeño en términos de clasificación (generalización) que las mismas presentan cuando se les compara con las mencionadas PMC con traingdm. Cuadro 6. Resumen de los tiempos de entrenamiento y porcentajes de éxito en generalización para las redes trainlm. Los tiempos se expresan como minutos: segundos. Trnin Tmax Tprornedio Exito (minutos) (minutos) (minutos) generalización 10-16-5 0.12 0.17 0.15 51 O/o 10-20-5 0.13 0.24 0.20 50 Oo/ 0.09 0.26 0.22 58 O/o Conformación 10-12-5 71 Redes neuronales artificiales aplicadas a la biología Se observó también que las especies con las que más se equivoca la red son C. aurantirostris (44%) y C. fuscater (20%). Además aparecen los primeros casos en los que red no puede clasificar un canto en ninguna de las especies (salidas son '0' para las 5 neuronas de salida). Cuadro 7 . Resultados de la validación con datos nuevos para la mejor red obtenida del tipo PMC variante trainlrn. Se presentan el detalle del numero de cantos por especie y los porcentajes de clasificación correcta para cada especie. N = número de cantos en donde las 5 neuronas de salida contienen Os. # clasificados Exito correctos generalización N O O 4 44 % 1 20 OO/ 1 13 81 O/O 11 65 % # Especie cantos Clasificado como Ca Cf Cg Cm Sat C aurantirostris(Ca) 9 4 0 3 C fuscater (Cf) 5 1 2 2 2 13 2 O O O 1 0 3 0 4 3 C gracilirostris(Cg ) 16 O O C mexícanus (Cm) 19 1 S atriceps (Sat) 8 O Total 57 O 1 0 3 1 1 4 58 % 33 58 O/O La siguiente sección trata la implementación y resultados obtenidos para redes del tipo PMC de retropropagación en sus variantes traingdm y trainlm utilizando el esquema de codificación por imágenes. 5.3.2 PMC - Imágenes (Variante gradiente descendente con momentum) Para esta parte se utilizó inicialmente vectores de entrenamiento y validación compuestos por 120 elementos (codificación de imágenes). Como punto de partida se creó una red con 50 neuronas en la capa oculta y una tasa de aprendizaje de 0.1. Figura 34. Esquema de la primera red PMC utilizada. Estructura 120 - 50 - 5 con funciones de transferencia tansig y purelin. Fuente: nntool de Matlab, Mathworks inc. Redes neuronales artificiales aplicadas a la biología 72 Parámetros de entrenamiento 1 Estructura:120-50-5 Transferencia: tansig-purelin Variante: traingdm # Máx. de épocas: 50000 Tasa de aprendizaje: 0.1 Error cuadrático: 0.001 Tiempo requerido: 42.10 minutos. Figura 35. Parámetros y curva del proceso de entrenamiento para el PMC 120-50-5 de retropropagación. La figura 35 muestra una gran inestabilidad en la fase de entrenamiento para esta red. A pesar de esto se aprecia un descenso en el error medio cuadrático hasta aproximadamente 0.1. Tras realizar la evaluación de esta red entrenada pobremente se obtuvo porcentajes de éxito de 17% (patrones de entrenamiento) y 3% (patrones desconocidos), considerados como porcentajes sumamente bajos. Luego de algunas pruebas con varias combinaciones del número de neuronas de capa oculta y la tasa de aprendizaje, se obtuvieron algunas redes que lograron alcanzar la convergencia en la fase de entrenamiento (la mejor se aprecia en la figura 36). A pesar de su elevado tiempo de entrenamiento comparado con otras conformaciones (44 minutos promedio), lograron muy buenos porcentajes de éxito (10O0/0 con patrones de entrenamiento y 91% con patrones desconocidos) (cuadro 8). Estructura:120-75-5 Transferencia: tansig-purelin Variante: traingdm # Máx. de épocas: 50000 Tasa de aprendizaje: 0.01 Error cuadrático: 0.001 Tiempo requerido: 16808 E P O C ~ . , 44.30 minutos. Figura 36. Parámetros y curva del proceso de entrenamiento para el PMC 120-75-5 de retropropagación. Redes neuronales artificiales aplicadas a la biología 76 Cuadro 10. Resumen de los tiempos de entrenamiento y porcentajes de éxito en generalización para las redes traingdm. Los tiempos se expresan como minutos: secundas. Conformación Tmin Tmax Tpromedio Exito (minutos) (minutos) (minutos) generalización 15-20-5 15.11 17.08 15.45 90 o/' 15-16-5 14.30 18.55 15.12 89o/' 15-12-5 12.24 16.43 14.32 91 O/o A partir de los tiempos promedio d e entrenamiento y (le los porcentajes de éxito parece apoyarse el hecho de que la codificación basada en imágenes es más robusta y estable ante cambios en las estructuras de las redes. Cuadro 11. Resultados de la validación con datos nuevos para la mejor red obtenida del tipo PMC variante traingdm. Se presenta el detalle para cada especie y porcentaje de clasificación correcta. N = número de cantos en donde las 5 neuronas de salida contienen Os. Un aspecto interesarite observado es que no existen diferencias muy marcadas entre los porcentajes de éxito obtenidos para las redes entrenadas con vectores de 120 elementos y las entrenadas cori los vectores de 15 elementos. 5.3.3 PMC - Imágenes (Variante Levenberg-Marquardt) Trds la ejecricióri del rriisrno esquema empleado en I? variante traingdm, se probaron tres redes neiironales La prirrier~i,cori iina estructura 15 20 5, ,'e entrenó en riiirliitos y riioc,tió porcc3ritaj~s de éxito cercano5 al 65%. L 1 G 5, se eiitrt>rio ~ r Oi 16 rriiniitos y o b t ~ i v orin éxito rlel G:% ci Iiri tienipo promedio de O 11 5eguridci tuvo uria conformdciori 15 La tercera coriveryió eri kiri proriiedio dc O 14 niiriiitos y y~ricrcilizocon un4 r x a c t i t ~ i ddel 69% (cortforrnacitiii 15 17 '1) tieimpo Redes neuronales artificiales aplicadas a la biología 77 Dada la similitud de los resultados obtenidos para este tipo de redes, se incluye solo una figura con los parámetros y la curva de entrenamiento para la red 15-12-5 (figura 42) y el cuadro con los resultados de la respectiva validación (cuadro 12). Parárnetros de entrenamiento: Estructura: 15-12-5 Transferencia: tansig-purelin Variante: trainlm # máx de épocas: 10000 Error cuadrático: 0.001 Tiempo requerido: 00.14 minutos Figura 42. Parámetros de red y curva del proceso de entrenamiento para PMC 15-12-5 con la variante trainlm. Los datos utilizados provienen de la codificación por imágenes. Un aspecto que se debe resaltar aquí es que los promedios de éxito en la generalización varían en aproximadamente un 24%. La primer impresión apunta a que se trata de redes con cierto grado de inestabilidad, siendo dos posibles causas los pesos aleatorios con los que red se inicializa y la poca cantidad de épocas que se están necesitando para converger. Cuadro 12. Resultados de la validación con datos nuevos para la mejor red obtenida del tipo PMC variante trainlm y codificación a partir de imágenes. Se presentan los porcentajes de clasificación correcta para cada especie y el detalle del número de cantos por especie. N = número de cantos en donde las 5 neuronas de salida contienen Os. Especie C aurantirostris (Ca) # cantos 9 Clasificado como Ca Cf 5 0 C fuscater (Cf) 5 0 C gracilirostris (Cg ) 16 2 C rnexicanus (Cm) 19 0 S atriceps (Sat) 8 O Total 57 0 correctos generalización Cg Sat N 3 0 O 1 5 55 O/O 0 O 1 2 40 '10 0 1 O 12 7 5 O/O 0 2 13 68 '10 1 7 88 '10 2 1 0 Exito Cm 2 1 # clasificados 2 4 1 0 3 0 7 39 A continuación se presentan los resultados obtenidos para las redes de Elman 69 O/O Redes neuronales artificiales aplicadas a la biología 5.4 78 Red recurrente de Elman Se presenta aquí los resultados obtenidos para varias redes Elman entrenadas y validadas con los tres esquemas de codificación propuestos. Como la topología de una red Elman permite el entrenamiento con retropropagación, se utilizaron las mismas variantes que para las redes perceptrón multicapa (PMC). 5.4.1 Elman - Frecuencia fundamental (variante gradiente descendente con momentum) La creación de una red Elman en Matlab se realizó a través de la instrucción: net=newe/rn(rninrnax(p),( 1 9,5), {'tansig: 'purelin 3, 'fraingdm'), Los d e m ú s p a r a m e t r o s se e s p e c i f i c a r o n s e y i l n las líneas: nef truinParam.show = 50; net.trainPararn.lr = 0. 1 ; nef trainpararn.epochs = 50 000; nef trc~inParam.goal=1 e-3; net trainParcrin rnc = 0.9 Dos detalles inlportantes son que la tasa de aprendizaje, más estudiada ahora, fue establecida en 0.1 y que el riiimero de neurona8 cie la capa ociilta para comenzar fcie de 19. La primer red neurona1 Elman se entrenó en un tiempo promedio de 32.00 miriutos, mieritras que en capacidad de generalización mostró c i r i porct>ritaje prornedio del 52%. 79 Redes neuronales artificiales aplicadas a la biología Parámetros de entrenamiento: Estructura:10-19-5 Transferencia: tansig-purelin Variante: traingdm # máx de épocas: 50000 Error cuadrático: 0.001 Tasa aprendizaje: 0.1 Tiempo requerido: 22.00 minutos Figura 43. Parámetros y curva del proceso de entrenamiento para una red Elman 15-19-5 con la variante traingdm. Los datos utilizados provienen de la codificación por frecuencias fundamentales. Un incremento en el número de neuronas de la capa oculta de 19 a 23 se tradujo en un aumento relativo de los tiempos de entrenamiento (promedio = 26.30 minutos.) y en un aumento en el éxito de generalización (6l0/0). Se ha discutido antes que este tipo de redes suelen requerir más neuronas en la capa oculta así como más memoria para aprender de los patrones de entrada. Éstas son razones que podrían explicar tales resultados (figura 44). Parámetros de entrenamiento: Estructura:10-23-5 Transferencia: tansig-purelin Variante: traingdm # máx de épocas: 50000 Error cuadrático: 0.001 Tasa aprendizaje: 0.1 Tiempo requerido: 26.30 minutos Figura 44. Parámetros y curva del proceso de entrenamiento para una red Elman 15-23-5 con la variante traingdrn. Los datos utilizados provienen de la codificación por frecuencias fundamentales. Para verificar lo anteriormente expuesto, se procedió a aumentar el número de neuronas en capa oculta de 23 a 27. Los resultados apoyan la tendencia; tiempo de entrenamiento promedio de 28.42 minutos (figura 45) y un porcentaje de éxito del 66% (cuadro 13). 80 Redes iieuronales artificiales aplicadas a la biología Tras la realización de otro cambio en el número de neuronas en capa oculta (27 a 30) se incrementaron los tiempos de entrenamiento pero el éxito descendió. Por esta razón se consideró a la red correspondiente a la figura 45 como la mejor red obtenida. El resumen de los resultados se despliega en los cuadros 13 y 14. Estructura: 10-27-5 Transferencia: tansig-purelin Variante: traingdm # rnáx de épocas: 50000 Error cuadrático: 0.001 Tasa aprendizaje: 0.1 Tiempo requerido: 28.42 minutos Figura 45. Parámetros y curva del proceso de entrenamiento para una red Elman 15-27-5 con la variante traingdm. Los datos utilizados provienen de la codificación por frecuencias fundamentales. Vale destacar y recordar nuevamente que todas las redes que lograron converger hacia el error medio cuadrático establecido como meta del entrenamiento, presentaron siempre porcentajes de éxito del 10O0/0 para las validaciones hechas con los mismos cantos con los que habían sido entrenadas. Cuadro 13. Resumen de los tiempos de entrenamiento y porcentajes de éxito en generalización para las diferentes redes traingdrn. Se incluye una columna con el correspondiente valor de la tasa de aprendizaje Ir. Los tiempos se expresan como minutos y segundos. Conformación N Ir Tmin Tmax Tpromedio Exito (minutos) (minutos) (minutos) generalización 10-19-5 0.1 17.58 18.45 22.00 52 10-23-5 0.1 20.35 24.10 26.30 61 O/o 10-27-5 O. 1 7.30 11.05 28.42 6 6 O/o O/o Los tiempos requeridos de entrenamiento, así como los porcentajes de éxito fueron similares entre las tres diferentes redes. Un 66% de éxito se considera bajo partiendo del hecho de que hasta ahora se han entrenado redes que generalizar mucho mejor. Los detalles de clasificación por especie pueden verse en el cuadro 14. 82 Redes neuronales artificiales aplicadas a la biología Cuadro 15. Resumen de los tiempos de entrenamiento y porcentajes de éxito en generalización para 3 redes trainlm con datos de frecuencia fundamental. Los tiempos se expresan como minutos y segundos. Conformación Tmin (minutos) Tmax (minutos) Tpromedio (minutos) Exito generalización 10-19-5 0.12 0.18 0.13 38 10-23-5 0.12 0.25 0.19 49 010 10-27-5 0.14 0.21 0.18 O/o 47o/' L.a mejor red lograda para esta combinación fue la que tiene conformación 10 -23- 5. Además, aunque la tercera red mostró u n descenso en el éxito de dos puntos porcentuales, en general se observó mejoría conforme se aumentó el número d e neuronas en la capa oculta. Es probable que el punto de inflexión que demarca la transición de la red en cuanto al éxito se encuentre entre 23 y 27 neuronas e n la capa oculta. El desglose de los porcentajes de éxito para la mejor red se despliega en el cuadro 16. 5.4.3 Elman - Imágenes (variante gradiente descendente con momentum) Las pruebas con esta red se implenientaron de iina manera similar a como se liizo con las freciicricias furitlanieritales. Primerameiite se estiidiaron redes ?ntrenadas con 120 elemeritos en los pdtrories de entrada y posteriorrriente se iitilizó la codificacióri coriiprimida para dicho psqiierria. Redes neuronales artificiales aplicadas a la biología 83 Estructura:120-75-5 Transferencia: tansig-purelin Variante: traingdm # máx de épocas: 50000 Error cuadrático: 0.001 Tasa de aprendizaje: 0.1 Tiempo requerido: 28.10 minutos . Figura 47. Parámetros y curva de entrenamiento para una red Elman con estructura 120-75-5 entrenada con la variante traingdm de retropropagación y datos de codificación por imágenes. La curva típica del proceso de entrenamiento para estas redes puede verse en la figura 47. Como en todas las sesiones de entrenamiento realizadas con esta variante, la convergencia se da de una manera suave y progresiva. Figura 48. Resultados de la simulación. Se alcanza un porcentaje de éxito del 93% en generalización La percepción general es que estas dos cualidades influyen notablemente en el aprendizaje de la red, pues el ajuste de los pesos se da de una mejor manera y conlleva a la red a un punto más estable. p<yr?"". -*,$%"'-""~%> loo r -r;a ;wt-fw'F$o"@, :-TiTF 1' . 2 Parámetros de entrenamiento: Estructura: 15-16-5 1 Transferencia: tansig-purelin !] .I Variante: traingdm 1 ! # máx de épocas: 50000 1 Error cuadrático: 0.001 1 1 - Tasa de aprendizaje: 0.1 Tiempo requerido: io-'. O 0.5 '1 1.5' % ?f> 40467 EV'Xhs 1 "3-' 3.5 4: 18.40 minutos x 10' . -- Figura 49. Parámetros y curva de entrenamiento para una red Elman con estructura 10-16-5 entrenada con la variante traingdm de retropropagación y datos de codificación por imágenes. 84 Redes neuronales artificiales aplicadas a la biología El incremento en el número de neuronas de capa oculta de 16 a 20 y posteriormente de 20 a 24 tuvo efectos en términos del tiempo necesario para alcanzar el punto de convergencia, pero no tuvo efectos apreciables en cuanto a los porcentajes de éxito promedio logrados (cuadro 17). Cuadro 17. Resumen de los tiempos de entrenamiento y porcentajes de éxito en generalización para 3 redes traingdm con datos de imágenes. Los tiempos se expresan como minutos y segundos. Conformación Ir Tmin (minutos) Tmax (miniutos) Tpromedio (minutos) Exito generalización 15-16-5 0.1 18.00 19.45 18.40 88 O/o 15-24-5 O. 1 18.25 23.05 20.17 90 O/o 15-28-5 0.1 20.50 23.34 21.30 90 O/o Los altos porcentajes de éxito obtenidos perfilan a esta combinación como una de las más adecuadas para clasificar cantos de aves, así como al inétodo de codificación por imágenes. El cuadro 18 muestra que todas las especies fueron clasificadas correctamente en porcentajes mavores al 88 %. Cuadro 18. Resultados de la validación con datos nuevos para la mejor red obtenida Elman con traingdm y datos de imágenes. Se presenta el número de cantos por especie y los porcentajes de clasificación correcta para cada una Especie Clasifiicado como # cantos Ca Cf Cg Cm Sat # Exito clasificados generaliza correctos ción C aurantirostris ( Ca ) 9 8 1 O O O 8 89 [YO C fuscater ( C f ) 5 O 5 O 1 O 5 100 O/O C gracilirostris (Cg ) 16 1 O :L4 1 O 14 88 Oh) C rnexicanus (Cm) 19 O O 2 17 0 17 89 O/' S atriceps (Sat) 8 O O O O 8 8 100 O/O Total 57 52 90 O/O Redes neuronales artificiales aplicadas a la biología 85 Elman - Imágenes (variante Levenberg-Marquardt) Redes Elman que se entrenaron con la variante trainlm de retropropagación y cantos codificados a partir de sus espectrogramas arrojaron tiempos muy cortos de convergencia, pero también un descenso en los porcentajes de generalización alcanzados con respecto a aquellas entrenadas con traingdm (cuadro 19). La curva característica de la variación del error medio cuadrático para estas redes puede verse en la figura 50. El algoritmo Levenberg-Marquardt produce un descenso vertiginoso en dicho parámetro. No obstante y en vista de la relativa baja capacidad para generalizar, los pesos finales adquiridos por las redes parece no ser los idóneos. de entrenamiento: Estructura: 15-16-5 Transferencia: tansig-purelin Variante: trainlm # máx de épocas: 10000 Error cuadrático: 0.001 Tiempo requerido: 00.17 minutos Figura 50. Parámetros y curva de entrenamiento para una red Elman con estructura 15-16-5 entrenada con la variante traingdm de retropropagación y datos de codificación por imágenes No obstante la mejor red lograda alcanza un porcentaje de éxito del 75% y se entrena en apenas unos segundos. Se debe considerar darle seguimiento en futuras investigaciones que incluya un número de especies mucho mayor. Cuadro 19. Resumen de los tiempos de entrenamiento !I porcentajes de éxito en generalización para 3 redes trainlm con datos de frecuencia fundamental. Los tiempos se expresan como minutos y segundos. Tmin Tmax Tpromedio Exito (minutos) (minutos) (minutos) generalización 15-16-5 0.11 0.18 O. 14 70 15-12-5 0.08 0.15 0.11 75 O/o 15-20-5 0.16 0.24 0.21 7 2 O/o Conformación O/o Redes neuronales artificiales a ~ l i c a d a sa la bioloaía R F; Cuadro 20. Resultados de la validación con datos nuevos para la mejor red obtenida Elrnan con trainlm y frecuencias fundamentales. Se presenta el número de cantos por especie y los porcentajes de clasificación correcta para cada una. Especie Clasifi<:ado como # # clasificados Éxito correctos generali cantos zación Ca Cf Cg Cm Sat C aurantirostrís ( Ca ) 9 7 2 O O O 7 77 O/O C fuscater (Cf) 5 1 1 ;! 1 O 1 20 O/O C gracilirostris ( Cg ) 16 2 O 13 1 O 13 8 1 O/O C mexicanus (Cm) 19 1 O 15 O 15 79 O/O S atriceps (Sat) 8 O O 1 7 7 88 1 '0 Total 57 Ci 43 75 O/O Hasta ahora se entrenaron y evaluaron redes que iitilizan aprendizaje supervisado. El próximo tipo de red utiliza aprendizaje no supervisado y sil irnplernentación así como los resultados obtenidos se detallan a continuación. 5.5 Red auto organizativa de Kohonen Las principales líneas de código que irnplementaron esta red en Matlab sori: 1. net = ne~vsorn(n?inmax(DatosEntrenomiento), (5 1)); 2. net.distclnce = lii~kdist; 3 . net.orcl'er-Ir = O 4. net.order steps 5 net.ti.ine Ir = 6 net.tune no' Y; - 1000, 0 02, = 1 0, Fn la primera líriea se crea una nueva instancia de ~ i r objeto i del tipo red de Kotiorieri o SOM (self urgan~z~rlg mcíp), ctiyo constriictor recibe los parámetros qiie definen las deri~ascaracterísticas topológicas; r~iii~n~;ix(B;iti?sFr~trcr~ar~~lci~to) extrae los valores rníriimos y riiáxirnos de los vectores eri la matriz (le datos, qiie es la que coritierie los datos de entrerlarriicrito y qiie debe estar ya declarada y alrnaceriada eri la memoria de Flatlab, [5,1/especifica cltie la ri'd tendrá 5 rietirorias dc salida (correspoiidicrites en estc caso a Icis 5 especies de aves ii cliisific-di). Redes neuronales artificiales aplicadas a la biología 87 En las líneas siguientes (2 a 6) se definen los valores para algunos parámetros propios de la red; net.distance establece la función para calcular las distancias entre una neurona y sus vecinas, net.order_lr define la tasa de aprendizaje para la fase de ordenamiento, net.order_steps establece el número de ciclos de ordenamiento, net-tune-Ir establece la tasa de aprendizaje para la fase de ajuste y net,tune-nd asigna un valor para la distancia de vecindad en dicha fase de ajuste. Seguidamente se describen las estructuras de red utilizadas y sus respectivos resultados con los esquemas de codificación para frecuencias fundamentales y para imágenes. 5.5.1 Kohonen - Frecuencia fundamental Se definió una red de Kohonen de 5 neuronas (correspondiente a las 5 clases o especies en las que se desea clasificar los datos). net = newsom(minmax (Datos-Entrenamiento), ( 1 5)); Esta red fue entrenada con el 5O0/0 de los vectores de 15 elementos de frecuencia fundamental durante 1000 épocas. Este proceso requirió un tiempo de 1.35 minutos. Los porcentajes de éxito obtenidos para esta red fueron del 38% para el reconocimiento de patrones de entrenamiento y del 22% para las pruebas de generalización. En la figura 5 1 se muestran las respuestas de la red para la fase de simulación realizada con los mismos datos del entrenamiento. Las primeras 9 columnas son las respuestas obtenidas para cantos de C. aurantirostris, las siguientes 5 columnas son las respuestas para cantos de C. fuscater y así sucesivamente. También puede apreciarse como la red tiende a agrupar a las especies en filas o clusters (por ejemplo toda la primera fila contiene 6 aciertos para C. gracilirostr/S, la segunda 4 aciertos para C. mexicanus, la tercera fila 5 aciertos para C. aurantirostris, la cuarta 2 aciertos para C. fuscater y la quinta fila contiene 6 aciertos para S, atriceps). Cada una de estas filas también incluye cantos pertenecientes a otras especies, lo que es considerado como desaciertos. Figura 51. Respuestas de una red de Kohonen de 5 neuronas tras ser evaluada con el juego de datos utilizados en la fase de entrenamiento. Los aciertos para cada especie se resaltan en negrita. Redes neuronales artificiales aplicadas a la biología 88 La figura 52 muestra las respuestas obtenidas para la simulación realizada con los datos de prueba (éxito de generalización = 22%). Lo que se observa es que la red tiende a agrupar a la gran mayoría de los cantos en un solo cluster, en este caso particular en el que incluye 8 aciertos para S. atriceps y se puede decir que en realidad la red no distingue entre las diferentes especies. Figura 52. Respuestas de una red de Kohonen de 5 neuronas tras ser evaluada con cantos no utilizados en el entrenamiento. Los aciertos se resaltan en negrita. Posteriormente se procedió a realizar cambios en el número de épocas de entrenamiento (de 1000 a 2000 y luego a 3000), así como en la tasa de aprendizaje de ordenamiento (0.5 y 0.01) y el valor de la función de distancia (0.7 y 0.5). Las evaluaciones correspondientes mostraron que las respuestas entregadas por las redes no mejoraron notoriamente con respecto a las obtenidas para la red explicada en la figura 51. El siguiente paso fue entrenar una red de Kohonen con el 100% de los datos de la investigación con el fin de estudiar el efecto del tamaño de muestra en este tipo de redes. El número de neuronas y los parámetros de entrenamiento se mantuvieron como los establecidos al inicio de la sección 5.5. En la figura 53 se observan las respuestas obtenidas para la simulación de esta red con los mismos datos del entrenamiento. La matriz se ha dividido en dos partes con fines de visualización (los puntos suspensivos indican continuidad). .l. /C I i I i i I l o 1 l o o I~ & $ & m i o/_u I~na~niiill w!d,u,o mextc.anusj vi j 1 o'n;o 1 i ~ n o oiii u n o ; ~ ~ ~ , ~ ~ @ o ~q:oo&-o o[¡-i o { o +t ~ ~o o~ / n] ~ ~o i ~' / o~ n~,o~~ ( ;io,io~, ~ ~ /olo ,,oG I lao ,I~I D , D ~ I ~ Ih o i ~ i i i [ i~ ~ : o ~ o ~ - ~ ~ ~ o ! u : r l i I i ; n ~ o ;oooln i n j010 ~ ~ouio'oiuiolu;o:ou;ri;o~riio:n tilo oio u u , u j o ! o o : i j i o,c~oociiJ;o oio oicilr~lno lu~u~11~'1;11 CI c~:c~iu$o;oio!o,u:oI!I ! I I 11 @ ] n ~ ü ~ c ;~I '10o ;@lo i II;~ o;o o ; i 11 11 ; C I : I I ; C I ~ ~ I ~ ~ ! I : I , ~ , I I : ~ I ' ~ ~ C I ~ ~ : I Io , r w 'u CI o,o ci cih i : ~ u i c ~ , l i l i j r l i u ~ ñ i r i o o o i r I~~I~JI ~ o i~1'1l.l:l'l/l:l,11,11i11jl Figura 53. Respuestas de una red de Kohonen de 5 neuronas tras ser evaluada con el 100% de los datos de entrenamiento. Los aciertos se resaltan en negrita. Redes neuronales artificiales aplicadas a la biología 89 El porcentaje d e éxito de aciertos fue del 54% y el r12surnen de los resultados puede verse en el cuadro 2 1 (ver resultados en un círculo). Los agruparnientos corresponden a cada una de las filas, los que a su vez se tratan de vincular con cada una de las 5 especies de aves. Nótese que para el agrupamiento 5 la red ha clasificado respelctivamente 16 cantos en forma correcta y además ningún canto de las otras 4 especies ha sido incluido en dicho agrupamiento. Para aurantirostris se obtuvo 12 aciertos, para C. fuscaterse C. obtuvo 8 aciertos, pero 5 cantos de C. gracilirsotr~sfueronvistos por la red como pertenecieites a dicho agrupamiento (cluster 2). En el caso d e C. grac~lirostrisy C. mexicanus la red n o establece una separación clara, observándose una mezcla d e aciertos y desaciertos. Para efectos de conteo se asignó en este caso la combinación d e cluster-especie que maximiza el número de aciertos. Cuadro 21. Respuestas de la red de Kohonen entrenada con el 100% de los datos de frecuencia fundamental y evaluada con el mismo grupo de datos. Los aciertos se aprecian en negrita. cluster Especie CA CF 12 C O 3 O 8 5 1 0 O fi8 l b , 2 \15 lo/ 0 0 0 1 1 C.aurantitrostris(CA) 2 C. fuscater (CF) 3 C. gracilirostris (CG) O 4 5 C. mexicanus (CM) 4 S.atriceps ISA) C CG SA CM O 0 O O 6 - Es evidente que se ha sacrificado la posibilidad d e valorar la capacidad de generalización de la red, no obstante esto permitió corroborar la presencia de un efecto positivo del número de patrones de entrada en el aprendizaje de la red d e Kcihonen. Una ventaja con la que cuentan las redes de Kohonen en su versión de mapa aiito organi7ativo es la posibilidad de generar gráficos multidirnension~ilesdel estado particular de iind red en un momento determinado. Por ejemplo eri la figura 54 puede verse una proyección en iin plano tridimensional d e la red de Kohonen implernentada en esta sección. Las 5 neuronas (puntos negros interconectados por una línea) se encuentra? inmersas en el espacio de datos (puntos grises) de tal fornia que cada una representa el centro de gravedad de Iiri posible agriipamiento o cluster en el conjunto de pdtrones de la muestra. Esto puede sewir para visualirar no solo la distribiición de las neuronas en sí, si no tambiéri para tener una idea de la cfistribiición del conjunto de datos Fn el caso concreto (le los cantos de aves iitilizados en la irivestiyacióri, no es posible identificar agriipamientos bien definidos, especialmente en la zorid ceritrril wperior del cubo. la1 aspecto piietle explicar la tendencia o b i e vada a lo largo d e las priiet~ds, eri tloride suele confuridir\e iirias cspecies con otras (principcilrnente C gracilirnsttis, C n ~ c x i r a ~y i iC~ ~ f i i s r a t ~ ~ r 'Estas ) especies i o r i (le hecho la qiie prescritan cdntos mas vdr icit~lesP I ~el corijiirito de 91 Redes neuronales artificiales aplicadas a la biología Figura 55. Respuestas de simulación de una red de Kohonen de 5 neuronas entrenada con 100% de los datos de imágenes de 120 elementos. Los aciertos se resalhn en negrita. El resumen de las salidas se presenta en el cuadro 22. Puede notarse el caso de C. fuscatec en donde siete veces la red clasificó cantos de esta especie junto con S. atriceps. Esto indica que la red confunde en más ocasiones los cantos de C. fuscater con los de S. atriceps comparado con las ocasiones que es capaz de clasificarlos en una categoría aparte. El hecho de que C. fuscater contabilice O aciertos obedece precisamente a que no es clara la presencia de un cluster propio para la especie. Cuadro 22. Respuestas de la red de Kohonen entrenada con el 100°/o de los vectores de imágenes de 120 elementos. Los aciertos se aprecian en negrita y los cantos clasificados dentro del cluster de otra especie, se remarcan en un círculo. Es~ecie cluster 5 S.atriceps (SA) CA CF CG CM SA O 7 0 0 1 6 Para evaluar qué efecto tendría agregar una neurona mas a la estructura, se entrerió una red de Kohonen de 6 neiironas con los mismos datos y los n7ismos parámetros que llevaron a resultados del 66% de éxito en el caso anterior. Como puede verse en el cuadro 24, el cluster extra producto de la adición de una neurona a la red, agrupa 9 cantos que, en el orden en que fueron presentados los datos de validación y siipoiiiendo un buen porcentaje de aciertos, debían ser asignados al cluster vinculado a C. gracilirostris, y 10 cantos de debían ser asignados a C. iiiexicaniii. Podría decirse que este cliister extrd hd fiincionado como un rn~iestr~iles (le los cliisters 3 y 5, siibdivitliendo trl Dliffet entre los espacios cierto rriodo 19 patrones qiie p r t w n t a n (ir1 yratfo (le traslape. 51 estos riueve cantos se surridran a los 17 acierto5 del cluster 3, se coritd t~ilirarían?G ~iciertosparc] diciia espec te, mientras que si se slirnarari l o i 10 cdntos restantes a los ~ i c i t ~ r t odel s cliiiter 5, st' c o ~ i t a b i l i z ~ ~ r i18 a i iacit~rtospara C' niexicdriui y esto rcpreseritaría Redes neuronales artificiales aplicadas a la biología 92 un éxito de clasificación del 79% para vectores de entrenamiento. Si se consideran solamente los aciertos sin tomar en cuenta el cluster extra el éxito sería del 63%. Cuadro 23. Respuestas de una red de Kohonen de 6 neuronas entrenada con los vectores de imágenes de 120 elementos. Los aciertos se aprecian en negrita. Las elipses enfatizan las dos especies con las que la red ha definido el cluster extra. 1 Especie C. aurantitrostris (CA) 2 C . fuscater ICF) 3 C. gracilirostris ( C G ) cluster 4 CA CF CG C M SA 1 8 0 0 0 3 3 O 0/17\ \ 9 O 8 -1 O 0 O Yio\ Cuando se declaró y entrenó una red de Kohonen constituida por 7 neuronas, los resultados pueden calificarse como una notable mejoría en los agrupamientos que elabora esta red. Las salidas se muestran en la figura 56, en la cual es apreciable una separación más clara entre la mayoría de las especies y en los casos de C. gracilrostris y C. mexicanus los aciertos parecen estar reforzados con aciertos repartidos en los dos clusters extra. Figura 56. Respuestas de simulación de una red de Kohonen de 7 neuronas entrenada con 100°/o de los datos de imágenes de 120 elementos. Los aciertos se resaltan en negrita y en gris los aciertos contabilizados para los clusters extra. En el cuadro 25 se resumen los resultados para esta red de 7 neuronas. Lo primero que salta a la vista es la relación entre los clusters 3 con el 4 y el 5 con el 6. El reconocimiento hecho a éstos para establecer la vinculación con las respectivas especies indica que tanto el cluster 3 como el 4 pueden ser vinculados con C gracilirostris y a su vez tanto el cluster 5 como el 6 pueden vincularse con C. rnexicanus, lo que sugiere que hay dos neuronas cercanas en el espacio muestra1 que pueden activarse con mutua exclusividad cuando la red recibe como patrón de entrada un canto de C. gracilirostris y lo mismo sucede con las otras dos neuronas cuando se recibe un canto de C. rnexicanus. Al sumar los aciertos considerando la conjunción de los Redes neuronales artificiales aplicadas a la biología 93 clusters 3-4 y 5-6, se obtiene un éxito del 92%, lo que deja a la red en muy buena posición respecto al aprendizaje de los patrones con los que fue entrenada. Cuadro 24. Respuestas de una red de Kohonen de 7 neuronas entrenada con los vectores de imágenes de 120 elementos. Los aciertos se aprecian en negrita. Las elipses engloban la conjunción entre los clusters 3-4 y 5-6 respectivamente. 1 cluster Especie 1 C. aurantitrostris (CA) 2 3 r C. fuscater (CF) C. gracilirostris (CG) CA CF CG CM SA 1 8 0 O O O 1 0 8 2 0 0 O O (17) 1 O o o o \1o/g 4 6 C. mexicanus (CM) O O 5\18] 7 S. atriceps (SA) 0 0 O O O 1 6 El seguir aumentando el número de neuronas (a 9 y luego a 11) con el fin de alcanzar el 100% de éxito conllevó a una situación en la que ya no era tan claro vincular los clusters a las especies, debido a que la red comienza a establecer cada vez más subdivisiones, reduciendo el número de aciertos por cada cluster. Así, se detuvo aquí las pruebas relacionadas con el número de neuronas y se consideró la mejor red lograda fue la conformada por 7 neuronas (92% de éxito de clasificación de patrones de entrenamiento). Como último paso, se entrenaron algunas redes de Kohonen de 5 neuronas con el 100% de los vectores producto de la codificación por imágenes en su versión comprimida (15 elementos). Cuando los parámetros se establecieron como: net,orde~lr= 0.6, netordecsteps = 2000, net.tune-Ir = 0.01 y nettune-nd = 0,8, se alcanzó un 70% de éxito en el reconocimiento de los cantos con los que la red había sido entrenada. La figura 57 muestra las salidas de la red después de la evaluación con los mismos datos de entrenamiento. Figura 5 7 . Respuestas de simulación de una red de Kohonen de 5 neuronas entrenada con 100% de los datos de imágenes de 15 elementos. Los aciertos se resaltan en negrita. Redes neuronales artificiales aplicadas a la biología 94 El cuadro 26 muestra que en todos los agrupamientos hubo al menos un canto de otra especie que fue clasificado como perteneciente a la especie vinculada al agrupamiento respectivo. El caso más grave se dio en C. fuscater (3 aciertos), en donde incluso más cantos de C mexicanus (9 cantos) fueron incluidos en su cluster. El mejor caso lo obtuvo S. atríceps, con solo un canto perteneciente a C. gracíhrostris, reforzando resultados observados a lo largo de prácticamente todos los experimentos, los cuales señalan los cantos de esta especie como claramente reconocibles entre el conjunto de datos. Cuadro 25. Respuestas de una red de Kohonen de 5 neuronas entrenada con los vectores de imágenes de 15 elementos. Los aciertos se aprecian en negrita. Los círculos resaltan los cantos que, siendo de otras especies, fueron clasificados como pertenecientes a la especie vinculada al cluster. 1 1 cluster Especie 1 C. aurantitrostris lCA) 2 3 4 5 C. fuscater fCF) , C. gracilirostrk (CG) ~ - 9~ C.rnexicanus(CM) S. atriceps (SA) CA CF CG C M SA 12(7X11 O 0 1 3 O ( 9 ) 01 (1> O 28(7) O O O ( 3 ) 21 O (V 5 ) O L O(1) / O 16 Las pruebas hechas con una red de Kohonen conformada por 7 neuronas muestran que hubo un aumento significativo en el porcentaje de éxito para la clasificación de vectores de entrenamiento. La figura 58 y el cuadro 27 muestran las salidas y el resumen los resultados respectivamente. Puede apreciarse que los clusters extra agregados (producto de las 2 neuronas adicionadas), incluyeron mayoritariamente aciertos para cantos que en el juego de datos pertenecían a C. rnexicanus. Figura 58. Respuestas de simulación de una red de Kohonen de 7 neuronas entrenada con 100% de los datos de imágenes de 15 elementos. Los aciertos se resaltan en negrita y los aciertos en los clusters extra se resaltan en gris. 95 Redes. neuronales artificiales aplicadas a la biología Así, si se suman dichos aciertos a esta especie, se llega al porcentaje de éxito global del 89%, siendo claro el efecto positivo d e la adición de más neuronas a la red de Kohonen. Cuadro 26. Respuestas de una red de Kohonen de 7 neuronas entrenada con los vectores de imágenes de 15 elementos. Los aciertos se aprecian en negrita. La elipse resalta el aporte que los 2 clusters extra incorporados hacen al cluster 6 vinculado a C. mexicanus. cluster 1 Esoecie C A CF C G C M SA C aurantitroshs (CA) 1 7 0 3 (91 6 C rnexicanus (CM) O O O / 1 7 / 0 7 S alriceps (SA) O 1 O 1 5 O O 01 O 1 5 En términos generales, las redes de Kohonen obtuvieron porcentajes de éxito, en la clasificación de vectores de entrenamiento, más bajos que las redes que utilizan el aprendizaje supervisado. Se observaron diferencias según el esquema de codificación utilizado, así como en el tamaño de la muestra de vectores de entrenamiento. Los parámetros así como el número de neuronas de las redes también influyeron en los resultados obtenidos. También debe aclararse que estas redes requirieron de u n número mayor de datos de entrenamiento y por lo tanto no se contó con información suficiente para realizar pruebas de generalización. Más detalles de los aspectos conclusivos de estas redes y de la investigación en general son los que se tratan a continuación en el siguiente capítulo. Redes rieuronales artificiales aplicadas a la biología 96 Capitulo 6l Conclusiones8 En el presente trabajo se realizó la construcción y búsqueda sistemática d e una estructura de red neurona1 artificial capaz de clasificar cantos de 5 emspecies de aves costarricenses. A partir de grabaciones almacenadas en cintas analógicas se seleccionó un conjunto de señales para conformar el juego de datos de la investigación. Esta:; señales fueron pre procesadas a través de una combinación de procedimientos manuales y semiautomáticos con el fin de preparar la información para convertirse en las entradas de las redes neuronales artificiales. Se plantearon tres esquemas de codificación de los datos, lino basado en la extracción de la frecuencia fundamental de la señal y los otros dos tomando como base las imágenes o espectrogramas correspondientes a cada canto. Posteriormente se cliseñaron e implementaron varios tipos de redes neuronales, partiendo del perceptrón multicapa, una red de Elman y una red de Kohonen en sci versión de mapa auto organizativo. Se entrenaron estas topologías tanto de manera supervisada como de manera no supervisada, incluyendo variarites como las de retropropagación con gradiente descendente y momentum, Levenberg-Marquardt y aprendizaje competitivo de Kohonen. Se simularon para evaluar la capacidad de respuesta, tanto en lo referente a la clasificación de los vectores usados en el entrenamiento como en lo concerniente a vectores que contenían datos nuevos para la red. Seguidamente se discuten en más detalle las conclusiones principales de la investigación. 6.1 E l pre procesamiento Los pasos realizados en la fase de pre procesamiento estuvieron enfocados a la supresión de riiido y otras componentes de las señales que no debl3rian participar de rnanera iniport~inteen el aprendizaje de las redes rie~ironales. El efecto observado tras la aplrcacibn de estos ~jasosfcie positivo si se corisitl~rala alta vdriabiiic~dden términos de la calidad y el ruido de las grdbdciones origiridies, pero tcirrit,i6n representan obstaculos poterciales si se desea desarrollar urid dplicacióri qiie pudiese clrisificdr este tipo cle señales en sitiiaciories eri las qiie se reclliierd uria r e s l ~ i i t ~ s en ta tierripo r e d i l " i i i o ideal" oara u11 clispositivo clasificaclor basado eri reclrs r~eiirori~iles debe corisicíerdr rri Id r ~ i t ~ d i t de l a lo posible el estabieciniier~to de nieiios pasos de [,re i ~ r o r r i a n i i e n t o , Redes neuronales artificiales aplicadas a la biología 97 los cuales puedan ser realizados de una manera automatizada (menos dependiente de intervención manual) y que a su vez no impliquen un excesivo consumo de tiempo de ejecución. Otro aspecto que puede considerarse como parte del pre procesamiento es el escalamiento o normalización aplicados a los vectores obtenidos en la fase d e codificación. Si bien este procedimiento es sencillo y no conlleva a una pérdida de información (pues consiste en una transformación matemática reversible), si tuvo un efecto en el aprendizaje de las redes neuronales, observado durante las pruebas iniciales con las redes PMC (inicio del capítulo 5). Una razón importante para considerar reescalar las entradas a una red neuronal artificial es reducir el espacio muestra1 de representación de los patrones y acercar o igualar el ámbito de dichos patrones con aquellos definidos para las funciones de transferencia (por ejemplo la función tans~g utilizada en la capa oculta de las redes está definida entre 1 y -1). 6.2 La codificación Posterior a la fase d e pre procesamiento, las señales resultantes conservaban la gran mayoría de sus características, principalmente su alto número de valores (aproximadamente 44100 por cada segundo de grabación). Los esquemas de codificación propuestos permitieron reducir de manera importante no solo el tamaño de los archivos sino también el número de valores utilirados para describir las señales bioacústicas. A pesar d e la pérdida de iriformación involucrada en el proceso (la que desde un punto de vista biológico posiblemente si sea importante), las redes neuronales lograron aprender a reconocer las particularidades de las especies en cuestión. Puede decirse que las redes neuronales han realizado no solo una tarea de reconocimiento y clasificación, sino también la evaluación de los esquemas de codificación propuestos. Si alguno estos esquemas tiubiese sido insuficierite o con excesiva pérdida de las características importantes y descriptivas de las señales, es m u y probable que las redes no pudiesen haber realizado una correcta clasificación de las especies, particularmente en las pruebas que evaluaban la capacidad de generalización. Se debe decir rio obstante que el número de valores que pueden ser necesarios para describir y permitir a una señal acústica ser cldsificada por uria red neuronal, puede variar dependierido del tipo y cantidad de especies que se desear1 clasificar, por lo que es claro que las conclcisiories generadas eii este trabajo no deben generalizarse a todas las especies de a v r s Fs este seritido, vale resaltar tambii.11 el hecho de no haberse encoiitrado diferencids notorids entre los vectores de codificaciori por irnageries de 120 eleriieritos y aquellos compuestos d e 15 eleniento5, ya cliie para aiiibos casos las redes ~itilizadasclriireqarori porceritajes de éxito cri la clasificaciori de datos (le eritreridmierito y yerieraliraciori clcl 100°/o y 91% respectivarricntc. A Redes neuronales artificiales aplicadas a la biología 98 pesar de que se encontró u n efecto de este número de elementos en los tiempos promedio requeridos de entrenamiento (aproximadamente 45 minutos en el caso de redes entrenadas con los vectores de 120 elementos contra aproximadarnente 15 minutos en el caso de redes entrenadas con los vectores de 120 elementos), se concluye que la compresión o simplificación aplicada a los vectores de 120 elementos no afectó los resultados finales de las redes en términos de clasificación. Se constató que este tipo de operaciones en los datos pueden ser aplicadas para reducir el tamaño de una red neurona1 (jsí como el tiempo que dura entrenándose, sin incidir esto en los porcentajes de éxito alcanzados Al revisar la manera en la que realizó dicha transformación, se nota que en realidad la misrna información que contienen los vectores de 120 elementos puede encontrarse en los vectoies de 15 elementos, siendo la principal diferencia entre ambos la forma en que se han dispuesto los valores en el arreglo numérico. En cuanto a la comparación de los esquemas de cod ficación por imágenes con los basados en frecuencias fundamentales, las redes neuronales que fueron entrenadas y evaluadas con vectores basados en las imágenes mostraron mayores porcentqes de éxito (91% e n generalización para PMC, 90% en generalización para Elman y 92O/0 en reconocimiento de patrones de entrenamiento para Kohonen) contra aquellas que iitilizaron vectores basados en las frecuencias fundamentales (70% en generalización para PMC, 66V0 en generalizacióri para Elman y 92% en reconocimiento d e patrones d e entrenamiento para Kohonen). A partir d e estos resultados se puede concluir que la codificación a partir de imágeries consigue resumir y describir de mejor manera las señales utilizadas en la investigación. Esto tiene sentido si se considera que los valores contenidos en dicho esquema incluyen infornicición de la frecuencia y la intensidad de los cantos en puntos determinados del tiempo, mientras qiie los vectores basados en la frecuencia f~indarneritalno consideran en modo alguno la intensiclad de las señales. A contiriiiación se presentan conclusiones concretas referentes a las redes necironales artificiales. 6.3 Redes neuronales Los tre5 modelos de redes neuronales artificiales est~idiadosen este trabajo brindaron resultados satisfactorios segiin los objetivos y nietas planteados en el capít~ilo1. t l primer aspecto qiie iobresalt. e i el reldcionaclo cori el tipo de aprendizaje, en donde las redes pri las que participó el c7preri(lirdje siiperviscido obt~ivierorilos oorcentajes (le éxito m á s dltos (I'MC obtuvo 100% en recorioc irriierito de vectores de entreiiaiiiierito y 91% en generaliración en tanto Elrndii obtiivo 1OOO/i~ eii recoriocir~iieritode vectores (le critreridrriii~nto y 90°/« eri y cripr cilitación, cri dnibos Redes neuronales artificiales aplicadas a la biología 99 casos utilizando la codificación basada en imágenes). Paralelamente, las redes que utilizaron aprendizaje n o supervisado obtuvieron porcentajes de éxito más bajos (38% para clasificación de los vectores de entrenamiento y 22% para la generalización) y solo se obtuvo un 92% en el reconocimiento de vectores de entrenamiento cuando se utilizó la totalidad del conjunto de patrones y 7 neuronas. Esto revela algunos aspectos interesantes: en primer lugar las redes con aprendizaje s~ipervisadoconsiguieron establecer una adecuada asociación de los patrones y las salidas con el 50% d e los vectores del conjunto total d e datos, permitiendo utilizar el 50% restante para evaluar la capacidad de generalizar, mientras que las redes de Kohonen (aprendizaje no supervisado) requirieron de más patrones de entrenamiento para poder alcanzar niveles aceptables de asociación o agrupación (100% de los patrones para el 92% mencionado). Esto deja claro que el aprendizaje de tipo supervisado posee algunas ventajas, pero requiere que se cumpla la condición en la cual se conocen las salidas deseadas de la red o en otras palabras, se sabe con certeza cuáles especies emiten los cantos que se desean clasificar. Cuando esto no se sabe, redes con aprendizaje no supervisado pueden ser adecuadas para establecer agrupaciones en los patrones de entrada según características comunes, o bien para explorar conjuntos de datos en los que no está clara la separación en el espacio muestral. En la investigación biológica esto último suele ocurrir con frecuencia, y en el caso particular de señales acústicas, las redes de Kohonen se convierten en una opción viable para un análisis inicial d e la información recolectada. Como segundo punto slir(je la duración promedio que cada tipo de entrenamiento requere para completarse, obsenlandose que en general, las redes con aprendizaje no scipervisado tardaron menos tiempo en su fase de entrenamiento que aquellas con aprendizaje supervisado (a excepción de las que utilizaron la variante Levenberg-Marquardt). La característica más sobresaliente sobre la cual :;e puede explicar esto se relaciona con el riúmero de épocas, pues en las redes de Kohonen bastaron en la mayoría de las pruebas unas 7000 épocas para completar la fase de entrenarniinto (más épocas no se traducían en una mejoría de los porcentajes de éxito), mientras que para las redes PMC entrenadas con retropropagación y gradiente descendente se reqlierian para la mayoría de los casos entre 15000 y 30000 épocas aproximadamente para lograr la convergencia al valor de error cuadrático establecido. t r i las redes con aprcndi7aje supervisado tanibiér~sfl observó la influericia de otros dspectos que c>s valioso discutir LI pcirámetro n16s est~idiaclofiic la tasa de apreridiraje y tra\ observar s ~ i infliiencia a lo larqo de las pruebas realizadas cori reiles PMC y retropropagacióri, se coricliiye que valores adecuados para este paranietro eii redrs entrenadas con vectores de freciiencia fiindanleritril sc priciieiitran entre 0 . 1 y 0.2 Valores nieilores a 0 1 irifluyerori eri e ~ t c ~ i c i o n ede s ciitreiiarnieiito cliir3 iio ~iIc~inzi)rori el vcilor nictd cli2l Prror rriedio cu;idratico eitablcciilo, rnieritras 100 Redes neuronales artificiales aplicadas a la biología que valores mayores a 0.2 desencadenaron cierta inestabilidad en los procesos de entrenamiento. En las redes que utilizaron la codificac:ión de 120 elementos espectrográficos, la tasa de aprendizaje que maximizó los porcentajes de éxito fue de 0.01, comparada con aquellas que se entrenaron con vectores de 15 elementos espectrográficos, en donde la tasa de aprendizaje que permitió alcanzar prácticamente los mismos porcentajes de éxito fue cuando menos de 0.1, apreciándose una diferencia importante (un grado de magnitud) dependiendo de la cantidad de valores de codificación. El número de neuronas en la capa oculta de las redes fue otro aspecto que influyó en cierto grado en los resultados obtenidos. Para las redes entrenadas con los vectores basados en la frecuencia fundamental y gradiente descendente, el nijmero de neuronas óptimo fue de 20 (70% de éxito en generalización), mientras que para aquellas redes entrenadas con la variante Levenberg-Marquardt, el número de neuronas en la capa oculta que brindó mejores resultados fue de 12 (58% d e éxito en la generalización). Para redes entrenadas con vectores basados en imágenes y gradiente descendente, el número de ntiuronas de la capa oculta que dio mejores resultados fue 75 (para los vectores de 120 elemento:;, con un 91% de éxito en generalización) y 12 (para los vectores de 15 elementos, con un 91% de éxito en generalización). Debe decirse que el método de búsqueda del número ideal de neuronas en la capa oculta no fue exhaustivo, sino más bien de 4 en 4 para el caso de redes entrenadas con vectores pequeños (de 10 y 15 elementos) y de 25 en 25 para el caso de redes entrenadas con los vectores de 120 elementos. Esto deja algunas posibilidades si explorar, entre las cuales se pudo encontrar una mejor configuración, no obstante los elevados porcentajes de éxito alcanzados por las redes implementadas. En el caso cle las redes Elman se constató el supuesto teórico que sugiere iitilizar u n número mayor de neuronas en la capa oculta, observándose que las redes que generalizar011 mejor se componían en promedio de 7 a 12 iinidades más que sus homólogas PMC. En las redes de Kohonen se observó un efecto positivo en el aumento del número de neuronas, ya que partiendo de una red de 5 neurorias, el cambio a 6 y posteriormente a 7 neuronas significó i i n aumento de 26 puntos porceritiiales en el éxito de clasificación de patrones de entrerianiiento basados en imágenes. Continiiando cori las redes de Kolionen, ~ i r i ode los a~,ppctos mác iiifluyentes además del número de neuronas, fue el tamaño (le la riiuestra iitiliradd eri el eritrcridmiento, ya que pdra redes eritrenadas cori el 50% de los datos de freciiericias fiindanieriialc~sse o t ~ t i i v oporceritajrs muy bajos de éxito de clasificacióri y generaliracióri (38% y 22% respcctivamerite) mientras qiie con el 100°/o dc l o i dcitos cl porct.ritaje de éxito de cl?sificcicioii cisccridió dl 54% (iacrifirdndo la vrilor~icioii CIP 13 ~~f'rit-r~lizacióil).t i t o iri(11ca c ~ i i c ' parct P < ~ C ti110 de rf>rIt'~se VII~>IVPrri~iy 101 Redes neuronales artificiales aplicadas a la biología importante contar con el mayor número de patrones posible para la fase de entrenamiento, que les permita definir mejor los correspondientes agrupamientos y sus respectivos representantes. A partir de los resultados obtenidos en términos de lo:; agrupamientos realizados por las redes de Kohonen, pueden concluirse algunos aspectos relacioiiados con el conjunto de datos: la especie que es agrupada con más claridad por estas redes es S. atriceps seguida por C aurantirostr~s. Las otras tres especies mostraron una tendencia a ser confundidas entre sí, lo que sugiere que sus características discriminantes sufren de un grado de traslape mayor que el que presentan las especies mencionadas anteriormente. Este nivel de traslape puede ser explicado en parte por la mayor variabilidad que presentan los cantos dentro de las mismas especies (apreciada auditivamente y a través de los espectrogramas), la cual se vio reflejada también en redes del tipo PMC y Elman (en los cuadros que muestran el detalle de los éxitos de generalización por especie). A manera de síntesis, se incluye aquí un cuadro comlparativo con los detalles más sobresalientes de los diferentes esquemas utilizados (cuadro 27). -,, Cuadro 27. Resumen de las mejores redes obtenidas para todas las combinaciories aplicadas de topología, entrenamiento y esquema de codificación. ( RGtipo l - ~ o d i f i c a c i o n - Entrenamiento de los datos - T--~ i e Conformacióri m ~ P Tcxito utilizado entrenamiento 10 20-5 Traingdm - -- - - - - ~oo~/;I - - - - Trainlm 10 12 5 O 22 1OO0/o Traingdni 120 75 5 44 30 100O/u 1- &ti i 1 generalización 70n/r, 91O/O - 15-12-5 Trainlm 16(%1 - / Kohunrn 1 1inagenes 1 1 -- - - - - Trainlrn 10-23-5 Traingdrn 15 24 5 1 57 ~ o i l i ~ e t i t i v o, 1 - 1 66% - 49V0 1 20r/ / 4 20 - 90% 100%) f 1 890/0 1 , 11 Redes neuronales artificiales aplicadas a la biología 6.4 102 Trabajo futuro El presente trabajo definitivamente abre una gama m u y amplia de posibilidades de investigación futura. Como se mencionó antes, mucho se puede Pacer en términos del pre procesamiento de señales acústicas o espectrográficas de tipo biológico. Es importante modularizar y automatizar los diversos pasos que permiten preparar una señal para ser procesada por una red neurona1 artificial, principalmente cuando una de las posibles aplicaciones finales involucra el concepto de tiempo real. Más trabajo debería ser realizado sobre el problema de la extracción de características, ya que las señales de tipo biológico suelen ser complejas y generalmente están compuestas de grandes cantidades de información. Vale la pena considerar una nueva tendencia no estudiada en este trabajo denominada wavelets, que son técnicas de transformación y .codificación para señales complejas como el sonido y la imagen. Es importante utilizar juegos de datos de mayor volurnen, tanto en cantidad de especies como en cantidad de cantos o muestras por especie, principalmente tomando en cuerita dos aspectos: la gran variabilidad biológica y también que las redes de los tipos utilizados en la investigación requieren ser entrenadas cada vez que nuevas especies se desean agregar al clasificador. En este sentido también sería interesante utilizar redes reuronales capaces de aprender información nueva sin necesidad de entrenarse desde el principio (por ejemplo las redes ART o de resonancia adaptativa) [ChristoOl], [HileraOO]. La combinación de vanas redes neuronales para distribuir el conocimiento (por ejemplo entrenar una red por cada especie y luego combinar sus salidas para responder ante la presencia de patrones d e evaluación) fue iin aspecto no estudiado en éste trabajo, que puede resultar ser iiria estrategia válida para el reconocimiento y la clasificación de información biológica. No debe dejarse de lado la integración de las redes iie~ironalesartificiales con otras técriicas de la inteligencia artificial, como la computación e v o l u t ~ v (algoritmos ~i genéticos), el comportarnierito emergente (colonias de tiormigas), que han demostrado combinarse eficienterrient? para atacar y resolver prot)lemas cori altos riiveles de coniplejidad [(Ihallorier02]. Redes neuronales artificiales aplicadas a la biologia 103 Bibliografía [AlstromOl] Alstrom, Per, 2001. The use o f sound in bird systematics. Department o f Evolutionary Biology. Centre Uppsala University. Introductory Research Essay No. 2. [Anderson77] Anderson, J., et a 1, 1977. Distinctive features, categorical perception and probability learning: some applicati0~7on a neural model. Psych olog ica l Review , 84. p 413-451. [Anderson96] Anderson, E. S., et al, 1996. Template-based autornatic recognition of birdsong syllables from contin~~ous recordings. Journal Acoustical Society o f America, 100 (2): 1209-1219. [AndrewOZ] Andrew, M. R., McGregor, T. & P., 2002. Censils and rnonitorirlg based on individually identifiable vocalizatior~.c:the role of n e ~ ~ r anetworks. l Animal Conservation, 5 : 103- 111. Aubin, Thierry, et al., 2004. How a simple and stereowed acor~sticsignal transmits individual ir~formation; ,fhe song of the White-browed Warbler Basileuter~~s leucoblephar~~s. Anais (da Academia Brasileira de Ciencias (2004) 76(2): 335-344. [Bishop99] Bishop, C. M., 1990. Neural Networks for Patern Recogrlition. Oxford University Press, New York, pp. 36. [BurgessOl] Bu rgess, Timoth y, 200 1. An artlhcial neural r~etworkfor recognit~ono f s!miilated do@hIn whistles, Thesis for a master!; in Computer Scienccs degree. University o f tiawaii. 2001. 5 5 p. [ChallonerOZ] Ctialloner, Jack, 2002. Ait!fic!al Ir~tell~ger~ce. Dorling Kiridersley l imited, 80 Strand, London WCZR ORL. 72 pp. Redes neuronales artificiales aplicadas a la biología [Chesmore04] 104 Chesmo re, David, 2004. Autornated bioacoustic identification o f species. Ana iS da Academia Brasileira de Ciencias (2004) 76-(2): 435-440. [ChristoOl] Christodoulou, Christos, Georgiopoulos, Michael, 2001. Applications o f Neural Networks in Electromagnetics. Artech house, inc. 685 Canton Street, Norwood, MA 02062. 495 pp. [Cornell95] Cornell Laboratory o f Ornithology, 1995. A Biologist's lntroduction to Spectrurn Analysis. Canary 1.2 User's Manual, Appendix B. [DeinuthOó] Demuth, H., et al, 2006. Neural Pletwork Toolbox 5.0 Userls Guide. The MathWorks, Inc., 840 pag. [Dietrich03] Dietrich Ch ristia n , 2003. Bioacoustics Temporal Sensorfusion for the Class~ficatior~of 7irne Series. Tesis iioctoral, Depto. de Neuroinformatica, Universisdad de Ulrn, Alemania. 184 pcig. [DudaOl] Duda, R., Hart, P., Stork, D., 2001. Pattern classification. A Wiley - Inter science Publication, 2"d edition, USA. 655 pp. [Elnian90] Elman, Jeffrey, 1990. Flnding str~ictii,-eN 7 t~me.Cognitive Science, vol. 14, pp. 179-2 11, 1990. [Estévez991 Estévez, Pablo ., 1999. Selecciorl de ca,racterkticaspara clasificarloies ne~~roriales. Anales del Instituto de Ingenieros de (:hile, Diciembre, pp.65-74. [Fagerlund03] Fagerlund, Seppo, 2003. Acoi~st~cs and pl~ysicalmorlels of bird soc/nn% HUT, Laboratory of Acoustics and A ~ i d i oSigrial Processing, pp 1-13. [FaundezOl] Faundez, Marco, 2001. Tratan~ientorl~gitalde voz e iinagen. Edición original piiblicatla por Marcombo, Barcelona, España. 271 pp. [Freeman93] Freeman, A James Ik Skapiira, M. D,?vid, 1993. Redes nelirorialt3~,alqoiitl~los, ~ ~ ~ ) I I C ~ yC téu11ca~ I O ~ ~ P de S progiariiar,óil. Addison A Wilriiiiicjton, Delaware, E.U.A - Wesley It~erodrnericana,S. Redes neuronales artificiales aplicadas a la biología [G(aunt83] 105 Ga u nt, A. S., 1983. A Hypothesis concerning the Relationship of Syringeal Structure tu Vocal Abilities. Au k 100, 85 3-86 2. [Gerhard98] Gerhard, David. 1998. Audo Signal Classif(cation: An Oveniew. School of Computing Science, Simon Fraser Unversity. [Glrossberg82] Grossberg , Step hen ., 1982. Studie:; of mind and brain: Neural principies of learning, perception, development, cugnition and motor control. Ed . Reidel Press, Amsterdam. [H,aykin94] Hay kin, C., 1994. Neural Networks: ,4 Comprehensive Foundation. 1EEE Press. [ H ileraOO] Hilera, José & Martínez, Victor, 2000. Redes neiironales arfifi'ciales, fundamentos, modelos y aplicacion~s. Alfaomega grupo editor, S. A. de C. V. Pitagoras 1139, Col. Del Valle, 03100 México D. F. [H(echt88] Hec ht- Nielsen, R., 1988. Neuroco/r~puting:picking the human brair?. I E E E Spectrum, 25, págs. 36-41. [IzaurietaOZ] Izaurieta, Fernando, Savedra, C., 2002. Redes Neuronales Artificiales. Comunicación escrita. Departamento de física, Clniversidad de Concepción, Chile. 15 p. [K;inde182] Kandel, Eric, 1982. Princlples of neu~alscience. Elsevier north Holland, Inc. New York. 749 p. [Kinsler61] Kinsler, L. E., 1961. Fi~rldarnentalsof acoust~cs.New York, Wiley. 516 p. [ Kohonen821 Ko honen, Teuvo., 1987. Self orga~~iznd forrrlat~onof topolog~callycorrect feahire rilaps. Blologlcal Cybernetics, 43. Págs. 59 69. [Kohonen88] Kotionen, Teuvo., 1988. Arl Introd~ictionto Neciral C O I ? ~ ~ ~Neural J ~ I I ?Networks, ~. Vol. 1, Págs. 3-16 Redes neuronales artificiales aplicadas a la biología [Kumar03] 106 Kuma r, An i1, 2003. Acoustic Cornrnun,'cation in Birds, Differences N7 Songs and Calls, their Production and Biological Signihcance. Journal Resona nce, 15, p 44- 55. Marler, Peter, & Slabbekoorn, H., 2004. Nature's rnusic. The science of bidsong. Elsevier Academic Press. 84 Theobalds Road, London WClX 8RR, UK. Chapter 1: 1-63. [MatichOl] Matic h, Dam iá n, 200 1. Redes Ne~lronalesArtificiales: conceptos básicos y aplicaciones. Universidad Tecnológica Nacional, Rosario. 56 pp. [MiyaraOO] [Monta ñoOZ] Miyara, F., 2000. La naturaleza del sonido. Academia press, México D.F Monta ño, Juan., 2002. Redes neufi7nales a/tifc;aíes aplicadas al ar?ál~sisde datos. Tesis Doctoral, Universitat de les Illes Balears, Palma de Mallorca, España. [ParsonsOO] Parsons, Stuart, Jones, G., 2000. / c o ~ ~ s t identi17cation ic of hwelve species of ect~olocating bats by discrirninant ftinction analysls alid artificial neural networks. The journal of experimental biology 2003: 2641-2656. [PfennigO6] Pfennig, Karin, Ryan J. M., 2006. Reprodiictive character displacernent gerierates reproductive lsolaho/i among conspecific pop~ilations: an artificial neural rietwork sti~dy.Proc. R. Soc. B 273, 1361-1368 [Reby971 Reby, David, et al., 1997. Artlhclal ne~lralrietworks as a classihcat~onnietbod iri the beíiav~o~iralsciences. Behavio~~ral processes 40 (1997) 35 43. [Rocen blatt581 Rosemblatt, F., 1958. Tlie perceptr~n:A probabihst~crnodel for infororniation storage alid organization 1r7 tlie brclni. Psychological Review, 6 5 , p 386-408. [RyanOO] Ryari, Michael, Getz, W ., 2000. .Stg/ial cíecodtrig a/ld receiver- evoltihori. Ari ailalysls ilsiiig ari artihctal r7ei1ial riebvork. Brain Behav. Evol. 2000, 56 :45-62. [Singüenza93] Sirig~ieririi1 ., A,, et al, 1993. Redes Neui-onciles,de la irrvesttqacióri básica a /as c~pltcac-io/it7.~ ~iiCjii.~t/-ta/es. Chip, a bri 1- 1993. 107 Redes neuronales artificiales aplicadas a la biología [SymeonidisOO] Symeonidis, K., 2000. Hand Gesture L?ecognitionUs~ngNeural Networks. Final thesis work, School of Electronic and Electrical Engineering, [TadeoOl] Tadeo, F., González, S., 2001. UNIS,68 p. Ciasificación de rnicroorganismos mediante procesado de imagen. Dpto. Ingeniería de Sistemas y Automática, Universidad de Valladolid. [Tuba ro991 Tubaro, Pablo. 1999. Bioacústica aplicada a la sistemática, conservación y manejo de poblaciones naturales de a ves. Etología, 7 :19-32. [Viñuela04] Viñuela, P., Galván, Práctico. Prentice Hall. I., 2004. Reaes de Neuronas Artificiales. Un Enfoque Redes neuronaies artificiales aplicadas a la biología 109 Apéndice B Código fuente de las redes neuronales de la codificación por imágenes %Aqui se llaman a las funciones maxcolor y traduce-colores global LARGO-BLOQUE global ALTO-BLOQUE LARGO-BLOQUE= 17; %17px es aprox 50 ms en monitor con 1.024 x 768 resolucion ALTO_BLOQUE=12; %12px es aprox lKHz en este monitor y configuracion actual del SASLAB(Tif) V=uint32(zeros(ll4,15)); %crea la matriz final con los inputs (de la red 114 archivos, 15 nodos for k=1:114 archivo=['D:\Mi~Carpeta\Tesis\Implementacion\Espectro;L~mpiosTiC (' int2str(k) ').ti?]; [M,mapa]=imread (archivo); %lee archivo de imagen M2=imcrop(M,[0,0,241,941); O/O corta lo que sobra de cada imagen despues de 241px(la + peq) [N1map]=imapprox(M2,mapa,8); %reduce la paleta de colores creando nuevo mapa N2=traduce-colores(N); %llama al traductor para que nLleva matriz refleje color-intensidad señal 0/~imview(N2,NUEVO-MAPA);0/~despliega imagen %f = inline('uint8(round(maxcolor(x)*ones(size(x))))); O/ófuncion que saca el rnax valor a un bloque f = inline('uint8(maxcolor(x))'); %funcion que saca el max valor a un bloque N3 = blkproc(N2,[ALTO-BLOQUE LARGO-BLOQUE],f); Ohllama a blkproc que procesa todos los bloques de la imagen 0/~imview(N3,NUEVO-MAPA2);0/~despliega imagen S=int2str(N3); %pasa N3 a matriz de string para poder concatenar sus elementos verticalmente %Elimina columrias vacías insertadas en el paso de int a String (buscar la razón luego) pos= 1; for n=1:14 %ojo largo de matriz-1 S(:,pos+l)= []; %elimina col en blanco S(:,pos+ l ) = [ ] ; %elimina col en blanco que ocupa el sitio antes eliminado %se mueve hasta la sig columna con datos validos pos=pos+l; end %CONCATENA for i = l : 1 5 V(k,i)= str2ri~im(strcat(S(8,i),S(7,i),S(6,i),C(5,1),S(4,1)~~~(3~1),S(2,1)~S(1,~))); erid end Redes neuronales artificiales a ~ i i c a d a sa la bioloaía global NUEVO-MAPA global NUEVO-MAPA2 %negro NUEVO-MAPA = [O O 0; 0.1176 0.4745 0.6471; %azul 0.1451 0.8706 0.1255; %verde 0.9961 0.9725 0.0157; %amarillo 0.9569 0.5686 0.0392; %naranja 0.9765 0.0471 0.0196; %rojo 0.9961 0.9961 0.99611; %blanco for i=1:241 for j= 1:94 if N(j,i)==O A(j,¡)= 1; elseif N(j,i)==2 ACj,i)=6; elseif N(j,i)==3 ACj,i)=2; elseif N(j,i)==4 A(j,i)=5; elseif N(j,i)==5 A(j,i)=3; elseif N(j,i)==6 A(j,i)=4; end end end Lectura de datos Ent = xlsread('Datos-Entrenamien to-FrecFund-lS._nodos.xls'); T-Erit - Val xlsread('Datos~.Val1cia~1ori~~FrecFuric~~l5~nodos.~~ls'); - r.-Val xlsread('~rargetsEritreriamiento-FrecF(lndddlS...nodos.xls'); xlsread('í~argetsVal1da~1ón~FrecFi1r~d~l5-nodos.xls'); 1ln