Así enseñamos a los ordenadores a identificar especies de peces

feature-image

Play all audios:

Loading...

Para planificar estrategias de gestión sostenible de los recursos marinos, es necesario entender su funcionamiento. En el caso de las poblaciones de peces, necesitamos saber, entre otras


variables, su localización, abundancia y fluctuaciones. En la actualidad la adquisición de datos sobre estos recursos se lleva a cabo de diferentes formas. Una de ellas es el análisis de


imágenes submarinas, que suele basarse en la identificación y el conteo manual de las especies en miles de imágenes por parte de personal especializado, lo que implica la inversión de una


enorme cantidad de tiempo y esfuerzo. La automatización del proceso de recogida de datos permitiría la extracción masiva de información con un considerable ahorro de recursos humanos,


permitiendo a los investigadores dedicar más tiempo al análisis de los resultados. Además, el aumento del volumen de datos disponibles propiciaría un análisis más preciso y estadísticamente


relevante. Esta automatización pasa por _enseñar_ a los ordenadores a _ver_ los peces en las imágenes. INTELIGENCIA ARTIFICIAL PARA RECONOCER OBJETOS Cuentan que Marvin Minsky (MIT), uno de


los padres de la inteligencia artificial, propuso en 1966 a uno de sus alumnos un proyecto de verano consistente en conectar un ordenador a una cámara y conseguir que describiera lo que


veía. Ese proyecto, previsto para 3 meses, se ha alargado más de 50 años. Solo en los últimos 8 se han obtenido progresos significativos. Hasta 2012, el hecho de que los ordenadores pudieran


reconocer los objetos presentes en una escena era más ciencia ficción que una posibilidad real. Aunque se habían conseguido algunos progresos, estaban limitados a casos muy particulares


(por ejemplo, el reconocimiento de caras) y para imágenes sencillas. A partir de ese año, con la aparición de técnicas de aprendizaje automático basadas en redes neuronales convolucionales


profundas, la realidad superó a la ficción. Una red neuronal artificial es un algoritmo compuesto por varias etapas interconectadas entre sí y llamadas _neuronas_. Este modelo de conexión se


inspira en la forma en que se relacionan las neuronas del cerebro, de ahí su nombre. Cada neurona artificial implementa una función matemática que combina una serie de operaciones sencillas


(sumas y productos de los valores de entrada por unos factores o _pesos_ asociados a la neurona) y una operación más compleja que se aplica a la señal de salida. En una red neuronal, las


neuronas se organizan formando capas, de manera que las salidas de las neuronas de una capa se utilizan como entrada de las neuronas de la capa siguiente. La concatenación de muchas de estas


capas permite crear funciones muy complejas que relacionan los valores de entrada de la red con el valor (o valores) a la salida. Mediante técnicas de optimización, los _pesos_ de la red se


pueden ajustar (el algoritmo aprende) para obtener a la salida un resultado adaptado a cada entrada. Aunque la base teórica de las redes neuronales se estableció a mediados del siglo


pasado, no fue hasta principios del presente siglo cuando la potencia de computación permitió procesar la gran cantidad de datos necesaria para la resolución de problemas complejos con este


tipo de algoritmos. CÓMO SE ENTRENAN LAS NEURONAS ARTIFICIALES El modelo más habitual de red aplicado al procesamiento de imágenes recibe el nombre de red neural convolucional (o CNN, por


sus siglas en inglés). En este caso, cada neurona de la primera capa de la red está conectada a un pequeño grupo de píxeles de la imagen de entrada. Una de las primeras aplicaciones de las


CNN fue la clasificación de imágenes según su contenido. Dada una imagen de entrada, la red debe decidir, por ejemplo, si se trata de la imagen de una persona, de un coche, etc. Para ajustar


los pesos de la red (_entrenarla_) de manera que se cumpla este objetivo son necesarios los siguientes ingredientes: * Una gran cantidad de imágenes, llamadas de entrenamiento, que


contienen los objetos a reconocer y _etiquetadas_ por un humano (imágenes de personas con la etiqueta “persona”, de coches con la etiqueta “coche”, etc.). * Una red que toma como entrada una


imagen y proporciona a la salida una etiqueta (“persona”, “coche”, etc.). * Una función (función de coste) que compara las etiquetas proporcionadas por la red con las etiquetas asignadas


por el humano y que toma un valor mínimo cuando ambas coinciden. Los _pesos_ de la red se van modificando en el proceso. Si el número de imágenes de entrenamiento y el número de capas de la


red son suficientemente grandes, tras un número suficiente de iteraciones la red es capaz de simular la manera que tienen los humanos de etiquetar las imágenes. En 2012, una CNN _profunda_


(formada por una gran número de capas) llamada AlexNet fue capaz de clasificar 1 000 objetos diferentes con un error muy inferior al de cualquier técnica anterior. Este hecho impulsó


definitivamente la utilización de este tipo de algoritmos en el campo de la visión por computador. Desde 2015, las CNN son capaces de clasificar esos 1 000 objetos con un error inferior al


cometido por los humanos. Basados en los principios enunciados más arriba, redes cada vez más complejas se aplicaron desde 2012 al reconocimiento de objetos en imágenes: la red no solo debía


distinguir un objeto de otro, sino también indicar en qué parte de la imagen se encontraba. El modelo de red más popular en la actualidad para la resolución de este tipo de problemas fue


propuesto en 2018 y recibe el nombre de Mask R-CNN. INTELIGENCIA ARTIFICIAL PARA IDENTIFICAR PECES Mask R-CNN se ha utilizado para detectar multitud de objetos de la vida cotidiana, desde


coches y personas a corbatas, sillas o cepillos de dientes. Nosotros lo empleamos en el proyecto DEEP-ECOMAR con el objetivo de reconocer diferentes especies de peces en imágenes submarinas.


Para conseguirlo, entrenaremos la red con miles de imágenes previamente etiquetadas por expertos en las que aparecen las especies de interés. Una vez entrenada, la red será capaz de


identificar estas especies de manera automática. Una parte importante del proyecto se dedicará al etiquetado manual de las imágenes, para lo que se desarrollarán herramientas de _software_


que permitirán agilizar la tarea. Asimismo, se investigará el efecto de la aplicación de técnicas de mejora del color y el contraste de las imágenes en los resultados del aprendizaje.


Finalmente, se ajustarán los parámetros de la función de coste de la red para obtener resultados óptimos y aplicables a imágenes obtenidas en entornos marinos diferentes al utilizado para el


entrenamiento. El proyecto DEEP-ECOMAR lo realizamos de manera conjunta investigadores del IMEDEA (Instituto Mediterráneo de Estudios Avanzados, CSIC-UIB) y de la Universitat de les Illes


Balears (UIB). Utilizaremos el vídeo submarino y el banco de imágenes del observatorio submarino Sub-Eye, situado en Andratx (Mallorca).