Стен: график для эффективной разреженности в Pytorch
Стен стремится решить следующие вопросы, которые остались без ответа в текущей реализации (Torch.sparse) редкости в Pytorch 1.11.
- Как включить в модель стратегию редактирования и использовать ее во время выполнения?
- Как сохранить уровень разреженности одинаковым во время тренировок?
- Как включить полную поддержку автограда?
- Как включить пользовательские разреженные форматы и реализации операторов?
Примеры
- Проверьте build_from_scratch.ipynb, чтобы увидеть пример использования интерфейса для создания модуля Pytorch с нуля.
- Проверьте modify_existing.ipynb, чтобы увидеть пример преобразования существующего плотного модуля Pytorch в редкий.
- Проверьте custom_implementations.ipynb, чтобы просмотреть пример регистрации пользовательских реализаций для раз редакторов и операторов, которые соответствуют конкретным форматам входных и выходных тензоров.
Быстрый старт
git clone https://github.com/spcl/sten.git
cd sten
python -m venv venv
source venv/bin/activate
pip install .
python tests/test_api.py
Установка
Кодовая организация
Основная реализация находится в Sten.py. Примеры ноутбука Jupyter расположены в каталоге примеров. Еще больше примеров можно найти в форме тестов в каталоге тестов. Тесты можно запускать, вызывая pytest
в корне проекта.