본문 바로가기

빅데이터(Big Data) 이론과 코드/1. 용어의 정의

파라미터(Parameter), 하이퍼파라미터(Hyper Parameter), 아규먼트(Argument)의 용어 정의

1. 파라미터(Parameter) : 매개변수

f(X, y)에서 X와 y를 파라미터라고 합니다. 

A model parameter is a configuration variable that is internal to the model and whose value can be estimated from data.

- They are required by the model when making predictions.
- They values define the skill of the model on your problem.
- They are estimated or learned from data.
- They are often not set manually by the practitioner.
- They are often saved as part of the learned model.

Machine Learning Mastery 

머신러닝과 딥러닝에서

Paramer의 예를 아래와 같습니다.

1. 신경망에서 y = ax + b에서 a(가중치). 가중치는 모델이 자동으로 계산해줍니다.

2. 서포트 벡터 머신 w'x + b = 0에서 결정 경계를 만드는 support vector는 모델이 자동으로 계산해 줍니다.

여기서 support vector 들은 파라미터이고, C(허용에러 Cost), gamma(결정 경계 곡률) 등 분석가가 직접 입력해주는 값을 하이퍼 파라미터라고 합니다.

 

2. 아규먼트(Argument) : 인수

f(X, y) 함수에서 f(1, 2) 이면 X=1, y=2를 대입하게 됩니다. 이 때 1과 2를 argument라고 합니다.

즉 함수 원형을 작성시 에서 사용하는 변수 X, y를 Parameter(매개변수), 

def add(X, y):

    return X+y

 

함수 호출 시 사용되는 실제값인 1과 2를 Argument(인수)라고 말합니다.

add(1, 2)

>>> 3

 

void Foo(int i, float f)
{
    // Do things
}

void Bar()
{
    int anInt = 1;
    Foo(anInt, 2.0);
}

Here i and f are the parameters, and anInt and 2.0 are the arguments.

[참고] stack overflow

https://stackoverflow.com/questions/1788923/parameter-vs-argument

 

3. 하이퍼 파라미터(Hyper parameter) : 초매개변수

머신 러닝에서 하이퍼 파라미터 최적화 또는 튜닝은 학습 알고리즘을위한 최적의 하이퍼 파라미터 세트를 선택하는 문제입니다. 하이퍼 파라미터는 학습 과정을 제어하는 ​​데 사용되는 값의 매개 변수입니다. 대조적으로, 다른 파라미터의 값이 학습됩니다.

A model hyperparameter is a configuration that is external to the model and whose value cannot be estimated from data.

- They are often used in processes to help estimate model parameters.
- They are often specified by the practitioner.
- They can often be set using heuristics.
- They are often tuned for a given predictive modeling problem.

Machine Learning Mastery 

Machine Learning Mastery 

 

[참고]

https://machinelearningmastery.com/products/

 

EBooks

Hands-on machine learning training. Stop wasting your time one-off posts and academic textbooks. Discover how to deliver results with machine learning.

machinelearningmastery.com

통상적으로 하이퍼 파라미터를 튜닝한다고 말합니다.

하이퍼 파라미터는 모델 사용자에 의해 경험적으로 휴리스틱하게 정해질 수도 있고,

Grid Search나 Random Search 에 의해 기계적으로 찾기도 합니다.

딥러닝에서 하이퍼 파라미터를 튜닝하는데, 다음과 같은 하이퍼 파라미터가 있습니다.

 

* 네트워크 구조 하이퍼 파라미터

  1) Number of Hidden Layer

  2) Dropout

  3) Weight Initialization

  4) activation function(ReLU, Sigmoid) 등

 

* 학습 파라미터

  1) Learning Rate

  2) Momentum

  3) Numbeer of Epochs

  4) Batch Size

  5) Cost function(Loss, Error) 등

 

 

4. 개념 총정리

구분 한국어 설명
Parameter 매개변수 함수와 메서드 입력 변수(Variable) 명
머신러닝 딥러닝 모델에서 입력 변수(Variable) 명
(lambda x, y: x + y)(10, 20)
DecisionTreeClassifier(*, criterion='gini', splitter='best')
Argument 인자 함수와 메서드의 입력 값(Value)
머신러닝 딥러닝 모델에서 주는 입력값(Value)
(lambdax, y: x + y)(10, 20)
estimator.score(*args, **kwargs)
Hyper Parameter 초매개변수 머신러닝 딥러닝에서 설계자 조정값(Value) DecisionTreeClassifier(*, criterion='gini', splitter='best')

 

반응형
LIST