Science Score: 54.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
✓Academic publication links
Links to: zenodo.org -
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (11.2%) to scientific vocabulary
Repository
Logging utility
Basic Info
- Host: GitHub
- Owner: shagunsodhani
- License: mit
- Language: HTML
- Default Branch: main
- Homepage: https://xplogger.readthedocs.io/en/latest/
- Size: 6.57 MB
Statistics
- Stars: 8
- Watchers: 2
- Forks: 0
- Open Issues: 2
- Releases: 0
Metadata Files
README.md
xplogger
Logging utility for ML experiments
Why
People use different tools for logging experimental results - Tensorboard, Wandb etc to name a few. Working with different collaborators, I will have to switch my logging tool with each new project. So I made this simple tool that provides a common interface to logging results to different loggers.
Installation
pip install "xplogger[all]"
If you want to use only the filesystem logger, use pip install "xplogger"
Install from source
git clone git@github.com:shagunsodhani/xplogger.gitcd xploggerpip install ".[all]"
Alternatively, pip install "git+https://git@github.com/shagunsodhani/xplogger.git@master#egg=xplogger[all]"
If you want to use only the filesystem logger, use pip install . or pip install "git+https://git@github.com/shagunsodhani/xplogger.git@master#egg=xplogger".
Documentation
https://shagunsodhani.github.io/xplogger
Use
Make a
logbook_config:import xplogger.logbook logbook_config = xplogger.logbook.make_config( logger_dir = <path to write logs>, wandb_config = <wandb config or None>, tensorboard_config = <tensorboard config or None>, mlflow_config = <mlflow config or None>)The API for
make_configcan be accessed here.Make a
LogBookinstance:logbook = xplogger.logbook.LogBook(config = logbook_config)Use the
logbookinstance:log = { "epoch": 1, "loss": 0.1, "accuracy": 0.2 } logbook.write_metric(log)The API forwrite_metriccan be accessed here.
Note
If you are writing to wandb, the
logmust have a key calledstep. If yourlogalready captures thestepbut as a different key (sayepoch), you can pass thewandb_key_mapargument (set as{epoch: step}). For more details, refer the documentation here.If you are writing to mlflow, the
logmust have a key calledstep. If yourlogalready captures thestepbut as a different key (sayepoch), you can pass themlflow_key_mapargument (set as{epoch: step}). For more details, refer the documentation here.If you are writing to tensorboard, the
logmust have a key calledmain_tagortagwhich acts as the data Identifier and another key calledglobal_step. These keys are described here. If yourlogalready captures these values but as different key (saymodeformain_tagandepochforglobal_step), you can pass thetensorboard_key_mapargument (set as{mode: main_tag, epoch: global_step}). For more details, refer the documentation here.
Dev Setup
pip install -e ".[dev]"- Install pre-commit hooks
pre-commit install - The code is linted using:
blackflake8mypyisort
- Tests can be run locally using
nox
Acknowledgements
- Config for
circleci,pre-commit,mypyetc are borrowed/modified from Hydra
Owner
- Name: Shagun Sodhani
- Login: shagunsodhani
- Kind: user
- Location: Virtual
- Company: @facebook
- Website: https://shagunsodhani.github.io
- Twitter: shagunsodhani
- Repositories: 211
- Profile: https://github.com/shagunsodhani
@FacebookResearch. Previously @mila-iqia, @MicrosoftResearch, @AdobeResearch, @IITRoorkee, @gradientpub.
Citation (CITATION.cff)
cff-version: 1.2.0 message: "If you use this software, please cite it as below." authors: - family-names: "Sodhani" given-names: "Shagun" orcid: "https://orcid.org/0000-0003-2994-8906" title: "xplogger: Logging utility for ML experiments" version: 0.9.0 doi: 10.5281/zenodo.5980041 date-released: 2022-02-05 url: "https://github.com/shagunsodhani/xplogger"
GitHub Events
Total
Last Year
Committers
Last synced: about 3 years ago
All Time
- Total Commits: 94
- Total Committers: 2
- Avg Commits per committer: 47.0
- Development Distribution Score (DDS): 0.085
Top Committers
| Name | Commits | |
|---|---|---|
| Shagun Sodhani | s****i@f****m | 86 |
| Shagun Sodhani | 1****i@u****m | 8 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 8 months ago
All Time
- Total issues: 6
- Total pull requests: 14
- Average time to close issues: 23 days
- Average time to close pull requests: 16 days
- Total issue authors: 1
- Total pull request authors: 1
- Average comments per issue: 0.0
- Average comments per pull request: 0.14
- Merged pull requests: 14
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- shagunsodhani (6)
Pull Request Authors
- shagunsodhani (14)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 62 last-month
- Total dependent packages: 0
- Total dependent repositories: 1
- Total versions: 7
- Total maintainers: 1
pypi.org: xplogger
Logging Utility for ML Experiments
- Homepage: https://github.com/shagunsodhani/xplogger
- Documentation: https://xplogger.readthedocs.io/
- License: MIT License
-
Latest release: 0.11.3
published over 3 years ago
Rankings
Maintainers (1)
Dependencies
- filelock >=3.4.2
- mlflow >=1.12.1
- pymongo >=3.11.1
- tensorboardX >=2.1
- wandb >=0.10.11
- black >=22.1.0
- flake8 >=4.0.1
- flake8-annotations >=2.7.0
- flake8-bandit >=2.1.2
- flake8-bugbear >=22.1.11
- flake8-comprehensions >=3.8.0
- flake8-docstrings >=1.5.0
- isort >=5.10.1
- mypy >=0.931
- nox >=2022.1.7
- pre-commit >=2.17.0
- pytest >=7.0.0
- sphinx >=4.3.0
- sphinx-autodoc-annotation >=1.0
- sphinx-rtd-theme >=1.0.0
- sphinxcontrib-napoleon >=0.7
- twine >=3.8.0
- typing-extensions >=4.1.0
- numpy >=1.20.0
- pandas >=1.0.0
- pyarrow >=2.0.0
- bokeh ==2.3.3
- pandas-bokeh ==0.5.5