원래 데이터 세트로 학습 한 머신 러닝 모델을 사용하여 합성 데이터 세트를 생성하는 방법은 무엇입니까?


19

일반적으로 기계 학습 모델은 데이터 세트를 기반으로합니다. 원래의 데이터 셋 특성을 유지하는 훈련 된 머신 러닝 모델을 사용하여 합성 데이터 셋을 생성 할 수있는 방법이 있는지 알고 싶습니다.

[원본 데이터-> 기계 학습 모델 구축-> ml 모델을 사용하여 합성 데이터를 생성합니다 .... !!!]

가능합니까? 가능하면 관련 자료를 알려주십시오.

답변:


27

일반적인 접근 방식은 동일한 통계적 특성을 가진 데이터를 생성하는 다차원 랜덤 프로세스를 정의하기 위해 데이터 세트에 대한 전통적인 통계 분석을 수행하는 것입니다. 이 방법의 장점은 합성 데이터가 ML 모델과 독립적이지만 통계적으로 데이터와 "가까운"것입니다. (대안에 대한 논의는 아래 참조)

본질적으로, 당신은 프로세스와 관련된 다변량 확률 분포를 추정하고 있습니다. 분포를 추정 한 후에는 Monte Carlo 방법 또는 유사한 반복 샘플링 방법을 통해 합성 데이터를 생성 할 수 있습니다. 데이터가 일부 모수 분포 (예 : 로그 정규)와 유사하면이 방법은 간단하고 신뢰할 수 있습니다. 까다로운 부분은 변수 간의 의존성을 추정하는 것입니다. https://www.encyclopediaofmath.org/index.php/Multi-dimensional_statistical_analysis를 참조 하십시오 .

데이터가 불규칙한 경우 비모수 적 방법이 더 쉽고 강력 할 수 있습니다. 다변량 커널 밀도 추정 은 ML 배경을 가진 사람들에게 접근 가능하고 매력적인 방법입니다. 일반적인 방법과 특정 방법에 대한 링크는 https://en.wikipedia.org/wiki/Nonparametric_statistics를 참조 하십시오 .

이 프로세스가 자신에게 적합한 지 확인하려면 합성 된 데이터를 사용하여 기계 학습 프로세스를 다시 수행해야하며 원래 모델과 상당히 유사한 모델을 사용해야합니다. 마찬가지로, 합성 된 데이터를 ML 모델에 넣으면 원래 출력과 유사한 분포를 갖는 출력을 가져와야합니다.

대조적으로, 당신은 이것을 제안하고 있습니다 :

[원본 데이터-> 기계 학습 모델 구축-> ml 모델을 사용하여 합성 데이터를 생성합니다 .... !!!]

이것은 방금 설명한 방법과 다른 것을 달성합니다. 이것은 "어떤 입력이 주어진 모델 출력 세트를 생성 할 수 있는지"와 같은 역 문제를 해결합니다 . ML 모델이 원본 데이터에 과적 합되지 않는 한이 합성 된 데이터 모든 측면에서 또는 대부분의 경우 원본 데이터처럼 보이지 않을 것입니다.

선형 회귀 모형을 고려하십시오. 동일한 선형 회귀 모델은 특성이 매우 다른 데이터에 대해 동일한 적합치를 가질 수 있습니다. 이것의 유명한 데모는 Anscombe의 사중주를 통해 입니다.

간단한 요약 통계를 사용하여 검사 할 때 네 세트 모두 동일하지만 그래프로 표시 할 때 상당히 다양합니다.

참고 자료가 없다고 생각했지만이 문제는 로지스틱 회귀, 일반 선형 모델, SVM 및 K- 평균 군집화에서도 발생할 수 있다고 생각합니다.

일부 ML 모델 유형 (예 : 의사 결정 트리)이있어 합성 데이터를 생성하기 위해 역산 할 수 있지만 약간의 작업이 필요합니다. 데이터 마이닝 패턴과 일치하도록 합성 데이터 생성을 참조하십시오 .


Monte-Carlo와 다차원 통계 분석에 대해 더 많이 읽을 시간입니다.
hadooper

2

SMOTE라는 불균형 데이터 세트를 처리하는 매우 일반적인 접근 방식이 있는데,이 클래스는 소수 클래스에서 합성 샘플을 생성합니다. 이웃과의 차이를 사용하여 소수 샘플을 교란시켜 작동합니다 (0과 1 사이의 임의의 숫자를 곱한 값)

다음은 원래 논문의 인용문입니다.

합성 샘플은 다음과 같은 방식으로 생성됩니다. 고려중인 형상 벡터 (샘플)와 가장 가까운 이웃 간의 차이를 가져옵니다. 이 차이에 0과 1 사이의 난수를 곱하고 고려중인 특징 벡터에 추가하십시오.

자세한 내용은 여기를 참조 하십시오 .


1

데이터 확대는 기존 데이터를 기반으로 샘플을 종합적으로 생성하는 프로세스입니다. 기존 데이터는 많은 원본 데이터 속성을 유지하는 새로운 데이터를 생성하기 위해 약간 교란됩니다. 예를 들어, 데이터가 이미지 인 경우. 이미지 픽셀을 교체 할 수 있습니다. 여기 에서 데이터 확대 기술의 많은 예를 찾을 수 있습니다 .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.