asyml / asyml/forte

Implement structure substitute

Open
#478 0 comments 0 reactions 0 assignees View on GitHub
data_aug e/5 priority: medium
Dominant language
Python
Stars
253
Forks
59
PR merge metrics
No merged PRs in 30d

Description

**Is your feature request related to a problem? Please describe.**
Structure substitution is a general family of methods in data augmentation. https://home.ttic.edu/~freda/paper/shi2021substructure.pdf

Behind the scene, the method focuses on replacing sub-structures like phrases or trees from a sentence. This fits very well into Forte's data augmentation framework, where the systems allow one to replace content but keeping the original annotation.

**Describe the solution you'd like**
1. Implement structure substitution as a `ReplacementOp`.
2. A pipeline needs to be run to collect the sub-structure statistics first.
3. Structured constraints (as mentioned in the paper) can be considered as the configurations for the processor

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.

Contributor guide

Open the contributing guide

Research direction

Start by reading the linked structure-substitution paper and Forte's existing ReplacementOp implementations. Trace how augmentation pipelines collect statistics and preserve annotations, then determine how structured constraints should be configured. Done means a working structure-substitution operation integrated with the pipeline and covered by appropriate tests; the issue names no files or tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
machine-learning
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.