포스팅 업데이트
v0: 22/02/11
이 글은 논문을 읽고 정리하기 위한 글입니다.
내용에 오류가 있는 부분이 있다면 조언 및 지적 언제든 환영입니다!
Audio와 Speech 분야에서의 사용하는 Data Augmentation 를 정리해보고자 합니다.
Feature Drop
에 관점에서의 Data Augmentation 중심으로 다루었습니다.
간단한 개념 위주로 정리할 예정입니다.
[1] Tempo/Speech perturbation (INTERSPEECH 2015), paper_link
[2] SpecAugment (INTERSPEECH 2019), paper_link
[3] Mix SpecAugment (ICASSP 2020), paper_link
[4] SpecSwap (INTERSPEECH 2020), paper_link
[5] SpecAugment++ (INTERSPEECH 2021), paper_link
[6] FilterAugment (ICASSP 2022), paper_link
[1] Ko, Tom, et al. "Audio augmentation for speech recognition." Sixteenth annual conference of the international speech communication association. 2015.
[2]
@article{2019,
title={SpecAugment: A Simple Data Augmentation Method for Automatic Speech Recognition},
url={http://dx.doi.org/10.21437/Interspeech.2019-2680},
DOI={10.21437/interspeech.2019-2680},
journal={Interspeech 2019},
publisher={ISCA},
author={Park, Daniel S. and Chan, William and Zhang, Yu and Chiu, Chung-Cheng and Zoph, Barret and Cubuk, Ekin D. and Le, Quoc V.},
year={2019},
month={Sep}
}
[3]
@misc{park2019specaugment,
title={SpecAugment on Large Scale Datasets},
author={Daniel S. Park and Yu Zhang and Chung-Cheng Chiu and Youzheng Chen and Bo Li and William Chan and Quoc V. Le and Yonghui Wu},
year={2019},
eprint={1912.05533},
archivePrefix={arXiv},
primaryClass={eess.AS}
}
[4] Song, X., Wu, Z., Huang, Y., Su, D., & Meng, H. (2020, January). SpecSwap: A Simple Data Augmentation Method for End-to-End Speech Recognition. In Interspeech (pp. 581-585).
[5]
@misc{wang2021specaugment,
title={SpecAugment++: A Hidden Space Data Augmentation Method for Acoustic Scene Classification},
author={Helin Wang and Yuexian Zou and Wenwu Wang},
year={2021},
eprint={2103.16858},
archivePrefix={arXiv},
primaryClass={eess.AS}
}
[6]
@misc{nam2022filteraugment,
title={FilterAugment: An Acoustic Environmental Data Augmentation Method},
author={Hyeonuk Nam and Seong-Hu Kim and Yong-Hwa Park},
year={2022},
eprint={2110.03282},
archivePrefix={arXiv},
primaryClass={eess.AS}
}
Paper: Audio augmentation for speech recognition (INTERSPEECH 2015)
Task: ASR(Automatic Speech Recognition)
Perturbation
: 미미한 변경을 의미함Sox
라는 audio manipulation tool 를 이용하여 구현했다.
- 수학적 해석
- 발화 속도 factor를 , 원 신호를 라고 하자.
- Speed Perturbation(Time Warping) 적용 시 아래와 같다.
- Time domain에서 Warping은 로 해석할 수 있다.
- 이때 주파수(Freq)에서는 만큼 크기가 scaling 되고 주파수 대역이 shift 되는 것으로 해석할 수 있다.
- if , 즉 Speed가 줄어들었다면
- 신호의 에너지가 Low-frequency 영역으로 이동하게 된다.
- if , 즉 Speed가 빨리진다면
- 신호의 에너지가 High-frequency 영역으로 이동하게 된다.
Paper: SpecAugment: A Simple Data Augmentation Method for Automatic Speech Recognition (INTERSPEECH 2019)
Task: ASR(Automatic Speech Recognition)
Simple
and Computationally cheap
, Feature(Input) drop-outlog-mel spectrogram
- Time Warping
- Time Masking
- Frequency Masking
좌우로 늘린다
고 생각하면 된다.Cutout
기법을 Speech의 log-mel spectrogram에 적용한 방법이다.ref: https://tutorials.pytorch.kr/beginner/audio_feature_augmentation_tutorial.html
ref: https://tutorials.pytorch.kr/beginner/audio_feature_augmentation_tutorial.html
ASR: LAS(Listen, Attend and Spell) Network
- LibriSpeech
- Switchboard
2종류 데이터 셋에 대해 각각 2가지 총 4가지 Policy 실험 결과를 보여준다.
Hyper-Parameter
- : Time wraping Parameter
- : Maximum Freq mask Parameter
- : Number of Freq mask
- : Maximum Time mask Parameter
- : Time mask의 Upper Bound Parameter
- : Number of Time mask
LibriSpeech
Switchboard
LB
보다 Time mask 개수가 더 많은 LD
가 대체로 더 좋은 성능 결과를 보였다.D
가 기존 학습방법 B
보다 좋았다.SpecAugment 방법은 기존 학습시 발생하던 over-fitting 문제를 under-fitting 문제로 바꿨다.
아래 그림 결과와 같이 Train 과 Dev set 간의 WER gap를 줄이게 되었지만, 기존 Training 보다는 수렴이 보다 높은 것을 볼 수 있다.
LB vs LD
: Augmentation를 강하게 줄수록 더 Training에서는 수렴이 잘 되지 않는 것을 보이지만, Dev에서는 더 좋은 경향성을 보인다.
under-fitting 방면 improvement
Paper: SpecAugment on Large Scale Datasets (ICASSP 2020)
Task: ASR(Automatic Speech Recognition)
Adaptive 한 SpecAugment
방법을 제안합니다.Domain 별로 Audio 길이의 큰 변동으로 인해서 Maximum Time Mask
를 고정된 길이로 사용하는 것이 오히려 성능 저하를 보였다.
본 논문에서는 Audio 길이에 따른 Maximum Time Mask
크기를 Adaptive 하게 설정하는 알고리즘을 제안한다.
Algorithm
1) Adaptive multiplicity
- Time Mask의 크기를 Audio의 길이 와 multiplicity ratio 값 으로 조절함
- Time Mask의 최대 길이를 20으로 Cap
시키는 것을 볼 수 있다.
2) Adaptive size
- Maximum Time Mask 값인 또한 Audio 길이에 Adaptive 하게 사용함
Paper: A Simple Data Augmentation Method for End-to-End Speech Recognition (INTERSPEECH 2020)
Task: ASR(Automatic Speech Recognition)
Time Swap
Frequency Swap
Ablation Study
Results
SpecMask = SpecAugment - Time Warping
Paper: A Hidden Space Data Augmentation Method for Acoustic Scene Classification (INTERSPEECH 2021)
Task: ASC(Acoustic Scene Classification)
hidden space
에 대한 Augmentation 방법 연구 부족cutmix
방법SpeechMix
의 불안정성 존재cutmix
방법을 도입하여 추가적인 noise를 도입hidden space
에 대한 Augment 방법 및 실험 결과 보임SpecAugment의 Time Warping은 사용하지 않음
Time, Frequency Mask에 대해 3종류 Mask 제안
ZM (Zero-value Masking)
y
를 정한다.y
와 Augment 영역 SamplingHidden Space 적용
과 Time Warping 적용 차이
로 볼 수 있다.
Paper: An Acoustic Environmental Data Augmentation Method (ICASSP 2022)
Task: SED(Sound Event Detection), SV(Speaker Verification)
Code:
github
각 Frequency 에 대해서 다른 Amplitude 값을 가지는 Filter를 적용
특정 형태의 filter가 아닌 random filter로 computation cost가 적음
장점