machine learning 7

Multi-Class Classification에서 Softmax Function을 쓰는 이유

Multiclass Classification은 말 그대로 3개 이상의 class로 나누는 분류문제다. Activation Function으로 Softmax Function이 쓰이는데, 여기서는 왜 Softmax Function이 쓰이는지, 다른 시도와 비교하며 알아보자. 시도1. Multiple Binary Classifiers😶 Multiclass Classification 문제에서 가장 Naive한 방식은, 그냥 Binary Classifier를 여러개 써서 Multiclass로 분류하는 것이다. 여기서 Binary Classifier는 target을 'one-hot vector'로 나타낸다. ((1,0,0,0,...,0)은 1번 class, (0,1,0,0,...,0)은 2번 class.) inp..

[머신러닝] SVM으로 Binary Classification 다지기

SVM (Support Vector Machine)이란😶 SVM도 이전에 정리했던 Logistic Regression처럼 이진분류모델이다. SVM 작동원리를 차근차근 살펴보자. ✔️최적의 Hyperplane을 찾자 = SVM! 데이터가 주어졌을 때, Hyperplane을 그어 이를 두가지로 나누는 방법에는 여러가지가 있다. 그림처럼, 같은 데이터를 분류한다고 하더라도 서로 다른 파라미터 조합으로 만든 여러개의 Hyperplane이 존재할 수 있다. 수많은 Hyperplane 중에서 가장 최적의 것을 찾는 것이 문제다. SVM은 이 '최적'의 모델을 '데이터와 Hyperplane 간의 Margin이 최대가 되는 Hyperplane' 이라고 보는 것이 핵심이다. 그림으로 좀 더 명확히 살펴보자. Hyperp..

[머신러닝] Logistic Regression으로 Binary Classification 감 잡기

Logistic Regression은 대표적인 Binary Classifier 중 하나다. (이름은 Regression인데 분류모델이다.) Parametric Model 접근법😶 이전에 포스팅했던 모델은 Non-Parametric Model인 K-NN이었다. 여기서 포스팅할 Logistic Regression은 Parametric Model이다. Logistic Regression이전에, Parametric Model을 다룰 때 어떻게 접근하는지 살펴보자. Parametric Model과 Non-Parametric Model의 차이는 아래 링크를 타고 들어가 확인할 수 있다. 2022.08.12 - [Data Science/ML | DL] - 까먹지 않아야 할 머신러닝의 아주 기본 까먹지 않아야 할 머신..

[머신러닝] Loss Function과 Cost Function

공부하면서 Loss Function과 Cost Function의 개념이 굉장히 헷갈렸던 것이 기억난다. 사실 비슷한 개념이다. 까먹지 않으려고 여기에 간단히 정리해둔다. Loss Function😶 Decision Boundary(분류문제에 해당)가 얼마나 정답과 동떨어져 있는지 그 정도를 재는 함수다. (Quantifies how bad the decision boundary is.) Cost Function😶 모든 training example에 대한 평균 Loss Function이다. 수식으로 나타내면 아래와 같을 것이다. $$J(w,w_{0}) = {1\over N}\sum_{i=1}^{N}L(\hat{y}^{(i)},y^{(i)})$$

[머신러닝] 까먹으면 안되는 K-NN 이론

K-NN의 아이디어😶 K-Nearest Neighbor의 약자고, 대표적인 Non-Parametric Model이다. (데이터의 양에 따라 파라미터의 형태가 바뀜.) 여기서는 classification문제에 K-NN이 사용되는 것에 초점을 맞춰 포스팅할 것이다. 이름대로, 값을 예측하고 싶은 input vector x와 가장 유사한(similar) training data들을 찾고, 그 label들을 예측값으로 내놓는 것이 가장 큰 아이디어인 모델이다. 여기서 '유사하다'는 것은 곧 input vector x와 가장 '가깝다' 는 것을 의미한다. 이러한 가깝고 먼 속성은 아래와 같이 유클리드 거리로 나타낼 수 있다. $$dist(x^{(a)},x^{(b)}) = ||x^{(a)}-x^{(b)}||_{2}..

Overfitting과 Underfitting, 그리고 Bias-Variance Trade Off

'좋은 모델'이란😶 Machine Learning에서 좋은 모델은, 다음 두 가지를 갖춘 모델을 의미한다. ✔️Good Train Loss ✔️Good Generalization 즉, 훈련데이터에서의 loss가 낮은 모델을 만들어야 하는 것 뿐 아니라, 이제껏 없었던 새로운 데이터가 들어왔을 때 또한 잘 예측할 줄 아는 모델을 만들어야 하는 것이다. Bias-Variance Trade Off😶 하지만, Train loss가 아주 낮으면서도 새로운 데이터에도 잘 작동하는 모델을 만드는 것이 쉽지는 않다. 하나를 개선하면 하면 다른 하나에서 문제가 생기기 때문에, 둘 사이의 적절한 조정이 필요하다. 이를 bias-variacne trade off라고 하는데, 아래에서 좀 더 자세하게 살펴보자. $$E_{te..

까먹지 않아야 할 머신러닝의 아주 기본

머신러닝(Machine Learning)이란😶 새로운 데이터를 잘 맞추는 모델을 데이터로부터 구축하고 학습시키는 것이다. Data-Driven Approach, Supervised Learning이라고도 불린다. (정답이 있는 데이터를 학습시키는 것!) 정확하게 예측하는 것 + Generalization(기존 데이터가 아니라, 지금껏 보지 못한 새로운 데이터에 대한 예측) 모두를 고려한 모델을 구축하는 것에 초점을 맞춘 정의로 이해하자. 'Learning from Data to Achieve Model with Good Generalization.' Mathematical Formula😶 아래는 ML과 관련한 기본적인 용어들이다. ✔️input: x ✔️output: y ✔️target function:..