training_extensions
training_extensions copied to clipboard
[WIP] Upgrade Augmentations Pipeline in OTX
Summary
resolves https://github.com/open-edge-platform/training_extensions/issues/5020
- [ ] Provide batch augmentations support per model per task
- [ ] Change augmentation pipeline to hybrid mode (batch augmentation + torchvision.v2). Operate only tensors
- [ ] Remove all custom unnecessary augmentations
- [ ] Provide DataAugmentationFactory to support configurable augmentation both for dataset based and batch based. This solution should work with Geti templates.
- [ ] Provide benchmark results
How to test
Checklist
- [ ] The PR title and description are clear and descriptive
- [ ] I have manually tested the changes
- [ ] All changes are covered by automated tests
- [ ] All related issues are linked to this PR (if applicable)
- [ ] Documentation has been updated (if applicable)
First validation results:
Batch based augmentations + tensor only operations can improve iteration time almost 2x. The larger batch the larger improvements
| Method | Task | Model | iter_time |
|---|---|---|---|
| Current | classification | efficientnet_b0 | 0.446 |
| Proposed | classification | efficientnet_b0 | 0.225 |
| Current | detection | YOLOX_X | 0.369 |
| Proposed | detection | YOLOX_X | 0.180 |