A lightweight machine learning toolkit for researchers.
NNCore is a library that provides common functionalities for Machine Learning and Deep Learning researchers. This project aims at helping users focus more on science but not engineering during research. The essential functionalities include but are not limited to:
- Universal I/O APIs
- Efficient implementations of layers and losses that are not included in PyTorch
- Extended methods for distributed training
- More powerful data loading techniques
- An engine that can take over the whole training and testing process, with all the baby-sitting works (stage control, optimizer configuration, lr scheduling, checkpoint management, metrics & tensorboard writing, etc.) done automatically. See an example for details.
Note that some methods in the library work with PyTorch 2.0+, but the installation of PyTorch is not necessary.
Platform / Python Version | 3.9 | 3.10 | 3.11 | 3.12 |
---|---|---|---|---|
Ubuntu 20.04 | ||||
Ubuntu 22.04 | ||||
macOS 12.x | ||||
macOS 13.x | ||||
Windows Server 2022 |
You may install nncore directly from PyPI
pip install nncore
or manually from source
git clone https://github.com/yeliudev/nncore.git
cd nncore
pip install -e .
Please refer to our documentation for how to incorporate nncore into your projects.
This library is licensed under the MIT License. Part of the code in this project is modified from mmcv and fvcore with many thanks to the original authors.