Documentos de Académico
Documentos de Profesional
Documentos de Cultura
RECONOCIMIENTOS
Esta investigación fue financiada parcialmente por la National Science Foundation (NSF)
de los Estados Unidos bajo la beca número 0410438 en el marco de la colaboración que realiza el
ITESM-CEM con UCLA en el proyecto “Sensor Arrays for Acoustic Monitoring of Bird
Behavior and Diversity”. Asimismo, se contó con el apoyo de CONACYT en la forma de
financiamiento FAPPI para la realización de los estudios de maestría.
4
RESUMEN
INSTITUTO TECNOLÓGICO Y DE ESTUDIOS SUPERIORES DE MONTERREY
CAMPUS ESTADO DE MÉXICO
Palabras Clave: Cantos de aves, Minería de Datos, Modelos Ocultos de Markov, Redes
Neuronales, Reconocimiento de Especies, Extracción de Características.
5
ABSTRACT
INSTITUTO TECNOLÓGICO Y DE ESTUDIOS SUPERIORES DE MONTERREY
CAMPUS ESTADO DE MÉXICO
Name of the Thesis: Application and Comparison of Artificial Intelligence and Statistics
Methodologies for Acoustic Bird Species Recognition
In this work, we explore the application of Artificial Intelligence and Statistics techniques
to the problem of acoustic recognition of bird species based on their song production and contrast
these results with the traditional approaches based on Hidden Markov Models and Neural
Networks. Previous work has shown that large collections of spectral and temporal attributes are
needed in order to represent the structure of bird songs. First, with the data mining approach, we
reduced the features extracted from the bird songs and used its classification techniques to
discriminate among bird species. More specifically, J4.8, a decision tree algorithm was
implemented in order to extract the most significant attributes. Naïve-Bayes, a probabilistic
classifier, was applied over the resulting J4.8 reduced attribute data set. This was done in order to
compare the efficiency of the reduced attribute data results against those obtained from the
complete attribute data set. Next, the association rules algorithm was applied to the reduced
attribute data set in order to find natural relationships between the attributes. Finally the
efficiency of data mining classification algorithms was compared against those of HMM’s and
Neural Networks, proving that the data mining results yielded higher accuracy and simplicity.
Keywords: Data mining, Hidden Markov Models, Neural Networks, Bird Song, Species
Recognition, Feature Extraction.
6
CONTENIDO:
1 Introducción..........................................................................................................................11
1.1 Generalidades.................................................................................................................11
1.2 Planteamiento del problema ..........................................................................................15
1.3 Objetivos.........................................................................................................................17
1.4 Contribuciones esperadas ..............................................................................................17
1.4 Organización del documento .........................................................................................18
2 Marco teórico ........................................................................................................................20
2.1 Trabajos previos.............................................................................................................20
2.2 El canto de las aves........................................................................................................24
2.2.1 Producción de sonido...............................................................................................24
2.2.2 Comunicación de aves .............................................................................................26
2.2.3 Etapas de desarrollo de la canción..........................................................................27
3 Modelo propuesto .................................................................................................................30
3.1 Adquisición y pre-procesamiento de datos....................................................................31
3.1.1 Cantos de aves .........................................................................................................31
3.1.2 Pre-procesamiento de la señal.................................................................................31
3.2 Extracción de características .........................................................................................32
3.2.1 Definiciones..............................................................................................................33
3.2.2 Características extraídas – interpretación y posible importancia .........................37
3.3 Validación cruzada (“Crossvalidation”) ........................................................................39
3.4 Minería de Datos ............................................................................................................39
3.4.1 Cuantización ............................................................................................................40
3.4.2 ID3............................................................................................................................42
3.4.3 J4.8 ...........................................................................................................................43
3.4.4 Naive-Bayes..............................................................................................................43
3.4.5 Reglas de Asociación ...............................................................................................44
3.5 Redes Neuronales ...........................................................................................................45
3.5.1 Retropropagación del Error ...................................................................................46
3.5.2 Funciones de Base Radial (RBF).............................................................................47
3.6 Modelos Ocultos de Markov ..........................................................................................48
4 Experimentos y resultados obtenidos...................................................................................53
4.1 Adquisición y pre-procesamiento de datos....................................................................53
4.1.1 Cantos de aves .........................................................................................................53
4.1.2 Pre-procesamiento de la señal.................................................................................53
4.2 Extracción de características .........................................................................................54
4.3 Validación cruzada (“Crossvalidation”) ........................................................................55
4.4 Modelos Ocultos de Markov ..........................................................................................55
4.5 Minería de Datos ............................................................................................................57
4.5.1 Cuantización ............................................................................................................57
7
LISTA DE FIGURAS:
LISTA DE TABLAS:
1 INTRODUCCIÓN
1 Introducción
1.1 GENERALIDADES
1.1 Generalidades
En el caso de las herramientas de hardware que se están desarrollando para este fin
encontramos los arreglos de sensores [24, 63], los cuales proveen información sobre las
condiciones ambientales localizadas en algún hábitat en la escala de organismos individuales. Los
nodos de un arreglo de sensores, es decir los sensores individuales, pueden ser micronodos o
macronodos. Los micronodos (Figura 1) que se instalan en las áreas de interés, son de tamaño
pequeño y están alimentados por medio de una batería integrada, se componen además por un
microcontrolador de bajo consumo de energía capaz de ejecutar unos pocos MIPS (millones de
instrucciones por segundo), unos cuantos “kilobytes” en RAM, sensores para monitorear la luz
del sol, humedad, presión y temperatura, un cono que protege al sensor y un transmisor
inalámbrico. Los elementos de percepción del entorno (sensores) se encuentran de dos posibles
formas, ya sea una sonda conectada a una tarjeta de adquisición de señal de propósito general o
integrados en la tarjeta del microcontrolador junto con el transmisor inalámbrico. Los
macronodos o macrosensores tradicionales ofrecen por lo menos diez veces la capacidad de un
micronodo en términos de memoria, procesamiento y ancho de banda de comunicación. En el
caso de los nodos utilizados para la clasificación de aves e individuos se requiere que éstos sean
macronodos, para que puedan correr sin dificultades el algoritmo que requerirá esta aplicación.
Los componentes principales que requiere una típica aplicación para el monitoreo
ambiental [63] se muestran en la Figura 2. Las muestras se originan en los nodos (sensores),
colocados en pequeñas áreas diversas del hábitat de interés. Por lo general, cada pequeña área
está separada del resto por una gran distancia. La información, la cual se obtiene de cada área, va
a través de la red de tránsito a un centro de datos, que además de almacenar información de los
sensores, almacena información de la red de verificación.
13
Por medio de los arreglos de sensores [24, 63] , los algoritmos y los filtros apropiados se
podrá saber, por ejemplo, si la diversidad de una especie está correlacionada con la diversidad de
la vegetación, o si la diversidad es mayor o menor en relación con lugares más lejanos o más
cercanos al sitio de estudio. En un futuro, cuando el proyecto [64] se complete, se podrá filtrar,
ordenar y clasificar la salida de un solo sensor para la identificación de vocalistas específicos,
analizar las variaciones en las canciones o llamadas a través del tiempo y correlacionar estas
variaciones con el sonido total del ambiente (biótico y abiótico). Múltiples sensores podrán
rastrear vocalistas específicos en el espacio y tiempo, y así grabar sus movimientos, localizar a
quien pertenece cada territorio, calcular las densidades de las especies y dilucidar respuestas e
interacciones intra e ínter especie.
Para el proyecto del cual forma parte este trabajo, el objetivo de los arreglos de sensores
consiste en introducir en un ambiente natural un cierto número de pequeños sensores para
adquirir información de sus alrededores. La tecnología de arreglos de sensores distribuidos nos
permitirá en un futuro detectar eventos poco comunes que ocurran en un cierto ambiente, tales
como la presencia de especies en peligro de extinción, sus interacciones sociales y comunicación,
sin la intervención humana, y permitirán plantear y verificar hipótesis que de otro modo sería
impráctico y/o imposible realizar.
Para poder explotar el potencial completo de los arreglos de sensores distribuidos para
esta tarea específica, debemos enfrentar problemas computacionales complejos. Los cantos de las
aves, cuando son convertidos al dominio de la frecuencia mediante las transformadas de Fourier,
producen grandes cantidades de datos que requieren procesamiento y discriminación; las
relaciones implícitas deben ser encontradas, la información debe ser ordenada y limpiada. Es aquí
donde las técnicas de minería de datos pueden emplearse tanto para a reducir la complejidad y el
costo computacional de estos análisis como para realizar la clasificación de especies de aves, lo
que nos permitiría incorporar estas tecnologías de procesamiento en plataformas restringidas en
14
cuanto al uso de poder de procesamiento y energía, tales como lo son los nodos en un arreglo de
sensores.
La hipótesis del presente trabajo consiste en que la minería de datos nos puede llevar a
obtener una mejor eficiencia en la clasificación acústica de especies de aves que los enfoques
tradicionales para este tipo de problemas, como las Redes Neuronales o los Modelos Ocultos de
Markov, a un costo computacional razonable para un dispositivo con recursos computacionales
limitados, como un nodo en un arreglo de sensores. Para validar dicha hipótesis, se analizó la
eficiencia en la clasificación y el costo computacional de cada uno de los algoritmos
anteriormente mencionados, encontrado en el equilibrio entre estas dos variables a la solución
óptima para este problema.
Uno de los objetivos del proyecto “Sensor Arrays for Acoustic Monitoring of Bird
Behavior and Diversity” es el de lograr la identificación automatizada de especies de aves por
medio de la información obtenida mediante arreglos de sensores, localizados en la reserva
ecológica de Montes Azules, Chiapas, seleccionada por tener una rica diversidad de especies de
aves en una selva tropical. El utilizar una reserva ecológica como lugar para el desarrollo de
nuestro trabajo nos permitirá realizar pruebas en un lugar alejado de la civilización, facilitando la
correcta medición de parámetros de las especies e individuos en su ambiente natural sin que estas
mediciones y experimentaciones se encuentren intervenidas por factores externos como el
humano.
La razón principal por la cual se seleccionaron estas especies es que son aves territoriales
abundantes en Montes Azules, Chiapas, la reserva ecológica en donde la red de arreglos de
sensores se instalará en el futuro cercano. El hecho de que sean aves territoriales ayuda a su
localización, facilitando así el reconocimiento. Asimismo, fueron seleccionadas porque estas
especies de aves tropicales no aprenden canciones y en consecuencia su repertorio es limitado, lo
que hace el trabajo de reconocimiento acústico más sencillo.
Los sensores que se utilizarán en el arreglo son construidos por el UCLA Center for
Embedded Networked Sensing (CENS) [24]. Algunos de ellos se encuentran cableados a
computadoras presentes en el campo donde se trabaja, otros se comunican por medio de redes
inalámbricas.
El reconocimiento logrado podría ser utilizado entre otras cosas para resolver problemas
del mundo real que de otra forma no podrían ser resueltos y que representan problemas
significativos para la ecología. Se permitirá el planteamiento de hipótesis tales como si los
individuos de las especies que se desplazan vocalizan para mantener la distancia de separación
individual mínima, o si las especies que utilizan rangos de frecuencias similares cantarán en
tiempos diferentes para minimizar la interferencia acústica, éstas entre otras hipótesis. Otra
utilidad a futuro dentro del proyecto de UCLA es la extensión del conocimiento que se tiene
actualmente sobre las interacciones de las aves, ya que existen especies de las que no se conoce
aún el significado de algunas de sus vocalizaciones y su estructura social. En el futuro, la
utilización de algoritmos para el reconocimiento de eventos combinados con algoritmos para el
17
1.3 OBJETIVOS
1.3 Objetivos
El objetivo es comprobar si tal como se espera, estas técnicas son superiores en eficiencia
a los enfoques tradicionales y clásicos, tales como los Modelos Ocultos de Markov y las Redes
Neuronales, mismos que también son analizados. Asimismo, se espera identificar al algoritmo
que proporcione un equilibrio óptimo entre eficiencia y costo computacional con el fin de realizar
análisis en campo mediante la implementación del mismo en los nodos de las redes de sensores
que se utilizarán en el futuro cercano.
Capítulo 2 - Marco Teórico. En este capítulo se mencionan y analizan los trabajos previos
y la mecánica del canto de las aves, cómo es que producen sonido y cómo se comunican tanto
mediante señales acústicas como con señales no acústicas. Finalmente, se explora la evolución de
la canción de un ave que aprende canciones desde que nace hasta la edad adulta.
2 MARCO TEORICO
2 Marco teórico
como grabaciones ruidosas o la presencia de llamadas confusas de corta duración DTW requiere
la selección cuidadosa de patrones que pueden requerir el conocimiento de expertos para poder
mantener su buen desempeño. Dado que los HMM’s están entrenados, se puede alcanzar un
desempeño equivalente o mejor basándose solamente en la segmentación y marcado de las
vocalizaciones componentes, aunque con muchos más ejemplos de entrenamiento que las
plantillas de DTW. Se encontró que una de las debilidades en el desempeño de los HMM’s
consiste en la mala clasificación de las llamadas de corta duración o unidades de canción con
estructura más variable, como algunas llamadas y sílabas. La investigación sobre HMM’s fue
realizada con el paquete HTK utilizando el algoritmo de Baum-Welch para el entrenamiento y el
algoritmo de Viterbi para el reconocimiento; la investigación sobre DTW fue realizada
desarrollando el sistema basado en DWT “Long Continuous Song Recognition” (LCSR). La
desventaja de ambas técnicas es la falta de un método para encontrar las características
discriminativas a partir de las señales dadas, en ambos casos, se extrae el total de datos
disponibles de la señal y se crea un modelo clasificador a partir del conjunto completo de ellos, a
diferencia de técnicas como el Análisis en Componentes Principales o los Árboles de Decisión,
que nos permiten seleccionar únicamente los atributos más representativos de un conjunto de
datos sobre los cuales se ejecutará un algoritmo clasificador. El resultado o eficiencia obtenida
con ambas metodologías fue en general bueno, sin embargo, aún no lo suficientemente confiable
como para considerarlo para el trabajo diario de laboratorio, con lo cual se descarta también
cualquier posibilidad de poder utilizarlo para el reconocimiento en tiempo real. Los autores
sugieren que extraer más información biológicamente significativa de las canciones podría
mejorar el desempeño considerablemente.
En otro trabajo, Wilde [71] de la Tulane University utilizó también los Modelos Ocultos
de Markov para resolver este problema utilizando a HTK como plataforma, llamando sus
funciones desde un programa en C. Ellos utilizaron cuantización sobre sus archivos en formato
wav de la base de entrenamiento para que pudieran ser consultados por el algoritmo de Viterbi.
Asimismo, al momento de crear la gramática en la forma Backus-Naur o BNF que requiere HTK
para funcionar, utilizaron únicamente los nombres de las aves a clasificar como gramática.
Utilizaron tres distintas configuraciones cada una de ellas con tres pruebas, la primera con 10
muestras de cada pájaro o individuo para el conjunto de entrenamiento y 10 muestras para el
conjunto de prueba, en la segunda se incrementa el tamaño del conjunto de prueba y se mantiene
el tamaño del conjunto de entrenamiento, y finalmente en la tercera se incrementa el tamaño del
conjunto de entrenamiento mientras que se decrementa el tamaño del conjunto de prueba.
con las dos aves similares (keel-billed toucan y toco toucan). Este modelo, aunque resultó
altamente confiable para la clasificación de aves (individuos) de especies disimilares tuvo poca
confiabilidad en aves de especies similares, por lo cual sería de poca utilidad para clasificar un
mayor número de individuos (considerando que a mayor número de individuos, mayor número de
especies y mayor probabilidad de tener especies similares en el conjunto a clasificar), esto limita
su utilización en una implementación en línea, donde generalmente se requiere clasificar un
número considerable de especies.
En el trabajo de Bard [6] se utiliza el software Syrinx [62] para procesar con 257
canciones de 25 machos y 5 hembras de la especie Hylophylax naevioides u Hormiguero
Moteado y se trabaja con el software SPSS [61] para realizar el análisis estadístico. Se realizó un
filtrado de las canciones para eliminar el ruido ambiental. En dicho trabajo se estudia la variación
individual en la canción, se trata de saber si los pájaros de esa especie pueden distinguir entre un
vecino y un extraño y presuponen que para realizar una distinción de este tipo, se utilizan
características de la señal. Para determinar qué variables son las más importantes en la distinción
de individuos se utilizó el análisis discriminante, el resultado arrojó que cuatro características
temporales y de frecuencia revelan diferencias significativas entre individuos: la frecuencia
central en kiloHertz, el rango de frecuencias, la duración de la canción, y la velocidad de la
canción. Las características temporales de las canciones variaron significativamente entre sexos,
no así las características de frecuencia. Para probar la generalidad de la clasificación, se
estimaron las tasas de error por medio de la validación cruzada. El análisis discriminante con
validación cruzada reveló que el 73% de los individuos machos y 94% de las hembras fueron
correctamente clasificados al individuo que produjo la canción. La identificación de sexos
realizada en este trabajo por medio del análisis en la variación en las características temporales de
las canciones entre sexos es una aportación interesante, sin embargo, esto solo se probó en una
sola especie, sería realmente interesante comprobar si esta característica mantiene su eficiencia de
clasificación con otras especies. También es importante destacar el desequilibrado número de
machos contra hembras utilizado (25 machos contra solo 5 hembras), mismo que pudiese estar
afectando el porcentaje de eficiencia en el reconocimiento de individuos.
En el trabajo de Kwan [39] se hace una investigación para localizar a las especies de aves
que más frecuentemente se estrellan contra los aviones poniendo en peligro al avión, el objetivo
es encontrar la forma de disminuir el número de estos accidentes. En la investigación se detalla el
desarrollo de un sistema de clasificación de aves utilizando HMM’s y un Modelo de Mezcla
Gaussiana (GMM, del inglés Gaussian Mixture Model). En este sistema, primero se realiza el
pre-procesamiento del sonido: que todas las muestras tengan la misma frecuencia de muestreo
("sampling rate”), que todas las muestras estén contenidas en bloques de datos y aplicación de la
transformada discreta de Fourier. Posteriormente, realizan un Análisis en Componentes
Principales y una Cuantización Vectorial, cuyos resultados alimentan a los Modelos Ocultos de
Markov. Con esta configuración, se obtienen resultados razonablemente buenos para 4 especies,
con 5 muestras de cada especie. En el caso de GMM, primero realizan el pre-procesamiento para
la extracción de características y posteriormente aplican los modelos GMM para clasificar a las
distintas aves. El reconocimiento en un ambiente ruidoso con GMM es ligeramente deficiente, sin
embargo, cuando se hace junto con “beamforming” para reducir el ruido ambiental mejora
considerablemente. Finalmente, se obtuvieron mejores resultados con GMM que con HMM, y
también se concluyó que GMM es más adecuado para una implementación en tiempo real.
En el trabajo de Härmä [30] se trabajan las canciones a nivel de sílabas, que son los
bloques elementales de la canción de un ave. En ese trabajo se prueba que tan bien se pueden
23
En el trabajo de Anderson [3] se trabaja con Dynamic Time Warping o DTW. Este
algoritmo compara una señal de entrada con un conjunto de plantillas predefinidas
representativas de las categorías escogidas por el investigador. Compara directamente los
espectrogramas de la señal e identifica a los componentes y sus fronteras, permitiendo así la
identificación de un amplio rango de señales y componentes de las señales. En ese trabajo se
aplicó este algoritmo a cantos de dos especies, Indigo Bunting (Passerina cyanea) y Zebra Finch
(Taeniopygua guttata). Cuando se aplicó sobre vocalizaciones recolectadas en un ambiente con
bajo desorden y ruido ambiental, el clasificador identificó sílabas en canciones y llamadas
estereotipadas con alrededor del 97% de eficiencia. Las sílabas recolectadas con esta misma
excelente calidad de grabación pero más variables y de amplitud menor de la canción plástica del
Indigo Bunting son identificadas con aproximadamente el 84% de eficiencia.
Resumiendo, estos trabajos se utilizan los algoritmos DTW, HMM, análisis discriminante
cuadrático, GMM, Modelado Sinusoidal y Redes Neuronales de Retropropagación del Error. El
uso de estos algoritmos proporcionó en general una baja eficiencia, el más destacado fue DTW
con 97% en un ambiente con perturbación y ruido ambiental bajos, utilizando llamadas y
canciones estereotipadas solamente entre dos especies, que al utilizar grabaciones igualmente
limpias pero con silabas más variables disminuye al 84%. En general, el costo computacional de
entrenamiento de éstos algoritmos para conjuntos de datos de gran tamaño, con muchas especies
24
Existen paralelos generales entre el syrinx en las aves y la laringe en los mamíferos. Por
ejemplo, ambos producen sonido cuando el aire es forzado a través de la traquea, causando que
las membranas delgadas vibren. En el caso de los mamíferos, estos utilizan dos delgados pliegues
en la laringe (cuerdas vocales) para producir el sonido. Pequeños músculos controlan la tensión
en las cuerdas vocales y de esta forma el tiempo y tono de los sonidos. Las cavidades en la
garganta, boca y nariz en ocasiones resuenan y modifican así la naturaleza de los sonidos que se
emiten de la boca del animal. Sin embargo, el syrinx es un mecanismo generador de sonido
mucho más elaborado. Es altamente eficiente, crea sonido a partir de casi todo el aire que pasa a
través de él. La laringe humana, en comparación, utiliza solamente alrededor del 2% del aire
exhalado. Las aves también cuentan con una laringe, sin embargo ésta no incluye cuerdas vocales
como en el caso de los humanos.
25
Fig. 8 El Syrinx (caja de voz del ave) contra la laringe (la caja de voz del humano) (Original en colores). [64]
Debido a que el syrinx se extiende a lo largo de dos tubos bronquiales separados, cada uno
equipado con membranas productoras de sonido y conexiones neuronales separadas, los pájaros
son capaces de producir dos sonidos separados al mismo tiempo. Los pájaros cantores son
capaces inclusive de cantar con un lado de su syrinx mientras que toman pequeñas y rápidas
respiraciones a través del otro lado durante las pausas de las canciones.
La modulación inigualable y variedad del canto de las aves se ha ligado con la compleja
musculatura del syrinx, que dependiendo de la especie puede tener hasta 12 pares de pequeños
músculos que controlan la tensión de las 2 o 4 membranas del syrinx. Las cigüeñas, los buitres
del nuevo mundo y otras especies que no son capaces de utilizar sus músculos syringeales están
extremadamente limitadas en el rango de vocalizaciones que pueden hacer. La complejidad de los
músculos syringeales es una característica importante que distingue a las dos principales sub-
órdenes, los oscinos y los suboscinos, dentro del orden de los Passeriformes, los paserinos o
pájaros cantores (la palabra “oscino” se deriva del Latín canere, que significa cantar). Los
suboscinos son similares a los no-paserinos en que tienen una musculatura syringeal menos
compleja que los pájaros cantores oscinos.
Los oscinos y suboscinos difieren de otras formas, por ejemplo, los oscinos generalmente
necesitan aprender sus canciones, mientras que en los suboscinos las canciones son innatas.
Posiblemente, el aspecto más interesante del sistema nervioso central de las aves es su rol en el
control del canto. Mientras la mayoría de los pájaros son capaces de vocalizar, la canción es una
actividad compleja que frecuentemente debe ser aprendida por los pájaros jóvenes, especialmente
en los paserinos oscinos. Formas de vocalizaciones aprendidas también ocurren en pericos y
colibríes, los pericos son capaces inclusive de imitar el habla humana.
aves. Si las ligas entre estos centros y el syrinx son interrumpidas, un ave es incapaz de producir
una canción normal [58].
Los pájaros se comunican para satisfacer distintas necesidades informativas, como por
ejemplo, los machos para hacer sentir su valor como parejas a las hembras, las presas para hacer
saber a sus depredadores que ya los detectaron y que por lo tanto lo más probable es que logren
escapar, los individuos para conservar su territorio señalizando a otros su dominancia sobre él,
dentro de las parvadas para indicar hacia donde van o si hay alguna situación de peligro.
En la comunicación pasiva encontramos los patrones de plumaje, que pueden indicar por
ejemplo, la edad y el sexo de un ave. Cuando los patrones de plumaje tienen una forma o color
llamativos, pueden ser lo más efectivo para la señalización, como por ejemplo cuando tienen
patrones geométricos, manchas de color aisladas, patrones repetidos, etc. Ligeras diferencias de
pájaro a pájaro en el patrón de plumaje pueden ayudar también en el reconocimiento visual de
individuos. La apariencia del plumaje y la forma en que se está presentando forman en conjunto
la “señal”.
Otro tipo de exposiciones son aquellas que utilizan sonido e involucran tanto a la voz
como a sonidos no vocales para la comunicación. Las canciones son generalmente vocalizaciones
largas y complejas, producidas de manera espontánea por los machos. En algunas pocas especies,
las hembras también cantan y en algunas de ellas inclusive forman duetos. Las canciones
producidas por hembras suelen ser más sencillas que las producidas por machos. La mayoría de
las especies canta solamente en ciertas épocas del año. Las llamadas de aves son por lo general
cortas y simples, pero en ocasiones pueden llegar a ser complejas y ser confundidas con
canciones simples, especialmente cuando están conectadas una serie de llamadas. Las llamadas
normalmente ocurren en un contexto específico y tienen una determinada función; son
producidas por ambos sexos a lo largo de todo el año. Las canciones y llamadas en las
exposiciones vocales tienen sus raíces en notas de llamadas, pero dentro de los paserinos oscinos
han alcanzado un extraordinario nivel de desarrollo. Las llamadas se definen como
vocalizaciones cortas y estereotipadas que son innatas, mientras que las canciones son más
complejas y frecuentemente deben ser aprendidas. Los pájaros pueden tener una docena o más de
27
Las canciones de las aves se ven afectadas por distintos factores. En el caso de aves de
matorrales densos éstas tienden a tener cantos de alto volumen y baja frecuencia, mientras que las
aves que viven en ambientes con un sonido ambiental de baja frecuencia tal como el de los rios y
cascadas utilizan cantos fuertes y tañidos para poder ser escuchados. Las canciones complejas y
zumbantes son en mayor medida utilizadas por aves que viven en las praderas, donde las
vocalizaciones simples y sostenidas tienden a ser distorsionadas por el viendo y los cambios en la
temperatura del aire [58].
Poco más de un mes después, el ave joven aparece cantando su única canción cristalizada
en el espectrograma de la Figura 10, donde la primera canción es una reproducción de la canción
que el ave ha cristalizado y la segunda canción es su respuesta con su interpretación de la canción
correspondiente, 3 segundos más tarde. Ha dejado de cantar sus imitaciones de los tutores 2 y 3, y
mantendrá su imitación del tutor 1 como su canción cristalizada. Este es un ejemplo de desgaste
selectivo de canciones del repertorio de canciones plásticas sobre-producido, guiado por escuchar
las canciones de otro pájaro. Esta pérdida selectiva de canciones puede llevar a los dialectos
vocales, en los cuales los machos de la vecindad cantan canciones muy similares que difieren de
las canciones en otros lugares [50].
Los espectrogramas son utilizados en la ornitología para identificar los sonidos y analizar
los cantos de las aves. Son el resultado de calcular el espectro de frecuencias en ventanas de una
señal compuesta, una gráfica bidimensional de la energía del contenido de la frecuencia de una
señal conforme va cambiando a través del tiempo.
Fig. 9 Espectrograma de las canciones originales de los tutores y de las canciones plásticas del ave joven [50]
Fig. 10 Espectrograma de la canción original del tutor y de la canción cristalizada del ave joven [50]
ser en el caso de los humanos, donde el cambio del orden de las palabras si altera el significado
de la oración), sin embargo, a través del estudio realizado en dicho trabajo se comprobó que las
hembras prefieren a los machos de canciones complejas que a aquellos de canciones sencillas (se
tomaron muestras de estradiol sérico y se observó la cantidad material para hacer nidos que se
transportó para realizar esta afirmación). De acuerdo a Okanoya [52], las canciones de aves se
dividen en dos tipos, el primer tipo es cuando nota en una canción es seguida por otra nota en la
misma canción de forma determinista, o el orden de las notas de la canción es fijo en cada
canción de un ave con repertorios múltiples, esto se identifica como canciones lineales. El
segundo tipo de canciones es cuando se introducen algunas variaciones en el orden de las notas
de las canciones, a este tipo de canciones se les llama no deterministas. En el caso de las
Isabelitas o Gorriones del Japón, Okanoya [52] identificó que sus canciones son caracterizadas
por una sintaxis de estados finitos, es decir, que tienen una forma de sintaxis simple en donde un
número finito de estados se encuentran interconectados por medio de flechas y donde se produce
una cadena de letras cuando ocurren las transiciones. En estas aves, de 2 a 5 notas se agrupan
juntas y cada uno de esos bloques se emite en una transición de estado determinada de forma que
el patrón de producción de bloques sigue una sintaxis de estado finito. Una sintaxis de estado
finito puede ser expresada como un modelo de Markov de transiciones nota a nota, en el cual las
probabilidades de transición de ciertas combinaciones de notas son altas, mientras que entre
algunas otras notas son bajas. Estudios gramaticales de este tipo se están realizando en el ITESM
CEM para las especies que nos ocupan de manera paralela a este trabajo dentro del proyecto del
Dr. Taylor [64] para UCLA, los resultados de dichos estudios y su importancia en la clasificación
de estas especies de aves los podremos ver en un futuro cercano.
30
3 MODELO PROPUESTO
3 Modelo propuesto
En los intentos por automatizar el análisis de la vocalización de las aves, el filtrado por
especies y el reconocimiento de individuos realizados hasta la fecha se han explorado distintas
técnicas. Éstas incluyen en orden histórico aproximadamente al análisis estadístico multivariable
de las propiedades de las canciones [16], correlaciones cruzadas del espectro [16, 43], redes
neuronales artificiales con y sin retropropagación [4, 43], dynamic time warping [3, 38] y mapas
auto-organizables de Kohonen [59]. Más recientemente, estos esfuerzos se han beneficiado de la
explosión de conocimiento sobre el reconocimiento del habla humana, con los Modelos Ocultos
de Markov [38, 69] y el modelado sinusoidal de sílabas [30]. No es ninguna sorpresa que de
acuerdo a la bibliografía estudiada, los últimos métodos funcionen mucho mejor que los
anteriores cuando los ambientes son ruidosos. Es de esperarse que una mayor adopción de los
métodos de la lingüística computacional y el reconocimiento del habla humana contribuyan al
avance en esta área.
El conjunto de datos que se utilizará está conformado por muestras de cantos de las
siguientes tres especies:
Las muestras de cada especie son procesadas para extraer las características de la señal, 71
atributos, que representan en su conjunto el total de la información contenida en el canto de un
ave. Los conjuntos de datos resultantes serán unidos en un solo conjunto, divididos en conjuntos
de entrenamiento y de prueba, sobre los cuales serán ejecutados los algoritmos a estudiar.
Dentro del estudio de los algoritmos que podrían resolver este problema, consideramos el
algoritmo que como ya se ha mencionado ha proporcionado recientemente los mejores resultados
en el reconocimiento de voz en humanos, los Modelos Ocultos de Markov [22]. Adicionalmente,
se comprobó la eficiencia de los algoritmos de Minería de Datos ID3 [72] con Cuantización [42]
y opcionalmente con Naive-Bayes [72] y J4.8 [72] en combinación opcional con Naive-Bayes
[72], Naive-Bayes [72] por si solo y Reglas de Asociación [6], así como las Redes Neuronales de
Retropropagación del Error con Gradiente Descendiente y Momento y con Levenberg-Marquardt
31
[56, 23] y Funciones de Base Radial [56, 23]. Dentro del trabajo a futuro se tiene contemplada
tanto la utilización de SVM, ya que se sabe que en ocasiones llegan a ser más eficientes que las
RBF, como la utilización de DTW, cuya eficiencia con patrones bien seleccionados es por lo
general muy satisfactoria.
El filtrado es un proceso a través del cual algunas frecuencias de una señal acústica son
eliminadas para prevenir su interferencia en la señal que se está estudiando [70]. El filtrado se
puede llevar a cabo a nivel de hardware o a nivel de software. La mayoría de las veces, es fácil
eliminar sonidos no deseados de las grabaciones utilizando filtros de software, ya que estos
ocurren a frecuencias mayores o menores que el canto de las aves que estamos estudiando.
Un filtro pasa-altos, es aquel que permite el paso a todas las frecuencias que queden por
encima de su umbral, mientras que un filtro pasa-bajos es aquel que permite el paso a todas
aquellas frecuencias que se encuentren por debajo de su umbral. Cuando se utilizan combinados y
en serie los filtros pasa-bajos junto con los pasa-altos como en este problema, se dice que se
construye un filtro pasa-banda, donde habrá un rango de frecuencias que ambos dejarán pasar
(idealmente para este problema, el rango en que canta cada una de las especies de aves
estudiadas).
Una vez que cada llamada es reconocida correctamente dentro de una grabación, debemos
analizar que cada pulso dentro de cada llamada este siendo analizado también correctamente.
Para hacer esto, debemos ir a la lista de llamadas reconocidas, seleccionar la llamada que
queremos analizar y verificar el oscilograma desplegado para esa llamada, en caso de que haya
uno o más pulsos faltantes en el reconocimiento, debemos añadirlos manualmente.
Los resultados del análisis pulso por pulso son guardados como archivos separados por
comas o “csv” (por sus siglas en inglés). Estos archivos contienen los 71 atributos presentes en
cada pulso de las muestras procesadas, representando en su conjunto el total de la información
contenida en un sonido, en este caso el canto de un ave.
33
3.2.1 DEFINICIONES
3.2.1 Definiciones
Para realizar la descripción de los parámetros que se utilizaron en este trabajo es necesario
definir algunos términos físicos y matemáticos que ayudarán a comprender los términos extraídos
del programa Sound Ruler [60].
Definición 2. Frecuencia. Se define como el inverso del periodo, y está expresado en Hertz (Hz):
1
f = (1)
P
Sin pérdida de generalidad una señal analógica puede estar representada como x ( t ) ,
entendiéndose con esto que, dicha señal se puede representar matemáticamente como una
función, y en donde t es la variable independiente de dicha función.
!
Definición 4. Sea x ( t ) una señal con un límite de banda de f bl Hz . Entonces la frecuencia f ny ,
definida como 2 f bl = f ny Hz , se le conoce como frecuencia de muestreo de Nyquist de la señal
x ( t ) . [17]
!
Para digitalizar el sonido es necesario considerar el teorema de muestreo de Nyquist, el
cual se menciona a continuación:
!
Teorema 1. Teorema de Muestreo de Nyquist: Sea x ( t ) una señal con una frecuencia de Nyquist
de f ny Hz , entonces esta señal puede ser únicamente reconstruida a partir de sus valores de
muestreo si la frecuencia de muestreo es mayor que la frecuencia de Nyquist de la señal. Esto es,
la frecuencia de muestreo satisface f ny < !
fs
Lo que nos quiere dar a entender el teorema de Nyquist es que para reconstruir cualquier
señal de sonido, que al final de cuentas es una señal analógica, se puede expresar digitalmente,
por lo que una señal expresada en el tiempo t1 , x ( t1 ) quedaría expresada ahora como x[n] , donde
n es la n-ésima muestra de la señal x .
Definición 5. Señal periódica. Una señal x ( t ) es periódica si existe una constante T0 >0 tal que:
!
!
34
( )
x t + T =x ( t ) Para toda t
0
(2)
# # 2$
x(t ) = a + " a cos(mw t ) + " sin( mw t ), w =
0 m 0 0 0 T
m =1 m =1 0
1 t0 + T 0
a = ! x(t )dt
0 T
0 t0
(3)
2 t0 + T 0
a = ! x(t ) cos(mw0 t )dt m = 1,2,3,...
m T
0 t0
2 t0 + T 0
b = ! x(t ) sin( mw0 t )dt m = 1,2,3,...
m T
0 t0
De manera alternativa, las series de Fourier se pueden representar por medio de la expresión:
1 &
x(t ) = + % cos(m't + ( ) m = impar
2 m =1 m
donde (4)
#$ ' , m = 3,7,11,...
( ="
m ! 0, m = 1,5,9,...
Donde θm son los coeficientes de fase y Am son los coeficientes de amplitud. [53]
Definición 6. Valor cuadrático medio. El valor cuadrático medio de una variable x ( t ) se define
como:
1 T /2 2
% 2 = l lim ! x (t )dt ! (5)
x T $ #T "T /2
La raíz cuadrada positiva del valor cuadrático medio es conocida como el valor de la raíz
cuadrática media, o valor RMS en inglés.
Donde el logaritmo es base 10 (ver ref. 10). Muchas veces la salida de potencia de un
sistema se puede interpretar como la intensidad sonora, y la intensidad de potencia se interpreta
como la intensidad de referencia.
De acuerdo con Kinsler [37] es costumbre describir los niveles sonoros a las presiones e
intensidades conocidas. Una razón para esto es la gama tan amplia de presiones e intensidades
sonoras que se encuentran en un medio acústico, las intensidades acústicas van desde
W W
aproximadamente 10 !12 2 a 10 2 . El uso de escalas logarítmicas comprime la gama de
m m
números requeridos para describir este gran intervalo de intensidades. Una segunda razón es que
las personas juzgan la sonoridad relativa de dos sonidos por la razón de sus intensidades por
medio de un comportamiento logarítmico.
w nc
f = n = (7)
n 2! 2 L
w
Donde c es una constante igual a , donde k es el número de onda y n =1,2,3,...
k
Precisamente, para n=1 tendremos la frecuencia del primer armónico de la cuerda; para n=2
tendremos la segunda armónica, etcétera.
Sintetizando todos los conceptos anteriores, tenemos que: el sonido es una onda de
presión, en la cual las moléculas del medio (aire o agua) se mueven diminutas distancias para
crear presiones altas y bajas rápidamente alternantes. Estos cambios en la presión se traducen con
un micrófono en cambios en el voltaje eléctrico. La amplitud de los cambios en la presión
determina la intensidad (o sensación de volumen) del sonido. La tasa de los cambios (ciclos por
segundo o Hertz, abreviado Hz) es la frecuencia del sonido. La frecuencia del sonido determina
nuestra sensación de la nota del mismo.
Si los pulsos de sonido se encuentran separados por intervalos más largos que el periodo
de análisis, el espectrograma despliega esos pulsos separados por espacios (periodos de análisis
sin sonido). En contraste, si los pulsos de sonido se encuentran separados por intervalos más
cortos que el periodo de análisis, entonces el espectrograma despliega bandas horizontales
continuas, los componentes de la frecuencia de un sonido pulsado. Un espectrógrafo
normalmente nos permite escoger la duración del periodo de análisis, de forma que podamos
cambiar la apariencia de los pulsos de sonido.
Los coeficientes que se pueden obtener de Sound Ruler [60] a partir del archivo de sonido
se dividen en: archivo, sección y llamada. Estos coeficientes desde el punto de vista auditivo
están divididos en tres categorías: amplitud, donde se determina el pico máximo de un
determinado segmento de la señal y los valores a diferentes intervalos de tiempo de este pico
máximo; energía, determinados a partir del valor de la raíz cuadrática media de la señal;
frecuencia, donde se obtienen las frecuencias fundamentales, armónicas y potencia de señal
dadas en Hertz.
El usuario de Sound Ruler [60] puede seleccionar un determinado intervalo del archivo de
sonido indicando así que es una llamada y a partir de este intervalo se determina el pico máximo
y otros valores máximos de amplitud expresados en un determinado porcentaje a partir de este
punto máximo.
La razón de la selección de los árboles de decisión es que estos algoritmos nos permiten al
mismo tiempo reducir la dimensionalidad la base, eliminar la redundancia en los datos del
conjunto y obtener las reglas que clasifican correctamente a las instancias de la misma. Esto
sucede porque al generarse el árbol de decisión, en cada nodo que se genera, se va evaluando
mediante la entropía la utilidad en la clasificación de cada atributo de la base y si un determinado
atributo no aporta nada valioso a la clasificación, jamás es elegido como nodo. Así, sobreviven
como nodos del árbol solamente aquellos atributos que nos sirven para diferenciar entre las clases
y el árbol en si mismo representa un conjunto de reglas que nos permiten clasificar las instancias
y que pueden implementarse fácilmente en cualquier dispositivo, como podría ser un arreglo de
sensores. Los árboles de decisión ID3 nos sirven para clasificar atributos nominales, mientras que
los árboles de decisión J4.8 nos permiten clasificar atributos numéricos. [72]
La cuantización vectorial fue elegida para convertir nuestro conjunto de datos original de
datos numéricos a datos nominales, lo cual es un requerimiento para ejecutar los algoritmos ID3
y reglas de asociación. La utilización de esta combinación de algoritmos nos permite comparar la
clasificación del conjunto de datos completos contra la del conjunto de datos reducidos para
seleccionar la mejor y también nos permite poder reducir el poder de procesamiento requerido
para su uso en arreglos de sensores. [56]
Por otra parte, las reglas de asociación fueron elegidas para ver las relaciones naturales
entre los atributos que componen los cantos de las aves. El uso de este algoritmo encuentra
asociaciones interesantes y/o relaciones de correlación entre grandes conjuntos de datos. Las
reglas de asociación nos muestran condiciones de valores de atributos cuya frecuencia esta
correlacionada en un conjunto de datos dado. En el trabajo a futuro, con el uso de este algoritmo
podremos encontrar por ejemplo las dependencias restantes entre los atributos reducidos y
podremos eliminarlas para mejorar la eficiencia del algoritmo de Naive-Bayes. [72]
Naive-Bayes, como mencionamos, supone que existe una independencia máxima entre los
atributos a analizar, por lo que hubo que tomar en consideración hacer algunas modificaciones
para procesar nuestros datos dado que se podía deducir que había dependencia entre ellos, la
razón de esto es que gran parte de los atributos a clasificar fueron obtenidos a partir de la FFT, lo
que nos da cierto número de atributos derivados. Además, si un atributo no existe en algún caso,
o tiene un valor de cero, existe la necesidad de compensarlo para que la probabilidad total no se
invalide a causa de un simple parámetro sin valor.
3.4.1 CUANTIZACIÓN
3.4.1 Cuantización
El algoritmo de Cuantización Vectorial fue implementado porque los algoritmos de ID3 y
de reglas de asociación carecen de soporte para atributos numéricos. La cuantización [56] es un
proceso mediante el cual es posible la conversión de datos numéricos a datos nominales.
El proceso de cuantización calcula dos vectores intermedios, a los cuales para este
ejemplo les daremos los nombres de “partition” y “codebook”. El vector “partition” está
ordenado y contiene los valores mínimos y máximos del vector original más valores intermedios
calculados a partir de la suma de un factor de incremento al valor mínimo del vector y así
sucesivamente hasta alcanzar el valor máximo del vector. El factor de incremento es calculado de
la siguiente forma:
max(vector ) ! min(vector )
FactorDeIncremento = (8)
2bits !1 ! 1
El vector “codebook”está también ordenado e incluye valores desde cero hasta 2bits !1 en
incrementos de 1. El tamaño del vector “partition”es un elemento menor que el tamaño del vector
41
“codebook”. Finalmente, tomamos cada valor del vector original y verificamos en que intervalo
del vector “partition”cae y lo mapeamos con el valor correspondiente del vector “codebook”para
esa posición. La forma más fácil de pasar estos valores cuantizados a valores nominales es crear
un conjunto de caracteres equivalentes cada uno a cada valor del vector “codebook”, de forma
que puedan ser directamente mapeados. Para aclarar este concepto, veamos el siguiente ejemplo,
donde se tiene el siguiente “codebook”para una cuantización a 3 bits: [0, 1, 2, 3, 4, 5, 6, 7] y se
mapea directamente con el siguiente vector de caracteres: [‘0’, ‘1’, ‘2’, ‘3’ ‘4’, ‘5’, ‘6’, ‘7’].
Como podemos ver, las “etiquetas” contenidas en el ultimo vector son equivalentes a los valores
en el vector “codebook”. De esta forma, es posible obtener representaciones nominales a partir de
los valores numéricos para cualquier conjunto de cantidades, haciendo posible correr sobre ellas
algoritmos exclusivos para datos nominales, tales como ID3 o reglas de asociación. En este
problema, se selecciónó experimentalmente cuantizar a 3 bits, 8 valores, porque se encontró que
éste es un valor lo suficientemente alto como para permitir la adecuada interpretación de las
reglas obtenidas mediante los árboles de decisión de la minería de datos, mientras que a su vez es
un valor lo suficientemente bajo como para evitar un incremento innecesario en el poder de
procesamiento requerido para obtener dichas reglas.
En la Figura 13 podemos apreciar un gráfico con un ejemplo paso a paso del proceso de
cuantización reseñado para un determinado vector y su vector cuantizado resultante. En la figura
14, podemos apreciar una gráfica comparativa entre un vector completo de una señal de canto ave
con valores de 0 a 5000 aproximadamente contra un vector con esa misma señal cuantizada con
valores de 0 a 6. Se puede apreciar claramente que la relación entre los valores originales de los
atributos es preservada en el conjunto cuantizado, aun cuando se puede apreciar también un poco
de pérdida de información.
Fig. 13 Ejemplo de cuantización sobre cuatro atributos de una muestra de canto [67]
42
3.4.2 ID3
3.4.2 ID3
Una vez que se han convertido los conjuntos de datos completos de las especies a datos
cuantizados, se puede proeder a procesar la información con un algoritmo de árboles de decisión.
“Los algoritmos de árboles de decisión utilizan árboles binarios completos que representan las
comparaciones entre los elementos que son realizadas por un algoritmo particular de
ordenamiento que opera sobre una entrada de un tamaño dado.” [72].
ID3 es un algoritmo de árboles de decisión que toma todos los atributos no utilizados y
cuenta su entropía con respecto a las muestras de prueba a ser utilizadas. La entropía se define
como:
pinst
Donde pi = y la ganancia de información es:
p
El algoritmo calcula la clase y la entropía del atributo y calcula la ganancia del sistema.
Posteriormente, compara las entropías muestra y escoge la que proporcione la máxima ganancia
de información, es decir, la menor entropía para que sea el siguiente nodo central. Cuando el
árbol es completado, los nodos resultantes serán los atributos más significativos utilizados para
clasificar las distintas instancias en sus respectivas especies de aves (las hojas de los árboles).
La complejidad temporal del algoritmo ID3 es O(np) para atributos nominales, donde n es
el número de instancias en el conjunto de entrenamiento y p es el número de atributos
predictivos. Esta complejidad, sumada con la de la cuantización realizada previamente, nos da
una complejidad temporal final de O(2np). En nuestro caso, se utilizaron 17,762 instancias para
el conjunto de prueba, con 71 atributos, lo que indica que ID3 tiene un costo de O(2 x 17,762 x
71) = O(2’522,204). [33]
3.4.3 J4.8
3.4.3 J4.8
El algoritmo J4.8 es una extensión del algoritmo ID3. Resuelve algunas deficiencias que
tiene el algoritmo ID3 original. Algunas de las mejoras consisten en que J4.8 evita el sobre-
entrenamiento, utiliza un enfoque de eliminación de sub-árboles con reducción de errores basado
en la consideración de que cada nodo del árbol es un candidato a ser podado reduciendo de esta
forma el error, poda post-regla para encontrar hipótesis de alta precisión y manejo de atributos
numéricos. Las dos mayores ventajas por las que se seleccionó el uso de este algoritmo son el
ahorro de costo computacional (generado por un árbol más pequeño y por lo tanto un conjunto de
atributos más pequeño) y el manejo nativo de atributos numéricos.
La complejidad temporal del algoritmo J4.8 es O(m n log n), donde m es el número de
atributos y n es el número de instancias de entrenamiento. En nuestro caso, se utilizaron 17,762
instancias para el conjunto de prueba, con 71 atributos, lo que indica que J4.8 tiene un costo de
O(71 x 17,762 x log 17,762) = O(5’359,042). [33, 40]
3.4.4 NAIVE-BAYES
3.4.4 Naive-Bayes
Se decidió introducir el uso del algoritmo de Naive-Bayes como un clasificador final
debido a las desventajas que los árboles de decisión plantean. Una de estas desventajas es que son
inestables, pequeñas variaciones en los datos de entrenamiento pueden resultar en diferentes
selecciones de atributos en cada punto de selección dentro del árbol. El efecto puede ser
significativo dado que las selecciones de atributos afectan a todos los sub-árboles descendientes.
Otra desventaja importante de los árboles de decisión es que los árboles creados a partir de
conjuntos de datos numéricos pueden ser muy complejos ya que las particiones de atributos para
datos numéricos son binarias. Es un método estadístico basado en la regla de Bayes que de
manera simplista (“naive”) asume independencia. La regla de Bayes dice que si se tiene una
hipótesis I y una evidencia E, entonces:
Pr[E | H ]Pr[H ]
Pr[H | E ]= (11)
Pr[E ]
44
Los valores numéricos son manejados por este algoritmo asumiendo que tienen una
distribución de probabilidad normal o Gaussiana:
(x # µ)2
#
f ( x)=
1
e 2! 2 (12)
2"!
La media y la desviación estándar son calculadas para cada clase y cada atributo
numérico.
“Sabemos que es únicamente válido multiplicar probabilidades cuando los eventos son
independientes. La suposición de que los atributos son independientes en la vida real es
ciertamente simplista”. [72]
La confianza es la proporción de ejemplos cubiertos por la premisa (X) que también son
cubiertos por el consecuente (Y), es decir la precisión de la regla. Matemáticamente se representa
de la siguiente forma:
Una red neuronal de una sola capa (perceptrón simple) tiene limitaciones con respecto al
tipo de funciones que puede aprender, solamente puede ser utilizada para aprender funciones
linealmente separables. A partir de la necesidad de aprender funciones no linealmente separables
es que surge la necesidad de tener redes neuronales (de más de una capa). El entrenamiento de las
redes neuronales y sus capas es mucho más complicado que realizar el entrenamiento de una sola
neurona. Este entrenamiento puede ser supervisado, no supervisado o por refuerzo. Para el
presente trabajo, se utilizaron dos tipos de redes neuronales, ambas con entrenamiento
supervisado: Retropropagación del Error y Funciones de Base Radial; ambas se explicarán a
continuación. [56]
La razón por la cual se seleccionó la utilización de las redes neuronales es porque son un
algoritmo clásico de la inteligencia artificial que ha demostrado un desempeño competitivo y que
nos permitiría tener un marco inicial de referencia con que comparar la eficiencia de los distintos
algoritmos propuestos en este trabajo, mismos que se espera tengan un desempeño superior, tanto
por los datos de referencia obtenidos en los trabajos previos como por el hecho de que los
46
algoritmos seleccionados tienen características que los hacen óptimos para solucionar este
problema. Al momento de la elección del algoritmo, se tomó en cuenta que la utilidad de una red
neuronal reside en el hecho de que pueden ser utilizadas para inferir funciones o patrones a partir
de observaciones, lo cual es particularmente útil en problemas como el que se estudia en este
trabajo, donde la complejidad de la información hace que el diseño a mano de dicha función o
patrón sea impráctico. Las redes de Retropropagación del Error se seleccionaron por representar
el algoritmo más básico del aprendizaje supervisado con redes neuronales (sin considerar al
perceptrón simple), y por lo tanto, una buena base de referencia para partir. Las redes de
Funciones de Base Radial se seleccionaron por ser una técnica poderosa de interpolación en
espacios multidimensionales y por su característica de no sufrir de mínimos locales.
Fig. 15 Red Neuronal tipo Retropropagación del Error de tres capas (de entrada, escondida y de salida) [23]
aprendizaje más populares y comúnmente utilizados (desarrollado por Werbos desde 1974). La
popularidad de este algoritmo se debe principalmente a que es capaz de actuar como un
aproximador universal de funciones. Por lo tanto, la utilización de este algoritmo nos da la
ventaja de tener un parámetro de comparación para el resto de los algoritmos a probar, es decir,
es un punto de partida inicial a partir del cual se debe buscar obtener mejores resultados con
respecto a nuestro objetivo. Como medida de error, se utilizó el error cuadrático medio. Posterior
a la obtención de resultados correspondientes a esta combinación, se buscó obtener resultados
mediante el algoritmo de Levenberg-Marquardt [56, 23], el cual se seleccionó por ser el método
más rápido para entrenar matrices de Retropropagación del Error de tamaño moderado. Su
velocidad se debe a que realiza sus operaciones sin tener que calcular la matriz hessiana (ésta se
aproxima mediante la multiplicación de la matriz jacobiana, que contiene las primeras derivadas
del error de la red con respecto a los pesos y umbrales, por su transpuesta).
Dentro del trabajo a futuro se encuentra el explorar las Support Vector Machines o SVM
para este problema, ya que de acuerdo a la literatura, en ocasiones llegan a ser más eficientes que
las RBF para problemas de clasificación [23, 18, 55].
utilizados en reconocimiento automático del habla, síntesis del habla, modelado estadístico del
lenguaje, etiquetado de partes del habla, entendimiento del lenguaje hablado y traducción de
máquinas [13, 15, 21, 25, 26, 34, 41, 57].
Una cadena de Markov modela una clase de procesos aleatorios que incorporan una
cantidad mínima de memoria, es decir, no carecen completamente de memoria. En la cadena de
Markov, cada estado corresponde a un evento determinísticamente observable. Una extensión
natural de las cadenas de Markov introducen un proceso no determinístico que genera símbolos
de observación de salida en cualquier estado dado. De esa manera, la observación es una función
probabilística del estado. Este nuevo modelo es conocido como Modelo Oculto de Markov, que
puede ser visto como un proceso estocástico doblemente incorporado con un proceso estocástico
subyacente (la secuencia de estados) no directamente observable. El proceso subyacente puede
ser solamente probabilísticamente asociado con otro proceso estocástico observable produciendo
la secuencia de características que podemos observar. Un Modelo Oculto de Markov es
básicamente una cadena de Markov donde la observación de salida es una variable aleatoria X
generada de acuerdo a una función probabilística de salida asociada con cada estado. Hablando
formalmente, un Modelo Oculto de Markov se define como:
En este trabajo utilizaremos los algoritmos Viterbi y Baum-Welch, mismos que serán
brevemente explicados a continuación.
( )
V (i ) = " b X
1 i i 1
1! i ! N (19)
B (i ) = 0
t
! (20)
• Paso 2: Inducción
$ '
V ( j ) = Max &V
t (i) a )b X
1 " i " N % t #1 ij ( j t
( ) 2 ! t ! T ;1 ! j ! N (21)
$ '
B ( j ) = Argmax&V ( i) a ) 2 ! t ! T ;1 ! j ! N (22)
t % t #1 ij (
! 1" i " N
• Paso 3: Terminación
!
El mejor resultado = [ ]
Max V (i)
1" i " N t
(23)
s* = Argmax B (i)
[ ] (24)
T T
1 " i "!N
!
51
• Paso 4: Backtracking
"$ * %'
s* = B s t = T ! 1, T ! 2,...,1 (25)
t t + 1# t + 1&
" %
S* = $ s*,s* ...,s* ' es la mejor secuencia [35] (26)
# 1 2 T&
!
La complejidad temporal del algoritmo Viterbi es O(n2t), donde n es el número total de
estados o clases y t es el la longitud de la cadena. En nuestro caso, se utilizaron 3 clases, con
!
longitudes de la cadena variables de entre 2 y 3 segundos, lo que indica que Viterbi tiene un costo
de O(32 x t) = O(9 x t). [35]
^ ! " (i, j )
t =1
t
a ij = T
(28)
!! " (i, j )
t =1 i
t
^
! ! # (i, j )
t" X t = ok i
t
b j (k ) = T
(29)
!! # (i, j )
t =1 i
t
^
• Paso 4: Iteración.- Asignar ! = ! , repetir desde el paso 2 hasta la convergencia.
[35]
52
Cada grabación tiene desde unos segundos hasta varios minutos de llamadas y canciones de
aves, con una, dos o más aves cantando simultáneamente.
Es importante mencionar que estas canciones han sido preprocesadas únicamente a través
de filtros pasa-bajos y pasa-altos, esto para facilitar un adecuado reconocimiento de llamadas y
pulsos. Estos filtros son dependientes de cada especie, como podemos ver en la Tabla 1.
Los Modelos Ocultos de Markov fueron explorados en este análisis para contrastar su
eficacia en el reconocimiento de especies de aves contra la de los enfoques de Minería de Datos y
Redes Neuronales. Para este objetivo, se utilizó el software HTK como una implementación de
prueba de HMM’s. Los HMM’s han sido seleccionados porque representan el enfoque tradicional
utilizado en nuestros días para el reconocimiento de habla humana. Para este propósito, canciones
completas han sido cortadas manualmente (con una duración de entre 2 y 3 segundos) a partir de
las grabaciones de audio hechas en la reserva ecológica de Montes Azules, Chiapas, México. Se
utilizaron 25 muestras de cada una de las especies objeto de este estudio, de las cuales, 15
muestras fueron utilizadas para entrenar los HMM’s y 10 muestras para probar el desempeño del
reconocimiento.
C
d = e x100 (30)
e T
e
tamaño de la ventana y 1ms para coincidencia parcial) se determinó que estos valores
proporcionaron un desempeño ligeramente mejor con respecto a los otros valores
experimentados.
120.00%
95.28% 92.12%
100.00%
90.52%
80.00%
Porcentaje
Correctamente
Clasificados
60.00%
Incorrectamente
Clasificados
40.00%
20.00%
7.88% 9.48%
4.72%
0.00%
Cercomacra Taraba major Thamnophilus
tyrannina doliatus
Especies
Fig. 20 Gráfica de porcentajes de eficiencia para HMM’s sobre el conjunto de prueba (Original en colores)
Encontrar el número óptimo de estados requeridos para modelar las especies fue una tarea
complicada. Es difícil, si no imposible, relacionar este parámetro con alguna propiedad física del
canto de las aves. Se utilizó un valor de 5 estados, ya que mediante ensayos de prueba y error se
encontró que esta es la configuración que proporcionó los mejores resultados en promedio para
todas las pruebas.
57
4.5.1 CUANTIZACIÓN
4.5.1 Cuantización
Para la implementación de este algoritmo se utilizó el paquete de software
Communications Toolbox de Matlab. La entrada de este algoritmo es la base de datos completa
en formato numérico y la salida es una nueva base de datos en formato nominal, cuyos valores
son equivalentes a los de la base de datos numérica de entrada. La Cuantización fue hecha a 3
bits, de forma que se pudieran obtener 8 posibles valores para cada campo: [‘0’, ‘1’, ‘2’, ‘3’ ‘4’,
‘5’, ‘6’, ‘7’].
Para J4.8 se utilizó el paquete de software Weka para probar este algoritmo con los
conjuntos de datos originales. Los atributos sobrevivientes en el conjunto de datos reducido
también fueron utilizados para intentar una clasificación confiable mediante el algoritmo Naive-
Bayes.
Naive-Bayes fue ejecutado en Weka, para el conjunto de datos original, post-ID3 y post-
J4.8. En el caso de los conjuntos post-ID3 y post-J4.8, se intentó eliminar la redundancia
(atributos que representan la misma información pero desde diferentes enfoques) e independencia
(atributos cuya ocurrencia depende de la ocurrencia o no ocurrencia de otro atributo) por medio
de los árboles de decisión (ID3 y J4.8). En esos casos, se utilizaron únicamente los atributos
sobrevivientes en los árboles de decisión para construir el conjunto de datos reducido que se
alimenta a Naive-Bayes, tratando con esto de asegurar en la medida de lo posible que se está
trabajando con atributos independientes y no redundantes para asegurar que el proceso de
aprendizaje está siendo afectado lo menos posible por estos factores y que por lo tanto se está
58
En la Figura 21 podemos ver que el algoritmo de Minería de Datos con mayor eficiencia
para este problema específico es J4.8 (sin Naive-Bayes), obteniendo un 98.39% de eficiencia. Los
resultados de eficiencia que se presentan son basados en el conjunto de prueba. El número de
atributos en el conjunto de datos completo es de 71, mismos que fueron reducidos a solamente 47
mediante este algoritmo. En esta misma figura podemos observar que con respecto a Naive-
Bayes, los conjuntos de datos reducidos producen un desempeño ligeramente mejor que el
conjunto de datos completo, alcanzando hasta un 4.5% de mejora.
120.00%
94.66% 98.39%
100.00%
85.57% 90.13% 88.23%
80.00%
Porcentaje
60.00%
40.00%
14.43% 11.77%
20.00%
5.34% 9.87% 1.61%
0.00%
Naïve-Bayes Quantización Naïve-Bayes J4.8 (base Naïve-Bayes
(base + ID3 (base (Quantizacion completa) (J4.8)
completa) completa) + ID3)
Correctamente Clasificados
Metodologías Incorrectamente Clasificados
Fig. 21 Gráfica de porcentajes de eficiencia para Minería de Datos sobre el conjunto de prueba (Original en
colores)
Aparte de conservar una eficiencia confiable debemos tomar en cuenta que el poder de
procesamiento requerido es directamente afectado por la reducción de atributos, dado que el
número de cálculos requerido para extraer las características de la señal (menos características a
extraer) y clasificar un conjunto de datos (menos datos a clasificar) es menor y por lo tanto
consume menos poder de procesamiento.
En el árbol J4.8, el atributo principal fue la frecuencia dominante del pulso, raíz del árbol.
En el siguiente nivel encontramos el ancho del pico de la frecuencia dominante a la mitad de si
altura dividida por la frecuencia del pico. Un nivel más abajo, tenemos al máximo de la
frecuencia dominante en el pulso, el número total de pulsos en la llamada y la frecuencia
dominante en el último 50% de la amplitud pico. Estos 5 atributos, mismos que J4.8 identificó
como los principales, contrastan con la duración de la canción, el número de frases y el número
de notas, identificados por Nelson [51] y la velocidad, duración, rango de frecuencia y frecuencia
central identificados por Bard [6]. Las razones de estos desacuerdos son probablemente el uso de
59
canciones de distintas especies y distintos algoritmos para la selección de atributos, tales como el
análisis discriminante canónico.
120.00%
99.33% 97.17%
100.00%
89.24%
80.00%
Porcentaje
Correctamente
Clasificados
60.00%
Incorrectamente
Clasificados
40.00%
20.00%
10.76%
0.67% 2.83%
0.00%
Cercomacra Taraba major Thamnophilus
tyrannina doliatus
Especies
Regla A:
PulDur_0=1 y PulseHalfFM=0 y relAmpl_H2=0 PulDur_10=1
Regla B:
PulDur_0=1 PulDur_10=1 y PulseHalfFM=0 y relAmpl_H2=0
Regla C:
PulDur_0=1 y Ener_90-Peak_Beg=1 y relAmpl_H2=0 PulDur_10=1 y PulseHalfFM=0
Regla D:
PulDur_0=1 y PulOn_90=1 y Ener_90-Peak_Beg=1 y PulseHalfFM=0 y relAmpl_H2=0
PulDur_10=1 y PulOn_peak=1
Regla E:
PulDur_0=1 y PulOn_90=1 y PulseHalfFM=0 PulDur_10=1 y PulOn_peak=1
Interpretación:
= 1significa un valor alto
= 0 significa un valor bajo
PulDur_0 = Duración de un pulso en el eje inicial (0%) de una llamada
PulDur_10 = Duración de un pulso al 10% de la llamada
PulseHalfFM = Tiempo en el cual se alcanza la mitad de la modulación de la frecuencia en el
pulso
relAmpl_H2 = Amplitud relativa del segundo armónico
PulOn_90 = Tiempo del inicio de pulso al 90%
Ener_90_Peak_Beg = Energía en el 90% inicial de la llamada (amplitud pico)
PulOn_peak = Tiempo del pulso del inicio al pico (elevación)
Así, traduciendo las reglas conformadas por los atributos de Sound Ruler al español,
tenemos lo siguiente:
Regla A: Si la duración del pulso en el eje inicial (0%) de una llamada es alta y el tiempo en el
cual se alcanza la mitad de la modulación de la frecuencia en el pulso es bajo y la amplitud
relativa del segundo armónico es baja, entonces la duración del pulso al 10% de la llamada es
alta.
Regla B: Si la duración del pulso en el eje inicial (0%) de una llamada es alta, entonces la
duración del pulso al 10% de la llamada es alta y el tiempo en el cual se alcanza la mitad de la
modulación de la frecuencia en el pulso es bajo y la amplitud relativa del segundo armónico es
baja.
Regla C: Si la duración del pulso en el eje inicial (0%) de una llamada es alta y la energía en el
90% inicial de la llamada (amplitud pico) es alta y la amplitud relativa del segundo armónico es
61
baja, entonces la duración del pulso al 10% de la llamada es alta y el tiempo en el cual se alcanza
la mitad de la modulación de la frecuencia en el pulso es bajo.
Regla D: Si la duración de un pulso en el eje inicial (0%) de una llamada es alta y el tiempo del
inicio de pulso al 90% es alto y la energía en el 90% inicial de la llamada (amplitud pico) es alta
y el tiempo en el cual se alcanza la mitad de la modulación de la frecuencia en el pulso es bajo y
la amplitud relativa del segundo armónico es baja, entonces la duración de un pulso al 10% de la
llamada es alta y el tiempo del pulso del inicio al pico (elevación) es alto.
Regla E: Si la duración de un pulso en el eje inicial (0%) de una llamada es alta y el tiempo del
inicio de pulso al 90% es alto y el tiempo en el cual se alcanza la mitad de la modulación de la
frecuencia en el pulso es bajo, entonces la duración de un pulso al 10% de la llamada es alta y el
tiempo del pulso del inicio al pico (elevación) es alto.
Analizando las reglas obtenidas, vemos que en todos los casos hay un valor de “lift”
mayor a 1, lo que nos indica que efectivamente existe una relación de dependencia probabilística
entre X y Y (Cuando el valor de “lift” es 1, se considera que X y Y son probabilísticamente
independientes). Sabemos que “leverage” y “lift” miden cosas similares, excepto que “leverage”
mide la probabilidad de co-ocurrencia de X y Y como las probabilidades independientes de cada
uno, de X y de Y. En otras palabras, “leverage” mide la proporción de casos adicionales cubiertos
por ambos, X y Y, arriba de aquellos esperados si X y Y fueran independientes uno de otro. Como
podemos ver, en las reglas obtenidas hay valores por encima de 0 en todos los casos, lo que nos
indica una vez más que sí hay de dependencia para estas reglas. La convicción es similar al “lift”
pero mide también el efecto de que Y no sea verdad. Como podemos apreciar, todas las reglas
obtenidas tienen un alto valor de convicción, indicando una vez más que hay un alto grado de
relación entre los atributos del antecedente y el consecuente. Todas las reglas obtenidas tienen un
100% de confianza, indicando que Y aparece en todas las instancias que contienen a X, es decir,
que predicen correctamente para todas las instancias para las cuales aplican. También se tiene en
todas las reglas un alto porcentaje de soporte, del 72% al 78%, indicando que la regla aparece en
un alto porcentaje de instancias de la base.
Todas las pruebas de redes neuronales fueron realizadas utilizando el módulo Neural
Network Toolbox de Matlab. La base de datos completa (atributos sin reducir) fue colocada en
una matriz que debido a las limitaciones en el poder de cómputo fue necesario recortar de 17,762
muestras para entrenamiento y 8,882 muestras para prueba (26,644 muestras totales) a un total de
62
300 muestras por especie para el entrenamiento (900 muestras en total para entrenamiento) y 100
muestras por especie para las pruebas (300 muestras en total para las pruebas). Todos los
elementos de las matrices fueron normalizados previamente a su procesamiento mediante la
sumatoria de todos los valores de cada columna y la división de cada elemento de la misma entre
su sumatoria. Posteriormente, se realizó la transposición de matrices para que se encontraran en
la forma en que son requeridas por el Neural Network Toolbox de Matlab.
El primer tipo de redes neuronales utilizado fue el de Retropropagación del Error (función
newff()). La arquitectura de la red consiste en 10 neuronas en la capa oculta y 3 en la capa de
salida. Las tres neuronas de la capa de salida nos sirven para codificar o representar a las tres
especies a clasificar de la siguiente forma: las salidas “0.9 -0.9 -0.9” representan a la especie
Cercomacra tyrannina, las salidas“-0.9 0.9 -0.9” representan a la especie Taraba major y las
salidas “-0.9 -0.9 0.9” representan a la especie Thamnophilus doliatus. Cuando se utilizan
tantas neuronas de salida como clases existen, comúnmente se utiliza el nombre de variables
dummy para denominarlas. Generalmente, cada variable dummy tiene el valor de 0 para todas las
clases excepto para la que corresponde a la categoría correcta, a la que se le da el valor de 1. En
este caso se utilizaron valores cercanos a -1 (-0.9) y 1 (0.9) en lugar de 0 y 1 para las variables
dummy, ya que la derivada de la función de activación tiene un valor de cero tanto para una salida
con valor de 0 como con valor de 1. Cuando la función de activación tiene una forma sigmoidal,
como es nuestro caso, se requerirían pesos infinitos para que las salidas de la red alcancen los
valores de 0 y 1, ya que la función de activación es asintótica para dichos valores.
El tipo de neuronas que se utilizan en ambas capas (oculta y de salida) de la red es tansig.
Una neurona tansig calcula su salida de acuerdo a la siguiente función: [45]
2
n= !1 (31)
1 + e ! 2n
Fig. 24 Gráfica del gradiente de la Red Neuronal de Retropropagación del Error con gradiente descendiente
y momento (Original en colores)
con cambios significativos únicamente entre las 0 y las 2000 épocas. Se puede comprobar la
clasificación obtenida sobre el conjunto de prueba en la figura 25. Las líneas punteadas negras
indican el valor correcto de salida, los puntos rojos las instancias mal clasificadas. Si el punto
rojo se encuentra en 1, 2 o 3, quiere decir que el clasificador confundió una especie con otra (1
para Cercomacra tyrannina, 2 para Taraba major y 3 para Thamnophilus doliatus). Como
podemos apreciar, para la especie Cercomacra tyrannina se clasifico correctamente en el 90% de
las instancias, con el total de los errores de clasificación indicando la especie Thamnophilus
doliatus. La especie Taraba major fue la que mas problemas tuvo, clasificando correctamente
sólo el 8% de las instancias, con errores de clasificación hacia las otras dos especies
aproximadamente por igual. En el caso de la especie Thamnophilus doliatus apreciamos un 94%
de clasificación correcta, con errores indicando a la especie Cercomacra tyrannina. La
clasificación para las especies Cercomacra tyrannina (90%) y Thamnophilus doliatus (94%) es
muy satisfactoria, mientras que la especie Taraba major (8%) tuvo problemas mayores en la
clasificación.
En la grafica, es fácil apreciar los falsos positivos y los falsos negativos, ya que como
podemos ver, las instancias de prueba están organizadas por especie de la siguiente forma:
instancia 1 a 100 → especie Cercomacra tyrannina, instancia 101 a 200 → especie Taraba
major, instancia 201 a 300 → especie Thamnophilus doliatus. De acuerdo a esto, del total de
instancias clasificadas como Cercomacra tyrannina (aquellas con el punto en el valor de y = 1)
solamente aquellas instancias entre 1 y 100 están correctamente clasificadas, mientras que el
resto de ellas (y = 1, instancias entre 201 y 300) son falsos positivos. Por el contrario, los falsos
negativos son aquellas instancias de 1 a 100, donde y es distinta de 1; si y = 2 el falso negativo
indica a la especie Taraba major, mientras que si y = 3, el falso negativo indica a la especie
Thamnophilus doliatus.
65
Fig. 25 Clasificación de Retropropagación del Error con gradiente descendiente y momento (Original en
colores)
El segundo tipo de red neuronal utilizado fue Retropropagación del Error, con los mismos
parámetros de configuración anteriores a excepción de la función de entrenamiento. En esta
prueba utilizaremos trainlm, retropropagación Levenberg-Marquardt. El entrenamiento se detuvo
manualmente en la época 400 por ausencia de cambios significativos en casi 300 épocas y por el
largo tiempo que se requiere para realizar los cálculos; podemos apreciar claramente la ausencia
de cambios por casi 300 épocas en la figura 26. El desempeño alcanzado en este número de
épocas fue un error cuadrático medio de entrenamiento de 0.0274 y de prueba de 1.0393. El
número de instancias correctamente clasificadas podemos verlo en la figura 28; en ella podemos
apreciar que la especie Cercomacra tyrannina tuvo el mayor número de instancias bien
clasificadas, con un 86% de eficiencia, los errores existentes apuntan a la especie Taraba major.
En el caso de la especie Taraba major se tuvo un menor desempeño, con un 79% de eficiencia,
encontrandose instancias mal clasificadas como de las otras dos especies, principalmente como
Cercomacra tyrannina. En el caso de la tercera especie, Thamnophilus doliatus encontramos que
solamente el 30% de las instancias se clasificaron correctamente, encontrándose errores de
clasificación hacia las otras dos especies, en más o menos la misma proporción. A continuación,
el error cuadrático medio por épocas:
66
Fig. 26 Desempeño en la clasificación Retropropagación del Error con Levenberg-Marquardt sobre los
conjuntos de entrenamiento y prueba (Original en colores)
Fig. 27 Gráfica del gradiente de la Red Neuronal de Retropropagación del Error con Levenberg-Marquardt
(Original en colores)
67
Finalmente, la última red neuronal que se probó fue una red Funciones de Base Radial o
RBF (función newpnn). La función newpnn crea una red de dos capas, la primera capa tiene
neuronas radbas, calcula los pesos de las entradas con dist y la entrada de la red con netprod. La
segunda capa tiene neuronas compet, calcula los pesos de las entradas con dotprod y sus entradas
con netsum. Solamente la primera capa tiene umbrales; newpnn inicializa los pesos de la primera
capa a la matriz de entrada transpuesta y los umbrales de la primera capa se colocan todos en
0.8326 dividido entre el valor de expansión, resultando en funciones de base radial que cruzan en
0.5 en entradas con peso de +/- expansión. Los pesos de la segunda capa son inicializados al valor
que devuelve ind2vec de la matriz de salidas de prueba.
Con esta red se obtuvieron los mejores resultados y al menor costo de todas las redes
probadas (tiempo de ejecución). Se utiliza la misma normalización que para las otras redes
neuronales e igualmente la transposición. La extensión se configuró a un valor de 0.001, que
experimentalmente mediante ensayo y error fue el que demostró una mejor eficiencia para ambos
conjuntos, de entrenamiento y de prueba. El error cuadrático medio de entrenamiento fue de cero
(implicando que no hubo errores de clasificación sobre el conjunto de entrenamiento), mientras
que el error cuadrático medio sobre el conjunto de prueba fue de 0.6667.
68
Fig. 29 Clasificación de las Funciónes de Base Radial con extensión de 0.001 (Original en colores)
69
El conjunto de prueba utilizado para verificar la eficiencia de las Redes Neuronales, como
anteriormente se menciona, esta conformado por 100 instancias de cada especie a clasificar,
dando un total de 300 instancias, de 71 atributos cada una. Las primeras 100 instancias
pertenecen a la especie Cercomacra tyrannina, las siguientes 100 pertenecen a la especie Taraba
major, mientras que las últimas 100 pertenecen a la especie Thamnophilus doliatus.
A continuación se presenta una gráfica con el resumen de desempeño para los tres tipos de
redes neuronales utilizados, con eficiencia desglosada por especie y total global:
100.00%
Ret ropropagac ión del error - gradient e
90.00% desc endiet e y moment um
80.00%
70.00%
62.11%
60.00% Ret ropropagac ión del error - Levenberg
Marquardt
50.00%
40.00%
30.00% Func iones de base radial
20.00%
10.00%
0.00% Desempeño Promedio de las Redes
Cercomacra Taraba Major Thamnophilus Promedio Neuronales
Tyrannina Doliatus
Especies
Fig. 30 Eficiencia de las Redes Neuronales por especie y eficiencia global (Original en colores)
Como podemos apreciar, aún cuando las Redes Neuronales son reconocidas como un
algoritmo muy eficiente en general, el desempeño de aquellas variedades seleccionadas en este
trabajo aún no es considerado lo suficientemente confiable como para poder realizar una
clasificación basándose únicamente en ellas.
70
60.00%
50.00%
36.00% 35.00% 42.67%
40.00%
30.00%
14.43%
20.00%
5.34% 9.87% 11.77% 7.36%
10.00%
1.61%
0.00%
HMM
Funciones de
Quantización +
completa)
Naïve-Bayes
J4.8 (base
Retropropagación
Retropropagación
(Quantizacion +
(base completa)
base radial
Naïve-Bayes
descendiete y
Naïve-Bayes
ID3 (base
completa)
(Levenberg-
momentum)
Marquardt)
(J4.8)
(gradiente
del error
del error
ID3)
C orrectam ente C lasificados
A continuación se presenta una gráfica con el tiempo de ejecución de cada uno de los
algoritmos utilizados para clasificación de especies en el presente trabajo. El conjunto de datos
utilizado en cada caso se describe en los métodos utilizados, en la sección anterior (bases
completas o bases reducidas). Los tiempos son presentados en segundos, y en el caso de
algoritmos combinados, se tomo en cuenta el tiempo total tomado por cada uno de los algoritmos
en cuestión, sumándolo para obtener el resultado que se presenta en la gráfica. La maquina en la
que se corrieron dichos algoritmos es una MacBook Pro, con procesador Intel Core Duo a 2GHz,
2GB de DDR2 SDRAM, un bus a 667 MHz y 2MB de caché L2. Al momento de ejecutar los
algoritmos, no tuvo corriendo nada más que el sistema operativo (Mac OS X) y la
implementación del algoritmo a analizar con el fin de garantizar condiciones de igualdad para
todos los algoritmos.
1000
500
0
Retropropagacion
del Error (GD y
238
Momentum)
Retropropagacion
del error (LM)
1240
Funciones de
4
Base Radial
Naive-Bayes
4
(Base Completa)
Quantización +
ID3 (Base
37
Completa)
Alg o r itm o s
Naive-Bayes
T ie m p o T o ta l e n Se g und o s
(Quantizacion +
40
ID3)
J4.8 (Base
44
Completa)
Naive-Bayes
47
(J4.8)
Fig. 32 Tiempo total en segundos de los algoritmos utilizados (Original en colores)
Modelos Ocultos
145
de Markov
71
72
Las redes neuronales, aún a pesar de su edad, son ampliamente reconocidas en la literatura
como un algoritmo muy eficiente, sin embargo, para el problema tratado en el presente trabajo,
las Redes Neuronales de Retropropagación del Error, tanto de gradiente descendiente con
momento como de Levenberg-Marquardt, no obtuvieron un alto grado de eficiencia, además de
tener un costo de entrenamiento elevado con respecto a los demás algoritmos estudiados. En el
caso de las Redes Neuronales Funciones de Base Radial o RBF encontramos una mayor
eficiencia, cercana al 50% a un costo computacional mucho más bajo que el que encontramos en
las otras Redes Neuronales exploradas, sin embargo, su eficiencia aún no es suficiente para
considerarla un método de clasificación confiable.
En el caso del algoritmo Naive-Bayes tenemos una clasificación razonable, del 85.57%,
misma que aunque no puede ser considerada como altamente eficiente, tiene la ventaja de tener
un muy bajo tiempo de entrenamiento, factor que es considerado como un punto a favor en el
caso de que el tiempo de entrenamiento sea una variable importante.
Se pueden mencionar algunas ventajas de la minería de datos sobre HMM’s, que podrían
ser cruciales en la obtención resultados confiables de alta precisión. La primera de estas ventajas
es que los Modelos Ocultos de Markov requieren que se particionen los archivos de sonido y que
se pongan las canciones de aves juntas (sin silencios entre las llamadas) para poder tener
resultados relativamente eficientes, a diferencia de la Minería de Datos, que recibe los archivos
completos con los cantos de las aves y sus respectivos silencios intermedios (con parte del ruido
ambiental que no logró ser filtrado). Distintos archivos de sonido tuvieron que ser cortados y
posteriormente unidos para componer un archivo conteniendo múltiples llamadas secuenciales
especial para los HMM’s. Aunque este procedimiento no es complejo, aumenta el trabajo previo
73
que se requiere para aplicar el algoritmo y limita la capacidad de desempeño para poder aplicar
estos modelos a redes de sensores en vivo, y tomando en cuenta que el objetivo de este proyecto
es en un futuro cercano realizar este análisis en tiempo real, esto representa un problema para su
uso. Los HMM’s fueron extremadamente sensibles al ruido ambiental en las grabaciones durante
la fase de entrenamiento.
Por otra parte, el enfoque de Minería de Datos sufre muy poco por estos inconvenientes.
Las canciones son procesadas completas, sin cortar ni tener que poner las llamadas juntas.
Solamente se requiere aplicar a las grabaciones originales filtros de software pasa-bajos y pasa-
altos para utilizar los algoritmos de minería de datos con mayor eficiencia (además, dichos filtros
son fácilmente implementados en hardware). De esta manera, se eliminó gran parte del sonido
ambiental y el que quedó presente dejo poco margen para errores. Esto es porque se buscaron
ciertos atributos para cada especie que se repitieran constantemente entre las grabaciones y que la
diferenciaran de otras, en lugar de realizar un modelado de los sonidos.
Recordemos que los dos requerimientos principales para este problema son alta eficiencia
en el reconocimiento y bajo costo computacional. Con respecto al segundo requerimiento, un
bajo costo computacional, se encontró que las Redes Neuronales RBF y el algoritmo de Minería
de datos Naive-Bayes son los que tienen el menor costo computacional, seguidos por Naive-
Bayes sobre el conjunto de datos reducido por Cuantización e ID3 y posteriormente J4.8 y Naive-
Bayes sobre la base reducida mediante J4.8. Los algoritmos anteriormente mencionados,
requieren de 4 a 47 segundos para entrenar, un tiempo razonable para una plataforma con
recursos restringidos como lo son los arreglos de sensores, mientras que los Modelos Ocultos de
Markov y las Redes Neuronales de Retropropagación del Error requieren de 145 a 12,040
segundos para realizar el mismo proceso.
Comparando el trabajo de McIlrath [43] con el presente trabajo, podemos confirmar que
las distintas configuraciones de redes neuronales con retropropagación del error no proveen una
solución confiable al problema de la clasificación de especies de aves. La relevancia de la
comparación con dicho trabajo con este reside en que en cada uno se utilizaron distintas especies
de aves, en este trabajo, especies oriundas de México, mientras que en el trabajo de McIlrath [43]
se trabajó con especies oriundas de Canadá. En ningún caso se obtuvo un desempeño confiable
en la clasificación, confirmando que las redes neuronales de retropropagación del error a pesar de
ser un algoritmo muy eficiente para otros problemas no son un algoritmo recomendado para este
caso, además de ser un algoritmo costoso para una plataforma con recursos limitados.
BIBLIOGRAFÍA
Bibliografía
[2] ALONSO, M.; FINN, E.; Física Volumen I: Mecánica. Washington, D.C.: Ed. Addison-
Wesley, 1986. 544 p.
[3] ANDERSON, S.; DAVE, A.; MARGOLIASH, D.; Template-based automatic recognition
of birdsong syllables from continuous recordings. Journal of Acoustical Society of America,
100(2):1209-1219, 1996.
[4] ASHIYA, T.; NAKAGAWA, M; A proposal of a recognition system for the species of
birds receiving bird calls – an application of recognition systems for environmental sound.
IEEE Trans. Fundamentals, E76-AS:1858-1860, 1993
[5] BAI. B.; Document Quality Prediction with Textual Features. iCML-03, December 2003.
[6] BARD, S. et. al., “Vocal Distinctiveness and Response to Conspecific Playback in the
Spotted Antbird, a Neotropical Suboscine”. The Cooper Ornithological Society, The
Condor 104:387-394, 2002.
[7] BAUM, L. E., EGON, J. A.; “An inequiality with applications to statistical estimation for
probabilistic functions of a Markov process and to a model for ecology”. Bull. Amer.
Meteorol. Soc., vol. 73, pp. 360-363, 1967.
[8] BAUM, L. E., PETRIE, T., SOULES, G., WEISS, N.; “A maximization technique
occurring in the statistical analysis of probabilistic functions of Markov chains”. Ann.
Math. Stat., vol. 41, no. 1, pp. 164-171, 1970.
[9] BAUM, L. E., PETRIE, T.; “Statistical interference for probabilistic functions of finite state
Markov chains” Ann. Math. Stat., vol. 37, pp. 1554 – 1563, 1966.
76
[10] BAUM, L. E., SELL, G. R.; “Growth functions for transformations on manifolds”. Pac. J.
Math., vol. 27, no. 2, pp. 211-227, 1968.
[11] BAUM, L. E.; “An inequality and associated maximization technique in statistical
estimation for probabilistic functions of Markov processes”. Inequalities, vol. 3, pp. 1-8,
1972.
[12] BURDEN, R.; FAIRES, J.; Análisis Numérico, Ed. Grupo Editorial Iberoamericana, 1985.
[13] CAMPBELL, J.; "Speaker Recognition: A Tutorial," Proc. of the IEEE, 1437-1462p. 1997.
[14] CATCHPOLE, C.K. and SLATER, P.J.B, Bird Song - Biological themes and variations.
New edition, London: Cambridge University Press, October 30, 2003. 256 p.
[15] CHANG, E., et al.; "Large Vocabulary Mandarin Speech Recognition with Different
Approaches in Modeling Tones," Int. Conf. on Spoken Language Processing, 2000,
Beijing, China.
[16] CLARK, C.; MARLER, P.; BEEMAN, K.; Quantitative analysis of animal vocal
phonology: an application to swamp sparrow sound. Ethology, 76:101-115, 1987.
[17] COLEMAN, J., Introducing Speech and Language Processing (Cambridge Introductions to
Language and Linguistics), 1st Edition, University Press, Cambridge, United Kingdom,
March 2005, 314p.
[20] DI FATTA, G.; Parallel and Distributed Association Rule Mining, Universität Konstanz,
Manuscrito.
[22] ELLIOT, R.; AGGOUN, L.; MOORE, J.; Modelos Ocultos de Markov: Estimation and
Control (Applications of Mathematics). First Edition, Springer, 1995. 280 p.
[24] ESTRIN, D.; Center for Embedded Networked Sensing (CENS), UCLA project,
http://research.cens.ucla.edu/pls/portal/docs/PAGE/CENS/CENS_ABOUT_US/CENS_PR
OPOSAL.PDF, (10 de mayo 2005).
[25] GALITZ, W.O., Handbook of Screen Format Design, 1985, Wellesley, MA, Q. E. D.
Information Sciences Inc.
[26] GAO, J., et al., "A Unified Approach to Statistical Language Modeling for Chinese," Int.
Conf. on Acoustics, Speech and Signal Processing, Istanbul,1703-1706p, 2000.
[28] HAHSLER, M; A comparison of commonly used interest measures for association rules,
http://wwwai.wu-wien.ac.at/~hahsler/research/association_ rules/measures.html, (6 de Julio
de 2006)
[29] HAHYA, H., The Miracle of Talking Birds, Primera Edición, Bookwork, Norwich, UK.,
120p., 1999.
[30] HARMA, A.; Automatic identification of bird species bases on sinusoidal modeling of
syllables. In ICASSP'03, editor Proceedings of the IEEE International Conference on
Acoustics, Speech and Signal Processing, pages 5444-5548. IEEE, 2003.
[33] HILARIO, M., KALOUSIS, A.; Characterizing Learning Models and Algorithms for
Classification, CUI – University of Geneva, Manuscrito, 16 p., Marzo 1999.
[34] HUANG, X., et al., "MIPAD: A Next Generation PDA Prototype," Int. Conf. on Spoken
Language Processing, 2000, Beijing, China.
[35] HUANG, X., et. al., Spoken Language Processing: A Guide to Theory, Algorithm and
System Development, Prentice Hall, 2001, 980p, New Jersey, USA.
[37] KINSLER, L.; FREY, A.; COPPENS, A.; SANDERS, J.; Fundamentos de Acústicas, Ed.
Limusa, 1988.
78
[38] KORGAN, J.A., MARGOLIASH, D., “Automated recognition of bird song elements from
continuous recordings using dynamic time warping and hidden Markov models: A
comparative study”, Journal of the Acoustic Society of America, Vol. 103, No. 4, 2185 –
2196p, April 1998.
[39] KWAN, C, et. at., “Bird Classification Algorithms: Theory and Experimental Results”,
IEEE International Conference on Acoustics, Speech, and Signal Processing, 2004
Proceedings (ICASSP '04), Vol. 5, 289-292p, May 2004.
[41] LAURILA, K., HAAVISTO, P., "Name Dialing - How Useful Is It?," IEEE Int. Conf. on
Acoustics, Speech and Signal Processing, Istanbul 3731-3734p, 2000.
[42] LINDNER, D.K; Introduction to Signals and Systems, Ed. McGraw-Hill Int. Ed., 1999.
[43] MACILRAITH, A.; CARD, H.; Birdsong recognition using backpropagation and
multivariable statistics. IEEE Transactions on Signal Processing, 45(11):2740-2748, 1997.
[44] MAINWARING, A. et al. Wireless Sensor Networks for Habitat Monitoring. Proceedings
of the 1st ACM international workshop on wireless sensor networks and applications,
September 2002
[45] MATLAB, version 7.0.0.19920 (R14), http://www.mathworks.com, por The Mathworks Inc.
(5 de Julio de 2006).
[46] MCILRAITH, A. L., CARD, H, C., “Birdsong Recognition Using Backpropagation and
Multivariable Statistics”, IEEE Transactions on Signal Processing, Vol. 45, No. 11, 2740-
2748, November 1997.
[49] MITRA, S.; Digital Signal Processing: A Computer Based Approach. New York, NY:
Second Edition, McGraw-Hill Irwin. 866 p.
[51] NELSON, D.; “The importance of Invariant and Distinctive Features in Species
Recognition of Bird Song”, The Cooper Ornithological Society, The Condor 91:120-130,
1989.
79
[52] OKANOYA, K.; The Bengalese Finch, A Window on the Behavioral Neurobiology of
Birdsong Syntax, Annals of the New York Academy of Sciences, Volume 1016 Page 724,
June 2004.
[55] REUTER., P.; Point-based modelling and rendering using radial basis functions,
Proceedings of the 1st international conference on Computer graphics and interactive
techniques in Australasia and South East Asia, Melbourne Australia 2003.
[56] RUSELL, S.; NORVIG, P.; Artificial Intelligence: A Modern Approach. Second Edition,
Prentice Hall, Englewood Cliffs, New Yersey, 2003. 1132 p.
[57] SAGISAKA, Y., LEE L.S., "Speech Recognition of Asian Languages" in Proc. IEEE
Automatic Speech Recognition Workshop 1995, Snowbird, UT, 55-57p.
[58] SIBLEY, D. A., The Sibley Guide to Bird Life & Behaviour, First Edition, New York,
National Adubon Society, 2001, 587p.
[59] SOMERVUO, P.; Self-Organizing Maps for Signal and Symbol Sequences. PhD thesis,
Helsinki University of Technology, 2000.
[62] SYRINX-PC, version 2.4o, http://syrinxpc.com/, por John Burt, (8 de Febrero de 2005).
[63] SZEWCZYK, R. et al. Habitat Monitoring with Sensor Networks, Communications of the
ACM, Vol. 47, No. 6, p. 34-40, June 2004.
[64] TAYLOR, C.; Sensor Arrays for Acoustic Monitoring of Bird Behavior and Diversity,
project proposal submitted to National Science Foundation.,
http://www.nsf.gov/awardsearch/showAward.do?AwardNumber=0410438 (10 de mayo
2005)
[66] TRIFA, V. M.; “A framework for bird songs detection, recognition and localization using
acoustic sensor networks” Masters thesis, École Polytechnique Fédérale de Lausanne,
2006.
[67] VILCHES, E.; ESCOBAR, I., VALLEJO, E., TAYLOR, C.; Data Mining Applied to
Acoustic Bird Species Recognition, pp. 400-403, 18th International Conference on Pattern
Recognition (ICPR'06), 2006.
[68] VOGL, T. P., "Accelerating the convergence of the backpropagation method," Biological
Cybernetics, vol. 59, pp. 257-263, 1988.
[71] WILDE, M.; MENON, V.; Bird call recognition using Hidden Markov Models. Technical
report. EECS Department Tulane University, 2003.
[72] WITTEN, I.; FRANK, E.; Data Mining: Practical Machine Learning Tools and
Techniques with Java Implementations. 1st edition, San Francisco, California, Morgan
Kaufmann, October 11, 1999. 416 p.
[73] YOUNG, S., et al., HTK Book 3.2.1. Cambridge University Engineering Department, 2002.
APÉNDICE A
Apéndice A
La descartamos, ya
Al momento del análisis el archivo se que no es relevante
Section Number divide en secciones de tiempo, esta variable conocer la sección
nos indica qué sección estamos analizando. dentro del archivo que
se está analizando.
Posición (tiempo) en la que inicia la Irrelevante para el
Section Start
sección. análisis.
El tiempo que dura la sección. Ésta es Irrelevante para el
Section Duration
predefinida por el usuario. análisis
Es posible que existan
cambios en los
patrones de una
llamada a otra ya sea
entre especies o
El número de llamada que se está
Call Number dentro de la misma
analizando.
especie, por lo que
resulta de interés
saber el número de
llamada del que se
trata.
Se refiere al tiempo en el que la llamada Es probable que este
alcanza su máxima amplitud de onda. tiempo pueda variar
Call Peak Time entre especies. Un
patrón importante a
analizar.
El pulso se refiere a un impulso de sonido
emitido por el ave durante la llamada. El
ave puede tener uno o varios pulsos dentro
Pulse Number de una misma llamada.