테이블 형식 데이터에 대한 엔드포인트 요청 - Amazon SageMaker

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

테이블 형식 데이터에 대한 엔드포인트 요청

훈련 후 편향 분석 및 특징 중요도 분석을 위한 모델 예측을 얻으려면 처리 작업을 SageMaker 명확히 하려면 테이블 형식의 데이터를 바이트로 직렬화하고 이를 추론 엔드포인트에 요청 페이로드로 전송합니다. 이 테이블 형식 데이터는 입력 데이터 세트에서 가져왔거나 생성된 데이터 세트입니다. 합성 데이터인 경우 설명자가 SHAP 분석 또는 PDP 분석을 위해 생성합니다.

요청 페이로드의 데이터 형식은 분석 구성 매개변수 content_type을 통해 지정되어야 합니다. 파라미터가 제공되지 않으면 SageMaker Clarify 처리 작업은 dataset_type 파라미터 값을 콘텐츠 유형으로 사용합니다. content_type 또는 에 대한 자세한 내용은 섹션을 dataset_type참조하세요분석 구성 파일.

다음 섹션에서는 CSV 및 JSON 행 형식의 엔드포인트 요청 예제를 보여줍니다.

SageMaker Clarify 처리 작업은 데이터를 CSV 형식으로 직렬화할 수 있습니다(MIME 유형: text/csv). 다음 표는 직렬화된 요청 페이로드의 예제를 보여줍니다.

엔드포인트 요청 페이로드(문자열 표현식) 설명

'1,2,3,4'

단일 레코드(숫자 특징 4개).

'1,2,3,4\n5,6,7,8'

줄 바꿈 '\n'으로 구분된 2개의 레코드

'"좋은 제품입니다”,5'

단일 레코드(텍스트 특징 1개 및 숫자 특징 1개).

'"좋은 제품입니다”,5\n“나쁜 쇼핑 경험”,1'

레코드 2개.

SageMaker Clarify 처리 작업은 데이터를 행 밀도 형식(MIME 유형: )으로 SageMaker JSON 직렬화할 수 있습니다application/jsonlines. JSON 라인에 대한 자세한 내용은 섹션을 참조하세요JSONLINES 요청 형식.

테이블 형식 데이터를 JSON 데이터로 변환하려면 분석 구성 content_template 파라미터에 템플릿 문자열을 제공합니다. content_template에 대한 자세한 내용은 분석 구성 파일 섹션을 참조하세요. 다음 표에는 직렬화된 JSON 라인 요청 페이로드의 예가 나와 있습니다.

엔드포인트 요청 페이로드(문자열 표현식) 설명

'{"data":{"features":[1,2,3,4]}}'

단일 레코드. 이 경우 템플릿은 '{"data":{"features":$features}}' 의 형태가 되며, $features는 특징의 목록인 [1,2,3,4]로 대체됩니다.

'{"data":{"features":[1,2,3,4]}}\n{"data":{"features":[5,6,7,8]}}'

레코드 2개.

'{"features":["좋은 제품입니다",5]}'

단일 레코드. 이 경우 템플릿은 '{"features":$features}'의 형태가 되며, $features는 특징의 목록인 ["This is a good product",5]로 대체됩니다.

'{"features":["좋은 제품입니다",5]}\n{"features":["나쁜 쇼핑 경험",1]}'

레코드 2개

SageMaker Clarify 처리 작업은 데이터를 임의의 JSON 구조(MIME 유형: )로 직렬화할 수 있습니다application/json. 이렇게 하려면 분석 구성 content_template매개변수에 템플릿 문자열을 제공해야 합니다. 이는 SageMaker Clarify 처리 작업에서 외부 JSON 구조를 구성하는 데 사용됩니다. 또한 각 레코드의 JSON 구조를 구성하는 데 record_template사용되는 에 대한 템플릿 문자열을 제공해야 합니다. content_templaterecord_template에 대한 자세한 내용은 분석 구성 파일섹션을 참조하세요.

참고

content_templaterecord_template 는 문자열 파라미터이므로 JSON 직렬화된 구조의 일부인 모든 큰따옴표 문자(")는 구성에서 이스케이프된 문자로 기록되어야 합니다. 예를 들어, Python에서 큰 따옴표를 이스케이프 처리하려면 content_template에 대해 다음을 입력하면 됩니다.

"{\"data\":{\"features\":$record}}}"

다음 표에는 직렬화된 JSON 요청 페이로드의 예제와 구성에 필요한 해당 content_templaterecord_template 파라미터가 나와 있습니다.

엔드포인트 요청 페이로드(문자열 표현식) 설명 content_template record_template

'{"data":{"features":[1,2,3,4]}}'

한 번에 하나의 레코드.

'{"data":{"features":$record}}}'

“$features”

'{"instances":[[0, 1], [3, 4]], "feature-names": ["A", "B"]}'

특징 이름이 있는 다중 레코드.

{"instances":$records, "feature-names":$feature_names}'

“$features"

'[{"A": 0, "B": 1}, {"A": 3, "B": 4}]'

다중 레코드 및 키-값 페어.

“$records"

“$features_kvp"

{"A": 0, "B": 1}'

한 번에 하나의 레코드 및 키-값 페어.

"$record"

"$features_kvp"

{"A": 0, "nested": {"B": 1}}'

혹은 임의의 구조에는 자세히 기술한 record_template을 사용해도 됩니다.

"$record"

'{"A": "${A}", "nested": {"B": "${B}"}}'