[Linear Classification] part 4 - 1
🧑🏻💻용어 정리
Linear Classification
hyper plane
multiclass classification
zero-one loss
hinge loss
cross-entropy loss
Linear Classification
-> 모델의 출력이 discrete한 값을 가지게 됩니다.
-> 문제에서 입력의 category를 결정하고 분류하기 위해서 data set에서 입력과 정답으로 구성된 label이 있는 data set을 사용하게 됩니다.
Linear classification 역시 linear regression 모델과 같이 linear model을 사용합니다.
점선은 Hyper plane (decision boundary)을 의미합니다.
h(x) > 0 이면 positive sample, h(x) < 0 이면 negative sample입니다.
목적 :
이러한 hyper plane을 구해서 우리의 data set에 있는 postive sample과 negative sample을 Linear combination에 의해서 구분 하는 것이 목적이 되겠습니다.
장점 : 단순하며 해석 가능성이 있고, 다양한 환경에서 일반적으로 안정적인 성능을 제공할 수가 있게 됩니다.
Multiclass classification
-> binary classification과 비슷하지만 입력 공간에서 hyper plane을 다수 두어 classification을 수행한다는 점에서 다릅니다.
-> 일반적으로 d차원 공간에 입력 feature vector가 있다고 할 수 있습니다.
=> 이 때, 출력은 binary classification의 문제인 경우 yes or no 문제입니다.
target function f를 approximation하는 hypothesis h를 학습하는 것이 목적입니다.
Linear classification은 decision boundary의 정확한 추정을 통해 주어진 입력에 대해 출력의 분류를 수행하는 문제입니다.
입력과 출력으로 선형 boundary를 학습하게 되고, 그로부터 입력 feature가 hyper plane으로부터 어느 위치에 있는지 알아냅니다.
과정은 어떻게 이루어질까요?
어떤 predictor를 이용할 것인가?
model parameter fitting을 위한 Loss function은 어떻게 설정하는가?
- Zero-one loss
- Hinge loss
- Cross-entropy loss
어떻게 parameter를 최적화할 것인가?
- Gradient Descent Algorithm
- 입력 변수와 parameter의 곱으로 score를 계산합니다.
- sin 함수를 적용하여 내부의 값이 음이면 -1, 양이나 0이면 1을 출력합니다.
우리의 목적 : parameter W 학습
-> W가 바뀜에 따라 Sample들의 판별 결과가 바뀌게 됩니다.
Classification 문제에서는 Error를 어떻게 판단할 수 있을까요?
- Zero-One Loss
- 이 loss는 내부의 logic을 판별하여 맞으면 0, 틀리면 1을 출력하는 함수입니다.
Score 값은 결정 과정에서 model이 얼마나 confident한지 측정 가능합니다.
- margin
=> Score 값에 y를 곱하여 계산합니다.
Score가 +의 부호를 갖는 것은 우리의 model prediction이 positive sample을 의미함을 알 수 있습니다.
y가 1인 경우 우리가 정답을 맞췄다고 할 수 있고, 이 경우 margin의 값이 굉장히 커지게 됩니다.
Score가 -의 부호를 갖는 것은 우리의 model prediction이 negative sample을 의미함을 알 수 있습니다.
y가 -1인 경우 우리가 정답을 맞췄다고 할 수 있고, 이 경우 역시 margin의 값이 굉장히 커지게 됩니다.
Score가 -의 부호를 갖는 것은 우리의 model prediction이 negative sample을 예측하였다는 것이지만,
y가 1인 경우 정답이 positive sample이었다는 것입니다. 이 경우 margin이 -의 값을 갖게 되고 model prediction이 실패했다는 것을 의미하게 됩니다.
Zero-one loss를 Gradient Descent Algorithm에 적용하려면, loss function의 partial derivative term을 구해야 합니다.
그러나 이 Loss function은 미분하면 결과가 0이 되게 됩니다.
이 경우, Gradient가 모두 0이 되게 되면, 우리의 model이 학습할 수 없게 됩니다.
이러한 문제를 해결하기 위해서 어떻게 해야할까요?
다음 시간에 알아보겠습니다.
'Artificial Intelligence' 카테고리의 다른 글
[Linear Classification] part 4 - 3 (0) | 2023.01.19 |
---|---|
[Linear Classification] part 4 - 2 (0) | 2023.01.19 |
[Parameter] part 3 - 2 (0) | 2023.01.16 |
[Gradient Descent] part 3 - 1 (0) | 2023.01.16 |
[Gradient Descent] part 2 - 3 (0) | 2023.01.14 |