데이터 마이닝의 데이터 전처리: 단계, 결측값 대치, 데이터 표준화
게시 됨: 2020-12-30데이터 과학자의 작업에서 가장 시간이 많이 걸리는 부분은 데이터를 준비하고 사전 처리하는 것입니다. 실제 시나리오에서 얻은 데이터는 깨끗하지 않고 모델링에 적합하지 않습니다. 머신 러닝 모델에 공급하기 전에 데이터를 정리하고 특정 형식으로 가져와 변환해야 합니다.
이 튜토리얼이 끝나면 다음을 알게 될 것입니다.
- 데이터 전처리가 필요한 이유
- 데이터 정리
- 결측값 대치
- 데이터 표준화
- 이산화
목차
왜 데이터 전처리인가?
웹사이트를 스크랩하고 다른 데이터 소스에서 수집하여 데이터를 검색할 때 일반적으로 불일치가 가득합니다. 형식 문제, 누락된 값, 가비지 값 및 텍스트, 데이터 오류가 발생할 수 있습니다. 모델이 학습하고 일반화할 수 있도록 모델에 제공되는 데이터가 최대치인지 확인하려면 몇 가지 전처리 단계를 수행해야 합니다.
데이터 정리
첫 번째이자 가장 필수적인 단계는 데이터의 불규칙성을 정리하는 것입니다. 이 단계를 수행하지 않고는 데이터 통계를 크게 이해할 수 없습니다. 형식 문제, 가비지 값 및 이상값이 될 수 있습니다.
형식 문제
대부분의 경우 데이터가 표 형식이어야 하지만 그렇지 않습니다. 데이터에 누락되거나 잘못된 열 이름, 빈 열이 있을 수 있습니다. 또한 이미지, 텍스트와 같은 비정형 데이터를 처리할 때 모델링을 위해 데이터 프레임에 로드되는 2D 또는 3D 데이터를 얻는 것이 가장 중요합니다.
쓰레기 값
많은 인스턴스 또는 전체 열에는 실제 필수 값에 추가된 특정 가비지 값이 있을 수 있습니다. 예를 들어, "#1", "#3", "#12", "#2" 등과 같은 값이 있는 열 "순위"를 고려합니다. 이제 앞의 "#"을 모두 제거하는 것이 중요합니다. 모델에 숫자 값을 공급할 수 있는 문자입니다.
이상치
여러 번 특정 숫자 값이 특정 열의 평균 값보다 너무 크거나 너무 낮습니다. 이들은 이상치로 간주됩니다. 이상치는 특별한 치료가 필요하며 치료해야 하는 민감한 요소입니다. 이러한 이상치는 측정 오류일 수도 있고 실제 값일 수도 있습니다. 중요한 정보가 많이 포함될 수 있으므로 완전히 제거하거나 별도로 처리해야 합니다.
결측값
데이터에 모든 인스턴스의 모든 값이 포함되는 경우는 드뭅니다. 많은 값이 누락되었거나 가비지 항목으로 채워졌습니다. 이러한 결측값을 처리해야 합니다. 이러한 값에는 여러 가지 이유가 있을 수 있습니다. 센서 오류 또는 기타 요인과 같은 이유로 누락되거나 완전히 무작위로 누락될 수도 있습니다.
읽기: 인도의 데이터 마이닝 프로젝트
적하
가장 간단하고 쉬운 방법은 값이 누락된 행을 삭제하는 것입니다. 이렇게 하면 중요한 정보가 손실되는 등 많은 단점이 있습니다. 보유한 데이터 양이 많을 때 누락된 값을 삭제하는 좋은 단계일 수 있습니다. 그러나 데이터가 적고 결측값이 많은 경우 이 문제를 해결할 더 나은 방법이 필요합니다.
평균/중앙값/모드 대치
결측값을 대치하는 가장 빠른 방법은 단순히 열의 평균값을 대치하는 것입니다. 그러나 데이터의 원래 분포를 방해하기 때문에 단점이 있습니다. 또한 단순 평균보다 일반적으로 더 나은 중간 값 또는 모드 값을 대치할 수 있습니다.
선형 보간 및 KNN
보다 현명한 방법을 사용하여 결측값을 대치할 수도 있습니다. 그 중 2는 공백 값이 있는 열을 예측할 특성으로 처리하여 다중 모델을 사용하는 선형 보간입니다. 또 다른 방법은 KNN에서 클러스터링을 사용하는 것입니다. KNN은 특정 기능의 값을 클러스터로 만든 다음 클러스터에 가장 가까운 값을 할당합니다.
데이터 표준화
여러 수치 특성이 있는 데이터 세트에서 모든 특성이 동일한 척도에 있지 않을 수 있습니다. 예를 들어, "Distance" 기능은 1300, 800, 560 등과 같은 미터 단위의 거리를 가지고 있습니다. 그리고 또 다른 기능 "time"은 1, 2.5, 3.2, 0.8 등과 같은 시간 단위 시간을 갖습니다. 따라서 이 두 기능이 값이 클수록 거리가 있는 피쳐를 가중치로 간주합니다. 이 시나리오를 피하고 더 빠른 수렴을 위해서는 모든 기능을 동일한 규모로 가져와야 합니다.

표준화
기능을 확장하는 일반적인 방법은 기능을 정규화하는 것입니다. Scikit-learn의 Normalizer를 사용하여 구현할 수 있습니다. 열 이 아니라 행에서 작동합니다. L2 정규화는 각 관측치에 적용되어 행의 값이 척도화 후 단위 노름을 갖도록 합니다.
최소 최대 스케일링
최소 최대 스케일링은 Scikit-learn의 Min MaxScaler 클래스를 사용하여 구현할 수 있습니다. 기능의 최소값을 뺀 다음 범위로 나눕니다. 여기서 범위는 원래 최대값과 원래 최소값의 차이입니다. 기본 범위가 0-1인 원래 분포의 모양을 유지합니다.
표준 스케일링
Standard Scaler는 Scikit-learn의 클래스를 사용하여 구현할 수도 있습니다. 평균을 뺀 다음 단위 분산으로 스케일링하여 기능을 표준화합니다. 여기서 단위 분산은 모든 값을 표준 편차로 나누는 것을 의미합니다. 분포의 평균을 0으로, 표준편차를 1로 만듭니다.
이산화
많은 경우 데이터는 범주 형식 대신 숫자 형식이 아닙니다. 예를 들어 값이 "높음", "낮음", "중간"인 "온도" 기능을 고려합니다. 이러한 텍스트 값은 모델이 학습할 수 있도록 숫자 형식으로 인코딩되어야 합니다.
범주형 데이터
범주형 데이터는 레이블이 인코딩되어 숫자 형식으로 표시됩니다. 따라서 "High", "Medium" 및 "Low"는 3,2 및 1로 레이블 인코딩될 수 있습니다. 범주형 기능은 명목 또는 순서가 될 수 있습니다. 순서형 범주형 기능은 특정 순서가 있는 기능입니다. 예를 들어 위의 경우 온도를 측정/정량할 수 있으므로 3>2>1이라고 할 수 있습니다.
그러나 "Delhi", "Jammu" 및 "Agra"와 같은 값을 갖는 "City"의 특성을 측정할 수 없는 예에서. 즉, 3, 2, 1로 레이블을 인코딩할 때 "Delhi"> "Jammu"가 의미가 없기 때문에 3>2>1이라고 말할 수 없습니다. 이러한 경우 One Hot Encoding을 사용합니다.
연속 데이터
연속 값이 있는 기능은 값을 특정 범위의 빈으로 비닝하여 이산화할 수도 있습니다. 비닝은 연속 값의 범위를 기반으로 숫자 또는 연속 특성을 불연속 값 집합으로 변환하는 것을 의미합니다. 이는 데이터 포인트가 속하는 범위를 기반으로 추세를 확인하려는 경우에 유용합니다.
예를 들어, 0-100 범위의 7명의 어린이에 대한 점수가 있다고 가정해 보겠습니다. 이제 모든 어린이의 점수를 특정 "빈"에 할당할 수 있습니다. 이제 범위가 0~50, 51~70, 71~100인 3개의 Bin으로 나눌 수 있으며 각각 Bin 1,2, 3에 속합니다. 따라서 이제 이 기능에는 이 3가지 값 중 하나만 포함됩니다. Pandas는 신속하게 비닝을 달성하기 위해 qcut 및 cut의 2가지 기능을 제공합니다.
Pandas qcut은 분위수 수를 취하고 데이터 분포를 기반으로 데이터 포인트를 각 bin으로 나눕니다.
반면에 Pandas cut은 우리가 정의한 사용자 정의 범위를 가져와서 해당 범위의 데이터 요소를 나눕니다.
관련 읽기: 기계 학습의 데이터 전처리
세계 최고의 대학에서 데이터 과학 과정 을 배우십시오 . 이그 제 큐 티브 PG 프로그램, 고급 인증 프로그램 또는 석사 프로그램을 획득하여 경력을 빠르게 추적하십시오.
결론
데이터 전처리는 모든 데이터 마이닝 및 기계 학습 작업에서 필수적인 단계입니다. 우리가 논의한 모든 단계는 확실히 전부는 아니지만 프로세스의 대부분의 기본 부분을 다룹니다. 데이터 전처리 기술은 NLP와 이미지 데이터에서도 다릅니다. 위 단계의 예를 시도하고 데이터 마이닝 파이프라인에서 구현하십시오.
데이터 과학에 대해 자세히 알아보려면 IIIT-B & upGrad의 데이터 과학 PG 디플로마를 확인하세요. 이 PG 디플로마는 실무 전문가를 위해 만들어졌으며 10개 이상의 사례 연구 및 프로젝트, 실용적인 실습 워크숍, 업계 전문가와의 멘토링, 1- 업계 멘토와 일대일, 400시간 이상의 학습 및 최고의 기업과의 취업 지원.
데이터 전처리란 무엇이며 그 중요성은 무엇입니까?
이미지, 텍스트, 비디오 형태의 비정형 원시 데이터를 제공하는 기술입니다. 이 데이터는 나중에 분석할 수 있도록 불일치, 오류 및 중복을 제거하기 위해 먼저 사전 처리됩니다.
원시 데이터는 기계가 이해할 수 있는 관련 데이터로 변환됩니다. 데이터 전처리는 모델링을 위해 데이터를 변환하는 중요한 단계입니다. 처리가 없으면 거의 쓸모가 없습니다.
데이터 전처리와 관련된 단계는 무엇입니까?
데이터 전처리에는 전체 프로세스를 완료하기 위한 다양한 단계가 포함됩니다. 데이터는 먼저 노이즈를 제거하고 누락된 값을 채우기 위해 정리됩니다. 그런 다음 여러 소스의 데이터를 통합하여 단일 데이터 세트로 결합합니다. 이러한 단계는 변환, 축소 및 이산화로 이어집니다.
원시 데이터의 변환에는 데이터 정규화가 포함됩니다. 축소 및 이산화는 기본적으로 데이터의 속성과 차원을 축소하는 작업을 처리합니다. 그런 다음 이 큰 데이터 집합을 압축합니다.
단변량 방법과 다변량 방법의 차이점은 무엇입니까?
일변량 방법은 이상값을 처리하는 가장 간단한 방법입니다. 단일 변량이고 주요 목적은 데이터를 분석하고 관련 패턴을 결정하는 것이기 때문에 어떤 관계도 개관하지 않습니다. 평균, 중앙값 및 최빈값은 일변량 데이터에서 발견되는 패턴의 예입니다.
반면에 다변량 방법은 3개 이상의 변수를 분석하는 방법입니다. 일변량 방법과 달리 다변수 방법은 관계와 패턴을 다루기 때문에 이전 방법보다 정확합니다. 가법 트리, 정규 상관 분석 및 군집 분석은 다변수 분석을 수행하는 몇 가지 방법입니다.
