k-NN 요청 및 응답 형식 - 아마존 SageMaker

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

k-NN 요청 및 응답 형식

모든 Amazon SageMaker 기본 제공 알고리즘은 에서 설명하는 공통 입력 추론 형식을 따릅니다.공통 데이터 형식 - 추론. 이 주제에는 SageMaker k-nearest-neighbor 알고리즘에 사용 가능한 출력 형식 목록이 포함되어 있습니다.

입력: CSV 요청 형식

content-type: text/csv

1.2,1.3,9.6,20.3

이것은 a를 받아들입니다.label_size또는인코딩 파라미터. 0의 label_size와 utf-8 인코딩을 가정합니다.

입력: JSON 요청 형식

content-type: application/json

{ "instances": [ {"data": {"features": {"values": [-3, -1, -4, 2]}}}, {"features": [3.0, 0.1, 0.04, 0.002]}] }

입력: JSONLINES 요청 형식

content-type: application/jsonlines

{"features": [1.5, 16.0, 14.0, 23.0]} {"data": {"features": {"values": [1.5, 16.0, 14.0, 23.0]}}

입력: RECORDIO 요청 형식

content-type: application/x-recordio-protobuf

[ Record = { features = { 'values': { values: [-3, -1, -4, 2] # float32 } }, label = {} }, Record = { features = { 'values': { values: [3.0, 0.1, 0.04, 0.002] # float32 } }, label = {} }, ]

출력: JSON 응답 형식

accept: application/json

{ "predictions": [ {"predicted_label": 0.0}, {"predicted_label": 2.0} ] }

출력: JSONLINES 응답 형식

accept: application/jsonlines

{"predicted_label": 0.0} {"predicted_label": 2.0}

출력: 자세한 JSON 응답 형식

verbose 모드에서 API는 가장 작은 항목에서 가장 큰 항목 순으로 정렬된 거리 벡터 및 레이블 벡터의 해당 요소와 함께 검색 결과를 제공합니다. 이 예에서는 k가 3으로 설정되어 있습니다.

accept: application/json; verbose=true

{ "predictions": [ { "predicted_label": 0.0, "distances": [3.11792408, 3.89746071, 6.32548437], "labels": [0.0, 1.0, 0.0] }, { "predicted_label": 2.0, "distances": [1.08470316, 3.04917915, 5.25393973], "labels": [2.0, 2.0, 0.0] } ] }

출력: RECORDIO-PROTOBUF

content-type: application/x-recordio-protobuf

[ Record = { features = {}, label = { 'predicted_label': { values: [0.0] # float32 } } }, Record = { features = {}, label = { 'predicted_label': { values: [2.0] # float32 } } } ]

출력: RECORDIO-PROTOBUF 응답 형식

verbose 모드에서 API는 가장 작은 항목에서 가장 큰 항목 순으로 정렬된 거리 벡터 및 레이블 벡터의 해당 요소와 함께 검색 결과를 제공합니다. 이 예에서는 k가 3으로 설정되어 있습니다.

accept: application/x-recordio-protobuf; verbose=true

[ Record = { features = {}, label = { 'predicted_label': { values: [0.0] # float32 }, 'distances': { values: [3.11792408, 3.89746071, 6.32548437] # float32 }, 'labels': { values: [0.0, 1.0, 0.0] # float32 } } }, Record = { features = {}, label = { 'predicted_label': { values: [0.0] # float32 }, 'distances': { values: [1.08470316, 3.04917915, 5.25393973] # float32 }, 'labels': { values: [2.0, 2.0, 0.0] # float32 } } } ]

k-NN 알고리즘의 샘플 출력

regressor 작업의 경우:

[06/08/2018 20:15:33 INFO 140026520049408] #test_score (algo-1) : ('mse', 0.013333333333333334)

classifier 작업의 경우:

[06/08/2018 20:15:46 INFO 140285487171328] #test_score (algo-1) : ('accuracy', 0.98666666666666669)