Data-Centric NLP의 연구 동향
본 포스트는 1, 2편에 걸쳐 Data-Centric NLP와 관련된 최근 연구 동향을 체계적으로 설명합니다. 데이터 증강, 필터링, 합성 데이터 생성, 데이터 품질 측정 등 다양한 주제를 다루며, 각각의 연구 방향과 방법론을 설명합니다.
1. 데이터 증강 (Data Augmentation)
데이터 증강은 주어진 데이터셋을 확장하여 모델의 성능을 높이기 위한 다양한 방법을 포함합니다.
1.1 반복적 역번역 (Iterative Back-Translation)
- Iterative Back-Translation for Neural Machine Translation (Hoang et al., 2018): 이 연구에서는 기계 번역에서 데이터 증강을 위해 반복적 역번역을 사용하는 방법을 제안합니다. 역번역(back-translation)은 원본 텍스트를 타 언어로 번역한 후, 다시 원본 언어로 번역하는 과정을 반복함으로써 새로운 데이터 샘플을 생성합니다. 이를 통해 모델이 다양한 문장 구조에 대해 학습할 수 있도록 하여 번역 성능을 향상시킵니다.
1.2 태스크-비특이적 데이터 증강 (Task-Agnostic Data Augmentation)
- How Effective is Task-Agnostic Data Augmentation for Pretrained Transformers (Longpre et al., 2020): 이 연구는 사전 학습된 트랜스포머 모델에서 태스크-비특이적 데이터 증강의 효과를 평가합니다. 태스크에 상관없이 데이터셋을 확장하는 접근 방식이 다양한 자연어 처리(NLP) 작업에서 성능을 향상시킬 수 있음을 보여줍니다.
1.3 ChatGPT를 활용한 데이터 증강 (ChatAug)
- ChatAug: Leveraging ChatGPT for Text Data Augmentation (Dai et al., 2023): ChatGPT를 이용해 대화 기반 텍스트 데이터를 증강하는 방법을 제안합니다. 이 방법은 ChatGPT를 사용하여 새로운 문장을 생성하거나 기존 문장을 변형함으로써 데이터셋의 다양성을 높이고, 모델 학습을 위한 질 높은 데이터를 확보할 수 있습니다.
2. 데이터 필터링 (Data Filtering)
데이터 필터링은 노이즈가 있는 데이터를 제거하여 데이터 품질을 개선하는 방법입니다.
2.1 병렬 말뭉치 필터링 (Parallel Corpus Filtering)
- Parallel Corpus Filtering (PCF): 병렬 말뭉치 필터링은 번역 작업에서 데이터 품질을 높이기 위해 사용됩니다. WAT 2022에서는 PCF를 주요 주제로 선정하여, 병렬 말뭉치에서 노이즈가 포함된 데이터를 필터링하는 다양한 접근법을 논의했습니다. 이를 통해 번역 모델의 성능을 크게 개선할 수 있었습니다.
- Rule Based Approaches: 너무 짧거나 긴 문장(문자 또는 토큰 수준), 특수 토큰만 포함된 단어, 길이가 일치하지 않는 쌍, 특수 엔티티(이름, 숫자, 날짜, 이메일, URL 등)의 불일치, 복사된 문장 쌍, 요구된 언어를 감지하지 못하는 경우 등의 규칙에 따라 필터링합니다.
- Statistic Based Approaches: 기계 번역 필터링(Machine Translation Filtering)에서는 특정 단어 선택에 기반한 규칙 기반 방법과 재정렬 부족을 기반으로 하는 통계적 방법을 사용합니다. 또한, 이상치(outlier) 탐지, 단어 정렬(word alignment), N-그램 기반 언어 모델, 언어 모델 확률, NMT 모델 확률을 이용한 모델 확률 계산 방법을 포함합니다.
- NMT Based Approaches: 문장 임베딩(sentence embedding)을 사용하며, LM 기반, NMT 기반, LASER 등의 임베딩 방식을 포함합니다. 또한, LM/NMT 모델을 기반으로 한 크로스 엔트로피(model cross entropy)와 가짜 부정 샘플(pseudo-negative sample)을 이용해 문장 쌍의 품질을 판단하는 문장 분류기(sentence classifier)를 사용합니다.
3. 합성 데이터 (Synthetic Data)
합성 데이터는 모델 학습을 위해 인공적으로 생성된 데이터로, 기존 데이터의 부족함을 보완하고 학습 성능을 개선하는 데 사용됩니다.
3.1 프롬프트를 활용한 합성 데이터 생성
- PromptBase: PromptBase는 효과적인 Generative AI 사용을 위해 프롬프트를 사고파는 웹 사이트로, 사용자들이 다양한 프롬프트를 쉽게 공유하고 거래할 수 있는 플랫폼입니다.
- Pre-train, Prompt, and Predict: A Systematic Survey of Prompting Methods in NLP (Liu et al., 2023): 이 연구는 자연어 처리에서 프롬프트(prompt)를 활용하여 합성 데이터를 생성하는 다양한 방법을 조사합니다. 프롬프트는 언어 모델에게 입력으로 주어지는 텍스트 템플릿으로, 이를 사용해 모델의 출력을 유도하여 다양한 태스크에 맞는 데이터를 생성할 수 있습니다.
- Prompt Programming for Large Language Models (Reynolds and McDonell, 2021): 메타 프롬프트(Meta Prompt)라는 개념을 도입하여, 프롬프트를 생성하기 위한 프롬프트를 제안합니다. 이는 프롬프트 기반 모델의 유연성을 높이고, 보다 복잡한 응답을 생성하도록 돕습니다.
3.2 음성 인식 후처리를 위한 합성 데이터
- BTS: Back TranScription for Speech-to-Text Post-Processor using Text-to-Speech-to-Text (Park et al., 2021): 음성 인식 후처리기 연구를 위해 텍스트-음성-텍스트 변환을 사용하여 합성 데이터를 생성하는 방법을 제안합니다. 이를 통해 음성 인식 후처리 과정에서의 성능을 향상시킬 수 있습니다.
4. 데이터 측정 (Data Measurement)
데이터 품질 측정은 데이터셋의 품질을 평가하고, 모델 학습에 적합한 데이터를 선택하는 데 중요한 역할을 합니다.
4.1 어노테이터 일치도 측정 (Annotator Agreement)
- Measuring Annotator Agreement Generally across Complex Annotation Tasks (Braylan et al., 2022): 이 연구는 복잡하고 다양한 구조의 주석 작업에 대해 어노테이터 간의 일치도를 측정하는 새로운 방법을 제안합니다. 기존의 주요 지표인 Cohen’s Kappa, Fleiss’ Kappa, Krippendorff’s Alpha 외에도, 이 연구는 복잡한 태스크에 적합한 개선된 지표를 개발하여 어노테이션 품질을 평가합니다. 이러한 지표는 어노테이터 간의 일관성을 더 정교하게 측정하고, 주석 작업의 복잡성과 다면성을 반영할 수 있습니다.
- Kolmogorov-Smirnov (KS) Statistic: KS 통계는 두 확률 분포 간의 최대 차이를 측정하는 지표로, 누적 분포 함수(CDF)를 사용하여 계산됩니다. 이 연구에서는 실제 어노테이션 분포와 기대되는 어노테이션 분포 간의 최대 차이를 계산하여 어노테이터 간의 불일치 정도를 평가합니다.
4.2 어노테이션 불일치 분석 (Annotation Disagreement)
- Everyone’s Voice Matters: Quantifying Annotation Disagreement Using Demographic Information (Wan et al., 2023): 이 연구는 주석 작업자 간의 불일치 정도를 예측하기 위해 인구통계학적 정보를 사용합니다. RoBERTa-base 모델을 사용해 데이터를 학습하며, 주석 작업자의 다양성을 고려하여 불일치 패턴을 분석합니다.
5. 그 외
이 문서에서 다루지 않은 추가적인 Data-Centric AI 주제는 다음과 같습니다:
- 레이블 오류 (Label Errors): 데이터셋에서 잘못된 레이블을 찾아내고 수정하는 방법.
- 기계 학습 모델의 데이터 중심 평가 (Data-centric Evaluation of ML Models): 모델의 성능을 데이터 품질과 연결 지어 평가하는 방법.
- 클래스 불균형, 이상치, 분포 변화 (Class Imbalance, Outliers, and Distribution Shift): 데이터셋의 클래스 불균형, 이상치 문제, 그리고 데이터 분포 변화에 대응하는 전략.
- 데이터 프라이버시와 보안 (Data Privacy and Security): 데이터 사용에 있어 프라이버시와 보안을 보장하는 방법.
- 훈련 전략 (Training Strategies): 데이터의 효율적인 활용을 위한 다양한 훈련 전략.
- Cross-Lingual Transfer Learning: 사전 학습된 언어 모델에서 다국어 전이 학습을 탐구하는 방법.