{"id":17894079,"url":"https://github.com/blainerothrock/seisml","last_synced_at":"2025-03-23T04:32:11.276Z","repository":{"id":123624192,"uuid":"257960752","full_name":"blainerothrock/seisml","owner":"blainerothrock","description":"A pytorch framework for building deep learning models with seismic data","archived":false,"fork":false,"pushed_at":"2023-07-22T13:51:14.000Z","size":20543,"stargazers_count":10,"open_issues_count":2,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-18T17:59:57.225Z","etag":null,"topics":["detection","paper","seismic-data"],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/blainerothrock.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-04-22T16:40:02.000Z","updated_at":"2024-11-06T11:08:25.000Z","dependencies_parsed_at":null,"dependency_job_id":"6cadab2b-0087-4fb2-a3b1-112af4882797","html_url":"https://github.com/blainerothrock/seisml","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blainerothrock%2Fseisml","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blainerothrock%2Fseisml/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blainerothrock%2Fseisml/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blainerothrock%2Fseisml/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/blainerothrock","download_url":"https://codeload.github.com/blainerothrock/seisml/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245056891,"owners_count":20553854,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["detection","paper","seismic-data"],"created_at":"2024-10-28T14:59:57.696Z","updated_at":"2025-03-23T04:32:11.257Z","avatar_url":"https://github.com/blainerothrock.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SeisML\n![Test](https://github.com/blainerothrock/seisml/workflows/Test/badge.svg)\n[![codecov](https://codecov.io/gh/blainerothrock/seisml/branch/master/graph/badge.svg)](https://codecov.io/gh/blainerothrock/seisml)\n\na deep learning experimentation framework for seismic data.\n\nCreated to fullful of research practicum for Masters in Artificial Intelligence @ \nNorthwestern University. Advised by [Suzan van der Lee](https://www.earth.northwestern.edu/our-people/faculty/van-der-lee-suzan.html).\n\nThe main goal of this project is to explore a project structure that allowed for rapid experimentation, with hyperparameter reporting for use by seismology researchers.\n\nThe codebase includes a reproduction and generalization of the paper [Automating the Detection of Dynamically Triggered Earthquakes via a Deep Metric Learning Algorithm](https://pubs.geoscienceworld.org/ssa/srl/article-abstract/91/2A/901/579921/Automating-the-Detection-of-Dynamically-Triggered?redirectedFrom=fulltext). The goal was to extend the research the research to dynamically triggered tremors. In addition, explored new experiments using the dataset introduced [Generalized Seismic Phase Detection with Deep Learning](https://pubs.geoscienceworld.org/ssa/bssa/article/108/5A/2894/546740/Generalized-Seismic-Phase-Detection-with-Deep?casa_token=XTBzGohrUBoAAAAA:Y2OHyF4u4VknJXTjPxs6lPjA5rW-2yIkjEVSSvJDSP4GoSzxZu7-GeN9F7nE0pI663-EqpU) and unsupervised deep clustering with data from SEIS, a seismic instrument deployed as part of the InSight Mars lander, in an attempt to automate Martian seismic event classification.\n\nDeveloping a baseline phase detection experiment using work and data from the paper Generalized Seismic Phase Detection with Deep Learning. • Experimented with unsupervised deep clustering with data from SEIS, a seismic instrument deployed as part of the InSight Mars lander, in an attempt to automate Martian seismic event classification.\n\n## Active Experiments\n* [Triggered Earthquake Detection](experiments/triggered_earthquake/README.md)\n* [Triggered Tremor Detection](experiments/triggered_tremor/README.md)\n\n## Supported Models\n* [Deep Convolutional Network](seisml/networks/convnet.py)\n* [Dialated Convolutional Network for Deep Clustering](seisml/networks/dilated_convolutional.py)\n\n## Datasets\n* [Triggered Earthquake](experiments/triggered_earthquake)\n* [Triggered Tremor](experiments/triggered_tremor)\n\n## Repo Structure\n* `experiments/`\n    - the directory that contains code specific to a experiment utilizing seisml components.\n    - This includes, model training code, inference and hyperparameter configuration \n* `playground/`\n    - A place for experiments in progress, example code, data exploration, etc.\n* `seisml`\n    - The root directory for the framework (python package)\n    * `core`\n        - contains universal components\n        - `transforms`\n            - model after transforms in `torchvision`, used for preprocessing steps before feeding data into a model\n    * `datasets`\n        - build in Pytorch datasets for use in experiments\n    * `metrics`\n        - calculations modeling\n    * `networks`\n        - custom Pytorch models\n    * `utility`\n        - universal helper methods\n* `tests`\n    - Pytest unit tests for seiml code. These test run in continuous integration and utilize limited resources\n* `tests-non-ci`\n    - Pytest test that are more specific to experiement debugging. Not intended for continuous integration because of the amount of resources used.\n* `environment.yml`\n    - conda environment file for CI and use\n    \n    \n## Installation\n* clone the repository and `cd` to root\n* create a new Anaconda environment\n```shell script\nconda create env -f environment.yml\n``` \n* run a experiments following the `README.md` found in the specific experiment directory. \n\n## Inspiration \nThe inspiration and starting codebase for this model is from the Seismological Research Letters paper \n*[Automating the Detection of Dynamically Triggered Earthquakes via a Deep Metric Learning Algorithm](https://pubs.geoscienceworld.org/ssa/srl/article-abstract/91/2A/901/579921/Automating-the-Detection-of-Dynamically-Triggered)*\n([original codebase](https://github.com/interactiveaudiolab/earthquakes)). \n* Steps to reproducing this paper can be found [here](experiments/triggered_earthquake/README.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblainerothrock%2Fseisml","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fblainerothrock%2Fseisml","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblainerothrock%2Fseisml/lists"}