{"id":303295,"name":"BirdSet","description":"A benchmark dataset collection for bird sound classification.","url":"https://github.com/dbd-research-group/birdset","last_synced_at":"2026-04-07T23:30:23.429Z","repository":{"id":229627215,"uuid":"681067762","full_name":"DBD-research-group/BirdSet","owner":"DBD-research-group","description":"A benchmark dataset collection for bird sound classification","archived":false,"fork":false,"pushed_at":"2025-09-10T13:40:06.000Z","size":151995,"stargazers_count":65,"open_issues_count":18,"forks_count":22,"subscribers_count":2,"default_branch":"main","last_synced_at":"2026-03-02T08:41:32.666Z","etag":null,"topics":["avian","benchmark","bioacoustics","deeplearning"],"latest_commit_sha":null,"homepage":"https://huggingface.co/datasets/DBD-research-group/BirdSet","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DBD-research-group.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-08-21T07:34:55.000Z","updated_at":"2026-02-11T10:19:20.000Z","dependencies_parsed_at":"2024-04-15T20:38:48.473Z","dependency_job_id":"e6f37e21-865f-4fc6-a280-4133b1bb325f","html_url":"https://github.com/DBD-research-group/BirdSet","commit_stats":null,"previous_names":["dbd-research-group/birdset"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/DBD-research-group/BirdSet","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DBD-research-group%2FBirdSet","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DBD-research-group%2FBirdSet/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DBD-research-group%2FBirdSet/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DBD-research-group%2FBirdSet/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DBD-research-group","download_url":"https://codeload.github.com/DBD-research-group/BirdSet/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DBD-research-group%2FBirdSet/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30790605,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-20T22:51:33.771Z","status":"online","status_checked_at":"2026-03-21T02:00:07.962Z","response_time":114,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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"}},"owner":{"login":"DBD-research-group","name":"DBD-research-group","uuid":"135323468","kind":"organization","description":null,"email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/135323468?v=4","repositories_count":4,"last_synced_at":"2024-05-14T00:06:49.980Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/DBD-research-group","funding_links":[],"total_stars":2,"followers":5,"following":0,"created_at":"2023-06-08T15:24:49.839Z","updated_at":"2024-05-14T00:06:50.790Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DBD-research-group","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DBD-research-group/repositories"},"packages":[],"commits":{"id":4075677,"full_name":"dbd-research-group/birdset","default_branch":"main","total_commits":775,"total_committers":17,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":45.588235294117645,"dds":0.6619354838709677,"past_year_total_commits":20,"past_year_total_committers":5,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":4.0,"past_year_dds":0.25,"last_synced_at":"2026-03-07T04:25:33.156Z","last_synced_commit":"9929cc436153441d617f3799ea8a94ec2649b35e","created_at":"2024-11-06T00:08:07.543Z","updated_at":"2026-03-07T04:24:07.621Z","committers":[{"name":"lurauch","email":"lukas.rauch@uni-kassel.de","login":"lurauch","count":262},{"name":"Raphael Schwinger","email":"raphaelschwinger@gmail.com","login":"raphaelschwinger","count":193},{"name":"rheinrich","email":"Thaijitsu39!","login":null,"count":91},{"name":"Moritz Wirth","email":"moritz.wirth7@web.de","login":"Moritz-Wirth","count":66},{"name":"Tom Hauschild","email":"stu216509@mail.uni-kiel.de","login":"tom2208","count":44},{"name":"lurauch","email":"lukas.rauch@uni-kasel.de","login":null,"count":38},{"name":"Ruslan","email":"ruslanantjuschin@gmail.com","login":null,"count":34},{"name":"stu204020","email":"stu204020@mail.uni-kiel.de","login":"JonasLange","count":14},{"name":"Moritz Richert","email":"mo01010010itz@protonmail.com","login":null,"count":12},{"name":"PariaValizadeh","email":"pariya.valizadeh@gmail.com","login":"PariaValizadeh","count":11},{"name":"Tom","email":"online417903317@proton.me","login":null,"count":3},{"name":"XgamerTV","email":"2015xgamer@gmail.com","login":null,"count":2},{"name":"Dan Morris","email":"agentmorris@gmail.com","login":"agentmorris","count":1},{"name":"XgamerTV","email":"matsaustralia@yahoo.com.au","login":"XgamerTV","count":1},{"name":"reheinrich","email":"rene.pg.heinrich@gmail.com","login":"reheinrich","count":1},{"name":"Milan","email":"stu235977@mail.uni-kiel.de","login":null,"count":1},{"name":"sammlapp","email":"sammlapp@gmail.com","login":"sammlapp","count":1}],"past_year_committers":[{"name":"Raphael Schwinger","email":"raphaelschwinger@gmail.com","login":"raphaelschwinger","count":15},{"name":"lurauch","email":"75244861+lurauch","login":"lurauch","count":2},{"name":"XgamerTV","email":"matsaustralia@yahoo.com.au","login":"XgamerTV","count":1},{"name":"Moritz-Wirth","email":"74349080+Moritz-Wirth","login":"Moritz-Wirth","count":1},{"name":"Milan","email":"stu235977@mail.uni-kiel.de","login":null,"count":1}],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/dbd-research-group%2Fbirdset/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-03-21T00:00:06.680Z","repositories_count":6201644,"commits_count":935966252,"contributors_count":36154370,"owners_count":1145361,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues_stats":{"full_name":"DBD-research-group/BirdSet","html_url":"https://github.com/DBD-research-group/BirdSet","last_synced_at":"2026-03-02T06:01:48.312Z","status":"active","issues_count":80,"pull_requests_count":228,"avg_time_to_close_issue":7286898.964285715,"avg_time_to_close_pull_request":995590.6582914573,"issues_closed_count":56,"pull_requests_closed_count":199,"pull_request_authors_count":14,"issue_authors_count":18,"avg_comments_per_issue":1.0125,"avg_comments_per_pull_request":0.3991228070175439,"merged_pull_requests_count":155,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":13,"past_year_pull_requests_count":20,"past_year_avg_time_to_close_issue":1483549.0,"past_year_avg_time_to_close_pull_request":114571.86666666667,"past_year_issues_closed_count":7,"past_year_pull_requests_closed_count":15,"past_year_pull_request_authors_count":4,"past_year_issue_authors_count":5,"past_year_avg_comments_per_issue":0.9230769230769231,"past_year_avg_comments_per_pull_request":0.2,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":11,"created_at":"2024-05-14T00:05:20.415Z","updated_at":"2026-03-02T06:01:48.312Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/DBD-research-group%2FBirdSet","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/DBD-research-group%2FBirdSet/issues","issue_labels_count":{"enhancement":1},"pull_request_labels_count":{"enhancement":2,"documentation":1},"issue_author_associations_count":{"CONTRIBUTOR":60,"NONE":19,"COLLABORATOR":1},"pull_request_author_associations_count":{"CONTRIBUTOR":189,"COLLABORATOR":20,"NONE":19},"issue_authors":{"lurauch":24,"reheinrich":11,"raphaelschwinger":10,"sammlapp":9,"Moritz-Wirth":5,"danielbonkowsky":5,"JonasLange":3,"houtan-ghaffari":2,"paulpeyret-biophonia":2,"kornelhowil":1,"nhaH-luaP":1,"tom2208":1,"PariaValizadeh":1,"IamJeffG":1,"nkundiushuti":1,"hbellafkir":1,"lollogiro":1,"ilyassmoummad":1},"pull_request_authors":{"lurauch":50,"raphaelschwinger":49,"Moritz-Wirth":36,"reheinrich":25,"tom2208":20,"PariaValizadeh":17,"RuslanAntjuschin":9,"XgamerTV":8,"mo01010010itz":5,"sammlapp":2,"agentmorris":2,"milanmuntenjon":2,"yokoryu-meteor":2,"JonasLange":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-03-21T00:00:06.750Z","repositories_count":13846656,"issues_count":34764971,"pull_requests_count":113487266,"authors_count":11208037,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"},"past_year_issue_labels_count":{},"past_year_pull_request_labels_count":{"documentation":1},"past_year_issue_author_associations_count":{"NONE":6,"CONTRIBUTOR":4},"past_year_pull_request_author_associations_count":{"CONTRIBUTOR":16,"NONE":2},"past_year_issue_authors":{"danielbonkowsky":5,"sammlapp":4,"kornelhowil":1},"past_year_pull_request_authors":{"raphaelschwinger":11,"XgamerTV":4,"milanmuntenjon":2,"Moritz-Wirth":1},"maintainers":[{"login":"PariaValizadeh","count":18,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/PariaValizadeh"},{"login":"tom2208","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/tom2208"}],"active_maintainers":[]},"events":{"total":{"DeleteEvent":2,"MemberEvent":1,"PullRequestEvent":58,"ForkEvent":12,"IssuesEvent":53,"WatchEvent":31,"IssueCommentEvent":83,"PushEvent":73,"PullRequestReviewCommentEvent":16,"PullRequestReviewEvent":25,"CreateEvent":20},"last_year":{"PullRequestEvent":15,"ForkEvent":6,"IssuesEvent":16,"WatchEvent":14,"IssueCommentEvent":14,"PushEvent":9,"PullRequestReviewEvent":5,"PullRequestReviewCommentEvent":3,"CreateEvent":6}},"keywords":["avian","benchmark","bioacoustics","deeplearning"],"dependencies":[{"ecosystem":"pypi","filepath":"poetry.lock","sha":null,"kind":"lockfile","created_at":"2024-04-03T08:46:24.462Z","updated_at":"2024-04-03T08:46:24.462Z","repository_link":"https://github.com/DBD-research-group/BirdSet/blob/main/poetry.lock","dependencies":[{"id":17208245306,"package_name":"absl-py","ecosystem":"pypi","requirements":"2.1.0","direct":false,"kind":"runtime","optional":false},{"id":17208245307,"package_name":"aiohttp","ecosystem":"pypi","requirements":"3.9.3","direct":false,"kind":"runtime","optional":false},{"id":17208245308,"package_name":"aiosignal","ecosystem":"pypi","requirements":"1.3.1","direct":false,"kind":"runtime","optional":false},{"id":17208245309,"package_name":"alembic","ecosystem":"pypi","requirements":"1.13.1","direct":false,"kind":"runtime","optional":false},{"id":17208245310,"package_name":"aniso8601","ecosystem":"pypi","requirements":"9.0.1","direct":false,"kind":"runtime","optional":false},{"id":17208245311,"package_name":"antlr4-python3-runtime","ecosystem":"pypi","requirements":"4.9.3","direct":false,"kind":"runtime","optional":false},{"id":17208245312,"package_name":"anyio","ecosystem":"pypi","requirements":"4.3.0","direct":false,"kind":"runtime","optional":false},{"id":17208245313,"package_name":"appdirs","ecosystem":"pypi","requirements":"1.4.4","direct":false,"kind":"runtime","optional":false},{"id":17208245314,"package_name":"appnope","ecosystem":"pypi","requirements":"0.1.4","direct":false,"kind":"runtime","optional":false},{"id":17208245315,"package_name":"argon2-cffi","ecosystem":"pypi","requirements":"23.1.0","direct":false,"kind":"runtime","optional":false},{"id":17208245316,"package_name":"argon2-cffi-bindings","ecosystem":"pypi","requirements":"21.2.0","direct":false,"kind":"runtime","optional":false},{"id":17208245317,"package_name":"arrow","ecosystem":"pypi","requirements":"1.3.0","direct":false,"kind":"runtime","optional":false},{"id":17208245318,"package_name":"asttokens","ecosystem":"pypi","requirements":"2.4.1","direct":false,"kind":"runtime","optional":false},{"id":17208245319,"package_name":"async-lru","ecosystem":"pypi","requirements":"2.0.4","direct":false,"kind":"runtime","optional":false},{"id":17208245320,"package_name":"async-timeout","ecosystem":"pypi","requirements":"4.0.3","direct":false,"kind":"runtime","optional":false},{"id":17208245321,"package_name":"attrs","ecosystem":"pypi","requirements":"23.2.0","direct":false,"kind":"runtime","optional":false},{"id":17208245322,"package_name":"audiomentations","ecosystem":"pypi","requirements":"0.33.0","direct":false,"kind":"runtime","optional":false},{"id":17208245906,"package_name":"audioread","ecosystem":"pypi","requirements":"3.0.1","direct":false,"kind":"runtime","optional":false},{"id":17208245910,"package_name":"autopage","ecosystem":"pypi","requirements":"0.5.2","direct":false,"kind":"runtime","optional":false},{"id":17208245912,"package_name":"babel","ecosystem":"pypi","requirements":"2.14.0","direct":false,"kind":"runtime","optional":false},{"id":17208245915,"package_name":"beautifulsoup4","ecosystem":"pypi","requirements":"4.12.3","direct":false,"kind":"runtime","optional":false},{"id":17208245917,"package_name":"bleach","ecosystem":"pypi","requirements":"6.1.0","direct":false,"kind":"runtime","optional":false},{"id":17208245920,"package_name":"blinker","ecosystem":"pypi","requirements":"1.7.0","direct":false,"kind":"runtime","optional":false},{"id":17208245922,"package_name":"certifi","ecosystem":"pypi","requirements":"2024.2.2","direct":false,"kind":"runtime","optional":false},{"id":17208245924,"package_name":"cffi","ecosystem":"pypi","requirements":"1.16.0","direct":false,"kind":"runtime","optional":false},{"id":17208245927,"package_name":"cfgv","ecosystem":"pypi","requirements":"3.4.0","direct":false,"kind":"runtime","optional":false},{"id":17208245929,"package_name":"charset-normalizer","ecosystem":"pypi","requirements":"3.3.2","direct":false,"kind":"runtime","optional":false},{"id":17208245932,"package_name":"click","ecosystem":"pypi","requirements":"8.1.7","direct":false,"kind":"runtime","optional":false},{"id":17208245934,"package_name":"cliff","ecosystem":"pypi","requirements":"4.6.0","direct":false,"kind":"runtime","optional":false},{"id":17208246044,"package_name":"cloudpickle","ecosystem":"pypi","requirements":"3.0.0","direct":false,"kind":"runtime","optional":false},{"id":17208246045,"package_name":"cmaes","ecosystem":"pypi","requirements":"0.10.0","direct":false,"kind":"runtime","optional":false},{"id":17208246046,"package_name":"cmd2","ecosystem":"pypi","requirements":"2.4.3","direct":false,"kind":"runtime","optional":false},{"id":17208246047,"package_name":"colorama","ecosystem":"pypi","requirements":"0.4.6","direct":false,"kind":"runtime","optional":false},{"id":17208246048,"package_name":"colorlog","ecosystem":"pypi","requirements":"6.8.2","direct":false,"kind":"runtime","optional":false},{"id":17208246049,"package_name":"comm","ecosystem":"pypi","requirements":"0.2.2","direct":false,"kind":"runtime","optional":false},{"id":17208246050,"package_name":"contourpy","ecosystem":"pypi","requirements":"1.2.0","direct":false,"kind":"runtime","optional":false},{"id":17208246051,"package_name":"cycler","ecosystem":"pypi","requirements":"0.12.1","direct":false,"kind":"runtime","optional":false},{"id":17208246052,"package_name":"datasets","ecosystem":"pypi","requirements":"2.18.0","direct":false,"kind":"runtime","optional":false},{"id":17208246053,"package_name":"debugpy","ecosystem":"pypi","requirements":"1.8.1","direct":false,"kind":"runtime","optional":false},{"id":17208246054,"package_name":"decorator","ecosystem":"pypi","requirements":"5.1.1","direct":false,"kind":"runtime","optional":false},{"id":17208246055,"package_name":"defusedxml","ecosystem":"pypi","requirements":"0.7.1","direct":false,"kind":"runtime","optional":false},{"id":17208246056,"package_name":"dill","ecosystem":"pypi","requirements":"0.3.8","direct":false,"kind":"runtime","optional":false},{"id":17208246057,"package_name":"distlib","ecosystem":"pypi","requirements":"0.3.8","direct":false,"kind":"runtime","optional":false},{"id":17208246058,"package_name":"docker","ecosystem":"pypi","requirements":"7.0.0","direct":false,"kind":"runtime","optional":false},{"id":17208246059,"package_name":"docker-pycreds","ecosystem":"pypi","requirements":"0.4.0","direct":false,"kind":"runtime","optional":false},{"id":17208246060,"package_name":"entrypoints","ecosystem":"pypi","requirements":"0.4","direct":false,"kind":"runtime","optional":false},{"id":17208246061,"package_name":"exceptiongroup","ecosystem":"pypi","requirements":"1.2.0","direct":false,"kind":"runtime","optional":false},{"id":17208246062,"package_name":"executing","ecosystem":"pypi","requirements":"2.0.1","direct":false,"kind":"runtime","optional":false},{"id":17208246063,"package_name":"fastjsonschema","ecosystem":"pypi","requirements":"2.19.1","direct":false,"kind":"runtime","optional":false},{"id":17208246064,"package_name":"ffprobe","ecosystem":"pypi","requirements":"0.5","direct":false,"kind":"runtime","optional":false},{"id":17208247396,"package_name":"filelock","ecosystem":"pypi","requirements":"3.13.1","direct":false,"kind":"runtime","optional":false},{"id":17208247397,"package_name":"flask","ecosystem":"pypi","requirements":"3.0.2","direct":false,"kind":"runtime","optional":false},{"id":17208247398,"package_name":"fonttools","ecosystem":"pypi","requirements":"4.50.0","direct":false,"kind":"runtime","optional":false},{"id":17208247399,"package_name":"fqdn","ecosystem":"pypi","requirements":"1.5.1","direct":false,"kind":"runtime","optional":false},{"id":17208247400,"package_name":"frozenlist","ecosystem":"pypi","requirements":"1.4.1","direct":false,"kind":"runtime","optional":false},{"id":17208247401,"package_name":"fsspec","ecosystem":"pypi","requirements":"2024.2.0","direct":false,"kind":"runtime","optional":false},{"id":17208247402,"package_name":"gitdb","ecosystem":"pypi","requirements":"4.0.11","direct":false,"kind":"runtime","optional":false},{"id":17208247403,"package_name":"gitpython","ecosystem":"pypi","requirements":"3.1.42","direct":false,"kind":"runtime","optional":false},{"id":17208247404,"package_name":"graphene","ecosystem":"pypi","requirements":"3.3","direct":false,"kind":"runtime","optional":false},{"id":17208247405,"package_name":"graphql-core","ecosystem":"pypi","requirements":"3.2.3","direct":false,"kind":"runtime","optional":false},{"id":17208247406,"package_name":"graphql-relay","ecosystem":"pypi","requirements":"3.2.0","direct":false,"kind":"runtime","optional":false},{"id":17208247407,"package_name":"greenlet","ecosystem":"pypi","requirements":"3.0.3","direct":false,"kind":"runtime","optional":false},{"id":17208247408,"package_name":"grpcio","ecosystem":"pypi","requirements":"1.62.1","direct":false,"kind":"runtime","optional":false},{"id":17208247409,"package_name":"gunicorn","ecosystem":"pypi","requirements":"21.2.0","direct":false,"kind":"runtime","optional":false},{"id":17208247410,"package_name":"h11","ecosystem":"pypi","requirements":"0.14.0","direct":false,"kind":"runtime","optional":false},{"id":17208247411,"package_name":"httpcore","ecosystem":"pypi","requirements":"1.0.4","direct":false,"kind":"runtime","optional":false},{"id":17208247412,"package_name":"httpx","ecosystem":"pypi","requirements":"0.27.0","direct":false,"kind":"runtime","optional":false},{"id":17208247413,"package_name":"huggingface-hub","ecosystem":"pypi","requirements":"0.21.4","direct":false,"kind":"runtime","optional":false},{"id":17208247414,"package_name":"hydra-colorlog","ecosystem":"pypi","requirements":"1.2.0","direct":false,"kind":"runtime","optional":false},{"id":17208247415,"package_name":"hydra-core","ecosystem":"pypi","requirements":"1.3.2","direct":false,"kind":"runtime","optional":false},{"id":17208247416,"package_name":"hydra-optuna-sweeper","ecosystem":"pypi","requirements":"1.2.0","direct":false,"kind":"runtime","optional":false},{"id":17208247498,"package_name":"identify","ecosystem":"pypi","requirements":"2.5.35","direct":false,"kind":"runtime","optional":false},{"id":17208247499,"package_name":"idna","ecosystem":"pypi","requirements":"3.6","direct":false,"kind":"runtime","optional":false},{"id":17208247500,"package_name":"importlib-metadata","ecosystem":"pypi","requirements":"7.0.2","direct":false,"kind":"runtime","optional":false},{"id":17208247501,"package_name":"iniconfig","ecosystem":"pypi","requirements":"2.0.0","direct":false,"kind":"runtime","optional":false},{"id":17208247502,"package_name":"ipykernel","ecosystem":"pypi","requirements":"6.29.3","direct":false,"kind":"runtime","optional":false},{"id":17208247503,"package_name":"ipython","ecosystem":"pypi","requirements":"8.22.2","direct":false,"kind":"runtime","optional":false},{"id":17208247504,"package_name":"ipywidgets","ecosystem":"pypi","requirements":"8.1.2","direct":false,"kind":"runtime","optional":false},{"id":17208247505,"package_name":"isoduration","ecosystem":"pypi","requirements":"20.11.0","direct":false,"kind":"runtime","optional":false},{"id":17208247506,"package_name":"itsdangerous","ecosystem":"pypi","requirements":"2.1.2","direct":false,"kind":"runtime","optional":false},{"id":17208247507,"package_name":"jedi","ecosystem":"pypi","requirements":"0.19.1","direct":false,"kind":"runtime","optional":false},{"id":17208247508,"package_name":"jinja2","ecosystem":"pypi","requirements":"3.1.3","direct":false,"kind":"runtime","optional":false},{"id":17208247509,"package_name":"joblib","ecosystem":"pypi","requirements":"1.3.2","direct":false,"kind":"runtime","optional":false},{"id":17208247510,"package_name":"json5","ecosystem":"pypi","requirements":"0.9.24","direct":false,"kind":"runtime","optional":false},{"id":17208247511,"package_name":"jsonpointer","ecosystem":"pypi","requirements":"2.4","direct":false,"kind":"runtime","optional":false},{"id":17208247512,"package_name":"jsonschema","ecosystem":"pypi","requirements":"4.21.1","direct":false,"kind":"runtime","optional":false},{"id":17208247513,"package_name":"jsonschema-specifications","ecosystem":"pypi","requirements":"2023.12.1","direct":false,"kind":"runtime","optional":false},{"id":17208247514,"package_name":"julius","ecosystem":"pypi","requirements":"0.2.7","direct":false,"kind":"runtime","optional":false},{"id":17208247515,"package_name":"jupyter","ecosystem":"pypi","requirements":"1.0.0","direct":false,"kind":"runtime","optional":false},{"id":17208247516,"package_name":"jupyter-client","ecosystem":"pypi","requirements":"8.6.1","direct":false,"kind":"runtime","optional":false},{"id":17208247517,"package_name":"jupyter-console","ecosystem":"pypi","requirements":"6.6.3","direct":false,"kind":"runtime","optional":false},{"id":17208247518,"package_name":"jupyter-core","ecosystem":"pypi","requirements":"5.7.2","direct":false,"kind":"runtime","optional":false},{"id":17208247519,"package_name":"jupyter-events","ecosystem":"pypi","requirements":"0.10.0","direct":false,"kind":"runtime","optional":false},{"id":17208247520,"package_name":"jupyter-lsp","ecosystem":"pypi","requirements":"2.2.4","direct":false,"kind":"runtime","optional":false},{"id":17208247521,"package_name":"jupyter-server","ecosystem":"pypi","requirements":"2.13.0","direct":false,"kind":"runtime","optional":false},{"id":17208247522,"package_name":"jupyter-server-terminals","ecosystem":"pypi","requirements":"0.5.3","direct":false,"kind":"runtime","optional":false},{"id":17208247523,"package_name":"jupyterlab","ecosystem":"pypi","requirements":"4.1.5","direct":false,"kind":"runtime","optional":false},{"id":17208247524,"package_name":"jupyterlab-pygments","ecosystem":"pypi","requirements":"0.3.0","direct":false,"kind":"runtime","optional":false},{"id":17208247525,"package_name":"jupyterlab-server","ecosystem":"pypi","requirements":"2.25.4","direct":false,"kind":"runtime","optional":false},{"id":17208247526,"package_name":"jupyterlab-widgets","ecosystem":"pypi","requirements":"3.0.10","direct":false,"kind":"runtime","optional":false},{"id":17208247527,"package_name":"kiwisolver","ecosystem":"pypi","requirements":"1.4.5","direct":false,"kind":"runtime","optional":false},{"id":17208247528,"package_name":"lazy-loader","ecosystem":"pypi","requirements":"0.3","direct":false,"kind":"runtime","optional":false},{"id":17208247529,"package_name":"librosa","ecosystem":"pypi","requirements":"0.10.1","direct":false,"kind":"runtime","optional":false},{"id":17208247530,"package_name":"lightning","ecosystem":"pypi","requirements":"2.2.1","direct":false,"kind":"runtime","optional":false},{"id":17208247531,"package_name":"lightning-utilities","ecosystem":"pypi","requirements":"0.11.0","direct":false,"kind":"runtime","optional":false},{"id":17208247562,"package_name":"llvmlite","ecosystem":"pypi","requirements":"0.42.0","direct":false,"kind":"runtime","optional":false},{"id":17208247563,"package_name":"mako","ecosystem":"pypi","requirements":"1.3.2","direct":false,"kind":"runtime","optional":false},{"id":17208247564,"package_name":"markdown","ecosystem":"pypi","requirements":"3.6","direct":false,"kind":"runtime","optional":false},{"id":17208247565,"package_name":"markdown-it-py","ecosystem":"pypi","requirements":"3.0.0","direct":false,"kind":"runtime","optional":false},{"id":17208247566,"package_name":"markupsafe","ecosystem":"pypi","requirements":"2.1.5","direct":false,"kind":"runtime","optional":false},{"id":17208247567,"package_name":"matplotlib","ecosystem":"pypi","requirements":"3.8.3","direct":false,"kind":"runtime","optional":false},{"id":17208247568,"package_name":"matplotlib-inline","ecosystem":"pypi","requirements":"0.1.6","direct":false,"kind":"runtime","optional":false},{"id":17208247569,"package_name":"mdurl","ecosystem":"pypi","requirements":"0.1.2","direct":false,"kind":"runtime","optional":false},{"id":17208247570,"package_name":"mistune","ecosystem":"pypi","requirements":"3.0.2","direct":false,"kind":"runtime","optional":false},{"id":17208247571,"package_name":"mlflow","ecosystem":"pypi","requirements":"2.11.2","direct":false,"kind":"runtime","optional":false},{"id":17208247572,"package_name":"mpmath","ecosystem":"pypi","requirements":"1.3.0","direct":false,"kind":"runtime","optional":false},{"id":17208247573,"package_name":"msgpack","ecosystem":"pypi","requirements":"1.0.8","direct":false,"kind":"runtime","optional":false},{"id":17208247574,"package_name":"multidict","ecosystem":"pypi","requirements":"6.0.5","direct":false,"kind":"runtime","optional":false},{"id":17208247575,"package_name":"multiprocess","ecosystem":"pypi","requirements":"0.70.16","direct":false,"kind":"runtime","optional":false},{"id":17208247576,"package_name":"nbclient","ecosystem":"pypi","requirements":"0.10.0","direct":false,"kind":"runtime","optional":false},{"id":17208247577,"package_name":"nbconvert","ecosystem":"pypi","requirements":"7.16.2","direct":false,"kind":"runtime","optional":false},{"id":17208247578,"package_name":"nbformat","ecosystem":"pypi","requirements":"5.10.3","direct":false,"kind":"runtime","optional":false},{"id":17208247579,"package_name":"nest-asyncio","ecosystem":"pypi","requirements":"1.6.0","direct":false,"kind":"runtime","optional":false},{"id":17208247580,"package_name":"networkx","ecosystem":"pypi","requirements":"3.2.1","direct":false,"kind":"runtime","optional":false},{"id":17208247581,"package_name":"nodeenv","ecosystem":"pypi","requirements":"1.8.0","direct":false,"kind":"runtime","optional":false},{"id":17208247582,"package_name":"notebook","ecosystem":"pypi","requirements":"7.1.2","direct":false,"kind":"runtime","optional":false},{"id":17208247583,"package_name":"notebook-shim","ecosystem":"pypi","requirements":"0.2.4","direct":false,"kind":"runtime","optional":false},{"id":17208247584,"package_name":"numba","ecosystem":"pypi","requirements":"0.59.1","direct":false,"kind":"runtime","optional":false},{"id":17208247585,"package_name":"numpy","ecosystem":"pypi","requirements":"1.26.4","direct":false,"kind":"runtime","optional":false},{"id":17208247586,"package_name":"nvidia-cublas-cu12","ecosystem":"pypi","requirements":"12.1.3.1","direct":false,"kind":"runtime","optional":false},{"id":17208247587,"package_name":"nvidia-cuda-cupti-cu12","ecosystem":"pypi","requirements":"12.1.105","direct":false,"kind":"runtime","optional":false},{"id":17208247588,"package_name":"nvidia-cuda-nvrtc-cu12","ecosystem":"pypi","requirements":"12.1.105","direct":false,"kind":"runtime","optional":false},{"id":17208247589,"package_name":"nvidia-cuda-runtime-cu12","ecosystem":"pypi","requirements":"12.1.105","direct":false,"kind":"runtime","optional":false},{"id":17208247590,"package_name":"nvidia-cudnn-cu12","ecosystem":"pypi","requirements":"8.9.2.26","direct":false,"kind":"runtime","optional":false},{"id":17208247591,"package_name":"nvidia-cufft-cu12","ecosystem":"pypi","requirements":"11.0.2.54","direct":false,"kind":"runtime","optional":false},{"id":17208247592,"package_name":"nvidia-curand-cu12","ecosystem":"pypi","requirements":"10.3.2.106","direct":false,"kind":"runtime","optional":false},{"id":17208247593,"package_name":"nvidia-cusolver-cu12","ecosystem":"pypi","requirements":"11.4.5.107","direct":false,"kind":"runtime","optional":false},{"id":17208247594,"package_name":"nvidia-cusparse-cu12","ecosystem":"pypi","requirements":"12.1.0.106","direct":false,"kind":"runtime","optional":false},{"id":17208247595,"package_name":"nvidia-nccl-cu12","ecosystem":"pypi","requirements":"2.19.3","direct":false,"kind":"runtime","optional":false},{"id":17208247596,"package_name":"nvidia-nvjitlink-cu12","ecosystem":"pypi","requirements":"12.4.99","direct":false,"kind":"runtime","optional":false},{"id":17208247597,"package_name":"nvidia-nvtx-cu12","ecosystem":"pypi","requirements":"12.1.105","direct":false,"kind":"runtime","optional":false},{"id":17208247598,"package_name":"omegaconf","ecosystem":"pypi","requirements":"2.3.0","direct":false,"kind":"runtime","optional":false},{"id":17208247599,"package_name":"optuna","ecosystem":"pypi","requirements":"2.10.1","direct":false,"kind":"runtime","optional":false},{"id":17208247600,"package_name":"overrides","ecosystem":"pypi","requirements":"7.7.0","direct":false,"kind":"runtime","optional":false},{"id":17208247601,"package_name":"packaging","ecosystem":"pypi","requirements":"23.2","direct":false,"kind":"runtime","optional":false},{"id":17208247602,"package_name":"pandas","ecosystem":"pypi","requirements":"2.2.1","direct":false,"kind":"runtime","optional":false},{"id":17208247603,"package_name":"pandocfilters","ecosystem":"pypi","requirements":"1.5.1","direct":false,"kind":"runtime","optional":false},{"id":17208247604,"package_name":"parso","ecosystem":"pypi","requirements":"0.8.3","direct":false,"kind":"runtime","optional":false},{"id":17208247605,"package_name":"pbr","ecosystem":"pypi","requirements":"6.0.0","direct":false,"kind":"runtime","optional":false},{"id":17208247606,"package_name":"pexpect","ecosystem":"pypi","requirements":"4.9.0","direct":false,"kind":"runtime","optional":false},{"id":17208247607,"package_name":"pillow","ecosystem":"pypi","requirements":"10.2.0","direct":false,"kind":"runtime","optional":false},{"id":17208247608,"package_name":"platformdirs","ecosystem":"pypi","requirements":"4.2.0","direct":false,"kind":"runtime","optional":false},{"id":17208247609,"package_name":"pluggy","ecosystem":"pypi","requirements":"1.4.0","direct":false,"kind":"runtime","optional":false},{"id":17208247610,"package_name":"pooch","ecosystem":"pypi","requirements":"1.8.1","direct":false,"kind":"runtime","optional":false},{"id":17208247611,"package_name":"pre-commit","ecosystem":"pypi","requirements":"3.6.2","direct":false,"kind":"runtime","optional":false},{"id":17208247612,"package_name":"prettytable","ecosystem":"pypi","requirements":"3.10.0","direct":false,"kind":"runtime","optional":false},{"id":17208247613,"package_name":"primepy","ecosystem":"pypi","requirements":"1.3","direct":false,"kind":"runtime","optional":false},{"id":17208248882,"package_name":"prometheus-client","ecosystem":"pypi","requirements":"0.20.0","direct":false,"kind":"runtime","optional":false},{"id":17208248883,"package_name":"prompt-toolkit","ecosystem":"pypi","requirements":"3.0.43","direct":false,"kind":"runtime","optional":false},{"id":17208248884,"package_name":"protobuf","ecosystem":"pypi","requirements":"4.25.3","direct":false,"kind":"runtime","optional":false},{"id":17208248885,"package_name":"psutil","ecosystem":"pypi","requirements":"5.9.8","direct":false,"kind":"runtime","optional":false},{"id":17208248886,"package_name":"ptyprocess","ecosystem":"pypi","requirements":"0.7.0","direct":false,"kind":"runtime","optional":false},{"id":17208248887,"package_name":"pure-eval","ecosystem":"pypi","requirements":"0.2.2","direct":false,"kind":"runtime","optional":false},{"id":17208248888,"package_name":"pyarrow","ecosystem":"pypi","requirements":"15.0.2","direct":false,"kind":"runtime","optional":false},{"id":17208248889,"package_name":"pyarrow-hotfix","ecosystem":"pypi","requirements":"0.6","direct":false,"kind":"runtime","optional":false},{"id":17208248890,"package_name":"pycparser","ecosystem":"pypi","requirements":"2.21","direct":false,"kind":"runtime","optional":false},{"id":17208248891,"package_name":"pydub","ecosystem":"pypi","requirements":"0.25.1","direct":false,"kind":"runtime","optional":false},{"id":17208248892,"package_name":"pygments","ecosystem":"pypi","requirements":"2.17.2","direct":false,"kind":"runtime","optional":false},{"id":17208248893,"package_name":"pyparsing","ecosystem":"pypi","requirements":"3.1.2","direct":false,"kind":"runtime","optional":false},{"id":17208248894,"package_name":"pyperclip","ecosystem":"pypi","requirements":"1.8.2","direct":false,"kind":"runtime","optional":false},{"id":17208248895,"package_name":"pyreadline3","ecosystem":"pypi","requirements":"3.4.1","direct":false,"kind":"runtime","optional":false},{"id":17208248896,"package_name":"pyrootutils","ecosystem":"pypi","requirements":"1.0.4","direct":false,"kind":"runtime","optional":false},{"id":17208248897,"package_name":"pytest","ecosystem":"pypi","requirements":"7.4.4","direct":false,"kind":"runtime","optional":false},{"id":17208248898,"package_name":"python-dateutil","ecosystem":"pypi","requirements":"2.9.0.post0","direct":false,"kind":"runtime","optional":false},{"id":17208248899,"package_name":"python-dotenv","ecosystem":"pypi","requirements":"1.0.1","direct":false,"kind":"runtime","optional":false},{"id":17208248900,"package_name":"python-json-logger","ecosystem":"pypi","requirements":"2.0.7","direct":false,"kind":"runtime","optional":false},{"id":17208248901,"package_name":"pytorch-lightning","ecosystem":"pypi","requirements":"2.2.1","direct":false,"kind":"runtime","optional":false},{"id":17208248902,"package_name":"pytz","ecosystem":"pypi","requirements":"2024.1","direct":false,"kind":"runtime","optional":false},{"id":17208248903,"package_name":"pywin32","ecosystem":"pypi","requirements":"306","direct":false,"kind":"runtime","optional":false},{"id":17208248904,"package_name":"pywinpty","ecosystem":"pypi","requirements":"2.0.13","direct":false,"kind":"runtime","optional":false},{"id":17208248905,"package_name":"pyyaml","ecosystem":"pypi","requirements":"6.0.1","direct":false,"kind":"runtime","optional":false},{"id":17208248906,"package_name":"pyzmq","ecosystem":"pypi","requirements":"25.1.2","direct":false,"kind":"runtime","optional":false},{"id":17208248907,"package_name":"qtconsole","ecosystem":"pypi","requirements":"5.5.1","direct":false,"kind":"runtime","optional":false},{"id":17208248908,"package_name":"qtpy","ecosystem":"pypi","requirements":"2.4.1","direct":false,"kind":"runtime","optional":false},{"id":17208248909,"package_name":"querystring-parser","ecosystem":"pypi","requirements":"1.2.4","direct":false,"kind":"runtime","optional":false},{"id":17208248910,"package_name":"referencing","ecosystem":"pypi","requirements":"0.34.0","direct":false,"kind":"runtime","optional":false},{"id":17208248911,"package_name":"regex","ecosystem":"pypi","requirements":"2023.12.25","direct":false,"kind":"runtime","optional":false},{"id":17208248912,"package_name":"requests","ecosystem":"pypi","requirements":"2.31.0","direct":false,"kind":"runtime","optional":false},{"id":17208248913,"package_name":"rfc3339-validator","ecosystem":"pypi","requirements":"0.1.4","direct":false,"kind":"runtime","optional":false},{"id":17208248914,"package_name":"rfc3986-validator","ecosystem":"pypi","requirements":"0.1.1","direct":false,"kind":"runtime","optional":false},{"id":17208248915,"package_name":"rich","ecosystem":"pypi","requirements":"13.7.1","direct":false,"kind":"runtime","optional":false},{"id":17208248916,"package_name":"rootutils","ecosystem":"pypi","requirements":"1.0.7","direct":false,"kind":"runtime","optional":false},{"id":17208248917,"package_name":"rpds-py","ecosystem":"pypi","requirements":"0.18.0","direct":false,"kind":"runtime","optional":false},{"id":17208248918,"package_name":"safetensors","ecosystem":"pypi","requirements":"0.4.2","direct":false,"kind":"runtime","optional":false},{"id":17208248919,"package_name":"scikit-learn","ecosystem":"pypi","requirements":"1.4.1.post1","direct":false,"kind":"runtime","optional":false},{"id":17208248920,"package_name":"scipy","ecosystem":"pypi","requirements":"1.12.0","direct":false,"kind":"runtime","optional":false},{"id":17208248921,"package_name":"seaborn","ecosystem":"pypi","requirements":"0.13.2","direct":false,"kind":"runtime","optional":false},{"id":17208248922,"package_name":"send2trash","ecosystem":"pypi","requirements":"1.8.2","direct":false,"kind":"runtime","optional":false},{"id":17208248923,"package_name":"sentry-sdk","ecosystem":"pypi","requirements":"1.42.0","direct":false,"kind":"runtime","optional":false},{"id":17208248924,"package_name":"setproctitle","ecosystem":"pypi","requirements":"1.3.3","direct":false,"kind":"runtime","optional":false},{"id":17208248925,"package_name":"setuptools","ecosystem":"pypi","requirements":"69.2.0","direct":false,"kind":"runtime","optional":false},{"id":17208248926,"package_name":"sh","ecosystem":"pypi","requirements":"2.0.6","direct":false,"kind":"runtime","optional":false},{"id":17208248927,"package_name":"six","ecosystem":"pypi","requirements":"1.16.0","direct":false,"kind":"runtime","optional":false},{"id":17208248928,"package_name":"smmap","ecosystem":"pypi","requirements":"5.0.1","direct":false,"kind":"runtime","optional":false},{"id":17208248929,"package_name":"sniffio","ecosystem":"pypi","requirements":"1.3.1","direct":false,"kind":"runtime","optional":false},{"id":17208248930,"package_name":"soundfile","ecosystem":"pypi","requirements":"0.12.1","direct":false,"kind":"runtime","optional":false},{"id":17208248931,"package_name":"soupsieve","ecosystem":"pypi","requirements":"2.5","direct":false,"kind":"runtime","optional":false},{"id":17208248932,"package_name":"soxr","ecosystem":"pypi","requirements":"0.3.7","direct":false,"kind":"runtime","optional":false},{"id":17208248933,"package_name":"sqlalchemy","ecosystem":"pypi","requirements":"2.0.28","direct":false,"kind":"runtime","optional":false},{"id":17208248934,"package_name":"sqlparse","ecosystem":"pypi","requirements":"0.4.4","direct":false,"kind":"runtime","optional":false},{"id":17208248935,"package_name":"stack-data","ecosystem":"pypi","requirements":"0.6.3","direct":false,"kind":"runtime","optional":false},{"id":17208248936,"package_name":"stevedore","ecosystem":"pypi","requirements":"5.2.0","direct":false,"kind":"runtime","optional":false},{"id":17208248937,"package_name":"sympy","ecosystem":"pypi","requirements":"1.12","direct":false,"kind":"runtime","optional":false},{"id":17208248938,"package_name":"tensorboard","ecosystem":"pypi","requirements":"2.16.2","direct":false,"kind":"runtime","optional":false},{"id":17208248939,"package_name":"tensorboard-data-server","ecosystem":"pypi","requirements":"0.7.2","direct":false,"kind":"runtime","optional":false},{"id":17208248940,"package_name":"terminado","ecosystem":"pypi","requirements":"0.18.1","direct":false,"kind":"runtime","optional":false},{"id":17208248941,"package_name":"threadpoolctl","ecosystem":"pypi","requirements":"3.3.0","direct":false,"kind":"runtime","optional":false},{"id":17208248942,"package_name":"tinycss2","ecosystem":"pypi","requirements":"1.2.1","direct":false,"kind":"runtime","optional":false},{"id":17208248943,"package_name":"tokenizers","ecosystem":"pypi","requirements":"0.15.2","direct":false,"kind":"runtime","optional":false},{"id":17208248944,"package_name":"tomli","ecosystem":"pypi","requirements":"2.0.1","direct":false,"kind":"runtime","optional":false},{"id":17208248945,"package_name":"torch","ecosystem":"pypi","requirements":"2.2.1","direct":false,"kind":"runtime","optional":false},{"id":17208248946,"package_name":"torch-audiomentations","ecosystem":"pypi","requirements":"0.11.1","direct":false,"kind":"runtime","optional":false},{"id":17208248959,"package_name":"torch-pitch-shift","ecosystem":"pypi","requirements":"1.2.4","direct":false,"kind":"runtime","optional":false},{"id":17208248960,"package_name":"torchaudio","ecosystem":"pypi","requirements":"2.2.1","direct":false,"kind":"runtime","optional":false},{"id":17208248961,"package_name":"torchmetrics","ecosystem":"pypi","requirements":"0.11.4","direct":false,"kind":"runtime","optional":false},{"id":17208248962,"package_name":"torchvision","ecosystem":"pypi","requirements":"0.17.1","direct":false,"kind":"runtime","optional":false},{"id":17208248963,"package_name":"tornado","ecosystem":"pypi","requirements":"6.4","direct":false,"kind":"runtime","optional":false},{"id":17208248964,"package_name":"tqdm","ecosystem":"pypi","requirements":"4.66.2","direct":false,"kind":"runtime","optional":false},{"id":17208248965,"package_name":"traitlets","ecosystem":"pypi","requirements":"5.14.2","direct":false,"kind":"runtime","optional":false},{"id":17208248966,"package_name":"transformers","ecosystem":"pypi","requirements":"4.38.2","direct":false,"kind":"runtime","optional":false},{"id":17208248967,"package_name":"triton","ecosystem":"pypi","requirements":"2.2.0","direct":false,"kind":"runtime","optional":false},{"id":17208248968,"package_name":"types-python-dateutil","ecosystem":"pypi","requirements":"2.9.0.20240316","direct":false,"kind":"runtime","optional":false},{"id":17208248969,"package_name":"typing-extensions","ecosystem":"pypi","requirements":"4.10.0","direct":false,"kind":"runtime","optional":false},{"id":17208248970,"package_name":"tzdata","ecosystem":"pypi","requirements":"2024.1","direct":false,"kind":"runtime","optional":false},{"id":17208248971,"package_name":"uri-template","ecosystem":"pypi","requirements":"1.3.0","direct":false,"kind":"runtime","optional":false},{"id":17208248972,"package_name":"urllib3","ecosystem":"pypi","requirements":"2.2.1","direct":false,"kind":"runtime","optional":false},{"id":17208248973,"package_name":"virtualenv","ecosystem":"pypi","requirements":"20.25.1","direct":false,"kind":"runtime","optional":false},{"id":17208248974,"package_name":"waitress","ecosystem":"pypi","requirements":"3.0.0","direct":false,"kind":"runtime","optional":false},{"id":17208248975,"package_name":"wandb","ecosystem":"pypi","requirements":"0.16.4","direct":false,"kind":"runtime","optional":false},{"id":17208248976,"package_name":"wcwidth","ecosystem":"pypi","requirements":"0.2.13","direct":false,"kind":"runtime","optional":false},{"id":17208248977,"package_name":"webcolors","ecosystem":"pypi","requirements":"1.13","direct":false,"kind":"runtime","optional":false},{"id":17208248978,"package_name":"webencodings","ecosystem":"pypi","requirements":"0.5.1","direct":false,"kind":"runtime","optional":false},{"id":17208248979,"package_name":"websocket-client","ecosystem":"pypi","requirements":"1.7.0","direct":false,"kind":"runtime","optional":false},{"id":17208248980,"package_name":"werkzeug","ecosystem":"pypi","requirements":"3.0.1","direct":false,"kind":"runtime","optional":false},{"id":17208248981,"package_name":"widgetsnbextension","ecosystem":"pypi","requirements":"4.0.10","direct":false,"kind":"runtime","optional":false},{"id":17208248982,"package_name":"xxhash","ecosystem":"pypi","requirements":"3.4.1","direct":false,"kind":"runtime","optional":false},{"id":17208248983,"package_name":"yarl","ecosystem":"pypi","requirements":"1.9.4","direct":false,"kind":"runtime","optional":false},{"id":17208248984,"package_name":"zipp","ecosystem":"pypi","requirements":"3.18.1","direct":false,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"pyproject.toml","sha":null,"kind":"manifest","created_at":"2024-04-03T08:46:27.065Z","updated_at":"2024-04-03T08:46:27.065Z","repository_link":"https://github.com/DBD-research-group/BirdSet/blob/main/pyproject.toml","dependencies":[{"id":17208248985,"package_name":"python","ecosystem":"pypi","requirements":"\u003e=3.10,\u003c3.13","direct":true,"kind":"runtime","optional":false},{"id":17208248986,"package_name":"scipy","ecosystem":"pypi","requirements":"^1.11.3","direct":true,"kind":"runtime","optional":false},{"id":17208248987,"package_name":"ffprobe","ecosystem":"pypi","requirements":"^0.5","direct":true,"kind":"runtime","optional":false},{"id":17208248988,"package_name":"torch","ecosystem":"pypi","requirements":"^2.1","direct":true,"kind":"runtime","optional":false},{"id":17208248989,"package_name":"torchvision","ecosystem":"pypi","requirements":"^0.17","direct":true,"kind":"runtime","optional":false},{"id":17208248990,"package_name":"lightning","ecosystem":"pypi","requirements":"^2.0","direct":true,"kind":"runtime","optional":false},{"id":17208248991,"package_name":"torchmetrics","ecosystem":"pypi","requirements":"^0.11","direct":true,"kind":"runtime","optional":false},{"id":17208248992,"package_name":"hydra-core","ecosystem":"pypi","requirements":"^1.3","direct":true,"kind":"runtime","optional":false},{"id":17208248993,"package_name":"hydra-colorlog","ecosystem":"pypi","requirements":"^1.2","direct":true,"kind":"runtime","optional":false},{"id":17208248994,"package_name":"hydra-optuna-sweeper","ecosystem":"pypi","requirements":"^1.2","direct":true,"kind":"runtime","optional":false},{"id":17208248995,"package_name":"rootutils","ecosystem":"pypi","requirements":"^1.0.7","direct":true,"kind":"runtime","optional":false},{"id":17208248996,"package_name":"pre-commit","ecosystem":"pypi","requirements":"^3.5.0","direct":true,"kind":"runtime","optional":false},{"id":17208248997,"package_name":"rich","ecosystem":"pypi","requirements":"^13.6.0","direct":true,"kind":"runtime","optional":false},{"id":17208248998,"package_name":"pytest","ecosystem":"pypi","requirements":"^7.4.2","direct":true,"kind":"runtime","optional":false},{"id":17208248999,"package_name":"sh","ecosystem":"pypi","requirements":"^2.0.6","direct":true,"kind":"runtime","optional":false},{"id":17208249000,"package_name":"matplotlib","ecosystem":"pypi","requirements":"^3.8.0","direct":true,"kind":"runtime","optional":false},{"id":17208249001,"package_name":"seaborn","ecosystem":"pypi","requirements":"^0.13.0","direct":true,"kind":"runtime","optional":false},{"id":17208249002,"package_name":"tensorboard","ecosystem":"pypi","requirements":"^2.14.1","direct":true,"kind":"runtime","optional":false},{"id":17208249003,"package_name":"ipywidgets","ecosystem":"pypi","requirements":"^8.1.1","direct":true,"kind":"runtime","optional":false},{"id":17208249004,"package_name":"jupyter","ecosystem":"pypi","requirements":"^1.0.0","direct":true,"kind":"runtime","optional":false},{"id":17208249005,"package_name":"datasets","ecosystem":"pypi","requirements":"^2.14.6","direct":true,"kind":"runtime","optional":false},{"id":17208249006,"package_name":"audiomentations","ecosystem":"pypi","requirements":"^0.33.0","direct":true,"kind":"runtime","optional":false},{"id":17208249007,"package_name":"torch-audiomentations","ecosystem":"pypi","requirements":"^0.11.0","direct":true,"kind":"runtime","optional":false},{"id":17208249008,"package_name":"wandb","ecosystem":"pypi","requirements":"^0.16.0","direct":true,"kind":"runtime","optional":false},{"id":17208249009,"package_name":"transformers","ecosystem":"pypi","requirements":"^4.38.0","direct":true,"kind":"runtime","optional":false},{"id":17208249010,"package_name":"pyrootutils","ecosystem":"pypi","requirements":"^1.0.4","direct":true,"kind":"runtime","optional":false},{"id":17208249011,"package_name":"mlflow","ecosystem":"pypi","requirements":"^2.11.0","direct":true,"kind":"runtime","optional":false},{"id":17208249012,"package_name":"pydub","ecosystem":"pypi","requirements":"^0.25.1","direct":true,"kind":"runtime","optional":false},{"id":17208249013,"package_name":"ipykernel","ecosystem":"pypi","requirements":"^6.25.2","direct":true,"kind":"develop","optional":false}]},{"ecosystem":"pypi","filepath":"requirements-dev.txt","sha":null,"kind":"manifest","created_at":"2024-04-03T08:46:27.621Z","updated_at":"2024-04-03T08:46:27.621Z","repository_link":"https://github.com/DBD-research-group/BirdSet/blob/main/requirements-dev.txt","dependencies":[{"id":17208249014,"package_name":"black","ecosystem":"pypi","requirements":"==23.7.0","direct":true,"kind":"development","optional":false},{"id":17208249015,"package_name":"flake8","ecosystem":"pypi","requirements":"==6.1.0","direct":true,"kind":"development","optional":false},{"id":17208249016,"package_name":"mypy","ecosystem":"pypi","requirements":"==1.5.1","direct":true,"kind":"development","optional":false},{"id":17208249017,"package_name":"pylint","ecosystem":"pypi","requirements":"==2.17.5","direct":true,"kind":"development","optional":false},{"id":17208249018,"package_name":"pytest","ecosystem":"pypi","requirements":"==7.4.0","direct":true,"kind":"development","optional":false}]},{"ecosystem":"pypi","filepath":"requirements.txt","sha":null,"kind":"manifest","created_at":"2024-04-03T08:46:27.703Z","updated_at":"2024-04-03T08:46:27.703Z","repository_link":"https://github.com/DBD-research-group/BirdSet/blob/main/requirements.txt","dependencies":[{"id":17208249019,"package_name":"audiomentations","ecosystem":"pypi","requirements":"==0.34.1","direct":true,"kind":"runtime","optional":false},{"id":17208249020,"package_name":"ipython","ecosystem":"pypi","requirements":"==8.18.1","direct":true,"kind":"runtime","optional":false},{"id":17208249021,"package_name":"librosa","ecosystem":"pypi","requirements":"==0.10.1","direct":true,"kind":"runtime","optional":false},{"id":17208249022,"package_name":"numpy","ecosystem":"pypi","requirements":"==1.26.2","direct":true,"kind":"runtime","optional":false},{"id":17208249023,"package_name":"torchaudio","ecosystem":"pypi","requirements":"==2.1.1","direct":true,"kind":"runtime","optional":false},{"id":17208249024,"package_name":"torch_audiomentations","ecosystem":"pypi","requirements":"==0.11.0","direct":true,"kind":"runtime","optional":false},{"id":17208249055,"package_name":"torch","ecosystem":"pypi","requirements":"==2.1.1","direct":true,"kind":"runtime","optional":false},{"id":17208249056,"package_name":"lightning","ecosystem":"pypi","requirements":"==2.1.2","direct":true,"kind":"runtime","optional":false},{"id":17208249057,"package_name":"torchmetrics","ecosystem":"pypi","requirements":"==1.2.0","direct":true,"kind":"runtime","optional":false},{"id":17208249058,"package_name":"torchvision","ecosystem":"pypi","requirements":"==0.16.1","direct":true,"kind":"runtime","optional":false},{"id":17208249059,"package_name":"scikit-learn","ecosystem":"pypi","requirements":"==1.3.2","direct":true,"kind":"runtime","optional":false},{"id":17208249060,"package_name":"tqdm","ecosystem":"pypi","requirements":"==4.66.1","direct":true,"kind":"runtime","optional":false},{"id":17208249061,"package_name":"pillow","ecosystem":"pypi","requirements":"==10.1.0","direct":true,"kind":"runtime","optional":false},{"id":17208249062,"package_name":"pandas","ecosystem":"pypi","requirements":"==2.1.3","direct":true,"kind":"runtime","optional":false},{"id":17208249063,"package_name":"transformers","ecosystem":"pypi","requirements":"==4.38.2","direct":true,"kind":"runtime","optional":false},{"id":17208249064,"package_name":"datasets","ecosystem":"pypi","requirements":"==2.18.0","direct":true,"kind":"runtime","optional":false},{"id":17208249065,"package_name":"hydra-core","ecosystem":"pypi","requirements":"==1.3.2","direct":true,"kind":"runtime","optional":false},{"id":17208249066,"package_name":"hydra_colorlog","ecosystem":"pypi","requirements":"==1.2.0","direct":true,"kind":"runtime","optional":false},{"id":17208249067,"package_name":"wandb","ecosystem":"pypi","requirements":"==0.16.0","direct":true,"kind":"runtime","optional":false},{"id":17208249068,"package_name":"rich","ecosystem":"pypi","requirements":"==13.7.0","direct":true,"kind":"runtime","optional":false}]}],"score":7.252053951852814,"created_at":"2024-11-06T00:07:55.373Z","updated_at":"2026-04-07T23:30:23.441Z","avatar_url":"https://github.com/DBD-research-group.png","language":"Jupyter Notebook","category":"Biosphere","sub_category":"Bioacoustics and Acoustic Data Analysis","monthly_downloads":0,"total_dependent_repos":0,"total_dependent_packages":0,"readme":"\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/DBD-research-group/BirdSet/blob/main/resources/perch/birdsetsymbol.png\" alt=\"logo\" width=\"100\"\u003e\n\u003c/div\u003e\n\n# $\\texttt{BirdSet}$ - A Large-Scale Dataset for Audio Classification in Avian Bioacoustics 🤗\n[![python](https://img.shields.io/badge/-Python_3.10-blue?logo=python\u0026logoColor=white)](https://github.com/pre-commit/pre-commit)\n\u003ca href=\"https://huggingface.co/datasets/DBD-research-group/BirdSet\"\u003e\u003cimg alt=\"Hugging Face\" src=\"https://img.shields.io/badge/HuggingFace-ffcc00?logo=huggingface\u0026logoColor=white\"\u003e\u003c/a\u003e\n\u003ca href=\"https://pytorch.org/get-started/locally/\"\u003e\u003cimg alt=\"PyTorch\" src=\"https://img.shields.io/badge/PyTorch-ee4c2c?logo=pytorch\u0026logoColor=white\"\u003e\u003c/a\u003e\n\u003ca href=\"https://www.pytorchlightning.ai/\"\u003e\u003cimg alt=\"PyTorch Lightning\" src=\"https://img.shields.io/badge/PyTorch_Lightning-792ee5?logo=pytorch-lightning\u0026logoColor=white\"\u003e\u003c/a\u003e\n\u003ca href=\"https://hydra.cc/\"\u003e\u003cimg alt=\"Config: Hydra\" src=\"https://img.shields.io/badge/Config-Hydra-89b8cd\"\u003e\u003c/a\u003e\n[![arXiv paper](https://img.shields.io/badge/arXiv-1234.56789-b31b1b.svg)](https://arxiv.org/abs/2403.10380)\n\n\nDeep learning (DL) has greatly advanced audio classification, yet the field is limited by the scarcity of large-scale benchmark datasets that have propelled progress in other domains. While AudioSet aims to bridge this gap as a universal-domain dataset, its restricted accessibility and lack of diverse real-world evaluation use cases challenge its role as the only resource. Additionally, to maximize the potential of cost-effective and minimal-invasive passive acoustic monitoring (PAM), models must analyze bird vocalizations across a wide range of species and environmental conditions. Therefore, we introduce $\\texttt{BirdSet}$, a large-scale benchmark dataset for audio classification focusing on avian bioacoustics. $\\texttt{BirdSet}$ surpasses AudioSet with over 6,800 recording hours ($\\uparrow\\!17\\%$) from nearly 10,000 classes ($\\uparrow\\!18\\times$) for training and more than 400 hours ($\\uparrow\\!7\\times$) across eight strongly labeled evaluation datasets. It serves as a versatile resource for use cases such as multi-label classification, covariate shift or self-supervised learning.\n\n\u003cbr\u003e\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/DBD-research-group/BirdSet/blob/main/resources/graphical_abstract.png\" alt=\"logo\", width=950\u003e\n\u003c/div\u003e\n\n\u003cbr\u003e\n\n**TL;DR**\n\u003e - Explore our **datasets** shared on Hugging Face 🤗 in the [BirdSet repository](https://huggingface.co/datasets/DBD-research-group/BirdSet).\n\u003e - Birdset works up until datasets\u003c=3.6.0, we are looking into updates to support the newest version.\n\u003e - This accompanying **code** provides comprehensive support tool for data preparation, model training, and evaluation. \n\u003e - Participate in our Hugging Face [leaderboard](https://huggingface.co/spaces/DBD-research-group/BirdSet-Leaderboard) by submitting new results and comparing performance across models.\n\u003e - Access our pre-trained [model checkpoints](https://huggingface.co/collections/DBD-research-group/birdset-dataset-and-models-665ef710a28cbe70dfaa028a) on Hugging Face, ready to fine-tune or evaluate for various tasks.\n\u003e - A Q\u0026A section is included at the end of this README. If you have further questions or encounter any issues, please raise an issue.\n\u003cbr\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \n|                            | **Task**                                     | **Description** | **# Train Recordings** | **# Test\\_5s Segments** | **Pielou’s evenness J** | **# Species**   |\n|----------------------------|----------------------------------------------|-----------------|-----------|--------------|-------|----------|\n| **Large Train**                  | [XCL](https://xeno-canto.org/)               | Complete Xeno-Canto snapshot with focals for large (pre-) training.                | 528,434   | -            | -     | 9,734    |\n|                            | [XCM](https://xeno-canto.org/)               | Smaller subset of XCL only containing focals of bird species available in test datasets.                 | 89,798    | -            | -     | 409      |\n| **Auxiliary**              | [POW](https://zenodo.org/records/4656848)    | Powdermill Nature soundscape validation dataset and class-dedicated focal training subset of XCL.     | 14,911    | 4,560        | 0.66  | 48       |\n|                            | [VOX](https://zenodo.org/records/1208080)    | BirdVox-DCASE soundscape background dataset without bird vocalizations.              | 20,331    | -            | -     | -        |\n| **Test \u0026 Dedicated Train** | [PER](https://zenodo.org/records/7079124) | Amazon Basin soundscape test dataset and class-dedicated focal training subset.                 | 16,802    | 15,120       | 0.78  | 132      |\n|        Train Subsets XCL!                    | [NES](https://zenodo.org/records/7525349)    |  Columbia Costa Rica soundscape test dataset and class-dedicated focal training subset.               | 16,117    | 24,480       | 0.76  | 89       |\n|                            | [UHH](https://zenodo.org/records/7078499)    |  Hawaiian Islands soundscape test dataset and class-dedicated focal training subset.               | 3,626     | 36,637       | 0.64  | 25       |\n|                            | [HSN](https://zenodo.org/records/7525805)    |  High Sierras Nevada soundscape test dataset and class-dedicated focal training subset.               | 5,460     | 12,000       | 0.54  | 21       |\n|                            | [NBP](https://github.com/fbravosanchez/NIPS4Bplus)             |  NIPS4BPlus test dataset and class-dedicated focal training subset.               | 24,327    | 563          | 0.92  | 51       |\n|                            | [SSW](https://zenodo.org/records/7018484)    |  Sapsucker Woods soundscape test dataset and class-dedicated focal training.               | 28,403    | 205,200      | 0.77  | 81       |\n|                            | [SNE](https://zenodo.org/records/7050014)    |  Sierre Nevada soundscape test dataset and class-dedicated focal training subset.               | 19,390    | 23,756       | 0.70  | 56       |\n\n\u003c/div\u003e\n\n## User Installation 🐣\n\nThe simplest way to install $\\texttt{BirdSet}$ is to clone this repository and install it as an editable package using [conda](https://docs.conda.io/en/latest/) and [pip](https://pip.pypa.io/en/stable/):\n```\nconda create -n birdset python=3.10\npip install -e .\n```\nor editable in your own repository: \n```\npip install -e git+https://github.com/DBD-research-group/BirdSet.git#egg=birdset\n```\n\u003c!-- \nYou can also use the [devcontainer](https://code.visualstudio.com/docs/devcontainers/containers) configured as as git submodule:\n```bash\ngit submodule update --init --recursive\n```\n\nOr [poetry](https://python-poetry.org/).\n```\npoetry install\npoetry shell\n```\n--\u003e\n\n## Examples 🐤\n\nWe offer an in-depth [tutorial notebook](https://github.com/DBD-research-group/BirdSet/blob/main/notebooks/tutorials/birdset-pipeline_tutorial.ipynb) on how to use this repository. In the following, we provide simple code snippets:\n\n### Manual Data Preparation\n\nYou can manually download the datasets from Hugging Face. We offer a uniform metadata format but also provide flexibility on how to prepare the data (e.g. you can manually decide which events to filter from the training data). The dataset dictionary comes with: \n\n- `train`: Focal instance with variable lengths. Possible `detected_events` and corresponding event clusters are provided.  \n- `test_5s`: Processed test datasets where each soundscape instance corresponds to a 5-second clip with a `ebird_code_multilabel` format.  \n- `test`: Unprocessed test datasets where each soundscape instance points to the full soundscape recording and the correspoding `ebird_code` with ground truth `start_time` and `end_time`.\n\n \n```python\nfrom datasets import load_dataset, Audio\n\n# download the dataset \ndataset = load_dataset(\"DBD-research-group/BirdSet\",\"HSN\")\n\n# set HF decoder (decodes the complete file!)\ndataset = dataset.cast_column(\"audio\", Audio(sampling_rate=32_000))\n\n```\n\nThe `audio` column natively contains only file paths. While automatic decoding via HF can be enabled (as shown above), decoding the entire audio files can introduce computational redundancies. This is because we provide flexible event decoding with varying file lengths that are often much longer than the targeted 5 seconds. To optimize, consider using a custom decoding scheme (e.g., with soundfile/BirdSet) or preprocessing the dataset with `.map` to include only the relevant audio segments.\n\n### BirdSet: Data Preparation :bird:\n\nThis code snippet utilizes the datamodule for an example dataset $\\texttt{HSN}$. \n\n**prepare_data**\n\u003e- downloads the data (or loads from cache)\n\u003e- preprocesses the data\n\u003e    - event_mapping (extract n events from each sample. this could expand the training dataset and provides event timestamps for each sample)\n\u003e    - one-hot encoding (classses for multi-label)\n\u003e    - create splits\n\u003e- saves dataset to disk (path can be accessed with `dm.disk_save_path` and loaded with `datasets.load_from_disk`)\n  \n```python\nfrom birdset.configs.datamodule_configs import DatasetConfig, LoadersConfig\nfrom birdset.datamodule.components.transforms import BirdSetTransformsWrapper\nfrom birdset.datamodule.birdset_datamodule import BirdSetDataModule\nfrom datasets import load_from_disk\n\n# initiate the data module\ndm = BirdSetDataModule(\n    dataset= DatasetConfig(\n        data_dir='data_birdset/HSN', # specify your data directory!\n        hf_path='DBD-research-group/BirdSet',\n        hf_name='HSN',\n        n_workers=3,\n        val_split=0.2,\n        task=\"multilabel\",\n        classlimit=500, #limit of samples per class \n        eventlimit=5, #limit of events that are extracted for each sample\n        sampling_rate=32000,\n    ),\n    loaders=LoadersConfig(), # only utilized in setup; default settings\n    transforms=BirdSetTransformsWrapper() # set_transform in setup; default settings to spectrogram\n)\n\n# prepare the data\ndm.prepare_data()\n\n# manually load the complete prepared dataset (without any transforms). you have to cast the column with audio for decoding\nds = load_from_disk(dm.disk_save_path)\n```\n\nThe dataset is now split into training, validation, and test sets, with each sample corresponding to a unique event in a sound file. A sample output from the training set looks like this:\n\n```python\n{\n 'filepath': 'filepath.ogg',\n 'labels': array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0]),\n 'detected_events': array([1.216, 3.76 ], dtype=float32), # only in train. begin and end of event within the file \n 'start_time': nan, # only in test, segment start and segment end within the soundfile\n 'end_time': nan\n}\n```\n\nYou can now create a custom loading script. For instance: \n\n```python\ndef load_audio(sample, min_len, max_len, sampling_rate):\n    path = sample[\"filepath\"]\n    \n    if sample[\"detected_events\"] is not None:\n        start = sample[\"detected_events\"][0]\n        end = sample[\"detected_events\"][1]\n        event_duration = end - start\n        \n        if event_duration \u003c min_len:\n            extension = (min_len - event_duration) / 2\n            \n            # try to extend equally \n            new_start = max(0, start - extension)\n            new_end = min(total_duration, end + extension)\n            \n            if new_start == 0:\n                new_end = min(total_duration, new_end + (start - new_start))\n            elif new_end == total_duration:\n                new_start = max(0, new_start - (new_end - end))\n            \n            start, end = new_start, new_end\n\n        if end - start \u003e max_len:\n            # if longer than max_len\n            end = min(start + max_len, total_duration)\n            if end - start \u003e max_len:\n                end = start + max_len\n    else:\n        start = sample[\"start_time\"]\n        end = sample[\"end_time\"]\n\n    file_info = sf.info(path)\n    sr = file_info.samplerate\n    total_duration = file_info.duration\n\n    start, end = int(start * sr), int(end * sr)\n    audio, sr = sf.read(path, start=start, stop=end)\n\n    if audio.ndim != 1:\n        audio = audio.swapaxes(1, 0)\n        audio = librosa.to_mono(audio)\n    if sr != sampling_rate:\n        audio = librosa.resample(audio, orig_sr=sr, target_sr=sampling_rate)\n        sr = sampling_rate\n    return audio, sr\n\naudio_train, _ = load_audio(ds[\"train\"][11], min_len=5, max_len=5, sampling_rate=32_000) # loads a 5 second clip around the detected event\naudio_test, _ = load_audio(ds[\"test\"][30], min_len=5, max_len=5, sampling_rate=32_000) # loads a 5 second test segment\n```\n\nor utilize the BirdSet `set_transform` with built-in event decoding etc.: \n\n**setup**\n\u003e- sets up and loads the dataset for training and evaluating\n\u003e- adds `set_transforms` that transforms on-the-fly (decoding, spectrogram conversion, augmentation etc.)\n\n```python\n# OR setup the datasets with BirdSet (\"test\" for testdata)\n# this includes the set_transform with processing/specrogram conversion etc. \ndm.setup(stage=\"fit\")\n\n# audio is now decoded when a sample is called\ntrain_ds = dm.train_dataset\nval_ds = dm.val_dataset\n\n# get the dataloaders\ntrain_loader = dm.train_dataloader()\n```\n\n### BirdSet: Prepare Model and Start Training  :bird:\n\n```python\nfrom lightning import Trainer\nmin_epochs = 1\nmax_epochs = 5\ntrainer = Trainer(min_epochs=min_epochs, max_epochs=max_epochs, accelerator=\"gpu\", devices=1)\n\nfrom birdset.modules.multilabel_module import MultilabelModule\nmodel = MultilabelModule(\n    len_trainset=dm.len_trainset,\n    task=dm.task,\n    batch_size=dm.train_batch_size,\n    num_epochs=max_epochs)\n\ntrainer.fit(model, dm)\n```\n\u003c!-- \n## Reproduce Neurips2024 Baselines 🚧\n\n\u003e This repository is still under active development. You can access the NeurIPS 24 code at the tag  `neurips2024`\n\u003e ```bash\n\u003e git checkout neurips2024 \n\nFirst, you have to download the background noise files for augmentations\n\n```bash\npython resources/utils/download_background_noise.py\n```\n\nWe provide all experiment YAML files used to generate our results in the path `birdset/configs/experiment/birdset_neurips24`. For each dataset, we specify the parameters for all training scenario: `DT`, `MT`, and `LT`\n\n### Dedicated Training (DT)\n\nThe experiments for `DT` with the dedicated subset can be easily run with a single line: \n\n``` bash\npython birdset/train.py experiment=\"birdset_neurips24/$Dataset/DT/$Model\"\n```\n\n### Medium Training (MT) and Large Training (LT)\nExperiments for training scenarios `MT` and `LT` are harder to reproduce since they require more extensive training times. \nAdditionally, the datasets are quite large (90GB for XCM and 480GB for XCL). Therefore, we provide the best model checkpoints via Hugging Face in the experiment files to avoid the need for retraining. These checkpoints can be executed by running the evaluation script, which will automatically download the model and perform inference on the test datasets:\n\n``` bash\npython birdset/eval.py experiment=\"birdset_neurips24/$EXPERIMENT_PATH\"\n```\n\nAs the model EAT is not implemented in Hugging Face transformer (yet), the checkpoints are available to download from the tracked experiments on [Weights and Biases LT_XCL_eat](https://wandb.ai/deepbirddetect/birdset/runs/pretrain_eat_3_2024-05-17_075334/files?nw=nwuserraphaelschwinger).\n\nIf you want to start the large-scale trainings and download the big training datasets, you can also employ the `XCM` and `XCL` trainings via the experiment YAML files. \n\n``` bash\npython birdset/train.py experiment=\"birdset_neurips24/$EXPERIMENT_PATH\"\n```\nAfter training, the best model checkpoint is saved based on the validation loss and can then be used for inference:\n\n``` bash\npython birdset/eval.py experiment=\"birdset_neurips24/$EXPERIMENT_PATH\" module.model.network.local_checkpoint=\"$CHECKPOINT_PATH\"\n```\n\n**Disclaimer on results:** The results obtained using the `eval.py` script may differ from those reported in the paper. This discrepancy is because only the \"best\" model checkpoint was uploaded to Hugging Face, whereas the paper’s results were averaged over three different random seeds for a more robust evaluation.\n--\u003e\n\u003c!---\n## Results (AUROC)\n| \u003csub\u003eTitle\u003c/sub\u003e | \u003csub\u003eNotes\u003c/sub\u003e |\u003csub\u003ePER\u003c/sub\u003e | \u003csub\u003eNES\u003c/sub\u003e | \u003csub\u003eUHH\u003c/sub\u003e | \u003csub\u003eHSN\u003c/sub\u003e | \u003csub\u003eNBP\u003c/sub\u003e | \u003csub\u003ePOW\u003c/sub\u003e | \u003csub\u003eSSW\u003c/sub\u003e | \u003csub\u003eSNE\u003c/sub\u003e  | \u003csub\u003eOverall\u003c/sub\u003e | \u003csub\u003eCode\u003c/sub\u003e |\n| :----| :--- | :--- | :--- | :--- | :--- | :--- | :--- | :--- | :--- | :--- | :--- |\n| \u003csub\u003e**BirdSet: A Multi-Task Benchmark For Classification In Avian Bioacoustics**\u003c/sub\u003e | | | | | | | |\n| \u003csub\u003e**BIRB: A Generalization Benchmark for Information Retrieval in Bioacoustics**\u003c/sub\u003e | | | | | | | |  | | | |\n## Logging\nLogs will be written to [Weights\u0026Biases](https://wandb.ai/) by default.\n--\u003e\n## Background noise\nTo enhance model performance we mix in additional background noise from downloaded from the [DCASE18](https://dcase.community/challenge2018/index). To download the files and convert them to the correct format, run the notebook 'download_background_noise.ipynb' in the 'notebooks' folder.\n\n\n## Reproduce Baselines\n\nFirst, you have to download the background noise files for augmentations\n\n``` bash\npython resources/utils/download_background_noise.py\n```\n\nWe provide all experiment YAML files used to generate our results in the path `birdset/configs/experiment/birdset_neurips24`. For each dataset, we specify the parameters for all training scenario: `DT`, `MT`, and `LT`\n\n### Dedicated Training (DT)\n\nThe experiments for `DT` with the dedicated subset can be easily run with a single line: \n\n``` bash\npython birdset/train.py experiment=\"birdset_neurips24/DT/$Model\"\n```\n\n### Medium Training (MT) and Large Training (LT)\nExperiments for training scenarios `MT` and `LT` are harder to reproduce since they require more extensive training times. \nAdditionally, the datasets are quite large (90GB for XCM and 480GB for XCL). Therefore, we provide the best model checkpoints via Hugging Face in the experiment files to avoid the need for retraining.\nThese checkpoints can be executed by running the evaluation script, which will automatically download the model and perform inference on the test datasets:\n\n``` bash\npython birdset/eval.py experiment=\"birdset_neurips24/$EXPERIMENT_PATH\"\n```\n\nIf you want to start the large-scale trainings and download the big training datasets, you can also employ the `XCM` and `XCL` trainings via the experiment YAML files. \n\n``` bash\npython birdset/train.py experiment=\"birdset_neurips24/$EXPERIMENT_PATH\"\n```\nAfter training, the best model checkpoint is saved based on the validation loss and can then be used for inference:\n\n``` bash\npython birdset/eval.py experiment=\"birdset_neurips24/$EXPERIMENT_PATH\" module.model.network.local_checkpoint=\"$CHECKPOINT_PATH\"\n```\n\n\n\n\n## Run experiments\n\nOur experiments are defined in the `configs/experiment` folder. To run an experiment, use the following command in the directory of the repository:\n\n``` bash\npython birdset/train.py experiment=\"EXPERIMENT_PATH\"\n```\n\nReplace `EXPERIMENT_PATH` with the path to the experiment YAML config originating from the `experiment` directory. Here's a command for training an EfficientNet on HSN: \n\n``` bash\npython birdset/train.py experiment=\"local/HSN/efficientnet.yaml\"\n```\n\n\n## Testing\n### Linting\nBlack linting is managed through GitHub Actions, as defined in `.github/workflows/black_linting.yml`. Ensure that you are using the same version of `black[jupyter]` as the tests for optimal linting. That currently is `black[jupyter]==25.1.0`.\n#### How to use it\nSimply push your code to the GitHub repository, and Black linting will run automatically.\n\n### Integration Tests\nIntegration tests are executed using the `pytest` package. These tests utilize `subprocess` to run experiments via simple command-line invocations, and `pytest` checks for any errors during execution. Every test is limited to 20 minutes (1.200 seconds), you can cahnge this vlaue in the `pytest.ini`. We categorize the integration tests into two types:\n\n1. **Dataset Tests**: Each dataset is tested on the ConvNext DT model using a `fast_dev_run`. The datasets tested are: HSN, NBP, NES, PER, POW, SNE, SSW, UHH (XCL and XCM are too big for everyday testing)\n\n2. **Model Tests**: Each model (DT) is tested on the HSN dataset using a `fast_dev_run`. The models tested are: AST, ConvNext, EAT, EfficientNet, Wav2Vec2.\n\n#### How to use it\nTo execute all tests, run pytest in the root directory of your project.\n\nIf you wish to test only the models or datasets, use the following commands:\n\nTo test the models: `pytest tests/test_models.py`\nTo test the datasets: `pytest tests/test_datasets.py`\n\nYou can generate test reports by adding the flags `--html=report.html` or `--junitxml=report.xml` when running pytest.\n\nThe default GPU is set to `0`. To specify a different GPU, use the `--device` flag, such as `--device=2`. This enables the Hydra override `trainer.devices=[1,2]` when running the test examples, ensuring that GPUs 2 us used in this case.\nYou can specify the number of CPU workers with the `--workers` flag, such as `--workers=4`, the default value is 1.\n\nAlternatively, you can use VS Code’s integrated testing functionality. Simply click the test tube (🧪) icon in the sidebar to access and run your tests interactively.\n\n## Q\u0026A\n\n#### **How to access the label names in the datasets?**\nThe class names are available in the Hugging Face datasets (with the [ClassLabel Feature](https://huggingface.co/docs/datasets/v3.1.0/en/package_reference/main_classes#datasets.ClassLabel))\n\n```python\nfrom datasets import load_dataset\n\ndataset = load_dataset(\n    \"DBD-research-group/BirdSet\", \n    \"HSN\", \n    cache_dir=\"/path/to/custom/cache/dir\", \n    num_proc=1, \n)\n\ndataset[\"train\"].features[\"ebird_code\"]\n```\nThis should be the output: \n```\nClassLabel(names=['gcrfin', 'whcspa', 'amepip', 'sposan', 'rocwre', 'brebla', 'daejun', 'foxspa', ...], id=None)\n```\nThese ebird codes should correspond to the respective columns in the label matrix. \nYou could also `ds.features[\"label\"].int2str(0)`\n\nAdditionally you can find JSON files containing `id2label` and `label2id` dictionaries for each dataset under the [resources/ebird_codes](https://github.com/DBD-research-group/BirdSet/tree/main/resources/ebird_codes) directory in the git repository.\n\n[Issue](https://github.com/DBD-research-group/BirdSet/issues/280)\n\n-------\n#### **How to access the label names of the pre-trained models?**\nThe class list of pre-trained models corresponds to the datasets they were trained on (same indices). To get the class list, you can visit this [link on HF](https://huggingface.co/datasets/DBD-research-group/BirdSet/blob/main/classes.py) or use the following code example:\n\n```python\n\nimport datasets \n\ndataset_meta = datasets.load_dataset_builder(\"dbd-research-group/BirdSet\", \"XCL\")\ndataset_meta.info.features[\"ebird_code\"]\n```\n\nWe have also added class information to the models on HF. You can find them in the config of the respective models. To access the model config you can refer to the following code snippet:\n\n```python\n\nfrom transformers import ConvNextForImageClassification\n\n# load model\nmodel = ConvNextForImageClassification.from_pretrained(\"DBD-research-group/ConvNeXT-Base-BirdSet-XCL\")\n\n# access label dicts\nmodel.config.id2label # or model.config.label2id depending on what you need\n\n```\n\n`id2label` and `label2id` are dictionaries so to access a specific element you can do this:\n\n```python\n\nmodel.config.id2label[0]\n\n```\n\nIn the case of XCL this should output `ostric2`.\n\n**Please note:** Changing the last layer in any way (e.g. changing the output layer to 21 classes to fine-tune on HSN) will remove or invalidate that label information from the configs. In that case you will need to get that information differently. In case of BirdSet datasets you can look under [resources/ebird_codes](https://github.com/DBD-research-group/BirdSet/tree/main/resources/ebird_codes). The json files in that directory contain `label2id` and `id2label` dicts for every dataset.\n\n------\n## Dataset Changelog\nFor dataset updates please see the [Dataset Card](https://huggingface.co/datasets/DBD-research-group/BirdSet#changelog)\n\n\n------\n## Citation\n\n```\n@misc{rauch2024birdset,\n      title={BirdSet: A Large-Scale Dataset for Audio Classification in Avian Bioacoustics}, \n      author={Lukas Rauch and Raphael Schwinger and Moritz Wirth and René Heinrich and Denis Huseljic and Marek Herde and Jonas Lange and Stefan Kahl and Bernhard Sick and Sven Tomforde and Christoph Scholz},\n      year={2024},\n      eprint={2403.10380},\n      archivePrefix={arXiv},\n      primaryClass={cs.SD},\n      url={https://arxiv.org/abs/2403.10380}, \n}\n```\n\n\u003c!-- \n# Data pipeline\n\nOur datasets are shared via Hugging Face Datasets in our [BirdSet repository](https://huggingface.co/datasets/DBD-research-group/BirdSet).\nFirst log in to Hugging Face with:\n```bash\nhuggingface-cli login\n```\n\nFor a detailed guide to using the BirdSet data pipeline and its many configuration options, see our comprehensive [BirdSet Data Pipeline Tutorial](notebooks/tutorials/birdset-pipeline_tutorial.ipynb).\n\n## Datamodule\n\nThe datamodules are defined in `birdset/datamodule` and configurations are stored under `configs/datamodule`.\n`base_datamodule` is the main class that can be inherited for specific datasets. It is responsible for preparing the data in the function `prepare_data` and loading the data in the function `setup`. `prepare_data` downloads the dataset, applies preprocessing, creates validation splits and saves the data to disk. `setup` initiates the dataloaders and configures data transformations.\n\nThe following steps are performed in `prepare_data`:\n\n1. Data is downloaded from Hugging Face Datasets `_load_data`\n2. Data gets preprocessed with `_preprocess_data`\n3. Data is split into train validation and test sets with `_create_splits`\n4. Length of the dataset gets saved to access later\n5. Data is saved to disk with `_save_dataset_to_disk`\n\nThe following steps are performed in `setup`:\n1. Data is loaded from disk with `_get_dataset` in which the transforms are applied\n\n## Transformations\n\nData transformations are referred to data transformations that are applied to the data during training. They include e.g. augmentations. The transformations are added to the Hugging Face dataset with [`set_transform`](https://huggingface.co/docs/datasets/main/en/package_reference/main_classes#datasets.Dataset.set_transform).\n\n--\u003e\n\n\n\n","funding_links":[],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":[],"project_url":"https://ost.ecosyste.ms/api/v1/projects/303295","html_url":"https://ost.ecosyste.ms/projects/303295"}