Soundbay
An intuitive and comprehensive Python-based framework for training deep learning models and apply them in bioacoustic research.
https://github.com/deep-voice/soundbay
Category: Biosphere
Sub Category: Marine Life and Fishery
Last synced: about 2 hours ago
JSON representation
Repository metadata
Deep Learning Framework for Bioacoustics
- Host: GitHub
- URL: https://github.com/deep-voice/soundbay
- Owner: deep-voice
- License: agpl-3.0
- Created: 2021-03-14T21:11:31.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2026-04-29T20:01:37.000Z (20 days ago)
- Last Synced: 2026-05-02T01:02:13.797Z (17 days ago)
- Language: Jupyter Notebook
- Size: 99.8 MB
- Stars: 32
- Watchers: 4
- Forks: 3
- Open Issues: 7
- Releases: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
README.md
Deep Learning Framework for Bioacoustics
Soundbay is an intuitive and comprehensive Python-based framework for training deep learning models and apply them in bioacoustic research. We focus our efforts on marine mammals communication, however, we believe the framework is applicable to a broader scope.
Installation
Before installing, please verify you have a working Python environment, with pytorch, torchvision and torchaudio installed according to your local hardware.
More info on installing pytorch, torchaudio and torchvision can be found in the guide.
Make sure to use python 3.8-3.12 (as of mid-2025 python 3.13 can cause dependency issues)
git clone https://github.com/deep-voice/soundbay
cd soundbay
Installation of the packages:
pip install -e .
Or
pip install -r requirements.txt
sox is also required and can be installed using:
sudo apt update
sudo apt install sox
Usage
Experiment management philosophy
The framework utilizes Hydra package for configuration and experiments management, we highly encourage you to refer their tutorials
We provide modular recipes inside conf to run experiments and to reproduce well established algorithms.
We have three levels of parameters control:
- run-summarizing config files
- parameters groups, represented by a row in the defaults of the config file
- the lowest level of parameters, detailed in the parameter group config file.
Each row in a run configuration file calls a (hopefully) stand-alone group of parameters which can be switched to another one easily, enabling us to run many different experiments without boilerplate.
Data structure
Path to the datafolder should be passed as an argument for training. The data folder or subfolders should contain .wav files.
A .csv file should accompany the data, serve as metadata from which the training pipeline takes samples with their corresponding labels.
A toy example is available for data and the respective annotations
Training Example
Running train and inference commands are done from src.
Run the following command for a toy problem training:
python soundbay/train.py
The toy run uses the default configuration with its default parameters.
Parameters overriding and config file changes are available, please refer Hydra tutorial for more details.
For example,
python soundbay/train.py --config-name runs/main_unit_norm data.batch_size=8 +data.optim=jasco_vgg_19 experiment.manual_seed=4321
Runs training with a config file under conf/runs/main_unit_norm, overriding the batch_size parameter in data, manual_seed in experiment, and the group parameter optim with jasco_vgg_19 instead of the default.
inference Example
To run the predictions of the model on a single audio file use the inference script:
python soundbay/inference.py --config-name runs/inference_single_audio experiment.checkpoint.path=<PATH/TO/MODEL> data.test_dataset.file_path=<PATH/TO/FILE>
To run the predictions of the model on a labeled test partition use:
python soundbay/inference.py --config-name runs/main_inference experiment.checkpoint.path=<PATH/TO/MODEL> data.test_dataset.data_path=<PATH/TO/DATA> data.test_dataset.metadata_path=<PATH/TO/METADATA>
License
This library is licensed under the GNU Affero General Public License v3.0 License.
Owner metadata
- Name: deep-voice
- Login: deep-voice
- Email:
- Kind: organization
- Description:
- Website:
- Location:
- Twitter:
- Company:
- Icon url: https://avatars.githubusercontent.com/u/80794249?v=4
- Repositories: 1
- Last ynced at: 2023-03-05T06:03:14.818Z
- Profile URL: https://github.com/deep-voice
GitHub Events
Total
- Delete event: 11
- Member event: 1
- Pull request event: 58
- Fork event: 1
- Watch event: 11
- Issue comment event: 7
- Push event: 196
- Pull request review event: 59
- Pull request review comment event: 58
- Create event: 45
Last Year
- Delete event: 1
- Pull request event: 27
- Watch event: 3
- Issue comment event: 1
- Push event: 68
- Pull request review comment event: 3
- Pull request review event: 5
- Create event: 11
Committers metadata
Last synced: 3 days ago
Total Commits: 971
Total Committers: 21
Avg Commits per committer: 46.238
Development Distribution Score (DDS): 0.728
Commits in past year: 18
Committers in past year: 5
Avg Commits per committer in past year: 3.6
Development Distribution Score (DDS) in past year: 0.667
| Name | Commits | |
|---|---|---|
| z30g0d | z****d@g****m | 264 |
| Noam Bressler | n****r@g****m | 156 |
| mosheman5 | m****5@g****m | 149 |
| amitgalor18 | a****8@g****m | 111 |
| moshe | m****e@d****i | 81 |
| deepvoicemachine | i****o@d****m | 63 |
| rafaelsul123 | r****3@g****m | 34 |
| noa-weiss | n****s@g****m | 30 |
| ilank | i****v@g****m | 22 |
| Tomer Nahshon | t****r@g****m | 10 |
| shaing10 | 5****0 | 10 |
| Danielle Hausler | 7****r | 7 |
| DorBernsohn | d****n@g****m | 7 |
| asafmazuz | a****z@h****m | 6 |
| uvmend | u****d@g****m | 6 |
| Ohad Zohar | o****d@d****i | 4 |
| Oz Kilim | o****m@h****k | 4 |
| Ubuntu | u****u@i****l | 2 |
| Shai NG | 9****y | 2 |
| yogevmatalon | y****n@g****m | 2 |
| Shaked Hiba | s****1@g****m | 1 |
Committer domains:
- deepdub.ai: 2
- ip-172-31-21-28.ec2.internal: 1
- hotmail.co.uk: 1
- get-grin.com: 1
- deepvoicefoundation.com: 1
Issue and Pull Request metadata
Last synced: 5 days ago
Total issues: 1
Total pull requests: 39
Average time to close issues: 9 minutes
Average time to close pull requests: 23 days
Total issue authors: 1
Total pull request authors: 8
Average comments per issue: 0.0
Average comments per pull request: 0.38
Merged pull request: 28
Bot issues: 0
Bot pull requests: 0
Past year issues: 0
Past year pull requests: 9
Past year average time to close issues: N/A
Past year average time to close pull requests: 7 days
Past year issue authors: 0
Past year pull request authors: 6
Past year average comments per issue: 0
Past year average comments per pull request: 0.33
Past year merged pull request: 4
Past year bot issues: 0
Past year bot pull requests: 0
Top Issue Authors
- shaing10 (1)
Top Pull Request Authors
- danielle-hausler (9)
- Z30G0D (8)
- shaing10 (8)
- mosheman5 (8)
- DorBernsohn (2)
- amitgalor18 (2)
- uvmend (1)
- shakediel (1)
Top Issue Labels
Top Pull Request Labels
- ci-test (31)
- enhancement (2)
- bug (1)
Dependencies
- PyQt5 >=5.14.0
- beautifulsoup4 >=4.9.1
- boto3 >=1.20.0
- future-fstrings >=1.0.0
- hydra-core ==1.0.6
- joblib >=1.0.0
- librosa >=0.7.0
- lxml >=4.4.0
- matplotlib >=2.0.0
- numba >=0.54.0
- numpy <1.21.0
- omegaconf >=2.0.0
- pandas >=1.0.3
- pytest >=5.4.1
- scikit-learn >=0.22.1
- soundfile >=0.10.2
- tqdm >=4.0.0
- wandb >=0.12.0
Score: 6.70808408385307