SVM 기초지식
Linear Classification 에서 다양한 종류의 hyper plane 이 존재해 hyper plane 에 따라 다른 성능을 보임
w1 은 대부분 잘 분류하는 것처럼 보이지만 새로운 데이터가 나타났을때 거리가 positive class 처럼 보이지만 hyper plane 에 의해 negative class 로 분류되는 오류발생 확률이 매우 높다
hyper plane의 가장 적절한 위치(w2)는 positive sample와 negative sample의 중간위치다.
1. Support Vector Machine (SVM)
Support Vector 간의 거리를 최대화 하는 모델
위 그림과 같이 결정경계(hyper plane)과 가장 가까운 positive sample, negative sample 기준으로 서포트 벡터 사이에 최적의 위치를 찾아 클래스를 잘 구분하는 최대 Margin을 확보하는 최적화 방식으로 outlier 에 대해서도 Robust 하다는 장점이 있다
Optimizatioin
1) Hard margin SVM : linear separable 하다는 것을 가정하고 서포트 벡터 사이 영역 안에 어떠한 샘플도 없다는 것 의미
2) Soft margin SVM : Hard margin 과 달리 어느 정도의 오류를 용인
3) Nonlinear transform & kernel trick : linear hyper plane 에만 사용가능한 단점을 극복한 방법
2차원의 sample들을 고차원의 sample 들로 mapping 함수 활용하여 분류
Kernel function : linearly sepable 하지 않은 Data sample 이 있을때, 차수를 높여 linear 하게 만드는 과정
+ 추가) Mapping function 과 Kernel function 의 차이는 뭘까??
두 함수 모두 차원을 높여 선으로 분류 가능하게 하는 역할은 동일
But,
Mapping function : 모든 각 관측값(데이터)에 대해 복잡한 고차원 매핑연산, 추가적인 내적연산
Kernel function : 매핑이 아닌 유사도 계산을 통해 결과도출
So, 단순한 과정을 거치면서 유사한 결과 도출하는 Kernel fucntion 사용
Kernel 함수 종류
1) Polynomial
2) Gaussian radial basis function (RBF)
3) Hyperbolic tangent
각각 고유 파라미터가 있고 선택한 값에 따라 서로 다른 형식의 plane 적용
2. Artificiatl Neural Network (ANN)
Nonlinear Classification Model 이면서 Deep Neural Network (DNN) 의 기본
Nonlinear 에 대한 연산이 Activation function 에 의해 이루어진다
linear combination 으로 만든 score 값을 activation function 에 입력하여 non-linear 관계 매핑
Activation Function 종류
1) Sigmoid
Neural Network 모델이 깊어질수록 0 ~ 1 의 범위의 gradient 가 연산, 0으로 수렴하여 학습이 제대로 이루어지지 않아 Gradient Vanishing 문제를 발생시킨다.
이를 해결하기 위해 다양한 활성화 함수, weight initialization 발전
2) ReLU
3) Leaky ReLU
ReLU, Leaky ReLU 가 일반적으로 많이 사용됨
+ 추가)
딥러닝 출력층에서 이진 분류일 경우 Sigmoid, 다중 분류일 경우 SoftMax 함수를 사용한다.
4) Softmax
모델의 출력값을 0~1사이의 값으로 모두 정규화하여 확률로 해석할 수 있게 변환해주는 연산
Weight initialization
Pre-training
모델 학습하기 전에, 먼저 대규모의 일반적인 데이터셋을 사용하여 모델의 가중치를 사전 학습하는 과정
FIne-tuning
사전 학습된 모델을 특정 작업이나 더 작은 데이터셋에 맞게 추가조정하는 과정 (ex.Transfer Learning)
(참고 : https://childult-programmer.tistory.com/43)
Multilayer Perceptron
linear plane 으로 해결할 수 없는 non-linear한 문제를 여러개 layer 모델을 사용하여 해결할 수 있다
대표 예시 XOR 문제
층 2개를 사용해 (x1, x2) 값 (0, 0) (0, 1) (1, 0) (1, 1) 에 대해 모두 적용하여 non-linear 문제해결 예시
So, Neural Network 는 고차원의 신호 (ex. 이미지) 에 대해 정확하게 작동한다
'LG Aimers 요약' 카테고리의 다른 글
5. 인과추론 (Simpson's Paradox) (0) | 2024.01.23 |
---|---|
4 - 5. Ensemble (Voting, Bagging, Boosting, Stacking), Confusion Matrix (0) | 2024.01.22 |
4 - 3. Linear Classification + Loss (Zero-One Loss, Hinge Loss, Cross - Entropy Loss) (0) | 2024.01.19 |
4 - 2. Linear Regression + Optimizer (경사하강법, Gradient Descent, Momentum, RMSProp, Adam) (0) | 2024.01.18 |
4 - 1. Supervised Learning 지도학습 기초 (2) | 2024.01.18 |