Oceans cover approximately 2/3s of the Earth’s surface, but seismometers deployed underwater suffer from high levels of ambient noise. I received a grant from Crescent to develop routines to remove ocean-generated noise from OBSs (ocean bottom seismometers) using machine learning, and an example from a very early draft of the code is shown above and quite impressive (this particular is example was chosen because you can’t save that seismogram with bandpass filtering). This problem requires a multi-channel approach and so is a difficult but tractable machine learning problem.
Below is an example of an earthquake recorded in the oceans with noise added… and then removed using machine learning. Seems to work!
Another application is picking arrival times of shots from the R/V Langseth. I’ve built an enormous database of both noise samples and clean records from 18 experiments, and trained a network to pick arrivals with calibrated uncertainties.
First example
This is a clean record that you probably don’t need autopicking for, but it takes about a second to do it reliably with the network. It’s station 135 from network ZU (Hawai’i), data here.
Noisy Example
You aren’t picking this one by eye, especially on the left side. The network is trained to pick with noise and learns to “see” through it the best it can. Those noisest picks might be hard to believe, but can be reproduced within error by picking the first Pn and the first water column reverb’s Pn (the reverb is shown here, and is picked a little better in this case).