Patent Description:
Various types of data may be collected via use of one or a network of various types of sensors such as audio sensors, cameras, etc. Examples of such data can be seismic data collected in a field that can be analyzed to understand surface/subsurface seismic activity, surface temperature data, weather data, traffic data, etc. Such data may be contaminated by noise during the collection process. Currently, various conventional noise attenuation methods are utilized to recover signals representing the collected data. These conventional noise attenuation methods often use different characteristics in frequency, wave number or other transform domains to separate the signals representing the collected data from the noise. Examples of such noise attenuating methods include, but are not limited to, f-x projection filtering for random noise attenuation, a prediction error filtering to estimate coherent signal in the f-x domain, using low-rank structure in the t-f domain to attenuate ice-break noise, etc..

A shortcoming of all such noise attenuation methods is that they all involve a trade-off between preservation of the signals and the amount of filtered noise such that as noise attenuation increases, the target signals (e.g., seismic signals) are adversely affected. Moreover, some signals are several orders of magnitude lower than the contaminating noise. Therefore, these signals are lost/eliminated together with the noise during the filtering process, which adversely affect an accurate and complete analysis of the seismic data for underlying applications.

<CIT> discloses a method for assembling an architectural site model facilitates repeated placement and removal of foliage to the model. The site model is constructed as an upper shell portion and a lower base portion. Model foliage is attached to the shell portion. The upper shell portion of the site model is configured for removable attachment to the lower base portion. Thus, removal of the shell from the site model also allows the foliage to be removed from the site model in one motion.

<CIT> discloses a method for de-noising seismic data recorded by seismic receivers including the steps of processing a first seismic data having a first signal-to-noise ratio (SNR) to derive a denoising operator; and applying the de-noising operator to a second seismic data having a second SNR to remove noise from the second seismic data wherein the first SNR is greater than the second SNR.

The present inventive concept provides a system and method to extract signals that represent underlying collected data from contaminating noise signals, and to prevent the loss of portions of such signals that are several orders of magnitude smaller than the noise signals, which may be referred to as weak signals or relatively weak signals. The system and method of the present inventive concept are operable to apply machine learning to preserve weak signals during a de-noising process for extracting the signals.

In one aspect, a computer-implemented method of noise contaminated signal recovery includes receiving, at a server, a first signal including a first portion and a second portion, the first portion indicative of data collected by a plurality of sensors, the second portion representing noise; performing a first denoising process on the first signal to remove the noise to yield a first denoised signal; applying a machine learning model to determine a residual signal indicative of a difference between the first signal and the first denoised signal; and determining a second signal by adding the residual signal to the first denoised signal, the second signal comprising (i) signals of the first portion with higher magnitudes than the noise in the second portion, and (ii) signals of the first portion having lower magnitudes than the noise in the second portion.

In another aspect, the method further includes training the machine learning model with the first denoised signal every time the server receives a different instance of the first signal and determines a corresponding first denoised signal.

In another aspect, training the machine learning model includes determining a solution to an optimization problem using a k-singular value decomposition algorithm.

In another aspect, training the machine learning model is unsupervised.

In another aspect, determining the residual signal includes determining a solution to a dual domain sparse inversion problem using a sparse representation of the residual signal and the noise.

In another aspect, solving the dual domain sparse inversion problem includes using a deterministic algorithm, the deterministic algorithm corresponding to one of a nonmonotone alternating direction method, or stochastic algorithm such as matching pursuit.

In one aspect, a system for noise contaminated signal recovery includes memory having computer-readable instruction stored therein, and one or more processors. The one or more processors are configured to execute the computer-readable instructions to receive a signal contaminated by noise, the signal including data collected by a plurality of sensors, perform a denoising process on the signal to remove the noise to yield a denoised signal; apply the machine learning model to determine a residual signal indicative of a difference between the signal and the denoised signal; and determine the processed signal by adding the residual signal to the denoised signal.

In another aspect, the one or more processors are configured to control the plurality of sensors to determine the residual signal by determining a solution to a dual domain sparse inversion problem using a sparse representation of the residual signal and the noise.

In another aspect, the one or more processors are configured to execute the computer-readable instructions to train the machine learning model with the denoised signal every time a different instance of the signal is received and a corresponding denoised signal is determined.

In another aspect, the one or more processors are configured to execute the computer-readable instructions to train the machine learning model by determining a solution to an optimization problem using a k-singular value decomposition algorithm.

In another aspect, the training the machine learning model is unsupervised.

In another aspect, the one or more processors are configured to control the plurality of sensors to collect the data over a specified period of time.

In another aspect, the method comprises that determining the second signal is based on a single dictionary representing the noise trained using the machine learning model.

In another aspect, the method comprises that determining the second signal is based on a dual dictionary representing the noise and the data, the dual dictionary being trained using the machine learning model.

In order to describe the manner in which the above-recited and other advantages and features of the present inventive concept can be obtained, a more particular description of the principles briefly described above will be rendered by reference to specific example embodiments thereof which are illustrated in the appended drawings. Understanding that these drawings depict only exemplary embodiments of the present inventive concept and are not therefore to be considered to be limiting of its scope, the principles herein are described and explained with additional specificity and detail through the use of the accompanying drawings in which:.

Various example embodiments of the present invention are discussed in detail herein. While specific implementations are discussed, it should be understood that this is done for illustration purposes only. A person skilled in the relevant art will recognize that other components and configurations may be used without parting from the present invention. Thus, the following description and drawings are illustrative and are not to be construed as limiting. Numerous specific details are described to provide a thorough understanding of the present invention. However, in certain instances, well-known or conventional details are not described in order to avoid obscuring the description. References to one or an example embodiment of the present inventive concept can be references to the same example embodiment or any example embodiment; and such references mean at least one of the example embodiments.

Reference to "one embodiment" or "an embodiment" means that a particular feature, structure, or characteristic described in connection with the example embodiment is included in at least one example embodiment of the present inventive concept. The appearances of the phrase "in one embodiment" in various places in the specification are not necessarily all referring to the same example embodiment, nor are separate or alternative example embodiments mutually exclusive of other example embodiments. Moreover, various features are described which may be exhibited by some example embodiments and not by others.

The terms used in this specification generally have their ordinary meanings in the art, within the context of the present inventive concept, and in the specific context where each term is used. The use of examples anywhere in this specification including examples of any terms discussed herein is illustrative only, and is not intended to further limit the scope and meaning of the present inventive concept or of any example term. Likewise, the present inventive concept is not limited to various example embodiments given in this specification.

Without intent to limit the scope of the present inventive concept, examples of instruments, apparatus, methods, and their related results according to the example embodiments of the present inventive concept are given below. Note that titles or subtitles may be used in the examples for convenience of a reader, which in no way should limit the scope of the present inventive concept. Unless otherwise defined, technical and scientific terms used herein have the meaning as commonly understood by one of ordinary skill in the art to which the present inventive concept pertains.

Additional features and advantages of the present inventive concept will be set forth in the description which follows, and in part will be obvious from the description, or can be learned by practice of the herein disclosed principles. The features and advantages of the present inventive concept can be realized and obtained by means of the instruments and combinations particularly pointed out in the appended claims. These and other features of the present inventive concept will become more fully apparent from the following description and appended claims, or can be learned by the practice of the principles set forth herein.

Turning to <FIG>, an example environmental according to an aspect of the present inventive concept is illustrated. Environment or setting <NUM> illustrates a field <NUM> throughout which various types of sensors <NUM> may be deployed to collect one or more types of data. For example, field <NUM> may be a large geographical area over land, sea, air, etc. The one or more types of data may include, but are not limited to, data on surface/subsurface seismic activity, surface/subsurface temperatures, movements of objects such as animals, radioactive substances, water flow, surface movement or displacement, etc..

Sensors <NUM> may be any type of known or to be developed device capable of collecting the underlying data including, but not limited to, conventional cameras, infrared cameras, audio/video sensors, etc. In one example, sensors <NUM> may be equipped with known or to be developed components for communicating with other sensors and/or other network components such as access points <NUM> and/or processing center <NUM> (which may also be referred to as receiver <NUM> or server <NUM>). These components can be wireless connection interfaces, ports for wired connection to other devices, etc..

Setting <NUM> further includes one or more access points <NUM>, which may include any type of known or to be developed access point such as a wireless access point, a base station, a <NUM>/<NUM> node B, etc..

Sensors <NUM> and access points <NUM> may communicate via any known or to be developed wired and/or wireless communication schemes and protocols.

Access points <NUM> may be communicatively coupled to processing center <NUM> via internet <NUM>. Processing center <NUM> may be a single unit or comprised of multiple units remotely placed from one another but communicatively coupled with one another. Processing center <NUM> may function to provide a network operator with the capability to access, monitor, manage and maintain access points <NUM> and/or sensors <NUM>, as will be described below.

<FIG> illustrates an example process for machine learning based signal recovery, according to an aspect of the present inventive concept. <FIG> will be described from the perspective of processing center <NUM>. However, it will be understood that processing center <NUM> has components such as a processor and a memory (which will be described with reference to <FIG>), where such processor executes computer-readable instructions stored on such memory to carry the functionalities described below with reference to <FIG>. Additionally, processing center <NUM> may be a single processor (CPU), a cluster of processors (CPUs), a cloud computing environment, etc..

At S200, processing center <NUM> may receive collected data from sensors <NUM> via one or more of access points <NUM>, as described above with reference to <FIG>.

In one example, processing center <NUM> may configure sensors <NUM> to collect such data continuously or for a specific period of time (e.g., for <NUM> hours, <NUM> hours, a week, a month, etc.). The collected data may be sent to processing center <NUM> by sensors <NUM> as a live stream as the data is being collected or may be sent all at once after collection (e.g., after the data is collected for the specified period of time). In another example, a command sent by processing center <NUM> to sensors <NUM> may trigger transmission of the collected data from sensors <NUM> to processing center <NUM>.

At S202, processing center <NUM> may group the collected data or portions thereof together to create a dataset to be analyzed. This grouping of the collected data or portions thereof may be based on timestamps associated with the received data. For example, when processing center <NUM> receives the collected data continuously, at S202, processing center <NUM> may select a portion of the data received over a specific period of time (last <NUM> hours, <NUM> hours, week, month, etc.) into a dataset to be analyzed.

In another example, sensors <NUM> may not be operating continuously. For example, processing center <NUM> may be able to turn them on and off. As such, processing center <NUM>, prior to S200, may turn sensors <NUM> on, receive the collected data for a specific period of time, turn sensor <NUM> off and then at S202 group the received data into a dataset. This dataset may be represented by d. d may be composed of a signal portion (desired signal representing the collected data), represented by u, and a noise portion representing either coherent noise or incoherent noise depending on the noise type that contaminated the signal portion, represented by n. Accordingly, d may be given by formula (<NUM>) below: <MAT>.

At S204, processing center <NUM> may perform an initial filtering (denoising) process for filtering out (removing) the noise portion to the extent possible using any known or to be developed filtering/denoising process. The signal portion after the initial filtering process may be denoted as û (may be referred to as the initial filtering result).

S204 results in a "clean" mode for training, therefore, a certain degree of signal leakage is permissible. In one example, therefore, the initial filter process may apply a simple filtering method due to their efficiency such as an f-x deconvolution process or f-k filter with moveout correction to filter the noise portion or any other known or to be developed filtering methods or algorithms.

The processing center <NUM> may rearrange (partition/divide) û into overlapping patches and vectorizes each path. By exploiting the redundancy of seismic data, û may be expressed by a multiplication of a dictionary D and sparse coefficient matrix x, per formula (<NUM>) shown below: <MAT>.

As noted above, methods described herein to recover relatively weak signals is based on applying machine learning. According to an example of such machine learning process, which may also be referred to as an unsupervised machine learning, a dictionary D may be trained using û. Accordingly, at S206, processing center <NUM> applies the initial filtering result (û ) to train dictionary D. In one example, training dictionary D is based on formula (<NUM>) below: <MAT>.

In formula (<NUM>), T is a sparse threshold, T represents the sparsity threshold, ∥. ∥F denotes the Frobenius norm, and ∥. ∥<NUM> referred to as the I<NUM> norm counts the number of nonzero entries. Formula (<NUM>) is an example of an optimization problem that can be solved using a K- Singular Value Decomposition (K-SVD) algorithm. Adopting the idea of block coordinate descent, the K-SVD algorithm can reduce the I<NUM> minimization problem into two subproblems --sparse coding and dictionary updating. The sparse coding aspect includes calculating the sparse coefficients through orthogonal matching pursuit (OMP) or a variant of OMP for a given dictionary D, while the dictionary updating step updates atoms by solving a series of rank-<NUM> approximations to decrease the data misfit. Dictionary updating involves performing singular value decomposition repeatedly. To reduce the complexity of dictionary learning, exact singular value decomposition may be replaced with randomized singular value decomposition, or the solution thereof approximated by taking a single iteration of gradient descent.

At S208, processing center <NUM> updates dictionary D with the solution to the optimization problem given by formula (<NUM>). Accordingly, as more and more data is collected, dictionary D is trained, which will then be used to extract relatively weak signals that may otherwise be filtered with noise using conventional noise filtering/ attenuation processes. The accuracy of the residual signal recovery using dictionary D increases as more and more data is used to train dictionary D.

At S210, processing center <NUM> stores the updated dictionary D in a memory or an associated database of processing center <NUM>.

At S212, processing center <NUM> applies the stored dictionary D to derive a residual signal, which is a difference between d and û, given by formula (<NUM>) below: <MAT> which denotes the residual signal with noise. For random Gaussian noise, we can employ a standard sparse inversion procedure for recovery. The sparse representation of the residual signal, x<NUM>, can be obtained by solving: <MAT> where ε is the error threshold dictated by the noise variance, and ∥. ∥<NUM> denotes the I<NUM> norm used to impose sparsity with robustness. However, the assumption of Gaussian noise is rarely held for field data and, therefore, solving the standard sparse inversion problem may provide suboptimal results.

This residual signal, is a signal that contains the relatively weak signals (e.g., weak seismic signal relative to the magnitude of the contaminating noise signal) and therefore by applying dictionary D thereto, the relatively weak signals can be recovered and added to û to obtain a final denoised signal. This final denoised signal has more signals, including the relatively weak signals, retained therein, when compared to the final denoised signals obtained by apply conventional filtering methods to d, as previously discussed.

In one example and in applying dictionary D, an assumption is made that the initial filtering result (i.e., û) and the residual signal (i.e., d̂) share the same set of basic functions.

In one example, to better separate the residual signal from the noise, processing center <NUM> may invert both (the residual signal and the noise) simultaneously using a dual domain sparse inversion processing given by formula (<NUM>) below: <MAT>.

In formula (<NUM>), x<NUM> and x<NUM> are sparse representations of the residual signal and the noise signal (i.e., e), S is the chosen sparsity basis for the noise, ε is a configuration error tolerance, which may be determined according to experiments and/or empirical studies indicative of the collected data (e.g., seismic data) and ∥x<NUM>∥<NUM>/∥x<NUM>∥<NUM> may be referred to as the I<NUM>- norm. In one example, sparsity of the noise and residual signals may be imposed using I<NUM>,-norm instead of I<NUM>-norm.

With x<NUM> derived per formula (<NUM>), at S212, processing center <NUM> applies D to x, to derive (determine) the residual signal (e.g., Dx<NUM>). Thereafter, at S214, processing center <NUM> may determine a final filtered signal, which can be obtained by addition of Dx<NUM> to û. This final filtered signal may be referred to as uout given by formula (<NUM>) below: <MAT>.

The final filtered (denoised) signal derived per process of <FIG> may be used for further analysis of the underlying data for the intended application (e.g., studying and understanding surface/subsurface seismic activity, temperatures, weather pattern, etc.). This further processing may be performed by processing center <NUM> or may be output by processing center <NUM> to another processing component for completing the further analysis.

The above process described with reference to <FIG> may be referred to as signal recovery with single dictionary learning method. In another example, a similar process but instead of one dictionary, there can be a dual dictionary learning for signal recovery, where both noise and underlying signal components are learned.

The proposed method of <FIG> with single dictionary learning demands a predefined S to characterize noise. It works well for incoherent noise or well-behaved coherent noise, with energy focused in a transform domain. However, the method with single dictionary training may not be optimal or effectively represent the noise that is highly dispersive or scattered. A natural extension of the method is to build S by learning in a similar way and utilizes both adaptive dictionaries for inverting residual signal.

For this dual dictionary training based method, assume that a noise estimate can be attained by applying the conventional method, denoted by g; i.e., <MAT> Next, the noise model n̂ may be partitioned/rearranged in a same way as the signal model û described above with reference to <FIG>. The formed noise matrix is then input to train the dictionary S by solving a similar dictionary learning problem as in Formula (<NUM>) using the K-SVD. In the recovery step, the predefined transform is replaced by the trained dictionary S adapted from the noise estimate. A similar dual-domain sparse inversion as in formula (<NUM>) can be employed to invert the residual signal from the noisy data d̂.

The dual dictionary learning may require additional estimate of the noise model and one more training step prior to recovery, which unavoidably increases the computation cost. However, the method provides an effective alternative for attenuating some of the most complex noise.

The proposed method with single or dual dictionary learning differs from many residual signal recovery methods since it requires no assumptions on local similarities between the initial estimate and the residual signal. A common set of bases functions in a global context suffices to assure the recovery.

One advantage of determining the final filtered signal per process of <FIG> is that the process, unlike conventional filtering methods, does not need any assumption on neither local similarities nor signal coherency in any transfer domain between the initial estimate and the residual signal. In other words, a common set of base functions in a global context suffices to assure the success of signal recovery, where relatively weak signals are preserved and as such, a more accurate and complete analysis of the received data can be performed.

<FIG> illustrates example outputs of the process of <FIG>, according to an aspect of the present inventive concept. Graph <NUM> is an example of a noisy input received at S200 at processing center <NUM>. Graph <NUM> is an example of the results of the initial filtering performed by processing center <NUM> on the received noisy input at S204. Graph <NUM> is an example of a difference between the noisy input of graph <NUM> and the initial filtering result of graph <NUM> (e.g., d̂ per formula (<NUM>) described above with reference to <FIG>). Graph <NUM> is an example of applying dictionary D to the residual signal (e.g., Dx<NUM>). Graph <NUM> is an example of a subset of dictionary D with each patch (grid) in graph <NUM> representing an atom in the dictionary D. Finally, graph <NUM> is an example of uout determined at S214, as described above.

<FIG> illustrates example outputs of the process of <FIG>, according to an aspect of the present inventive concept. While <FIG> illustrates results of applying the process of <FIG> to synthetic/computer generated data, <FIG> illustrates the result of applying the process of <FIG> to real world data collected on the Alaskan North Slope using sensors <NUM> (e.g., point sources, point receivers as well as Compressive Sensing Imaging (CSI) technology). The collected data of <FIG> is contaminated by strong noise due to extreme weather conditions within the region in which the data is collected.

The collected data is first sorted into offset-vector tiles (OVTs) shown in graph <NUM>. According to process of <FIG> (i.e., S204) initial filtering process is performed using Singular Spectrum Analysis (SSA) to reduce noise and generate initial signal estimate in the OVT domain. Graph <NUM> illustrates the collected data after the initial filter process of S204 using SSA while graph <NUM> illustrate the difference between graphs <NUM> and <NUM> (in other words, graph <NUM> illustrates the removed noise).

Results of graph <NUM> is then fed into the above described dictionary to derive the residual signal shown in graph <NUM> (S206 to S212 of <FIG> and using dual sparse inversion as described above). The process of S214 is then applied to residual signals shown in graph <NUM> to provide the final filtered signal shown in graph <NUM>.

Graph <NUM> illustrates the difference between the final denoised result of graph <NUM> and the initial collected data shown in graph <NUM>.

Comparing graphs <NUM> and <NUM>, it can be observed that relatively weak signals indicative of seismic activity are extracted with only a fraction of noise remaining.

<FIG> illustrates example outputs of the process of <FIG>, according to an aspect of the present inventive concept. <FIG> illustrates an example of coherent noise attenuation via dual dictionary learning as described above. High-density dataset over a producing field in Permian Basin using CSI technology was taken. By applying the dual dictionary learning, objective is to improve image quality for unconventional reservoir development. The field from which data is taken is known to be a difficult seismic data area- salt dissolution in the near surface leads to a strong back-scattering. Graph <NUM> exhibits a typical raw data, in which the scattered noise together with ground roll created a complex noise pattern. In the near and mid offsets, the scattered energy is more than 30dB higher than the reflected energy.

For initial noise attenuation, envelop soft mute followed by windowed Fourier domain filtering (WFT) is employed to preserve flat or near-flat events after static and moveout corrections. Graph <NUM> shows the initial denoised result which was served as the signal estimate for training. To generate the initial noise estimate, envelop soft mute was applied again on the differences to extract the high-amplitude portion of the scattered and ground roll noise, as shown in graph <NUM>. Both models are next input for dictionary learning to adaptively form D and S, described above. Graphs <NUM> and <NUM> displays the subsets of learned dictionaries- atoms with distinct characters were trained which enables further separation of signal and noise. Graph <NUM> shows the recovered residual signal by incorporating dual dictionaries in inversion, and graph <NUM> shows the final denoised result with signal recovery.

We next stacked the data for further quality control (QC), the result of which is shown in <FIG> illustrates example outputs of the process of <FIG>, according to an aspect of the present inventive concept. Despite the high fold of over <NUM>,<NUM>, the raw stack still exhibits strong distortions from near-surface scattering, as shown in Graph <NUM>. Graphs <NUM>, <NUM> and <NUM> plot the stacks of initial denoised data using WFT, recovered residual signal and final denoised data, respectively. Comparing Graphs <NUM> and <NUM>, we can observe the primary energy has been successfully recovered for both shallow and deep reflectors. The final denoised stack in Graph <NUM> indicates a good denoising quality with minimal distortions and primary leakage. Following a velocity model building exercise on denoised data, prestack depth migration was performed for imaging evaluation. Graphs <NUM> and <NUM> illustrate a comparison of a shallow migrated image (<NUM>-<NUM>, 000ft) between raw and final denoised data. The significant uplifts above <NUM>,500ft make the very shallow image interpretable and allow better planning for hazard avoidance. The Delaware horizon (bright reflector around <NUM>,500ft) and below is also evidently better imaged, with reduced migration artifacts and clearly defined faults. The positive result from such a difficult data area suggests a good performance of the proposed learning-based method in attenuating coherent noise.

Signal recovery using single and dual dictionary learning are described above. However, the present disclosure is not limited thereto. Any number of N dictionaries may be used where N is a positive integer greater than <NUM> conditions on input signal being partitioned into N distinct signals/noises, where sparse invention can be applied to such N dictionaries to recover underlying data signal.

Examples described above provide an unsupervised machine learning and sparse inversion based method for recovery of weak signals indicative of seismic activity (weak relative to existing noise signals) that would otherwise be lost during noise filtering/attenuation process utilized by current signal recovery methods. These examples are equally applicable to both coherent and incoherent noise on pre-stack and/or stacked images.

Having described examples of machine learning based signal recovery with application to signals indicative of seismic activity and turning to <FIG>, an example computing system <NUM> is illustrated, which can be implemented as processing center <NUM> or a server of processing center <NUM> for implementing functionalities described with reference to <FIG>. System <NUM> can include components in electrical communication with each other using a connection <NUM>, such as a bus. System <NUM> includes a processing unit (CPU or processor) <NUM> and connection <NUM> that couples various system components including the system memory <NUM>, read only memory (ROM) <NUM> and/or random access memory (RAM) <NUM>, to the processor <NUM>. System <NUM> can include a cache <NUM> of high-speed memory connected directly with, in close proximity to, or integrated as part of processor <NUM>. System <NUM> can copy data from memory <NUM> and/or storage device <NUM> to cache <NUM> for quick access by processor <NUM>. In this way, cache <NUM> can provide a performance boost that avoids processor <NUM> delays while waiting for data. These and other modules can control or be configured to control processor <NUM> to perform various actions. Other system memory <NUM> may be available for use as well. Memory <NUM> can include multiple different types of memory with different performance characteristics. Processor <NUM> can include any general purpose processor and a hardware or software service, such as service <NUM><NUM>, service <NUM><NUM>, and service <NUM><NUM> stored in storage device <NUM>, configured to control processor <NUM> as well as a special-purpose processor where software instructions are incorporated into the actual processor design. Processor <NUM> may be a completely self-contained computing system, containing multiple cores or processors, a bus, memory controller, cache, etc. A multi-core processor may be symmetric or asymmetric.

To enable user interaction with system <NUM>, an input device <NUM> can represent any number of input mechanisms, such as a microphone for speech, a touch-sensitive screen for gesture or graphical input, keyboard, mouse, motion input, speech and so forth. An output device <NUM> can also be one or more of a number of output mechanisms known to those of skill in the art. In some instances, multimodal systems can enable a user to provide multiple types of input to communicate with system <NUM>. Communications interface <NUM> can generally govern and manage the user input and system output. There is no restriction on operating on any particular hardware arrangement and therefore the basic features here may easily be substituted for improved hardware or firmware arrangements as they are developed.

Storage device <NUM> can include service <NUM><NUM>, service <NUM><NUM> and/or service <NUM><NUM> for execution by processor <NUM> to cause processor <NUM> to carryout functionalities described above with reference to <FIG>. Other hardware or software modules are contemplated. Storage device <NUM> can be connected to connection <NUM>. In one aspect, a hardware module that performs a particular function can include the software component stored in a computer- readable medium in connection with the necessary hardware components, such as processor <NUM>, connection <NUM>, output device <NUM>, and so forth, to carry out the function.

Devices implementing methods according to the present inventive concept can comprise hardware, firmware and/or software, and can take any of a variety of form factors.

The instructions, media for conveying such instructions, computing resources for executing them, and other structures for supporting such computing resources are means for providing the functions described herein with respect to the present inventive concept.

Claim 1:
A computer-implemented method of noise contaminated signal recovery, the method comprising:
receiving, at a server (<NUM>), a first signal including a first portion and a second portion, the first portion indicative of data collected by a plurality of sensors (<NUM>), the second portion representing noise, characterized by
performing a first denoising process on the first signal to remove the noise to yield a first denoised signal;
applying a machine learning model to determine a residual signal indicative of a difference between the first signal and the first denoised signal; and
determining a second signal by adding the residual signal to the first denoised signal, the second signal comprising (i) signals of the first portion with higher magnitudes than the noise in the second portion, and (ii) signals of the first portion having lower magnitudes than the noise in the second portion.