• No se han encontrado resultados

INSTITUTO POLITÉCNICO NACIONAL

N/A
N/A
Protected

Academic year: 2022

Share "INSTITUTO POLITÉCNICO NACIONAL"

Copied!
69
0
0

Texto completo

(1)

INSTITUTO POLITÉCNICO NACIONAL

ESCUELA SUPERIOR DE INGENIERÍA Y ARQUITECTURA CIENCIAS DE LA TIERRA

UNIDAD TICOMÁN

CLASIFICADOR DE IMÁGENES SÍSMICAS PARA EL RECONOCIMIENTO DE CARACTERÍSTICAS GEOLÓGICAS

APLICANDO INTELIGENCIA ARTIFICIAL

TESIS

PARA OBTENER EL TÍTULO DE:

INGENIERO GEOFÍSICO

PRESENTA:

ANA KATYA CRUZ REYES

DIRECTORES DE TESIS

DIRECTOR INTERNO: ING. MIGUEL GÓMEZ SANTIAGO

DIRECTOR EXTERNO: ING. HAMMURABI SEVILLA GARCÍA

(2)
(3)
(4)
(5)
(6)
(7)

DEDICATORIA

A mi padre, tío, entrenador, guía y coach de vida:

Felipe Reyes Ortega

Por el gran amor, fortaleza y apoyo absoluto durante estos veintisiete años.

Tus pesas de toda la vida lograron el termino de la primera carrera universitaria de la familia Cruz Reyes.

Y esto apenas comienza.

(8)

AGRADECIMIENTOS

A mi papá Felipe, por compartir tu pasión y amor por la disciplina de Halterofilia donde competir con mis Romaelos 2 fue y seguirá siendo una de las mejores experiencias en mi vida. Gracias por cada regreso seguro a casa, por cada desayuno, cuidado en mi descanso para tener una vida saludable y balanceada. Esto y más me llevó cada día a casa, practicándolo para tener una vida plena. También por leerme en todo momento y siempre tener las palabras indicadas que avivan mi fortaleza mental y anímica. Por darme la oportunidad de estar a tu lado en tus logros y enseñanzas de vida. No hay nada mejor que ser hija del coach Felipe, Te Amo.

A mi papá Luis, gracias por brindarme los mejores años. Por escuchar mis preguntas e investigar para responderlas. En el lugar que te encuentres, se que tu luz siempre me acompaña. Cuando sea mi tiempo y Dios lo permita nos volveremos abrazar. Te amé, te amo y te seguiré amando.

Mami Yola, gracias por amarme incondicionalmente por criarme como tu hija. Por tu fé incansable demostrando una vez más que puede mover montañas. Dios nos ha brindado más tiempo terrenal para disfrutarte y aún faltan aventuras que vivir. Admiró tu valentía para encarar las experiencias que te han tocado experimentar. Deseo ser como tú, sin miedo a nada caminando de frente y segura sin voltear atrás.

Sofí, mamá gracias por acompañarme en este proceso de titulación. Por ser mi rommie en las altas montañas de Utah. El que me permitas transmitirte lo que he aprendido durante estos años y decidas mejorar tu vida cada día me llena.

Hermano cantante Roy Cruz, enormemente orgullosa de la valentía de escoger tu propio camino.

Gracias por ser parte del frente que me ayudo en tiempos de enfermedad y ahora compartir nuestros viernes, siempre serás invitado a nuestro pequeño hogar.

Hermana y confidente, Vale gracias por siempre estar en alma y mente. Por tus palabras tan acertadas en tiempos complicados y por ser una pieza distintiva en la familia que lucha y antepone sus valores a donde quiera que vaya. Gracias por ser un ejemplo de certeza y objetividad, disfrutemos el tiempo que nos brinda esta hermosa vida.

Aarón, mi compañero de aventuras hasta el día de hoy, gracias por hacer más liviano el paso durante la carrera. En tiempos críticos para ambos, seguimos de la mano aprendiendo de las complejidades de nuestro ser y entorno. Agradeceré siempre, esta hermosa coincidencia.

Yeyo, gracias por brindarme un amor incondicional. Por ser mi compañero al llegar a casa después de un largo día de escuela y entrenamiento. Por emocionarte cada que escuchabas la reja al llegar y desde el balcón mirar para asegurarte que era yo, escuchar tus patitas al bajar las escaleras y dar vueltas al verme entrar. Tu paso por esta vida fue corto, lo disfrutamos y siempre lo recordaré. Nos vemos en el Mictlán hermoso.

Mireya gracias por abrirnos y compartir tu hogar, por siempre estar presente y brindar todo sin esperar nada a cambio. Agradezco a la vida que nos brinda la oportunidad de ser familia. Por los consejos de tu experiencia de vida y profesional pero lo más importante por el gran amor hacia mi padre. A donde quiera que vas impactas siempre con tu paz y tranquilidad, siempre seré tu fan.

Hammurabi gracias por comunicarte conmigo durante estos años. Sin tu visión, expertise y profesionalismo esta tesis no estaría escrita. Gracias por brindarle seguimiento al trabajo y convertirte en mi amigo. Esta tesis es también tuya, nace de una curiosidad en común, gracias infinitas por acercarme al mundo de la inteligencia artificial y avivar mi curiosidad que fortaleció mi estudio autodidacta.

(9)

You become a champion in the dark when ain’t nobody looking You become a champion in the way you eat You become a champion in the way you think You become a champion in your grind And you just get on stage and you shine

-Eric Thomas

(10)

ÍNDICE

RESUMEN……… 1

ABSTRACT……….. 2

CAPÍTULO I INTRODUCCIÓN……….. 3

Hipótesis………... 4

Objetivos………... 4

Planteamiento del Problema………... 4

Alcance……….……….. 5

CAPÍTULO II CONCEPTOS Y DEFINICIONES……….. 5

Inteligencia Artificial……….. 5

Machine Learning………... 6

Tipos de Aprendizaje………... 6

A. Supervisado (Supervised)……… 6

1. Paramétricos ………... 8

2. No paramétrico……… 9

B. No Supervisado (Unsupervised)……... 11

Deep Learning……….. 12

Redes Neuronales……….. 13

Redes Neuronales Convolucionales………. 18

Imágenes……….. 22

Blanco y Negro………. 22

Color……… 23

CAPÍTULO III ANÁLISIS DEL BANCO DE IMÁGENES SÍSMICAS…. 23 Banco de Imágenes……….. 23

Localización del cubo sísmico………. 24

Características geológicas estructurales del cubo……….. 25

Carpetas………. 26

CAPÍTULO IV DESCRIPCIÓN Y ANÁLISIS DE APLICACIÓN DEL CLASIFICADOR DE IMÁGENES SÍSMICAS………... 31

Descripción……….. 31

Análisis……….. 31

CAPÍTULO V METODOLOGÍA APLICADA……….……… 35

Investigación……….……… 35

Equipo y Herramientas………. 35

Algoritmo……… 36

Flujo de trabajo……….……… 39

CAPÍTULO VI RESULTADOS Y DISCUSIÓN……… 40

CONCLUSIONES Y RECOMENDACIONES……….. 45

REFERENCIAS Y BIBLIOGRAFÍA………. 47

(11)

RESUMEN

Este trabajo se originó al realizar veinte pruebas con un banco de imágenes sísmicas aplicando un clasificador de imágenes de inteligencia artificial. El algoritmo se adaptó para clasificar patrones específicos en imágenes sísmicas que representan diversas estructuras geológicas. Se expondrá dos pruebas que obtuvieron el mayor porcentaje de exactitud al clasificarlas. Los datos utilizados se obtuvieron de la página Terra Nubis con fines de investigación.

El cubo sísmico perteneciente al Mar del Norte contiene líneas procesadas. En ellas se observan claramente los diferentes patrones de estructuras geológicas que pueden encontrarse en imágenes de prospección sísmica. Siendo estos datos de interés para identificación y extracción de hidrocarburo o de investigación específicos en yacimientos.

Se exportó con ayuda del software OpendTect en formato jpg cada imagen de las líneas sísmicas que componen al cubo sísmico. Obteniendo un total de novecientas cincuenta y cuatro imágenes de las cuales se determinaron distintas clases. Se entreno a la red con estos archivos de entrada, con una a dos capas y variando tamaños de kernel con un valor máximo de nueve.

Logrando, en la prueba número dos, un valor en porcentaje de precisión máxima de sesenta y seis porciento. Donde identificó con un noventa dos porciento de precisión imágenes de fallas y con el ochenta y dos porciento imágenes de depósitos dentro de una imagen sísmica con dimensiones de cuatrocientos cuarenta y nueve por seiscientos noventa y seis pixeles. El resultado brindó que los patrones locales como entrampamientos, fallas y graben o con dos estructuras regionales en una misma imagen resultaron con menos del treinta a cero porciento de precisión.

Esto nos brinda un camino más para realizar investigaciones subsecuentes que logren aumentar el porcentaje de exactitud con un banco de imágenes mayor y herramientas que soporten mas de diez interaciones con redes neuronales convolucionales de más de tres capas. Esto para determinar patrones específicos de interés. Siendo este solo el principio de las múltiples aplicaciones que la inteligencia artificial puede ofertar.

(12)

ABSTRACT

This work began with twenty tests applied to a seismic image data set using an artificial intelligence image classifier. The algorithm was adjusted to classify specific patterns representing different geological structures. It describes two tests that achieved the highest percentage of accuracy in classifying the seismic images. The data used for research purposes were obtained from the Terra Nubis website.

The North Sea seismic cube contains processed lines. These lines reveal the different patterns of geological structures that can be found in seismic prospecting images. This information is useful for the identification and extraction of hydrocarbon or for specific reservoirs’ research.

Each image of the seismic lines that integrate the seismic cube was exported with the help of OpendTect software in jpg format. Obtaining a total of nine hundred and two images of which different classes were determined. The network was trained with these input files, varying kernel sizes with a maximum value of nine and with one to two convolutional layers.

The test number two had a maximum accuracy classification of sixty-six percent. It identified images of faults with ninety two percent of precision and images of deposits with eighty two percent. These within seismic images which dimensions are of four hundred and forty-nine by six hundred and ninety-six pixels. The result was that local patterns such as traps, faults and graven or with two different patterns of geological structures in the same image resulted in less than thirty to zero percent accuracy.

This gives us the opportunity to perform subsequent investigations to increase the percentage of accuracy with a larger image data set and more powerful tools. To perform more than ten interactions of deep learning training algorithm. This being only the start of the multiple benefits that artificial intelligence could offer to the Geoscience field.

(13)

CAPÍTULO I INTRODUCCIÓN

Desde 1988 se inició la aplicación de Inteligencia Artificial (IA) en el área de la Geofísica pero hasta hace poco a incrementado su desarrollo e innovación, esto en el área de la sísmica 3D automatizada para la detección de fallas, mapeo del entorno deposicional en registros de pozos y datos sísmicos. Al igual que litología e inversión petrofísica de datos de registro de pozos e integración de cientos de volúmenes de atributos sísmicos a la ubicación y terminación óptima de pozos horizontales de recursos no convencionales.

La interpretación geológica es una etapa que forma parte de la prospección sísmica en la cual se distinguen las estructuras con mayor importancia para la formación de hidrocarburos.

Al analizar las imágenes sísmicas se hacen uso de herramientas digitales de visualización y procesamiento de datos con unidades de tiempo de arribo en milisegundos.

El manejo de grandes cantidades de datos, deben ser resueltas con mayor alcance de lo que estas herramientas ofrecen hoy en día, por lo que se deben desarrollar recursos de programación basados en las necesidades particulares de cada estudio.

La búsqueda de estructuras geológicas dentro de un cubo sísmico es prolongada debido al factor humano y al gran número de imágenes sísmicas que el usuario tiene que comparar, hablamos de cientos de imágenes para detectar rasgos geológicos. Sumado a esto, si se quiere estudiar los rasgos de un campo completo los datos ascienden a miles de millones y la comparación se vuelve aún más compleja. Automatizar la detección y búsqueda de rasgos geológicos dentro de las imágenes sísmicas ahorra tiempo y costos dentro de la interpretación geológica, además de facilitar el acceso rápido a las características de todo el campo de estudio al usuario.

Actualmente, hay recursos como los algoritmos con base en inteligencia artificial que procesan grandes volúmenes de datos para la detección de patrones, esta información es útil al momento de manejarlos, desde clasificarlos y ordenarlos, hasta reconocer en ellos las diferencias que tienen. En este trabajo se propone la adaptación de un algoritmo de inteligencia artificial para detectar diferentes patrones regionales y locales, dentro de una imagen digital, que conforman estructuras geológicas.

(14)

Hipótesis

Entrenar un algoritmo supervisado de inteligencia artificial para el reconocimiento de estructuras geológicas en imágenes sísmicas.

Objetivos

General

Aplicar un algoritmo de inteligencia artificial con el propósito de entrenarlo para reconocer imágenes sísmicas.

Particulares

1. Reconocer estructuras geológicas dentro de las imágenes sísmicas.

2. Disminuir el tiempo de reconocimiento de imágenes sísmicas en la etapa de la interpretación geológica.

3. Aumentar la aplicación de algoritmos de inteligencia artificial en la etapa de la interpretación geológica.

4. Incentivar la implementación y desarrollo de algoritmos de inteligencia artificial en prácticas escolares y profesionales del área de Geofísica.

Planteamiento del problema

En el análisis de un estudio Geofísico se requiere realizar una interpretación geológica del área de interés. En donde las actuales herramientas digitales requieren del personal ingenieril para reconocer estructuras geológicas productoras de hidrocarburo en imágenes sísmicas. Generando resultados cualitativos bajo perspectivas visuales humanas.

(15)

Alcance

El tema se centra en la adaptación de un algoritmo de Inteligencia Artificial para la clasificación de imágenes sísmicas. Es un trabajo experimental que busca analizar los resultados obtenidos del aprendizaje que obtuvo al identificar patrones previamente indicados.

CAPÍTULO II CONCEPTOS Y DEFINICIONES

El trabajo se centra en un algoritmo de inteligencia artificial basado en machine learning con aprendizaje supervisado. Se definirán a detalle estos conceptos junto con las diferentes clasificaciones y componentes que lo acompañan a realizar el entrenamiento y clasificación de imágenes, como podemos observar gráficamente en la imagen 1.

Imagen 1. Diagrama de Venn que representa una de varias definiciones que componen a la Inteligente Artificial (grokking Deep Learning, Trask, 2019).

Inteligencia Artificial

La inteligencia artificial se compone de técnicas y algoritmos para realizar tareas humanas basado en una metodología intuitiva y casi automática. Esto con el objetivo de resolver un problema en específico, por ejemplo, el identificar rasgos y características de una imagen como lo hacemos a diario. Una tarea donde podemos discernir entre diferentes objetos e identificarlos por su nombre (Deep Learning for Computer Vision, Rosebrock, 2017).

(16)

En esencia es “la rama de las ciencias computacionales que se encarga del diseño y construcción de sistemas capaces de realizar tareas asociadas con la inteligencia humana”

(Turing, 1950).

Machine Learning

Llamado aprendizaje computacional que por su término en Inglés es muy conocido siendo machine learning. Esta subdivisión de la inteligencia artificial contiene un sistema que ejecuta tareas aprendiendo mediante pruebas y errores. Tiene como característica principal el aprendizaje y reconocimiento de patrones en datos de entrada (Deep Learning for Computer Vision, Rosebrock, 2017).

Tipos de Aprendizaje

Se clasifica en: Supervisado (Supervised), No Supervisado (Unsupervised), Paramétricos, No Paramétricos, Aprendizaje Supervisado Paramétrico (Supervised Parametric Learning) y Aprendizaje Supervisado No Paramétrico (Supervised Non Parametric Learning).

A. Supervisado (Supervised)

Trabaja por medio de una serie de datos con etiquetas especificas. Identifica rasgos y patrones de cada una. El proceso de entrenamiento termina hasta alcanzar un rango de error lo más bajo posible o un número máximo de interaciones.

Es útil ingresar datos conocidos como entrada y transformarlos rápidamente en lo que se desea conocer. Esto permite al algoritmo expandir las capacidades de la inteligencia humana en un interminable número de posibilidades (grokking Deep Learning, Trask, 2019).

Gráficamente se puede observar en la imagen 2.

(17)

Imagen 2. Diagrama traducido de como funciona el Aprendizaje Supervisado con información conocida y obteniendo como resultado datos que querías saber inicialmente (grokking Deep Learning, Trask, 2019).

El algoritmo decodifica patrones que existe en los datos de entrada, creando un modelo que reproduce el mismo principio matemáticamente (Machine Learning for Absolute Beginners, Theobald, 2017). Por ejemplo, en la predicción del precio de un auto tendremos tres atributos (año en que se manufacturó, nombre de la agencia de la que proviene y el kilometraje) los cuales ingresarán al modelo. Estos archivos de entrada nos ayudarán a tener como resultado el precio del automóvil, ver imagen 3.

Imagen 3. Ejemplo de predicción del Precio de un automóvil. Se ingresan los atributos (Año de fabricación, Marca del automóvil y kilometraje, se crea el modelo (recuadro verde) para finalmente obtener un precio predicho del automóvil.

(18)

1. Paramétricos

El modelo paramétrico se caracteriza por tener un número fijo de parámetros y tienden a utilizar el método experimental (grokking Deep Learning, Trask, 2019). Por ejemplo, digamos que el problema es encajar una varilla cuadrada en el correcto (cuadrado) agujero. Algunos humanos (como los bebés) simplemente lo insertan en todos los agujeros hasta que quepa en alguna parte (grokking Deep Learning, Trask, 2019). Conforme el bebé realice esta acción repetidamente, llegará al punto en que aprenderá a insertarlo exactamente en la cavidad y así insertará la varilla correctamente.

Aprendizaje Supervisado Paramétrico (Supervised Parametric Learning)

Ejemplifiquemos el funcionamiento del aprendizaje paramétrico como si fueran máquinas, se puede observar gráficamente en la imagen 4.

Imagen 4. Ejemplo gráfico de un aprendizaje supervisado paramétrico (grokking Deep Learning, Trask, 2019).

Imaginemos que el aprendizaje paramétrico supervisado son máquinas con un número fijo de perillas (siendo la parte paramétrica), en ellas el aprendizaje se produce girándolas. Los datos de entrada ingresan y se procesan en función del ángulo de los mandos y transformándolos en una predicción (grokking Deep Learning, Trask, 2019).

(19)

2. No Paramétrico

Este modelo se caracteriza por tener un número infinito de parámetros (determinado por los datos) y tienden a realizar un conteo. Por ejemplo, con el mismo problema previo que era encajar una varilla cuadrada en el correcto (cuadrado) agujero. Un adolescente, puede contar el número de lados (cuatro) y luego buscar para el agujero con el mismo número.

En cambio, en el entorno supervisado no paramétrico, por ejemplo, imaginemos un semáforo con sus tres colores tradicionales (verde, amarillo y rojo). Un modelo no paramétrico podría contar el número de veces que un color particular de luz del semáforo hace que los coches

"se muevan” (imagen 5). Después de un conteo de algunos ejemplos, este modelo sería capaz de predecir que las luces verdes siempre (100%) hacen que los coches avancen, y las luces amarillas sólo a veces (50%) hacen que los coches avancen (grokking Deep Learning, Trask, 2019).

Imagen 5. Ejemplo de un modelo no paramétrico que podría contar el número de veces que un color particular de la luz del semáforo en la calle hace que los coches "se muevan”

(grokking Deep Learning, Trask, 2019).

Este modelo tendría tres parámetros: tres conteos que indican el número de veces que cada luz de color se enciende y los coches se van (tal vez dividido por el número del total de observaciones). Si hubiera cinco luces, habría cinco conteos (cinco parámetros). Lo que hace que este simple modelo no sea paramétrico es este rasgo en el que el número de parámetros cambios basados en los datos (en este caso, el número de luces). Esto contrasta con los modelos paramétricos, que comienzan con un número determinado de parámetros y, lo que es más importante, pueden tener más o menos parámetros a discreción del científico que entrena el modelo (independientemente de los datos), (grokking Deep Learning, Trask, 2019).

(20)

Aprendizaje Supervisado No Paramétrico (Supervised Non Parametric Learning) Hay que recordar que el aprendizaje sin supervisión consiste en agrupar los datos. El aprendizaje paramétrico no supervisado utiliza perillas para agrupar datos. Usualmente tiene varias perillas para cada grupo, cada una de las cuales mapea la afinidad de los datos de entrada a ese grupo en particular (grokking Deep Learning, Trask, 2019).

A continuación, ejemplifiquemos que sucede (imagen 6):

La máquina de cada grupo intenta transformar los datos de entrada a un número entre 0 y 1, diciéndonos la probabilidad de que los datos de entrada sean un miembro de ese grupo.

Hay una gran variedad en la forma en que estos modelos se entrenan y sus propiedades resultantes, pero a un alto nivel ajustan los parámetros para transformar los datos en su(s) grupo(s) de entrada.

Imagen 6. Ejemplo gráfico de un aprendizaje supervisado no paramétrico: En el conjunto de datos, se identifican tres grupos (group 1, 2 and 3). Mostrando un mayor porcentaje en el grupo 1 (grokking Deep Learning, Trask, 2019).

(21)

B. No supervisado (Unsupervised)

El aprendizaje no supervisado comparte una propiedad en común con el aprendizaje supervisado: transforma un conjunto de datos en otro set de datos. Solo que el conjunto de datos transformados no se conoce o se entiende inicialmente. En este aprendizaje “no existe una respuesta correcta” (imagen 7). En esencia solo le indica al algoritmo no supervisado:

“encuentra este parámetro en los datos y realice un conteo de ellos” (grokking Deep Learning, Trask, 2019).

Imagen 7. Ejemplo: Aunque al algoritmo no se le índico los nombres de la información de entrada puedes saber que información saliente has obtenido siendo las respuestas 1==bonito y 2== delicioso.

Perritos Pizza Gatitos Hot Dog Hamburguesa

Aprendizaje No Supervisado

1 2 1 2 2

(22)

Deep Learning

Realiza actividades de adquisición de conocimiento automáticamente basado en diferentes niveles de aprendizaje (imagen 8). Este aprendizaje es en realidad un modelo de redes neuronales que se crearon basados en el funcionamiento y comunicación de las neuronas humanas. Estas redes realizan tareas complejas que se basan en el reconocimiento de patrones para tener como resultado identificación de objetos particulares (Deep Learning for Computer Vision, Rosebrock, 2017).

Imagen 8. Subcategorías en Inteligencia Artifical (Deep Learning for Computer Vision, Rosebrock, 2017).

(23)

Redes Neuronales

Las redes neuronales han existido desde 1940 cambiando de nombre constantemente han sido mejor reconocidas por el nombre de Redes artificiales neuronales (por su abreviatura en ingles ANNs). Como se mencionó anteriormente su creación fue inspirada en las redes neuronales de nuestro cerebro (imagen 9). Así el primer modelo artificial fue presentado en 1943 por McCulloh y Pitts consistió en un clasificador binario que categorizaba solo dos clases sobre archivos de entrada, el único detalle fueron que los pesos se ingresaban manualmente lo cual al final se resumía en incluir el factor humano (Deep Learning for Computer Vision, Rosebrock, 2017).

Imagen 9. Anatomía de una neurona (Significados, 2018).

(24)

Así que para 1958 Rosenblatt presenta su modelo automático que aprendía los pesos necesarios para realizar la clasificación de los archivos de entrada siendo este el principio para el Gradiente estocástico descendiente el cual aún esta en uso para entrenar redes neuronales de gran profundidad (Deep Learning for Computer Vision, Rosebrock, 2017).

Imagen 10. Los nodos, bordes/pesos y suma/función de activación de una red neuronal básica (grokking Deep Learning, Trask, 2019).

En 1969 Minsky Paert demostraron que el modelo perceptron de Rossenblatt se basaba en una clasificación lineal sin poder realizar a base de funciones no lineales. Siendo una época donde se alego de no tener las herramientas necesarias para innovarlo en 1974 por Werbos, 1986 por Rumelhart y 1998 por LeCun con su investigación en el algoritmo basado en el método de retropropagación permitió el entrenamiento de multicapa (Deep Learning for Computer Vision, Rosebrock, 2017).

El algoritmo de retropropagación permitió el aprendizaje y entrenamiento por medio de errores. Esto brindó una apertura a investigaciones en diferentes sectores para el reconocimiento de tumores cancerígenos (medicina) hasta el reconocimiento facial(seguridad). Su aprendizaje basado en capas ocultas que son niveles de aprendizaje jerárquico que por medio de conceptos simples en las primeras capas dejan patrones abstractos en las capas de mayor nivel dentro de la red neuronal en funcionamiento (imagen 10).

(25)

LeCun en 1988 en su trabajo Red Convolucional Neuronal se basa en el reconocimiento de caracteres escritos a mano de imágenes donde los filtros identificaban los diferentes patrones que las conformaban. Siendo el trabajo que inicio con el reconocimiento de patrones en imágenes abriendo una nueva puerta a aplicaciones que han salvado vidas en diferentes áreas de conocimiento (Deep Learning for Computer Vision, Rosebrock, 2017). A continuación, en la imagen 11 se observa las diferencias entre Machine y Deep Learning.

Imagen 11. Diagramas de flujo muestra la diferencia entre Machine Learning y Deep Learning

(26)

Algoritmo de aprendizaje profundo internamente compuesto de más de dos capas que requiere de más de 20,0000 imágenes para poder clasificarlas con mayor exactitud. Esta cantidad brinda la oportunidad de identificar características únicas de cada etiqueta (imagen 12).

Imagen 12. Las tres capas generales de una red neuronal. (grokking Deep Learning, Trask, 2019).

Esta red aprende automáticamente características de los archivos de entrada en el proceso de entrenamiento. Contiene diferentes niveles donde las primeras se encargan de identificar contornos patrones simples y en sus niveles profundos extrae características complejas que es la combinación de contornos y márgenes.

(27)

Imagen 13. Reconocimiento facial usando deep learning (Kdnuggets, 2018).

La imagen 13 ejemplifica una red profunda que usa los bordes para detectar diferentes rasgos físicos, con el objetivo de reconocer caras humanas. Asemejando la construcción de bloques, la red combina resultados del nodo para clasificar los datos de entrada en una cara humana o una cara de un gato para después procesar hasta reconocer específicamente la cara del individuo (Machine Learning for Absolute Beginners, Theobald, 2017). Esto es deep learning, dependiendo de la referencia bibliográfica encontraremos que desde dos o más capas se considera un aprendizaje profundo.

(28)

Redes Neuronales Convolucionales

La sísmica de prospección se basa en un modelo convolucional, donde se asume que la traza sísmica se origina por la convolución de una ondícula fuente. El sismograma representa las posibles respuestas de incidencia normal en la zona de estudio. Este modelo asume que la tierra es un medio homogéneo e isotrópico (Yilmaz, 1987).

Dentro de la base del procesamiento de datos Geofísicos la convolución describe cuantitativamente como es afectada una onda por un filtro. Su definición: Es una operación matemática que define el cambio de forma de una onda que pasa a través de un filtro (Kanasewich, 1981).

Por ejemplo, si se genera un impulso sísmico por una explosión se filtra primero a través del suelo y posteriormente por el sistema de registro. Así, el sismograma (output) difiere bastante en la información de la señal inicial (input), imagen 14.

Imagen 14. Función Espiga de entrada (Input) que pasa por el filtro y obtiene un impulso de respuesta (output)

El efecto del filtro puede ser categorizada por su impulso, definido como la salida del filtro cuando la entrada es una función espiga, como se puede observar el la imagen 14. Este efecto es descriptivo matemáticamente por una operación de convolución, tal que, si la señal de entrada g(t) al filtro es convulcionada con el impulso f(t) del filtro, conocido como el operador convolución, la salida filtrada y(t) es:

𝑦(𝑡) = 𝑔(𝑡) ∗ 𝑓(𝑡) 𝐷𝑜𝑛𝑑𝑒 ∗= 𝐶𝑜𝑛𝑣𝑜𝑙𝑢𝑐𝑖ó𝑛

Ecuación 1. Fórmula: Convolución.

Es similar lo que se realiza en las convoluciones dentro de la red neuronal. Se compone de multiplicar pero ahora un grupo de matrices obtenidas de la imagen a analizar. Todo esto con el objetivo de obtener un valor de la imagen ingresada.

Función Espiga (Input) Output = Impulso Respuesta

Filtro

(29)

Así que, las convoluciones son un procesado distintivo de las CNN lo cual consiste en la toma de pixeles cercanos en grupo de cada imagen de entrada realizando un producto escalar contra una matriz pequeña conocida como kernel (imagen 15). Este kernel toma inicialmente valores aleatorios y se irán ajustando mediante backpropagation (Bagnato, 2019).

Imagen 15. Derecha: Imagen de entrada con valores para la matriz de convolución. Izquierda:

Kernel obtenido de la imagen de entrada (Bagnato, Aprendiendo Machine Learning, 2018).

Al tener un conjunto de kernel se le denomina filtro, estos pueden tener diferentes dimensiones. En el caso de una primera convolución se tiene 32 filtros lo que equivale a 32 matrices de salida (featuring mapping), con una dimensión de 28x28x1 con un total de 25.088 neuronas para la primera capa oculta de neuronas.

Mientras avanza el kernel se obtiene una nueva imagen con un filtro que dibuja características de la imagen original ayudando a la identificación de características simples y complejas de la imagen de entrada.

Dentro del modelo de red neuronal se utiliza la siguiente función de activación llamada ReLu (Rectifier Linear unit) definida como:

𝑓 (𝑥) = 𝑚𝑎 𝑥 (0, 𝑥)

(30)

El siguiente paso es reducir la cantidad de neuronas antes de una nueva convolución para reducir el procesamiento lo cual reduce el tamaño de la prima capa de neuronas utilizando subsampling. Aquí se reduce el tamaño de las imágenes filtradas donde están las características más importantes detectadas por los filtros.

El que se usará en este algoritmo se llama Max-Pooling que reducirá a un 25% menos la cantidad de neuronas que se tenían al inicio (imagen 16). Esto lo realiza recorriendo cada una de las imágenes de características obtenidas de izquierda-derecha, de arriba-abajo tomando la cantidad de pixeles que se le haya indicado. Se puede aplicar un Max-Pooling de 2x2 que significa 2 de alto por 2 de ancho que equivale a un total de 4 pixeles preservando el valor más alto en este caso 4 pixeles (Bagnato, 2018).

Imagen 16. Matriz de salida al aplicar Max Pooling de dimensiones 2x2(Bagnato, Aprendiendo Machine Learning, 2018).

(31)

Esta primera convolución se conformó de una entrada, conjunto de filtros (kernel), generación un mapa de características y finalizando con la aplicación de subsampling (imagen 17). Fue capaz de detectar características simples como líneas o curvas mientras, más capas con convulsiones mayor capacidad de reconocimiento de patrones complejos tendrán los mapas de características.

Imagen 17. Tareas que se realizan al compilar la segunda convolución dentro de la red neuronal (Bagnato, Aprendiendo Machine Learning, 2018).

La segunda convolución consistirá en el mismo proceso, obteniendo entradas y salidas con menores dimensiones (imagen 18). Así que mientras más grande la imagen, mayor es la cantidad de convoluciones que se pueden realizar.

(32)

Se finaliza con la conexión a una red tradicional, se toma la última capa donde se aplicó subsampling para convertirla en bidimensional, en una capa de neuronas tradicionales. Se aplica una función denominada Softmax que realiza la conexión con la capa de salida final que contiene la cantidad de neuronas correspondientes a las clases que esté clasificando.

Finalmente, se convierten en formato one-hot-encoding que posiciona las diferentes etiquetas dentro de un arreglo de 1x1. Se encarga también de transferir a probabilidad a las neuronas de salida (imagen 19).

Imagen 19. Arquitectura de una CNN. (Bagnato, Aprendiendo Machine Learning, 2018).

Imágenes

Una imagen esta compuesta por bloques de pixeles. Un pixel es considerado el color que brinda a la imagen. Se representante en escala de grises o de un solo canal o de colores.

Las dimensiones de una imagen se basan en una red donde cada cuadro contiene un solo píxel siendo una imagen una matriz multidimensional.

Blanco y negro

En el caso de la imagen en escala de grises contiene valores entre 0 y 255. El valor cero representado por el color negro y el valor 255 por el color blanco, así que entre estos valores varía la tonalidad de grises.

(33)

Color

Los pixeles de color se representan con el modelo RGB1 -con tres valores-, el primer color es el rojo, el segundo verde y por último el azul. Se encuentran en un solo pixel de la imagen.

Su rango de valores es de [0,255], se usan números enteros sin signo (imagen 20).

Imagen 20. Izquierda: El espacio del color RGB es aditivo. Mientras más rojo, verde y azul se combine se llegará al color blanco. Derecha: Cubo RGB (Deep Learning for Computer Vision, Rosebrock, 2017).

CAPÍTULO III ANÁLISIS DEL BANCO DE IMÁGENES SÍSMICAS Banco de Imágenes

La base de datos se constituye de imágenes obtenidas manualmente al ingresar el cubo sísmico procesado, obtenido del website Terra Nubis, en el software llamado OpendTect que brinda una visualización y exportación de las lineas sísmicas (xlines e inlines) en archivo jpg (imagen 21).

(34)

Localización del cubo sísmico

La adquisición y procesado del cubo sísmico 3D Netherlands Offshore F3 Block se realizó en el año de 1987 (imagen 22). El estudio contiene un área de 357.31 km! con tamaño de bin de inline y crossline de 25 "

#$%&'.

Imagen 22. Mapas de Terra Nubis de la localización del bloque F3 en el Mar del Norte (Terranubis,2018).

(35)

Localizado en el Mar del Norte en la parte de Irlanda en los Países Bajos con las coordenadas N 54° 52’ 0.86” / E 4° 48’ 47.07” (imagen 23).

Imagen 23. Mapas interactivos de Terra Nubis de la localización del bloque F3 en el Mar del Norte entre los demás bloques de estudios sísmicos del área.1) Bloque F3 localizado en el mar del Norte, 2) Bloque F3 con etiqueta de sísmica 3D.

Características geológicas estructurales del cubo

Este cubo ya procesado contiene patrones que en conjunto crean una visualización geométrica con diferentes características geológicas. Se pueden visualizar: Secuencias estratigráficas, Canales, Ondas de arena, Marcas de arado glaciales, Expresiones de superficie, Marcadores de Bolsillo, Gas biogénico de Shalow, Chimeneas de gas, Puntos brillantes, Punto plano, Fallas, Fallas de desagüe, Cúpula de sal de Zechstein (Terranubis, 2018). Los rasgos que se seleccionaron para realizar la determinación de etiquetas son fallas, cúpula de sal de Zechstein y sismofacies horizontales.

El objetivo de la adquisición del bloque sísmico 3D fue la exploración de gas aceite en la estratificación del Jurásico Superior y Cretásico Inferior que se encuentra debajo del intervalo del cubo (Terranubis et al, 2018). También contiene reflectores en los 1200 (

)

superiores pertenecientes al Mioceno, Plioceno y Plestioceno (Terranubis et al, 2018). El lecho sigmoidal a gran escala consistente se conforma de los depósitos de un gran sistema fluviodeltaico que drenó grandes partes de la región del Mar Báltico (Sørensen et al, 1997;

Overeem et al, 2001).

Los puntos brillantes fueron causados por bolsas de gas biogénico, también son visibles varias facies sísmicas, por ejemplo: transparente, caótica, lineal. Los registros de pozos

(36)

La sísmica original del cubo contenía bastante ruido, para removerlo se aplicó a los datos un filtro mediano por medio de inmersión con un radio de dos trazas (Terranubis et al, 2018).

El estudio contiene cuatro pozos verticales con registros sónicos y de rayos gamma. F2-1 y F3-2 tenían registros de densidad. Estos registros fueron utilizados para entrenar una red neural que luego se aplicó a los otros dos pozos (F3-4 y F6-1) para predecir la densidad de los registros sónicos y de rayos gamma. La porosidad en todos los casos se calculó a partir de la densidad utilizando la fórmula (Terranubis et al, 2018):

𝑃𝑜𝑟𝑜𝑠𝑖𝑑𝑎𝑑 = (2.65 − 𝐷𝑒𝑛𝑠𝑖𝑑𝑎𝑑) / (2.65 − 1.05)

Ecuación 3. Fórmula de Porosidad.

Carpetas

Al exportar las líneas sísmicas (xlines e inlines) en archivo jpg se obtuvo un total de 954 imágenes sísmicas de las cuales se crearon seis diferentes carpetas para cada prueba.

Las carpetas se nombran con base en rasgo y/o estructura geológica que se puede visualizar con mayor facilidad. Las carpetas contienen distinto número de imágenes, son las siguientes:

Domo

Se compone de una curva tipo campana (imagen 24).

Imagen 24. Imagen sísmica in-line del bloque F3 en el Mar del Norte clasificada con la etiqueta Domo.

(37)

D Domos

Se compone de dos curvas tipo campana (imagen 25).

Imagen 25. Sísmica cross-line del bloque F3 en el Mar del Norte clasificada con la etiqueta D Domo (Doble Domo).

Depósitos

Se compone de líneas horizontales apiladas (imagen 26).

Imagen 26. Sísmica in-line del bloque F3 en el Mar del Norte clasificada con la etiqueta

(38)

Trampas

Se compone de pequeñas líneas gruesas alrededor de la curva tipo campana (imagen 27).

Imagen 27. Sísmica in-line del bloque F3 en el Mar del Norte clasificada con la etiqueta Trampas.

Fallas

Se compone de líneas difuminadas (imagen 28).

Imagen 28. Sísmica in-line del bloque F3 en el Mar del Norte clasificada con la etiqueta Fallas.

(39)

Dep y Domo

Se compone de líneas horizontales y de una pequeña campana (imagen 24).

Imagen 29. Sísmica cross-line del bloque F3 en el Mar del Norte clasificada con la etiqueta Dep (Depósitos) y Domo.

Localización de estructuras geológicas dentro del cubo sísmico

La posición de estructuras geológicas que componen a esta zona se señalaran en las siguientes imágenes.

Depósito

Falla

Domo

(40)

Imagen 31. Vista 2: Cubo sísmico cross-line del bloque F3 en el Mar del Norte clasificada con la etiqueta Dep (Depósitos) y Domo.

Depósito

Falla

Domo

(41)

CAPÍTULO IV DESCRIPCIÓN Y ANÁLISIS DE LA APLICACIÓN DEL CLASIFICADOR DE IMÁGENES SÍSMICAS

Descripción

El algoritmo se compone de treinta y nueve bloques de líneas de código que realizan el aprendizaje supervisado (ver referencias). Siendo archivos de entrada con extensión jpg se convierten en lenguaje binario (one-hot encoding) para que la red pueda leer y trabajar con ellos (imagen 32).

Imagen 32. Información de salida de conversión a lenguaje one-hot encoding (Bagnato, 2018).

Análisis

Al construir la red neuronal convolucional se puede aplicar un filtro de 32 kernels para tener un total de más de veinticinco mil neuronas que se convertirán en la primera capa oculta.

Enseguida se activa con la función ReLU que es una función que define la salida de un nodo al tener una o un conjunto de entrada (ecuación 4). ReLU esta definida donde x es la entrada de la neurona conocida como rampa siendo análoga a la rectificación de media onda electrónica.

𝑓 (𝑥) = 𝑚𝑎 𝑥 (0, 𝑥)

Ecuación 4. Función ReLU (Bagnato, 2018)

Al realizar la convolución en las imágenes de entrada se reduce la cantidad de matrices originadas utilizando el proceso de Subsampling. Usando la instrucción Max-Pooling con un tamaño de 2x2 reducirá a la mitad de tamaño las imágenes, conservando las características relevantes que cada filtro detectó (imagen 33). Como consecuencia reduce los recursos de

(42)

Imagen 33. Ejemplo de la representación gráfica del proceso de Max-Pooling (Max-Pooling, 2017).

En la primera capa convolucional se aplica un filtro de 32 kernel con tamaño de 3x3 y se activa la red (imagen 34). Se realiza con LeakyReLU es una variante de rectificador lineal ReLU, corrige la inactividad de algunas neuronas por medio del cambio de pendiente hacia la izquierda, extendiendo el rango de ReLU.

(43)

Imagen 34. Gráfica del funcionamiento de Leaky ReLU, modificando la pendiente a la izquierda x=0 (Sharma, Medium, 2018).

En resumen, la primera convolución que la red compiló se conformó de archivos de entrada, al elegir el conjunto de filtros (32), se genera el mapa de características y finaliza con la aplicación de subsampling (Max Pooling).

TAREA CAPAS CON FILTRO

1º: 32 2º: 64 3º: 128

Imagen de Entrada 449x696x3 224.5x348x3 112.25x174

Aplicación de Kernel 32 filtros (3x3) 64 filtros (3x3) 128 filtros (3x3) Mapa de Características 449x696x32 224.5x348x64 112.25x174x128

Max-Pooling 2x2 2x2 2x2

Salida: Convolución 224.5x348 112.25x174 56.13x87

Tabla 1. Tabla explicativa de dimensiones de matrices creadas al ingresar tres capas convolutivas neuronales con distinto filtros.

(44)

El paso final, es la conexión de las neuronas convolutivas con las neuronas tradicionales, aplanando las matrices para convertirlas a un valor bidimensional. Para ello se utiliza la función Softmax o función exponencial normalizada que en realidad es una generalización de la función logística que convierte registros a probabilidades dando una suma total de 1 (imagen35).

Imagen 35. Lámina de Udacity acerca de Softmax en el tema Deep Learning (Medium:

Understand the Softmax Function in Minutes, 2018).

Donde comprime un vector K-dimensional, y es igual a valores reales arbitrarios en un vector K- dimensional, P [y=j | θ^(i)], de valores reales en el rango [0, 1] (ecuación 5).

Ecuación 5. Representación matemática de la función de regresión Softmax (Medium: The Softmax Function, Simplified, Mahmood, 2018).

El algoritmo de retropropagación permite el aprendizaje y entrenamiento por medio de errores. También al tener un aprendizaje supervisado con las mismas etiquetas de entradas y de salida se pueden mejorar el valor de los pesos al interconectar capas neuronales que cuando se itera estos pesos se ajustan mediante los distintos kernel disponibles.

(45)

CAPÍTULO V METODOLOGÍA APLICADA Investigación

Se inicio con la revisión de clasificadores en los diversos foros de código abierto de Python usando la librería Keras para la creación de una red neuronal con el objetivo de clasificar imágenes sísmicas. Se escogió una estructura que permite crear diferentes etiquetas que se basan en clasificaciones con base en detalles del banco de imágenes preseleccionado.

Equipo y Herramientas

Se ejecutó el algoritmo en computadoras de escritorio con 8 y 16 de memoria RAM, con un procesador 3 GHz Intel Core i5.

Se instaló Anaconda, ya que es un gestor de paquetería, de entornos, distribuidor de ciencia de datos Python/R y una colección de más de 1.500 paquetes de código abierto (Anaconda, 2019). Siendo un software libre, se instaló directamente de la página de Anaconda. Para posteriormente instalar las librerías requeridas para correr el algoritmo de IA.

El compilador que se utilizó para estas pruebas fueron notebooks Jupyter de Anaconda con cuatro librerías igualmente de código abierto. Un Jupyter notebook es una aplicación web de código abierto que permite crear y compartir documentos que contienen código, visualizaciones, ecuaciones y texto. Este se crea a partir de un proyecto llamado IPython- Proyect sin fines de lucro en el año 2014. El cual ha evolucionado con el objetivo de brindar soporte y desarrollo a la ciencia computacional y de datos en todos los lenguajes de programación (Jupyter, 2019).

Las librerías que se utilizaron fueron cuatro: Numpy, Matplotlib, Sklearn y Keras (imagen 36).

Iniciando con la primera Numpy, es una extensión de Python que agrega mayor soporte al usar vectores y matrices con una biblioteca de funciones matemáticas de alto nivel. Escrito en Python y C, desarrollado por la comunidad, opera vectores o matrices (Numpy, 2019).

La segunda es Matplotlib es una librería que genera gráficos 2D de datos contenidos en listas o matrices en lenguaje de Python (Matplotlib, 2019).

Sklearn es una biblioteca de aprendizaje automático para operaciones en algoritmos de machine learning. Accesible para cualquiera en varios sectores y construido en NumPy, Scipy y Matplotlib. Se compone de código abierto, escrito en Python, Cython, C y C++

(Scikit-learn, 2019).

(46)

Finalmente, Keras es una biblioteca de código abierto escrita en Python de redes neuronales. Fue diseñada con el propósito de la experimentación con redes de aprendizaje profundo. Su lanzamiento fue el 27 de marzo del 2015, es capaz de correr sobre TensorFlow, CNTK o Theano (Keras, 2019).

Imagen 36. Logos de librerías que se usaron para la construcción de la red neuronal (Numpy, Matplotlib, Sklearn y Keras, 2019).

Algoritmo

Lo primero que se realizó fue llamar las carpetas que contienen los archivos diferenciando cada una con una etiqueta. Se nombraron de acuerdo con la estructura geológica que resalta más en ese grupo de imágenes. Por ello, en cada prueba se utilizaron distintas carpetas con diferentes cantidades de imágenes en cada una de ellas (imagen 37). Permitiendo obtener resultados con inputs del algoritmo.

Imagen 37. Conjunto de imágenes de una etiqueta que se guardan en una carpeta en específico.

Las carpetas se crean para que el algoritmo aprenda a detectar las diferentes estructuras geológicas ingresadas (imagen 38).

Domo Ingresa a

Folder

(47)

Imagen 38. Carpetas de etiquetas creadas.

El segundo paso es crear el set de entrenamiento, prueba, validación y reprocesamiento de los archivos de entrada. Esto consiste en mezclar todas las imágenes para permitirle al algoritmo crear grupos que entrenará y convertirá los archivos de entrada en lenguaje binario (one-hot encoding) con el que trabajará (imagen 39).

Imagen 39. Grupo de imágenes para entrenar al algoritmo.

El tercer paso es crear la red con la librería Keras donde se construye una red neuronal convolucional declarando tres constantes: el valor inicial de aprendizaje, pesos

Trampas Domo D Domo

N cantidad de etiquetas

Algoritmo

Set de Entrenamiento

(48)

Imagen 40. Gráfico de red neuronal.

Enseguida, se crea la primera capa convolucional de dos dimensiones donde se declara el tamaño de archivos de entrada que se ingresara. Se aplica un filtro de 32 kernel con tamaño de 3x3 y activando la red (LeakyReLU) para reducir la imagen de entrada la mitad conservando las mismas características. Es importante aplanar los 32 filtros, ya que derivada de la convolución, se requieren archivos bidimensionales para realizar la conexión a neuronas tradicionales compilarlas y así empezar el entrenamiento.

Finalmente se valida el valor en porcentaje de exactitud dentro del entrenamiento, para se muestran dos gráficos de la relación entre la exactitud de validación y entrenamiento. Para concluir revisamos cuales fueron las etiquetas que reconoció, para realizar los cambios pertinentes y mejorar el aprendizaje de la red.

(49)

Flujo de Trabajo

En síntesis el flujo de trabajo que realizó el algoritmo fue reconocer los archivos de entrada por medio de sus etiquetas, crear y entrenar la red neuronal convolucional para finalmente realizar la conexión de neuronas convolucionales con la capa tradicional de neuronas. Estos bloques representan en términos generales las actividades de las que se compone este trabajo (imagen 41).

Imagen 41. Flujo de trabajo del algoritmo clasificador.

Entrenamiento de CNN Creación de CNN Lectura y creación de

etiquetas

Análisis de Resultados de CNN

(50)

CAPÍTULO VI RESULTADOS Y DISCUSIÓN

Se realizaron alrededor de veinte pruebas donde se modificó la cantidad de etiquetas de cada clase de imágenes de entrada de la base de datos en jpg. A continuación, se mostrarán resultados de dos pruebas que obtuvieron el mayor porcentaje de exactitud al clasificar las diferentes clases de entrada. A estas dos pruebas les llamaremos prueba uno y prueba dos.

Prueba 1

El primero se constituye de un grupo de imágenes con 904 archivos jpg, con cinco clases (domo, horizontal, fallas, graben y entrampamientos). Su set de entrenamiento tuvo valor de 0.4 y como resultado de comparativa de dos imágenes del set donde la ground truth 2 fue de valor dos contra valor cuatro. Es importante mencionar que estos valores terrenos fueron los más altos valores obtenidos en todas las veinte pruebas (imagen 42).

Imagen 42. Valores de ground truth del primer set de entrenamiento del ejemplo número uno.

Esta prueba contiene una red neuronal de solo una capa usando filtros de valor treinta y dos con un tamaño de kernel de 3 X 3. Se uso para esta prueba la activación linear (imagen 43). Se entrenó con seis interacciones cada sesenta y cuatro imágenes.

Imagen 43. Línea de código donde se ingreso el filtro, tamaño de kernel y tipo de activación de única capa de la red neuronal de la prueba uno.

2Ground Truth se refiere a la precisión de las técnicas de clasificación del set de entrenamiento.

(51)

Su resultado fue un valor de entrenamiento de perdida del 119 % y un valor de entrenamiento de exactitud de 66% (imagen 44). Esto se comprobó al obtener los gráficos de entrenamiento contra exactitud de validación y de entrenamiento contra pérdida de validación (imagen 45).

Se observó que la tendencia de la función de validez es continua junto con los valores de exactitud de entrenamiento. Es la misma observación en el gráfico de valor de perdida de entrenamiento y la función de validación de perdida.

Imagen 44. Valor de prueba en perdida y exactitud de la red.

Imagen 45. Gráficos de entrenamiento y validez de exactitud y perdida de la red neuronal (ejemplo número uno).

(52)

Al realizar la comprobación se obtuvo que la red encontró 239 etiquetas correctas las cuales corresponden a imágenes de domo. Incorrectas encontró 122 donde estas clases fueron domo, fallas y entrampamientos. Igualmente, se obtuvo los valores de precisión la clase 2 (fallas) con 92% siendo el más alto valor seguido de la clase 1 (horizontal) con 82%, la clase 0 (domo) con un 60% de y las clases 3 y 4 (graben y entrampamientos) con 0% de precisión (imagen 46).

Imagen 46. Valores de precisión de las cinco clases de entrada ingresadas.

Prueba 2

El segundo se constituye de un set de imágenes de 954 con cuatro clases (depósitos y domo, depósitos, domo y entrampamientos). El valor de su set de entrenamiento fue de 0.8 y como resultado la comparativa de dos imágenes del set, donde la ground truth, fue de valor dos contra valor tres (imagen 47).

Imagen 47. Valores de ground truth del primer set de entrenamiento de la prueba número dos.

(53)

Esta prueba contiene una red neuronal de dos capas usando filtros de 32 y 64 de dimensión con un tamaño de kernel de 9 X 9. Se usó para esta prueba la activación sigmoid. Se entrenó con seis interacciones cada sesenta y cuatro imágenes (imagen 48).

Imagen 48. Lineas de código de las dos capas dentro de la red convolucional, con filtros de 32 y 64, kernel de 9X9 y con activación sigmoid.

Su resultado fue un valor de entrenamiento de perdida del 156% y un valor de entrenamiento de exactitud de 57% (imagen 49). Esto se comprobó al obtener los gráficos de entrenamiento contra exactitud de validación y de entrenamiento contra perdida de validación.

Imagen 49. Valor de prueba en perdida y exactitud de la red neuronal de la prueba número dos.

Se observó que la tendencia de la función de la validez de exactitud y los valores de exactitud de entrenamiento no fueron constantes. Igualmente se observa en el gráfico de valor de pérdida de entrenamiento y la función de validación de perdida (imagen 50).

(54)

Imagen 50. Gráficos de entrenamiento y validez de exactitud y perdida de la red neuronal (ejemplo numero dos).

En la comprobación se obtuvo que la red encontró 436 etiquetas correctas las cuales corresponden a imágenes de domo. Imágenes incorrectas encontró 328 donde estas clases fueron depósitos y domo, domo, fallas y entrampamientos. Igualmente, se obtuvo los valores de precisión siendo la clase 2 (domos) con valor de 57% de precisión siendo la única clase que la red pudo identificar (imagen 51).

Imagen 51. Valores de precisión de las cuatro clases de entrada ingresadas.

(55)

CONCLUSIONES Y RECOMENDACIONES

Conclusiones

Al realizar veinte pruebas con diferentes clases de entrada y características de la red neuronal se llegó a los dos mejores resultados. Estos fueron la prueba número uno y dos.

Las conclusiones son las siguientes:

La cantidad de clases es indistinta, la importancia son los archivos de entrada y el preprocesamiento que se aplica a cada una de ellas. Esto ayudará a la red a identificar geometría, por lo que las imágenes geofísicas deben de ser filtradas para resaltar el patrón en el que mayor interés tengamos.

La ground truth, en la prueba número uno, fue mayor que en la prueba número dos por solo un valor adicional. El primer set de entrenamiento tiene gran relevancia, brinda exactitud al modelo que se entrenará ya que al tener un valor menor o igual a tres es casi seguro que el porcentaje de exactitud será igual o menor a cincuenta porciento.

La cantidad de archivos de entrada es de gran relevancia pero no es un impedimento para correr un algoritmo de machine o deep learning. Todo depende del ajuste que se realice a los valores dentro de la red neuronal como la cantidad de filtros, el tamaño de kernel y el tipo de activación de las capas.

También, la cantidad de iteraciones que se realizan al entrenar al modelo son claves pero no aseguran que el aumento de estas brindara un porcentaje mayor o igual a setenta de exactitud de precisión del modelo.

El tamaño de kernel tampoco favoreció al aumento del porcentaje de exactitud al entrenar el modelo.

Las imágenes que contenían domos salinos mostraban una curvatura de tamaño regional dentro de la imagen la cual fue suficiente en las dos ocasiones para que la red con las dos ventanas y filtros diferentes fuera detectada. Las características regionales como entrampamientos no logró identificarlas brindando una precisión de cero porciento.

Este algoritmo se ejecutó en una computadora con 8 GB de RAM por lo que se considera una red casera de machine learning. Ejemplos como este abundan en la red por lo que es posible brindar información y asesoramiento de los diferentes lenguajes de programación especificando sus características y el potencial de cada una. Siendo Python una herramienta

(56)

Finalmente, la clave radica en el set de entrenamiento, mientras más resaltemos las características de cada clave con filtros y preprocesamiento se podrá mejorar el porcentaje de exactitud. El aumentar filtros o capas profundas a la red neuronal no necesariamente estamos perfeccionando el modelo. Todo está basado en ajustar los parámetro con base en el tipo de banco de datos imágenes con los que se cuenta.

El conocimiento computacional es esencial para las carreras de geociencias. Aun más cuando existe demanda continua de estas habilidades que carece la mayoría de estudiantes y egresados. Este trabajo se considera un ejercicio viable para el aprendizaje dentro del aula universitaria, que incentiva el desarrollo dentro del área de programación.

Recomendaciones

Se propone recortar el marco negro de las imágenes al igual que crear carpetas con imágenes solo del artefacto o rasgo geológico a identificar por la red. Esto con el propósito de eliminar ruido, Durante el aprendizaje y aumentar la precisión de aprendizaje de los patrones objetivos a identificar.

Se sugiere que los parámetros se ajusten acorde a la cantidad total de archivos que se tenga y a sus dimensiones. El aumento de interaciones ayudará al modelo a reconocer mejor las características deseadas. Se recomienda correr el algoritmo en un clúster para disminuir el tiempo que tarda el entrenamiento en correr.

Se propone que programación sea parte esencial de la carrera de Geofísica con ejemplos didácticos que ayuden visualmente a entender temas esenciales que son aplicados en la industria, como es el caso de los estudios sísmicos marítimos. Esto aumentara el número de profesionistas interesados en programar soluciones basadas en automatizaciones relacionadas al flujo de trabajo de la prospección de hidrocarburo

(57)

REFERENCIAS Y BIBLIOGRAFÍA REFERENCIAS

IMÁGENES

Imagen 1. Diagrama de Venn que representa una de varias definiciones que componen a la Inteligente Artificial (grokking Deep Learning, Trask, 2019). Pág. 5

Imagen 2. Diagrama traducido de como funciona el Aprendizaje Supervisado con información conocida y obteniendo como resultado datos que querías saber inicialmente (grokking Deep Learning, Trask, 2019). Pág. 7

Imagen 3. Ejemplo de predicción del Precio de un automóvil. Se ingresan los atributos (Año de fabricación, Marca del automóvil y kilometraje, se crea el modelo (recuadro verde) para finalmente obtener un precio predicho del automóvil. Pág. 7

Imagen 4. Ejemplo gráfico de un aprendizaje supervisado paramétrico (grokking Deep Learning, Trask, 2019). Pág. 8

Imagen 5. Ejemplo de un modelo no paramétrico que podría contar el número de veces que un color particular de la luz del semáforo de la calle hace que los coches "se muevan” (grokking Deep Learning, Trask, 2019). Pág. 9

Imagen 6. Ejemplo gráfico de un aprendizaje supervisado no paramétrico: En el conjunto de datos, se identifican tres grupos (group 1, 2 and 3). Mostrando un mayor porcentaje en el grupo 1 (grokking Deep Learning, Trask, 2019). Pág. 10

Imagen 7. Ejemplo: Aunque al algoritmo no se le indico los nombres de la información de entrada puedes saber que información saliente has obtenido siendo las respuestas 1==bonito y 2==

delicioso. Pág. 11

Imagen 8. Subcategorías en Inteligencia Artifical (Deep Learning for Computer Vision, Rosebrock, 2017). Pág. 12

Imagen 9. Anatomía de una neurona (Significados, 2018). Pág. 13

Imagen 10. Los nodos, bordes/pesos y suma/función de activación de una red neuronal básica (grokking Deep Learning, Trask, 2019). Pág. 14

Imagen 11. Diagramas de flujo muestra la diferencia entre Machine Learning y Deep Learning

(58)

Imagen 12. Las tres capas generales de una red neuronal. (grokking Deep Learning, Trask, 2019). Pág. 16

Imagen 13. Reconocimiento facial usando deep learning (Kdnuggets, 2018). Pág. 17

Imagen 14. Función Espiga de entrada (Input) que pasa por el filtro y obtiene un impulso de respuesta (output) (Yilmaz, 1987). Pág. 18

Imagen 15. Derecha imagen de entrada con valores para la matriz de convolución. Izquierda kernel obtenido de la imagen de entrada (Bagnato, Aprendiendo Machine Learning, 2018). Pág.

19

Imagen 16. Matriz de salida al aplicar Max Pooling de dimensiones 2x2 (Bagnato, Aprendiendo Machine Learning, 2018). Pág. 20

Imagen 17. Tareas que se realizan al compilar la segunda convolución dentro de la red neuronal (Bagnato, Aprendiendo Machine Learning, 2018). Pág. 21

Imagen 18. Tareas que se realizan al compilar la primera convolución dentro de la red neuronal (Bagnato, Aprendiendo Machine Learning, 2018). Pág. 21

Imagen 19. Arquitectura de una CNN. (Bagnato, Aprendiendo Machine Learning, 2018). Pág. 22

Imagen 20. Izquierda: El espacio del color RGB es aditivo. Mientras más rojo, verde y azul se combine se llegará al color blanco. Derecha: Cubo RGB (Deep Learning for Computer Vision, Rosebrock, 2017). Pág. 23

Imagen 21. Arquitectura de una CNN. (Bagnato, Aprendiendo Machine Learning, 2018). Pág. 23

Imagen 22. Mapas de Terra Nubis de la localización del bloque F3 en el Mar del Norte (TerraNubis, 2018). Pág. 24

Imagen 23. Mapas interactivo de Terra Nubis de la localización del bloque F3 en el Mar del Norte entre los demás bloques de estudios sísmicos del área.1) Bloque F3 localizado en el mar del Norte, 2) Bloque F3 con etiqueta de sísmica 3D. Pág. 25

Imagen 24. Imagen sísmica in-line del bloque F3 en el Mar del Norte clasificada con la etiqueta Domo. Pág. 26

Imagen 25. Sísmica cross-line del bloque F3 en el Mar del Norte clasificada con la etiqueta D Domo (Doble Domo). Pág. 27

Imagen 26. Sísmica in-line del bloque F3 en el Mar del Norte clasificada con la etiqueta Depósitos. Pág. 27

(59)

Imagen 27. Sísmica in-line del bloque F3 en el Mar del Norte clasificada con la etiqueta Trampas.

Pág. 28

Imagen 28. Sísmica in-line del bloque F3 en el Mar del Norte clasificada con la etiqueta Fallas.

Pág. 28

Imagen 29. Sísmica cross-line del bloque F3 en el Mar del Norte clasificada con la etiqueta Dep (Depósitos) y Domo. Pág. 29

Imagen 30. Vista 1: Cubo sísmico cross-line del bloque F3 en el Mar del Norte clasificada con la etiqueta Dep (Depósitos) y Domo. Pág. 29

Imagen 31. Vista 2: Cubo sísmico cross-line del bloque F3 en el Mar del Norte clasificada con la etiqueta Dep (Depósitos) y Domo. Pág. 20

Imagen 32. Información de salida de conversión a lenguaje one-hot encoding (Bagnato, 2018).

Pág. 31

Imagen 33. Ejemplo de la representación gráfica del proceso de Max-Pooling (Max-Pooling, 2017). Pág. 32

Imagen 34. Gráfica del funcionamiento de Leaky ReLU, modificando la pendiente a la izquierda x=0 (Sharma, Medium, 2018). Pág. 33

Imagen 35. Lámina de Udacity acerca de Softmax en el tema Deep Learning (Medium:

Understand the Softmax Function in Minutes, 2018). Pág. 34

Imagen 36. Logos de librerías que se usaron para la construcción de la red neuronal (Numpy, Matplotlib, Sklearn y Keras, 2019). Pág. 36

Imagen 37. Conjunto de imágenes de una etiqueta que se guardan en una carpeta en especifico.

Pág. 36

Imagen 38. Carpetas de etiquetas creadas. Pág. 37

Imagen 39. Grupo de imágenes para entrenar al algoritmo. Pág. 37

Imagen 40. Gráfico de red neuronal. Pág. 38

Imagen 41. Flujo de trabajo del algoritmo clasificador. Pág. 39

Referencias

Documento similar

Los datos que sirven para el entrenamiento de los modelos de Deep Learning en este caso están formados por una componente que son los datos de entrada, es decir el texto con

[r]

[r]

La invalidez en el MMPI por no respuestas no se considera criterio positivo (sólo se puede considerar tal posibilidad en caso de daño neurológico que justifique tal estilo

"Lázaro Cárdenas" y sus estacionamientos instalados por la Dirección de Publicaciones durante la Feria Internacional del Libro del Instituto Politécnico Nacional

Comunicación presentada en las V Jornadas Interdisciplinares: Estudios de Género en el Aula: Historia, Cultura visual e Historia del Arte, Málaga, España.. ¿Qué sería de

Pero antes hay que responder a una encuesta (puedes intentar saltarte este paso, a veces funciona). ¡Haz clic aquí!.. En el segundo punto, hay que seleccionar “Sección de titulaciones

El contar con el financiamiento institucional a través de las cátedras ha significado para los grupos de profesores, el poder centrarse en estudios sobre áreas de interés