WO2020222879A1 - Hybrid neural network and autoencoder - Google Patents
Hybrid neural network and autoencoder Download PDFInfo
- Publication number
- WO2020222879A1 WO2020222879A1 PCT/US2019/066621 US2019066621W WO2020222879A1 WO 2020222879 A1 WO2020222879 A1 WO 2020222879A1 US 2019066621 W US2019066621 W US 2019066621W WO 2020222879 A1 WO2020222879 A1 WO 2020222879A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- sensor data
- reduced
- autoencoder
- noise
- physics
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/55—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
- G06N3/0455—Auto-encoder networks; Encoder-decoder networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/049—Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0499—Feedforward networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/09—Supervised learning
Definitions
- the disclosure generally relates to the field of data processing, and to modeling, design, simulation, or emulation.
- an autoencoder is a neural network that receives sensor data as input values, encodes the input values in a reduced form using a learned encoding, and then decodes the encoded input values to generate reduced-noise sensor data as its output.
- Figure 1 is an example conceptual diagram of denoising sensor data using an autoencoder which was trained with output of a physics-informed deep neural network (PDNN).
- PDNN physics-informed deep neural network
- Figure 2 is an example conceptual diagram of denoising sensor data using a trained PDNN and a trained autoencoder.
- Figure 3 depicts a flowchart of example operations for training a PDNN and an autoencoder to denoise sensor data, where the autoencoder is trained based on the output of the PDNN.
- Figure 4 depicts a flowchart of example operations for training a deep neural network which incorporates a physics-based model over a series of timesteps to generate a PDNN.
- Figure 5 depicts a flowchart of example operations for denoising sensor data with an autoencoder which was trained with reduced-noise sensor data output from a PDNN during training of the PDNN.
- Figure 6 depicts a flowchart of example operations for denoising sensor data using a trained PDNN and a trained autoencoder.
- Figure 7 depicts an example plot of sensor data output by a sensor.
- Figure 8 depicts an example plot comparing sensor data and reduced-noise sensor data using a PDNN.
- Figure 9 depicts an example plot comparing actual sensor data with reconstructed reduced-noise sensor data as determined by an autoencoder which was trained with reduced- noise sensor data output from a PDNN during training.
- Figure 10 is an elevation view of a drilling system.
- Figure 11 is an elevation view of a wireline system.
- Figure 12 depicts an example computer system with a physics-based network trainer and a sensor data noise reduction system.
- a physics-influenced deep neural network (PDNN) model or a deep neural network incorporating a physics-based cost function, can be used to efficiently denoise sensor data.
- the PDNN model can output a clean/denoised version of input sensor data containing noise more efficiently than, for example, using a wavelet or a Fourier series-based method.
- noisy sensor data is used as training data input to a deep neural network and training output is valuated with a cost function that incorporates one or more physics-based models.
- the PDNN model can quantitatively differentiate between different physical processes and can also further distinguish the presence of physical phenomena that are of relevance to an operation from irrelevant processes and system noise. Incorporating physics into the PDNN model rather than utilizing a purely data-based approach improves the predictive model of the PDNN for generating a reduced-noise representation of sensor data.
- an autoencoder can be coupled to the PDNN model.
- the autoencoder can be trained with the reduced-noise sensor data which is output from the PDNN during training of the PDNN.
- the input data which the autoencoder is trained to reconstruct is preprocessed, reduced-noise sensor data rather than the raw sensor data.
- the trained autoencoder can thus effectively denoise raw sensor data by reconstructing the reduced-noise sensor data from the raw sensor data received as input.
- a denoising autoencoder trained on a separate set of sensor data i.e., data that was not output from the PDNN during training
- the autoencoder can also detect outliers in the sensor data based on the reconstructed reduced-noise sensor data which it generates.
- Denoising sensor data by leveraging an autoencoder which is influenced by the physics of the underlying domain based on the incorporation of the physics-based model in the PDNN, which can be coupled to the autoencoder either during training or during use, facilitates accurate and efficient denoising of sensor data and detection of outliers.
- Figure 1 is an example conceptual diagram of denoising sensor data using an autoencoder which was trained with output of a PDNN.
- the PDNN is a deep neural network which incorporates a physics-based model for determining reduced-noise sensor data, where the physics-based model is also included in the cost function used to evaluate the output of the PDNN during training.
- Figure 1 depicts a training system 102 and an autoencoder production system 122.
- the training system 102 includes a physics-based network trainer (“network trainer”) 120.
- the network trainer 120 trains a deep neural network 110 with a physics-based cost function to generate the PDNN (hereinafter the“PDNN 110”).
- the PDNN 110 can include any number of layers, which may be dense layers, convolutional layers, pooling layers, normalization layers, etc.
- the network trainer 120 also trains an autoencoder 111.
- the autoencoder 111 can be a denoising autoencoder which comprises any number of dense layers for encoding and decoding.
- the network trainer 120 uses sensor data 104 captured during a downhole hydrocarbon recovery operation for training the PDNN 110.
- the network trainer 120 trains the autoencoder 111 with the output of the PDNN 110 which is produced during training to generate a trained autoencoder 126.
- the trained autoencoder 126 is deployed to a sensor data noise reduction system 132 of the autoencoder production system 122.
- the training system 102 obtains the sensor data 104 collected during a hydrocarbon recovery operation.
- the sensor data 104 may include fluid velocity data, pressure data, temperature data, fluid viscosity data, fluid density data, weight on bit data, drill bit rotational velocity data, etc.
- the sensor data 104 may be retrieved by the training system 102 or communicated to the training system 102 (e.g., by downhole components coupled to sensors of a drilling system).
- the network trainer 120 can train the PDNN 110 with a subset of sensor data 104, such as a training set 108 of the sensor data 104 (“sensor data 108”).
- a converter 106 may be used to convert the sensor data 104 and/or the sensor data 108 to a normalized form prior to training the PDNN 110.
- the converter 106 can be used to convert floating point data to a normalized value ranging from 0 to 1.
- the network trainer 120 can use any training method to train the PDNN 110. For instance, the network trainer 120 can train the PDNN 110 using backpropagation.
- the PDNN 110 evaluates reduced-noise sensor data 109 output during training with a cost function which incorporates a physics-based model.
- a physics-based model can be incorporated in the cost function used to evaluate output of the PDNN 110 because a physics-based model is similar to a regularization component which may conventionally be used to evaluate output of a deep neural network during training.
- the physics-based cost function can be represented as shown in Equation 1, where C represents a cost function value, P represents a solution to a physics- based model, and D represents a data-based value.
- the cost function used for evaluating output of the PDNN 110 can be represented as depicted below in Equation 2, where the physics-based model f(z) is a differentiable physics-based function, l is multiplier value that can be similar to or equal to a Lagrange multiplier, z is any value or set of values based on output from a sensor (i.e., the sensor data 108), y represents reduced-noise sensor data (e.g., the reduced-noise sensor data 109), and W represents the domain space on which z is defined.
- the physics-based function f(z) can be a physics-based model in the oil and gas domain. Examples of physics-based models which can be incorporated as the physics-based function f(z) include Burger’s equation, Darcy’s law, and a hydraulic fracturing model equation.
- the PDNN 110 determines values of the reduced-noise sensor data which minimize a noise component of the sensor data 108.
- the reduced-noise sensor data 109 can be determined by solving the partial differential equation (PDE) corresponding to Equation 2 through constrained optimization as a function of space x and time t with the initial condition y(x, 0) and boundary conditions y(0,f) and y(L,t) placed on y.
- PDE partial differential equation
- This minimization of the noise component can be represented with the constrained optimization problem for cost function minimization represented by Equation 3, where Z3 ⁇ 4 (y) represents a cumulative value of E(y) over the domain space W.
- Equation 3 is subject to a noise constraint which is represented by Equation 4, where s is a variance value, y— z is an error with the prescribed noise value, and ⁇ y— z ⁇ 2 represents a mean square error value.
- the PDNN 110 can solve Equation 3 as constrained by the noise constraint represented in Equation 4 using any one or more optimization techniques, such as gradient descent, simulated annealing, Bayesian optimization, genetic algorithms, etc.
- the reduced-noise sensor data 109, or v. is recovered as the solution to Equation 3 as constrained by Equation 4.
- the multiplier l can be changed to control the quantitative effect on the cost function value E(y) which the physics-based function f(z) has relative to the data-driven value y - z. As the value of l increases, the effect of the physics-based function f(z) increases in dominance and can play a greater role in filtering for the minimization.
- the physics-based network trainer 120 can train the PDNN 110 iteratively based on evaluation of the reduced-noise sensor data 109 by using the physics-based cost function represented in Equation 2. For instance, the PDNN 110 may establish a cost value threshold. If the value of the physics-based cost function calculated based on one or more sensor data 108 inputs and reduced-noise sensor data 109 outputs exceeds the threshold, the weights associated with neuron connections of the PDNN 110 can be adjusted before re-computing the reduced- noise sensor data 109 outputs. Training of the PDNN 110 can advance to the next set of one or more sensor data 108 inputs based on the value of the physics-based cost function satisfying the cost value threshold. The physics-based network trainer 120 can then pass the reduced-noise sensor data 109 to the autoencoder 111 for training.
- the network trainer 120 trains the autoencoder 111 with the reduced-noise sensor data
- the network trainer 120 can train the autoencoder 111 after the PDNN 110 has been trained or during training of the PDNN 110. For instance, the network trainer 120 can train the PDNN 110 until each data point of the reduced-noise sensor data 109 has been obtained before training the autoencoder 111 with the reduced-noise sensor data 109. Alternatively, the network trainer 120 can train the autoencoder 111 as the reduced-noise sensor data 109 output from the PDNN 110 is obtained, where the training of the PDNN 110 and adjustment of neuron connection weights of the PDNN
- the network trainer 120 can thus train the autoencoder 111 and the PDNN 110“simultaneously.”
- the autoencoder 111 receives the reduced-noise sensor data 109 at an input layer and applies one or more encode layers to the reduced-noise sensor data to result in an encoded representation of the reduced-noise sensor data 109.
- the autoencoder 111 then applies one or more decode layers to the encoded representation of the reduced-noise sensor data 109 to produce decoded reduced-noise sensor data.
- the autoencoder 111 generates reconstructed reduced-noise sensor data 128 based on the decoded reduced-noise sensor data, where the reconstructed reduced-noise sensor data 128 is the output of the autoencoder 111 during training.
- the autoencoder 111 can leverage any cost function for evaluating the reconstructed reduced-noise sensor data 128 output during training to determine if weights of neuron connections between encode and decode layers should be adjusted. For instance, the autoencoder 111 can use a mean squared error cost function.
- the network trainer can leverage any cost function for evaluating the reconstructed reduced-noise sensor data 128 output during training to determine if weights of neuron connections between encode and decode layers should be adjusted. For instance, the autoencoder 111 can use a mean squared error cost function.
- the 120 can train the autoencoder 111 on the reduced-noise sensor data 109 until the autoencoder 111 satisfies one or more training criteria, such as a cost threshold enforced for the reconstructed reduced-noise sensor data 128 output by the autoencoder 111.
- one or more training criteria such as a cost threshold enforced for the reconstructed reduced-noise sensor data 128 output by the autoencoder 111.
- the trained autoencoder 126 is used to denoise sensor data 121, where the sensor data
- the reconstructed reduced-noise sensor data 124 is a reduced-noise representation of the sensor data 121 which the trained autoencoder 126 reconstructs based on the reduced-noise sensor data 109 on which the trained autoencoder 126 learned.
- the trained autoencoder 126 Because the trained autoencoder 126 was trained with the reduced-noise sensor data 109 output from the PDN 110, the trained autoencoder 126“maps” the sensor data 121 to a reduced-noise representation corresponding to the reduced-noise sensor data 109 when reconstructing the sensor data 121 to produce the reconstructed reduced-noise sensor data 124.
- the trained autoencoder 126 can also detect outliers 130 based on the reconstructed reduced-noise sensor data 124.
- the trained autoencoder 126 can detect the outliers 130 by comparing the sensor data 121 with the reconstructed reduced-noise sensor data 124. For instance, the trained autoencoder 126 may compare each data point of the reconstructed reduced- noise sensor data 124 which it generates with the corresponding data point of the sensor data 121 to determine if a difference between the data points exceeds a reconstruction difference threshold. If the difference exceeds the reconstruction difference threshold, the trained autoencoder 126 indicates that the data point of the sensor data 121 and/or the reconstructed reduced-noise sensor data 124 is as an outlier.
- the trained autoencoder 126 may indicate after generating a reconstructed reduced-noise sensor data point that the data point is an outlier.
- the sensor data noise reduction system 132 can then associate a label or tag with the data point in the sensor data 121 and/or the reconstructed reduced-noise sensor data 124 which indicates that the sensor data point is an outlier.
- a normalized value of a fluid velocity in the sensor data 121 may have a value of [0.53]
- a corresponding reconstructed fluid velocity value in the reconstructed reduced-noise sensor data 124 may have a value of [0.69] If a reconstruction difference threshold is established as 0.1, then the trained autoencoder 126 can indicate the fluid velocity value is an outlier.
- the sensor data noise reduction system 132 may discard the outliers 130 from the sensor data 121 and/or the reconstructed reduced-noise sensor data 124, exclude the outliers 130 from the sensor data 121 and/or the set of reconstructed reduced-noise sensor data 124 generated from use of the trained autoencoder 126, etc.
- FIG. 2 is an example conceptual diagram of denoising sensor data using a trained PDNN and a trained autoencoder.
- the network trainer 120 trains the PDNN 110 to denoise sensor data 108, where the PDNN 110 leverages a physics-based model and a physics-based cost function which incorporates the physics-based model.
- the PDNN 110 generates and outputs reduced-noise sensor data 109.
- Training the PDNN 110 with the sensor data 108 generates a trained PDNN 216 which is deployed to a PDNN production system 212.
- the reduced-noise sensor data 109 output during training of the PDNN 110 is not input to an autoencoder for training.
- Figure 2 depicts an example in which a trained autoencoder 226 was trained using a data set different from the reduced-noise sensor data 109.
- the trained autoencoder 226 may have been trained with a subset of the sensor data 104, such as the sensor data 108, or with a different set of sensor data.
- the operations subsequently described occur after the PDNN 110 has been trained based on evaluation of a physics-based cost function as described in reference to Figure 1 and deployed to the PDNN production system 212 as the trained PDNN 216.
- the trained PDNN 216 of the PDNN production system 212 receives sensor data 214 as input.
- the sensor data 214 may be, for example, a subset of the sensor data 104.
- the trained PDNN 216 incorporates an optimal set of weights for the neuron connections which were determined based on solving the constrained optimization problem represented above as Equations 3 and 4 to generate the reduced-noise sensor data 109 during training of the PDNN 110, where the PDNN 110 evaluated the reduced-noise sensor data 109 based on valuation of the physics-based cost function represented above as Equation 2.
- the trained PDNN 216 generates reduced-noise sensor data 218 from the sensor data 214 (i.e., by determining a solution to the constrained optimization problem), which is the output of the PDNN 216.
- the reduced-noise sensor data 218 is then passed to the autoencoder production system 122 and used as input to the trained autoencoder 226 of the sensor data noise reduction system 132.
- An input layer of the trained autoencoder 226 receives the reduced-noise sensor data 218.
- the trained autoencoder 226 applies one or more encode and decode layers to the reduced-noise sensor data 218 to generate reconstructed reduced-noise sensor data 224 as similarly described in reference to Figure 1.
- the reconstructed reduced-noise sensor data 224 is the output from the trained autoencoder 226.
- the trained autoencoder 226 can detect outliers 230 based on the reconstructed reduced-noise sensor data 224.
- the trained autoencoder 226 can detect the outliers 230 by comparing the sensor data 214 with the reconstructed reduced-noise sensor data 224. For instance, the trained autoencoder 226 may compare each data point of the reconstructed reduced-noise sensor data 224 which it generates with a corresponding data point from the sensor data 214 to determine if a difference between the data points exceeds a reconstruction difference threshold. If the difference exceeds the reconstruction difference threshold, the trained autoencoder 226 indicates that the data point has been identified as an outlier.
- the trained autoencoder 226 may indicate after generating a reconstructed reduced-noise sensor data point that the data point is an outlier.
- the sensor data noise reduction system 132 can then associate a label or tag with the data point in the sensor data 214 and/or the reconstructed reduced-noise sensor data 224 which indicates that the sensor data point is an outlier.
- the sensor data noise reduction system 132 may discard the outliers 230 from the sensor data 214 and/or reconstructed reduced-noise sensor data 224, exclude the outliers 230 from the sensor data 214 and/or the set of reconstructed reduced-noise sensor data 224 which ultimately results from use of the trained autoencoder 226, etc.
- Figure 3 depicts a flowchart of example operations for training a PDNN and an autoencoder to denoise sensor data, where the autoencoder is trained based on the output of the PDNN.
- the PDNN is a deep neural network which incorporates a physics-based cost function based on which the PDNN evaluates reduced-noise sensor data which it generates, where the deep neural network is“transformed” to a PDNN as a result of training based on evaluation of the physics-based cost function.
- the example operations refer to a physics-based network trainer (“network trainer”) as performing the depicted operations for consistency with Figure 1, although naming of software and program code can vary among implementations.
- the network trainer may train the PDNN before training the autoencoder. For instance, the network trainer can first train a deep neural network to generate the PDNN and can subsequently train the autoencoder based on the output from the PDNN which was generated during training.
- the network trainer obtains sensor data.
- the network trainer can obtain sensor data directly from sensors.
- the sensor data may be voltage values from an electromagnetic receiver that are then directly transmitted to the network trainer.
- the network trainer can obtain the sensor data through calculations or derivations based on other sensor data.
- the sensor data can be fluid acceleration values derived from fluid velocity values which are measured by a sensor.
- the network trainer may also obtain the sensor data from a database which stores sensor data and/or simulation results.
- the network trainer begins training for each training iteration.
- the network trainer can allocate any subset of the sensor data for training the PDNN and autoencoder, such as 70% of the sensor data, 75% of the sensor data, etc.
- the number of training iterations can be determined based on hyperparameters defined for the PDNN (e.g., a number of epochs and a batch size).
- the network trainer trains the PDNN based on the training sensor data and a physics-based cost function.
- the network trainer inputs training sensor data to the PDNN at each iteration.
- the PDNN then can determine reduced-noise sensor data from the training sensor data through constrained optimization of a PDE which incorporates a physics-based model, such as the constrained optimization problem represented above as Equations 3 and 4.
- the PDNN computes a value of the physics-based cost function, such as the physics-based cost function represented above as Equation 2, using the reduced-noise sensor data to determine whether weights of neuron connections should be adjusted. Training of the PDNN is described in further detail in reference to Figure 4.
- the network trainer trains an autoencoder based on the reduced-noise sensor data output from the PDNN.
- the network trainer can train the autoencoder with each output from the PDNN as the PDNN output is produced such that the PDNN and autoencoder are trained“simultaneously.”
- the PDNN output used to calculate a value of the physics-based cost function based on which weights of neuron connections within the PDNN are adjusted can additionally be used as a training input to the autoencoder.
- the network trainer can train the autoencoder using any training method and based on evaluation of any cost function.
- the network trainer may train the autoencoder based on minimizing a
- the network trainer may enforce a reconstruction error threshold.
- the reconstruction error threshold may indicate a reconstruction error which, when exceeded, results in adjusting the weights of the autoencoder neuron connections before redetermining the reconstructed reduced-noise sensor data, where the same input may be used after the weights are adjusted.
- the network trainer can proceed to the next training input or iteration based on the reconstructed reduced-noise sensor output satisfying the reconstruction error threshold.
- the network trainer determines if additional training iterations remain. If an additional training iteration remains, operations continue at block 302 to continue training. If an additional training iteration does not remain, operations are complete, and the PDNN and autoencoder are considered to be trained.
- Figure 4 depicts a flowchart of example operations for training a deep neural network which incorporates a physics-based model over a series of timesteps to generate a PDNN (hereinafter referred to as“training the PDNN”).
- the example operations refer to a physics- based network trainer (“network trainer”) and a PDNN which the network trainer trains as performing the example operations for consistency with Figures 1 and 2, although naming of software and program code can vary among implementations.
- the network trainer begins training the PDNN at a first timestep.
- the network trainer may establish a predetermined time limit or number of timesteps for training the PDNN. For example, the network trainer may establish the number of timesteps based on the number of examples in a training set of sensor data to be used for training.
- the network trainer inputs sensor data into the PDNN for training.
- the sensor data may be any data retrieved during a hydrocarbon recovery operation.
- the sensor data can include data collected for fluid velocity, pressure, temperature, fluid viscosity, fluid density, weight on bit, rotational velocity, etc.
- the sensor data may be retrieved from the sensors which collect the data or may be communicated to the network trainer by components which operate or are coupled to the sensors.
- the PDNN determines reduced-noise sensor data from the sensor data.
- the relationship between the sensor data, reduced-noise sensor data, and the noise affecting the sensor data can be represented as shown in Equation 5 as a function of space and time, where z is the raw sensor data, y is the reduced-noise sensor data, n is the noise, x is the spatial location, and t is the time.
- the PDNN can use an optimization technique to minimize the value of the physics-based cost function through the constrained optimization problem represented above as Equations 3 and 4. For example, the PDNN can determine the value for a reduced-noise fluid velocity measurement based on a fluid velocity measurement measured by a sensor by using a gradient descent optimization method and a fluid flow model (e.g., Burgers’ equation) incorporated in the cost function as f(z) to determine a solution to Equation 3 subject to the constraint depicted in Equation 4.
- Burgers’ equation can be represented by Equations 6-9, where u is a fluid velocity, v is a fluid viscosity, x is a spatial location that can be normalized to a value between 0 and 1, and t is a time value:
- Equation 10 An analytical solution to Equations 6-9 can be represented as shown in Equation 10 below. Combining Equation 5 and Equation 10 results in Equation 11, where M(x, t) is a noise multiplier value and D(x, t ) is a random distribution value.
- the representation of Burgers’ equation depicted as Equation 11 can be incorporated as f(z) in Equations 2-4.
- the PDNN determines reduced-noise sensor data, such as the reduced- noise fluid velocity data, based on the solution to Equation 3 subject to the constraint depicted in Equation 4.
- the reduced-noise sensor data which results is the output of the PDNN.
- the PDNN computes a value of the physics-based cost function.
- the PDNN can compute the value of the physics-based cost function represented above as Equation 2, where z is the sensor data input to the PDNN, y is the reduced-noise sensor data output from the PDNN, and f(z) is a physics-based model.
- the physics-based model can be Burgers’ equation, represented above as Equations 6-9.
- the PDNN can leverage the solution to the physics-based model determined during the optimization at block 405 when computing the value of the physics-based cost function.
- the network trainer determines if one or more convergence criteria have been satisfied.
- the network trainer can determine whether the convergence criteria has been satisfied based on whether the physics-based cost function has converged. Convergence of the physics-based cost function may be based on whether the value of the cost function is below a cost threshold. For instance, the network trainer may enforce a cost threshold. The network trainer may determine that the physics-based cost function has converged if the value of the cost function is below the cost threshold. If the convergence criteria are satisfied, operations continue at block 411. If the convergence criteria are not satisfied, operations continue at block 403, where the network trainer restarts training at the current timestep to re-determine the reduced- noise sensor data from the input data. Alternatively, the previously-computed reduced-noise sensor data may be used as input to the PDNN for re-determining the reduced-noise sensor data.
- the network trainer determines if additional timesteps remain.
- the network trainer may determine that there are additional timesteps for determining reduced-noise sensor data if any timesteps remain which have not been computed.
- the network trainer may determine that there are no additional timesteps to compute if a predetermined time limit is exceeded. If additional timesteps remain, operations continue at block 413, where the network trainer advances to the next timestep to continue training the PDNN. If additional timesteps do not remain, operations are complete, and the PDNN model is considered to be trained.
- Figure 5 is a flowchart of example operations for denoising sensor data with an autoencoder which was trained with reduced-noise sensor data output from a PDNN during training of the PDNN.
- the sensor data can be denoised with an autoencoder which was trained as described in reference to Figure 1.
- the example operations refer to a trained autoencoder as performing the depicted operations for consistency with Figure 1, although naming of software and program code can vary among implementations.
- the trained autoencoder receives one or more sensor data inputs.
- the sensor data may be obtained directly from sensors (e.g., an electromagnetic receiver), calculated or derived from sensor data obtained directly from sensors, or obtained from a database which stores sensor data and/or simulation results.
- the trained autoencoder receives the sensor data at its input layer.
- the trained autoencoder determines a reconstructed reduced-noise representation of the sensor data.
- the trained autoencoder first applies one or more encode layers to the sensor data to generate encoded sensor data.
- the trained autoencoder then applies one or more decode layers to the encoded sensor data to generate decoded sensor data.
- the trained autoencoder generates reconstructed reduced-noise sensor data based on the decoded sensor data. For instance, the trained autoencoder may generate the reconstructed reduced-noise sensor data using the output from the decode layer(s) directly. As another example, the trained autoencoder may generate the reconstructed reduced-noise sensor data by summing the outputs from each decode layer.
- the reconstructed reduced-noise sensor data is the output of the trained autoencoder.
- the trained autoencoder may generate and output a reconstructed reduced-noise value of [0.46, 0.59] based on an actual value of [0.6, 0.73]
- the reconstructed data output by the trained autoencoder is a reduced-noise representation because the autoencoder was trained with the reduced-noise sensor data output from the PDNN and thus learned the features of the reduced-noise sensor data during training.
- the trained autoencoder identifies outliers based on the reconstructed reduced-noise sensor data output from the trained autoencoder.
- the trained autoencoder can detect outliers by comparing the sensor data input and the reconstructed reduced-noise sensor data output. For example, the trained autoencoder may determine whether the difference between a reconstructed reduced-noise sensor data point and a corresponding sensor data point exceeds a reconstruction difference threshold.
- the trained autoencoder can indicate that the sensor data point and/or the reconstructed reduced- noise sensor data point is an outlier (e.g., by associating an indicator or tag with the sensor data point and/or the reconstructed reduced-noise sensor data point, generating a notification, etc.). Subsequent operations which use the sensor data and/or the reconstructed reduced-noise sensor data can discount the identified outliers. The outliers may alternatively be discarded (e.g., removed from the reconstructed reduced-noise sensor data).
- FIG. 6 is a flowchart of example operations for denoising sensor data using a trained PDNN and a trained autoencoder.
- the sensor data can be denoised with a PDNN and a denoising autoencoder which were trained as described in reference to Figure 2.
- a trained autoencoder which was not necessarily trained with the PDNN outputs can be used.
- Operations depicted at blocks 601 and 603 are performed by a trained PDNN.
- Operations depicted at blocks 605-609 are performed by a trained autoencoder.
- the example operations refer to a trained PDNN and a trained autoencoder for consistency with Figure 2, although naming of software and program code can vary among implementations.
- the example operations may occur such that the output of the trained PDNN is passed to the trained as the trained PDNN generates the output.
- the example operations may occur such that the trained PDNN accumulates a set of reduced-noise sensor data before passing the set of reduced-noise sensor data to the autoencoder.
- the trained PDNN receives sensor data.
- the sensor data may be obtained directly from sensors, calculated or derived from sensor data obtained directly from sensors, or obtained from a database which stores sensor data and/or simulation results.
- the PDNN receives the sensor data at its input layer.
- the trained PDNN determines reduced-noise sensor data based on the sensor data and a physics-based model incorporated in the trained PDNN.
- the trained PDNN can recover reduced-noise sensor data from the sensor data by determining values of reduced-noise sensor data which optimize a physics-based cost function in which the physics-based model is incorporated.
- the trained PDNN can determine a reduced-noise fluid velocity measurement based on a fluid velocity measurement measured by a sensor by solving the constrained optimization problem depicted above as Equations 3 and 4 using a gradient descent optimization method and a fluid flow model incorporated as f(z), such as Burgers’ equation.
- the trained PDNN can generate a value of [0.5, 0.6] for reduced-noise sensor data based on an actual value of sensor data of [0.6, 0.73] by determining the reduced-noise sensor data as a solution to Equation 3, subject to the constraint depicted in Equation 4, using the actual values of the sensor data and Burgers’ equation.
- the PDNN outputs the reduced-noise sensor data which results from the solution, which is then passed to the trained autoencoder.
- the trained autoencoder receives the reduced-noise sensor data output from the trained PDNN.
- the trained autoencoder receives the reduced-noise sensor data at its input layer.
- the autoencoder was previously trained to denoise sensor data with a set of sensor data which was not necessarily the same sensor data used for training the PDNN.
- the trained autoencoder determines reconstructed reduced-noise sensor data from the output of the trained PDNN.
- the trained autoencoder first applies one or more encode layers to the sensor data to generate encoded sensor data.
- the trained autoencoder then applies one or more decode layers to the encoded sensor data to generate decoded sensor data.
- the trained autoencoder generates reconstructed reduced-noise sensor data based on the decoded sensor data. For instance, the trained autoencoder may generate the reconstructed reduced-noise sensor data using the output from the decode layer(s) directly. Alternatively, the trained autoencoder may generate the reconstructed reduced-noise sensor data by summing the outputs from each decode layer.
- the reconstructed reduced-noise sensor data is the output of the trained autoencoder.
- the trained autoencoder can generate and output a reconstructed reduced-noise value of [0.46, 0.59] based on a reduced-noise value of [0.5, 0.6] which was received as input.
- the trained autoencoder identifies outliers based on the reconstructed reduced-noise sensor data output from the trained autoencoder.
- the trained autoencoder can detect outliers by comparing the reduced-noise sensor data input and the reconstructed reduced- noise sensor data output. For example, the trained autoencoder may determine whether the difference between the reconstructed reduced-noise sensor data point and the corresponding reduced-noise sensor data point exceeds a reconstruction difference threshold.
- a sensor noise reduction system in which the autoencoder is incorporated may determine whether the difference between the reconstructed reduced-noise sensor data point and the corresponding sensor data point of the raw sensor data exceeds a reconstruction difference threshold. If the reconstruction difference threshold is exceeded, the trained autoencoder can indicate that the data point is an outlier (e.g., by associating an indicator or tag with the sensor data point and/or the reconstructed reduced- noise sensor data point, generating a notification, etc.). Subsequent operations which use the sensor data and/or the reconstructed reduced-noise sensor data can discount the identified outliers. The outliers may alternatively be discarded through removal from the reconstructed reduced-noise sensor data, for example.
- f(z) be the physics-based model which is incorporated into the physics-based cost function.
- the function f(z) can be expanded using a Taylor series expansion, where /is expanded in the parameter space around a first physical parameter y as shown in Equation 12 and where operations can include a second physical parameter z as shown in Equation 13, where z is a value of sensor data, y is a value of the reduced-noise sensor data, n is a value of a noise component of the sensor data, x is a spatial location, and t is time:
- Equation 16 [0061] To satisfy the above minimization, as the value of n approaches zero, the value with noise z should approach the noise-free value y. If this condition is satisfied, the first term of Equation 16 can become zero. In the second term of Equation 16, because the noise tends to zero, the derivative terms can be dropped, and thus f(z) would equal f(y).
- Figure 7 depicts an example plot of sensor data output by a sensor.
- a horizontal axis 701 represents a data point index value.
- the horizontal axis can represent a different parameter domain, such as a time value or spatial value.
- a vertical axis 702 represents a normalized value for the sensor output. As can be seen by the line 710 representing sensor data, considerable variation can be present within the sensor output data over the parameter domain space represented by the horizontal axis 701.
- Figure 8 depicts an example plot comparing sensor data and reduced-noise sensor data using a PDNN.
- a horizontal axis 801 represents a data point index value.
- the horizontal axis can represent a different parameter domain, such as a time value or spatial value.
- a vertical axis 802 represents a normalized value for the sensor data.
- the plot also includes a line 810 representing reduced-noise sensor data as determined by a PDNN.
- the plot also includes a set of points, such as point 820, where each of the set of points represents actual sensor data. As can be seen by a comparison of the values represented by the line 810 and the set of points representing actual sensor data which includes the point 820, values of the reduced-noise sensor data closely track the median values of the actual sensor data, but are less than the greatest and least values of the actual sensor data.
- the difference between each of the values represented by the line 810 and the corresponding points, such as the point 820, in the set of points may indicate whether a particular point represents an outlier.
- the value of the reduced-noise sensor data may be 0.8 at the data index value of 178, and the value of the actual sensor data represented by the point 820 may be 0.91. If an output difference threshold is 0.1, then the point 820 may represent an outlier. Outliers can be verified based on using an autoencoder as is further depicted in Figure 9.
- Figure 9 depicts an example plot comparing actual sensor data with reconstructed reduced-noise sensor data as determined by an autoencoder which was trained with reduced- noise sensor data output from a PDNN during training.
- a horizontal axis 901 represents a data point index value. In some implementations, the horizontal axis 901 can represent a different parameter domain, such as a time value or spatial value.
- a vertical axis 902 represents a normalized value for the sensor data.
- the plot also includes a line 910 representing reconstructed reduced-noise sensor data as determined by a PDNN coupled with an autoencoder.
- the plot also includes a set of points, such as points 920 - 923, where each point of the set of points represents actual sensor data.
- the similarity between the reconstructed reduced-noise sensor data and the actual sensor data can be significantly greater than 90%.
- the points 921-923 can be detected as outliers.
- the value of the reconstructed reduced-noise sensor data may be 0.75 at the data index value of 40, and the value of the actual sensor data represented by the point 923 may be 0.80.
- the output reconstruction difference threshold is 0.04, it can be determined that the point 923 represents an outlier.
- the data representing and/or corresponding to the point 923 can subsequently be discarded.
- the autoencoder trained based on PDNN output facilitates detection of significant deviations in sensor output data, such as the data
- Outliers can be indicative of physical phenomena causing the outlier behavior indicated by the points 921-923.
- FIG 10 is an elevation view of a drilling system.
- a drilling system 1000 is configured to drill into one or more geological formations to form a wellbore 1007A, 1007B; sometimes also referred to as a borehole.
- the drilling system 1000 can include a drill bit 1001 and a well site 1006.
- Various types of drilling equipment such as a rotary table, mud pumps and mud tanks (not expressly shown) can be located at the well surface or well site 1006.
- the well site 1006 can include a drilling rig 1002 that can have various characteristics and features associated with a “land drilling rig.”
- other drill bits can be satisfactorily used with drilling equipment located on offshore platforms, drill ships, semi-submersibles and drilling barges.
- the drilling system 1000 can include a drill string 1003 associated with the drill bit 1001 that can be used to rotate the drill bit 1001 in a radial direction 1005 around a bit rotational axis 1004 of form a wide variety of wellbores 1007A, 1007B, such as a generally vertical wellbore, or the wellbore 1007A, or a generally horizontal wellbore, or the wellbore 1007B, as shown in Figure 10.
- Various directional drilling techniques and associated components of a bottom hole assembly (BHA) 1020 of the drill string 1003 can be used to form a generally horizontal wellbore such as the wellbore 1007B.
- BHA bottom hole assembly
- lateral forces can be applied to the drill bit 1001 proximate to a kickoff location 1013 to form a generally horizontal wellbore (e.g., the wellbore 1007B) extending from a generally vertical wellbore (e.g., the wellbore 1007A).
- a generally horizontal wellbore e.g., the wellbore 1007B
- a generally vertical wellbore e.g., the wellbore 1007A
- Each of the wellbores 1007A, 1007B can be drilled to a drilling distance, which is the distance between the well surface and the furthest extent of each of the wellbores 1007A, 1007B, respectively.
- the BHA 1020 can be formed from a wide variety of components.
- the components 1021A, 1021B, and 1021C of BHA 1020 can include, but are not limited to the drill bit 1001, drill collars, rotary steering tools, directional drilling tools, downhole drilling motors, reamers, hole enlargers or stabilizers.
- the number of components, such as drill collars and different types of components 1021A, 1021B, 1021C included in the BHA 1020 can depend upon anticipated downhole drilling conditions and the type of wellbore that will be formed by the drill string 1003 and the drill bit 1001.
- the BHA 1020 can include sensors to provide various sensor outputs. Sensor outputs can include values such as fluid velocity, pressure, temperature, fluid viscosity, fluid density, weight on bit, rotational velocity, etc.
- the wellbore 1007A can be defined in part by a casing string 1010 that can extend from the well site 1006 to a selected downhole location.
- Various types of drilling fluid can be pumped from the well site 1006 through the drill string 1003 to the drill bit 1001.
- the components 1021A, 1021B, and 1021C can be attached to the drill bit 1001 at an uphole end of the drill bit 1001
- Drilling fluids can be directed to flow from the drill string 1003 to respective nozzles included in the drill bit 1001.
- the drilling fluid can be circulated back to the well site 1006 through an annulus 1008 defined in part by an outside diameter 1012 of the drill string 1003 and an inside diameter 1011 of the casing string 1010.
- Figure 11 is an elevation view of a wireline system.
- Subterranean operations can be conducted using a wireline system 1100 in a borehole 1114.
- a platform 1102 is positioned over the borehole 1114 in the subterranean formation 1104.
- the wireline system 1100 can include one or more logging tools 1120 that can be suspended in the borehole 1114 by a conveyance 1115 (e.g., a cable, slickline, or coiled tubing).
- the logging tool 1120 can be communicatively coupled to the conveyance 1115.
- the conveyance 1115 can contain conductors for transporting power to the wireline system 1100 and telemetry from the logging tool 1120 to a logging facility 1144.
- the conveyance 1115 can be independent of a conductor, as can be the case when using slickline or coiled tubing.
- the wireline system 1100 can contain a controller 1134 that contains memory, one or more batteries, and/or one or more processors for performing any of the operations described above, as well as storing sensor outputs obtained by various sensors attached to the logging tool 1120.
- the controller 1134 can be positioned at the surface 1106, in the borehole 1114 (e.g., as part of the logging tool 1120 and/or in the conveyance 1115) or both (e.g., a portion of the processing can occur downhole and a portion can occur at the surface).
- the controller 1134 can include a control system or a control algorithm.
- a control system, an algorithm, or a set of machine-readable instructions can cause the controller 1134 to generate and provide an input signal to one or more elements of the logging tool 1120, such as sensors 1126 disposed on pads and attached to the logging tool 1120.
- the input signal can cause sensors 1126 disposed on the pads to be active or to provide output signals indicative of sensed properties.
- the logging facility 1144 can collect measurements from the logging tool 1120, and can include computing facilities for controlling, processing, or storing the measurements gathered by the logging tool 1120.
- the computing facilities included in the logging facility 1144 can be communicatively coupled to the logging tool 1120 by way of the conveyance 1115 and can operate similarly to the controller 1134.
- the controller 1134 which can be located in logging tool 1120, can perform one or more functions of the logging facility 1144.
- aspects of the disclosure may be embodied as a system, method or program code/instructions stored in one or more machine-readable media. Accordingly, aspects may take the form of hardware, software (including firmware, resident software, micro-code, etc.), or a combination of software and hardware aspects that may all generally be referred to herein as a“circuit,”“module” or“system.”
- the functionality presented as individual modules/units in the example illustrations can be organized differently in accordance with any one of platform (operating system and/or hardware), application ecosystem, interfaces, programmer preferences, programming language, administrator preferences, etc.
- the machine readable medium may be a machine readable signal medium or a machine readable storage medium.
- a machine readable storage medium may be, for example, but not limited to, a system, apparatus, or device, that employs any one of or combination of electronic, magnetic, optical, electromagnetic, infrared, or semiconductor technology to store program code.
- machine readable storage medium More specific examples (a non-exhaustive list) of the machine readable storage medium would include the following: a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
- a machine readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
- a machine readable storage medium is not a machine readable signal medium.
- a machine readable signal medium may include a propagated data signal with machine readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof.
- a machine readable signal medium may be any machine readable medium that is not a machine readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
- Program code embodied on a machine readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
- Computer program code for carrying out operations for aspects of the disclosure may be written in any combination of one or more programming languages, including an object oriented programming language such as the Java® programming language, C++ or the like; a dynamic programming language such as Python; a scripting language such as Perl programming language or PowerShell script language; and conventional procedural programming languages, such as the "C" programming language or similar programming languages.
- the program code may execute entirely on a stand-alone machine, may execute in a distributed manner across multiple machines, and may execute on one machine while providing results and or accepting input on another machine.
- the program code/instructions may also be stored in a machine readable medium that can direct a machine to function in a particular manner, such that the instructions stored in the machine readable medium produce an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks.
- Figure 12 depicts an example computer system with a physics-based network trainer and a sensor data noise reduction system.
- the computer system includes a processor 1201 (possibly including multiple processors, multiple cores, multiple nodes, and/or implementing multi- threading, etc.).
- the computer system includes memory 1207.
- the memory 1207 may be system memory or any one or more of the above already described possible realizations of machine-readable media.
- the computer system also includes a bus 1203 and a network interface 1205. The system communicates via transmissions to and/or from remote devices via the network interface 1205 in accordance with a network protocol corresponding to the type of network interface, whether wired or wireless and depending upon the carrying medium.
- a communication or transmission can involve other layers of a communication protocol and or communication protocol suites (e.g., transmission control protocol, Internet Protocol, user datagram protocol, virtual private network protocols, etc.).
- the system also includes physics- based network trainer 1211 and sensor data noise reduction system 1213.
- the physics-based network trainer 1211 trains a PDNN to generate reduced-noise sensor data from raw sensor data based on a physics-based model and evaluation of a cost function with incorporates the physics- based model.
- the physics-based network trainer 1211 may also pass the reduced-noise sensor data output from the PDNN during training to an autoencoder to train the autoencoder to generate reconstructed reduced-noise sensor data.
- the sensor data noise reduction system 1213 facilitates denoising of sensor data by leveraging a trained autoencoder to generate reconstructed reduced-noise sensor data and to detect of outliers in sensor data based on the reconstructed reduced-noise sensor data.
- Any one of the previously described functionalities may be partially (or entirely) implemented in hardware and/or on the processor 1201.
- the functionality may be implemented with an application specific integrated circuit, in logic implemented in the processor 1201, in a co-processor on a peripheral device or card, etc.
- realizations may include fewer or additional components not illustrated in Figure 12 (e.g., video cards, audio cards, additional network interfaces, peripheral devices, etc.).
- the processor 1201 and the network interface 1205 are coupled to the bus 1203. Although illustrated as being coupled to the bus 1203, the memory 1207 may be coupled to the processor 1201.
- Example embodiments include the following:
- a method comprises training a deep neural network (DNN) based on sensor data and a cost function, wherein the cost function incorporates a physics-based model.
- DNN deep neural network
- Reduced-noise sensor data are determined with the DNN during training of the DNN.
- the reduced-noise sensor data are passed to an autoencoder.
- the autoencoder is trained based on the reduced-noise sensor data to generate a trained autoencoder, wherein the autoencoder outputs a reconstructed representation of the reduced-noise sensor data.
- the method further comprises inputting at least a subset of the sensor data into the trained autoencoder and generating a reconstructed reduced-noise representation of the sensor data with the trained autoencoder.
- the method further comprises detecting at least a first outlier in the sensor data based, at least in part, on comparing the sensor data and the reconstructed reduced-noise representation of the sensor data.
- the cost function comprises a cost function of the form
- f(z) is the physics-based model
- 2 is a multiplier value
- z is a value of the sensor data
- W is a domain space on which z is defined
- y is the reduced-noise sensor data.
- Determining reduced-noise sensor data with the DNN comprises determining the reduced-noise sensor data as a solution to a partial differential equation (PDE) through constrained optimization, wherein the PDE incorporates the physics-based model.
- PDE partial differential equation
- the physics-based model comprises a differentiable physics-based function in the oil and gas domain.
- the physics-based model comprises at least one of Burgers’ equation, Darcy’s law, and a hydraulic fracturing model equation.
- the sensor data comprises at least one of fluid velocity data, pressure data, temperature data, fluid viscosity data, fluid density data, weight on bit data, and drill bit rotational velocity data.
- One or more non-transitory machine-readable media comprise program code for denoising sensor data, the program code to, based on receiving sensor data, input at least a first subset of the sensor data into a deep neural network (DNN).
- DNN deep neural network
- a first set of reduced-noise sensor data is generated based, at least in part, on the first subset of the sensor data and a physics-based model.
- the first set of reduced-noise sensor data is evaluated based on a calculation of a value of a cost function, wherein the cost function incorporates the physics-based model.
- a trained DNN is generated from the DNN based on evaluation of the first set of reduced-noise sensor data.
- the non-transitory machine-readable media further comprise program code to pass the first set of reduced-noise sensor data which is output during generation of the trained DNN to a first autoencoder and train the first autoencoder based on the first set of reduced-noise sensor data to generate a first trained autoencoder.
- the non-transitory machine-readable media further comprise program code to input at least a second subset of the sensor data into the first trained autoencoder, determine a first set of reconstructed reduced-noise sensor data based on output of the first trained autoencoder, and detect at least a first outlier of at least one of the second subset of the sensor data and the first set of reconstructed reduced-noise sensor data.
- the cost function comprises a cost function of the form
- f(z) is the physics-based model
- 2 is a multiplier value
- z is a value of a first of the sensor data
- W is a domain space on which z is defined
- y is a value from the first set of reduced- noise sensor data.
- the non-transitory machine-readable media further comprise program code to obtain a second set of reduced-noise sensor data, wherein the second set of reduced-noise sensor data is generated by the trained DNN, input the second set of reduced-noise sensor data into a second trained autoencoder, and determine a second set of reconstructed reduced-noise sensor data based on output of the second trained autoencoder.
- An apparatus comprises a processor and a machine-readable medium having program code executable by the processor to cause the apparatus to train a deep neural network (DNN) based on sensor data and a cost function, wherein the cost function incorporates a physics-based model.
- DNN deep neural network
- Reduced-noise sensor data are determined with the DNN during training of the DNN.
- the reduced-noise sensor data are passed to an autoencoder.
- the autoencoder is trained based on the reduced-noise sensor data to generate a trained autoencoder, wherein the autoencoder outputs a reconstructed representation of the reduced-noise sensor data.
- the apparatus further comprises program code executable by the processor to cause the apparatus to input at least a subset of the sensor data into the trained autoencoder and generate a reconstructed reduced-noise representation of the sensor data with the trained autoencoder.
- the cost function comprises a cost function of the form
- f(z) is the physics-based model
- 2 is a multiplier value
- z is a value of the sensor data
- W is a domain space on which z is defined
- y is the reduced-noise sensor data.
- the program code executable by the processor to cause the apparatus to determine reduced-noise sensor data with the DNN comprises program code executable by the processor to cause the apparatus to determine the reduced-noise sensor data as a solution to a partial differential equation (PDE) through constrained optimization, wherein the PDE incorporates the physics-based model.
- PDE partial differential equation
- the physics-based model comprises a differentiable physics-based function in the oil and gas domain.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Measurement Of Mechanical Vibrations Or Ultrasonic Waves (AREA)
- Arrangements For Transmission Of Measured Signals (AREA)
- Indication And Recording Devices For Special Purposes And Tariff Metering Devices (AREA)
Abstract
Description
Claims
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US16/954,446 US11488025B2 (en) | 2019-04-29 | 2019-12-16 | Hybrid neural network and autoencoder |
| GB2113739.3A GB2596477B (en) | 2019-04-29 | 2019-12-16 | Hybrid neural network and autoencoder |
| NO20211156A NO346838B1 (en) | 2019-04-29 | 2021-09-27 | Hybrid neural network and autoencoder |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US201962840198P | 2019-04-29 | 2019-04-29 | |
| US62/840,198 | 2019-04-29 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2020222879A1 true WO2020222879A1 (en) | 2020-11-05 |
Family
ID=73028762
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/US2019/066621 Ceased WO2020222879A1 (en) | 2019-04-29 | 2019-12-16 | Hybrid neural network and autoencoder |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US11488025B2 (en) |
| GB (1) | GB2596477B (en) |
| NO (1) | NO346838B1 (en) |
| WO (1) | WO2020222879A1 (en) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN113094993A (en) * | 2021-04-12 | 2021-07-09 | 电子科技大学 | Modulation signal denoising method based on self-coding neural network |
| US11488025B2 (en) | 2019-04-29 | 2022-11-01 | Landmark Graphics Corporation | Hybrid neural network and autoencoder |
| WO2022263234A1 (en) * | 2021-06-15 | 2022-12-22 | Robert Bosch Gmbh | Device and method for training a machine learning system for denoising an input signal |
| US12585845B2 (en) | 2021-09-07 | 2026-03-24 | Tata Consultancy Services Limited | Fusion of physics and AI based models for end-to-end data synthesization and validation |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20210279386A1 (en) * | 2020-03-05 | 2021-09-09 | International Business Machines Corporation | Multi-modal deep learning based surrogate model for high-fidelity simulation |
| WO2022032102A1 (en) * | 2020-08-06 | 2022-02-10 | Front End Analytics Llc | Apparatus and method for electronic determination of system data integrity |
| CA3233144A1 (en) * | 2021-09-23 | 2023-03-30 | Schlumberger Canada Limited | Automatic sensor data validation on a drilling rig site |
| CN115525786B (en) * | 2022-10-11 | 2024-02-20 | 中国传媒大学 | Method for constructing ionospheric frequency high-graph classification sample library |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20180069877A (en) * | 2016-06-02 | 2018-06-25 | 텐센트 테크놀로지(센젠) 컴퍼니 리미티드 | Method and apparatus for building a machine learning based network model |
| US20180306609A1 (en) * | 2017-04-24 | 2018-10-25 | Carnegie Mellon University | Virtual sensor system |
| US20190064389A1 (en) * | 2017-08-25 | 2019-02-28 | Huseyin Denli | Geophysical Inversion with Convolutional Neural Networks |
Family Cites Families (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2016100816A1 (en) | 2014-12-19 | 2016-06-23 | United Technologies Corporation | Sensor data fusion for prognostics and health monitoring |
| US11481585B2 (en) * | 2016-05-20 | 2022-10-25 | Canary Capital Llc | Segmentation of data |
| US10685429B2 (en) * | 2017-02-22 | 2020-06-16 | Siemens Healthcare Gmbh | Denoising medical images by learning sparse image representations with a deep unfolding approach |
| US11188813B2 (en) | 2017-03-01 | 2021-11-30 | Stc.Unm | Hybrid architecture system and method for high-dimensional sequence processing |
| US11645835B2 (en) | 2017-08-30 | 2023-05-09 | Board Of Regents, The University Of Texas System | Hypercomplex deep learning methods, architectures, and apparatus for multimodal small, medium, and large-scale data representation, analysis, and applications |
| US10726525B2 (en) * | 2017-09-26 | 2020-07-28 | Samsung Electronics Co., Ltd. | Image denoising neural network architecture and method of training the same |
| US10861143B2 (en) * | 2017-09-27 | 2020-12-08 | Korea Advanced Institute Of Science And Technology | Method and apparatus for reconstructing hyperspectral image using artificial intelligence |
| GB2596477B (en) | 2019-04-29 | 2023-02-22 | Landmark Graphics Corp | Hybrid neural network and autoencoder |
-
2019
- 2019-12-16 GB GB2113739.3A patent/GB2596477B/en active Active
- 2019-12-16 US US16/954,446 patent/US11488025B2/en active Active
- 2019-12-16 WO PCT/US2019/066621 patent/WO2020222879A1/en not_active Ceased
-
2021
- 2021-09-27 NO NO20211156A patent/NO346838B1/en unknown
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20180069877A (en) * | 2016-06-02 | 2018-06-25 | 텐센트 테크놀로지(센젠) 컴퍼니 리미티드 | Method and apparatus for building a machine learning based network model |
| US20180306609A1 (en) * | 2017-04-24 | 2018-10-25 | Carnegie Mellon University | Virtual sensor system |
| US20190064389A1 (en) * | 2017-08-25 | 2019-02-28 | Huseyin Denli | Geophysical Inversion with Convolutional Neural Networks |
Non-Patent Citations (2)
| Title |
|---|
| GUIFANG LIU; HUAIQIAN BAO; BAOKUN HAN: "A Stacked Autoencoder-Based Deep Neural Network for Achieving Gearbox Fault Diagnosis", MATHEMATICAL PROBLEMS IN ENGINEERING, vol. 2018, 5105709, 25 July 2018 (2018-07-25), CH, pages 1 - 10, XP055630356, ISSN: 1024-123X, DOI: 10.1155/2018/5105709 * |
| LI BO; XU KELE; FENG DAWEI; MI HAIBO; WANG HUAIMIN; ZHU JIAN: "Denoising Convolutional Autoencoder Based B-mode Ultrasound Tongue Image Feature Extraction", ICASSP 2019 - 2019 IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH AND SIGNAL PROCESSING (ICASSP), 17 May 2019 (2019-05-17), pages 7130 - 7134, XP033565339, DOI: 10.1109/ICASSP.2019.8682806 * |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11488025B2 (en) | 2019-04-29 | 2022-11-01 | Landmark Graphics Corporation | Hybrid neural network and autoencoder |
| CN113094993A (en) * | 2021-04-12 | 2021-07-09 | 电子科技大学 | Modulation signal denoising method based on self-coding neural network |
| CN113094993B (en) * | 2021-04-12 | 2022-03-29 | 电子科技大学 | Modulation signal denoising method based on self-coding neural network |
| WO2022263234A1 (en) * | 2021-06-15 | 2022-12-22 | Robert Bosch Gmbh | Device and method for training a machine learning system for denoising an input signal |
| US12585845B2 (en) | 2021-09-07 | 2026-03-24 | Tata Consultancy Services Limited | Fusion of physics and AI based models for end-to-end data synthesization and validation |
Also Published As
| Publication number | Publication date |
|---|---|
| GB2596477B (en) | 2023-02-22 |
| US11488025B2 (en) | 2022-11-01 |
| NO20211156A1 (en) | 2021-09-27 |
| GB2596477A (en) | 2021-12-29 |
| GB202113739D0 (en) | 2021-11-10 |
| NO346838B1 (en) | 2023-01-23 |
| US20210201160A1 (en) | 2021-07-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11488025B2 (en) | Hybrid neural network and autoencoder | |
| US20180025269A1 (en) | Model generation for real-time rate of penetration prediction | |
| CN114787665B (en) | Unsupervised well log reconstruction and outlier detection | |
| US11092006B2 (en) | Subsurface measurement compression and reconstruction | |
| US12454887B2 (en) | Using artificial intelligence methods to exploit well logging data | |
| US10781683B2 (en) | Optimizing sensor selection and operation for well monitoring and control | |
| US20240369733A1 (en) | Estimation of physical parameters from measurements using symbolic regression | |
| CN107002489A (en) | Function earth model for resistivity inversion is parameterized | |
| US20190162066A1 (en) | Fluid analysis tool and method to use the same | |
| WO2024249267A1 (en) | Generative diffusion machine learning for reservoir simulation model history matching | |
| EP3250922A1 (en) | Methods and computing systems for processing and transforming collected data to improve drilling productivity | |
| NO20251264A1 (en) | Generative machine learning based petrophysics interpretation | |
| US20230077488A1 (en) | Core Data Augmentation Methods For Developing Data Driven Based Petrophysical Interpretation Models | |
| WO2024049479A1 (en) | Determination of location and type of reservoir fluids based on downhole pressure gradient identification | |
| WO2019216870A1 (en) | Reducing uncertainties in petrophysical measurements for reserves evaluations | |
| WO2021035472A1 (en) | Mechanical and hydromechanical specific energy-based drilling | |
| US20260120133A1 (en) | Hydrocarbon recovery from a subsurface formation | |
| US20250298942A1 (en) | The accuracy of reservoir facies and petrophysical property models using multiple information sources through quantile machine learning techniques | |
| WO2026095998A1 (en) | Hydrocarbon recovery from a subsurface formation | |
| US20250283405A1 (en) | Data-driven methods to determine position of a moving object in a wellbore | |
| WO2025029882A1 (en) | Using artificial intelligence methods to exploit well logging data | |
| CN120798290A (en) | Logging data resolution correction method, device and equipment |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 19927372 Country of ref document: EP Kind code of ref document: A1 |
|
| ENP | Entry into the national phase |
Ref document number: 202113739 Country of ref document: GB Kind code of ref document: A Free format text: PCT FILING DATE = 20191216 |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2113739.3 Country of ref document: GB |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 19927372 Country of ref document: EP Kind code of ref document: A1 |
|
| WWG | Wipo information: grant in national office |
Ref document number: 2113739.3 Country of ref document: GB |

