pytorch-adapt  by KevinMusgrave

PyTorch library for domain adaptation algorithm development

Created 4 years ago
384 stars

Top 74.4% on SourcePulse

GitHubView on GitHub
Project Summary

PyTorch Adapt simplifies domain adaptation for machine learning practitioners by providing a modular and customizable library for repurposing models across different data domains. It offers a comprehensive suite of tools for building, customizing, and integrating domain adaptation pipelines with popular frameworks like PyTorch Lightning and Ignite.

How It Works

The library employs a hook-based architecture, allowing users to easily construct complex domain adaptation algorithms by composing modular components like loss functions and validation methods. This approach facilitates customization, enabling users to combine techniques such as Minimum Class Confusion and Virtual Adversarial Training with minimal code. Framework wrappers abstract away boilerplate, allowing seamless integration with PyTorch Lightning and Ignite for streamlined training and validation.

Quick Start & Requirements

  • Install via pip: pip install pytorch-adapt
  • For Lightning integration: pip install pytorch-adapt[lightning]
  • For Ignite integration: pip install pytorch-adapt[ignite]
  • Requires PyTorch.
  • Official documentation and examples are available.

Highlighted Details

  • Supports building complex algorithms by chaining hooks (e.g., DANNHook(..., post_g=[MCCHook(), VATHook()])).
  • Integrates with PyTorch Lightning and Ignite via dedicated framework wrappers.
  • Includes various validators for performance assessment during or after training.
  • Provides DataloaderCreator for dataset management.

Maintenance & Community

The project acknowledges contributors and advisors, including Serge J. Belongie and Serge Nam Lim. A bibtex reference is provided for academic citation.

Licensing & Compatibility

The library is available under a permissive license, suitable for commercial use and integration with closed-source projects.

Limitations & Caveats

Conda installation is noted as "coming soon." The library's primary focus is on domain adaptation, and its utility for other machine learning tasks may be limited.

Health Check
Last Commit

2 years ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
4 stars in the last 30 days

Explore Similar Projects

Starred by Yaowei Zheng Yaowei Zheng(Author of LLaMA-Factory), Yineng Zhang Yineng Zhang(Inference Lead at SGLang; Research Scientist at Together AI), and
1 more.

VeOmni by ByteDance-Seed

3.4%
1k
Framework for scaling multimodal model training across accelerators
Created 5 months ago
Updated 3 weeks ago
Starred by Théophile Gervet Théophile Gervet(Cofounder of Genesis AI), Jason Knight Jason Knight(Director AI Compilers at NVIDIA; Cofounder of OctoML), and
6 more.

lingua by facebookresearch

0.1%
5k
LLM research codebase for training and inference
Created 11 months ago
Updated 2 months ago
Feedback? Help us improve.