SEISMIC DATA PROCESSING USING DUnet
20220221609 · 2022-07-14
Inventors
- Hanyuan PENG (Paris, FR)
- Jeremie Messud (Palaiseau, FR)
- Céline LACOMBE (Massy, FR)
- Paulien JEUNESSE (Antony, FR)
Cpc classification
International classification
Abstract
A DUnet engine produces a processed image of seismic data acquired over an underground formation. The DUnet engine includes: a contractive path that performs multilayer convolutions and contraction to extract a code from the seismic data input to the DUnet, an expansive path configured to perform multilayer convolutions and expansion of the code, using features provided by the contractive path through skip connections, and a model level that performs multilayer convolutions on outputs of the contractive path and expansive paths to produce the processed image and/or an image that is a difference between the processed image and the seismic data. A fraction of the seismic data may be selected for training the DUnet engine using an anchor method that automatically extends an initial seismic data subset, based on similarity measurements. A reweighting layer may further combine inputs received from layers of the DUnet model to preserve signal amplitude trend.
Claims
1. A seismic exploration method comprising: obtaining seismic data acquired over the underground formation; producing a processed image of the underground formation from the seismic data using a DUnet engine, the processed image enabling to identify presence of targeted resources, wherein the DUnet engine includes: a contractive path that performs multilayer convolutions and contraction to extract a code from the seismic data input to the DUnet engine, an expansive path configured to perform multilayer convolutions and expansion of the code, using features provided by the contractive path through skip connections, and a model level that performs multilayer convolutions on outputs of the contractive path and the expansive path to produce the processed image and/or an image that is a difference between the processed image and the seismic data.
2. The method of claim 1, further comprising training the DUnet engine using training data, which includes a fraction of the seismic data or other seismic data, and processed data corresponding to the fraction of the seismic data or the other seismic data.
3. The method of claim 2, wherein the fraction of the seismic data is selected using an anchor method that automatically extends an initial seismic data subset to the fraction of the seismic data, based on similarity measurements.
4. The method of claim 2, wherein parameters of the DUnet engine are optimized during training using an Adam algorithm.
5. The method of claim 2, further comprising: validating the training by comparing the processed image produced by DUnet engine and processed data generated without using the DUnet engine.
6. The method of claim 1, wherein the DUnet engine further includes a reweighting layer that combines outputs of DUnet model level layers using spatial and/or temporarily smooth coefficients and additional multilayer convolutions that preserve signal amplitude trend.
7. The method of claim 1, wherein the seismic data is acquired during a marine survey with a variable depth streamer, and DUnet engine performs deghosting to produce the processed image.
8. The method of claim 7, wherein the DUnet engine employs generating mirror data from said seismic data, transforming said seismic data and said mirror data into Tau-P domain seismic data, dividing said Tau-P domain seismic data into a plurality of data windows, generating a ghost delay time for each of said plurality of data windows, and/or generating deghosted seismic data based on said ghost delay time to perform the deghosting.
9. A seismic data processing apparatus for exploring an underground formation, the apparatus comprising: an interface configured to obtain seismic data acquired over the underground formation; a data processing unit configured to produce a processed image of the underground formation from the seismic data using a DUnet engine, the processed image enabling to identify presence of targeted resources, wherein the DUnet engine includes: a contractive path that performs multilayer convolutions and contraction to extract a code from the seismic data input to the DUnet engine, an expansive path configured to perform multilayer convolutions and expansion of the code, using features provided by the contractive path through skip connections, and a model level that performs multilayer convolutions on outputs of the contractive path and the expansive path to produce the processed image and/or an image that is a difference between the processed image and the seismic data.
10. The seismic data processing apparatus of claim 9, wherein the data processing unit is further configured to perform training of the DUnet engine using training data, which includes a fraction of the seismic data or other seismic data, and processed data corresponding to the fraction of the seismic data or the other seismic data.
11. The seismic data processing apparatus of claim 10, wherein the data processing unit automatically extends an initial seismic data subset to the fraction of the seismic data using an anchor method, based on similarity measurements.
12. The seismic data processing apparatus of claim 10, wherein the data processing unit optimizes parameters of the DUnet engine during the training using an Adam algorithm.
13. The seismic data processing unit of claim 10, wherein the data processing unit is further configured to validate the training by comparing the difference between the processed image produced by DUnet engine and processed data that generated without using the DUnet engine.
14. The seismic data processing apparatus of claim 9, wherein the DUnet engine further includes a reweighting layer that combines inputs received from layers of the DUnet model level using spatial and/or temporarily smooth coefficients and additional multilayer convolutions that preserve signal amplitude trend.
15. The seismic data processing apparatus of claim 9, wherein the seismic data is acquired during a marine survey with a variable depth streamer, and DUnet engine performs deghosting to produce the processed image.
16. The seismic data processing apparatus of claim 15, wherein the DUnet engine employs generating mirror data from said seismic data, transforming said seismic data and said mirror data into Tau-P domain seismic data, dividing said Tau-P domain seismic data into a plurality of data windows, generating a ghost delay time for each of said plurality of data windows, and/or generating deghosted seismic data based on said ghost delay time to perform the deghosting.
17. A computer readable recording medium storing executable codes that when executed by a computer make the computer perform a seismic exploration method, the method comprising: obtain seismic data acquired over an underground formation; producing a processed image of the underground formation from the seismic data using a DUnet engine, the processed image enabling to identify presence of targeted resources, wherein the DUnet engine includes: a contractive path that performs multilayer convolutions and contraction to extract a code from the seismic data input to the DUnet engine, an expansive path configured to perform multilayer convolutions and expansion of the code, using features provided by the contractive path through skip connections, and a model level that performs multilayer convolutions on outputs of the contractive path and the expansive path to produce the processed image and/or an image that is a that is a difference between the processed image and the seismic data.
18. The computer readable recording medium of claim 17, wherein the method further comprises training the DUnet engine using training data, which includes a fraction of the seismic data or other seismic data and processed data corresponding to the fraction of the seismic data or the other seismic data.
19. The computer readable recording medium of claim 18, wherein the fraction of the seismic data is selected using an anchor method that automatically extends an initial seismic data subset to the fraction of the seismic data, based on similarity measurements.
20. The computer readable recording medium of claim 17, wherein the DUnet engine further includes a reweighting layer that combines inputs received from layers of the DUnet model level using spatial and/or temporarily smooth coefficients and additional multilayer convolutions that preserve signal amplitude trend.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0013] The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate one or more embodiments and, together with the description, explain these embodiments. In the drawings:
[0014]
[0015]
[0016]
[0017]
[0018]
[0019]
[0020]
[0021]
[0022]
[0023]
[0024]
[0025]
[0026]
[0027]
DETAILED DESCRIPTION
[0028] The following description of the exemplary embodiments refers to the accompanying drawings. The same reference numbers in different drawings identify the same or similar elements. The following detailed description does not limit the invention. Reference throughout the specification to “one embodiment” or “an embodiment” means that a particular feature, structure, or characteristic described in connection with an embodiment is included in at least one embodiment of the subject matter disclosed. Thus, the appearance of the phrases “in one embodiment” or “in an embodiment” in various places is not necessarily referring to the same embodiment. Further, the particular features, structures or characteristics may be combined in any suitable manner in one or more embodiments.
[0029] The following embodiments employ a deep neural network (DNN) architecture (or engine) called DUnet that is configured to generate a structural image of an explored underground formation from a seismic dataset acquired over the underground formation. Note that the terms “architecture” and “engine” are interchangeably referring to an operative arrangement of functional elements executed on a hardware support. The DNN-type of architecture/engines discussed here (i.e., Unet Denet and DUnet) are architectures in the sense of arrangements of functional elements and engines in the sense that they produce outputs when fed inputs. In particular, as further discussed, in the discussed embodiments DUnet engine is used to output processed images of the underground formation that enable locating targeted resources (such as oil and gas, minerals/mining and geothermal resources). DUnet includes a contractive path (i.e., encoder), an expansive path (i.e., decoder) and a model level connected to both the contractive and expansive paths.
[0030] To better explain the particularities of DUnet, conventional Unet and Denet architectures are first introduced. Unet architecture, exemplarily illustrated in
[0031] As described in the 2017 article by Remez, Denet is an image denoising architecture/engine that performs image processing (or denoising) in a fully convolutional manner. The input x.sub.in is a noisy image and the output, y.sub.pr, is an estimate of the processed image. As illustrated in
[0032] The following embodiments use a DNN architecture/engine, DUnet, improving on both Unet and Denet. Similar to Unet and Denet, DUnet has an image as input and it outputs a processed image, while providing a better output quality and/or better interpretability than two conventional DNN-based architectures mentioned above. DUnet, which is illustrated in
[0033] DUnet is usable for various seismic processing tasks that have an image as input and yield a processed image as output. DUnet enhances exiting approaches, for example, by implementing the best of existing algorithms, increasing turnaround or providing a processing guide. DUnet can be used in several processing tasks (including but not limited to the simultaneous source and receiver deghosting task that is discussed in more detail later) and possibly beyond image denoising or seismic processing.
[0034] DUnet gathers the advantages of both Denet (i.e., output model complementary decomposition for quality control and possible interpretation) and Unet (weighting layer) while improving the results. Consider a processing algorithm related to solving the following problem:
where x.sub.in represents an input data vector and y.sub.out a processed output data vector often of the same size as the input data vector, W.sub.1.sup.t and W.sub.2.sup.t are known matrices parameterized by prior physical information (t denotes the adjoint). W.sub.2.sup.t represents a transformation of the data into a sparse domain, hence the L1 sparsity constraint in the second term of equation (1) and ⊙ indicates an element-wise multiplication. This constraint brings non-linearity and is parameterized by a positive weight vector b, usually defined through user tunings. Deghosting algorithms (Wang et al., 2013), for instance, may be formulated as a problem of the form in equation (1) with x.sub.in being ghosted data, y.sub.out the corresponding deghosted data, W.sub.2.sup.t the Radon transform (parameterized by user-defined information like the range of slopes to scan), and W.sub.1.sup.t the “ghosting-inverse Radon transform” parameterized by deghosting physics and priors (water velocity, water-air reflection coefficient, streamer depth). Let's assume that W.sub.1.sup.t and W.sub.2.sup.t are convolution-based operators, which is true for deghosting.
[0035] The 2017 article “Convolutional Neural Networks Analyzed via Convolutional Sparse Coding” by Papyan et al. (published in Journal of Machine Learning Research, vol. 18, pp. 1-52, and incorporated herein by reference in its entirety) solves equation (1) using the Iterative Soft Thresholding (IST) algorithm, which allows implementation in a DNN-like parameterization. The first IST iteration takes a neural network form with a ReLU activation:
y.sub.out.sup.(iter1)=W.sub.2ReLU(W.sub.1x.sub.i1−b) (2)
which is valid only when W.sub.1 x.sub.in≥b. This positivity restriction is usually unrealistic for seismic application, as the data is signed and oscillatory. However, although not considered up to now, this restriction can be removed by applying the “2-sided ReLU” activation instead of regular ReLU in equation (2):
ReLU(W.sub.1x.sub.in−b).fwdarw.ReLu(W.sub.1x.sub.in−b)−ReLU(−W.sub.1x.sub.in−b).
[0036] As this 2-sided ReLU is simply by a combination of two ReLUs, the ReLU notation is maintained in the following equations. The appearance of ReLU in equation (2) is related to the L1 sparsity constraint, which thresholds small values ∈[−b,0].
[0037] An approximate solution of equation (1) thus takes the shallow neural network form of equation (2). However, as discussed above, W.sub.1, W.sub.2 and b are for now considered as known. The goal of DL is to learn an efficient representation of these operators directly from the data, which is a highly non-linear problem, especially as the priors (i.e., the contents of W.sub.1, W.sub.2) often vary with the data. To provide flexibility and ease training, the large “physical” convolution kernel represented by W.sub.2.sup.t W.sub.1.sup.t is decomposed into many (N) smaller possibly “abstract” convolution kernels represented by matrices V.sub.i.sup.t:
W.sub.1.sup.tW.sub.2.sup.ty.sub.out≈V.sub.1.sup.tV.sub.2.sup.ty.sub.out (3)
the V.sub.1.sup.t transforms producing sparse domains. Equation (1) then becomes
with
Y.sub.pr≈V.sub.Ng.sub.N−1,g.sub.N−1≈ReLU(V.sub.N−1.sub.N−2−b.sub.N−1), . . . ,g.sub.1≈ReLU(V.sub.1x.sub.in−b.sub.1). (5)
[0038] Equations (4) and (5) have a convolutional DNN form with ReLU internal activations. Note that an alternative embodiment may use a Tanh output activation (i.e., y.sub.pr≈Tanh(V.sub.N g.sub.N−1)) by adding a soft clipping constraint Ω(y.sub.pr) in equation (5). The model {V.sub.N, . . . , V.sub.1,b.sub.N−1, . . . ,b.sub.1} must be trained so that y.sub.pr is the closest from the output rout of a standard processing described by equation (1).
[0039] The above equations proved that a standard convolutional DNN with ReLU internal activations and possibly a Tanh output activation represent a good “first order” parameterization of processing problems when the hypotheses above are satisfied, especially the kernel splitting of equation (3). The kernel splitting brings efficiency and flexibility to DNNs, the main advantage of considering them for processing tasks. DUnet enables the use of ReLU internal activations to handle the non-linearity related to the sparsity constraints in the conventional problem (equation (1)) but also to the variation within the survey of priors like the variable cable depth. The improvement is obvious compared to using identity activation (meaning that no sparsity constraint is considered nor variation of priors like the cable depth).
[0040] However, equation (5) represents only a first order (or IST iteration) result. In practice, more complex convolution-based architectures than the one defined through equation (5) often give better results than a standard convolutional DNN.
[0041] Unet, Denet and DUnet architectures models into this mathematical framework is now discussed. Unet architecture illustrated in
[0042] Denet architecture illustrated in
[0043] The DUnet architecture illustrated in
[0044] DUnet engine in
[0045] While the DUnet engine in
[0046] Returning now to using DNNs engines, two phases are necessary: a training phase and an inference (application) phase. Training is performed in shot domain but, because preventing primary damage is as difficult for DNNs as removing ghosts, the quality control is performed in normal move-out (NMO) stack domain to focus on primary preservation. Using DUnet almost completely prevents the primary damage.
[0047] An input shot x.sub.in and a reference image resulting from this input shot by processing via another flow y.sub.ref are the training data. The input shot is subjected to convolution and contraction along the contractive path 310 to extract features and yield a code corresponding to the input shot. Then, along the expansive path 320, this code is subjected to convolution and expansion being also concatenated with features extracted along the contractive path 310 (see the dashed lines there-between). In the modeling level 330, the highest level of features of encoder and decoder are averaged to generate the output y.sub.pr. During the inference (application) phase, the DNN engine could be applied on data that has never been used in training. The data should be in same domain as training data.
[0048] The output y.sub.pr is compared to y.sub.ref to perform an Adam optimization. Adam optimization updates encoder (i.e., contractive path), decoder (expansive path), and modeling level parameters ω.sub.t from one iteration t to a next iteration t+1 in the following manner:
where Δω.sub.t is the change in the parameter Ω.sub.t, η is the initial learning rate, g.sub.t is the gradient of the parameter at t, v.sub.t is exponential average of gradients along ω, s.sub.t is exponential average of squares of gradients along ω, and β.sub.1, β.sub.2 are hyperparameters. Note that another index, e.g., j indicating different parameters has been omitted for the sake of brevity.
[0049] Consider now a comparison of the efficiency of seismic processing using trained Unet, Denet and DUnet engines in deghosting the same input shot illustrated in
[0050]
[0051] Note that deghosting is an exemplary non-limiting application of DUnet engine and this architecture can also be applied to other seismic processing steps, especially all denoising steps, and different domains.
[0052] With the above explanations, a flowchart of a seismic exploration method 1200 of an underground formation according to an embodiment is illustrated in
[0053] The method may also include training the DUnet engine using any kind of training data, a fraction of the seismic data (i.e., data from the current survey) or other seismic data (i.e., another survey) or synthetic seismic data. Intelligently selecting a training subset with minimal human intervention is one of the challenges to be overcome in order to build confidence in adopting DNNs routinely in seismic processing workflows. If the training set is too small or insufficiently sampled, it will not capture the variability of the full data, leading to poor result. Conversely, although a large training set ensuring a good quality of the DNN results may come at a prohibitive cost of the training process. One approach to training data selection uses a prior attribute (e.g., geological horizons) clustering method. In this approach, the distance to centroids is used in the clustering method without any constraints on the location of the selected data. Another approach (known as “anchor method”) starts from an initial training set, and then scans through the full dataset using a similarity measure to identify additional training samples in order to augment the initial training set. Both approaches allow irregularly sampled selection, in order to better capture the data variability.
[0054] The anchor method can be easily integrated in a processing sequence. It starts with an initial dataset (hereafter called ‘anchor’) that may be defined according to the acquisition set-up (e.g., sail-lines, cross-spread) or even randomly if the processing flow allows it. For example, if deghosting is applied in a sail-line manner, regularly spaced sail-lines are used. A pairwise similarity measurement is then calculated between all input shot points and each “anchor” shot point. This similarity measurement may be an Lp distance, a Wasserstein distance or any other similarity metric. The L2 distance was found to work well for this purpose. These calculations create a similarity map that enable identifying outlier areas with large values similarity measurements indicating a substantial difference relative to the anchor dataset. The anchor dataset is then expanded to include samples from these outlier areas.
[0055] In one embodiment, the Dunet further includes a reweighting layer that takes as an input the DUnet model level layers and combines them using spatial and/or temporarily smooth coefficients and additional multilayer convolutions that preserve signal amplitude trend. The reweighting layer is a neural network layer that improves general robustness to data amplitude trends. This layer improves the results in the case of a complex workflow that involves an amplitude trend change.
[0056] Consider amplitude scaling as the computation and application of relatively smooth local weights denoted by θ.sub.t,o(x):
y.sub.t,=θ.sub.t,o(x) x.sub.t,o (7)
where x represents an input data and y the corresponding output (or amplitude processed) data, both indexed by t,o, for instance time and offset in the case of shot data. Standard amplitude scaling examples are (1) a windowed automatic gain control (AGC) amplitude equalization or (2) a so-called spherical divergence correction. The amplitude scaling in (7) is not valuable as such in a neural network context but there is a more efficient neural network layer for such a task interesting in the larger quest of robustness to amplitudes. A neural network layer is sought to concentrate on the amplitude scaling weights θ.sub.t,o(x) rather than directly on the output θ.sub.t,o(x) x.sub.t,o. A usual structure is the (1x1) locally connected (LC) layer, y.sub.t,o=θ.sub.t,o.sup.(LC)x.sub.t,o. But this layer lacks the x-dependency in θ.sub.t,o.sup.(LC) of (7), making it impossible to reproduce an amplitude correction that depends on the data, i.e. that adapts to different event locations in the data (due to geology, water bottom (WB) location in the marine acquisition case . . . ). This would result in a poor amplitude scaling averaged over the training dataset. However, the locally connected layer may be refined by introducing an x-dependency together
with a neural network parameterization in θ.sub.t,o. A convolutional-based neural network with pertinent parameterization allow one to efficiently extract a smooth amplitude trend changes from the input data x:
θ.sub.t,o.sup.(conv)(X)=Σ.sub.fα.sub.fω.sub.t,o,f (x) (8)
where ω.sub.t,o,f(x) represents a convolutional layer with a certain number of feature maps indexed by f:
ω.sub.t,o,f(x)=σ(Σ.sub.i,jω.sub.i,j,fx.sub.t+i,o+j+b.sub.i,j,f) (9)
with σ representing a chosen activation, and w and b the trained convolutional kernels and biases, respectively (see, e.g. Goodfellow et al., 2016). Then, scaling by trained scalar coefficients α.sub.f and summing over feature maps reduces the feature maps dimension and produces the output. However, such a parameterization is still not sufficient to efficiently reproduce, for instance, AGC. Indeed, the gross amplitude trend of x tends to strongly remain in θ.sub.t,o.sup.(conv)(x) for a reasonable number of feature maps, whereas the AGC produces a gross amplitude trend of 1/x.
[0057] Adding a smooth t,o dependency to α.sub.t,o,f (in equation 10 below) consistent with the usual “textures” of the amplitude trend changes weight and overcomes the above-noticed problem giving robustness with respect to event location variation.
θ.sub.t,o.sup.(rew)(x)=Σ.sub.fα.sub.t,o,fω.sub.t,o,f(x) (10)
[0058] Each α.sub.t,,f can be seen as an amplitude weight local component providing the flexibility needed for learning amplitude corrections. The DUnet engine may further include an additional neural network layer named “reweighting layer”, that combines DUnet model level layers using spatial and/or temporarily smooth coefficients and additional multilayer convolutions to preserve signal amplitude trend.
[0059] The reweighting layer handles amplitude scaling effectively because on one hand α.sub.t,o,f (the “weight maps”) are representative of local amplitude trends with some spatial information indexed by f (feature maps), and, on the other hand, ω.sub.t,o,f(x) (“selection maps”) allow to select and combine the weight maps α.sub.t,o,f to reproduce the best amplitude trend correction.
[0060] Adding an input channel dependency to x.sub.t,o,c and ω.sub.t,o,f,c(x), denoted by c, allows the network to take into account inputs with multiple channels. The channel dependency is then added to the selection maps, the ω.sub.t,o,f,c(x) representing a convolutional layer with f*c output channels:
ω.sub.t,o,f,c(x)=σ(Σ.sub.i,j,mω.sub.i,j,f,cx.sub.t+i,o+j,m+b.sub.i,j,f,c) (11)
θ.sub.t,o,c.sup.(rew)(x) becomes dependent on c and the output is recovered by
y.sub.t,=Σ.sub.cθ.sub.t,o,c(x)x.sub.t,o,c (12)
[0061] When the DUnet engine include an additional reweighting layer, the input of the reweighting layer consists in the DUnet model level layers treated as a channel dependency c.
[0062] The above-discussed methods may be implemented in a computing device 1400 as illustrated in
[0063] Exemplary computing device 1400 suitable for performing the activities described in the exemplary embodiments may include a server 1401. Server 1401 may include a central processor (CPU or GPU) 1402 coupled to a random access memory (RAM) 1404 and to a read-only memory (ROM) 1406. ROM 1406 may also be other types of storage media to store programs, such as programmable ROM (PROM), erasable PROM (EPROM), etc. Processor 1402 may communicate with other internal and external components through input/output (I/O) circuitry 1408 and bussing 1410 to provide control signals and the like. Processor 1402 carries out a variety of functions as are known in the art, as dictated by software and/or firmware instructions.
[0064] Server 1401 may also include one or more data storage devices, including hard drives 1412, CD-ROM drives 1414 and other hardware capable of reading and/or storing information, such as DVD, etc. In one embodiment, software for carrying out the above-discussed steps may be stored and distributed on a CD-ROM or DVD 1416, a USB storage device 1418 or other form of media capable of portably storing information. These storage media may be inserted into, and read by, devices such as CD-ROM drive 1414, disk drive 1412, etc. Server 1401 may be coupled to a display 1420, which may be any type of known display or presentation screen, such as LCD, plasma display, cathode ray tube (CRT), etc. A user input interface 1422 is provided, including one or more user interface mechanisms such as a mouse, keyboard, microphone, touchpad, touch screen, voice-recognition system, etc.
[0065] Server 1401 may be coupled to other devices, such as sources, detectors, etc. The server may be part of a larger network configuration as in a global area network such as the Internet 1428, which allows ultimate connection to various computing devices.
[0066] The embodiments described in this section provide methods and apparatuses that use DUnet a DNN type of architecture for seismic data processing. It should be understood that this description is not intended to limit the invention. On the contrary, the exemplary embodiments are intended to cover alternatives, modifications and equivalents, which are included in the spirit and scope of the invention. Further, in the detailed description of the exemplary embodiments, numerous specific details are set forth in order to provide a comprehensive understanding of the invention. However, one skilled in the art would understand that various embodiments may be practiced without such specific details.
[0067] Although the features and elements of the present exemplary embodiments are described in the embodiments in particular combinations, each feature or element can be used alone without the other features and elements of the embodiments or in various combinations with or without other features and elements disclosed herein.
[0068] This written description uses examples of the subject matter disclosed to enable any person skilled in the art to practice the same, including making and using any devices or systems and performing any incorporated methods. Other examples that occur to those skilled in the art are intended to be within the scope of the disclosed inventions.