Zum Inhalt

AI-FaultINT-CNN

AI based fault interpretation for an unbiased description of geothermal reservoirs

Programm / Ausschreibung Digitale Technologien, Digitale Technologien, Digitale Schlüsseltechnologien: Ausschreibung 2022 Status abgeschlossen
Projektstart 17.07.2023 Projektende 16.07.2024
Zeitraum 2023 - 2024 Projektlaufzeit 13 Monate
Keywords Fault interpretation; Geothermal; CNN; Machine Learning

Projektbeschreibung

Die Diversifizierung der Energieversorgung und die Erzeugung sauberer Energie sind die wichtigsten Themen, um den Energieplan der Europäischen Union für 2030 zu erreichen. Eine Möglichkeit, die Wärmeversorgung zu diversifizieren und gleichzeitig saubere Energie zu produzieren, ist die Nutzung von Geothermie. Geothermische Lagerstätten können anhand seismischer 3D-Daten charakterisiert werden. Diese Charakterisierung umfasst die manuelle Interpretation der Horizonte und Störungen, die typischerweise in einem bestimmten Raster durchgeführt werden. Die Störungsinterpretation ist eine sehr zeitintensive Aufgabe und beinhaltet auch einen subjektiven Einfluss des Interpreten. Um den subjektiven Einfluss des Interpreters zu minimieren und den Zeitaufwand für ein seismisches Interpretationsprojekt zu reduzieren, möchten wir einen Deep-Learning-Ansatz (Convolutional Neural Network, CNN) für die automatische Störungsinterpretation verwenden. Das CNN wird mit synthetischen Daten trainiert, wobei verschiedene CNN-Architekturen untersucht und ein Ranking dieser Architekturen erstellt werden soll. Darüber hinaus wollen wir einen Transfer-Learning-Ansatz für die Nutzung des CNN an realen seismischen Daten testen. Abhängig von diesen Ergebnissen würden wir dann entscheiden, ob wir gemeinsam mit anderen Partnern ein Folgeforschungsprojekt einreichen oder nicht.

Abstract

Diversification of energy supply and production of clean energy are the most important issues to achieve the European Union’s energy plan for 2030. One possibility to diversify heat supply and on the same time produce clean energy is the usage of geothermal power. Geothermal reservoirs can be characterized using 3D seismic data. This characterization involves the manual tasks of horizon and fault interpretation, typically done a specific layout. Fault interpretation is a very laborious task and it also integrates a subjective bias caused by the interpreter. To overcome the subjective bias of the interpreter and to reduce the time needed for a seismic interpretation project, we would like to use a deep learning approach (convolutional neural network, CNN) for automatic fault interpretation. The CNN will be trained on synthetic data, whereas different CNN architectures should be investigated and a ranking of these architectures be made. In addition, we want to test a transfer learning approach for the utilization of the CNN on real seismic data. Depending on these results we would then decide whether to submit a follow-up research project together with other partners or not.

Endberichtkurzfassung

Diversification of energy supply and production of clean energy are the most important issues to achieve the European Union’s energy plan for 2030. One possibility to diversify heat supply and on the same time produce clean energy is the usage of geothermal power. Geothermal reservoirs can be characterized using 3D seismic data. This characterization involves the manual tasks of horizon and fault interpretation, typically done a specific layout. Fault interpretation is a very laborious task and it also integrates a subjective bias caused by the interpreter. To overcome the subjective bias of the interpreter and to reduce the time needed for a seismic interpretation project a deep learning approach for automatic fault interpretation can be used.

For the training of the convolutional neural networks it is important to minimize an interpretation bias. Therefore, we used synthetic data for training. Synthetic data has clearly defined fault planes, and it is possible to set the level of noise in the data. In this research project the first part was to create three different geological models, which were then forward modeled to create synthetic seismic data. The workflow for the generation of zero-offset seismic consists first of creation of structural geological models. Then the structural geological model is layered and petrophysical properties are inserted in this model and spatially distributed. In this context we speak mainly of velocity and density distributions of the modelled sediment formations. For the first model, we distributed the velocities and densities in a very uniform way (layer-cake) and the model had no noise level on it. In the second and third model, on the one hand the complexity of the structural model was increased, and on the other hand also a certain level of noise was added to the data. After this step, we computed the acoustic impedance for each cell. This acoustic impedance is then used together with a simple Ricker-wavelet to determine finally a synthetic zero-offset seismic cube. Based on these 3D seismic cubes we then extracted multiple 2D arbitrary seismic sections and used them together with the fault model for training of our CNN networks.

In the second work package we focused on principals of CNNs and their application in various fields but with a focus on seismic interpretation. As a first step we conducted a literature study on application of convolutional neural networks (CNN). First, we tried to get a systematic overview on this topic by examining various articles of different professions. Based on the results of the literature study a first simplified matrix on CNN algorithms and their applications was created. As our main goal of this research project is to develop a workflow for automatic fault interpretation, we then focused on CNN applications for seismic data.

Based on the matrix from our literature study we decided that the UNet architecture is the most promising starting point for our practical study. UNet architectures proved to be an efficient method for image segmentation and have the potential for a good generalization probability. Additionally, it is the base for most currently used architectures for image segmentation and therefore in contrast to most other methods, good documentation of previous work done by other research groups is available. For the training of our CNNs we used the 2D images derived from our models. Based on our 3D models, we could extract hundreds of arbitrary 2D seismic sections and interpretation results. But in the course of this research project we found out that this was still too little training data for developing a stable CNN for fault interpretation. Therefore, we also included publically available training data in our workflow to optimize the training and validation. Although our first model was quite pure, it already led to good results on the test data. After thatanother UNet was set up with the addition of a so-called batch normalization. This works by subtracting the batch mean and dividing it by the batch standard deviation of every output of the previous activation layer. This normalization allows a higher learning speed by reducing internal covariate shifts and smoothing the loss function. Additionally, it helps to prevent overfitting through regularization of the model. The model was trained with the same data for better comparison. As a third model, we tested and finally added customized dropout layers to the network. The aim of using these dropout layers was to tackle the problem of overfitting as seen in the binary accuracy diagrams of the base UNet and the UNet with batch normalization. The problem with networks trying too hard to learn different features from the test data is the possibility that statistical noise is seen as a feature of the dataset, and this is a danger of manifestation in every training step. It prevents Units in the network from co-adapting and is forced to take the input by a more probabilistic approach. We studied the logs of all three models and first compared the data for binary accuracy. The UNet with batch normalization was fastest at achieving nearly its top value of binary accuracy after around only two training epochs. So, the learning rate was much higher at the beginning in comparison to the other models. The UNet with dropout layers had the smallest deviation between the values of binary accuracy from the training and validation log. In comparison to the other models, it had the least overfit on the training data. In the logs, for value loss, we found that the base model overfitted at most. Again, the UNet with dropout layers had the best result considering the overfitting problem. Learning Speed and efficiency, as shown by the log results from the UNet with batch normalization, are important but not at the expense of overfitting. The UNet with dropout layers trumps the others overall.

In the final work package, we did first tests on transfer learning by adjusting our previously trained UNets to interpretation of real seismic data. The goal was to determine whether it is possible to enhance automatic seismic fault interpretation based on networks trained on synthetic data by integrating manual seismic interpretation, or not. In general, transfer learning is the process of adopting already trained networks to new tasks with new input. In our case, the networks are trained on synthetic data, which has the advantage that it is bias free. This network can then be used to predict geological faults in seismic data. Due to the differences in seismic quality and different geological settings, the trained networks can fail in certain areas and have poor predictability for faults. With transfer learning the goal is to slightly adjust the previously learned algorithm by manually interpreted a small amount of the new seismic data and add this to the training process. With this approach the algorithm should learn how to scope with this new data, but with the disadvantage that interpretation bias might be incorporated into the network.

Our goals for using transfer learning now and in the future have been to save time and resources, improve the model. Our synthetic trained models needed some decent time for training completion. After a model is trained with a large amount of synthetic data, it is possible to start with the trained model and refine it with real seismic data. It is unnecessary to retrain it from scratch every other time if the data looks different. In addition to a more efficient use of time and resources, we saw potential to improve the model performance after refinement with real data through transfer learning. We manually interpreted a couple of seismic sections to fine tune our UNet. After training and refining the model with a decent amount of real data, it seemed to offer better results.

Based on this initial research project on this topic we want to further investigate the application of CNNs and especially transfer learning for automatic fault interpretation. Nevertheless, we saw in the course of this project that our approach for creating synthetic seismic data is on the one hand too time consuming, and on the other hand we couldn't create a sufficient amount of training data with this current approach. Therefore, it is planned to create an automatic workflow for synthetic data generation based on GANs in the future.