{"id":17153169,"url":"https://github.com/axect/hyperboliclr","last_synced_at":"2025-04-13T12:43:59.230Z","repository":{"id":249539275,"uuid":"808446747","full_name":"Axect/HyperbolicLR","owner":"Axect","description":"Hyperbolic Learning Rate Scheduler","archived":false,"fork":false,"pushed_at":"2025-02-09T00:23:26.000Z","size":12997,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-12T16:10:14.142Z","etag":null,"topics":["deep-learning","image-classification","learning-rate-scheduler","operator-learning","time-series-forecasting"],"latest_commit_sha":null,"homepage":"https://arxiv.org/abs/2407.15200","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/Axect.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}},"created_at":"2024-05-31T05:02:01.000Z","updated_at":"2025-02-09T00:23:30.000Z","dependencies_parsed_at":"2024-08-01T10:23:25.241Z","dependency_job_id":null,"html_url":"https://github.com/Axect/HyperbolicLR","commit_stats":null,"previous_names":["axect/hyperboliclr"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Axect%2FHyperbolicLR","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Axect%2FHyperbolicLR/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Axect%2FHyperbolicLR/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Axect%2FHyperbolicLR/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Axect","download_url":"https://codeload.github.com/Axect/HyperbolicLR/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248717240,"owners_count":21150387,"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","image-classification","learning-rate-scheduler","operator-learning","time-series-forecasting"],"created_at":"2024-10-14T21:45:29.179Z","updated_at":"2025-04-13T12:43:59.210Z","avatar_url":"https://github.com/Axect.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Hyperbolic Learning Rate Scheduler\n\nThis repository contains the implementation and experimental code for the paper \"[_HyperbolicLR: Epoch Insensitive Learning Rate Scheduler_](https://arxiv.org/abs/2407.15200)\".\nIt includes the novel learning rate schedulers, HyperbolicLR and ExpHyperbolicLR, designed to address the learning curve decoupling problem in deep learning.\n\n## Overview\n\nHyperbolicLR and ExpHyperbolicLR are learning rate schedulers that maintain consistent initial learning rate changes, regardless of the total number of epochs.\nThis property helps mitigate the learning curve decoupling problem observed in conventional schedulers, potentially leading to more robust and efficient training of deep neural networks.\n\n## Installation\n\nTo use the HyperbolicLR and ExpHyperbolicLR schedulers in your project:\n\n1. Clone this repository:\n   ```\n   git clone https://github.com/Axect/HyperbolicLR\n   ```\n\n2. Copy `hyperbolic_lr.py` to your project directory or add this repository to your Python path.\n\n## Usage\n\nHere's a basic example of how to use HyperbolicLR in your PyTorch project:\n\n```python\nfrom hyperbolic_lr import HyperbolicLR # or ExpHyperbolicLR\nimport torch\n\n# Define your model and optimizer\nmodel = YourModel()\noptimizer = torch.optim.AdamW(model.parameters(), lr=1e-3)\nnum_epochs = 100\n\n# Create the HyperbolicLR scheduler\nscheduler = HyperbolicLR(optimizer, upper_bound=250, max_iter=num_epochs, infimum_lr=1e-5)\n\n# Training loop\nfor epoch in range(num_epochs):\n    train(model, optimizer)\n    scheduler.step()\n```\n\nFor more detailed usage and examples, please refer to the paper and experimental code in the `paper/` directory.\n\n## Citing\n\nIf you use HyperbolicLR or ExpHyperbolicLR in your research, please cite our paper:\n\n```\n@misc{kim2024hyperboliclr,\n  title={HyperbolicLR: Epoch insensitive learning rate scheduler}, \n  author={Tae-Geun Kim},\n  year={2024},\n  eprint={2407.15200},\n  archivePrefix={arXiv},\n  primaryClass={cs.LG},\n  url={https://arxiv.org/abs/2407.15200}, \n}\n```\n\n## License\n\nThis project is licensed under the [MIT License](LICENSE).\n\n## Contributing\n\nWe welcome contributions to improve HyperbolicLR and ExpHyperbolicLR. Please feel free to submit issues or pull requests.\n\n## Contact\n\nFor any questions or discussions regarding this project, please open an issue in this repository.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faxect%2Fhyperboliclr","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faxect%2Fhyperboliclr","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faxect%2Fhyperboliclr/lists"}