1from transformers import AutoModelForCTC, AutoProcessor
2
3ckpt = "haeylee/ssl_ft_pron/wav2vec2/ctc/01_wav2vec2-large"
4model = AutoModelForCTC.from_pretrained(ckpt)
5processor = AutoProcessor.from_pretrained(ckpt)
1from transformers import AutoProcessor, Wav2Vec2Model, HubertModel, WavLMModel
2
3# Wav2Vec2 (General)
4ckpt = "haeylee/ssl_ft_pron/wav2vec2/general/01_wav2vec2-large"
5model = Wav2Vec2Model.from_pretrained(ckpt)
6processor = AutoProcessor.from_pretrained(ckpt)
7
8# HuBERT (Freeze)
9# ckpt = "haeylee/ssl_ft_pron/hubert/freeze/06_hubert-large-ll60k"
10# model = HubertModel.from_pretrained(ckpt)
11# processor = AutoProcessor.from_pretrained(ckpt)
12
13# WavLM (General)
14# ckpt = "haeylee/ssl_ft_pron/wavlm/general/10_wavlm-large"
15# model = WavLMModel.from_pretrained(ckpt)
16# processor = AutoProcessor.from_pretrained(ckpt)
1/your/data/path/speechocean762/
2└── preprocess/
3 ├── speechocean_train_ds/
4 └── speechocean_test_ds/
1# Adjust paths inside the script or via CLI args
2python preprocess_dataset.py \
3 --data_root /your/data/path/speechocean762 \
4 --out_dir /your/data/path/speechocean762/preprocess
1python train/baseline.py \
2 --model_name facebook/hubert-xlarge-ls960-ft \
3 --batch_size 4 \
4 --learning_rate 1e-5 \
5 --num_train_epochs 30
1python train/freeze.py \
2 --model_name facebook/hubert-xlarge-ls960-ft \
3 --freeze_feature_extractor \
4 --batch_size 4 \
5 --learning_rate 1e-5 \
6 --num_train_epochs 30
1python train/ctc.py \
2 --model_name facebook/wav2vec2-large \
3 --batch_size 4 \
4 --learning_rate 1e-5 \
5 --num_train_epochs 30
1@inproceedings{lee2024analysis,
2 title={Analysis of Various Self-Supervised Learning Models for Automatic Pronunciation Assessment},
3 author={Lee, Haeyoung and Kim, Sunhee and Chung, Minhwa},
4 booktitle={2024 Asia Pacific Signal and Information Processing Association Annual Summit and Conference (APSIPA ASC)},
5 pages={1--6},
6 year={2024},
7 organization={IEEE}
8}