Synthetic data generation — 합성 데이터 생성

From Systems analysis Wiki
Jump to navigation Jump to search

LLM을 활용한 합성 데이터 생성은 통계적·구조적 특성 면에서 실제 데이터를 모방하지만 실제 개인정보를 포함하지 않는 데이터를 인위적으로 생성하는 기술이다. 대형 언어 모델(LLM)의 능력을 활용하는 이 접근법은 데이터 부족, 개인정보 보호, 수작업 레이블링의 높은 비용 문제를 해결하기 위한 현대 Machine Learning의 핵심 도구로 자리잡았다[1].

정의 및 배경

합성 데이터란 무엇인가?

합성 데이터는 원본 실제 데이터셋의 통계적 속성과 패턴을 재현하도록 인위적으로 생성된 정보이다. 미국 국립표준기술연구소(NIST)는 이를 원본의 통계적 속성은 유지하되 개인 세부정보는 노출하지 않는 데이터로 정의한다[2]. 단순한 비식별화(익명화)와 달리, 데이터 합성은 완전히 새로운 레코드를 생성함으로써 더 높은 수준의 프라이버시 보호를 제공한다.

왜 필요성이 생겼는가?

합성 데이터 생성에 대한 관심 증가는 여러 요인에 의해 촉진되었다:

  • 데이터 부족: 많은 분야, 특히 고도로 전문화된 분야에서는 robust한 모델 학습에 충분한 양질의 레이블 데이터가 부족하다.
  • 높은 레이블링 비용: 수작업 데이터 레이블링은 노동 집약적이고 비용이 많이 드는 과정이다.
  • 개인정보 보호 요건: 법적·윤리적 규범(예: GDPR)은 개인정보, 의료정보 또는 금융정보를 포함하는 실제 데이터의 사용을 제한한다.
  • 클래스 불균형: 실제 데이터에서 중요하지만 희귀한 사건(edge case)은 충분히 표현되지 않아 모델이 이를 학습하는 데 어려움을 겪을 수 있다.

방대한 텍스트 및 코드 코퍼스로 학습된 LLM은 실제 데이터의 스타일과 분포를 모방하는 일관되고 다양한 콘텐츠를 생성할 수 있어 이러한 문제들을 해결하는 강력한 도구가 되었다.

LLM을 활용한 주요 생성 방법

LLM을 사용한 합성 데이터 생성에는 몇 가지 핵심 접근법이 있다.

1. 프롬프트 기반 생성 (Prompt-based)

이는 LLM이 텍스트 요청(프롬프트)을 기반으로 데이터를 생성하는 직접적인 방법이다.

  • Zero-shot (제로샷): 모델이 예시 없이 오직 작업 설명만을 바탕으로 예시를 생성한다. 이 접근법은 다양성을 높이지만 관련성이 낮은 결과를 낳을 수 있다.
  • Few-shot (퓨샷): 프롬프트에 원하는 출력의 몇 가지 예시(샘플)가 포함된다. 이는 모델을 안내하고 생성 데이터의 관련성을 높이지만, 모델이 패턴을 그대로 복사하려는 경향이 있어 중복 및 다양성 손실의 위험이 있다[1].

2. 외부 정보 보강 생성 (Retrieval-Augmented)

이 방법은 합성 데이터의 사실적 정확성을 높이고 환각(hallucination) 위험을 줄이기 위한 것이다. 모델은 자체 내부 지식에만 의존하지 않고 신뢰할 수 있는 외부 소스에서 제공된 컨텍스트를 활용한다. 예를 들어, '질문-답변' 쌍을 생성하기 위해 먼저 위키피디아에서 관련 단락을 추출한 후, LLM에게 해당 텍스트만을 엄격히 기반으로 질문과 답변을 작성하도록 요청한다.

3. 반복적 정제 및 자가 학습 (Self-Refinement)

이 계열의 방법은 데이터 품질 향상을 위한 피드백 루프를 활용한다. 가장 잘 알려진 예시는 Self-Instruct 방법이다[1].

  1. 모델이 초기 데이터셋을 생성한다.
  2. 이 데이터를 사용하여 모델 자체(또는 그 복사본)를 fine-tuning한다.
  3. 생성된 데이터에서 모델의 오류와 취약점을 분석한다.
  4. 모델이 오류를 범한 것과 유사한, 더 복잡한 새로운 예시를 생성하도록 요청한다.

바로 이 방식으로 유명한 데이터셋인 Stanford Alpaca가 만들어졌다. 이는 GPT-3 모델이 생성한 52,000개의 '지시-응답' 쌍으로 구성되어 있으며, 오픈 모델인 LLaMA를 지시를 따르는 어시스턴트 수준으로 fine-tuning하는 데 사용되었다.

4. 후처리 및 필터링

데이터 생성 후에는 항상 저품질 예시를 제거하기 위한 필터링이 적용된다. 방법은 단순한 것(중복 제거, 형식 검사)부터 복잡한 것까지 다양하다:

  • 판별 모델 활용: 실제 데이터와 합성 데이터를 구분하고 가장 비현실적인 샘플을 걸러내는 별도의 분류기를 학습한다.
  • 신뢰도 기반 필터링: LLM이 높은 신뢰도로 올바른 답변/레이블을 예측하는 예시만 남긴다.
  • 데이터 가중치 부여: 오류나 환각이 의심되는 예시에 학습 손실 함수에서 더 낮은 가중치를 부여하여 부정적 영향을 줄인다(SunGen 방법).

5. 실행 피드백 학습 (Execution Feedback)

이 방법은 특히 프로그램 코드 생성에 효과적이다. 자연어 텍스트와 달리 코드에는 공식적인 정확성 기준이 있어 실행이 가능하다. 사이클은 다음과 같다:

  1. LLM이 문제를 해결하는 코드를 생성한다.
  2. 코드가 자동으로 실행되어 테스트 통과 여부가 확인된다.
  3. 올바른 해결책은 학습 데이터셋에 포함된다. 잘못된 해결책은 버리거나, 모델이 오류를 수정하도록 신호(reward)를 받는다.

합성 데이터의 활용

  • 데이터 부족 상황에서의 작업 개선: 합성 데이터는 실제 레이블 데이터가 적을 때 가장 효과적이다. 연구에 따르면 100개의 실제 예시에 100개의 합성 예시를 추가하면 분류기의 정확도가 3~26% 향상될 수 있다[3].
  • 지시 데이터셋 구축 (Instruction Tuning): AlpacaCode Alpaca와 같은 프로젝트는 LLM을 사용하여 사실상 처음부터 어시스턴트 모델 학습을 위한 대규모의 고품질 데이터셋을 만들 수 있음을 보여주었다.
  • 정보 검색 및 질의응답 (QA): InPars 방법은 LLM을 사용하여 기존 문서에 대한 검색 쿼리를 생성한다. 이를 통해 검색 시스템 학습을 위한 '질문-관련 문서' 쌍을 자동으로 생성할 수 있다.
  • 개인정보 보호: 의료 및 금융 분야에서 합성 데이터는 실제 개인 데이터에 접근하지 않고도 모델을 학습하는 데 사용된다. 예를 들어, 미국 재향군인부는 COVID-19 팬데믹 기간에 정보 공유를 위해 합성 의료 데이터를 생성했다[2].

장점과 위험

장점

  • 비용 절감 및 개발 가속화: 모델을 통한 데이터 생성은 수작업 레이블링보다 훨씬 저렴하고 빠르다.
  • 확장성: 합성 데이터는 사실상 무제한으로 생성할 수 있다.
  • 제어 가능성: 개발자가 생성 데이터의 구성, 스타일, 복잡도를 유연하게 조정할 수 있다.
  • 개인정보 보호 준수: 민감한 데이터를 다루기 위한 비식별화 대안을 제공한다.
  • 모델 견고성 (Robustness): 다양하고 심지어 까다로운 합성 예시로 학습하면 모델이 과적합에 덜 취약해지고 비정상적인 입력 데이터에 더 강건해진다.

한계와 위험

  • 사실적 부정확성 (환각): LLM은 잘못된 사실을 생성할 수 있으며, 이것이 학습 데이터셋에 포함되면 새로운 모델에 고착될 수 있다.
  • 불충분한 현실성: 합성 텍스트는 지나치게 틀에 박히거나 형식적이어서 살아있는 언어의 다양성을 반영하지 못할 수 있으며, 이는 모델의 일반화 능력을 저하시킨다.
  • 체계적 편향(Bias) 강화: LLM은 학습 데이터에 존재하는 사회적 고정관념과 편견을 계승하고 증폭시킬 수 있다.
  • '모델 붕괴' 위험: 이전 버전 모델이 생성한 데이터로 모델을 반복 학습할 경우 품질이 점진적으로 저하되고 희귀한 현상을 '망각'하는 현상이다.
  • 개인정보 유출 가능성: 특별한 조치(예: 차등 프라이버시) 없이는 LLM이 학습 데이터셋의 실제 데이터 조각을 우발적으로 재현할 수 있어 재식별화 위험이 있다[4].

전망 및 연구 방향

  • 프롬프트 선택 자동화: 고품질 데이터 생성을 위한 최적의 프롬프트를 자동으로 찾는 방법론 개발.
  • 멀티모달 합성 생성: 복합 데이터(텍스트+이미지, 오디오, 비디오) 생성으로의 방법론 확장.
  • 품질 지표 발전: 합성 데이터의 유용성, 다양성, 사실성을 평가하기 위한 표준화된 benchmark 개발.
  • 편향 관리: 반사실적 예시 생성 등을 통해 생성 데이터의 편향을 통제하고 줄이는 방법론 개발.
  • 산업 분야에서의 안전한 도입: 중요 분야에서의 합성 데이터 사용을 위한 법적·윤리적 기준 수립.

참고 링크

  • 개요 논문: Synthetic Data Generation Using Large Language Models (2025)
  • 차등 프라이버시를 적용한 데이터 생성에 관한 Google Research 블로그

참고 문헌

  • Ye, J. et al. (2025). Synthetic Data Generation Using Large Language Models: Advances in Text and Code. arXiv:2503.14023.
  • Wang, Y. et al. (2022). Self-Instruct: Aligning Language Models with Self-Generated Instructions. arXiv:2212.10560.
  • Gao, J. et al. (2022). Self-Guided Noise-Free Data Generation for Efficient Zero-Shot Learning. arXiv:2205.12679.
  • Jeronymo, V. et al. (2023). InPars-v2: Large Language Models as Efficient Dataset Generators for Information Retrieval. arXiv:2301.01820.
  • Li, Z. et al. (2023). Synthetic Data Generation with Large Language Models for Text Classification: Potential and Limitations. ACL 2023.
  • Shumailov, I. et al. (2023). Nepotistically Trained Generative-AI Models Collapse. arXiv:2311.12202.
  • Long, L. et al. (2024). On LLMs-Driven Synthetic Data Generation, Curation, and Evaluation: A Survey. ACL Findings 2024.
  • Gao, J. C. et al. (2024). Not All LLM-Generated Data Are Equal: Rethinking Data Weighting in Synthetic Datasets. OpenReview.
  • Gehring, J. et al. (2025). RLEF: Grounding Code LLMs in Execution Feedback with Reinforcement Learning. arXiv:2410.02089.
  • Barr, A. A. et al. (2025). Large Language Models Generating Synthetic Clinical Datasets: A Feasibility and Comparative Analysis with Real-World Perioperative Data. Frontiers in AI.
  • Rao, H. et al. (2025). A Scoping Review of Synthetic Data Generation for Biomedical Research and Applications. arXiv:2506.16594.

주석

  1. 1.0 1.1 1.2 Ye, J., et al. «Synthetic Data Generation Using Large Language Models: Advances in Text and Code». arXiv:2503.14023 [cs.CL], 20 марта 2025 г. [1]
  2. 2.0 2.1 «Federal chief data officers seek information on synthetic data generation». FedScoop. [2]
  3. Li, Zhuoyan, et al. «Synthetic Data Generation with Large Language Models for Text Classification: Potential and Limitations». ACL Anthology, 2023. [3]
  4. Schoen, F. P., et al. «Large language models generating synthetic clinical datasets: a feasibility and comparative analysis with real-world perioperative data». Frontiers in Artificial Intelligence, 2025. [4]