언어 전환: 简体中文 | 최신 API 문서 | 로드맵 | 위챗 그룹에 가입하세요
Colab 예: LLM: 데이터 합성 | LLM: 오프 테이블 추론 | 수십억 수준의 데이터 지원 CTGAN
SDG(Synthetic Data Generator)는 고품질의 구조화된 표 형식 데이터를 생성하도록 설계된 특수 프레임워크입니다.
합성 데이터에는 민감한 정보가 포함되어 있지 않지만 원본 데이터의 필수 특성을 유지하므로 GDPR 및 ADPPA와 같은 개인 정보 보호 규정에서 면제됩니다.
고품질의 합성 데이터는 데이터 공유, 모델 훈련 및 디버깅, 시스템 개발 및 테스트 등 다양한 영역에서 안전하게 활용될 수 있습니다.
여러분을 이곳에 모시게 되어 기쁘게 생각하며 여러분의 기여를 기대합니다. 이 기여 개요 가이드를 통해 프로젝트를 시작하세요!
현재 주요 성과와 일정은 다음과 같습니다.
2024년 11월 21일: 1) 모델 통합 - GaussianCopula
모델을 데이터 프로세서 시스템에 통합했습니다. 이 PR의 코드 예제를 확인하세요. 2) 합성 품질 - 데이터 열 관계 자동 감지를 구현하고 관계 지정을 허용하고 합성 데이터의 품질을 향상했습니다(코드 예). 3) 성능 향상 - 이산 데이터를 처리할 때 GaussianCopula의 메모리 사용량을 크게 줄여 2C4G
설정으로 수천 개의 범주형 데이터 항목에 대한 교육을 가능하게 했습니다!
2024년 5월 30일: 데이터 프로세서 모듈이 공식적으로 병합되었습니다. 이 모듈은 다음을 수행합니다. 1) SDG가 모델에 공급되기 전에 일부 데이터 열(예: 날짜/시간 열)의 형식을 변환하고(이산 유형으로 처리되지 않도록) 모델 생성 데이터를 원래 형식으로 역으로 변환하는 데 도움이 됩니다. ; 2) 다양한 데이터 유형에 대해 보다 맞춤화된 전처리 및 후처리를 수행합니다. 3) 원본 데이터의 null 값과 같은 문제를 쉽게 처리합니다. 4) 플러그인 시스템을 지원합니다.
2024년 2월 20일: LLM을 기반으로 한 단일 테이블 데이터 합성 모델이 포함되어 있습니다. Colab 예시: LLM: 데이터 합성 및 LLM: 오프 테이블 기능 추론을 확인하세요.
2024년 2월 7일: 단일 테이블 및 다중 테이블에 대해 설명하는 메타데이터 정보를 지원하고, 다중 데이터 유형을 지원하고, 자동 데이터 유형 추론을 지원하도록 sdgx.data_models.metadata
개선했습니다. Colab 예시 보기: SDG 단일 테이블 메타데이터。
2023년 12월 20일: 수십억 개의 데이터 처리 기능을 지원하는 CTGAN 모델이 포함된 v0.1.0 출시. SDG가 훈련 중 메모리 소비를 줄이고 충돌을 방지한 SDV에 대한 벤치마크를 확인하세요. 구체적인 용도에 대해서는 Colab 예인 Billion-level-Data Supported CTGAN을 참조하세요.
2023년 8월 10일: SDG 코드의 첫 번째 줄이 커밋되었습니다.
오랫동안 LLM은 다양한 유형의 데이터를 이해하고 생성하는 데 사용되었습니다. 실제로 LLM에는 표 형식 데이터 생성에 대한 특정 기능도 있습니다. 또한 기존의 방법(GAN 방법 또는 통계 방법 기반)으로는 달성할 수 없는 일부 기능을 가지고 있습니다.
sdgx.models.LLM.single_table.gpt.SingleTableGPTModel
은 두 가지 새로운 기능을 구현합니다.
학습 데이터가 필요하지 않습니다. 메타데이터 데이터를 기반으로 합성 데이터를 생성할 수 있습니다. Colab 예시에서 확인하세요.
테이블의 기존 데이터와 LLM이 습득한 지식을 기반으로 새로운 열 데이터를 추론하고 Colab 예시에서 확인하세요.
기술 발전:
광범위한 통계 데이터 합성 알고리즘을 지원하며 LLM 기반 합성 데이터 생성 모델도 통합되어 있습니다.
빅 데이터에 최적화되어 메모리 소비를 효과적으로 줄입니다.
학계와 산업계의 최신 발전을 지속적으로 추적하고 적시에 우수한 알고리즘과 모델에 대한 지원을 도입합니다.
개인정보 보호 강화:
SDG는 차등 개인 정보 보호, 익명화 및 기타 방법을 지원하여 합성 데이터의 보안을 강화합니다.
확장이 용이함:
플러그인 패키지 형태로 모델 확장, 데이터 처리, 데이터 커넥터 등을 지원합니다.
사전 구축된 이미지를 사용하여 최신 기능을 빠르게 경험할 수 있습니다.
docker pull idsteam/sdgx:최신
핍 설치 sdgx
소스코드를 통해 SDG를 설치하여 사용해보세요.
자식 클론 [email protected]:hitsz-ids/synthetic-data-generator.git pip install .# 또는 gitpip install git+https://github.com/hitsz-ids/synthetic-data-generator.git에서 설치하세요.
from sdgx.data_connectors.csv_connector import CsvConnectorfrom sdgx.models.ml.single_table.ctgan import CTGANSynthesizerModelfrom sdgx.synthesizer import Synthesizerfrom sdgx.utils import download_demo_data# 그러면 데모 데이터가 ./datasetdataset_csv = download_demo_data()#에 다운로드됩니다. csv filedata_connector = CsvConnector(path=dataset_csv)# 합성기 초기화, CTGAN 사용 modelsynthesizer = Synthesizer(model=CTGANSynthesizerModel(epochs=1), # 빠른 데모data_connector=data_connector의 경우, )# 모델 맞추기ynthesizer.fit()# Samplesampled_data = Synthesizer.sample(1000)print(sampled_data)
실제 데이터는 다음과 같습니다:
>>> data_connector.read() 연령 작업 클래스 fnlwgt 교육 ... 주당 자본 손실 시간 모국어 클래스0 2 State-gov 77516 학사 ... 0 2 미국 <=50K1 3 Self-emp-not-inc 83311 학사 .. . 0 0 미국 <=50K2 2 사립 215646 고등학교 졸업 ... 0 2 미국 <=50K3 3 사립 234721 11차 ... 0 2 미국 <=50K4 1 사립 338409 학사 ... 0 2 쿠바 <=50K... ... ... ... ... ... . .. ... ... ...48837 2 사립 215419 학사 ... 0 2 미국 <=50K48838 4 NaN 321403 HS-grad ... 0 2 미국 <=50K48839 2 사립 374983 학사 ... 0 3 미국 <=50K48840 2 사립 83891 학사 ... 0 2 미국 <=50K48841 1 Self-emp-inc 182148 학사 ... 0 3 미국 >50K[48842행 x 15열]
합성 데이터는 다음과 같습니다:
>>> samplingd_data 연령 직장 fnlwgt 교육 ... 주당 자본 손실 시간 모국어 수업0 1 NaN 28219 일부 대학 ... 0 2 푸에르토리코 <=50K1 2 사립 250166 HS-grad ... 0 2 미국 >50K2 2 사립 50304 HS-grad ... 0 2 미국 <=50K3 4 사립 89318 학사 ... 0 2 푸에르토리코 >50K4 1 개인 172149 학사 ... 0 3 미국 <=50K.. ... ... ... ... ... ... ... ... ...995 2 NaN 208938 학사 ... 0 1 미국 <=50K996 2 사립 166416 학사 ... 2 2 미국 <=50K997 2 NaN 336022 HS-grad ... 0 1 미국 <=50K998 3 사립 198051 석사 ... 0 2 미국 >50K999 1 NaN 41973 HS-grad ... 0 2 미국 <= 50K[1000행 x 15열]
CTGAN: 조건부 GAN을 사용하여 표 형식 데이터 모델링
C3-TGAN: C3-TGAN - 명시적 상관 관계 및 속성 제약 조건을 갖춘 제어 가능한 표 형식 데이터 합성
TVAE: 조건부 GAN을 사용하여 표 형식 데이터 모델링
table-GAN: 생성적 적대 신경망(Generative Adversarial Network) 기반 데이터 합성
CTAB-GAN:CTAB-GAN: 효과적인 테이블 데이터 합성
OCT-GAN: OCT-GAN: 신경 ODE 기반 조건부 테이블 형식 GAN
SDG 프로젝트는 하얼빈 공과대학 데이터 보안 연구소 에서 시작되었습니다. 프로젝트에 관심이 있으시면 커뮤니티에 가입하신 것을 환영합니다. 우리는 오픈 소스를 통해 데이터 보호 및 보안에 대한 약속을 공유하는 조직, 팀 및 개인을 환영합니다.
끌어오기 요청 초안을 작성하기 전에 CONTRIBUTING을 읽어보세요.
View Good First Issue를 보고 이슈를 제출하거나 Pull Request를 제출하세요.
QR 코드를 통해 Wechat 그룹에 가입하세요.