고급 변환으로 데이터 준비 - 아마존 SageMaker

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

고급 변환으로 데이터 준비

참고

테이블 형식 데이터 세트를 기반으로 구축된 모델에는 고급 변환만 사용할 수 있습니다. 다중 카테고리 텍스트 예측 모델도 제외됩니다.

모델을 구축하기 전에 기계 학습 데이터 세트에 데이터 준비가 필요할 수 있습니다. 누락된 값이나 이상값을 포함할 수 있는 다양한 문제로 인해 데이터를 정리하고 특성 추출을 수행하여 모델의 정확도를 향상시킬 수 있습니다. Amazon SageMaker Canvas는 모델 구축을 위해 데이터를 정리, 변환 및 준비할 수 있는 ML 데이터 변환을 제공합니다. 코드 없이 데이터세트에 이러한 변환을 사용할 수 있습니다. SageMaker Canvas는 사용하는 변환을 모델 레시피에 추가합니다. 모델 레시피는 모델을 빌드하기 전에 데이터에 대해 수행한 데이터 준비를 기록합니다. 사용하는 모든 데이터 변환은 모델 구축을 위한 입력 데이터만 수정하고 원본 데이터 소스는 수정하지 않습니다.

SageMaker Canvas에서는 다음과 같은 변환을 사용하여 데이터 구축을 준비할 수 있습니다.

참고

데이터 세트 미리보기에는 데이터 세트의 처음 100개 행이 표시됩니다. 데이터 세트의 행이 20,000개를 초과하는 경우 Canvas는 20,000개 행의 무작위 표본을 추출하여 해당 샘플에서 처음 100개 행을 미리 봅니다. 미리보기 된 행에서만 값을 검색하고 지정할 수 있으며, 필터 기능은 미리보기 된 행만 필터링하고 전체 데이터 세트는 필터링하지 않습니다.

열 삭제

SageMaker Canvas 애플리케이션의 Build 탭에 열을 드롭하여 모델 빌드에서 열을 제외할 수 있습니다. 삭제하려는 열을 선택 취소하면 모델을 빌드할 때 해당 열이 포함되지 않습니다.

참고

열을 삭제한 다음 모델을 사용하여 일괄 예측을 수행하면 SageMaker Canvas는 드롭된 열을 다운로드할 수 있는 출력 데이터세트에 다시 추가합니다. 하지만 SageMaker Canvas는 시계열 모델의 경우 드롭된 열을 다시 추가하지 않습니다.

행 필터링

필터 기능은 사용자가 지정한 조건에 따라 미리보기 된 행(데이터 세트의 처음 100개 행)을 필터링합니다. 행을 필터링하면 데이터의 임시 미리보기가 생성되며 모델 구축에는 영향을 주지 않습니다. 누락된 값이 있거나, 이상값을 포함하거나, 선택한 열에서 사용자 지정 조건을 충족하는 행을 필터링하여 미리 볼 수 있습니다.

누락된 값을 기준으로 행 필터링

누락된 값은 기계 학습 데이터 세트에서 흔히 발생합니다. 특정 열에 값이 null 또는 빈 값이 있는 이 있는 경우 해당 행을 필터링하고 미리 볼 수 있습니다.

미리보기 된 데이터에서 누락된 값을 필터링하려면 다음을 수행합니다.

  1. SageMaker Canvas 애플리케이션의 Build 탭에서 행별 필터링 ( Filter icon in the SageMaker Canvas application. ) 을 선택합니다.

  2. 누락된 값이 있는지 확인하려는 을 선택합니다.

  3. 작업에서 누락을 선택합니다.

SageMaker 캔버스는 선택한 열에 누락된 값이 포함된 행을 필터링하고 필터링된 행의 미리 보기를 제공합니다.

SageMaker Canvas 응용 프로그램의 결측값 필터링 작업 스크린샷

이상값을 기준으로 행 필터링

데이터 분포 및 범위의 특이치나 드문 값은 모델 정확도에 부정적인 영향을 미치고 작성 시간이 길어질 수 있습니다. SageMaker Canvas를 사용하면 숫자 열에 이상치가 포함된 행을 탐지하고 필터링할 수 있습니다. 표준 편차 또는 사용자 지정 범위로 이상값을 정의하도록 선택할 수 있습니다.

데이터의 이상값을 필터링하려면 다음을 수행합니다.

  1. SageMaker Canvas 애플리케이션의 Build 탭에서 행별 필터링 () 을 선택합니다. Filter icon in the SageMaker Canvas application.

  2. 이상값을 확인하려는 을 선택합니다.

  3. 연산에서 이상값을 선택합니다.

  4. 이상값 범위표준 편차 또는 사용자 지정 범위로 설정합니다.

  5. 표준 편차)를 선택하는 경우 SD(표준 편차) 값을 1~3으로 지정하세요. 사용자 지정 범위를 선택하는 경우 백분위수 또는 숫자를 선택한 다음 최소값최대값을 지정합니다.

표준 편차 옵션은 평균과 표준 편차를 사용하여 숫자 열의 이상값을 탐지하고 필터링합니다. 값이 이상값으로 간주되기 위해 평균과 달라야 하는 표준 편차 수를 지정합니다. 예를 들어 SD를 지정하는 3경우 값이 평균에서 3 표준 편차 이상 떨어져야 이상값으로 간주됩니다.

사용자 지정 범위 옵션은 최소값과 최대값을 사용하여 숫자 열의 이상값을 탐지하고 필터링합니다. 이상값을 구분하는 임곗값을 알고 있는 경우 이 방법을 사용하세요. 범위 유형백분위수 또는 숫자로 설정할 수 있습니다. 백분위수를 선택하는 경우 최소값최대값은 허용하려는 백분위수 범위(0-100)의 최소값과 최대값이어야 합니다. 숫자를 선택하는 경우 최소값최대값은 데이터에서 필터링하려는 최소 및 최대 숫자 값이어야 합니다.

SageMaker Canvas 애플리케이션에서 이상값을 기준으로 필터링하는 작업의 스크린샷

사용자 지정 값을 기준으로 행 필터링

사용자 지정 조건에 맞는 값이 있는 행을 필터링할 수 있습니다. 예를 들어 가격 값이 100보다 큰 행을 제거하기 전에 미리 볼 수 있습니다. 이 기능을 사용하면 설정한 임곗값을 초과하는 행을 필터링하고 필터링된 데이터를 미리 볼 수 있습니다.

사용자 지정 필터 기능을 사용하려면 다음을 수행합니다.

  1. SageMaker Canvas 애플리케이션의 Build 탭에서 행별 필터링 () Filter icon in the SageMaker Canvas application. 을 선택합니다.

  2. 확인하려는 을 선택합니다.

  3. 사용할 작업 유형을 선택한 다음 선택한 조건의 값을 지정합니다.

작업의 경우, 다음 옵션 중 하나를 선택할 수 있습니다. 사용 가능한 작업은 선택한 열의 데이터 유형에 따라 다릅니다. 예를 들어, 텍스트 값이 포함된 열에 대해서는 is greater than작업을 생성할 수는 없습니다.

Operation 지원되는 데이터 유형 지원되는 기능 유형 함수

같음

숫자, 텍스트

바이너리, 범주형

의 값이 지정한 값과 같은 행을 필터링합니다.

같지 않음

숫자, 텍스트

바이너리, 범주형

의 값이 지정한 값과 같지 않은 행을 필터링합니다.

보다 작음

숫자

N/A

의 값이 지정한 값보다 작은 행을 필터링합니다.

보다 작거나 같음

숫자

N/A

의 값이 지정된 값보다 작거나 같은 행을 필터링합니다.

보다 큼

숫자

N/A

의 값이 지정한 값보다 큰 행을 필터링합니다.

보다 크거나 같음

숫자

N/A

의 값이 지정된 값과 같거나 큰 행을 필터링합니다.

사이에 있음

숫자

N/A

의 값이 지정한 두 값 사이에 있거나 같은 행을 필터링합니다.

포함

텍스트

범주형

의 값에 지정한 값이 포함된 행을 필터링합니다.

다음으로 시작

텍스트

범주형

의 값이 지정한 값으로 시작하는 행을 필터링합니다.

다음으로 종료

범주형

범주형

의 값이 지정한 값으로 끝나는 행을 필터링합니다.

필터 작업을 설정한 후 SageMaker Canvas는 데이터세트 미리보기를 업데이트하여 필터링된 데이터를 표시합니다.

SageMaker Canvas 애플리케이션의 사용자 지정 값별 필터링 작업 스크린샷

함수 및 연산자

수학 함수와 연산자를 사용하여 데이터를 탐색하고 배포할 수 있습니다. SageMaker Canvas에서 지원하는 함수를 사용하거나 기존 데이터로 자체 수식을 만들고 수식 결과로 새 열을 만들 수 있습니다. 예를 들어, 두 열의 해당 값을 추가하고 결과를 새 열에 저장할 수 있습니다.

문을 중첩하여 더 복잡한 함수를 만들 수 있습니다. 다음은 사용할 수 있는 중첩 함수의 몇 가지 예입니다.

  • weight / (height ^ 2) 함수를 사용하여 BMI를 계산할 수 있습니다.

  • Case(age < 18, 'child', age < 65, 'adult', 'senior') 함수를 사용하여 연령을 분류할 수 있습니다.

모델을 구축하기 전에 데이터 준비 단계에서 함수를 지정할 수 있습니다. 함수를 가져오려면 다음을 수행합니다.

  • SageMaker Canvas 응용 프로그램의 빌드 탭에서 모두 보기를 선택한 다음 사용자 지정 수식을 선택하여 사용자 지정 공식 패널을 엽니다.

  • 사용자 지정 공식 패널에서 모델 레시피에 추가할 공식을 선택할 수 있습니다. 각 공식은 지정한 열의 모든 값에 적용됩니다. 두 개 이상의 열을 인수로 허용하는 공식의 경우 데이터 유형이 일치하는 열을 사용하십시오. 그렇지 않으면 새 열에 오류나 null 값이 표시됩니다.

  • 공식을 지정한 후 새 열 이름 필드에 열 이름을 추가합니다. SageMaker Canvas는 새로 생성되는 열에 이 이름을 사용합니다.

  • (선택 사항) 미리보기를 선택하여 변환을 미리 볼 수 있습니다.

  • 모델 레시피에 함수를 추가하려면 추가를 선택합니다.

SageMaker 캔버스는 새 열 이름에서 지정한 이름을 사용하여 함수 결과를 새 열에 저장합니다. 모델 레시피 패널에서 함수를 보거나 제거할 수 있습니다.

SageMaker Canvas는 함수에 대해 다음과 같은 연산자를 지원합니다. 텍스트 형식 또는 인라인 형식을 사용하여 함수를 지정할 수 있습니다.

연산자 설명 지원되는 데이터 유형 텍스트 형식 인라인 형식

더하기

값의 합계를 반환합니다.

숫자

Add(sales1, sales2)

sales1 + sales2

Subtract

값 간의 차이를 반환합니다.

숫자

Subtract(sales1, sales2)

sales1 ‐ sales2

곱하기

값의 곱을 반환합니다.

숫자

Multiply(sales1, sales2)

sales1 * sales2

나누기

값의 몫을 반환합니다.

숫자

Divide(sales1, sales2)

sales1 / sales2

Mod

모듈로 연산자의 결과(두 값을 나눈 나머지)를 반환합니다.

숫자

Mod(sales1, sales2)

sales1 % sales2

Abs

값의 절대값을 반환합니다.

숫자

Abs(sales1)

N/A

Negate

값의 음수를 반환합니다.

숫자

Negate(c1)

‐c1

Exp

e(오일러수)를 해당 값의 거듭제곱으로 반환합니다.

숫자

Exp(sales1)

N/A

Log

값의 로그(밑 10)를 반환합니다.

숫자

Log(sales1)

N/A

Ln

값의 자연 로그(밑 e)를 반환합니다.

숫자

Ln(sales1)

N/A

Pow

거듭제곱된 값을 반환합니다.

숫자

Pow(sales1, 2)

sales1 ^ 2

If

지정한 조건에 따라 참 또는 거짓 레이블을 반환합니다.

부울, 숫자, 텍스트

If(sales1>7000, 'truelabel, 'falselabel')

N/A

Or

지정된 값이나 조건 중 하나가 참인지 아닌지에 대한 부울 값을 반환합니다.

Or(fullprice, discount)

fullprice || discount

And

지정된 값이나 조건 중 두 개가 참인지 아닌지에 대한 부울 값을 반환합니다.

And(sales1,sales2)

sales1 && sales2

Not

지정된 값 또는 조건과 반대되는 부울 값을 반환합니다.

Not(sales1)

!sales1

Case

조건문을 기반으로 하는 부울 값을 반환합니다 (cond1이 참이면 c1을 반환하고, cond2가 참이면 c2를 반환하고, 그렇지 않으면 c3을 반환합니다).

부울, 숫자, 텍스트

Case(cond1, c1, cond2, c2, c3)

N/A

같음

두 값이 같은지 여부에 대한 부울 값을 반환합니다.

부울, 숫자, 텍스트

N/A

c1 = c2

c1 == c2

같지 않음

두 값이 같지 않은지 여부에 대한 부울 값을 반환합니다.

부울, 숫자, 텍스트

N/A

c1 != c2

보다 작음

c1이 c2보다 작은지 여부에 대한 부울 값을 반환합니다.

부울, 숫자, 텍스트

N/A

c1 < c2

보다 큼

c1이 c2보다 큰지 여부에 대한 부울 값을 반환합니다.

부울, 숫자, 텍스트

N/A

c1 > c2

작거나 같음

c1이 c2보다 작거나 같은지 여부에 대한 부울 값을 반환합니다.

부울, 숫자, 텍스트

N/A

c1 <= c2

크거나 같음

c1이 c2보다 크거나 같은지 여부에 대한 부울 값을 반환합니다.

부울, 숫자형, 텍스트

N/A

c1 >= c2

SageMaker Canvas는 모든 값의 합계를 계산하거나 열의 최소값을 찾는 등의 작업을 수행할 수 있는 집계 연산자도 지원합니다. 함수에서 집계 연산자를 표준 연산자와 조합하여 사용할 수 있습니다. 예를 들어 평균과의 값 차이를 계산하려면 함수를 Abs(height – avg(height)) 사용할 수 있습니다. SageMaker Canvas는 다음과 같은 집계 연산자를 지원합니다.

집계 연산자 설명 형식

sum

열에 있는 모든 값의 합계를 반환합니다.

sum

sum(c1)

minimum

열의 최소값을 반환합니다.

min

min(c2)

maximum

열의 최대값을 반환합니다.

최대

max(c3)

평균

열의 평균값을 반환합니다.

avg

avg(c4)

std

열의 표본 표준편차를 반환합니다.

std

표준 (c1)

stddev

열에 있는 값의 표준 편차를 반환합니다.

stddev

stddev (c1)

variance

열에 있는 값의 편향되지 않은 분산을 반환합니다.

variance

variance(c1)

approx_count_distinct

열에 있는 고유 항목의 대략적인 개수를 반환합니다.

approx_count_distinct

approx_count_distinct(c1)

count

한 열에 있는 항목 수를 반환합니다.

count

count(c1)

first

열의 첫 번째 값을 반환합니다.

first

first(c1)

last

열의 마지막 값을 반환합니다.

last

last(c1)

stddev_pop

열의 모집단 표준 편차를 반환합니다.

stddev_pop

stddev_pop (c1)

variance_pop

열에 있는 값의 모집단 분산을 반환합니다.

variance_pop

variance_pop (c1)

행 관리

행 관리 변환을 사용하면 데이터 세트에서 데이터 행을 정렬, 무작위 섞기 및 제거할 수 있습니다.

행 정렬

특정 열을 기준으로 데이터 세트의 행을 정렬하려면 다음을 수행합니다.

  1. SageMaker Canvas 응용 프로그램의 [빌드] 탭에서 [행 관리] 를 선택한 다음 [행 정렬] 을 선택합니다.

  2. 열 정렬의 경우 정렬 기준으로 사용할 열을 선택합니다.

  3. 정렬 순서에서 오름차순 또는 내림차순을 선택합니다.

  4. 추가를 선택하여 모델 레시피에 변환을 추가합니다.

행 섞기

데이터 세트에서 행을 임의로 섞으려면 다음을 수행합니다.

  1. SageMaker Canvas 응용 프로그램의 [빌드] 탭에서 [행 관리] 를 선택한 다음 [행 섞기] 를 선택합니다.

  2. 추가를 선택하여 모델 레시피에 변환을 추가합니다.

중복 행 삭제

데이터 세트에서 중복된 행을 제거하려면 다음을 수행합니다.

  1. SageMaker Canvas 응용 프로그램의 [빌드] 탭에서 [행 관리] 를 선택한 다음 [중복 행 삭제] 를 선택합니다.

  2. 추가를 선택하여 모델 레시피에 변환을 추가합니다.

누락된 값이 있는 행 제거

누락된 값은 기계 학습 데이터 세트에서 흔히 발생하며 모델 정확도에 영향을 미칠 수 있습니다. 특정 열에 null 또는 비어 있는 값이 있는 행을 삭제하려면 이 변환을 사용하세요.

지정된 열에 누락된 값이 포함된 행을 제거하려면 다음을 수행합니다.

  1. SageMaker Canvas 애플리케이션의 [빌드] 탭에서 [행 관리] 를 선택합니다.

  2. 누락된 값을 기준으로 행 삭제를 선택합니다.

  3. 추가를 선택하여 모델 레시피에 변환을 추가합니다.

SageMaker Canvas는 선택한 열에 누락된 값이 포함된 행을 삭제합니다. 데이터세트에서 행을 제거한 후 SageMaker Canvas는 모델 레시피 섹션에 변환을 추가합니다. 모델 레시피 섹션에서 변환을 제거하면 행이 데이터 세트로 돌아갑니다.

SageMaker Canvas 애플리케이션의 누락된 값을 통한 행 제거 작업의 스크린샷

이상값을 기준으로 행 제거

데이터 분포 및 범위의 이상값 또는 희귀한 값은 모델 정확도에 부정적인 영향을 미치고 구축 시간을 연장할 수 있습니다. SageMaker Canvas를 사용하면 숫자 열에 이상값이 포함된 행을 탐지하고 제거할 수 있습니다. 표준 편차 또는 사용자 지정 범위로 이상값을 정의하도록 선택할 수 있습니다.

데이터에서 이상값을 제거하려면 다음을 수행하세요.

  1. SageMaker Canvas 애플리케이션의 빌드 탭에서 행 관리를 선택합니다.

  2. 이상값을 기준으로 행 삭제를 선택합니다.

  3. 이상값을 확인하려는 을 선택합니다.

  4. 연산자표준 편차, 사용자 지정 숫자 범위 또는 사용자 지정 분위수 범위로 설정합니다.

  5. 표준 편차를 선택하는 경우 표준 편차(표준 편차) 값을 1-3 사이로 지정하세요. 사용자 지정 숫자 범위 또는 사용자 지정 분위수 범위를 선택하는 경우 최소값최대값(숫자 범위의 경우 숫자, 분위수 범위의 경우 0~ 100% 사이의 백분위수)을 지정합니다.

  6. 추가를 선택하여 모델 레시피에 변환을 추가합니다.

표준 편차 옵션은 평균과 표준 편차를 사용하여 숫자 열의 이상값을 탐지하고 제거합니다. 값이 이상값으로 간주되기 위해 평균과 달라야 하는 표준 편차 수를 지정합니다. 예를 들어, 표준 편차를 지정하는 3경우 값이 평균에서 3 표준 편차 이상 떨어져야 이상값으로 간주됩니다.

사용자 지정 숫자 범위사용자 지정 분위수 범위 옵션은 최소값과 최대값을 사용하여 숫자 열의 이상값을 탐지하고 제거합니다. 이상값을 구분하는 임계값을 알고 있는 경우 이 방법을 사용하세요. 숫자 범위를 선택하는 경우 최소값최대값은 데이터에 허용하려는 최소값과 최대값이어야 합니다. 분위수 범위를 선택하는 경우 최소값최대값은 허용하려는 백분위수 범위(0~100)의 최소값과 최대값이어야 합니다.

데이터세트에서 행을 제거한 후 SageMaker Canvas는 모델 레시피 섹션에 변환을 추가합니다. 모델 레시피 섹션에서 변환을 제거하면 행이 데이터 세트로 돌아갑니다.

Canvas 애플리케이션에서의 이상치에 의한 행 제거 작업의 스크린샷 SageMaker

사용자 지정 값으로 행 제거

사용자 지정 조건에 맞는 값이 있는 행을 제거할 수 있습니다. 예를 들어 모델을 만들 때 가격 값이 100보다 큰 행을 모두 제외할 수 있습니다. 이 변환을 사용하면 설정한 임곗값을 초과하는 모든 행을 제거하는 규칙을 만들 수 있습니다.

사용자 지정 제거 변환을 사용하려면 다음을 수행합니다.

  1. SageMaker Canvas 애플리케이션의 빌드 탭에서 행 관리를 선택합니다.

  2. 공식별로 행 삭제를 선택합니다.

  3. 확인하려는 을 선택합니다.

  4. 사용할 작업 유형을 선택한 다음 선택한 조건의 값을 지정합니다.

  5. 추가를 선택하여 모델 레시피에 변환을 추가합니다.

작업의 경우, 다음 옵션 중 하나를 선택할 수 있습니다. 사용 가능한 작업은 선택한 열의 데이터 유형에 따라 다릅니다. 예를 들어, 텍스트 값이 포함된 열에 대해서는 is greater than작업을 생성할 수는 없습니다.

Operation 지원되는 데이터 유형 지원되는 기능 유형 함수

같음

숫자, 텍스트

바이너리, 범주형

의 값이 지정한 값과 같은 행을 제거합니다.

같지 않음

숫자, 텍스트

바이너리, 범주형

의 값이 지정한 값과 같지 않은 행을 제거합니다.

보다 작음

숫자

N/A

열의 값이 지정한 값보다 작은 행을 제거합니다.

보다 작거나 같음

숫자

N/A

의 값이 지정된 값보다 작거나 같은 행을 제거합니다.

보다 큼

숫자

N/A

열의 값이 지정한 값보다 큰 행을 제거합니다.

보다 크거나 같음

숫자

N/A

의 값이 지정된 값과 같거나 큰 행을 제거합니다.

사이에 있음

숫자

N/A

의 값이 지정한 두 값 사이에 있거나 같은 행을 제거합니다.

포함

텍스트

범주형

의 값에 지정한 값이 포함된 행을 제거합니다.

다음으로 시작

텍스트

범주형

의 값이 지정한 값으로 시작하는 행을 제거합니다.

다음으로 종료

텍스트

범주형

의 값이 지정한 값으로 끝나는 행을 제거합니다.

데이터세트에서 행을 제거한 후 SageMaker Canvas는 모델 레시피 섹션에 변환을 추가합니다. 모델 레시피 섹션에서 변환을 제거하면 행이 데이터 세트로 돌아갑니다.

SageMaker Canvas 애플리케이션에서의 사용자 지정 값으로 행 제거 작업의 스크린샷

열 이름 변경하기

열 이름 변경하기 변환을 사용하여 데이터의 열 이름을 바꿀 수 있습니다. 열 이름을 바꾸면 SageMaker Canvas는 모델 입력의 열 이름을 변경합니다.

SageMaker Canvas 애플리케이션의 Build 탭에서 열 이름을 두 번 클릭하고 새 이름을 입력하여 데이터셋의 열 이름을 바꿀 수 있습니다. Enter 키를 누르면 변경 내용이 제출되고 입력 외부의 아무 곳이나 클릭하면 변경이 취소됩니다. 목록 보기의 행 끝이나 표 보기의 머리글 셀 끝에 있는 추가 옵션 아이콘( More options icon at the end of a row. )을 클릭하고 이름 변경하기를 선택하여 열 이름을 바꿀 수도 있습니다.

열 이름은 32자를 초과하거나 이중 밑줄(__)을 사용할 수 없으며 열 이름을 다른 열과 같은 이름으로 바꿀 수 없습니다. 삭제한 열의 이름도 바꿀 수 없습니다.

다음 스크린샷은 열 이름을 두 번 클릭하여 열 이름을 바꾸는 방법을 보여줍니다.

Canvas 애플리케이션에서 더블 클릭 방식으로 열 이름을 바꾸는 스크린샷. SageMaker

열 이름을 바꾸면 SageMaker Canvas는 모델 레시피 섹션에 변환을 추가합니다. 모델 레시피 섹션에서 변환을 제거하면 열이 원래 이름으로 되돌아갑니다.

열 관리

다음 변환을 사용하여 열의 데이터 유형을 변경하고 특정 열의 누락된 값이나 이상값을 바꿀 수 있습니다. SageMaker Canvas는 모델을 만들 때 업데이트된 데이터 유형이나 값을 사용하지만 원본 데이터셋은 변경하지 않습니다. 열 삭제 변환을 사용하여 데이터 세트에서 열을 삭제한 경우 해당 열의 값을 바꿀 수 없다는 점에 유의하세요.

누락된 값 바꾸기

누락된 값은 기계 학습 데이터 세트에서 흔히 발생하며 모델 정확도에 영향을 미칠 수 있습니다. 누락된 값이 있는 행을 삭제하도록 선택할 수 있지만, 대신 누락된 값을 바꾸면 모델의 정확도가 향상됩니다. 이 변환을 사용하면 숫자 열의 누락된 값을 열에 있는 데이터의 평균 또는 중앙값으로 바꾸거나 누락된 값을 대체할 사용자 지정 값을 지정할 수도 있습니다. 숫자가 아닌 열의 경우 누락된 값을 열의 모드(가장 일반적인 값) 또는 사용자 지정 값으로 바꿀 수 있습니다.

특정 열의 null 값이나 빈 값을 바꾸려면 이 변환을 사용하세요. 지정된 열에서 누락된 값을 바꾸려면 다음을 수행하세요.

  1. SageMaker Canvas 애플리케이션의 Build 탭에서 열 관리를 선택합니다.

  2. 누락된 값 바꾸기를 선택합니다.

  3. 누락된 값을 대체하려는 을 선택합니다.

  4. 누락된 값을 지정한 값으로 바꾸려면 모드수동으로 설정합니다. 자동 (기본값) 설정을 사용하면 SageMaker Canvas는 누락된 값을 데이터에 가장 적합한 귀속 값으로 바꿉니다. 수동 모드를 지정하지 않는 한 이 산입 메서드는 각 모델 빌드마다 자동으로 수행됩니다.

  5. 바꿀 값을 설정합니다.

    • 열이 숫자인 경우 평균, 중앙값 또는 사용자 지정을 선택합니다. 평균은 누락된 값을 열의 평균으로 바꾸고, 중앙값은 누락된 값을 열의 중앙값으로 바꿉니다. 사용자 지정을 선택한 경우 누락값을 대체하는 데 사용할 사용자 지정 값을 지정해야 합니다.

    • 열이 숫자가 아닌 경우 모드 또는 사용자 지정을 선택합니다. 모드는 누락된 값을 열의 모드 또는 가장 일반적인 값으로 대체합니다. 사용자 지정의 경우 누락된 값을 대체하는 데 사용할 사용자 지정 값을 지정합니다.

  6. 추가를 선택하여 모델 레시피에 변환을 추가합니다.

데이터세트에서 누락된 값을 바꾼 후 SageMaker Canvas는 모델 레시피 섹션에 변환을 추가합니다. 모델 레시피 섹션에서 변환을 제거하면 누락된 값이 데이터 세트로 돌아갑니다.

SageMaker Canvas 애플리케이션의 누락된 값 바꾸기 작업 스크린샷

이상값 바꾸기

데이터 분포 및 범위에서 특이치나 희소한 값이 있으면 모델 정확도에 부정적인 영향을 미치고 작성 시간이 길어질 수 있습니다. SageMaker Canvas를 사용하면 숫자 열에서 이상치를 탐지하고 이상치를 데이터에서 허용되는 범위 내에 있는 값으로 바꿀 수 있습니다. 이상값을 표준 편차 또는 사용자 지정 범위로 정의하도록 선택할 수 있으며, 이상값을 허용 범위의 최소값 및 최대값으로 바꿀 수 있습니다.

데이터의 이상값을 바꾸려면 다음을 수행하세요.

  1. SageMaker Canvas 애플리케이션의 Build 탭에서 열 관리를 선택합니다.

  2. 이상값 바꾸기를 선택합니다.

  3. 이상값을 대체하려는 을 선택합니다.

  4. 이상값 정의에서 표준 편차, 사용자 지정 숫자 범위 또는 사용자 지정 분위수 범위를 선택합니다.

  5. 표준 편차를 선택하는 경우 표준 편차(표준 편차) 값을 1-3 사이로 지정하세요. 사용자 지정 숫자 범위 또는 사용자 지정 분위수 범위를 선택하는 경우 최소값최대값(숫자 범위의 경우 숫자, 분위수 범위의 경우 0~ 100% 사이의 백분위수)을 지정합니다.

  6. 바꾸기에 대해 최소/최대 범위를 선택합니다.

  7. 추가를 선택하여 모델 레시피에 변환을 추가합니다.

표준 편차 옵션은 평균과 표준 편차를 사용하여 숫자 열의 이상값을 탐지합니다. 값이 이상값으로 간주되기 위해 평균과 달라야 하는 표준 편차 수를 지정합니다. 예를 들어, 표준 편차로 3을 지정하는 경우 값이 평균에서 3 표준 편차 이상 떨어져야 특이치로 간주됩니다. SageMaker Canvas는 이상치를 허용 범위 내의 최소값 또는 최대값으로 바꿉니다. 예를 들어 200~300의 값만 포함하도록 표준 편차를 구성하면 SageMaker Canvas는 198을 200 (최소값) 으로 변경합니다.

사용자 지정 숫자 범위사용자 지정 분위수 범위 옵션은 최소값과 최대값을 사용하여 숫자 열의 이상값을 감지합니다. 이상값을 구분하는 임계값을 알고 있는 경우 이 방법을 사용하세요. 숫자 범위를 선택하는 경우 최소값과 최대값은 허용하려는 최소최대 숫자값이어야 합니다. SageMaker 캔버스는 최소값 및 최대값을 벗어나는 모든 값을 최소값과 최대값으로 바꿉니다. 예를 들어 범위에 1—100 사이의 값만 허용하는 경우 SageMaker Canvas는 값을 102에서 100 (최대값) 으로 변경합니다. 분위수 범위를 선택하는 경우 최소값최대값은 허용하려는 백분위수 범위(0~100)의 최소값 및 최대값이어야 합니다.

데이터셋의 값을 바꾼 후 SageMaker Canvas는 모델 레시피 섹션에 변환을 추가합니다. 모델 레시피 섹션에서 변환을 제거하면 원래 값이 데이터 세트로 돌아갑니다.

Canvas 애플리케이션의 이상치 바꾸기 작업 스크린샷 SageMaker

데이터 유형 변경

SageMaker Canvas를 사용하면 열의 데이터 유형을 숫자, 텍스트, 날짜/시간 사이에서 변경하는 동시에 해당 데이터 유형에 대한 관련 피처 유형도 표시할 수 있습니다. 데이터 유형은 데이터 형식 및 저장 방식을 의미하고, 기능 유형은 바이너리 또는 범주형과 같은 기계 학습 알고리즘에 사용되는 데이터의 기능을 나타냅니다. 이를 통해 기능에 따라 열의 데이터 유형을 수동으로 변경할 수 있는 유연성이 제공됩니다. 올바른 데이터 유형을 선택할 수 있는 기능은 모델을 구축하기 전에 데이터 무결성과 정확성을 보장합니다. 이러한 데이터 유형은 모델을 구축할 때 사용됩니다.

참고

현재는 기능 유형을 변경(예: 바이너리에서 범주형으로)하는 것은 지원되지 않습니다.

다음 표에는 Canvas에서 지원되는 데이터 유형 매핑이 나와 있습니다.

데이터 유형 설명

숫자

숫자 데이터는 숫자 값을 나타냅니다.

1, 2, 3

1.1, 1.2. 1.3

텍스트

텍스트 데이터는 이름이나 설명과 같은 일련의 문자를 나타냅니다.

A, B, C, D

사과, 바나나, 오렌지

1A!, 2A!, 3A!

날짜시간

날짜/시간 데이터는 날짜와 시간을 타임스탬프 형식으로 나타냅니다.

2019-07-01 01:00:00, 2019-07-01 02:00:00, 2019-07-01 03:00:00

다음 표에는 Canvas에서 지원되는 모든 기능 유형이 나열되어 있습니다.

기능 유형 설명

바이너리

바이너리 특징은 두 가지 가능한 값을 나타냅니다.

0, 1, 0, 1, 0 (2개의 고유 값)

참, 거짓, 참 (개별 값 2개)

범주형

범주형 기능은 고유한 범주 또는 그룹을 나타냅니다.

사과, 바나나, 오렌지, 사과 (3개의 고유한 값)

A, B, C, D, E, A, D, C (5개의 고유한 값)

데이터 세트에서 열의 데이터 유형을 수정하려면 다음을 수행하세요.

  1. SageMaker Canvas 애플리케이션의 빌드 탭에서 열 보기 또는 그리드 보기로 이동하여 특정 열의 데이터 유형 드롭다운을 선택합니다.

  2. 데이터 유형 드롭다운에서 변환할 데이터 유형을 선택합니다. 다음 스크린샷은 드롭다운 메뉴를 보여줍니다.

    Canvas에서 모델 빌드를 위한 빌드 탭에 표시된 열의 데이터 유형 변환 드롭다운 메뉴 스크린샷입니다.
  3. 의 경우 데이터 유형을 변경하려는 열을 선택하거나 확인합니다.

  4. 새 데이터 유형에서 변환하려는 새 데이터 유형을 선택하거나 확인합니다.

  5. 새 데이터 유형Datetime또는 Numeric인 경우 잘못된 값 처리에서 다음 옵션 중 하나를 선택합니다.

    1. 빈 값으로 바꾸기 - 잘못된 값은 빈 값으로 대체됩니다.

    2. 행 삭제 - 잘못된 값이 있는 행이 데이터 세트에서 제거됩니다.

    3. 사용자 지정 값으로 바꾸기 - 잘못된 값은 지정한 사용자 지정 값으로 대체됩니다.

  6. 추가를 선택하여 모델 레시피에 변환을 추가합니다.

이제 열의 데이터 유형이 업데이트되어야 합니다.

시계열 데이터 준비

시계열 예측 모델을 구축하기 위해 시계열 데이터를 준비하려면 다음 기능을 사용하세요.

시계열 데이터 리샘플링

시계열 데이터를 리샘플링하여 시계열 데이터 세트의 관측치에 대해 일정한 간격을 설정할 수 있습니다. 이는 불규칙한 간격의 관측치를 포함하는 시계열 데이터로 작업할 때 특히 유용합니다. 예를 들어, 리샘플링을 사용하여 1시간, 2시간, 3시간 간격으로 기록된 관측값이 있는 데이터 세트를 1시간 간격으로 일정한 관측치 간 간격으로 변환할 수 있습니다. 예측 알고리즘을 사용하려면 일정한 간격으로 관측치를 수집해야 합니다.

시계열 데이터를 리샘플링하려면 다음을 수행하세요.

  1. SageMaker Canvas 애플리케이션의 Build 탭에서 시계열을 선택합니다.

  2. 리샘플링을 선택합니다.

  3. 타임스탬프 열의 경우 변환을 적용할 열을 선택합니다. 날짜/시간 유형의 열만 선택할 수 있습니다.

  4. 빈도 설정 섹션에서 빈도비율을 선택합니다. 주파수는 주파수 단위이고 비율은 열에 적용할 주파수 단위 간격입니다. 예를 들어 빈도 값으로 Calendar Day을 선택하고 비율1을 선택하면 간격이 달력일 기준 1일마다 증가하도록 설정됩니다(예: 2023-03-26 00:00:00,2023-03-27 00:00:00,2023-03-28 00:00:00). 빈도 값의 전체 목록은 이 절차 다음에 나오는 테이블을 참조하세요.

  5. 추가를 선택하여 모델 레시피에 변환을 추가합니다.

다음 테이블에는 시계열 데이터를 리샘플링할 때 선택할 수 있는 모든 빈도 유형이 나와 있습니다.

빈도 설명 예제 값 (비율이 1이라고 가정)

영업일

날짜/시간 열의 관측치를 영업일 기준 5일(월요일, 화요일, 수요일, 목요일, 금요일)로 리샘플링합니다.

2023-03-24 00:00:00

2023-03-27 00:00:00

2023-03-28 00:00:00

2023-03-29 00:00:00

2023-03-30 00:00:00

2023-03-31 00:00:00

2023-04-03 00:00:00

역일

날짜/시간 열의 관측치를 전체 7일(월요일, 화요일, 수요일, 목요일, 금요일, 토요일, 일요일)로 리샘플링합니다.

2023-03-26 00:00:00

2023-03-27 00:00:00

2023-03-28 00:00:00

2023-03-29 00:00:00

2023-03-30 00:00:00

2023-03-31 00:00:00

2023-04-01 00:00:00

날짜/시간 열의 관측치를 매주 첫째 날로 리샘플링합니다.

2023-03-13 00:00:00

2023-03-20 00:00:00

2023-03-27 00:00:00

2023-04-03 00:00:00

날짜/시간 열의 관측치를 해당 월의 첫 번째 날로 리샘플링합니다.

2023-03-01 00:00:00

2023-04-01 00:00:00

2023-05-01 00:00:00

2023-06-01 00:00:00

연간 분기

날짜/시간 열의 관측치를 각 분기의 마지막 날로 리샘플링합니다.

2023-03-31 00:00:00

2023-06-30 00:00:00

2023-09-30 00:00:00

2023-12-31 00:00:00

연도

날짜/시간 열의 관측치를 매년 마지막 날로 리샘플링합니다.

2022-12-31 0:00:00

2023-12-31 00:00:00

2024-12-31 00:00:00

시간

날짜/시간 열의 관측치를 매일 각 시간에 리샘플링합니다.

2023-03-24 00:00:00

2023-03-24 01:00:00

2023-03-24 02:00:00

2023-03-24 03:00:00

날짜/시간 열의 관측치를 각 시간의 분 단위로 재샘플링합니다.

2023-03-24 00:00:00

2023-03-24 00:01:00

2023-03-24 00:02 00:02:00

2023-03-24 00:03:00

날짜/시간 열의 관측치를 매 분의 초 단위로 재샘플링합니다.

2023-03-24 00:00:00

2023-03-24 00:00:01

2023-03-24 00:00:02

2023-03-24 00:00:03

리샘플링 변환을 적용할 때 고급 옵션을 사용하여 데이터 세트의 나머지 열(타임스탬프 열 제외)의 결과 값이 수정되는 방식을 지정할 수 있습니다. 이는 숫자 열과 숫자가 아닌 열 모두에 대해 다운샘플링 또는 업샘플링할 수 있는 리샘플링 방법을 지정하여 달성할 수 있습니다.

다운샘플링은 데이터 세트의 관측 간격을 늘립니다. 예를 들어, 1시간 또는 2시간마다 실시되던 관측을 다운샘플링하면 데이터 세트의 각 관측치를 2시간마다 추출합니다. 시간별 관측치의 다른 열 값은 조합 방법을 사용하여 단일 값으로 집계됩니다. 다음 테이블에서는 평균을 조합 메서드로 사용하여 시계열 데이터를 다운샘플링하는 예제를 볼 수 있습니다. 데이터는 2시간 간격에서 1시간 간격으로 다운샘플링됩니다.

다음 테이블은 다운샘플링 전 하루 동안의 시간별 온도 판독값을 보여줍니다.

Timestamp 온도 (섭씨)

오후 12시

30

오전 1시

32

오전 2시

35

오전 3시

32

오전 4시

30

다음 테이블은 2시간마다 다운샘플링한 후의 온도 판독값을 보여줍니다.

Timestamp 온도 (섭씨)

오후 12시

30

오전 2시

33.5

오전 2시

35

오전 4시

32.5

시계열 데이터를 다운샘플링하려면 다음을 수행합니다.

  1. 리샘플링 변환 아래의 고급 섹션을 확장하세요.

  2. 숫자가 아닌 열의 조합 방법을 지정하려면 숫자가 아닌 조합을 선택합니다. 조합 방법의 전체 목록은 아래 테이블을 참조하세요.

  3. 숫자 열의 조합 방법을 지정하려면 숫자 조합을 선택합니다. 조합 메서드의 전체 목록은 아래 테이블을 참조하세요.

조합 방법을 지정하지 않는 경우 기본값은 숫자가 아닌 조합의 경우 Most Common, 숫자 조합의 경우 Mean입니다. 다음 표에는 숫자 및 숫자가 아닌 조합 메서드가 나열되어 있습니다.

다운샘플링 방법론 조합 메서드 설명

숫자가 아닌 조합

가장 일반적

숫자가 아닌 열의 값을 가장 일반적으로 발생하는 값으로 집계합니다.

숫자가 아닌 조합

마지막

숫자가 아닌 열의 값을 열의 마지막 값으로 집계합니다.

숫자가 아닌 조합

첫 번째

숫자가 아닌 열의 값을 열의 첫 번째 값으로 집계합니다.

숫자 조합

평균

열에 있는 모든 값의 평균을 구하여 숫자 열의 값을 집계합니다.

숫자 조합

중간

열에 있는 모든 값의 중앙값을 취하여 숫자 열의 값을 집계합니다.

숫자 조합

최소

열에 있는 모든 값의 최소값을 취하여 숫자 열의 값을 집계합니다.

숫자 조합

최대

열에 있는 모든 값의 최대값을 취하여 숫자 열의 값을 집계합니다.

숫자 조합

Sum

열의 모든 값을 더하여 숫자 열의 값을 집계합니다.

숫자 조합

분위수

열에 있는 모든 값의 분위수를 취하여 숫자 열의 값을 집계합니다.

업샘플링은 데이터 세트의 관측 간격이 줄입니다. 예를 들어, 2시간마다 수집되던 관측치를 시간별로 업샘플링하는 경우 시간당 관측치의 다른 열 값은 2시간마다 수집된 관측치에서 보간됩니다.

시계열 데이터를 업샘플링하려면 다음을 수행합니다.

  1. 리샘플링 변환 아래의 고급 섹션을 확장하세요.

  2. 숫자가 아닌 열에 대한 추정 방법을 지정하려면 숫자가 아닌 추정을 선택합니다. 전체 방법 목록은 이 절차 다음에 나오는 테이블을 참조하세요.

  3. 숫자 열에 대한 추정 방법을 지정하려면 숫자 추정을 선택합니다. 전체 메서드 목록은 아래 테이블을 참조하세요.

  4. (선택 사항) ID 열을 선택하여 시계열의 관측치 ID가 있는 열을 지정합니다. 데이터 세트에 두 개의 시계열이 있는 경우 이 옵션을 지정하세요. 하나의 시계열만 나타내는 열이 있는 경우 이 필드에 값을 지정하지 마세요. 예를 들어 id열과 purchase이 있는 데이터 세트가 있을 수 있습니다. id 열의 값은 [1, 2, 2, 1]과 같습니다. purchase 열의 값은 [$2, $3, $4, $1]과 같습니다. 따라서 데이터 세트에는 시계열이 두 개 있습니다.한 시계열은 1: [$2, $1]이고 다른 시계열은 2: [$3, $4]입니다.

추정 방법을 지정하지 않는 경우 기본값은 숫자가 아닌 추정Forward Fill, 숫자 추정의 경우 Linear입니다. 다음 테이블에는 추정 방법이 나열되어 있습니다.

업샘플링 방법론 추정 방법 설명

숫자가 아닌 추정

전방 채우기

숫자가 아닌 열의 모든 값 뒤에 연속된 값을 취하여 숫자가 아닌 열의 값을 보간합니다.

숫자가 아닌 추정

역방향 채우기

숫자가 아닌 열의 모든 값 앞에 연속된 값을 사용하여 값을 보간합니다.

숫자가 아닌 추정

계속 누락

숫자가 아닌 열의 값을 빈 값으로 표시하여 보간합니다.

숫자 추정

선형, 시간, 지수, 0, S-선형, 최근접, 2차, 3차, 무게 중심, 다항식, 크로그, 구간별 다항식, 스플라인, P-칩, 아키마, 3차 스플라인, 도함수로부터

지정된 보간기를 사용하여 숫자 열의 값을 보간합니다. 보간 방법에 대한 자세한 내용은 판다를 참조하십시오. DataFrame.interpolate는 팬더 설명서를 참조하십시오.

다음 스크린샷은 다운샘플링 및 업샘플링 필드가 채워진 고급 설정을 보여줍니다.

시계열 리샘플링 측면 패널에 고급 옵션이 표시된 Canvas 애플리케이션의 스크린샷입니다.

날짜/시간 추출 사용

날짜/시간 추출 변환을 사용하면 날짜/시간 열에서 별도의 열로 값을 추출할 수 있습니다. 예를 들어 구매 날짜가 포함된 열이 있는 경우 월 값을 별도의 열로 추출하여 모델을 생성할 때 새 열을 사용할 수 있습니다. 단일 변환으로 여러 값을 추출하여 별도의 열로 만들 수도 있습니다.

날짜/시간 열은 지원되는 타임스탬프 형식을 사용해야 합니다. Canvas에서 지원하는 SageMaker 형식 목록은 을 참조하십시오. Amazon SageMaker 캔버스의 시계열 예측 데이터세트가 지원되는 형식 중 하나를 사용하지 않는 경우, 지원되는 타임스탬프 형식을 사용하도록 데이터세트를 업데이트하고 모델을 빌드하기 전에 Amazon SageMaker Canvas로 다시 가져오십시오.

날짜/시간 추출을 수행하려면 다음을 수행하세요.

  1. SageMaker Canvas 애플리케이션의 Build 탭에 있는 변환 표시줄에서 모두 보기를 선택합니다.

  2. 추출 기능을 선택합니다.

  3. 값을 추출하려는 타임스탬프 열을 선택합니다.

  4. 의 경우 열에서 추출할 값을 하나 이상 선택합니다. 타임스탬프 열에서 추출할 수 있는 값은 , , , 시간, 연중 주, 연중 요일, 분기입니다.

  5. (선택 사항) 미리 보기를 선택하여 변환 결과를 미리 볼 수 있습니다.

  6. 추가를 선택하여 모델 레시피에 변환을 추가합니다.

SageMaker Canvas는 추출한 각 값에 대해 데이터세트에 새 열을 생성합니다. 연도 값을 제외하고 SageMaker Canvas는 추출된 값에 0 기반 인코딩을 사용합니다. 예를 들어 값을 추출하면 1월은 0으로 추출되고 2월은 1로 추출됩니다.

SageMaker Canvas 애플리케이션의 날짜/시간 추출 상자 스크린샷.

모델 레시피 섹션에 나열된 변환을 볼 수 있습니다. 모델 레시피 섹션에서 변환을 제거하면 데이터 세트에서 새 열이 제거됩니다.