모델 하이퍼 파라미터 및 모델 매개 변수 와 같은 용어는 사전 설명없이 웹에서 상호 교환 적으로 사용되었습니다. 나는 이것이 잘못되었다고 생각하고 설명이 필요합니다. 기계 학습 모델, SVM / NN / NB 기반 분류기 또는 이미지 인식기를 고려하십시오.
모델 의 하이퍼 파라미터 와 파라미터 는 무엇입니까 ?
예를 들어주세요.
모델 하이퍼 파라미터 및 모델 매개 변수 와 같은 용어는 사전 설명없이 웹에서 상호 교환 적으로 사용되었습니다. 나는 이것이 잘못되었다고 생각하고 설명이 필요합니다. 기계 학습 모델, SVM / NN / NB 기반 분류기 또는 이미지 인식기를 고려하십시오.
모델 의 하이퍼 파라미터 와 파라미터 는 무엇입니까 ?
예를 들어주세요.
답변:
하이퍼 파라미터와 매개 변수는 종종 상호 교환 적으로 사용되지만 차이점이 있습니다. 추정기 내에서 직접 학습 할 수없는 경우 무언가를 '고 파라미터'라고합니다. 그러나 '매개 변수'는보다 일반적인 용어입니다. '모수를 모형에 전달'이라고 말하면 일반적으로 추정기와 직접 관련이 없지만 모형에 필요한 일부 다른 모수와 하이퍼 파라미터의 조합을 의미합니다.
예를 들어, sklearn에서 SVM 분류기를 작성한다고 가정하십시오.
from sklearn import svm
X = [[0, 0], [1, 1]]
y = [0, 1]
clf = svm.SVC(C =0.01, kernel ='rbf', random_state=33)
clf.fit(X, y)
위의 코드에서 SVM의 인스턴스는 하이퍼 파라미터가,이 경우에,있는 모델에 대한 추정이다 C
하고 kernel
. 그러나 모델에는 하이퍼 매개 변수가 아닌 다른 매개 변수가 random_state
있습니다.
random_state
은 매개 변수입니다. 나는 이것이 잘못된 것이라고 생각한다. 하이퍼 파라미터는 우리에 의해 지정되는 반면, 매개 변수는 모델에 의해 학습됩니다 . 처럼 . 그러나 최상의 값 이 없기 때문에 하이퍼 파라미터가 아닙니다 . 참조 여기에 제이슨 브라운 리 토론random_state=33
random_state
random_state
위의 답변 외에도.
모델 매개 변수 는 분류기 또는 다른 ml 모델에서 학습하는 동안 학습 한 학습 데이터의 특성입니다. 예를 들어, 단어 빈도, 문장 길이, 문장 당 명사 또는 동사 분포, 단어 당 특정 문자 n- 그램 수, 어휘 다양성 등의 일부 NLP 작업의 경우 모델 매개 변수 는 실험마다 다르며 유형에 따라 다릅니다. 데이터 및 작업.
반면 모델 하이퍼 파라미터 는 유사한 모델에 공통적이며 훈련 중에는 학습 할 수 없지만 미리 설정됩니다. NN의 일반적인 하이퍼 파라미터 세트에는 숨겨진 레이어의 수와 크기, 가중치 초기화 체계, 학습률 및 붕괴, 드롭 아웃 및 경사 클리핑 임계 값 등이 포함됩니다.
하이퍼 매개 변수는 우리가 예를 들어, 모델에 공급하는 것들이다 : 숨겨진 노드 및 레이어, 입력 기능, 학습 평가, 신경 네트워크의 등 활성화 기능의 수, 동안 매개 변수가 무게와 편견 같은 기계에 의해 알게 될 것들입니다 .
머신 러닝에서 매개 변수와 하이퍼 파라미터가 있는 모델 은 다음과 같습니다.
여기서 는 매개 변수이고 H 는 하이퍼 파라미터입니다. D 는 학습 데이터이고 Y 는 출력 데이터입니다 (분류 작업의 경우 클래스 레이블).
훈련 도중 목적은 매개 변수의 추정 찾을 수 있습니다 Φ 일부 손실 함수를 최적화 L 우리가 지정한합니다. 모델 M 및 손실 함수 L 은 H에 기초 하기 때문에, 결과적인 파라미터 Φ 는 또한 하이퍼 파라미터 H 에 의존한다 .
하이퍼 파라미터 는 훈련 중에 '학습'되지 않지만 그 값이 불변 인 것은 아닙니다. 일반적으로 하이퍼 파라미터는 고정되어 있으며 단순히 모델 M을 생각합니다. 대신 합니다. 여기서, 하이퍼-파라미터는 또한 선험적 파라미터로 간주 될 수있다.
혼란의 출처는 사용에서 유래 하이퍼 매개 변수의 및 수정 H , 분명히, 매개 변수 외에 일상적인 훈련 동안 Φ . 훈련 중에 H 를 수정하는 동기는 여러 가지가 있습니다 . 예는 최적화 루틴의 속도 및 / 또는 안정성을 향상시키기 위해 훈련 중에 학습 속도를 변경하는 것입니다.
차이의 중요한 점은 그 결과이다 말하자면 라벨 예측, 모델 파라미터에 기초 Φ 하이퍼 파라미터 아닌 H를 .
그러나 구별에는 경고가 있으며 결과적으로 선이 흐려집니다. 예를 들어 군집화 작업, 특히 가우시안 혼합 모델링 (GMM)을 고려하십시오. 여기에 설정된 매개 변수는 . 여기서 ˉ μ 는 N 군집 평균값이고 ˉ σ 는 대해, 표준 편차 N 가우스 커넬.
하이퍼 파라미터를 직관적으로 인식했을 것입니다. 클러스터 수 입니다. 따라서 H = { N } 입니다. 일반적으로 클러스터 유효성 검사는 데이터 D 의 작은 하위 샘플을 사용하여 N apriori 를 결정하는 데 사용됩니다 . 그러나 가우시안 혼합 모델의 학습 알고리즘을 수정하여 일부 기준에 따라 훈련 중 커널 수 N 을 수정할 수도 있습니다. 이 시나리오에서 하이퍼 파라미터 N 은 매개 변수 세트의 일부가됩니다. Φ = { ˉ μ , ˉ됩니다.
그럼에도 불구하고, 그 결과를 지적되어야하거나, 데이터 포인트에 대해, 예측값 데이터의 D 에 기초 G M M ( ˉ μ , ˉ σ ) 가 아니라 N . 즉, 각각의 N 가우시안 커널은 각각의 μ 와 그들 자신의 σ 로부터 d 의 거리에 기초 하여 d 에 어느 정도의 값을 기여할 것이다 . '파라미터' N 은 여기에 명시 적으로 포함되어 있지 않으므로 모델의 매개 변수를 '실제로'는 아닙니다.
요약 : 모델 및 손실 함수 L을 설계 할 때 실무자가 사용하는 방식으로 인해 매개 변수와 하이퍼 파라미터의 차이가 미묘 합니다. 이것이 두 용어를 명확하게하는 데 도움이되기를 바랍니다.
간단히 말해서
모델 매개 변수는 모델이 스스로 학습하는 것입니다. 예를 들어, 1) 선형 회귀 모형에서 독립 변수의 가중치 또는 계수. 2) 독립 변수 SVM의 가중치 또는 계수. 3) 의사 결정 트리에서 분할 점.
모델 하이퍼 파라미터는 모델 성능을 최적화하는 데 사용됩니다. 예를 들어, 1) SVM에서 커널 및 느슨 함. 2) KNN의 K 값. 3) 결정 트리에서 나무의 깊이.
모델 매개 변수는 데이터에서 자동으로 추정되며 모델 하이퍼 파라미터는 수동으로 설정되며 모델 매개 변수를 추정하는 프로세스에 사용됩니다.
모델 하이퍼 파라미터는 수동으로 설정하고 조정해야하는 기계 학습의 일부이기 때문에 종종 매개 변수라고합니다.
기본적으로 매개 변수는“모델”이 예측 등에 사용하는 매개 변수입니다. 예를 들어 선형 회귀 모델의 가중치 계수. 하이퍼 파라미터는 학습 과정에 도움이됩니다. 예를 들어 K- 평균의 군집 수, 릿지 회귀 분석의 수축 계수. 그것들은 최종 예측 조각에는 나타나지 않지만 학습 단계 후에 매개 변수가 어떻게 보이는지에 큰 영향을 미칩니다.
참조 : https://machinelearningmastery.com/difference-between-a-parameter-and-a-hyperparameter/