Additional augmentations
- Dominant language
- Python
- Stars
- 1.2k
- Forks
- 170
- PR merge metrics
- No merged PRs in 30d
Description
Rather than reinventing the wheel one could just use `torchvision` transforms https://pytorch.org/docs/stable/torchvision/transforms.html
- [x] `Compose` (already recreated in `deepdow`)
- [ ] `RandomApply` - apply all with some probability
- [ ] `RandomChoice` - apply exactly one but at random
- [ ] `RandomOrder` - apply all but in random order
- [ ] `1Dwarping` - Affine would be a special case, one could in theory have any increasing function (derivative > 0)
- [ ] `RandomAffine` - scaling and translation along the y axis (lookback) could be a brilliant augmentation for `deepdow` tensors
- [ ] `RandomHorizontalFlip` - flipping the time flow, probably super confusing if one wants to pic up mean reversion
- [x] `Normalize` - a must together with some helper function that computes means, stds in the training set. However, it still assumes that the time series is stationary.
- [ ] `RandomErasing` - (similar to the current `Dropout` however it is contiguous regions)
Additionally, torchvision might be also helpful in other tasks (see #39)
The clear downside is introducing yet another dependency. Additionally, one might argue that it is better to go all the way and use `imgaug`, `albumentation`,...
Other nonvision augmentations:
- https://arxiv.org/abs/2002.12478
- https://github.com/arundo/tsaug
- https://halshs.archives-ouvertes.fr/halshs-01357973/document
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with the torchvision transforms documentation linked in the issue and review the checked and unchecked augmentation list. The issue needs a decided scope and dependency direction before implementation; done would mean an agreed subset of augmentations is implemented for deepdow tensors with appropriate training-set helpers where required.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python, pytorch
- Domain
- machine-learning
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100