IP Insights 하이퍼파라미터 - 아마존 SageMaker

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

IP Insights 하이퍼파라미터

CreateTransformJob 요청에서 훈련 알고리즘을 지정합니다. 알고리즘별 하이퍼파라미터를 맵으로 지정할 수도 있습니다. string-to-string 다음 표에는 Amazon SageMaker IP Insights 알고리즘의 하이퍼파라미터가 나와 있습니다.

파라미터 이름 설명
num_entity_vectors

훈련할 엔터티 벡터 표현(엔터티 임베딩 벡터) 수. 훈련 세트의 각 엔터티는 해시 함수를 사용하여 이러한 벡터 중 하나로 임의로 할당됩니다. 해시 충돌로 인해 동일한 벡터에 여러 엔터티가 할당될 수 있습니다. 이로 인해 동일한 벡터가 여러 엔터티를 나타낼 수 있습니다. 일반적으로 이러한 문제는 충돌 비율이 너무 심하게 높지 않는 한 모델 성능에 큰 영향을 미치지 않습니다. 충돌 비율을 낮게 유지하려면 이 값을 가급적 높게 설정합니다. 그러나 모델 크기 따라서 훈련 및 추론 둘 다에 필요한 메모리 요구 사항이 이 하이퍼파라미터로 선형적으로 조정됩니다. 이 값은 고유한 엔터티 식별자 수의 두 배로 설정하는 것이 좋습니다.

필수

유효한 값: 1 ≤ 양수 ≤ 250,000,000

vector_dim

엔터티 및 IP 주소를 나타내는 임베딩 벡터의 크기. 이 값이 클수록 이러한 표현을 사용하여 인코딩할 수 있는 정보가 많아집니다. 실제로, 모델 크기는 이 파라미터를 사용하여 선형적으로 조정되고 차원이 커질 수 있는 정도를 제한합니다. 또한 너무 큰 벡터 표현을 사용하면 모델이 특히 작은 훈련 데이터 세트에 대해 과적합할 수 있습니다. 과적합은 모델이 데이터에서 어떠한 패턴도 학습하지 않지만 훈련 데이터를 효율적으로 암기하기 때문에 제대로 일반화할 수 없고 추론 중 뛰어난 성능을 발휘하지 못하는 경우 발생합니다. 권장되는 값은 128입니다.

필수

유효한 값: 4 ≤ 양수 ≤ 4096

batch_metrics_publish_interval

Apache MXNet Speedometer 함수가 네트워크의 훈련 속도(샘플 수/초)를 출력하는 간격(X개 배치마다).

선택 사항

유효한 값: 양수 ≥ 1

기본값: 1,000

epochs

훈련 데이터의 전달 횟수. 최적값은 데이터의 크기와 학습률에 따라 다릅니다. 일반적 값은 5~100입니다.

선택 사항

유효한 값: 양수 ≥ 1

기본값: 10

learning_rate

옵티마이저에 대한 학습률. IP 인사이트는 gradient-descent-based Adam 옵티마이저를 사용합니다. 학습률은 반복마다 모델 파라미터를 업데이트하도록 단계 크기를 효율적으로 제어합니다. 학습률이 너무 크면 훈련이 최솟값을 오버슈트할 수 있기 때문에 모델이 발산(divergence)될 수 있습니다. 다시 말해, 학습률이 너무 작으면 수렴 속도가 느려집니다. 일반적 값은 1e-4에서 1e-1입니다.

선택 사항

유효한 값: 1e-6 ≤ 부동 소수점 ≤ 10.0

기본값: 0.001

mini_batch_size

각 미니 배치에 있는 예제의 수. 훈련 프로시저에서는 미니 배치의 데이터를 처리합니다. 최적값은 데이터 세트 내 고유한 계정 식별자 수에 따라 달라집니다. 일반적으로 크기가 클수록 mini_batch_size 훈련 속도가 빨라지고 가능한 shuffled-negative-sample 조합의 수도 많아집니다. 그러나 mini_batch_size가 크면 훈련이 불량한 로컬 최솟값으로 수렴되고 추론 성능이 상대적으로 저하될 가능성이 높아집니다.

선택 사항

유효한 값: 1 ≤ 양수 ≤ 500000

기본값: 10,000

num_ip_encoder_layers

IP 주소 임베딩을 인코딩하는 데 사용되는 완전히 연결된 계층 수. 계층 수가 많을수록 IP 주소 간 패턴을 캡처하기 위한 모델 용량이 커집니다. 그러나 많은 수의 계층을 사용하면 과적합 가능성이 커집니다.

선택 사항

유효한 값: 0 ≤ 양수 ≤ 100

기본값: 1

random_negative_sampling_rate

입력 예제당 생성할 무작위 네거티브 샘플 수 R. 훈련 프로시저에서는 네거티브 샘플을 사용하여 모델의 벡터 표현이 단일 지점으로 축소되지 않도록 합니다. 무작위 네거티브 샘플링은 미니 배치 내에서 각 입력 계정에 대한 무작위 IP 주소 수를 나타내는 R을 생성합니다. random_negative_sampling_rate(R) 및 shuffled_negative_sampling_rate(S)의 합계는 간격 1 ≤ R + S ≤ 500 내에 있어야 합니다.

선택 사항

유효한 값: 0 ≤ 양수 ≤ 500

기본값: 1

shuffled_negative_sampling_rate

입력 예제당 생성할 셔플 네거티브 샘플 수 S. 경우에 따라 훈련 데이터 자체에서 무작위로 선택한 실제 네거티브 샘플을 더 많이 사용하는 것이 좋을 수 있습니다. 이러한 종류의 네거티브 샘플링은 미니 배치 내에서 데이터를 셔플해 얻습니다. 셔플 네거티브 샘플링은 미니 배치 내에서 IP 주소와 계정 페어를 셔플해 네거티브 IP 주소 수인 S를 생성합니다. random_negative_sampling_rate(R) 및 shuffled_negative_sampling_rate(S)의 합계는 간격 1 ≤ R + S ≤ 500 내에 있어야 합니다.

선택 사항

유효한 값: 0 ≤ 양수 ≤ 500

기본값: 1

weight_decay

가중치 감소 계수. 이 파라미터는 모델에서 훈련 데이터 과적합이 발생하지 않도록 방지하는 데 필요한 L2 정규화 계수를 추가합니다.

선택 사항

유효한 값: 0.0 ≤ 부동 소수점 ≤ 10.0

기본값: 0.00001