An example of predicting bulk density (RHOB) with Keras and illustrating impacts of normalisation on prediction results
Large amounts of data are acquired daily from wells around the world. However, the quality of that data can vary significantly from missing data to data impacted by sensor failure and borehole conditions. This can have knock-on consequences on other parts of a subsurface project, such as delays and inaccurate assumptions and conclusions.
As missing data is one of the most common issues we face with well log data quality, numerous methods and techniques have been developed to estimate values and fill in the gaps. This includes the application of machine learning technology — which has increased in popularity over the past few decades with libraries such as TensorFlow and PyTorch.
In this tutorial, we will be using Keras, which is a high-level neural networks API that runs on top of TensorFlow. We will use it to illustrate the process of building a machine-learning model to allow predictions of bulk density (RHOB). This is a commonly acquired logging measurement, however, it can be significantly impacted by bad hole conditions or, in some cases, tools can fail, resulting in no measurements over key intervals.
We will start with a very simple model, that does not account for normalising the inputs, a common step in the machine learning workflow. Then, we will then build a second model with normalised inputs and illustrate its impact on the final prediction result.
The first step in this tutorial is to import the libraries we will be working with.
For this tutorial, we need 4 libraries:
These are imported as follows:
import pandas as pd
from…