Logo Lanfrica

AI-Peak/vsfc-low-resource-da

Domain:

natural language processing

Record type:

project
Creator:
AI-
Host:
Low-resource Vietnamese student feedback sentiment classification with data augmentation # VSFC Low-resource Data Augmentation Experimental pipeline for label-preserving data augmentation on Vietnamese student feedback sentiment classification. ## Scope This repository is organized around the execution plan in `../execution_plan.md`. The initial bootstrap includes reproducible configuration, utility helpers, and the project layout needed for later data, augmentation, training, and analysis phases. ## Quick Checks ```bash pip install -r requirements.txt python -c "from src.utils.seed import set_seed; set_seed(42)" python -c "import yaml; print(yaml.safe_load(open('configs/base.yaml')))" ``` ## Environment Split for VietQuill VietQuill uses a separate generation environment because its dependency pins conflict with the PhoBERT training stack in `requirements.txt`. - `gen-env`: install `requirements-vietquill.txt`. Use this only for VietQuill paraphrase generation and VietQuill QE scoring. - `train-env`: install `requirements.txt`. Use this for all PhoBERT training, heuristic filtering, aggregation, and any PhoBERT-based judge work. The handoff between the two environments is CSV text under `data/augmented/` and QC tables under `results/tables/`. Do not install both dependency sets in one environment; generate or score text in `gen-env`, then train from the CSVs in `train-env`. ## Phase 3 GPU Run Local CPU can verify code, but PhoBERT acceptance should run on a CUDA GPU such as Kaggle/Colab T4. ```bash python scripts/check_gpu.py python scripts/setup_vncorenlp.py python scripts/download_data.py python -m src.data.subsample --train-csv data/raw/train.csv --seed 42 python -m src.experiments.run_phobert --ratio 1.00 --seed 42 --augmentation none --decision-rule tune_logit_bias --logging-steps 25 ``` The notebook `notebooks/phase3_gpu_run.ipynb` contains the same flow for Kaggle/Colab. It first runs a tiny GPU smoke test, then runs the full Phase 3 gate. On Kaggle, keep Internet on and use a GPU accelerator; the notebook defaults to a single visib …