본문 바로가기
Microsoft/Azure ML

Azure ML 누락된 데이터 정리 Clean Missing Data 사용법

by AttractiveS 2020. 1. 28.

데이터가 다 꽉차있을 수도 있지만 종종 비어 있는 데이터가 있습니다. 물론 비어 있는 것이 정상일 수도 있지만

 

때로는 얻지 못해버린 정보일 수 있는데요~!!! 

 

Azure ML에서는 누락된 데이터를 어떻게 처리 할수 있는지 알아 봅시다!!!

 

AzureMachineLearningStudio의  Clean Missing Data모듈을 사용하여

 

누락된 값을 제거, 교체 또는 추론을 할수 있습니다.

 

  • 결측값을 자리 표시자, 평균 또는 기타 값으로 대체
  • 결측값이 있는 행 및 열을 완전히 제거
  • 통계적 방법에 근거한 값 추론

Blood donation data.csv
0.00MB

 

이것은 기존에 AzureMachineLearningStudio에 있는 헌혈 데이터인데요 아래 처럼 일부러 데이터를 지워 보았습니다.

 

 

 

AzureMachineLearningStudio에서 가져오면 이렇게 사라져 있는데요!!!

 

 

 

 

Clean Missing Data 모듈을 연결하여 어떤식으로 변화가 있는지 알아 보겠습니다!!!

 

 

 

먼저 Clean Missing Data는 Data Transformaiton에 있는데요~ 

 

 

 

 


자동으로 설정되는 옵셥을 살펴 보면 다음과 같습니다.

 

먼저 아무 것도 설정 하지 않으면 자동으로 Custom substitution value가 설정됩니다. 

Replacement value값을 보면 0으로 설정되어 있어서 바로 적용시 아래처럼 데이터가 없으면 0으로 채워지게 됩니다.

 

 

 



중간에 보면 임계값 설정 Minimum missing value ratio , Maximum missing value ratio 라는 것도 있습니다.

전체 데이터에서 데이터가 없는 비율이 이 범위 안에 속할때만 적용할 수 있게하는 장치 입니다.

 

 

 

최소 결측값 비율을 0로 설정하고 최대 결측값 비율을 0.019으로 설정한 경우를 가정합니다.

그러나...Frequency, Time은 99개중 두개만 데이터가 없기 때문에 비율이 0.0202.... 

즉 포함이 되지 않기 때문에 적용되지 않게 되었습니다.!!

 

Frequency 그리고 Time이 임계값을 충족하지 않아 적용되지 않게 되었다!!

 

그리고 이번에는 각각 모드에 대해서 살펴 볼껀데요.!!!!

 

 

 

Custom substitution value (사용자 지정 대체 값) : 이 옵션을 사용하여 누락된 모든 값에 적용되는 자리 표시자 값(예:0또는 NA)을 지정합니다. 대체로 지정한 값은 열의 데이터 유형과 호환되어야 합니다.

 

 

 

Replace with mean (평균으로 대체) : 열 평균을 계산하고 열의 각 결측값에 대한 대체 값으로 평균을 사용합니다.

정수, 이중 또는 부울 데이터 유형이 있는 열에만 적용됩니다.

 

Replace with median (중위 수로 대체) : 열 중위 수 값을 계산하고 중위 수 값을 열의 결측값에 대한 대체 값으로 사용합니다.

정수 또는 이중 데이터 유형이 있는 열에만 적용됩니다.

 

Replace with mode (모드로 대체) : 열에 대한 모드를 계산하고 열에 누락된 모든 값에 대한 대체 값으로 모드를 사용합니다.

정수, 이중, 부울 또는 범주형 데이터 유형이 있는 열에 적용됩니다. 가장 많이 있는 수를  빈칸에 넣어 버린다고 생각하시면 편합니다.

 

 

 

Remove entire row (전체 행 제거) : 하나 이상의 값이 누락된 데이터 세트의 행을 완전히 제거합니다. 이 기능은 누락된 값을 임의로 누락된 것으로 간주할 수 있는 경우 유용합니다

 

Remove entire column (전체 열 제거) : 하나 이상의 값이 누락된 데이터 세트의 열을 완전히 제거합니다.

Replace using Probabilistic PCA(확률론적 PCA를 사용하여 대체) : 열 사이의 상관 관계를 분석하고 전체 데이터가 재구성되는 데이터의 저 차원 근사치를 추정하는 선형 모델을 사용하여 누락된 값을 대체합니다. 

 

 

MICE(Chained방정식)를 사용한 다중 귀속과 같은 다른 옵션에 비해 이 옵션은 각 열에 예측 변수의 적용을 요구하지 않는 장점이 있습니다. 대신에 전체 데이터 집합의 공분산에 가깝습니다. 따라서 많은 열의 값이 누락된 데이터 셋에 대해 더 나은 성능을 제공할 수 있습니다. 이 방법의 주요 제한 사항은 범주형 열을 숫자 지표로 확장하고 결과 데이터의 밀도 있는 공분산 행렬을 계산한다는 것입니다. 또한 스파스 표현에 대해서도 최적화되지 않습니다. 이러한 이유로 열 수가 많거나 범주형 도메인이 큰 데이터 세트(수만개)는 과도한 공간 사용으로 인해 지원되지 않습니다.

 

 


MICE, PCA 방정식을 이용하게 되면 생기는 아래 모듈은 방정식을 얼마나 돌릴 것 인가를 설정하실 수 있습니다.

 

 

반응형