

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

# 라이트GBM 하이퍼파라미터
<a name="lightgbm-hyperparameters"></a>

다음 표에는 Amazon SageMaker AI LightGBM 알고리즘에 필요하거나 가장 일반적으로 사용되는 하이퍼파라미터 하위 세트가 포함되어 있습니다. 이들은 사용자가 데이터를 통해 모델 파라미터를 쉽게 예측하기 위해 설정하는 파라미터입니다. SageMaker AI LightGBM 알고리즘은 [LightGBM](https://github.com/microsoft/LightGBM) 패키지의 오픈 소스 구현입니다.

**참고**  
기본 하이퍼파라미터는 [LightGBM 샘플 노트북](lightgbm.md#lightgbm-sample-notebooks)의 예제 데이터세트를 기준으로 정해집니다.

기본적으로 SageMaker AI LightGBM 알고리즘은 분류 문제 유형에 따라 평가 지표와 목적 함수를 자동으로 선택합니다. LightGBM 알고리즘은 데이터의 레이블 수를 기반으로 분류 문제 유형을 탐지합니다. 회귀 문제의 경우 평가 지표는 평균 제곱근 오차이고 목적 함수는 L2 손실입니다. 바이너리 분류 문제의 경우 평가 지표와 목적 함수는 모두 바이너리 교차 엔트로피입니다. 다중 클래스 분류 문제의 경우 평가 지표는 다중 클래스 교차 엔트로피이고 목적 함수는 소프트맥스입니다. `metric` 하이퍼파라미터를 사용하여 기본 평가 지표를 변경할 수 있습니다. 설명, 유효한 값, 기본값을 포함하여 LightGBM 하이퍼파라미터에 대한 자세한 내용은 다음 표를 참조하세요.


| 파라미터 이름 | 설명 | 
| --- | --- | 
| num\$1boost\$1round |  최대 부스팅 반복 횟수. **참고:** 내부적으로 LightGBM은 다중 클래스 분류 문제에 대한 `num_class * num_boost_round` 트리를 생성합니다. 유효 값: 정수, 범위: 양의 정수. 기본값: `100`.  | 
| early\$1stopping\$1rounds |  마지막 `early_stopping_rounds` 라운드에서 한 검증 데이터 요소 중 하나의 지표가 개선되지 않으면 훈련이 중지됩니다. `early_stopping_rounds`가 0보다 작거나 같으면 이 하이퍼파라미터는 무시됩니다. 유효한 값: 정수. 기본값: `10`.  | 
| metric |  검증 데이터에 대한 평가 지표. `metric`을 디폴트 `"auto"` 값으로 설정하면 알고리즘이 분류 문제의 유형에 따라 평가 지표를 자동으로 선택합니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/sagemaker/latest/dg/lightgbm-hyperparameters.html) 유효한 값: 문자열, 다음 중 하나: (`"auto"`, `"rmse"`, `"l1"`, `"l2"`, `"huber"`, `"fair"`, `"binary_logloss"`, `"binary_error"`, `"auc"`, `"average_precision"`, `"multi_logloss"`, `"multi_error"`, `"auc_mu"` 또는 `"cross_entropy"`). 기본값: `"auto"`.  | 
| learning\$1rate |  각 훈련 예제 배치를 살펴본 후 모델 가중치가 업데이트되는 비율입니다. 유효한 값: 부동 소수점, 범위: (`0.0`, `1.0`). 기본값: `0.1`.  | 
| num\$1leaves |  한 나무의 최대 잎 수입니다. 유효한 값: 정수, 범위: (`1`, `131072`). 기본값: `64`.  | 
| feature\$1fraction |  각 반복(트리)에서 선택할 기능의 하위 집합. 1.0 미만이어야 합니다. 유효한 값: 부동 소수점, 범위: (`0.0`, `1.0`). 기본값: `0.9`.  | 
| bagging\$1fraction |  `feature_fraction`과 유사한 기능의 하위 집합이지만 `bagging_fraction`은 리샘플링 없이 데이터의 일부를 무작위로 선택합니다. 유효한 값: 부동 소수점, 범위: (`0.0`, `1.0`]. 기본값: `0.9`.  | 
| bagging\$1freq |  배깅을 수행하는 빈도. LightGBM은 `bagging_freq` 반복 때마다 다음 `bagging_freq` 반복에 사용할 데이터의 백분율을 무작위로 선택합니다. 이 비율은 `bagging_fraction` 하이퍼파라미터에 의해 결정됩니다. `bagging_freq`이 0이면 배깅이 비활성화됩니다. 유효한 값: 정수, 범위: 음수가 아닌 정수. 기본값: `1`.  | 
| max\$1depth |  나무 모델의 최대 깊이입니다. 이는 데이터 양이 적을 때 오버피팅을 처리하는 데 사용됩니다. `max_depth`가 0보다 작거나 같으면 최대 깊이에 제한이 없습니다. 유효한 값: 정수. 기본값: `6`.  | 
| min\$1data\$1in\$1leaf |  한 리프에 있는 최소 데이터 양. 오버피팅을 처리하는 데 사용할 수 있습니다. 유효한 값: 정수, 범위: 음수가 아닌 정수. 기본값: `3`.  | 
| max\$1delta\$1step |  나무 잎의 최대 생산량을 제한하는 데 사용됩니다. `max_delta_step`이 0보다 작거나 같으면 제약 조건이 없습니다. 나뭇잎의 최종 최대 출력은 `learning_rate * max_delta_step`입니다. 유효한 값: 부동 소수점. 기본값: `0.0`.  | 
| lambda\$1l1 |  L1 정규화. 유효한 값: 부동 소수점, 범위: 음수가 아닌 부동 소수점. 기본값: `0.0`.  | 
| lambda\$1l2 |  L2 정규화. 유효한 값: 부동 소수점, 범위: 음수가 아닌 부동 소수점. 기본값: `0.0`.  | 
| boosting |  부스팅 타입 유효한 값: 문자열, 다음 중 하나: (`"gbdt"`, `"rf"`, `"dart"` 또는 `"goss"`). 기본값: `"gbdt"`.  | 
| min\$1gain\$1to\$1split |  스플릿을 수행하는 데 필요한 최소 게인. 훈련 속도를 높이는 데 사용할 수 있습니다. 유효한 값: 정수, 부동 소수점: 음수가 아닌 부동 소수점. 기본값: `0.0`.  | 
| scale\$1pos\$1weight |  포지티브 클래스가 있는 레이블의 가중치. 바이너리 분류 작업에만 사용됩니다. `is_unbalance`가 `"True"`로 설정된 경우 `scale_pos_weight`를 사용할 수 없습니다. 유효한 값: 부동 소수점, 범위: 양의 부동 소수점. 기본값: `1.0`.  | 
| tree\$1learner |  트리 훈련자 유형. 유효한 값: 문자열, 다음 중 하나: (`"serial"`, `"feature"`, `"data"` 또는 `"voting"`). 기본값: `"serial"`.  | 
| feature\$1fraction\$1bynode |  각 트리 노드에서 무작위 기능의 하위 집합을 선택합니다. 예를 들어 `feature_fraction_bynode`가 `0.8`인 경우 기능의 80% 가 선택됩니다. 오버피팅을 처리하는 데 사용할 수 있습니다. 유효한 값: 정수, 범위: (`0.0`, `1.0`]. 기본값: `1.0`.  | 
| is\$1unbalance |  훈련 데이터가 불균형한 경우 `"True"`로 설정합니다. 바이너리 분류 작업에만 사용됩니다. `is_unbalance`를 `scale_pos_weight`와 함께 사용할 수 없습니다. 유효한 값: 문자열, 다음 중 하나: (`"True"` 또는 `"False"`). 기본값: `"False"`.  | 
| max\$1bin |  기능 값을 버킷화하는 데 사용되는 최대 빈 수입니다. 빈 수가 적으면 훈련 정확도가 떨어질 수 있지만 전반적인 성능은 향상될 수 있습니다. 오버피팅을 처리하는 데 사용할 수 있습니다. 유효한 값: 정수, 범위: (1, ∞) 기본값: `255`.  | 
| tweedie\$1variance\$1power |  Tweedie 분포의 분산을 제어합니다. 감마 분포로 전환하려면 이 값을 `2.0`에 더 가깝게 설정하세요 푸아송 분포로 전환하려면 이 값을 `1.0`에 더 가깝게 설정하세요 회귀 작업에만 사용됩니다. 유효한 값: 부동 소수점, 범위: [`1.0`, `2.0`). 기본값: `1.5`.  | 
| num\$1threads |  LightGBM 실행에 사용되는 병렬 스레드의 수. 값 0은 OpenMP의 기본 스레드 수를 의미합니다. 유효한 값: 정수, 범위: 음수가 아닌 정수. 기본값: `0`.  | 
| verbosity |  인쇄 메시지의 장황함. `verbosity`가 `0`보다 작으면 인쇄 메시지에는 치명적 오류만 표시됩니다. `verbosity`를 `0`으로 설정하면 인쇄 메시지에 오류 및 경고가 포함됩니다. `verbosity`가 `1`로 설정된 경우 인쇄 메시지에 추가 정보가 표시됩니다. `1`보다 큰 `verbosity`는 인쇄 메시지에서 가장 많은 정보를 나타내며 디버깅에 사용할 수 있습니다. 유효한 값: 정수. 기본값: `1`.  | 