기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Debugger 기본 제공 규칙 목록
Amazon SageMaker Debugger에서 제공하는 Debugger 기본 제공 규칙을 사용하여 모델을 훈련하는 동안 수집된 지표와 텐서를 분석할 수 있습니다. 다음은 각 기본 제공 규칙을 구성하고 배포하는 방법에 대한 정보와 예제를 포함한 디버거 규칙을 나열합니다.
Debugger 기본 제공 규칙은 훈련 작업의 성공에 결정적인 다양한 공통 조건을 모니터링합니다. Amazon SageMaker Python SDK
기본 제공 규칙 사용에 관한 추가 비용은 없습니다. 결제에 대한 자세한 내용은 Amazon SageMaker AI 요금
참고
훈련 작업에 연결할 수 있는 기본 제공 규칙의 최대 개수는 20개입니다. SageMaker Debugger는 기본 제공 규칙을 완전히 관리하고 훈련 작업을 동시에 분석합니다.
중요
새로운 디버거 기능을 사용하려면 SageMaker Python SDK와 SMDebug 클라이언트 라이브러리를 업그레이드해야 합니다. iPython 커널, Jupyter notebook 또는 JupyterLab 환경에서 다음 코드를 실행하여 최신 버전의 라이브러리를 설치하고 커널을 다시 시작하세요.
import sys import IPython !{sys.executable} -m pip install -U sagemaker smdebug IPython.Application.instance().kernel.do_shutdown(True)
Debugger 규칙
다음 규칙은 Rule.sagemaker
클래스 메서드를 사용하여 호출할 수 있는 Debugger 기본 제공 규칙입니다.
훈련 보고서 생성에 필요한 Debugger 기본 제공 규칙
유효 범위 | 내장 규칙 |
---|---|
SageMaker AI XGboost 훈련 작업에 대한 훈련 보고서 |
모델 훈련 데이터(출력 텐서) 디버깅에 필요한 Debugger 기본 제공 규칙
유효 범위 | 내장 규칙 |
---|---|
딥 러닝 프레임워크(TensorFlow, MXNet, PyTorch) | |
딥 러닝 프레임워크(TensorFlow, MXNet 및 PyTorch)와 XGBoost 알고리즘 | |
딥 러닝 애플리케이션 | |
XGBoost 알고리즘 |
기본 파라미터 값으로 기본 제공 규칙을 사용하려면 다음 구성 형식을 사용하세요.
from sagemaker.debugger import Rule, ProfilerRule, rule_configs rules = [ Rule.sagemaker(rule_configs.
built_in_rule_name_1
()), Rule.sagemaker(rule_configs.built_in_rule_name_2
()), ... Rule.sagemaker(rule_configs.built_in_rule_name_n
()) ]
내장 규칙을 사용하여 파라미터 값을 사용자 정의하려면 다음 구성 형식을 사용하세요.
from sagemaker.debugger import Rule, ProfilerRule, rule_configs rules = [ Rule.sagemaker( base_config=rule_configs.
built_in_rule_name
(), rule_parameters={ "key
": "value
" } collections_to_save=[ CollectionConfig( name="tensor_collection_name
", parameters={ "key
": "value
" } ) ] ) ]
파라미터에 사용할 수 있는 키를 찾으려면 rule_parameters
파라미터 설명 테이블을 참조하세요.
각 내장 규칙에 대한 샘플 규칙 구성 코드는 파라미터 설명 표 아래에 제공됩니다.
-
디버거 내장 규칙 사용에 대한 전체 지침 및 예제는 Debugger 기본 제공 규칙 예제 코드 섹션을 참조하세요.
-
저급 SageMaker API 연산으로 기본 제공 규칙을 사용하는 방법에 대한 전체 지침은 SageMaker API를 사용한 Debugger 구성을(를) 참조하세요.
CreateXgboostReport
CreateXgboostReport 규칙은 XGBoost 훈련 작업에서 출력 텐서를 수집하고 종합적인 훈련 보고서를 자동 생성합니다. 훈련 작업이 실행 중일 때 또는 훈련 작업이 완료된 후에 종합적인 프로파일링 보고서를 다운로드하고, 훈련 진행 상황이나 훈련 작업의 최종 결과를 확인할 수 있습니다. CreateXgboostReport 규칙은 기본적으로 다음 출력 텐서를 수집합니다.
-
hyperparameters
- 첫 단계에서 저장됩니다. -
metrics
- 5단계마다 손실을 줄이고 정확도를 보존합니다. -
feature_importance
- 5단계마다 저장됩니다. -
predictions
- 5단계마다 저장됩니다. -
labels
- 5단계마다 저장됩니다.
CreateXgboostReport 규칙에 대한 파라미터 설명
파라미터 이름 | 설명 |
---|---|
base_trial |
기본 시험 훈련 작업 이름입니다. 이 파라미터는 Amazon SageMaker Debugger에서 현재 훈련 작업으로 자동 설정합니다. 필수 유효값: 문자열 |
rules=[ Rule.sagemaker( rule_configs.
create_xgboost_report
() ) ]
DeadRelu
이 규칙은 활성화 활동이 임곗값 미만으로 떨어졌기 때문에 시도 시 Rectified Linear Unit(ReLU) 활성화 함수의 백분율이 dead로 간주되는 시기를 감지합니다. 레이어의 비활성 ReLU 비율이 비활성 ReLU threshold_layer
값보다 크면 규칙이 True
를 반환합니다.
DeadRelu 규칙에 대한 파라미터 설명
파라미터 이름 | 설명 |
---|---|
base_trial |
기본 시험 훈련 작업 이름입니다. 이 파라미터는 Amazon SageMaker Debugger에서 현재 훈련 작업으로 자동 설정합니다. 필수 유효값: 문자열 |
tensor_regex |
이 비교를 특정한 스칼라 값 텐서로 제한하는 데 사용되는 정규식 패턴 목록입니다. 이 규칙은 목록에 지정된 정규식 패턴과 일치하는 텐서만 검사합니다. 패턴이 전달되지 않으면 규칙은 기본적으로 시도 중에 수집된 모든 텐서를 비교합니다. 스칼라 값 텐서만 일치시킬 수 있습니다. 선택 사항 유효한 값: 문자열 또는 쉼표로 구분된 문자열 목록 기본 값: |
threshold_inactivity |
ReLU가 dead로 간주되는 활동 수준을 정의합니다. ReLU는 시도 초기에 활성 상태가 된 다음 훈련 과정 동안 천천히 dead 상태가 될 수 있습니다. ReLU가 선택 사항 유효한 값: 부동 소수점. 기본값: |
threshold_layer |
레이어에서 비활성 ReLU의 비율이 레이어에서 비활성 ReLU의 비율이 선택 사항 유효한 값: 부동 소수점. 기본값: |
built_in_rules = [ Rule.sagemaker( base_config=rule_configs.dead_relu(), rule_parameters={ "tensor_regex": "
.*relu_output|.*ReLU_output
", "threshold_inactivity": "1.0
", "threshold_layer": "50.0
" }, collections_to_save=[ CollectionConfig( name="custom_relu_collection
", parameters={ "include_regex: ".*relu_output|.*ReLU_output
", "save_interval": "500
" } ) ] ) ]
기본 제공 규칙을 구성하고 배포하는 방법의 예는 Debugger 기본 제공 규칙 구성 방법 섹션을 참조하세요.
참고
이 규칙은 XGBoost 알고리즘에 사용할 수 없습니다.
ExplodingTensor
이 규칙은 훈련 중에 방출된 텐서에 무한대 또는 NaN(숫자 아님) 같이 유한하지 않은 값이 포함되어 있는지 감지합니다. 유한하지 않은 값이 감지되면 규칙이 True
를 반환합니다.
ExplodingTensor 규칙에 대한 파라미터 설명
파라미터 이름 | 설명 |
---|---|
base_trial |
기본 시험 훈련 작업 이름입니다. 이 파라미터는 Amazon SageMaker Debugger에서 현재 훈련 작업으로 자동 설정합니다. 필수 유효값: 문자열 |
collection_names |
규칙이 검사하는 텐서의 컬렉션 이름 목록입니다. 선택 사항 유효값: 문자열 기본 값: |
tensor_regex |
이 비교를 특정한 스칼라 값 텐서로 제한하는 데 사용되는 정규식 패턴 목록입니다. 이 규칙은 목록에 지정된 정규식 패턴과 일치하는 텐서만 검사합니다. 패턴이 전달되지 않으면 규칙은 기본적으로 시도 중에 수집된 모든 텐서를 비교합니다. 스칼라 값 텐서만 일치시킬 수 있습니다. 선택 사항 유효값: 문자열 기본 값: |
only_nan |
선택 사항 기본 값: |
built_in_rules = [ Rule.sagemaker( base_config=rule_configs.
exploding_tensor
(), rule_parameters={ "tensor_regex": ".*gradient
", "only_nan": "False
" }, collections_to_save=[ CollectionConfig( name="gradients
", parameters={ "save_interval": "500
" } ) ] ) ]
기본 제공 규칙을 구성하고 배포하는 방법의 예는 Debugger 기본 제공 규칙 구성 방법 섹션을 참조하세요.
참고
이 규칙은 XGBoost 알고리즘에 사용할 수 없습니다.
PoorWeightInitialization
이 규칙은 모델 파라미터가 제대로 초기화되지 않았는지 감지합니다.
좋은 초기화는 신경망에서 가중치와 그라데이션의 대칭을 깨뜨리고 레이어 간에 상응하는 활성화 분산을 유지합니다. 그렇지 않으면 신경망이 효과적으로 학습을 하지 못합니다. Xavier와 같은 이니셜라이저는 활성화를 통해 분산을 일정하게 유지하는 것을 목표로 합니다. 이는 특히 매우 깊은 신경망을 훈련하는 데 적합합니다. 초기화 규모가 너무 작으면 그라데이션이 사라질 수 있습니다. 초기화 규모가 너무 크면 그라데이션이 폭발할 수 있습니다. 이 규칙은 계층에서 활성화 입력의 분산, 그라데이션 분포 및 초기 단계의 손실 수렴을 검사하여 신경망이 제대로 초기화되지 않았는지 확인합니다.
PoorWeightInitialization 규칙에 대한 파라미터 설명
파라미터 이름 | 설명 |
---|---|
base_trial |
기본 시험 훈련 작업 이름입니다. 이 파라미터는 Amazon SageMaker Debugger에서 현재 훈련 작업으로 자동 설정합니다. 필수 유효값: 문자열 |
activation_inputs_regex |
이 비교를 특정한 스칼라 값 텐서로 제한하는 데 사용되는 정규식 패턴 목록입니다. 이 규칙은 목록에 지정된 정규식 패턴과 일치하는 텐서만 검사합니다. 패턴이 전달되지 않으면 규칙은 기본적으로 시도 중에 수집된 모든 텐서를 비교합니다. 스칼라 값 텐서만 일치시킬 수 있습니다. 선택 사항 유효값: 문자열 기본 값: |
threshold |
레이어당 가중치의 최소 및 최대 분산 간의 비율이 단계에서 선택 사항 유효한 값: 부동 소수점. 기본 값: |
distribution_range |
그라데이션 분포의 5번째 백분위수와 95번째 백분위수 간의 최소 차이가 선택 사항 유효한 값: 부동 소수점. 기본 값: |
patience |
손실이 더 이상 감소하지 않는 것으로 간주될 때까지 기다려야 하는 단계 수입니다. 선택 사항 유효한 값: 정수 기본 값: |
steps |
이 규칙이 분석하는 단계 수입니다. 보통 사용자는 처음 몇 번의 반복만 확인하면 됩니다. 선택 사항 유효한 값: 부동 소수점. 기본 값: |
built_in_rules = [ Rule.sagemaker( base_config=rule_configs.
poor_weight_initialization
(), rule_parameters={ "activation_inputs_regex": ".*relu_input|.*ReLU_input
", "threshold": "10.0
", "distribution_range": "0.001
", "patience": "5
", "steps": "10
" }, collections_to_save=[ CollectionConfig( name="custom_relu_collection
", parameters={ "include_regex
": ".*relu_input|.*ReLU_input
", "save_interval
": "500
" } ) ] ) ]
기본 제공 규칙을 구성하고 배포하는 방법의 예는 Debugger 기본 제공 규칙 구성 방법 섹션을 참조하세요.
참고
이 규칙은 XGBoost 알고리즘에 사용할 수 없습니다.
SaturatedActivation
이 규칙은 tanh 및 sigmoid 활성화 레이어가 포화 상태인지 여부를 감지합니다. 레이어의 입력이 활성화 함수의 최대값 또는 최소값에 가까울 때 활성화 레이어가 포화 상태가 됩니다. tanh 및 sigmoid 활성화 함수의 최소값 및 최대값은 해당되는 min_threshold
및 max_thresholds
값에 의해 정의됩니다. 노드의 활동이 threshold_inactivity
백분율 이하로 떨어지면 포화된 것으로 간주됩니다. 노드의 threshold_layer
백분율 이상이 포화 상태가 되면 규칙이 True
를 반환합니다.
SaturatedActivation 규칙에 대한 파라미터 설명
파라미터 이름 | 설명 |
---|---|
base_trial |
기본 시험 훈련 작업 이름입니다. 이 파라미터는 Amazon SageMaker Debugger에서 현재 훈련 작업으로 자동 설정합니다. 필수 유효값: 문자열 |
collection_names |
규칙이 검사하는 텐서의 컬렉션 이름 목록입니다. 선택 사항 유효한 값: 문자열 또는 쉼표로 구분된 문자열 목록 기본값: 없음 |
tensor_regex |
이 비교를 특정한 스칼라 값 텐서로 제한하는 데 사용되는 정규식 패턴 목록입니다. 이 규칙은 목록에 지정된 정규식 패턴과 일치하는 텐서만 검사합니다. 패턴이 전달되지 않으면 규칙은 기본적으로 시도 중에 수집된 모든 텐서를 비교합니다. 스칼라 값 텐서만 일치시킬 수 있습니다. 선택 사항 유효값: 문자열 기본 값: |
threshold_tanh_min |
tanh 활성화 함수에 대한 입력의 극단을 정의하는 최소 및 최대 임곗값은 선택 사항 유효한 값: 부동 소수점. 기본값: |
threshold_tanh_max |
tanh 활성화 함수에 대한 입력의 극단을 정의하는 최소 및 최대 임곗값은 선택 사항 유효한 값: 부동 소수점. 기본값: |
threshold_sigmoid_min |
sigmoid 활성화 함수에 대한 입력의 극단을 정의하는 최소 및 최대 임곗값은 선택 사항 유효한 값: 부동 소수점. 기본값: |
threshold_sigmoid_max |
sigmoid 활성화 함수에 대한 입력의 극단을 정의하는 최소 및 최대 임곗값은 선택 사항 유효한 값: 부동 소수점. 기본값: |
threshold_inactivity |
활성화 레이어가 포화 상태로 간주되는 비활성 비율입니다. 활성화는 시도 초기에 활성 상태가 된 다음 훈련 과정 동안 천천히 dead 상태가 될 수 있습니다. 선택 사항 유효한 값: 부동 소수점. 기본값: |
threshold_layer |
레이어의 포화 상태 활성화 수가 레이어의 포화 상태 활성화 수가 선택 사항 유효한 값: 부동 소수점. 기본값: |
built_in_rules = [ Rule.sagemaker( base_config=rule_configs.
saturated_activation
(), rule_parameters={ "tensor_regex": ".*tanh_input|.*sigmoid_input
", "threshold_tanh_min": "-9.4999
", "threshold_tanh_max": "9.4999
", "threshold_sigmoid_min": "-23
", "threshold_sigmoid_max": "16.99999
", "threshold_inactivity": "1.0
", "threshold_layer": "50.0
" }, collections_to_save=[ CollectionConfig( name="custom_activations_collection
", parameters={ "include_regex
": ".*tanh_input|.*sigmoid_input
" "save_interval
": "500
" } ) ] ) ]
기본 제공 규칙을 구성하고 배포하는 방법의 예는 Debugger 기본 제공 규칙 구성 방법 섹션을 참조하세요.
참고
이 규칙은 XGBoost 알고리즘에 사용할 수 없습니다.
VanishingGradient
이 규칙은 시도 시 그라데이션이 극도로 작아지거나 0 광도로 떨어지는지 여부를 감지합니다. 그라데이션의 절대값 평균이 지정된 threshold
값 아래로 떨어지면 규칙이 True
를 반환합니다.
VanishingGradient 규칙에 대한 파라미터 설명
파라미터 이름 | 설명 |
---|---|
base_trial |
기본 시험 훈련 작업 이름입니다. 이 파라미터는 Amazon SageMaker Debugger에서 현재 훈련 작업으로 자동 설정합니다. 필수 유효값: 문자열 |
threshold |
그라데이션이 사라지는 것으로 결정되는 값입니다. 선택 사항 유효한 값: 부동 소수점. 기본값: |
built_in_rules = [ Rule.sagemaker( base_config=rule_configs.
vanishing_gradient
(), rule_parameters={ "threshold": "0.0000001
" }, collections_to_save=[ CollectionConfig( name="gradients
", parameters={ "save_interval
": "500
" } ) ] ) ]
기본 제공 규칙을 구성하고 배포하는 방법의 예는 Debugger 기본 제공 규칙 구성 방법 섹션을 참조하세요.
참고
이 규칙은 XGBoost 알고리즘에 사용할 수 없습니다.
WeightUpdateRatio
이 규칙은 훈련 중 가중치에 대한 업데이트 비율을 추적하고 해당 비율이 너무 크거나 작아지는 경우를 감지합니다. 가중치에 대한 업데이트 비율이 large_threshold value
보다 크거나 small_threshold
보다 작은 경우, 이 규칙은 True
을 반환합니다.
훈련의 조건은 업데이트가 그라데이션에 비례하는 경우에 가장 좋습니다. 업데이트가 지나치게 크면 가중치가 최적 값에서 벗어날 수 있으며, 업데이트가 너무 작으면 수렴이 매우 느려집니다. 이 규칙에서는 가중치를 2가지 훈련 단계에 사용할 수 있어야 하므로, train.save_interval
이(가) num_steps
와(과) 동일하게 설정되어야 합니다.
WeightUpdateRatio 규칙에 대한 파라미터 설명
파라미터 이름 | 설명 |
---|---|
base_trial |
기본 시험 훈련 작업 이름입니다. 이 파라미터는 Amazon SageMaker Debugger에서 현재 훈련 작업으로 자동 설정합니다. 필수 유효값: 문자열 |
num_steps |
텐서가 변경되었는지 확인하기 위해 규칙이 확인하는 단계 수입니다. 가중치 비율을 비교하고 싶은 단계 수입니다. 값을 전달하지 않으면 기본적으로 현재 단계 및 바로 이전에 저장된 단계에 대해 규칙이 실행됩니다. 이 파라미터의 값을 전달하여 기본값을 재정의할 경우, 선택 사항 유효한 값: 정수 기본 값: |
large_threshold |
규칙이 선택 사항 유효한 값: 부동 소수점. 기본 값: |
small_threshold |
가중치에 대한 업데이트 비율(규칙이 반환하는 선택 사항 유효한 값: 부동 소수점. 기본 값: |
epsilon |
가중치에 대한 업데이트 비율을 계산할 때 Debugger가 0으로 나누지 않게 하는 데 사용되는 작은 상수입니다. 선택 사항 유효한 값: 부동 소수점. 기본 값: |
built_in_rules = [ Rule.sagemaker( base_config=rule_configs.
weight_update_ratio
(), rule_parameters={ "num_steps": "100
", "large_threshold": "10.0
", "small_threshold": "0.00000001
", "epsilon": "0.000000001
" }, collections_to_save=[ CollectionConfig( name="weights
", parameters={ "train.save_interval
": "100
" } ) ] ) ]
기본 제공 규칙을 구성하고 배포하는 방법의 예는 Debugger 기본 제공 규칙 구성 방법 섹션을 참조하세요.
참고
이 규칙은 XGBoost 알고리즘에 사용할 수 없습니다.
AllZero
이 규칙은 텐서 값의 전부 또는 지정된 백분율이 0인지 감지합니다.
이 규칙은 지원되는 딥 러닝 프레임워크 (TensorFlow, MXnet 및 PyTorch) 중 하나 또는 XGBoost 알고리즘에 적용할 수 있습니다. collection_names
또는 tensor_regex
파라미터를 지정해야 합니다. 두 파라미터가 모두 지정되면 규칙은 두 집합에서 텐서 합집합을 검사합니다.
기본 제공 규칙을 구성하고 배포하는 방법의 예는 Debugger 기본 제공 규칙 구성 방법 섹션을 참조하세요.
AllZero 규칙에 대한 파라미터 설명
파라미터 이름 | 설명 |
---|---|
base_trial |
기본 시험 훈련 작업 이름입니다. 이 파라미터는 Amazon SageMaker Debugger에서 현재 훈련 작업으로 자동 설정합니다. 필수 유효값: 문자열 |
collection_names |
규칙이 검사하는 텐서의 컬렉션 이름 목록입니다. 선택 사항 유효한 값: 문자열 또는 쉼표로 구분된 문자열 목록 기본 값: |
tensor_regex |
이 비교를 특정한 스칼라 값 텐서로 제한하는 데 사용되는 정규식 패턴 목록입니다. 이 규칙은 목록에 지정된 정규식 패턴과 일치하는 텐서만 검사합니다. 패턴이 전달되지 않으면 규칙은 기본적으로 시도 중에 수집된 모든 텐서를 비교합니다. 스칼라 값 텐서만 일치시킬 수 있습니다. 선택 사항 유효한 값: 문자열 또는 쉼표로 구분된 문자열 목록 기본 값: |
threshold |
이 규칙을 호출하려면 텐서에서 0이 되어야 하는 값의 백분율을 지정합니다. 선택 사항 유효한 값: 부동 소수점. 기본값: 100(단위: 백분율) |
built_in_rules = [ Rule.sagemaker( base_config=rule_configs.
all_zero
(), rule_parameters={ "tensor_regex": ".*
", "threshold": "100
" }, collections_to_save=[ CollectionConfig( name="all
", parameters={ "save_interval
": "500
" } ) ] ) ]
ClassImbalance
이 규칙은 클래스 간의 샘플링 불균형을 측정하여 불균형이 임곗값을 초과하거나 불균형의 결과로 과소 대표된 클래스에 대한 예측 오류가 너무 많을 경우 오류를 내보냅니다.
분류 모델에서는 훈련 데이터세트에 균형 잡힌 클래스가 있어야 하거나 훈련 중에 클래스에 대한 적절한 가중치 부여/샘플링을 수행해야 합니다. 이 규칙이 수행하는 검사는 다음과 같습니다.
-
하나는 클래스당 발생 수를 계산합니다. 가장 작은 클래스와 가장 큰 클래스 사이의 샘플 수의 비율이
threshold_imbalance
보다 크면 오류가 발생합니다. -
클래스당 예측 정확도를 검사합니다. 리샘플링 또는 가중치 부여가 올바르게 적용되지 않으면 모델이 훈련 샘플이 많은 클래스에서는 높은 정확도에 도달할 수 있지만 훈련 샘플이 거의 없는 클래스에서는 정확도가 낮을 수 있습니다. 특정 클래스에 대한 예측 오류의 일부분이
threshold_misprediction
위에 있으면 오류가 발생합니다.
이 규칙은 지원되는 딥 러닝 프레임워크 (TensorFlow, MXnet 및 PyTorch) 중 하나 또는 XGBoost 알고리즘에 적용할 수 있습니다.
기본 제공 규칙을 구성하고 배포하는 방법의 예는 Debugger 기본 제공 규칙 구성 방법 섹션을 참조하세요.
ClassImbalance 규칙에 대한 파라미터 설명
파라미터 이름 | 설명 |
---|---|
base_trial |
기본 시험 훈련 작업 이름입니다. 이 파라미터는 Amazon SageMaker Debugger에서 현재 훈련 작업으로 자동 설정합니다. 필수 유효값: 문자열 |
threshold_imbalance |
최소 클래스와 최대 클래스의 샘플 수 간에 허용되는 불균형입니다. 이 임곗값을 초과하면 오류가 발생합니다. 선택 사항 유효한 값: 부동 소수점. 기본 값: |
threshold_misprediction |
각 클래스에 허용되는 예측 오류 분수에 대한 제한입니다. 이 임곗값을 초과하면 오류가 발생합니다. 과소 대표된 클래스는 이 임곗값을 넘을 위험이 가장 큽니다. 선택 사항 유효한 값: 부동 소수점. 기본 값: |
samples |
불균형이 평가되기 전에 처리해야 하는 레이블 수입니다. 여러 단계에서 충분한 샘플이 나타날 때까지 규칙이 트리거되지 않을 수 있습니다. 데이터세트에 포함된 클래스가 많을수록 이 선택 사항 유효한 값: 정수 기본값: |
argmax |
조건 유효 값: 불 기본 값: |
labels_regex |
레이블을 포함하는 텐서의 이름입니다. 선택 사항 유효값: 문자열 기본 값: |
predictions_regex |
예측이 포함된 텐서의 이름입니다. 선택 사항 유효값: 문자열 기본 값: |
built_in_rules = [ Rule.sagemaker( base_config=rule_configs.
class_imbalance
(), rule_parameters={ "threshold_imbalance": "10
", "threshold_misprediction": "0.7
", "samples": "500
", "argmax": "False
", "labels_regex": ".*labels
", "predictions_regex": ".*predictions
" }, collections_to_save=[ CollectionConfig( name="custom_output_collection
", parameters={ "include_regex": ".*labels|.*predictions
", "save_interval": "500
" } ) ] ) ]
LossNotDecreasing
이 규칙은 손실이 적절한 비율로 값이 감소하지 않는 경우를 감지합니다. 이러한 손실은 스칼라 값이어야 합니다.
이 규칙은 지원되는 딥 러닝 프레임워크 (TensorFlow, MXnet 및 PyTorch) 중 하나 또는 XGBoost 알고리즘에 적용할 수 있습니다. collection_names
또는 tensor_regex
파라미터를 지정해야 합니다. 두 파라미터가 모두 지정되면 규칙은 두 집합에서 텐서 합집합을 검사합니다.
기본 제공 규칙을 구성하고 배포하는 방법의 예는 Debugger 기본 제공 규칙 구성 방법 섹션을 참조하세요.
LossNotDecreasing 규칙에 대한 파라미터 설명
파라미터 이름 | 설명 |
---|---|
base_trial |
기본 시험 훈련 작업 이름입니다. 이 파라미터는 Amazon SageMaker Debugger에서 현재 훈련 작업으로 자동 설정합니다. 필수 유효값: 문자열 |
collection_names |
규칙이 검사하는 텐서의 컬렉션 이름 목록입니다. 선택 사항 유효한 값: 문자열 또는 쉼표로 구분된 문자열 목록 기본 값: |
tensor_regex |
이 비교를 특정한 스칼라 값 텐서로 제한하는 데 사용되는 정규식 패턴 목록입니다. 이 규칙은 목록에 지정된 정규식 패턴과 일치하는 텐서만 검사합니다. 패턴이 전달되지 않으면 규칙은 기본적으로 시도 중에 수집된 모든 텐서를 비교합니다. 스칼라 값 텐서만 일치시킬 수 있습니다. 선택 사항 유효한 값: 문자열 또는 쉼표로 구분된 문자열 목록 기본 값: |
use_losses_collection |
선택 사항 유효 값: 불 기본 값: |
num_steps |
규칙이 손실 감소 여부를 확인한 이후의 최소 단계 수입니다. 규칙 평가는 모든 선택 사항 유효한 값: 정수 기본 값: |
diff_percent |
손실이 선택 사항 유효한 값: 기본값: |
increase_threshold_percent |
손실이 증가하고 있는 경우 손실 증가를 허용하는 최대 임곗값 백분율 선택 사항 유효한 값: 기본값: |
mode |
규칙 검사를 위해 텐서 값을 쿼리하는 Debugger 모드의 이름. 이 값이 전달되지 않으면 규칙은 기본적으로 선택 사항 유효한 값: 문자열( 기본 값: |
built_in_rules = [ Rule.sagemaker( base_config=rule_configs.
loss_not_decreasing
(), rule_parameters={ "tensor_regex": ".*
", "use_losses_collection": "True
", "num_steps": "10
", "diff_percent": "0.1
", "increase_threshold_percent": "5
", "mode": "GLOBAL
" }, collections_to_save=[ CollectionConfig( name="losses
", parameters={ "save_interval
": "500
" } ) ] ) ]
Overfit
이 규칙은 유효성 검사 및 훈련 손실을 비교하여 모델이 훈련 데이터에 과도하게 적합한지 여부를 감지합니다.
이 규칙은 지원되는 딥 러닝 프레임워크 (TensorFlow, MXnet 및 PyTorch) 중 하나 또는 XGBoost 알고리즘에 적용할 수 있습니다.
기본 제공 규칙을 구성하고 배포하는 방법의 예는 Debugger 기본 제공 규칙 구성 방법 섹션을 참조하세요.
참고
과적합을 방지하기 위한 표준 방법은 모델을 정규화하는 것입니다.
Overfit 규칙에 대한 파라미터 설명
파라미터 이름 | 설명 |
---|---|
base_trial |
기본 시험 훈련 작업 이름입니다. 이 파라미터는 Amazon SageMaker Debugger에서 현재 훈련 작업으로 자동 설정합니다. 필수 유효값: 문자열 |
tensor_regex |
이 비교를 특정한 스칼라 값 텐서로 제한하는 데 사용되는 정규식 패턴 목록입니다. 이 규칙은 목록에 지정된 정규식 패턴과 일치하는 텐서만 검사합니다. 패턴이 전달되지 않으면 규칙은 기본적으로 시도 중에 수집된 모든 텐서를 비교합니다. 스칼라 값 텐서만 일치시킬 수 있습니다. 선택 사항 유효한 값: 문자열 또는 쉼표로 구분된 문자열 목록 기본값: 없음 |
start_step |
유효성 검사 및 훈련 손실의 비교를 시작하는 단계입니다. 선택 사항 유효한 값: 정수 기본 값: |
patience |
선택 사항 유효한 값: 정수 기본 값: |
ratio_threshold |
평균 유효성 검사 손실 및 평균 훈련 손실 간의 차이와 평균 훈련 손실의 최대 비율입니다. 선택 사항 유효한 값: 부동 소수점. 기본 값: |
built_in_rules = [ Rule.sagemaker( base_config=rule_configs.
overfit
(), rule_parameters={ "tensor_regex": ".*
", "start_step": "0
", "patience": "1
", "ratio_threshold": "0.1
" }, collections_to_save=[ CollectionConfig( name="losses
", parameters={ "train.save_interval": "100
", "eval.save_interval": "10
" } ) ] ) ]
Overtraining
이 규칙은 모델이 과잉 훈련를 받는 중인지 감지합니다. 제대로 작동하는 모델을 여러 번 반복 훈련시키고 나면(훈련 및 검증 손실 감소 모두), 모델이 손실 함수의 최솟값에 가까워져 더 이상 개선되지 않습니다. 모델이 계속 훈련을 받으면 모델의 과적합이 시작되어 검증 손실이 증가하기 시작할 수 있습니다. 이 규칙은 임곗값과 조건을 설정하여 모델이 개선되지 않는지 확인하고, 과잉 훈련으로 인한 과적합 문제를 방지합니다.
이 규칙은 지원되는 딥 러닝 프레임워크 (TensorFlow, MXnet 및 PyTorch) 중 하나 또는 XGBoost 알고리즘에 적용할 수 있습니다.
기본 제공 규칙을 구성하고 배포하는 방법의 예는 Debugger 기본 제공 규칙 구성 방법 섹션을 참조하세요.
참고
조기 중단으로 과잉 훈련을 피할 수 있습니다. 조기 정지에 대한 자세한 내용은 조기에 훈련 작업 중지 섹션을 참조하세요. Debugger로 스팟 훈련을 사용하는 방법의 예제는 Amazon SageMaker Debugger를 이용한 스팟 훈련 활성화
Overtraining 규칙에 대한 파라미터 설명
파라미터 이름 | 설명 |
---|---|
base_trial |
기본 시험 훈련 작업 이름입니다. 이 파라미터는 Amazon SageMaker Debugger에서 현재 훈련 작업으로 자동 설정합니다. 필수 유효값: 문자열 |
patience_train |
훈련 손실이 더 이상 개선되지 않는 것으로 간주되기 전에 대기해야 할 단계 수입니다. 선택 사항 유효한 값: 정수 기본 값: |
patience_validation |
유효성 검사 손실이 더 이상 개선되지 않는 것으로 간주되기 전에 대기해야 할 단계 수입니다. 선택 사항 유효한 값: 정수 기본 값: |
delta |
새로운 최적값으로 간주되기 전에 오류가 개선되어야 하는 정도에 따른 최소 임곗값입니다. 선택 사항 유효한 값: 부동 소수점. 기본 값: |
built_in_rules = [ Rule.sagemaker( base_config=rule_configs.
overtraining
(), rule_parameters={ "patience_train": "5
", "patience_validation": "10
", "delta": "0.01
" }, collections_to_save=[ CollectionConfig( name="losses
", parameters={ "save_interval
": "500
" } ) ] ) ]
SimilarAcrossRuns
이 규칙은 기본 시도에서 수집된 텐서를 다른 시도의 텐서와 비교합니다.
이 규칙은 지원되는 딥 러닝 프레임워크 (TensorFlow, MXnet 및 PyTorch) 중 하나 또는 XGBoost 알고리즘에 적용할 수 있습니다.
기본 제공 규칙을 구성하고 배포하는 방법의 예는 Debugger 기본 제공 규칙 구성 방법 섹션을 참조하세요.
SimilarAcrossRuns 규칙에 대한 파라미터 설명
파라미터 이름 | 설명 |
---|---|
base_trial |
기본 시험 훈련 작업 이름입니다. 이 파라미터는 Amazon SageMaker Debugger에서 현재 훈련 작업으로 자동 설정합니다. 필수 유효값: 문자열 |
other_trials |
현재의 필수 유효값: 문자열 |
collection_names |
규칙이 검사하는 텐서의 컬렉션 이름 목록입니다. 선택 사항 유효한 값: 문자열 또는 쉼표로 구분된 문자열 목록 기본값: 없음 |
tensor_regex |
이 비교를 특정한 스칼라 값 텐서로 제한하는 데 사용되는 정규식 패턴 목록입니다. 이 규칙은 목록에 지정된 정규식 패턴과 일치하는 텐서만 검사합니다. 패턴이 전달되지 않으면 규칙은 기본적으로 시도 중에 수집된 모든 텐서를 비교합니다. 스칼라 값 텐서만 일치시킬 수 있습니다. 선택 사항 유효한 값: 문자열 또는 쉼표로 구분된 문자열 목록 기본값: 없음 |
built_in_rules = [ Rule.sagemaker( base_config=rule_configs.
similar_across_runs
(), rule_parameters={ "other_trials": "<specify-another-job-name>
", "collection_names": "losses
", "tensor_regex": ".*
" }, collections_to_save=[ CollectionConfig( name="losses
", parameters={ "save_interval
": "500
" } ) ] ) ]
StalledTrainingRule
StalledTrainingRule은 훈련 작업이 진행되지 않았는지 감지하고, 규칙이 실행되면 훈련 작업을 중지합니다. 이 규칙은 threshold
파라미터로 정의된 시간 간격으로 텐서를 주기적으로 저장하도록 요구합니다. 이 규칙은 새 텐서를 계속 모니터링하며, 임곗값 간격 동안 새 텐서가 생성되지 않으면 규칙이 실행됩니다.
StalledTrainingRule 규칙에 대한 파라미터 설명
파라미터 이름 | 설명 |
---|---|
base_trial |
기본 시험 훈련 작업 이름입니다. 이 파라미터는 Amazon SageMaker Debugger에서 현재 훈련 작업으로 자동 설정합니다. 필수 유효값: 문자열 |
threshold |
훈련 지연 문제가 발생할 때까지 이 규칙이 텐서 출력을 기다리는 시간(단위: 초)을 정의하는 임곗값. 기본값은 1,800초입니다. 선택 사항 유효한 값: 정수 기본 값: |
stop_training_on_fire |
선택 사항 유효 값: 불 기본 값: |
training_job_name_prefix |
기본 훈련 작업 이름의 접두사. 선택 사항 유효값: 문자열 |
built_in_rules = [ Rule.sagemaker( base_config=rule_configs.
stalled_training_rule
(), rule_parameters={ "threshold": "1800
", "stop_training_on_fire": "True
", "training_job_name_prefix": "<specify-training-base-job-name>
" }, collections_to_save=[ CollectionConfig( name="losses
", parameters={ "save_interval
": "500
" } ) ] ) ]
TensorVariance
이 규칙은 분산이 매우 높거나 낮은 텐서가 있는지 감지합니다. 텐서의 분산이 매우 높거나 매우 낮으면 신경이 포화 상태가 되어 신경망의 학습 능력이 저하됩니다. 텐서의 분산이 매우 높으면 결국 텐서가 폭발할 수 있습니다. 이 규칙을 사용하여 이러한 문제를 조기에 감지합니다.
이 규칙은 지원되는 딥 러닝 프레임워크 (TensorFlow, MXnet 및 PyTorch) 중 하나 또는 XGBoost 알고리즘에 적용할 수 있습니다. collection_names
또는 tensor_regex
파라미터를 지정해야 합니다. 두 파라미터가 모두 지정되면 규칙은 두 집합에서 텐서 합집합을 검사합니다.
기본 제공 규칙을 구성하고 배포하는 방법의 예는 Debugger 기본 제공 규칙 구성 방법 섹션을 참조하세요.
TensorVariance 규칙에 대한 파라미터 설명
파라미터 이름 | 설명 |
---|---|
base_trial |
기본 시험 훈련 작업 이름입니다. 이 파라미터는 Amazon SageMaker Debugger에서 현재 훈련 작업으로 자동 설정합니다. 필수 유효값: 문자열 |
collection_names |
규칙이 검사하는 텐서의 컬렉션 이름 목록입니다. 선택 사항 유효한 값: 문자열 또는 쉼표로 구분된 문자열 목록 기본값: 없음 |
tensor_regex |
이 비교를 특정한 스칼라 값 텐서로 제한하는 데 사용되는 정규식 패턴 목록입니다. 이 규칙은 목록에 지정된 정규식 패턴과 일치하는 텐서만 검사합니다. 패턴이 전달되지 않으면 규칙은 기본적으로 시도 중에 수집된 모든 텐서를 비교합니다. 스칼라 값 텐서만 일치시킬 수 있습니다. 선택 사항 유효한 값: 문자열 또는 쉼표로 구분된 문자열 목록 기본값: 없음 |
max_threshold |
텐서 분산의 상한에 대한 임곗값입니다. 선택 사항 유효한 값: 부동 소수점. 기본값: 없음 |
min_threshold |
텐서 분산의 하한에 대한 임곗값입니다. 선택 사항 유효한 값: 부동 소수점. 기본값: 없음 |
built_in_rules = [ Rule.sagemaker( base_config=rule_configs.
tensor_variance
(), rule_parameters={ "collection_names": "weights
", "max_threshold": "10
", "min_threshold": "0.00001
", }, collections_to_save=[ CollectionConfig( name="weights
", parameters={ "save_interval
": "500
" } ) ] ) ]
UnchangedTensor
이 규칙은 텐서가 더 이상 여러 단계에서 변경되지 않는지 여부를 감지합니다.
이 규칙은 numpy.allclose
이 규칙은 지원되는 딥 러닝 프레임워크 (TensorFlow, MXnet 및 PyTorch) 중 하나 또는 XGBoost 알고리즘에 적용할 수 있습니다. collection_names
또는 tensor_regex
파라미터를 지정해야 합니다. 두 파라미터가 모두 지정되면 규칙은 두 집합에서 텐서 합집합을 검사합니다.
기본 제공 규칙을 구성하고 배포하는 방법의 예는 Debugger 기본 제공 규칙 구성 방법 섹션을 참조하세요.
UnchangedTensor 규칙에 대한 파라미터 설명
파라미터 이름 | 설명 |
---|---|
base_trial |
기본 시험 훈련 작업 이름입니다. 이 파라미터는 Amazon SageMaker Debugger에서 현재 훈련 작업으로 자동 설정합니다. 필수 유효값: 문자열 |
collection_names |
규칙이 검사하는 텐서의 컬렉션 이름 목록입니다. 선택 사항 유효한 값: 문자열 또는 쉼표로 구분된 문자열 목록 기본값: 없음 |
tensor_regex |
이 비교를 특정한 스칼라 값 텐서로 제한하는 데 사용되는 정규식 패턴 목록입니다. 이 규칙은 목록에 지정된 정규식 패턴과 일치하는 텐서만 검사합니다. 패턴이 전달되지 않으면 규칙은 기본적으로 시도 중에 수집된 모든 텐서를 비교합니다. 스칼라 값 텐서만 일치시킬 수 있습니다. 선택 사항 유효한 값: 문자열 또는 쉼표로 구분된 문자열 목록 기본값: 없음 |
num_steps |
텐서가 변경되었는지 확인하기 위해 규칙이 확인하는 단계 수입니다. 사용 가능한 마지막 선택 사항 유효한 값: 정수 기본 값: |
rtol |
선택 사항 유효한 값: 부동 소수점. 기본 값: |
atol |
선택 사항 유효한 값: 부동 소수점. 기본 값: |
equal_nan |
NaN을 동일한 값으로 비교할지 여부입니다. 선택 사항 유효 값: 불 기본 값: |
built_in_rules = [ Rule.sagemaker( base_config=rule_configs.
unchanged_tensor
(), rule_parameters={ "collection_names": "losses
", "tensor_regex": "", "num_steps": "3
", "rtol": "1e-05
", "atol": "1e-08
", "equal_nan": "False
" }, collections_to_save=[ CollectionConfig( name="losses
", parameters={ "save_interval
": "500
" } ) ] ) ]
CheckInputImages
이 규칙은 입력 이미지가 올바르게 정규화 되었는지 확인합니다. 특히 표본 데이터의 평균이 0에서 임곗값을 초과해 차이가 나는지 감지합니다. 많은 컴퓨터 비전 모델에서는 입력 데이터의 평균 및 단위 분산이 0이어야 합니다.
이 규칙은 딥 러닝 애플리케이션에 적용할 수 있습니다.
기본 제공 규칙을 구성하고 배포하는 방법의 예는 Debugger 기본 제공 규칙 구성 방법 섹션을 참조하세요.
CheckInputImages 규칙에 대한 파라미터 설명
파라미터 이름 | 설명 |
---|---|
base_trial |
기본 시험 훈련 작업 이름입니다. 이 파라미터는 Amazon SageMaker Debugger에서 현재 훈련 작업으로 자동 설정합니다. 필수 유효값: 문자열 |
threshold_mean |
입력 데이터의 평균이 0과 어느 정도 차이가 날 수 있는지를 정의하는 임곗값입니다. 선택 사항 유효한 값: 부동 소수점. 기본 값: |
threshold_samples |
오류가 발생하기 전에 샘플링해야 하는 이미지 수입니다. 값이 너무 낮으면 데이터 집합 평균의 추정치가 부정확합니다. 선택 사항 유효한 값: 정수 기본 값: |
regex |
입력 데이터 텐서의 이름입니다. 선택 사항 유효값: 문자열 기본값: |
channel |
입력 텐서 내 색상 채널의 위치로 인해 배열이 형성됩니다. 선택 사항 유효한 값: 정수 기본값: |
built_in_rules = [ Rule.sagemaker( base_config=rule_configs.
check_input_images
(), rule_parameters={ "threshold_mean
": "0.2
", "threshold_samples
": "500
", "regex
": ".*hybridsequential0_input_0
", "channel
": "1
" }, collections_to_save=[ CollectionConfig( name="custom_inputs_collection
", parameters={ "include_regex
": ".*hybridsequential0_input_0
", "save_interval
": "500
" } ) ] ) ]
NLPSequenceRatio
이 규칙은 성능 최적화에 유용한 입력 시퀀스의 나머지 부분에 주어진 특정 토큰의 비율을 계산합니다. 예를 들어 입력 시퀀스에서 패딩 문장 끝(EOS) 토큰의 백분율을 계산할 수 있습니다. EOS 토큰의 수가 너무 많으면 대체 버킷팅 전략을 수행해야 합니다. 입력 시퀀스에서 알 수 없는 토큰의 백분율을 계산할 수도 있습니다. 알 수 없는 단어 수가 너무 많으면 대체 어휘를 사용할 수 있습니다.
이 규칙은 딥 러닝 애플리케이션에 적용할 수 있습니다.
기본 제공 규칙을 구성하고 배포하는 방법의 예는 Debugger 기본 제공 규칙 구성 방법 섹션을 참조하세요.
NLPSequenceRatio 규칙에 대한 파라미터 설명
파라미터 이름 | 설명 |
---|---|
base_trial |
기본 시험 훈련 작업 이름입니다. 이 파라미터는 Amazon SageMaker Debugger에서 현재 훈련 작업으로 자동 설정합니다. 필수 유효값: 문자열 |
tensor_regex |
이 비교를 특정한 스칼라 값 텐서로 제한하는 데 사용되는 정규식 패턴 목록입니다. 이 규칙은 목록에 지정된 정규식 패턴과 일치하는 텐서만 검사합니다. 패턴이 전달되지 않으면 규칙은 기본적으로 시도 중에 수집된 모든 텐서를 비교합니다. 스칼라 값 텐서만 일치시킬 수 있습니다. 선택 사항 유효한 값: 문자열 또는 쉼표로 구분된 문자열 목록 기본값: |
token_values |
토큰의 숫자 값 목록의 문자열입니다. 예를 들어 "3, 0"입니다. 선택 사항 유효한 값: 쉼표로 구분된 숫자 값 문자열 기본 값: |
token_thresholds_percent |
선택 사항 유효한 값: 쉼표로 구분된 부동 소수점 문자열 기본 값: |
built_in_rules = [ Rule.sagemaker( base_config=rule_configs.
nlp_sequence_ratio
(), rule_parameters={ "tensor_regex": ".*embedding0_input_0
", "token_values": "0
", "token_thresholds_percent": "50
" }, collections_to_save=[ CollectionConfig( name="custom_inputs_collection
", parameters={ "include_regex
": "" } ) ] ) ]
.*embedding0_input_0
Confusion
이 규칙은 분류 문제에 대한 Confusion 행렬의 장점을 평가합니다.
크기 category_no*category_no
에 대한 행렬을 생성하고 (labels
, predictions
) 쌍에서 나오는 데이터로 채 웁니다. 각각의 (labels
, predictions
) 쌍에서 confusion[labels][predictions]
의 개수가 1씩 증가합니다. 행렬이 완전히 채워지면 데이터 대각선 상 값과 대각선 외 값의 비율이 다음과 같이 평가됩니다.
-
대각선 상 요소의 경우:
confusion[i][i]/sum_j(confusion[j][j])>=min_diag
-
대각선 외 요소의 경우:
confusion[j][i])/sum_j(confusion[j][i])<=max_off_diag
이 규칙은 XGBoost 알고리즘에 적용될 수 있습니다.
기본 제공 규칙을 구성하고 배포하는 방법의 예는 Debugger 기본 제공 규칙 구성 방법 섹션을 참조하세요.
Confusion 규칙에 대한 파라미터 설명
파라미터 이름 | 설명 |
---|---|
base_trial |
기본 시험 훈련 작업 이름입니다. 이 파라미터는 Amazon SageMaker Debugger에서 현재 훈련 작업으로 자동 설정합니다. 필수 유효값: 문자열 |
category_no |
범주의 수입니다. 선택 사항 유효한 값: 정수 ≥2 기본 값: |
labels |
선택 사항 유효값: 문자열 기본 값: |
predictions |
선택 사항 유효값: 문자열 기본 값: |
labels_collection |
이 규칙은 선택 사항 유효값: 문자열 기본 값: |
predictions_collection |
이 규칙은 선택 사항 유효값: 문자열 기본 값: |
min_diag |
대각선상에 존재하는 데이터 비율의 최소 임곗값. 선택 사항 유효한 값: 기본 값: |
max_off_diag |
대각선 밖에 존재하는 데이터 비율의 최대 임곗값. 선택 사항 유효한 값: 기본 값: |
built_in_rules = [ Rule.sagemaker( base_config=rule_configs.
confusion
(), rule_parameters={ "category_no": "10
", "labels": "labels
", "predictions": "predictions
", "labels_collection": "labels
", "predictions_collection": "predictions
", "min_diag": "0.9
", "max_off_diag": "0.1
" }, collections_to_save=[ CollectionConfig( name="labels
", parameters={ "save_interval": "500
" } ), CollectionConfig( name="predictions
", parameters={ "include_regex": "500
" } ) ] ) ]
참고
이 규칙은 선택적 파라미터의 값이 지정되지 않은 경우 기본값을 추론합니다.
FeatureImportanceOverweight
이 규칙은 단계마다 가장 큰 기능 중요도 값 n개의 가중치를 누적시켜 이 값이 임곗값을 초과하지 않게 합니다. 그 예로 최상위 3개 기능의 임곗값이 모델의 총 가중치의 80% 를 넘지 않도록 설정할 수 있습니다.
이 규칙은 XGBoost 알고리즘에 대해서만 유효합니다.
기본 제공 규칙을 구성하고 배포하는 방법의 예는 Debugger 기본 제공 규칙 구성 방법 섹션을 참조하세요.
FeatureImportanceOverweight 규칙에 대한 파라미터 설명
파라미터 이름 | 설명 |
---|---|
base_trial |
기본 시험 훈련 작업 이름입니다. 이 파라미터는 Amazon SageMaker Debugger에서 현재 훈련 작업으로 자동 설정합니다. 필수 유효값: 문자열 |
threshold |
최대 기능 선택 사항 유효한 값: 부동 소수점. 기본 값: |
nfeatures |
최대 기능의 개수. 선택 사항 유효한 값: 정수 기본 값: |
tensor_regex |
텐서의 정규식(regex)은 분석할 규칙의 이름을 지정합니다. 선택 사항 유효값: 문자열 기본 값: |
built_in_rules = [ Rule.sagemaker( base_config=rule_configs.
feature_importance_overweight
(), rule_parameters={ "threshold": "0.8
", "nfeatures": "3
", "tensor_regex": ".*feature_importance/weight
" }, collections_to_save=[ CollectionConfig( name="feature_importance
", parameters={ "save_interval
": "500
" } ) ] ) ]
TreeDepth
이 규칙은 XGBoost 모델의 트리 깊이를 측정합니다. XGBoost는 손실이 개선되지 않을 경우 분할을 거부합니다. 그리고 훈련을 정규화합니다. 그 결과 트리가 depth
파라미터로 정의된 깊이만큼 확장되지 않을 수도 있습니다.
이 규칙은 XGBoost 알고리즘에 대해서만 유효합니다.
기본 제공 규칙을 구성하고 배포하는 방법의 예는 Debugger 기본 제공 규칙 구성 방법 섹션을 참조하세요.
TreeDepth 규칙에 대한 파라미터 설명
파라미터 이름 | 설명 |
---|---|
base_trial |
기본 시험 훈련 작업 이름입니다. 이 파라미터는 Amazon SageMaker Debugger에서 현재 훈련 작업으로 자동 설정합니다. 필수 유효값: 문자열 |
depth |
트리의 깊이입니다. 트리의 깊이는 가장 큰 노드 ID의 밑이 2인 로그를 계산하여 얻습니다. 선택 사항 유효한 값: 부동 소수점. 기본 값: |
built_in_rules = [ Rule.sagemaker( base_config=rule_configs.
tree_depth
(), rule_parameters={ "depth
": "4
" }, collections_to_save=[ CollectionConfig( name="tree
", parameters={ "save_interval
": "500
" } ) ] ) ]