sdv-dev/SDV

Synthetic data generation for tabular data

SDV – Synthetic Data Vault

무엇인가요 – 실제 테이블 데이터를 기반으로 기계학습 모델을 훈련시키고, 그 데이터의 합성 버전을 생성할 수 있는 Python 라이브러리입니다. 단일 테이블, 관련된 다중 테이블 스키마, 시계열 데이터를 모두 지원합니다.

주요 기능

  • 모델 도서관 – 전통적인 통계적 코퓰라(GaussianCopulaSynthesizer 등)부터 CTGAN과 같은 딥러닝 기반 생성기까지 다양한 모델을 제공합니다.
  • 완전한 워크플로우 – 내장된 전처리, 익명화, 제약 조건 처리 기능을 통해 생성된 행이 기본키/외래키 및 사용자 정의 비즈니스 규칙을 준수합니다.
  • 평가 도구 – 실제 데이터와 합성 데이터 간의 열 단위 비교를 계산하고 시각화하는 함수를 제공합니다.
  • 모듈형 생태계 – 데이터 탐색, 변환, 프라이버시 측정 유틸리티도 제공하는 더 큰 SDV 스위트의 일부입니다.

일반적인 워크플로우

  1. 데이터 로드 (패키지에 데모 데이터셋이 포함되어 있습니다).
    from sdv.datasets.demo import download_demo
    real, meta = download_demo(modality='single_table', dataset_name='fake_hotel_guests')
    
  2. 합성기 생성 및 훈련.
    from sdv.single_table import GaussianCopulaSynthesizer
    synth = GaussianCopulaSynthesizer(meta)
    synth.fit(real)
    
  3. 합성 행 생성.
    synthetic = synth.sample(500)
    
  4. 품질 평가.
    from sdv.evaluation import evaluate_quality, get_column_plot
    report = evaluate_quality(real, synthetic, meta)
    fig = get_column_plot(real, synthetic, column_name='amenities_fee', metadata=meta)
    fig.show()
    

설치 – PyPI에서 사용 가능하며 비즈니스 소스 라이선스(Business Source License) 하에 제공됩니다.

pip install sdv          # 또는
conda install -c pytorch -c conda-forge sdv

누가 사용할까 – 민감 정보를 노출하지 않고 현실적인 테스트 데이터가 필요한 데이터 과학자, 프라이버시 엔지니어, 제품 팀. 또는 모델 훈련을 위해 데이터가 부족한 경우 데이터 증강에도 적합합니다.

링크 – 문서 및 튜토리얼(콜랩 노트북)은 README에서 링크되어 있으며, 커뮤니티 포럼은 forum.datacebo.com에서 호스팅됩니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트