Seisbench

Latest version: v0.7.0

Safety actively analyzes 621983 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 2

0.7.0

Major updates

* SeisBench now features a model for low-frequency earthquake (LFE) detection and three LFE stack datasets. The model can be plugged into regular earthquake detection workflows just as any SeisBench model. Note that the quality of the LFE picks is substantially below that of regular earthquake detection models. See 286
* The `annotate/classify` backend has been substantially revamped. Large chunks of pre- and postprocessing are now conducted as vectorized operations in PyTorch. This leads to at least 20 % speed ups on CPU and more than 50 % speed ups on GPU. For DeepDenoiser, speed ups can be as high as 20x. Picking one day of 100 Hz three-component waveforms on GPU now takes below 1 s. For further details and more benchmark results, see 282
* The OBSTransformer model and OBST2024 dataset have been added. These now complement the existing models and datasets for ocean bottom seismometer picking, giving users a wider range of options. See 279 and 281
* The TXED dataset with waveforms from Texas is now available through SeisBench. See 275

Thanks to everyone how contributed to this release with feedback, issues, and especially with PRs.

All merged PRs
* base: stream copy now optional. by miili in https://github.com/seisbench/seisbench/pull/271
* Add TXED dataset by yetinam in https://github.com/seisbench/seisbench/pull/275
* Python 3.12 (Closes 263) by yetinam in https://github.com/seisbench/seisbench/pull/276
* Bugfix for PhaseNet label IDs by JanisHe in https://github.com/seisbench/seisbench/pull/277
* Add warnings for use of default component order by jacksonfellows in https://github.com/seisbench/seisbench/pull/280
* Change annotate logic from windowed to batched pre- and postprocessing by yetinam in https://github.com/seisbench/seisbench/pull/282
* Add OBSTransformer model and its training dataset by alirezaniki in https://github.com/seisbench/seisbench/pull/281
* Clean-up legacy annotate code (Follow-up 282) by yetinam in https://github.com/seisbench/seisbench/pull/283
* Add LFE detection model and LFE stack datasets by yetinam in https://github.com/seisbench/seisbench/pull/286

New Contributors
* JanisHe made their first contribution in https://github.com/seisbench/seisbench/pull/277
* jacksonfellows made their first contribution in https://github.com/seisbench/seisbench/pull/280
* alirezaniki made their first contribution in https://github.com/seisbench/seisbench/pull/281

**Full Changelog**: https://github.com/seisbench/seisbench/compare/v0.6.0...v0.7.0

0.6.0

Major updates

* The MLAAPDE dataset is now available through SeisBench. MLAAPDE is a large-scale dataset containing phase picks primarily at teleseismic distances. Big shoutout to Hank Cole at NEIC for compiling the dataset and making it available for us. See 241
* The annotate and classify functions now expose an async interface. This allows you to integrate them smoothly into your asyncio pipelines, for example for preloading the next waveforms while picking. See 251
* The reliability and accessibility of the SeisBench remote repository has been improved by adding a backup repository. See 256

Thanks to everyone how contributed to this release with feedback, issues, and especially with PRs.

All merged PRs
* Added MLAAPDE dataset by yetinam in https://github.com/seisbench/seisbench/pull/241
* Expose async interfaces to annotate and classify (Closes 248) by yetinam in https://github.com/seisbench/seisbench/pull/251
* Document options to speed-up the model application by yetinam in https://github.com/seisbench/seisbench/pull/252
* Document label shapes with new figure by yetinam in https://github.com/seisbench/seisbench/pull/253
* Added SeisBench + PyOcto example by yetinam in https://github.com/seisbench/seisbench/pull/257
* Integrate and document backup repository by yetinam in https://github.com/seisbench/seisbench/pull/256


**Full Changelog**: https://github.com/seisbench/seisbench/compare/v0.5.0...v0.6.0

0.5.0

Major updates
* SeisBench now comes with two models for teleseismic depth phase picking and depth estimation. DepthPhaseNet and DepthPhaseTEAM allow to identify the depth of teleseismic events through their depth phases. In addition DepthFinder offers a convenient interfaces with direct connection to FDSN. Check 231 for details.
* The Pacific Northwest (PNW) dataset by Ni et al. (2023) is now available through SeisBench. See 199. Thanks to niyiyu for making this available.
* The output structure of all SeisBench models is now identical. This is a **breaking change** but quick to fix. Picking models now return an abstract output object, picks are available at `model.classify(stream).picks`. Similarly, EQTransformer or CRED detections can be accessed at `model.classify(stream).detections`. For convenience, picks and detections can now also be filtered through station and confidence criteria. For details see 230.
* The ProbabilisticLabeller has been updated to allow independent labels that can be used with a sigmoid instead of a softmax layer. Thanks to zhong-yy for the addition in 229.

Thanks to everyone how contributed to this release with feedback, issues, and especially with PRs.

All merged PRs
* post-processing: removing bottleneck nanmean/max by miili in https://github.com/seisbench/seisbench/pull/208
* asyncio: moving nest_asyncio to toplevel by miili in https://github.com/seisbench/seisbench/pull/214
* Change grouping behaviour for grouping="instrument" (Closes 196) by yetinam in https://github.com/seisbench/seisbench/pull/217
* Adding options for disabling normalization and noise label for ProbabilisticLabeller, and checking picks for AddGap and ChannelDropout. by zhong-yy in https://github.com/seisbench/seisbench/pull/222
* Bump python version to 3.9 and document deprecation scheme by yetinam in https://github.com/seisbench/seisbench/pull/234
* Add an option for AddGap and ChannelDropout to modify label directly by zhong-yy in https://github.com/seisbench/seisbench/pull/229
* Add depth phase models by yetinam in https://github.com/seisbench/seisbench/pull/231
* Unify classify output structure by yetinam in https://github.com/seisbench/seisbench/pull/230

New Contributors
* zhong-yy made their first contribution in https://github.com/seisbench/seisbench/pull/222

**Full Changelog**: https://github.com/seisbench/seisbench/compare/v0.4.0...v0.5.0

0.4.0

Major updates
* SeisBench now includes a benchmark dataset and two picking models for ocean bottom seismometer (OBS). Both the dataset and the models are accessible through the regular SeisBench interface. The newly trained models can make use of hydrophone components and consistently outperform models trained on land data for OBS picking. A reference [preprint is available](http://arxiv.org/abs/2304.06635).
* We optimized the access speed for benchmark datasets. This will speed up model training. Speed-ups affect both datasets cached in memory and datasets accessed directly from disk.
* Already in version 0.3.2, we fixed a [critical bug](https://github.com/seisbench/seisbench/issues/187) in the normalization of traces that degraded performance of a large number of models.

All merged PRs
* Performance optimization for data access by yetinam in https://github.com/seisbench/seisbench/pull/178
* Adding OBS dataset and OBS picker "PickBlue" by borthom in https://github.com/seisbench/seisbench/pull/133
* Documentation updates for v0.4 by yetinam in https://github.com/seisbench/seisbench/pull/191


**Full Changelog**: https://github.com/seisbench/seisbench/compare/v0.3.0...v0.4.0

0.3.0

Major updates
* The PhaseNet implementations between SeisBench and the original implementations differed. We now adjusted the implementation within SeisBench. This means that the original weights for PhaseNet are now available in SeisBench. The previous version of PhaseNet is now available as PhaseNetLight.
* SeisBench now supports data grouping to train models on multiple stations. Check out the `grouping` argument for datasets and the `GroupGenerator`
* Window annotation models, such as EQTransformer, can now use different stacking models for the overlap between two windows. For EQTransformer, the default was changed to max stacking in agreement with the original implementation.
* The optional arguments to `annotate` and `classify` have been cleaned up. They now are documented automatically, have clear default values and are validated to avoid invalid arguments.
* We increased the default overlap for window annotation models due to recent research on missing translation invariance for picking models.

Thanks to everyone how contributed to this release with feedback, issues, and especially with PRs.

All merged PRs
* Example notebook for catalog generation by yetinam in https://github.com/seisbench/seisbench/pull/87
* Add max-stack option to reassemble array predictions by calum-chamberlain in https://github.com/seisbench/seisbench/pull/99
* Create CODE_OF_CONDUCT.md by yetinam in https://github.com/seisbench/seisbench/pull/108
* Speedup nan trim by calum-chamberlain in https://github.com/seisbench/seisbench/pull/114
* Documentation and validation for optional arguments for annotate/classify by yetinam in https://github.com/seisbench/seisbench/pull/124
* CVE-2007-4559 Patch by TrellixVulnTeam in https://github.com/seisbench/seisbench/pull/134
* Add data grouping by yetinam in https://github.com/seisbench/seisbench/pull/142
* allow the model to output logits when training by JUNZHU-SEIS in https://github.com/seisbench/seisbench/pull/127
* Add logit output options to all models (Closes 129) by yetinam in https://github.com/seisbench/seisbench/pull/146
* Performance optimization for dataset access by yetinam in https://github.com/seisbench/seisbench/pull/148
* Updated CI actions by yetinam in https://github.com/seisbench/seisbench/pull/161
* adding pyproject / isort by miili in https://github.com/seisbench/seisbench/pull/163
* Implemented original PhaseNet model and converted weights by yetinam in https://github.com/seisbench/seisbench/pull/158
* Bump overlap to half the input samples by yetinam in https://github.com/seisbench/seisbench/pull/176
* Homogenized annotate arguments by yetinam in https://github.com/seisbench/seisbench/pull/177

New Contributors
* TrellixVulnTeam made their first contribution in https://github.com/seisbench/seisbench/pull/134
* JUNZHU-SEIS made their first contribution in https://github.com/seisbench/seisbench/pull/127
* miili made their first contribution in https://github.com/seisbench/seisbench/pull/163

**Full Changelog**: https://github.com/seisbench/seisbench/compare/v0.2.1...v0.3.0

0.2.0

What's changed

- UrbanDenoiser (https://doi.org/10.1126/sciadv.abl3564) is now available in SeisBench. It can be loaded using `DeepDenoiser.from_pretrained("urban")` (#83).
- The `ProbabilisticLabeller` now supports different label shapes, i.e., Gaussian, Triangular and Box (67).
- SeisBench models now support local saving and loading through the newly added `save` and `load` functions. The functions ensure that not only model weights can be saved and loaded but also further model parameters, such as the component order or the sampling rate 69, 71, 86).
- The `WaveformModel` `annotate`/`classify` functions now support multiprocessing for annotating large datasets. Simply set the `parallelism` parameter in the call to these functions. The previous API based on asyncio is maintained for processing small stream objects, as multiprocessing has a higher overhead due to latency (64, 68, 81).
- SeisBench now supports Python 3.10 (52, 70).
- We added further example notebooks (58, 72).
- The `from_pretrained` API to load pretrained models has been completely rewritten. It now supports model versioning, coming with the new function `list_versions` and the `version_str` parameter for `from_pretrained`. In addition, more control and transparency were added whether the function queries the SeisBench remote repository or only the local cache (76, 77, 86).
- Added secondary keys for `get_idx_from_trace_name` to avoid trace name collisions for chunked data sets and multi-part datasets (78, 84)
- In addition, v0.2 contains all bugfixes introduced in the patch versions of v0.1 and further minor fixes (63, 85).

Thanks to everyone contributing to this release through issues, PRs and commits!

Page 1 of 2

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.