"분류:데이터 전처리"의 두 판 사이의 차이
둘러보기로 가기
검색하러 가기
잔글 (→모델 평가를 위한 데이터 분류) |
잔글 (→표준화) |
||
2번째 줄: | 2번째 줄: | ||
결측치를 제거하거나 새로운 값을 부여하거나, 범주형 변수를 어떻게 처리할지에 대한 지식을 모아둔 분류. | 결측치를 제거하거나 새로운 값을 부여하거나, 범주형 변수를 어떻게 처리할지에 대한 지식을 모아둔 분류. | ||
− | + | = 전처리 = | |
데이터마다 스케일의 크기가 다르다. 어떤 것은 1~5 사이인데, 어떤 것은 100~1000 사이이기도 하고.. 요소마다 스케일이 다르기도 한데, 크기가 큰 항목에 더 크게 영향을 받기 때문에 이들에 대한 전처리가 필요하다. | 데이터마다 스케일의 크기가 다르다. 어떤 것은 1~5 사이인데, 어떤 것은 100~1000 사이이기도 하고.. 요소마다 스케일이 다르기도 한데, 크기가 큰 항목에 더 크게 영향을 받기 때문에 이들에 대한 전처리가 필요하다. | ||
16번째 줄: | 16번째 줄: | ||
일반적으로 표준화를 거친다. 평균이 0이고, 분산이 1인 상태로 만들어 다루는 것이 일반적이다. 이는 사이킷런에서 기본적으로 제공하는 기능이다. | 일반적으로 표준화를 거친다. 평균이 0이고, 분산이 1인 상태로 만들어 다루는 것이 일반적이다. 이는 사이킷런에서 기본적으로 제공하는 기능이다. | ||
− | == 모델 평가를 위한 데이터 분류 | + | == 정규화 == |
+ | |||
+ | === Min-Max Normalization(최소-최대 정규화) === | ||
+ | <math>x' = {x-min \over max-min}</math> 모델의 가장 작은 값을 0으로, 가장 큰 값을 1로 맞춘다. | ||
+ | |||
+ | 이상치에 취약하다는 약점이 있다. | ||
+ | |||
+ | = 모델 평가를 위한 데이터 분류 = | ||
데이터는 일반적으로 다음의 3개로 분류한다. | 데이터는 일반적으로 다음의 3개로 분류한다. | ||
{| class="wikitable" | {| class="wikitable" |
2022년 1월 20일 (목) 17:51 판
1 개요
결측치를 제거하거나 새로운 값을 부여하거나, 범주형 변수를 어떻게 처리할지에 대한 지식을 모아둔 분류.
2 전처리
데이터마다 스케일의 크기가 다르다. 어떤 것은 1~5 사이인데, 어떤 것은 100~1000 사이이기도 하고.. 요소마다 스케일이 다르기도 한데, 크기가 큰 항목에 더 크게 영향을 받기 때문에 이들에 대한 전처리가 필요하다.
1. 텍스트 데이터의 경우. 컴퓨터가 이해할 수 있는 평태로 변환.
단어를 인덱싱하여 벡터화 해 수치화.
2. 정규화 데이터 크기 자체에 영향을 받지 않게끔. 평균을 0으로, 표준편차를 1로 만드는 정규화를 수행한다. 3. 데이터를 0-1 사이로 정규화한다.
2.1 표준화
일반적으로 표준화를 거친다. 평균이 0이고, 분산이 1인 상태로 만들어 다루는 것이 일반적이다. 이는 사이킷런에서 기본적으로 제공하는 기능이다.
2.2 정규화
2.2.1 Min-Max Normalization(최소-최대 정규화)
모델의 가장 작은 값을 0으로, 가장 큰 값을 1로 맞춘다.
이상치에 취약하다는 약점이 있다.
3 모델 평가를 위한 데이터 분류
데이터는 일반적으로 다음의 3개로 분류한다.
데이터 | 의도 |
---|---|
훈련데이터 | 가중치(매개변수)를 학습하는 데 쓰이는 데이터. |
검증데이터 | 모델 평가에 사용.
테스트 데이터와의 차이는 무엇일까? => 하이퍼파라미터를 조절하는 데 사용. 검증세트에 맞게끔 모델을 튜닝하다 보면 오히려 여기에 과적합 되어 테스트에 맞지 않게 될 수도 있다.(이를 정보누설이라 한다.) 때문에 테스트 데이터는 최종적으로 한 번만 사용하게끔 개발계획을 잡는 것이 이상적. |
시험데이터 | 완전히 다른 데이터셋으로 최종적으로 테스트.(모델은 간접적으로라도 테스트세트에 대한 어떠한 정보도 얻어선 안된다.) |
3.1 dataframe을 배열로
일반적으로 데이터 관리에서 데이터프레임을 사용하지만, 인공지능에선 넘파이 배열을 사용한다.
import numpy as np
x_train = np.asarray(x_train).astype('float32')
# 시간형은 어떻게 바꾸지?
하위 분류
다음은 이 분류에 속하는 하위 분류 4개 가운데 4개입니다.
"데이터 전처리" 분류에 속하는 문서
다음은 이 분류에 속하는 문서 8개 가운데 8개입니다.