|
Grado en Ingeniería Informática |
TRABAJOS FIN DE GRADO curso: 2023-24
Clasificación Automática de Pájaros en Función de su Canto |
Tecnologías Específicas
Computación
Descripcion y Objetivos
El canto de los pájaros es una manifestación biológica que cumple diversas funciones, desde la delimitación territorial hasta la atracción de parejas. Cada especie de pájaro posee un canto distintivo, lo que hace posible identificarla basándose exclusivamente en su sonido. Con la aparición de técnicas modernas de procesamiento de señales y aprendizaje automático, es factible desarrollar sistemas capaces de reconocer y clasificar automáticamente diferentes especies de pájaros basándose en sus cantos. Este tipo de sistemas puede ser muy valioso para la investigación en biodiversidad, la monitorización de ecosistemas y la conservación.
Objetivos:
- Desarrollar un sistema de clasificación automática que permita identificar diferentes especies de pájaros a partir de grabaciones de su canto.
- Seleccionar el conjunto de algoritmos de aprendizaje automático a priori más eficaces para abordar la tarea propuesta, entre ellos las redes neuronales profundas.
- Diseñar distintos pipelines que permitan llevar a cabo un preprocesamiento que limpie y enriquezca los datos disponibles.
- Comparar la eficacia de diferentes algoritmos y sus parametrizaciones (selección de modelos) mediante las medidas apropiadas (accuracy, AUC, f-measure, etc.)
- Diseñar una pequeña aplicación de escritorio que permita ejecutar el sistema desarrollado.
Metodología y Competencias
Metodología:
- Recolección de Datos: Se comenzará por seleccionar los datos para abordar el proyecto. A priori, algunas colecciones de grabaciones disponibles son:
- The British birdsong dataset (https://www.kaggle.com/datasets/rtatman/british-birdsong-dataset)
- The Bird challenge at ICML 2013 (https://www.kaggle.com/c/the-icml-2013-bird-challenge)
- MLSP 2013 Bird Classification Challenge (https://www.kaggle.com/c/mlsp-2013-birds)
- Xeno Canto (https://xeno-canto.org/)
Si bien, se explorarán más fuentes en la etapa inicial del desarrollo del proyecto.
- Preprocesamiento: Las grabaciones serán procesadas para eliminar ruido y normalizar el volumen. Se segmentarán las grabaciones para aislar cantos individuales y se extraerán características relevantes como el espectrograma, tono, frecuencia, duración, entre otras.
- Selección de Modelos: Se experimentará con diferentes algoritmos de aprendizaje automático como redes neuronales convolucionales (CNNs), máquinas de soporte vectorial (SVMs), y ensembles. La elección de estos modelos se basa en su capacidad probada para procesar datos de audio y realizar tareas de clasificación.
- Entrenamiento: Se seleccionará una técnica apropiada de validación y se entrenarán los diferentes modelos seleccionados y se optimizarán sus hiperparámetros.
- Evaluación: Una vez entrenados los modelos, se evaluarán en el conjunto de prueba para determinar su capacidad de clasificación en datos no vistos previamente. Se medirán las métricas estándar (accuracy, AUC y f-measure, entre otras) para cada especie y en general.
- Implementación de la Solución: Con el modelo con mejor desempeño, se desarrollará una herramienta que permita a usuarios cargar grabaciones de cantos de pájaros y obtener una identificación automática de la especie.
Competencias:
Se trabajarán principalmente (en distinto grado) las siguientes competencias específicas de la tecnología de computación:
- Capacidad para evaluar la complejidad computacional de un problema, conocer estrategias algorítmicas que puedan conducir a su resolución y recomendar, desarrollar e implementar aquella que garantice el mejor rendimiento de acuerdo con los requisitos establecidos.
- Capacidad para conocer los fundamentos, paradigmas y técnicas propias de los sistemas inteligentes y analizar, diseñar y construir sistemas, servicios y aplicaciones informáticas que utilicen dichas técnicas en cualquier ámbito de aplicación.
- Capacidad para adquirir, obtener, formalizar y representar el conocimiento humano en una forma computable para la resolución de problemas mediante un sistema informático en cualquier ámbito de aplicación, particularmente los relacionados con aspectos de computación, percepción y actuación en ambientes entornos inteligentes.
- Capacidad para conocer y desarrollar técnicas de aprendizaje computacional y diseñar e implementaraplicaciones y sistemas que las utilicen, incluyendo las dedicadas a extracción automática de información y conocimiento a partir de grandes volúmenes de datos.
Medios a utilizar
Ordenadores personales, compiladores y entornos de programación. Servicios de tarjetas gráficas para el entrenamiento e inferencia de redes neuronales profundas. Todo disponible en la ESIIAB, I3A o mediante servicios en la nube.
Bibliografía
Libros y manuales de inteligencia artificial y aprendizaje automático. Libros y manuales de lenguajes de programación y librerías específicas de aprendizaje automático. Todo disponible en la ESIIAB o internet.
Tutores GAMEZ MARTIN, JOSE ANTONIO ALFARO JIMENEZ, JUAN CARLOS | Alumno SENABRE URREA, JAVIER
|
| |