기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
모델 구축을 위한 데이터 준비
참고
이제 SageMaker Canvas with Data Wrangler에서 고급 데이터 준비를 수행할 수 있습니다. 이를 통해 자연어 인터페이스와 300개 이상의 기본 제공 변환이 제공됩니다. 자세한 내용은 데이터 준비 단원을 참조하십시오.
모델을 구축하기 전에 기계 학습 데이터 세트에 데이터 준비가 필요할 수 있습니다. 누락된 값이나 이상값을 포함할 수 있는 다양한 문제로 인해 데이터를 정리하고 특성 추출을 수행하여 모델의 정확도를 향상시킬 수 있습니다. Amazon SageMaker Canvas는 모델 구축을 위해 데이터를 정리, 변환 및 준비할 수 있는 ML 데이터 변환을 제공합니다. 코드 없이 데이터 세트에서 이러한 변환을 사용할 수 있습니다. SageMaker Canvas는 모델을 빌드하기 전에 데이터에 대해 수행된 데이터 준비의 레코드인 모델 레시피에 사용하는 변환을 추가합니다. 사용하는 모든 데이터 변환은 모델 구축을 위한 입력 데이터만 수정하고 원본 데이터 소스는 수정하지 않습니다.
데이터 세트 미리보기에는 데이터 세트의 처음 100개 행이 표시됩니다. 데이터 세트의 행이 20,000개를 초과하는 경우 Canvas는 20,000개 행의 무작위 표본을 추출하여 해당 샘플에서 처음 100개 행을 미리 봅니다. 미리보기 된 행에서만 값을 검색하고 지정할 수 있으며, 필터 기능은 미리보기 된 행만 필터링하고 전체 데이터 세트는 필터링하지 않습니다.
Canvas에서 다음 변환을 사용하여 데이터를 빌드할 SageMaker 수 있습니다.
참고
테이블 형식 데이터 세트를 기반으로 구축된 모델에는 고급 변환만 사용할 수 있습니다. 다중 카테고리 텍스트 예측 모델도 제외됩니다.
열 삭제
SageMaker Canvas 애플리케이션의 빌드 탭에서 열을 삭제하여 모델 빌드에서 열을 제외할 수 있습니다. 삭제하려는 열을 선택 취소하면 모델을 빌드할 때 해당 열이 포함되지 않습니다.
참고
열을 삭제한 다음 모델을 사용하여 배치 예측을 수행하는 경우 SageMaker Canvas는 삭제된 열을 다시 다운로드 가능한 출력 데이터 세트에 추가합니다. 그러나 SageMaker Canvas는 시계열 모델에 대해 삭제된 열을 다시 추가하지 않습니다.
행 필터링
필터 기능은 사용자가 지정한 조건에 따라 미리보기 된 행(데이터 세트의 처음 100개 행)을 필터링합니다. 행을 필터링하면 데이터의 임시 미리보기가 생성되며 모델 구축에는 영향을 주지 않습니다. 누락된 값이 있거나, 이상값을 포함하거나, 선택한 열에서 사용자 지정 조건을 충족하는 행을 필터링하여 미리 볼 수 있습니다.
누락된 값을 기준으로 행 필터링
누락된 값은 기계 학습 데이터 세트에서 흔히 발생합니다. 특정 열에 값이 null 또는 빈 값이 있는 이 있는 경우 해당 행을 필터링하고 미리 볼 수 있습니다.
미리보기 된 데이터에서 누락된 값을 필터링하려면 다음을 수행합니다.
-
SageMaker Canvas 애플리케이션의 빌드 탭에서 행으로 필터링()을 선택합니다 .
-
누락된 값이 있는지 확인하려는 열을 선택합니다.
-
작업에서 누락을 선택합니다.
SageMaker Canvas는 선택한 열에 누락된 값이 포함된 행을 필터링하고 필터링된 행의 미리 보기를 제공합니다.
이상값을 기준으로 행 필터링
이상치 또는 데이터 분포 및 범위의 드문 값은 모델 정확도에 부정적인 영향을 미치고 구축 시간이 길어질 수 있습니다. SageMaker 캔버스를 사용하면 숫자 열에 이상치가 포함된 행을 감지하고 필터링할 수 있습니다. 표준 편차 또는 사용자 지정 범위로 이상값을 정의하도록 선택할 수 있습니다.
데이터의 이상값을 필터링하려면 다음을 수행합니다.
-
SageMaker Canvas 애플리케이션의 빌드 탭에서 행 필터링()을 선택합니다 .
-
이상값을 확인하려는 열을 선택합니다.
-
연산에서 이상값을 선택합니다.
-
이상값 범위를 표준 편차 또는 사용자 지정 범위로 설정합니다.
-
표준 편차)를 선택하는 경우 SD(표준 편차) 값을 1~3으로 지정하세요. 사용자 지정 범위를 선택하는 경우 백분위수 또는 숫자를 선택한 다음 최소값과 최대값을 지정합니다.
표준 편차 옵션은 평균과 표준 편차를 사용하여 숫자 열의 이상값을 탐지하고 필터링합니다. 값이 이상값으로 간주되기 위해 평균과 달라야 하는 표준 편차 수를 지정합니다. 예를 들어 SD를 지정하는 3
경우 값이 평균에서 3 표준 편차 이상 떨어져야 이상값으로 간주됩니다.
사용자 지정 범위 옵션은 최소값과 최대값을 사용하여 숫자 열의 이상값을 탐지하고 필터링합니다. 이상값을 구분하는 임곗값을 알고 있는 경우 이 방법을 사용하세요. 범위 유형을 백분위수 또는 숫자로 설정할 수 있습니다. 백분위수를 선택하는 경우 최소값과 최대값은 허용하려는 백분위수 범위(0-100)의 최소값과 최대값이어야 합니다. 숫자를 선택하는 경우 최소값과 최대값은 데이터에서 필터링하려는 최소 및 최대 숫자 값이어야 합니다.
사용자 지정 값을 기준으로 행 필터링
사용자 지정 조건에 맞는 값이 있는 행을 필터링할 수 있습니다. 예를 들어 가격 값이 100보다 큰 행을 제거하기 전에 미리 볼 수 있습니다. 이 기능을 사용하면 설정한 임곗값을 초과하는 행을 필터링하고 필터링된 데이터를 미리 볼 수 있습니다.
사용자 지정 필터 기능을 사용하려면 다음을 수행합니다.
-
SageMaker Canvas 애플리케이션의 빌드 탭에서 행 기준 필터링()을 선택합니다 .
-
확인하려는 열을 선택합니다.
-
사용할 작업 유형을 선택한 다음 선택한 조건의 값을 지정합니다.
작업의 경우, 다음 옵션 중 하나를 선택할 수 있습니다. 사용 가능한 작업은 선택한 열의 데이터 유형에 따라 다릅니다. 예를 들어, 텍스트 값이 포함된 열에 대해서는 is greater than
작업을 생성할 수는 없습니다.
Operation | 지원되는 데이터 유형 | 지원되는 기능 유형 | 함수 |
---|---|---|---|
같음 |
숫자, 텍스트 |
바이너리, 범주형 |
열의 값이 지정한 값과 같은 행을 필터링합니다. |
같지 않음 |
숫자, 텍스트 |
바이너리, 범주형 |
열의 값이 지정한 값과 같지 않은 행을 필터링합니다. |
보다 작음 |
숫자 |
N/A |
열의 값이 지정한 값보다 작은 행을 필터링합니다. |
보다 작거나 같음 |
숫자 |
N/A |
열의 값이 지정된 값보다 작거나 같은 행을 필터링합니다. |
보다 큼 |
숫자 |
N/A |
열의 값이 지정한 값보다 큰 행을 필터링합니다. |
보다 크거나 같음 |
숫자 |
N/A |
열의 값이 지정된 값과 같거나 큰 행을 필터링합니다. |
사이에 있음 |
숫자 |
N/A |
열의 값이 지정한 두 값 사이에 있거나 같은 행을 필터링합니다. |
포함 |
텍스트 |
범주형 |
열의 값에 지정한 값이 포함된 행을 필터링합니다. |
다음으로 시작 |
텍스트 |
범주형 |
열의 값이 지정한 값으로 시작하는 행을 필터링합니다. |
다음으로 종료 |
범주형 |
범주형 |
열의 값이 지정한 값으로 끝나는 행을 필터링합니다. |
필터 작업을 설정한 후 SageMaker 캔버스는 데이터 세트의 미리 보기를 업데이트하여 필터링된 데이터를 표시합니다.
함수 및 연산자
수학 함수와 연산자를 사용하여 데이터를 탐색하고 배포할 수 있습니다. SageMaker Canvas 지원 함수를 사용하거나 기존 데이터로 자체 공식을 생성하고 공식 결과로 새 열을 생성할 수 있습니다. 예를 들어, 두 열의 해당 값을 추가하고 결과를 새 열에 저장할 수 있습니다.
문을 중첩하여 더 복잡한 함수를 만들 수 있습니다. 다음은 사용할 수 있는 중첩 함수의 몇 가지 예입니다.
-
를 계산하려면 함수 를 사용할 BMI수 있습니다
weight / (height ^ 2)
. -
Case(age < 18, 'child', age < 65, 'adult', 'senior')
함수를 사용하여 연령을 분류할 수 있습니다.
모델을 구축하기 전에 데이터 준비 단계에서 함수를 지정할 수 있습니다. 함수를 가져오려면 다음을 수행합니다.
-
SageMaker Canvas 애플리케이션의 빌드 탭에서 모두 보기를 선택한 다음 사용자 지정 수식을 선택하여 사용자 지정 수식 패널을 엽니다.
-
사용자 지정 공식 패널에서 모델 레시피에 추가할 공식을 선택할 수 있습니다. 각 공식은 지정한 열의 모든 값에 적용됩니다. 두 개 이상의 열을 인수로 수락하는 수식의 경우 일치하는 데이터 유형이 있는 열을 사용합니다. 그렇지 않으면 새 열에 오류 또는
null
값이 표시됩니다. -
수식 를 지정한 후 새 열 이름 필드에 열 이름을 추가합니다. SageMaker 캔버스는 생성된 새 열에 이 이름을 사용합니다.
(선택 사항) 미리보기를 선택하여 변환을 미리 볼 수 있습니다.
-
모델 레시피에 함수를 추가하려면 추가를 선택합니다.
SageMaker Canvas는 새 열 이름 에 지정한 이름을 사용하여 함수 결과를 새 열에 저장합니다. 모델 레시피 패널에서 함수를 보거나 제거할 수 있습니다.
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 |
지정된 값 또는 조건 중 하나가 true인지 여부의 부울 값을 반환합니다. |
불 |
Or(fullprice, discount) |
fullprice || discount |
And |
지정된 값 또는 조건 중 두 개가 true인지 여부의 부울 값을 반환합니다. |
불 |
And(sales1,sales2) |
sales1 && sales2 |
Not |
지정된 값 또는 조건의 반대인 부울 값을 반환합니다. |
불 |
Not(sales1) |
!sales1 |
Case |
조건문을 기반으로 부울 값을 반환합니다(cond1이 true인 경우 c1을 반환하고 cond2가 true인 경우 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) |
행 관리
행 관리 변환을 사용하면 데이터 세트에서 데이터 행을 정렬, 무작위 섞기 및 제거할 수 있습니다.
행 정렬
특정 열을 기준으로 데이터 세트의 행을 정렬하려면 다음을 수행합니다.
-
SageMaker Canvas 애플리케이션의 빌드 탭에서 행 관리를 선택한 다음 행 정렬을 선택합니다.
-
열 정렬의 경우 정렬 기준으로 사용할 열을 선택합니다.
-
정렬 순서에서 오름차순 또는 내림차순을 선택합니다.
-
추가를 선택하여 모델 레시피에 변환을 추가합니다.
행 섞기
데이터 세트에서 행을 임의로 섞으려면 다음을 수행합니다.
-
SageMaker Canvas 애플리케이션의 빌드 탭에서 행 관리를 선택한 다음 행 셔플을 선택합니다.
-
추가를 선택하여 모델 레시피에 변환을 추가합니다.
중복 행 삭제
데이터 세트에서 중복된 행을 제거하려면 다음을 수행합니다.
-
SageMaker Canvas 애플리케이션의 빌드 탭에서 행 관리를 선택한 다음 중복 행 삭제를 선택합니다.
-
추가를 선택하여 모델 레시피에 변환을 추가합니다.
누락된 값이 있는 행 제거
누락된 값은 기계 학습 데이터 세트에서 흔히 발생하며 모델 정확도에 영향을 미칠 수 있습니다. 특정 열에 null 또는 비어 있는 값이 있는 행을 삭제하려면 이 변환을 사용하세요.
지정된 열에 누락된 값이 포함된 행을 제거하려면 다음을 수행합니다.
-
SageMaker Canvas 애플리케이션의 빌드 탭에서 행 관리를 선택합니다.
누락된 값을 기준으로 행 삭제를 선택합니다.
-
추가를 선택하여 모델 레시피에 변환을 추가합니다.
SageMaker Canvas는 선택한 열에 누락된 값이 포함된 행을 삭제합니다. 데이터 세트에서 행을 제거한 후 SageMaker 캔버스는 모델 레시피 섹션에 변환을 추가합니다. 모델 레시피 섹션에서 변환을 제거하면 행이 데이터 세트로 돌아갑니다.
이상값을 기준으로 행 제거
데이터 분포 및 범위의 이상값 또는 희귀한 값은 모델 정확도에 부정적인 영향을 미치고 구축 시간을 연장할 수 있습니다. SageMaker Canvas를 사용하면 숫자 열에 이상치가 포함된 행을 감지하고 제거할 수 있습니다. 표준 편차 또는 사용자 지정 범위로 이상값을 정의하도록 선택할 수 있습니다.
데이터에서 이상값을 제거하려면 다음을 수행하세요.
-
SageMaker Canvas 애플리케이션의 빌드 탭에서 행 관리를 선택합니다.
이상값을 기준으로 행 삭제를 선택합니다.
-
이상값을 확인하려는 열을 선택합니다.
-
연산자를 표준 편차, 사용자 지정 숫자 범위 또는 사용자 지정 분위수 범위로 설정합니다.
-
표준 편차를 선택하는 경우 표준 편차(표준 편차) 값을 1-3 사이로 지정하세요. 사용자 지정 숫자 범위 또는 사용자 지정 분위수 범위를 선택하는 경우 최소값과 최대값(숫자 범위의 경우 숫자, 분위수 범위의 경우 0~ 100% 사이의 백분위수)을 지정합니다.
-
추가를 선택하여 모델 레시피에 변환을 추가합니다.
표준 편차 옵션은 평균과 표준 편차를 사용하여 숫자 열의 이상값을 탐지하고 제거합니다. 값이 이상값으로 간주되기 위해 평균과 달라야 하는 표준 편차 수를 지정합니다. 예를 들어, 표준 편차를 지정하는 3
경우 값이 평균에서 3 표준 편차 이상 떨어져야 이상값으로 간주됩니다.
사용자 지정 숫자 범위 및 사용자 지정 분위수 범위 옵션은 최소값과 최대값을 사용하여 숫자 열의 이상값을 탐지하고 제거합니다. 이상값을 구분하는 임계값을 알고 있는 경우 이 방법을 사용하세요. 숫자 범위를 선택하는 경우 최소값과 최대값은 데이터에 허용하려는 최소값과 최대값이어야 합니다. 분위수 범위를 선택하는 경우 최소값과 최대값은 허용하려는 백분위수 범위(0~100)의 최소값과 최대값이어야 합니다.
데이터 세트에서 행을 제거한 후 SageMaker 캔버스는 모델 레시피 섹션에 변환을 추가합니다. 모델 레시피 섹션에서 변환을 제거하면 행이 데이터 세트로 돌아갑니다.
사용자 지정 값으로 행 제거
사용자 지정 조건에 맞는 값이 있는 행을 제거할 수 있습니다. 예를 들어 모델을 만들 때 가격 값이 100보다 큰 행을 모두 제외할 수 있습니다. 이 변환을 사용하면 설정한 임곗값을 초과하는 모든 행을 제거하는 규칙을 만들 수 있습니다.
사용자 지정 제거 변환을 사용하려면 다음을 수행합니다.
-
SageMaker Canvas 애플리케이션의 빌드 탭에서 행 관리를 선택합니다.
공식별로 행 삭제를 선택합니다.
-
확인하려는 열을 선택합니다.
-
사용할 작업 유형을 선택한 다음 선택한 조건의 값을 지정합니다.
-
추가를 선택하여 모델 레시피에 변환을 추가합니다.
작업의 경우, 다음 옵션 중 하나를 선택할 수 있습니다. 사용 가능한 작업은 선택한 열의 데이터 유형에 따라 다릅니다. 예를 들어, 텍스트 값이 포함된 열에 대해서는 is greater than
작업을 생성할 수는 없습니다.
Operation | 지원되는 데이터 유형 | 지원되는 기능 유형 | 함수 |
---|---|---|---|
같음 |
숫자, 텍스트 |
바이너리, 범주형 |
열의 값이 지정한 값과 같은 행을 제거합니다. |
같지 않음 |
숫자, 텍스트 |
바이너리, 범주형 |
열의 값이 지정한 값과 같지 않은 행을 제거합니다. |
보다 작음 |
숫자 |
N/A |
열의 값이 지정한 값보다 작은 행을 제거합니다. |
보다 작거나 같음 |
숫자 |
N/A |
열의 값이 지정된 값보다 작거나 같은 행을 제거합니다. |
보다 큼 |
숫자 |
N/A |
열의 값이 지정한 값보다 큰 행을 제거합니다. |
보다 크거나 같음 |
숫자 |
N/A |
열의 값이 지정된 값과 같거나 큰 행을 제거합니다. |
사이에 있음 |
숫자 |
N/A |
열의 값이 지정한 두 값 사이에 있거나 같은 행을 제거합니다. |
포함 |
텍스트 |
범주형 |
열의 값에 지정한 값이 포함된 행을 제거합니다. |
다음으로 시작 |
텍스트 |
범주형 |
열의 값이 지정한 값으로 시작하는 행을 제거합니다. |
다음으로 종료 |
텍스트 |
범주형 |
열의 값이 지정한 값으로 끝나는 행을 제거합니다. |
데이터 세트에서 행을 제거한 후 SageMaker 캔버스는 모델 레시피 섹션에 변환을 추가합니다. 모델 레시피 섹션에서 변환을 제거하면 행이 데이터 세트로 돌아갑니다.
열 이름 변경하기
열 이름 변경하기 변환을 사용하여 데이터의 열 이름을 바꿀 수 있습니다. 열 이름을 바꾸면 SageMaker 캔버스는 모델 입력에서 열 이름을 변경합니다.
SageMaker Canvas 애플리케이션의 빌드 탭에서 열 이름을 두 번 클릭하고 새 이름을 입력하여 데이터 세트의 열 이름을 바꿀 수 있습니다. Enter 키를 누르면 변경 내용이 제출되고 입력 외부의 아무 곳이나 클릭하면 변경이 취소됩니다. 목록 보기의 행 끝이나 표 보기의 머리글 셀 끝에 있는 추가 옵션 아이콘( )을 클릭하고 이름 변경하기를 선택하여 열 이름을 바꿀 수도 있습니다.
열 이름은 32자를 초과하거나 이중 밑줄(__)을 사용할 수 없으며 열 이름을 다른 열과 같은 이름으로 바꿀 수 없습니다. 삭제한 열의 이름도 바꿀 수 없습니다.
다음 스크린샷은 열 이름을 두 번 클릭하여 열 이름을 바꾸는 방법을 보여줍니다.
열의 이름을 바꾸면 SageMaker Canvas는 모델 레시피 섹션에 변환을 추가합니다. 모델 레시피 섹션에서 변환을 제거하면 열이 원래 이름으로 되돌아갑니다.
열 관리
다음 변환을 사용하면 열의 데이터 유형을 변경하고 특정 열의 누락된 값 또는 이상치를 대체할 수 있습니다. SageMaker 캔버스는 모델을 빌드할 때 업데이트된 데이터 유형 또는 값을 사용하지만 원래 데이터 세트는 변경하지 않습니다. 열 삭제 변환을 사용하여 데이터 세트에서 열을 삭제한 경우 해당 열의 값을 바꿀 수 없다는 점에 유의하세요.
누락된 값 바꾸기
누락된 값은 기계 학습 데이터 세트에서 흔히 발생하며 모델 정확도에 영향을 미칠 수 있습니다. 누락된 값이 있는 행을 삭제하도록 선택할 수 있지만, 대신 누락된 값을 바꾸면 모델의 정확도가 향상됩니다. 이 변환을 사용하면 숫자 열의 누락된 값을 열에 있는 데이터의 평균 또는 중앙값으로 바꾸거나 누락된 값을 대체할 사용자 지정 값을 지정할 수도 있습니다. 숫자가 아닌 열의 경우 누락된 값을 열의 모드(가장 일반적인 값) 또는 사용자 지정 값으로 바꿀 수 있습니다.
특정 열의 null 값이나 빈 값을 바꾸려면 이 변환을 사용하세요. 지정된 열에서 누락된 값을 바꾸려면 다음을 수행하세요.
-
SageMaker Canvas 애플리케이션의 빌드 탭에서 열 관리를 선택합니다.
누락된 값 바꾸기를 선택합니다.
-
누락된 값을 대체하려는 열을 선택합니다.
-
누락된 값을 지정한 값으로 바꾸려면 모드를 수동으로 설정합니다. 자동(기본값) 설정을 사용하면 SageMaker 캔버스가 누락된 값을 데이터에 가장 적합한 대체 값으로 바꿉니다. 수동 모드를 지정하지 않는 한 이 산입 메서드는 각 모델 빌드마다 자동으로 수행됩니다.
-
바꿀 값을 설정합니다.
-
열이 숫자인 경우 평균, 중앙값 또는 사용자 지정을 선택합니다. 평균은 누락된 값을 열의 평균으로 바꾸고, 중앙값은 누락된 값을 열의 중앙값으로 바꿉니다. 사용자 지정을 선택한 경우 누락값을 대체하는 데 사용할 사용자 지정 값을 지정해야 합니다.
-
열이 숫자가 아닌 경우 모드 또는 사용자 지정을 선택합니다. 모드는 누락된 값을 열의 모드 또는 가장 일반적인 값으로 대체합니다. 사용자 지정의 경우 누락된 값을 대체하는 데 사용할 사용자 지정 값을 지정합니다.
-
-
추가를 선택하여 모델 레시피에 변환을 추가합니다.
데이터 세트에서 누락된 값을 교체한 후 SageMaker 캔버스는 모델 레시피 섹션에 변환을 추가합니다. 모델 레시피 섹션에서 변환을 제거하면 누락된 값이 데이터 세트로 돌아갑니다.
이상값 바꾸기
이상치 또는 데이터 분포 및 범위의 드문 값은 모델 정확도에 부정적인 영향을 미치고 더 긴 구축 시간을 초래할 수 있습니다. SageMaker Canvas를 사용하면 숫자 열에서 이상치를 감지하고 이상치를 데이터에서 허용되는 범위 내에 있는 값으로 바꿀 수 있습니다. 이상값을 표준 편차 또는 사용자 지정 범위로 정의하도록 선택할 수 있으며, 이상값을 허용 범위의 최소값 및 최대값으로 바꿀 수 있습니다.
데이터의 이상값을 바꾸려면 다음을 수행하세요.
-
SageMaker Canvas 애플리케이션의 빌드 탭에서 열 관리를 선택합니다.
이상값 바꾸기를 선택합니다.
-
이상값을 대체하려는 열을 선택합니다.
-
이상값 정의에서 표준 편차, 사용자 지정 숫자 범위 또는 사용자 지정 분위수 범위를 선택합니다.
-
표준 편차를 선택하는 경우 표준 편차(표준 편차) 값을 1-3 사이로 지정하세요. 사용자 지정 숫자 범위 또는 사용자 지정 분위수 범위를 선택하는 경우 최소값과 최대값(숫자 범위의 경우 숫자, 분위수 범위의 경우 0~ 100% 사이의 백분위수)을 지정합니다.
-
바꾸기에 대해 최소/최대 범위를 선택합니다.
-
추가를 선택하여 모델 레시피에 변환을 추가합니다.
표준 편차 옵션은 평균과 표준 편차를 사용하여 숫자 열의 이상값을 탐지합니다. 값이 이상값으로 간주되기 위해 평균과 달라야 하는 표준 편차 수를 지정합니다. 예를 들어 표준 편차 에 3을 지정하면 값이 이상치로 간주되려면 평균에서 3개 이상의 표준 편차를 가져야 합니다. SageMaker 캔버스는 이상치를 허용 범위의 최소값 또는 최대값으로 바꿉니다. 예를 들어, 200~300의 값만 포함하도록 표준 편차를 구성하면 SageMaker Canvas는 198에서 200(최소)으로 값을 변경합니다.
사용자 지정 숫자 범위 및 사용자 지정 분위수 범위 옵션은 최소값과 최대값을 사용하여 숫자 열의 이상값을 감지합니다. 이상값을 구분하는 임계값을 알고 있는 경우 이 방법을 사용하세요. 숫자 범위를 선택하는 경우 최소값과 최대값은 허용하려는 최소 및 최대 숫자 값이어야 합니다. SageMaker 캔버스는 최소값과 최대값을 벗어나는 값을 최소값과 최대값으로 바꿉니다. 예를 들어 범위 에서 1~100의 값만 허용하는 경우 SageMaker Canvas는 102~100(최대)의 값을 변경합니다. 분위수 범위를 선택하는 경우 최소값과 최대값은 허용하려는 백분위수 범위(0~100)의 최소값 및 최대값이어야 합니다.
데이터 세트의 값을 교체한 후 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개의 고유한 값) |
데이터 세트에서 열의 데이터 유형을 수정하려면 다음을 수행하세요.
-
SageMaker Canvas 애플리케이션의 빌드 탭에서 열 보기 또는 그리드 보기로 이동하여 특정 열에 대한 데이터 유형 드롭다운을 선택합니다.
-
데이터 유형 드롭다운에서 변환할 데이터 유형을 선택합니다. 다음 스크린샷은 드롭다운 메뉴를 보여줍니다.
-
열의 경우 데이터 유형을 변경하려는 열을 선택하거나 확인합니다.
-
새 데이터 유형에서 변환하려는 새 데이터 유형을 선택하거나 확인합니다.
-
새 데이터 유형이
Datetime
또는Numeric
인 경우 잘못된 값 처리에서 다음 옵션 중 하나를 선택합니다.빈 값으로 바꾸기 - 잘못된 값은 빈 값으로 대체됩니다.
행 삭제 - 잘못된 값이 있는 행이 데이터 세트에서 제거됩니다.
사용자 지정 값으로 바꾸기 - 잘못된 값은 지정한 사용자 지정 값으로 대체됩니다.
-
추가를 선택하여 모델 레시피에 변환을 추가합니다.
이제 열의 데이터 유형이 업데이트되어야 합니다.
시계열 데이터 준비
시계열 예측 모델을 구축하기 위해 시계열 데이터를 준비하려면 다음 기능을 사용하세요.
시계열 데이터 리샘플링
시계열 데이터를 리샘플링하여 시계열 데이터 세트의 관측치에 대해 일정한 간격을 설정할 수 있습니다. 이는 불규칙한 간격의 관측치를 포함하는 시계열 데이터로 작업할 때 특히 유용합니다. 예를 들어, 리샘플링을 사용하여 1시간, 2시간, 3시간 간격으로 기록된 관측값이 있는 데이터 세트를 1시간 간격으로 일정한 관측치 간 간격으로 변환할 수 있습니다. 예측 알고리즘을 사용하려면 일정한 간격으로 관측치를 수집해야 합니다.
시계열 데이터를 리샘플링하려면 다음을 수행하세요.
-
SageMaker Canvas 애플리케이션의 빌드 탭에서 시계열 을 선택합니다.
-
리샘플링을 선택합니다.
-
타임스탬프 열의 경우 변환을 적용할 열을 선택합니다. 날짜/시간 유형의 열만 선택할 수 있습니다.
-
빈도 설정 섹션에서 빈도 및 비율을 선택합니다. 주파수는 주파수 단위이고 비율은 열에 적용할 주파수 단위 간격입니다. 예를 들어 빈도 값으로
Calendar Day
을 선택하고 비율로1
을 선택하면 간격이 달력일 기준 1일마다 증가하도록 설정됩니다(예:2023-03-26 00:00:00
,2023-03-27 00:00:00
,2023-03-28 00:00:00
). 빈도 값의 전체 목록은 이 절차 다음에 나오는 테이블을 참조하세요. -
추가를 선택하여 모델 레시피에 변환을 추가합니다.
다음 테이블에는 시계열 데이터를 리샘플링할 때 선택할 수 있는 모든 빈도 유형이 나와 있습니다.
빈도 | 설명 | 예제 값 (비율이 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 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 |
시계열 데이터를 다운샘플링하려면 다음을 수행합니다.
-
리샘플링 변환 아래의 고급 섹션을 확장하세요.
-
숫자가 아닌 열의 조합 방법을 지정하려면 숫자가 아닌 조합을 선택합니다. 조합 방법의 전체 목록은 아래 테이블을 참조하세요.
-
숫자 열의 조합 방법을 지정하려면 숫자 조합을 선택합니다. 조합 메서드의 전체 목록은 아래 테이블을 참조하세요.
조합 방법을 지정하지 않는 경우 기본값은 숫자가 아닌 조합의 경우 Most Common
, 숫자 조합의 경우 Mean
입니다. 다음 표에는 숫자 및 숫자가 아닌 조합 메서드가 나열되어 있습니다.
다운샘플링 방법론 | 조합 메서드 | 설명 |
---|---|---|
숫자가 아닌 조합 |
가장 일반적 |
숫자가 아닌 열의 값을 가장 일반적으로 발생하는 값으로 집계합니다. |
숫자가 아닌 조합 |
마지막 |
숫자가 아닌 열의 값을 열의 마지막 값으로 집계합니다. |
숫자가 아닌 조합 |
첫 번째 |
숫자가 아닌 열의 값을 열의 첫 번째 값으로 집계합니다. |
숫자 조합 |
평균 |
열에 있는 모든 값의 평균을 구하여 숫자 열의 값을 집계합니다. |
숫자 조합 |
중간 |
열에 있는 모든 값의 중앙값을 취하여 숫자 열의 값을 집계합니다. |
숫자 조합 |
최소 |
열에 있는 모든 값의 최소값을 취하여 숫자 열의 값을 집계합니다. |
숫자 조합 |
최대 |
열에 있는 모든 값의 최대값을 취하여 숫자 열의 값을 집계합니다. |
숫자 조합 |
Sum |
열의 모든 값을 더하여 숫자 열의 값을 집계합니다. |
숫자 조합 |
분위수 |
열에 있는 모든 값의 분위수를 취하여 숫자 열의 값을 집계합니다. |
업샘플링은 데이터 세트의 관측 간격이 줄입니다. 예를 들어, 2시간마다 수집되던 관측치를 시간별로 업샘플링하는 경우 시간당 관측치의 다른 열 값은 2시간마다 수집된 관측치에서 보간됩니다.
시계열 데이터를 업샘플링하려면 다음을 수행합니다.
-
리샘플링 변환 아래의 고급 섹션을 확장하세요.
-
숫자가 아닌 열에 대한 추정 방법을 지정하려면 숫자가 아닌 추정을 선택합니다. 전체 방법 목록은 이 절차 다음에 나오는 테이블을 참조하세요.
-
숫자 열에 대한 추정 방법을 지정하려면 숫자 추정을 선택합니다. 전체 메서드 목록은 아래 테이블을 참조하세요.
-
(선택 사항) ID 열을 선택하여 시계열IDs의 관측값이 인 열을 지정합니다. 데이터 세트에 두 개의 시계열이 있는 경우 이 옵션을 지정하세요. 하나의 시계열만 나타내는 열이 있는 경우 이 필드에 값을 지정하지 마세요. 예를 들어
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차 스플라인, 도함수로부터 |
지정된 보간기를 사용하여 숫자 열의 값을 보간합니다. 보간 방법에 대한 자세한 내용은 pandas 설명서의 pandas.DataFrame.interpolate |
다음 스크린샷은 다운샘플링 및 업샘플링 필드가 채워진 고급 설정을 보여줍니다.
날짜/시간 추출 사용
날짜/시간 추출 변환을 사용하면 날짜/시간 열에서 별도의 열로 값을 추출할 수 있습니다. 예를 들어 구매 날짜가 포함된 열이 있는 경우 월 값을 별도의 열로 추출하여 모델을 생성할 때 새 열을 사용할 수 있습니다. 단일 변환으로 여러 값을 추출하여 별도의 열로 만들 수도 있습니다.
날짜/시간 열은 지원되는 타임스탬프 형식을 사용해야 합니다. SageMaker Canvas가 지원하는 형식 목록은 섹션을 참조하세요Amazon SageMaker Canvas의 시계열 예측. 데이터 세트가 지원되는 형식 중 하나를 사용하지 않는 경우 지원되는 타임스탬프 형식을 사용하도록 데이터 세트를 업데이트하고 모델을 빌드하기 전에 Amazon SageMaker Canvas로 다시 가져옵니다.
날짜/시간 추출을 수행하려면 다음을 수행하세요.
-
SageMaker Canvas 애플리케이션의 빌드 탭의 변환 막대에서 모두 보기를 선택합니다.
추출 기능을 선택합니다.
-
값을 추출하려는 타임스탬프 열을 선택합니다.
-
값의 경우 열에서 추출할 값을 하나 이상 선택합니다. 타임스탬프 열에서 추출할 수 있는 값은 년, 월, 일, 시간, 연중 주, 연중 요일, 분기입니다.
(선택 사항) 미리 보기를 선택하여 변환 결과를 미리 볼 수 있습니다.
-
추가를 선택하여 모델 레시피에 변환을 추가합니다.
SageMaker Canvas는 추출하는 각 값에 대해 데이터 세트에 새 열을 생성합니다. 연도 값을 제외하고 SageMaker 캔버스는 추출된 값에 0 기반 인코딩을 사용합니다. 예를 들어 월 값을 추출하면 1월은 0으로 추출되고 2월은 1로 추출됩니다.
모델 레시피 섹션에 나열된 변환을 볼 수 있습니다. 모델 레시피 섹션에서 변환을 제거하면 데이터 세트에서 새 열이 제거됩니다.