{"id":13738497,"url":"https://github.com/hav4ik/Hydra","last_synced_at":"2025-05-08T16:34:20.156Z","repository":{"id":112284999,"uuid":"184133100","full_name":"hav4ik/Hydra","owner":"hav4ik","description":"Multi-Task Learning Framework on PyTorch. State-of-the-art methods are implemented to effectively train models on multiple tasks.","archived":false,"fork":false,"pushed_at":"2019-06-03T19:39:20.000Z","size":171,"stargazers_count":148,"open_issues_count":1,"forks_count":15,"subscribers_count":11,"default_branch":"master","last_synced_at":"2024-11-15T07:34:38.931Z","etag":null,"topics":["deep-learning","multi-objective-optimization","multi-task-learning","neural-architecture-search","pytorch"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hav4ik.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}},"created_at":"2019-04-29T19:42:50.000Z","updated_at":"2024-11-11T17:03:40.000Z","dependencies_parsed_at":"2023-04-20T09:57:46.154Z","dependency_job_id":null,"html_url":"https://github.com/hav4ik/Hydra","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/hav4ik%2FHydra","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hav4ik%2FHydra/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hav4ik%2FHydra/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hav4ik%2FHydra/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hav4ik","download_url":"https://codeload.github.com/hav4ik/Hydra/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253105622,"owners_count":21855067,"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":["deep-learning","multi-objective-optimization","multi-task-learning","neural-architecture-search","pytorch"],"created_at":"2024-08-03T03:02:24.117Z","updated_at":"2025-05-08T16:34:19.744Z","avatar_url":"https://github.com/hav4ik.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"\n# Hydra \u0026mdash; a Multi-Task Learning Framework\n\n[![Python 3.6](https://img.shields.io/badge/python-3.6-blue.svg)](https://www.python.org/downloads/release/python-360/)\n[![Using PyTorch](https://img.shields.io/badge/PyTorch-red.svg?labelColor=f3f4f7\u0026logo=data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjU2cHgiIGhlaWdodD0iMzEwcHgiIHZpZXdCb3g9IjAgMCAyNTYgMzEwIiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHByZXNlcnZlQXNwZWN0UmF0aW89InhNaWRZTWlkIj4KICAgIDxnPgogICAgICAgIDxwYXRoIGQ9Ik0yMTguMjgxMDM3LDkwLjEwNjQxMiBDMjY4LjU3Mjk4OCwxNDAuMzk4MzYzIDI2OC41NzI5ODgsMjIxLjA3NTAzNCAyMTguMjgxMDM3LDI3MS43MTYyMzUgQzE2OS4wMzY4MzUsMzIyLjAwODE4NiA4OC4wMTA5MTQxLDMyMi4wMDgxODYgMzcuNzE4OTYzMiwyNzEuNzE2MjM1IEMtMTIuNTcyOTg3NywyMjEuNDI0Mjg0IC0xMi41NzI5ODc3LDE0MC4zOTgzNjMgMzcuNzE4OTYzMiw5MC4xMDY0MTIgTDEyNy44MjUzNzUsMCBMMTI3LjgyNTM3NSw0NS4wNTMyMDYgTDExOS40NDMzODMsNTMuNDM1MTk3OCBMNTkuNzIxNjkxNywxMTMuMTU2ODg5IEMyMi4wMDI3Mjg1LDE1MC4xNzczNTMgMjIuMDAyNzI4NSwyMTAuOTQ2Nzk0IDU5LjcyMTY5MTcsMjQ4LjY2NTc1NyBDOTYuNzQyMTU1NSwyODYuMzg0NzIgMTU3LjUxMTU5NiwyODYuMzg0NzIgMTk1LjIzMDU1OSwyNDguNjY1NzU3IEMyMzIuOTQ5NTIzLDIxMS42NDUyOTMgMjMyLjk0OTUyMywxNTAuODc1ODUzIDE5NS4yMzA1NTksMTEzLjE1Njg4OSBMMjE4LjI4MTAzNyw5MC4xMDY0MTIgWiBNMTczLjIyNzgzMSw4NC41MTg0MTc1IEMxNjMuOTY5MzM4LDg0LjUxODQxNzUgMTU2LjQ2Mzg0Nyw3Ny4wMTI5MjYzIDE1Ni40NjM4NDcsNjcuNzU0NDMzOCBDMTU2LjQ2Mzg0Nyw1OC40OTU5NDEzIDE2My45NjkzMzgsNTAuOTkwNDUwMiAxNzMuMjI3ODMxLDUwLjk5MDQ1MDIgQzE4Mi40ODYzMjMsNTAuOTkwNDUwMiAxODkuOTkxODE0LDU4LjQ5NTk0MTMgMTg5Ljk5MTgxNCw2Ny43NTQ0MzM4IEMxODkuOTkxODE0LDc3LjAxMjkyNjMgMTgyLjQ4NjMyMyw4NC41MTg0MTc1IDE3My4yMjc4MzEsODQuNTE4NDE3NSBaIiBmaWxsPSIjRUU0QzJDIj48L3BhdGg+CiAgICA8L2c+Cjwvc3ZnPgo=)](https://pytorch.org/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://github.com/hav4ik/Hydra/blob/master/LICENSE)\n[![Contributions welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat)](https://github.com/hav4ik/Hydra/issues)\n\n\n[Hydra][hydra] is a flexible multi-task learning framework written in [PyTorch 1.0][pytorch]. The following multi-objective optimization algorithms are implemented:\n\n* **Naive** \u0026mdash; a separate optimizer for each task\n* **Gradients averaging** \u0026mdash; average out the gradients to the network's body\n* **MGDA** \u0026mdash; described in the paper [Multi-Task Learning as Multi-Objective Optimization (NIPS 2018)][mgda]\n\nA comprehensive survey on these algorithms (and more) can be found in [this blog article][blog-post].\n\n# Installation\n\n* The code was written on `Python 3.6`. Clone this repository:\n\n      git clone https://github.com/hav4ik/Hydra\n\n* It is recommended to use [anaconda][conda] for installation of core packages (since `conda` packages comes with low-level libraries that can optimize the runtime):\n\n      conda install pytorch torchvision cudatoolkit=10.0 -c pytorch\n      conda install numpy pandas scikit-learn\n\n* Some of the packages are not available from anaconda, so you can install them using `pip`:\n\n      pip install -r requirements.txt\n\n# Getting started\n\n* Examples of configuration files can be found [here][configs-dir]. A minimal example is available in [starter.sh][starter]. Execute it as follows (will train with configurations in [configs/toy_experiments/naive.yaml][naive-yaml]):\n\n      ./starter.sh naive 50\n\n# Coming soon...\n\n* Proper framework documentation and examples.\n\n\n[hydra]: https://github.com/hav4ik/Hydra\n[conda]: https://docs.conda.io/en/latest/miniconda.html\n[pytorch]: https://pytorch.org/\n[mgda]: https://papers.nips.cc/paper/7334-multi-task-learning-as-multi-objective-optimization.pdf\n[gradnorm]: https://arxiv.org/abs/1711.02257\n[starter]: https://github.com/hav4ik/Hydra/blob/master/starter.sh\n[configs-dir]: https://github.com/hav4ik/Hydra/tree/master/configs\n[naive-yaml]: https://github.com/hav4ik/Hydra/blob/master/configs/toy_experiments/naive.yaml\n[blog-post]: https://hav4ik.github.io/articles/mtl-a-practical-survey\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhav4ik%2FHydra","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhav4ik%2FHydra","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhav4ik%2FHydra/lists"}