implementación de redes neuronales convolucionadas para la...
TRANSCRIPT
Implementación de redes neuronales convolucionadas para la
clasificación de imágenes de sensores remotos en la Amazonia
Mayra Alejandra Velasquez Ramos
Universidad Distrital Francisco José de Caldas
Especialización en Sistemas de Información Geográfica
Bogotá, D.C, Colombia
2019
Implementación de redes neuronales convolucionadas para la
clasificación de imágenes de sensores remotos en la Amazonia
Mayra Alejandra Velásquez Ramos
Tesis o trabajo de investigación presentada(o) como requisito parcial para optar al título
de:
Especialista en Sistemas de Información Geográfica
Director (a):
Msc. German Cifuentes Contreras
Universidad Distrital “Francisco José de Caldas”
Facultad de Ingeniería
Bogotá, D.C.
2019
Contenido III
Contenido
Pág.
Contenido ....................................................................................................................... III
Lista de figuras ............................................................................................................... IV
Lista de tablas ................................................................................................................. V
Lista de abreviaturas ...................................................................................................... VI
Glosario.......................................................................................................................... VII
Introducción..................................................................................................................... 2
Planteamiento del problema ........................................................................................... 4
Objetivos .......................................................................................................................... 6
1. Estado del Arte ......................................................................................................... 7
2. Marco Conceptual .................................................................................................... 9 2.1 Red neuronal artificial ........................................................................................10
2.1.1 Red neuronal convolucionada ........................................................................ 11
3. Área de estudio ...................................................................................................... 18 3.1 Definición de clases ..........................................................................................19
4. Metodología ............................................................................................................ 25 4.1 Preparación de los datos ...................................................................................26
4.1.1 Pre-procesamiento de las imágenes .............................................................. 26 4.1.2 Selección del conjunto de datos .................................................................... 27
4.2 Modelado ..........................................................................................................29 4.2.1 Técnica de modelado..................................................................................... 29 4.2.2 Arquitectura del modelo ................................................................................. 30 4.2.3 Construcción del modelo ............................................................................... 33
4.3 Evaluación.........................................................................................................36 4.4 Despliegue ........................................................................................................39
Conclusiones y recomendaciones ............................................................................... 44
Bibliografía .................................................................................................................... 46
IV
Lista de figuras
Pág. Figura 2- 1: Estructura de una neurona. .................................................................... 10
Figura 2- 2: Estructura de una red neuronal artificial ................................................. 11
Figura 2- 3: Componentes de una neurona en ANN. ................................................. 13
Figura 2- 4: Formulación matemática función sigmoid. .............................................. 14
Figura 2- 5: Formulación matemática función tangente hiperbólica ........................... 14
Figura 2- 6: Formulación matemática función ReLU. ................................................. 15
Figura 2- 7: Formulación matemática función Sofmax. .............................................. 15
Figura 2- 8: Arquitectura de la CNN........................................................................... 16
Figura 2- 9: Resultado de la capa convolucionada .................................................... 16
Figura 2- 10: Resultado capa max pooling .................................................................. 17
Figura 2- 11: Resultado capa average pooling ............................................................ 17
Figura 3- 1: Localización de la zona de estudio ......................................................... 18
Figura 4- 1: Modelo conceptual de la metodología de estudio ................................... 26
Figura 4- 2: Matrix de correlación conjunto de datos de entrenamiento ..................... 29
Figura 4- 3: Arquitectura Amazon_model. ................................................................. 31
Figura 4- 4: Arquitectura Amazon_model_vgg19 ....................................................... 33
Figura 4- 5: Función de exactitud de los conjuntos de datos de entrenamiento y de
validación para el modelo Amazon_model ...................................................................... 37
Figura 4- 6: Función de exactitud de los conjuntos de datos de entrenamiento y de
validación para el modelo Amazon_model_vgg19 .......................................................... 37
Figura 4- 7: Atributos de las imágenes resultado del procesamiento ......................... 39
Figura 4- 8: Visor geográfico. .................................................................................... 43
Contenido V
Lista de tablas
Pág. Tabla 3- 1: Clases identificadas en el conjunto de datos ..............................................20
Tabla 4- 1: Especificaciones Producto PlanetScope ....................................................27
Tabla 4- 2: Cantidad de clases identificadas ................................................................28
Tabla 4- 3: Exactitud de la clasificación obtenida con diferentes tamaños de muestra 36
Tabla 4- 4: Ejemplo de comparación de los resultados de clasificación de los modelos
38
Tabla 4- 5: Ejemplos de la predicción del modelo ........................................................38
VI
Lista de abreviaturas
Abreviaturas Abreviatura Término
ANN CNN
Red neuronal artificial Red neuronal convolucionada
MLC RF SVM GPU VGG16
Clasificador de máxima verosimilitud Árboles de decisión Máquina de soporte vectorial Unidad de procesamiento gráfico Modelo VGG con 16 pesos
VGG19 Modelo VGG con 19 pesos
Contenido VII
Glosario
Aprendizaje de máquina: subdivisión de la inteligencia artificial basada en los procesos
de aprendizaje biológico, cuyo enfoque va de la mano con el diseño de algoritmos que
aprenden de los datos computacionales. Cubre dominios como la minería de datos, a
partir una colección de algoritmos que proveen herramientas multivariadas, no lineales,
de regresión no paramétrica o de clasificación (Lary, Alavi, Gandomi & Walker, 2016).
Aprendizaje profundo: concepto que deriva del estudio de las redes neuronales
artificiales. Una estructura con múltiples capas que además cuenta con capas
escondidas dentro del sistema es una estructura de aprendizaje profundo. El aprendizaje
profundo puede combinar características de bajo nivel y luego construir características de
atributo de alto nivel más completas capa por capa (Runping, Anqi, Bolun & Jia, 2019).
Aprendizaje supervisado: poderosa herramienta para clasificar y procesar datos
utilizando el lenguaje de máquina. Con el aprendizaje supervisado se usan datos
etiquetados, o conjunto de datos clasificado, para inferir un algoritmo de aprendizaje. El
conjunto de datos se utiliza como base para predecir la clasificación de otros datos no
etiquetados mediante el uso de algoritmos de aprendizaje automático (Mark Ryan
M.Talabis, Robert McPherson, I.Miyamoto, Jason L.Martin & D.Kaye, 2015.).
Árboles de decisión: algoritmo constituido de nodos que permiten evaluar atributos de
los datos, bordes para bifurcar las decisiones de la evaluación de los nodos hasta llegar a
un valor final dentro del esquema jerárquico de decisión. En un árbol de decisión, cada
ruta desde la raíz a una hoja corresponde a una conjunción de atributos de prueba y el
árbol se considera una disyunción de estas conjunciones (Nahla Ben Amor, Salem
Benferhat, ZiedElouedia, 2006).
CORINE Land Cover: El proyecto CORINE (Coordinación de Información sobre el Medio
Ambiente) comienza en 1985 como una iniciativa de varios países de Europa para crear
VIII
una estructura de cobertura del suelo y monitorear áreas de interés ambiental (G.
Büttner, J. Feranec, G. Jaffrain, L. Mari, G. Maucha, & T. Soukup, 2004). En Colombia se
adopta esta metodología con el propósito de realizar el inventario homogéneo de la
cubierta biofísica (cobertura) de la superficie de la tierra a partir de la interpretación visual
de imágenes de satélite asistida por computador y la generación de una base de datos
geográfica.
Datos de entrenamiento: conjunto de datos que se usa para probar el desempeño de
los algoritmos de aprendizaje de máquina, como su nombre lo indica sirve de
entrenamiento para que los algoritmos aprendan un proceso en específico.
Datos de validación: conjunto de datos que se usa para evaluar que tan bien o mal el
algoritmo aprendió un proceso específico.
Máquina de soporte vectorial: algoritmo desarrollado desde la teoría de aprendizaje
estadístico, basado en la construcción de un óptimo espacio lineal que separa un
hiperplano que a su vez separa los patrones de datos, y en la conversión de patrones de
datos no lineales en un formato que se puede separar linealmente en un espacio
multidimensional usando funciones de ventana (Mohsen Edalat, Enayat Jahangiri, Emran
Dastras, Hamid Reza Pourghasemi, 2019).
Minería de datos: principal actividad en el proceso de descubrir de conocimiento en las
bases de datos (KDD) que aplica técnicas computacionales para hallar patrones en la
información (S. Džeroski, 2008).
2
Introducción
El monitoreo de la superficie terrestre a través de sensores remotos ha sido impulsado
por la necesidad de conocer el territorio y, así, tomar decisiones óptimas al momento de
administrar los recursos naturales y gestionar el uso sostenible de las actividades
humanas. Dados los recientes avances en la adquisición y procesamiento de datos
provenientes de sensores remotos en diferentes plataformas con distintas características
en cuanto a resoluciones geométricas, radiométricas, espectrales y temporales, se ha
podido recolectar información de amplias áreas de la superficie terrestre, generando así
grandes volúmenes de información que requieren del análisis en tiempo real para el
máximo aprovechamiento del conocimiento obtenido. Para este proyecto se utilizó los
productos de la plataforma Planet que permite colectar datos de toda la superficie
terrestre, todos los días; cuenta con más de 120 “doves”, 14 “SkySats” y 5 “RapidEye”,
satélites que proveen un conjunto de datos versátil para el análisis geoespacial,
ambiental y de cambio global.
Para soportar la extracción de información de grandes volúmenes de datos, la comunidad
interesada se ha volcado a desarrollar métodos para la clasificación supervisada y no
supervisada de coberturas de la tierra de manera automática. A la par, se han hecho
avances significativos en el desarrollo de algoritmos de aprendizaje profundo como
herramienta para la clasificación de imágenes, principalmente con las técnicas de redes
neuronales convolucionadas.
Una de las ventajas más importantes de usar los algoritmos de aprendizaje profundo en
la clasificación de imágenes de sensores remotos es la identificación de patrones por
medio del reconocimiento de características similares dentro de un contexto, análogo al
aprendizaje de las redes neuronales en el cerebro humano, que a su vez es diferente a
3
los métodos de clasificación convencional que usan la Inspección Óptica Automatizada
(AOI).
La estructura de este proyecto se organizó como sigue: en el capítulo 1 se provee los
aspectos generales, físicos y matemáticos para la construcción de una red neuronal
convolucionada. En el capítulo 2 se describe la selección de muestras que conforman el
área de estudio que está directamente relacionado con la identificación de clases en la
Amazonia. En el capítulo 3 se desarrolla la metodología, que incluye por un lado la
preparación de los datos, la modelación y la evaluación de los algoritmos implementados
como guía para los especialistas en procesamiento digital de imágenes y por otro lado el
despliegue para la visualización y consulta de los resultados a través de un visor
geográfico básico para los usuarios de todas las ramas del saber. En el capítulo 4 se dan
las conclusiones del proyecto con recomendaciones para el desarrollo futuro de esta
investigación.
4
Planteamiento del problema
Muchos de los análisis digitales en las imágenes de sensores remotos están basados
principalmente en el tono y el color de los objetos que contienen, los cuales se
representan como un numero digital en cada píxel de la imagen digital. Con los avances
tecnológicos en la adquisición y procesamiento de los datos provenientes de sensores
remotos la investigación se ha enfocado además en la textura de los objetos en la
imagen y en la información de contexto, que describe la asociación de los valores de
píxel vecinos mejorando los resultados de clasificación (Marceau et al., 1990; Hay and
Niemann, 1994).
La manipulación de grandes volúmenes de datos para la identificación y monitoreo de las
coberturas de la tierra en imágenes de sensores remotos en zonas como la Amazonia,
supone un gran reto para la comunidad científica, ya que la toma de decisiones, en
tiempo real, para la gestión y conservación de esta área natural es de vital importancia a
nivel mundial. La extracción de información de sensores remotos actualmente se está
desarrollando con el uso de una variada gama de métodos de aprendizaje estadístico,
que, con el tiempo, particularmente con las redes neuronales artificiales ha tenido un
crecimiento relevante en el diseño de sistemas para reconocimiento de patrones, que ha
motivado el desarrollo de este proyecto.
El aprendizaje de las redes neuronales artificiales que se basa en la visión computacional
la cual hace más fácil el reconocimiento de objetos por la forma, color, textura y otras
estructuras finas identificables en las imágenes. Además y gracias a la disponibilidad de
5
grandes bases de datos (como por ejemplo imágenes de gran resolución diarias de la
superficie terrestre) en mercados con variados intereses (como por ejemplo la protección
y conservación de zonas de importancia ecosistémica) los diseñadores han podido
construir sistemas de reconocimiento basados en datos reales, que mediante poderosas
técnicas de aprendizaje de máquina, pueden manejar información multi dimensional y
generar intricadas funciones de decisión.
Es así como en este proyecto se utiliza un tipo de red neuronal artificial denominada red
neuronal convolucionada que imita la naturaleza de la corteza visual, la cual
eficientemente reconoce y localiza objetos, y lo hace por submuestras con filtros, que, en
una arquitectura de red jerárquica de avance profundo (red neuronal humana), permite
que los objetos se clasifiquen con gran precisión.
6
Objetivos
Objetivo general
Implementar redes neuronales convolucionadas para la clasificación de imágenes de
sensores remotos en la Amazonia
Objetivos específicos
Identificar el conjunto de datos de entrenamiento y el conjunto de datos de validación.
Comparar el desempeño de los modelos de redes neuronales convolucionadas
utilizados.
Evaluar la exactitud temática de la clasificación del modelo de redes neuronales
convolucionadas seleccionado.
Elaborar un visor geográfico para la visualización de los resultados de la clasificación
7
1. Estado del Arte
El campo de investigación de la visión computacional ha ido creciendo a la par del rápido
desarrollo de los sensores remotos, y en este campo las redes neuronales artificiales son
las que mejor desempeño han tenido en la resolución de problemas de reconocimiento
visual.
Desde la década de los 80 se han propuesto modelos de redes neuronales para el
reconocimiento de patrones visuales, siendo el “neocognitron” (Fukushima, 1980) uno de
ellos. Este modelo basado en la similaridad geométrica de las formas en la imagen
(Gestalt) que no se afecta por la posición de esta en la misma, fue el fundamento para
las redes neuronales convolucionadas (CNN), a partir de su propuesta de estructura
jerárquica de múltiples capas precedidas por una capa de entrada, compuesta por capas
ocultas y terminadas con una capa de salida, se han popularizado modelos de redes
neuronales convolucionadas como VGG16 y VVG19.
Ya enfocándose en la clasificación de coberturas de la tierra, las redes neuronales
convolucionadas inicialmente construían modelos para imágenes de sensores remotos
de alta resolución espacial, baja resolución espectral y temporal, siguiendo las pautas de
los métodos tradicionales de clasificación que se enfocan en las características
geométricas, de textura y de contexto de un pixel y sus alrededores (Castelluccio et al.,
2015; Hu, Huang, Wei, Zhang, & Li, 2015; Nogueira, Penatti, & Santos, 2016; Penatti,
Nogueira, & dos Santos, 2015; Romero et al., 2016; Zhao & Du, 2016). Pero con el
crecimiento del uso de información proveniente de sensores remotos en diferentes
campos del saber se hizo necesaria la implementación de modelos cada vez más
variados y complejos.
De esta manera del material bibliográfico documentado para este proyecto fue de
particular interés el desarrollo de investigaciones para datos de mediana resolución, dada
la forma como se implementó el sistema de clasificación, principalmente de información
8 Implementación de redes neuronales convolucionadas para la clasificación de
imágenes de sensores remotos en la Amazonia
proveniente de imágenes Landsat, en donde al darse cuenta de que clasificadores como
MLC, arboles de decisión y máquinas de soporte vectorial tenían precisiones de
clasificación del 64,9% (Gong et al., 2013), como resultado del procesamiento basado en
el pixel y en la detección de las denominadas “estructuras finas” como por ejemplo casas,
se buscó implementar sistemas de redes neuronales convolucionadas modificadas para
resolver estos inconvenientes. Algunos autores diseñaron CNN basadas en parches de
imágenes, en donde se extrajo ejemplos de un conjunto de pixeles en vez de objetos o
grupo de objetos de la imagen (A. Sharma et al., 2017), obteniendo como resultado
precisiones de clasificación del 85.60%, por encima del 62.34% obtenido con redes
neuronales artificiales convencionales, 61.86% de máquinas de soporte vectorial y
75.22% de árboles de decisión.
Con el mejoramiento en las precisiones de clasificación en imágenes de sensores
remotos de estas investigaciones se extrajeron las siguientes consideraciones que
sirvieron de base para la estructuración del sistema de clasificación implementado en
este documento: primero, el tamaño de los parches de la imagen deben ser capaz de
capturar la correlación espacial local entre un pixel central y sus vecinos, limitándose
cuando se presentan pixeles heterogéneos; segundo, las restricciones al seleccionar el
conjunto de datos de entrenamiento dependen de las clases que se quiere identificar y de
la eliminación o disminución del ruido en los datos; tercero, la arquitectura del modelo
debe considerar la experimentación como medida para evaluar los atributos de las capas
y la profundidad del sistema de forma que se obtenga la mejor precisión en la
clasificación.
De manera que en los capítulos que siguen en este documento se presenta un modelo
de redes neuronales convolucionadas para la clasificación de clases en la Región
Amazónica con sensores remotos que fundamenta su desarrollo en los avances de las
investigaciones ya mencionadas.
9
2. Marco Conceptual
Los métodos de clasificación han ido evolucionando en el tiempo, desde los métodos
convencionales como el clasificador de máxima verosimilitud (MLC) (Strahler,1980) y
agrupación (Clustering) (Huang, 2002); siguiendo con técnicas más avanzadas como
árboles de decisión (Xu,Watanachaturaporn, Varshney, & Arora, 2005), y sus desarrollos
como “random forests (RF)” (Pal, 2005), las redes neuronales artificiales (ANN)
(Kavzoglu & Mather, 2003; Mas & Flores, 2008), las máquinas de soporte vectorial (SVM)
(Gidudu,Hulley,&Marwala,2007; Mountrakis, Im, & Ogole, 2011; Pal & Mather, 2005)
hasta más recientemente las redes neuronales convolucionadas (CNN) como parte del
aprendizaje profundo (Castelluccio,Poggi, Sansone, & Verdoliva, 2015; Romero, Gatta, &
Camps-Valls, 2016).
La ventaja de usar el aprendizaje profundo, al igual que lo hacen los seres humanos, es
relacionar imágenes dentro de un contexto soportado en un número significativo de
ejemplos para luego definir, con cierto grado de exactitud, qué elemento es el que está
representado en la imagen, en lugar de la habitual representación de esa misma imagen
por medio de la vectorización de los píxeles. La tarea, entonces, del aprendizaje profundo
consiste en tratar de responder a preguntas como por ejemplo si el elemento de una
imagen es una vía o una tala selectiva.
De esta manera arquitecturas como las redes neuronales convolucionadas han
demostrado significativos mejoramientos en campos como la clasificación a través de la
visión computacional (He, Zhang, Ren, & Sun, 2015; Krizhevsky, Sutskever, & Hinton,
2012; Sermanet et al., 2013; Socher, Lin, Manning, & Ng, 2011) y el procesamiento a
partir de lenguaje natural (Collobert & Weston, 2008; Hinton et al., 2012; Socher et al.,
2011).
10 Implementación de redes neuronales convolucionadas para la clasificación de
imágenes de sensores remotos en la Amazonia
A continuación se presenta, de manera general, la forma como se construye y se
alimenta la estructura de los modelos de redes neuronales artificiales y principalmente la
red neuronal convolucionada.
2.1 Red neuronal artificial
Una red neuronal artificial convencional está inspirada por la forma en que funcionan y
procesan los datos las neuronas y las redes neuronales en el cerebro.
Como se ilustra en Figura 2- 1 las neuronas están básicamente conformadas por el
cuerpo principal denominado Soma que contiene el núcleo, una gran red de brazos que
salen del soma llamados dentritos y un brazo largo que sale del soma en dirección
opuesta, denominado axon, que es la terminal de sinapsis. En su funcionamiento, los
dentritos reciben la información de la terminal de sinapsis de otras neuronas y llevan los
impulsos al soma, en cuyo núcleo se procesan y combinan estos impulsos eléctricos y
cuya salida se convierte en la entrada de miles de otras neuronas.
Figura 2- 1: Estructura de una neurona.
Fuente: https://courses.edx.org/courses/course-v1:IBM+DL0101EN+3T2018/course/
Esta estructura se transformó en la base de la arquitectura de las redes neuronales
artificiales (ANN), en donde la red de neuronas se divide en tres capas que, en un
esquema general está compuesta por: una capa de entrada (input layer), que alimenta la
estructura; una capa de salida (output layer), que es el resultado del procesamiento; y un
11
conjunto de capas ocultas (hidden layers), que llevan a cabo los procesamientos y se
encuentran entre las capas ya mencionadas (Figura 2- 2).
Figura 2- 2: Estructura de una red neuronal artificial
Fuente: https://courses.edx.org/courses/course-v1:IBM+DL0101EN+3T2018/course/
La estructura de las ANN se puede dividir, según el número de capas, en redes
monocapa (compuesta por una única capa de neuronas) y redes multicapa (donde las
neuronas se organizan en varias capas); y, según el flujo de datos, en redes
unidireccionales y redes recurrentes. En este proyecto se utilizaron las redes multicapa
unidireccionales como se muestra a continuación.
2.1.1 Red neuronal convolucionada
Los fundamentos de las redes neuronales convolucionales se basan en el
“Neocognitron”, introducido por Kunihiko Fukushima en 1980, una red neuronal artificial
multicapa jerárquica que se ha utilizado para reconocimiento de caracteres escritos a
mano y otras tareas relacionadas con la detección de patrones1. Más tarde fue mejorado
por Yann LeCun (LeCun, 1998) al introducir un método de aprendizaje basado en
propagación hacia atrás para poder entrenar el sistema correctamente. En el año 2012,
1 Neocognitron [online], disponible en: https://en.wikipedia.org/wiki/Neocognitron
12 Implementación de redes neuronales convolucionadas para la clasificación de
imágenes de sensores remotos en la Amazonia
fueron refinadas por Dan Ciresan y otros, siendo implementadas para una unidad de
procesamiento gráfico (GPU) consiguiendo así resultados destacables (Ciresan, 2011).
En la literatura sobre CNN, aplicada a la clasificación de datos provenientes de sensores
remoto, se mencionan tres formas de emplearlas:
▪ Para extraer solo información espectral. Normalmente este método asume que cada
píxel es etiquetado con una sola clase o cobertura (Fisher, 1997).
▪ Para extraer solo información espacial. Este método considera los píxeles vecinos
con el fin de extraer la representación espacial de la característica (Zhang et al.,
2016a).
▪ Para extraer información espectral y espacial. Este método puede mejorar
significativamente la exactitud de la clasificación al usar una unión de los métodos
anteriores o utilizar una arquitectura que tome ventaja de las bandas que forman la
imagen.
Ya que en este proyecto es de especial interés el uso de CNN para extraer información
espectral y espacial de la imagen, se consideraron tres tópicos en su implementación:
propagación hacia adelante, propagación hacia atrás y función de activación:
Propagación hacia adelante: como su nombre lo indica, consiste en pasar información
de la capa de entrada hacia la capa de salida.
En la Figura 2- 3 se muestra los componentes que intervienen en una neurona de la red
neuronal artificial, donde 𝑋1 y 𝑋2 son las entradas, que pasan por las conexiones, y cuyos
valores se ajustan dependiendo de los pesos de la conexión 𝑊1 y 𝑊2, hasta llegar al
núcleo, donde la neurona procesa esta información sumando las entradas ajustadas y
adicionando una constante denominada bias, denotada por 𝑏1. Finalmente, mediante una
función lineal o no lineal de activación se da información estimada o predicha 𝑎 = 𝑓(𝑧).
13
Figura 2- 3: Componentes de una neurona en ANN.
Fuente: https://courses.edx.org/courses/course-v1:IBM+DL0101EN+3T2018/course/
Propagación hacia atrás: consiste en propagar el error entre la verdad de los datos (T)
y el resultado estimado del modelo (a) hacia tras en la red, con el fin de actualizar y
optimizar cada peso y bias.
Función de activación: juega un papel fundamental en el proceso de aprendizaje de la
red neuronal, pues calcula el estado de actividad de una neurona (activa o inactiva),
modificando o imponiendo un valor límite que debe sobrepasar el resultado de una
neurona antes de propagarse a otra neurona. Existen siete clases de funciones de
activación:
▪ Binaria
▪ Lineal
▪ Logaritmica o Sigmoid
▪ Tangente hiperbólica
▪ ReLU
▪ Leaky ReLU
▪ Sofmax
Las más utilizadas en la literatura son las funciones sigmoid, tangente hiperbólica, ReLU
y Sofmax.
14 Implementación de redes neuronales convolucionadas para la clasificación de
imágenes de sensores remotos en la Amazonia
Función Sigmoid: uno de los problemas de esta función es que después de los +3 y -3
se vuelve muy plana, por ende, los gradientes se vuelven muy pequeños, tendiendo a
cero, haciendo que la red no aprenda (Figura 2- 4).
Figura 2- 4: Formulación matemática función sigmoid.
Fuente: https://courses.edx.org/courses/course-v1:IBM+DL0101EN+3T2018/course/
Función tangente hiperbólica: es una versión escalada de la función sigmoid, que
supera el problema de simetría de esta función, siendo simétrica al origen en un rango de
+1 y -1, pero sigue teniendo el problema del gradiente en redes neuronales profundas
(Figura 2- 5).
Figura 2- 5: Formulación matemática función tangente hiperbólica
Fuente: https://courses.edx.org/courses/course-v1:IBM+DL0101EN+3T2018/course/
Función ReLU: es la función que más uso tiene actualmente para diseñar redes
neuronales. Además de ser no lineal, tiene la ventaja de que no activa todas las
15
neuronas al mismo tiempo. Como se ve en la Figura 2- 6, para entradas con valores
negativos, el resultado es cero, por lo que solo unas neuronas serán activadas, haciendo
a la red más eficiente. Se usa solo en las capas ocultas.
Figura 2- 6: Formulación matemática función ReLU.
Fuente: https://courses.edx.org/courses/course-v1:IBM+DL0101EN+3T2018/course/
Función softmax: es un tipo de función sigmoid que es práctica cuando se manejan
problemas de clasificación al obtener las probabilidades que cada clase tiene por cada
entrada (Figura 2- 7). Por lo general solo se usa en la capa anterior de la capa de salida.
Figura 2- 7: Formulación matemática función Sofmax.
𝑎𝑖 =𝑒𝑧𝑖
∑ 𝑒𝑧𝑘𝑚𝑘=1
Fuente: https://courses.edx.org/courses/course-v1:IBM+DL0101EN+3T2018/course/
La arquitectura de la red neuronal convolucionada consiste en una serie de capas,
convolucional y pooling, donde la red neuronal hace su aprendizaje; y un número de
capas completamente conectadas donde se realiza la clasificación de la información
como se muestra en la Figura 2- 8.
16 Implementación de redes neuronales convolucionadas para la clasificación de
imágenes de sensores remotos en la Amazonia
Figura 2- 8: Arquitectura de la CNN
Fuente: https://la.mathworks.com/solutions/deep-learning/convolutional-neural-
network.html
La configuración capa de entrada, a diferencia de las redes convencionales (donde esta
capa es n), es n×m×1 para imágenes en escala de grises, y n×m×3 para imágenes a
color.
La capa convolucionada se compone de filtros o kernels que se aplican a cada banda
de la imagen, devolviendo un mapa generalizado de las características de la imagen
original, que logra reducir el tamaño de los parámetros (Figura 2- 9).
Figura 2- 9: Resultado de la capa convolucionada
Fuente: https://courses.edx.org/courses/course-v1:IBM+DL0101EN+3T2018/course/
La capa pooling tiene como objetivo reducir las dimensiones espaciales de los datos a
través de la propagación de la red, de manera que la extracción de información para el
aprendizaje de la red sea más eficiente. Esta capa se divide en dos tipos:
17
▪ Max Pooling: donde el filtro solo selecciona el valor más alto de los pixeles (
▪ Figura 2- 10)
Figura 2- 10: Resultado capa max pooling
Fuente: https://courses.edx.org/courses/course-v1:IBM+DL0101EN+3T2018/course/
▪ Average Poolin: donde el filtro solo selecciona el promedio de los píxeles (
▪ Figura 2- 11)
Figura 2- 11: Resultado capa average pooling
Fuente: https://courses.edx.org/courses/course-v1:IBM+DL0101EN+3T2018/course/
La capa completamente conectada hace la transformación de la salida de la última
capa (convolucionada, poolling) y conecta cada nodo de esta capa con cada otro nodo de
la siguiente capa, que por lo general es la que realiza la clasificación.
18 Implementación de redes neuronales convolucionadas para la clasificación de
imágenes de sensores remotos en la Amazonia
3. Área de estudio
El área de estudio corresponde a 64 zonas distribuidas aleatoriamente en la región
conocida como Panamazonia, vasta región que comprende la selva tropical de la cuenca
del río Amazonas, cuya extensión es de aproximadamente 7 millones de kilómetros
cuadrados, repartidos en los países de Brasil, Perú, Uruguay, Colombia, Venezuela,
Guyana Francesa, Surinam, Guyana, Bolivia y Ecuador, y que se simbolizan en color
verde en la Figura 3- 1, con un área de 34.900,5743 hectáreas.
Figura 3- 1: Localización de la zona de estudio
19
Fuente: Propia
Como parte de la metodología desarrollada en este documento en la sección 4.1 de
preparación de datos se describen las consideraciones que se tuvieron en cuenta para la
definición de las 64 muestras que conformaron el área de estudio.
3.1 Definición de clases
La definición de las clases obedece a la clasificación visual desarrollada por el equipo
interdisciplinario de la plataforma Crowd Flower (https://www.figure-eight.com/), que
consistió en seleccionar 16 clases que representan la Panamazonia según el
conocimiento de expertos e identificarlas en las imágenes que constituyen el conjunto de
datos de este proyecto (Tabla 3- 1).
Es importante mencionar que esta clasificación visual fue verificada en su totalidad para
este proyecto y como ya se mencionó al ser del interés la detección de las clases
representativas de la región de la amazonia, algunas de las cuales no se encuentran
identificadas en la metodología CORINE Land Cover, se decidió usar los criterios
basados en el conocimiento del equipo Crow Flower.
En la Tabla 3- 1 se etiqueta, se da un ejemplo y se describe cada una de las 16 clases
identificadas en el conjunto de datos, las cuales se dividen en dos grandes grupos: las
clases referidas a las condiciones climáticas y las clases referidas a las coberturas de la
tierra.
20 Implementación de redes neuronales convolucionadas para la clasificación de
imágenes de sensores remotos en la Amazonia
Tabla 3- 1: Clases identificadas en el conjunto de datos
Numero Nombre
clase
(Crowd
Flower)
Ejemplo de la clase Descripción
1 Neblina
Son las condiciones climáticas
2 Parcialmente
nubes
3 Nubes
4 Bosque
primario
Bosque virgen, Bosque húmedo
primario aun no derrumbado. Puede
haber sido derrumbado anteriormente
por indios, pero no existen señales
fácilmente observables en la apariencia
superficial de la vegetación (aunque los
perfiles del suelo frecuentemente
contengan carbón) (Acosta, 2008).
21
Numero Nombre
clase
(Crowd
Flower)
Ejemplo de la clase Descripción
5 Floración
Fenómeno natural que ocurre cuando
al mismo tiempo florecen especies
particulares de árboles en flor, frutas,
para maximizar las posibilidades de
polinización.
6 Habitacional
Incluye desde densos centros urbanos
hasta pueblos rurales a lo largo de las
orillas de los ríos.
7 Agricultura
Se refiere a la agricultura comercial,
siendo cualquier tierra despejada de
árboles que se usa para cultivos o
pastos.
8 Cultivo
Subgrupo de agricultura que ocurre en
áreas rurales donde los individuos o
familias mantienen agricultura de
subsistencia.
22 Implementación de redes neuronales convolucionadas para la clasificación de
imágenes de sensores remotos en la Amazonia
Numero Nombre
clase
(Crowd
Flower)
Ejemplo de la clase Descripción
9 Tala y quema
Práctica que se usa para despejar
terreno destinado a la agricultura.
10 Derrumbe
viento
Son eventos que ocurren cuando el aire
frio y seco de los Andes se asienta
sobre el aire cálido y húmedo en la
selva, derribando arboles con los
vientos fuertes y a alta velocidad, más
de 100MPH, dejando zonas abiertas.
11 Explotación
forestal
selectiva
Practica de tala de especies arbóreas
de alto valor como la teca y la caoba.
12 Suelo
desnudo
Término utilizado para las áreas
naturales libres de árboles.
23
Numero Nombre
clase
(Crowd
Flower)
Ejemplo de la clase Descripción
13 Minería
artesanal
Término utilizado para operaciones de
minería a pequeña escala, en su
mayoría ilegal, la búsqueda de oro,
material que se encuentra en suelos
profundos y arcillosos, deja coberturas
de suelo desnudo que necesita siglos
para recuperarse.
14 Minería
convencional
Término utilizado para clasificar
operaciones mineras legales a gran
escala, que se encuentran en la cuenca
del Amazonas, y cuyo número crece
gradualmente.
15 Vía
Infraestructura vital para el transporte
en la Amazonia, que causa el
denominado “espina de pez” en donde
las vías cortas que siguen a la
construcción de nuevas carreteras se
utilizan para operaciones de tala
selectiva
16 Agua
Incluye ríos, embalses y lagos
Fuente: Propia
Como resultado de la definición de clases a manera de ejemplo en la Figura 3- 12 se
muestra la clasificación de una imagen según los criterios ya mencionados.
24 Implementación de redes neuronales convolucionadas para la clasificación de
imágenes de sensores remotos en la Amazonia
Figura 3- 2: Ejemplo de etiquetado de las imágenes
Imagen Clase
agricultura cultivo zona_urbana
bosque_primario via
25
4. Metodología
Para orientar el desarrollo metodológico de este proyecto se utilizó la metodología
CRISP-DM (Cross Industry Standard process for Data Mining), diseñada para proyectos
de minería de datos, estructurada en seis fases: comprensión del negocio, comprensión
de los datos, preparación de los datos, modelado, evaluación, despliegue. Cada fase de
esta metodología tiene procesos que para este proyecto fueron adaptados con el fin de
optimizar los resultados como se muestra en la Figura 4- 1.
26 Identificación y clasificación de motores de cambio en la amazonia usando
técnicas de aprendizaje de maquina e imágenes PlanetScope
Figura 4- 1: Modelo conceptual de la metodología de estudio
Fuente: Propia
4.1 Preparación de los datos
El objetivo de la preparación de los datos es obtener la vista minable o conjunto de datos
a procesar.
4.1.1 Pre-procesamiento de las imágenes
Las imágenes hacen parte de un repositorio dispuesto por Planet en la ruta
https://www.kaggle.com/c/planet-understanding-the-amazon-from-space/data, que
corresponde a productos de la plataforma PlanetScope en el nivel 3B de procesamiento
27
denominados “Analytic Ortho Scene”, los cuales son imágenes con corrección
geométrica (ortorrectificadas, con proyección cartográfica), y corrección radiométrica
(radiancia a nivel de la atmosfera), y por tanto no es necesario realizar pre-
procesamiento a estas imágenes. En la Tabla 4- 1 se describen los atributos de estos
datos.
Tabla 4- 1: Especificaciones Producto PlanetScope
Atributo Descripción
Bandas PSScene4band: rojo, verde, azul e
infrarrojo cercano
GSD 3.7 m (referido a la altitud 475 Km)
Tamaño del pixel
ortorectificado
3 m
Profundidad Bit DN: 12-Bit; Radiancia: 16-Bit
Precisión posicional Menor a 10m RMSE
Fuente: https://www.planet.com/docs/spec-sheets/sat-imagery/
Es importante aclarar que el etiquetado de las imágenes se realizó como se indica en la
sección 3.1.
4.1.2 Selección del conjunto de datos
El conjunto de datos fue colectado entre el 1 de enero de 2017 y el 1 de febrero de 2017,
está conformado por 81.148 imágenes, en formato .TIF, con un tamaño de 256x256 píxel
y una profundidad de píxel de 16 Bit. El tamaño de la imagen no corresponde con
ninguna especificación técnica, sino con la necesidad de que se pudieran visualizar lo
mejor posible las coberturas de la tierra. Cada imagen cubre un área aproximada de
89,7187 hectáreas.
Del universo de datos inicialmente se definió aleatoriamente un subconjunto de datos
compuesto por 12.147 imágenes para el conjunto de entrenamiento y 3.259 imágenes
para el conjunto de validación, siguiendo el criterio de 80 – 20 para la división de la
cantidad de ejemplos por cada conjunto de datos. Las clases en este conjunto de datos
se distribuyeron como se muestra en la Tabla 4- 2, donde clases como minería
28 Identificación y clasificación de motores de cambio en la amazonia usando
técnicas de aprendizaje de maquina e imágenes PlanetScope
convencional o artesanal, derrumbes por vientos, tala y quema, explotación forestal
selectiva y suelo desnudo, tienen una baja representación.
Tabla 4- 2: Cantidad de clases identificadas
Clases Numero de ejemplos
derrumbe_viento 20
mineria_convencional 83
tala_quema 168
floracion 47
neblina 675
mineria_artesanal 256
explotacion_selectiva 263
suelo_desnudo 328
zona_urbanizada 2776
cultivo 3571
parcialmente_nubes 2247
agua 3266
via 6190
agricultura 9486
bosque_primario 12146
Fuente: Propia
Cabe mencionar que, dadas las insuficiencias en la capacidad computacional, debidas al
uso de un equipo personal con las siguientes características: Fabricante: Hacer ; Modelo:
Aspire F5-573G; Procesador: Intel® Core™ i5-7200U CPU @ 2.50GHz 2.70 GHz; Tipo
de sistema: Sistema operativo de 64 bits, procesador x64, el número de imágenes a
procesar se redujo a 389 para el conjunto de entrenamiento y 80 para el conjunto de
validación. Además del criterio para la selección de la cantidad de ejemplos ya
mencionado (80 – 20), se tuvo en cuenta las clases de interés (minería convencional, tala
quema, minería artesanal, explotación selectiva, zona urbanizada, cultivo, vía,
agricultura), entendiéndose estas como aquellas clases que de una u otra manera
generan cambios en las coberturas naturales. Es así, como se muestra en la Tabla 4- 2
29
la clase de minería convencional tiene un total de 83 ejemplos, siendo esta cantidad la
menor del conjunto de datos, al tomar este valor como referencia se procedió a
seleccionar una misma cantidad de ejemplos para las demás clases de manera que se
minimizaran las probabilidades de sobreestimación, generando así un conjunto lo
suficientemente nivelado y variado.
Para el conjunto de datos de entrenamiento compuesto por 389 ejemplos el nivel de
correlación entre las diferentes clases se observa en la Figura 4- 2, donde se observa
que el bosque primario se ve afectado principalmente por la agricultura, las vías, los
cultivos y zonas urbanas.
Figura 4- 2: Matrix de correlación conjunto de datos de entrenamiento
Fuente: Propia
4.2 Modelado
4.2.1 Técnica de modelado
Para el procesamiento estadístico y de modelamiento se utilizó un entorno virtual de
trabajo que se manipula a través de jupyter, una aplicación web de código abierto que
permite crear y compartir documentos que soporta más de 40 lenguajes de programación
incluido Python. Con más de 1000 paquetes de desarrollo y administración de datos,
30 Identificación y clasificación de motores de cambio en la amazonia usando
técnicas de aprendizaje de maquina e imágenes PlanetScope
tiene acceso a librerías como Keras, Tensorflow y PyTorch, ampliamente utilizadas en
aprendizaje de máquina para el procesamiento de grandes volúmenes de datos,
predicciones y ciencia de la computación.
Para este proyecto se hizo uso de Keras, la más sencilla de entre estas librerías, siendo
un API de nivel alto para construir modelos de aprendizaje profundo, también soportada
por Google. Comparada con los otros marcos de aprendizaje profundo disponibles, ha
demostrado un buen desempeño al priorizar la experiencia del desarrollador, al reducir el
número de acciones requeridas para su uso y aprendizaje; en el año 2018 demostró una
amplia adopción en la industria y en la comunidad de investigación (Deep learning
frameworks ranking computed by Jeff Hale, based on 11 data sources across 7
categories); los modelos desarrollados con keras se pueden implementar fácilmente en
una mayor variedad de plataformas (iOS, Android, Google Cloud, JVM, Navegador, etc)
que en cualquier otro marco; es compatible con múltiples motores back-end que permite
el manejo de problemas de manera modular, y que no reduce el trabajo en un solo
ecosistema; cuenta con un sólido soporte multi-GPU y de entrenamiento distribuido; se
encuentra respaldado por empresas clave en el aprendizaje profundo como Google,
Microsoft, nvidia, aws.
4.2.2 Arquitectura del modelo
Se exploraron modelos disponibles para la clasificación de imágenes en Keras como:
VGG16 y VGG19, probados en repositorios como ImageNet, un conjunto de datos
compuesto por más de 1.000 imágenes por cada una de las cerca de 100.000 clases que
contiene. De estos modelos se seleccionó VGG19 que para este proyecto se denominó
Amazon_model_vgg19.
Con fines comparativos se construyó un modelo basado en los resultados recogidos en el
estado del arte de este documento (Sharma et al., 2017; Paoletti et al., 2018) y se
denominó Amazon_model.
En la Figura 4- 3 se ilustra de manera general la arquitectura del modelo Amazon_model.
Con un conjunto de imágenes de entrada de 256 X 256 X 3, la red se conforma de 8
31
capas convolucionadas que utilizan la función ReLU como función no lineal de activación,
4 capas maxpool, y 2 capas completamente conectadas que también utilizan la función
ReLU.
Figura 4- 3: Arquitectura Amazon_model.
Fuente: Propia
En este modelo, la capa convolucional 0 toma los datos de la capa de entrada y le realiza
32 filtros de tamaño 3 x 3. Todas las siguientes capas toman la salida de las capas
previas como entrada. El número de filtros de las capas convolucionadas aumenta a
medida que se profundiza en la red, de 32 pasa a 64, después a 128 y por último a 256.
El tamaño de los filtros es el mismo para todas las capas, es decir, de 3 x 3.
32 Identificación y clasificación de motores de cambio en la amazonia usando
técnicas de aprendizaje de maquina e imágenes PlanetScope
Por su parte al modelo VGG19 se le quitaron de su estructura (Simonyan & Zisserman,
2014), dos capas completamente conectadas de 4096 neuronas, cada una, y se le
añadió una capa softmax para su clasificación.
La arquitectura del modelo Amazon_model_vgg19 se desglosa en la Figura4- 4. Como se
observa este modelo está compuesto por 16 capas convolucionadas construidas con
filtros que aumentan de cantidad a medida que se profundiza en la red (64, 128, 256,
512) de tamaño de 3 x 3; 5 capas maxpool con tamaño de filtro de 2 x 2; 1 capa
completamente conectada con 1.000 neuronas y 1 capa softmax.
33
Figura 4- 4: Arquitectura Amazon_model_vgg19
Fuente: Propia
4.2.3 Construcción del modelo
Para el entrenamiento de los modelos Amazon_model y Amazon_model_vgg19, solo se
utilizaron las 3 bandas del espectro visible (RGB) de las imágenes, ya que el
34 Identificación y clasificación de motores de cambio en la amazonia usando
técnicas de aprendizaje de maquina e imágenes PlanetScope
procesamiento de la banda del infrarrojo sugiere cambios en la arquitectura de los
modelos que no fueron objeto de estudio de este proyecto.
La transformación en código de las arquitecturas de los modelos entrenados descrita en
la sección 4.2.2, se muestra a continuación:
Amazon_model
Def Amazon_Model(input_shape=(256, 256, 3), weight_path=None):
Model = Sequential()
Model.add(BatchNormalization(input_shape=input_shape))
Model.add(Conv2D(32, kernel_size=(3,3), padding=’same’, activation=’relu’))
Model.add(Conv2D(32, kernel_size=(3,3), activation=’relu’))
Model.add(Maxpooling2D(poll_size=(2,2)))
Model.add(Dropout(0.15))
Model.add(Conv2D(64, kernel_size=(3,3), padding=’same’, activation=’relu’))
Model.add(Conv2D(64, kernel_size=(3,3), activation=’relu’))
Model.add(Maxpooling2D(poll_size=(2,2)))
Model.add(Dropout(0.15))
Model.add(Conv2D(128, kernel_size=(3,3), padding=’same’, activation=’relu’))
Model.add(Conv2D(128, kernel_size=(3,3), activation=’relu’))
Model.add(Maxpooling2D(poll_size=(2,2)))
Model.add(Dropout(0.15))
Model.add(Conv2D(256, kernel_size=(3,3), padding=’same’, activation=’relu’))
Model.add(Conv2D(256, kernel_size=(3,3), activation=’relu’))
Model.add(Maxpooling2D(poll_size=(2,2)))
Model.add(Dropout(0.15))
Model.add(Flatten())
Model.add(Dense(512, activation=’relu’))
35
Model.add(BatchNormalization())
Model.add(Dropout(0.25))
Model.add(Dense(16, activation=’softmax’))
Amazon_model_vgg19
Def Amazon_model_vgg19(input_shape=(56,256,3),weight_path=None):
From keras.applications.vgg19 import VGG19
Base_model=VGG19(include_top=False,
Weights=’imagenet’,
Input_sahpe=input_shape)
Model = Sequential()
Model.add(BatchNormalization(input_shape=input_shape))
Model.add(base_model)
Model.add(flatten())
Model.add(Dense(16, activation=’softmax’))
Como parte de los experimentos que se llevaron a cabo en la construcción de los
modelos para mejorar los resultados de la clasificación, se consideró incluir un número
de muestras del conjunto de datos de entrenamiento que se dispone a propagar a través
de la red, es decir, que al incluir este parámetro en la estimación del modelo, no se toma
la totalidad de ejemplos del conjunto de datos para entrenar a la red, sino que lo hace por
muestras de un tamaño especifico. Las ventajas de este procedimiento son que requirió
un menor uso de memoria RAM y que el desempeño mejoró. En la Tabla 4- 3 se
muestran las diferencias en la exactitud de la clasificación con distintos tamaños de
muestras, siendo 10 la mejor cantidad de ejemplos, con una exactitud de 79,69%.
36 Identificación y clasificación de motores de cambio en la amazonia usando
técnicas de aprendizaje de maquina e imágenes PlanetScope
Tabla 4- 3: Exactitud de la clasificación obtenida con diferentes tamaños de muestra
Tamaño de
las muestras
Tiempo por
iteración
(segundos)
Tiempo
total (horas)
Exactitud
(%)
10 348 5 79,69
20 207 3 77,15
30 115 2 75,84
Fuente: Propia
4.3 Evaluación
La evaluación del modelo se hizo primero en cuanto al desempeño de los algoritmos y
segundo en cuanto a los resultados en la clasificación.
Es así, como con un máximo de 50 iteraciones para el procesamiento de cada modelo,
valor escogido por la capacidad computacional del equipo personal utilizado, y con los
mismos parámetros para la compilación y la estimación, el rendimiento en tiempo del
modelo Amazon_model fue de 5 horas (alrededor de 348 segundos por iteración) y del
modelo Amazon_model_vgg19 de 18 horas (alrededor de 991 segundos por iteración).
De este procesamiento se obtuvo una exactitud de clasificación para el modelo
Amazon_model de 79% en el conjunto de datos de entrenamiento y 73% en el conjunto
de datos de validación (Figura 4- 5). Mientras que para el modelo Amazon_model_vgg19
la exactitud fue de 73% en el conjunto de datos de entrenamiento y 51% en el conjunto
de datos de validación del (Figura 4- 6).
37
Figura 4- 5: Función de exactitud de los conjuntos de datos de entrenamiento y de
validación para el modelo Amazon_model
Fuente: Propia
Figura 4- 6: Función de exactitud de los conjuntos de datos de entrenamiento y de
validación para el modelo Amazon_model_vgg19
Fuente: Propia
Los picos que se observan en las Figura 4- 5 y Figura 4- 6 de la medición de exactitud
del aprendizaje del conjunto de validación en ambos modelos demuestran deficiencias en
el aprendizaje del algoritmo. Esto posiblemente causado por un número insuficiente de
ejemplos que no permitieron a los modelos asimilar las clases.
En cuanto a los resultados de la clasificación en la Tabla 4- 4 se muestra un ejemplo de
la clasificación de una misma imagen utilizando los dos modelos. Se evidencia que el
Amazon_model acertó al clasificar tres de las cuatro clases presentes en la imagen,
mientras que el Amazon_model_vgg19 solo clasifico dos.
38 Identificación y clasificación de motores de cambio en la amazonia usando
técnicas de aprendizaje de maquina e imágenes PlanetScope
Tabla 4- 4: Ejemplo de comparación de los resultados de clasificación de los modelos
Imagen Nombre de
la imagen
Clase real Clase predicha
modelo
Amazon_model
Clase predicha
modelo
Amazon_model_vgg1
9
Train_3599
0
agricultura
parcialmente_nube
s bosque_primario
tala_quema
agricultura
parcialmente_nube
s bosque_primario
parcialmente_nubes
bosque_primario
Basados en los porcentajes de exactitud ya mencionados y en la comparación de la
clasificación de las imágenes por los dos modelos, se escogió al Amazon_model como
modelo de clasificación, utilizándose para realizar la predicción de clases del conjunto de
datos de validación.
Como resultado se puede observar en la Tabla 4- 5, que los principales errores en la
clasificación de clases son:
▪ La diferenciación de clases, al confundir vías y tala selectiva, minería artesanal y
suelo desnudo.
▪ La cantidad de omisiones de clases, principalmente cultivo y agricultura.
Tabla 4- 5: Ejemplos de la predicción del modelo
Imagen Nombre de la
imagen
Clase real Clase predicha
Train_144 agricultura parcialmente_nubes
bosque_primario
explotacion_selectiva
parcialmente_nubes
bosque_primario via
39
Train_225 agricultura cultivo zona_urbana
bosque_primario via
agricultura zona_urbana
bosque_primario via
train_39981 agricultura cultivo
bosque_primario agua
agricultura bosque_primario
agua
Fuente: Propia
4.4 Despliegue
Como parte de los resultados y teniendo en cuenta el tipo de usuario que podría estar
interesado en los hallazgos de este proyecto se desarrolló una aplicación web básica de
consulta y visualización, soportada por las herramientas desarrolladas por ESRI de
ARGIS online para la elaboración del mapa, y ARGIS for Developers y su serie 4.x de la
API de ARGIS para JavaScript, para la creación de la aplicación web.
De esta forma el usuario tiene acceso a la información del nombre de la imagen (ej.
Train_32192) y las clases (ej. bosque_primario tala_quema) que se encuentran en el
polígono de cubrimiento de cada imagen como se muestra en la Figura 4- 7.
Figura 4- 7: Atributos de las imágenes resultado del procesamiento
Fuente: Propia
40 Identificación y clasificación de motores de cambio en la amazonia usando
técnicas de aprendizaje de maquina e imágenes PlanetScope
Para acceder a esta ventana de visualización de resultados solo se debe ejecutar la
plantilla en lenguaje de marcado de hipertexto denominada visor.html (ver archivo
anexo) desde cualquier equipo y navegador de internet.
A continuación, se muestra el script del archivo visor.html utilizado para la creación del
visor geográfico donde se describe la estructura de sus elementos y etiquetas HTML:
-----------------------------------------------------------------------------------------------------------------------
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="initial-scale=1,maximum-scale=1,user-scalable=no">
<title>Motores de cambio en la Amazonia</title>
<style>
html,
body,
#viewDiv {
padding: 0;
margin: 0;
height: 100%;
width: 100%;
overflow: hidden;
}
#sidebar {
z-index: 99;
position: absolute;
top: 0;
right: 0;
height: 70%;
background: rgba(0, 0, 0, 0.5);
width: 320px;
}
#text {
color: white;
padding: 2%;
}
.esri-feature {
letter-spacing: 0em;
41
font-family: "Avenir Next", "Helvetica Neue", sans-serif;
line-height: 1.55rem;
font-feature-settings: "liga"1, "calt"0;
background: #fff;
padding: 1em;
}
</style>
<link rel="stylesheet" href="https://js.arcgis.com/4.9/esri/css/main.css">
<script src="https://js.arcgis.com/4.9/"></script>
<script>
require([
"esri/views/MapView",
"esri/WebMap",
"esri/widgets/Search",
"esri/widgets/ScaleBar",
"esri/widgets/LayerList",
"esri/widgets/Expand",
], function(
MapView, WebMap, Search, ScaleBar, LayerList, Expand
) {
var webmap = new WebMap({
portalItem: { // autocasts as new PortalItem()
id: "bd6bcec201fc4b27858bddf8665c35ee"
}
});
var view = new MapView({
map: webmap,
container: "viewDiv"
});
var searchWidget = new Search({
view: view,
container: document.createElement("div")
});
var scaleBar = new ScaleBar({
view: view
});
view.ui.add(scaleBar, {
position: "bottom-right"
});
var layerList = new LayerList({
view: view,
42 Identificación y clasificación de motores de cambio en la amazonia usando
técnicas de aprendizaje de maquina e imágenes PlanetScope
listItemCreatedFunction: function(event) {
var item = event.item;
if (item.layer.type != "group") { // don't show legend twice
item.panel = {
content: "legend",
open: true
};
}
}
});
view.ui.add(layerList, "bottom-left");
var bgExpand = new Expand({
view: view,
content: searchWidget
});
view.ui.add(bgExpand, "top-left");
});
</script>
</head>
<body class="calcite">
<div id="viewDiv">
<div id="sidebar">
<div id="text">
<h1>Motores de cambio</h1>
<p align="justify">En la región de la Amazonía los motores de cambio identificados son el cambio de uso de
la tierra y el cambio climático.
<p align="justify">El cambio de uso de la tierra se refiere a la deforestación y la degradación a gran escala
del bosque primario a través de la agricultura comercial y el desarrollo de infraestructura, la agricultura de
tala y quema, y la industria de la madera (legal e ilegal).</p>
<p align="justify">El cambio climático, se relaciona con la posibilidad de sequias y sabanización
de la Amazonía.</p>
</div>
</div>
</div>
</body>
</html>
-----------------------------------------------------------------------------------------------------------------------
En la Figura 4- 8 se muestra el visor ejecutado.
44
Conclusiones y recomendaciones
La vista minable fue seleccionada considerando la minimización de la sobreestimación
del modelo, al ser construida de la forma más nivelada y variada posible, basándose en
el hecho de que las imágenes tuvieran variedad de coberturas de la tierra.
El modelo Amazon_model mostró un mayor desempeño que el modelo consolidado
Amazon_model_vgg19. De los muchos factores que intervinieron en la construcción y
ejecución de estos modelos, y cuya importancia radica en el mejoramiento de la exactitud
de la clasificación, se destacan: el número y la calidad de los datos de entrenamiento; la
cantidad, tipo y características de las capas ocultas del modelo; las variables de
compilación y ajuste (iteraciones, remuestreo, funciones de perdida, optimización y
métricas).
Es indispensable contar con un ambiente de trabajo óptimo (lenguaje de programación y
la librería para la construcción del modelo). Adicionalmente, dada la complejidad de
aprendizaje del modelo, se requiere una gran capacidad computacional que potencie la
implementación de los algoritmos.
Al comparar la clasificación hecha por el modelo en el conjunto de validación se pudo
comprobar que se necesita de una mayor cantidad de ejemplos para que el algoritmo
asimile las diferentes clases de forma más clara, sin caer en confusión de coberturas ni
en interpretaciones erróneas. Al ser un método experimental, la clasificación está sujeta
al proceso de ensayo y error para lograr mejores resultados. De forma que se sugiere
partir de los resultados presentados y continuar con el proceso de experimentación.
45
Finalmente teniendo en cuenta los posibles usuarios de la información generada en este
proyecto que pueden ir desde especialistas en procesamiento digital de imágenes hasta
tomadores de decisiones que no tienen un conocimiento claro de la parte espacial de la
información, se determinó que la forma más sencilla y efectiva de mostrar los resultados
era a través de un visor geográfico que en este caso fue de solo consulta y visualización.
46
Bibliografía
Acosta, L. E., 2008. Sostenibilidad Territorial y bienestar indígena: bases para el diseño
de
indicadores en la Amazonia Colombiana. Instituto Amazónico de Investigaciones
Científicas Sinchi Bogotá.
Castelluccio, Marco, Poggi, Giovanni, Sansone, Carlo, & Verdoliva,Luisa(2015).Land use
classification in remote sensing images by convolutional neural networks,
ArXivPreprintarXiv:1508.00092.
Ciresan, Dan; Meier Ueli; Masci, Jonathan; Gambardella, Luca; Schmidhuber, Jurgen
(2010). Flexible, High Performance Convolutional Neural Networks for Image
Classification. Proceedings of the Twenty-Second International Joint Conference on
Artificial Intelligence. 1237-1242.
Collobert, Ronan, & Weston, Jason (2008). A unified architecture for natural language
processing: Deep neural networks with multitask learning. In Proceedings of the 25th
international conference on machine learning (pp. 160–167). ACM.
David J., Amir H., Amir H., Annette L. (2016). Machine learning in geosciences and
remote sensing. Geoscience Frontiers Volume 7, Issue 1, Pages 3-10.
Deng, Li, Li, Jinyu, Huang, Jui-Ting, Yao, Kaisheng, Yu, Dong, Seide, Frank, et al. (2013).
Recent advances in deep learning for speech research at Microsoft. In 2013 IEEE
international conference on acoustics, speech and signal processing (pp. 8604–8608).
IEEE.
Fisher, P., 1997. The pixel:a snare and a delusion. Int. J. Remote Sens. 18 (3), 679-685.
47
Fukushima, Kunihiko (1980). Neocognitron: A Self-organizing Neural Network Model for a
Mechanism of Pattern Recognition Unaffected by Shift in Position. Biological Cybernetics
36 (4): 193–202.
G. Büttner, J. Feranec, G. Jaffrain, L. Mari, G. Maucha, T. Soukup, 2004. The CORINE
land cover 2000 project. EARSeL eProceedings, vol. 3, no. 3, pp. 331–346.
Gao Yan, Su Fenzhen (2013). Study on Machine Learning Classifications Based on OLI
Images. International Conference on Mechatronic Sciences, Electric engineering and
Computer (MEC): 1472-1476.
Gidudu, Anthony, Hulley, Greg, & Marwala,Tshilidzi (2007).Classification of images using
support vector machines, CoRR(arXiv:0709-3967v1).
Gore, A. 1992. La Tierra en juego. EMECE. Buenos Aires.
He, Kaiming, Zhang, Xiangyu, Ren, Shaoqing, & Sun, Jian (2015). Deep Residual
Learning for Image Recognition, ArXiv Preprint arXiv:1512.03385.
Hinton, Geoffrey, Deng, Li, Yu, Dong, Dahl, George E, Mohamed, Abdel rahman, Jaitly,
Navdeep, et al. (2012). Deep neural networks for acoustic modeling in speech
recognition: The shared views of four research groups. IEEE Signal Processing
Magazine, 29(6), 82–97.
Hinton, Geoffrey E., & Salakhutdinov, Ruslan R. (2006). Reducing the dimensionality of
data with neural networks. Science, 313(5786), 504–507.
Hu, Wei, Huang, Yangyu, Wei, Li, Zhang, Fan, & Li, Hengchao (2015). Deep
convolutional neural networks for hyperspectral image classification. Journal of Sensors,
2015.
Huang, Kal-Y. I. (2002). A synergistic automatic clustering technique (SYNERACT) for
multispectral image analysis. Photogrammetric Engineering and RemoteSensing,68(1).
48 Identificación y clasificación de motores de cambio en la amazonia usando
técnicas de aprendizaje de maquina e imágenes PlanetScope
ImageNet [online]. Disponible en internet: http://www.image-net.org/
Kavzoglu, T., & Mather, P. M. (2003). The use of backpropagating artificial neural
networks in land cover classification. International Journal of Remote Sensing, 24(23).
Krizhevsky, Alex, Sutskever, Ilya, & Hinton, Geoffrey E. (2012). Imagenet classification
with deep convolutional neural networks. In Advances in neural information processing
systems, Vol. 25. Curran Associates, Inc.
LeCun, Yann; Léon Bottou; Yoshua Bengio; Patrick Haffner (1998). "Gradient-based
learning applied to document recognition". Proceedings of the IEEE 86 (11): 2278–2324.
LeCun, Y., Bengio, Y., Hinton, G., 2015. Deep learning. Nature 521, 436-444.
LEYENDA NACIONAL DE COBERTURAS DE LA TIERRA Metodología CORINE Land
Cover Adaptada para Colombia Escala 1:100.000, 2010. Disponible en internet:
http://siatac.co/c/document_library/get_file?uuid=a64629ad-2dbe-4e1e-a561-
fc16b8037522&groupId=762.
Mark Ryan M.Talabis, Robert McPherson, I.Miyamoto, Jason L.Martin, D.Kaye, 2015.
Information Security Analytics Finding Security Insights, Patterns and Anomalies in Big
Data, Pages 1-12, Chapter 1 - Analytics Defined.
Mohsen Edalat, Enayat Jahangiri, Emran Dastras, Hamid Reza Pourghasemi, 2019.
Prioritization of Effective Factors on Zataria multiflora Habitat Suitability and its Spatial
Modeling. Spatial Modeling in GIS and R for Earth and Environmental Sciences, Pages
411-427.
Nahla Ben Amor, Salem Benferhat, ZiedElouedia, 2006. Qualitative Classification with
Possibilistic Decision Trees. Modern Information Processing From Theory to Applications,
Pages 159-169)
49
Nogueira, Keiller, Penatti, Otávio A. B., & dos Santos, Jefersson A. (2016). Towards
Better Exploiting Convolutional Neural Networks for Remote Sensing Scene
Classification, ArXiv Preprint arXiv:1602.01517.
Paoletti, M.E., Haut J.M., Plaza J., Plaza A. (2018). A new deep convolutional neural
network for fast hyperspectral image classification, ISPRS Journal of Photogrammetry
and Remote Sensing 145,120–147.
Pedlowski, M., Dale, V., Matricardi, E., and da Silva Filho, E. (1997). Patterns and
impacts of deforestation in Rondônia, Brazil. Landscape and Urban Planning, 38, 149–
157.
Romero, Adriana, Gatta, Carlo, & Camps-Valls, Gustau (2016). Unsupervised deep
feature extraction for remote sensing image classification. IEEE Transactions on
Geoscience and Remote Sensing, 54(3), 1349–1362.
Runping, S., Anqi, H., Bolun, L., Jia, G. (2019). Construction of a drought monitoring
model using deep learning based on multi-source remote sensing data. International
Journal of Applied Earth Observation and Geoinformation, Volume 79, Pages 48-57.
Russakovsky, Olga, Deng, Jia, Su, Hao, Krause, Jonathan, Satheesh, Sanjeev, Ma,
Sean, et al. (2015). Imagenet large scale visual recognition challenge. International
Journal of Computer Vision, 115(3), 211–252.
S. Džeroski, 2008. Encyclopedia of Ecology, 2008. Data Mining, Pages 821-830.
Sermanet, Pierre, Eigen, David, Zhang, Xiang, Mathieu, Michaël, Fergus, Rob, & LeCun,
Yann (2013). Overfeat: Integrated recognition, localization and detection using
convolutional networks, ArXiv Preprint arXiv:1312.6229.
Sharma A., Liu X., Yang X., Shi D. (2017). A patch-based convolutional neural network for
remote sensing image classification, Neural Networks 95, 19–28.
Simonyan K, Zisserman A (2014). Very Deep Convolutional Networks for Large-Scale
Image Recognition, ArXiv:1409.1556.
50 Identificación y clasificación de motores de cambio en la amazonia usando
técnicas de aprendizaje de maquina e imágenes PlanetScope
Siyuan Lu, Zhihai Lu, Xianqing Chen, Shuihua Wang, Yudong Zhang, (2017). Flower
Classification Based on Single Petal Image and Machine Learning Methods. 13th
International Conference on Natural Computation, Fuzzy Systems and knowledge
Discovery (ICNC-FSKD): 826-831.
Socher, Richard, Lin, Cliff C., Manning, Chris, & Ng, Andrew Y. (2011). Parsing natural
scenes and natural language with recursive neural networks. In Proceedings of the 28th
international conference on machine learning, ICML-11
(pp. 129–136).
Strahler, Alan H. (1980). The use of prior probabilities in maximum likelihood classification
of remotely sensed data. Remote Sensing of Environment, 10(2).
Earth observatory [online]. World of Change: Amazon Deforestation. Disponible en
internet: https://earthobservatory.nasa.gov/WorldOfChange/deforestation.php
Wikipedia [online]. Redes neuronales convolucionales. Disponible en internet:
https://es.wikipedia.org/wiki/Redes_neuronales_convolucionales#cite_note-3
USGS. (2016b). UsingtheUSGSLandsat8Product,http://landsat.usgs.gov/Landsat8_
Using_Product.php[Online;accessed11.08.16].
Xu, Min, Watanachaturaporn, Pakorn, Varshney, Pramod K., & Arora, Manoj K. (2005).
Decision tree regression for soft classification of remote sensing data.
RemoteSensingofEnvironment,97(3).
Zhao, Wenzhi, & Du, Shihong (2016). Spectral–spatial feature extraction for hyperspectral
image classification: A dimension reduction and deep learning approach. IEEE
Transactions on Geoscience and Remote Sensing, 54(8), 4544– 4554.
51
Zhang, I., Zhang, I., Du, B., 2016a. Deep learning for remote sensing data advances in
machine learning for remote sensing and geosciences IEE Geosci. Remote Sens. Mag. 4
(2), 22-40 http://ieeexplore.ieee.org/document/7486259/