선형 분류 모형 (Linear Classification)

분류 문제?

학습 데이터가 주어졌을 때 해당 학습 데이터의 독립 변수들을 이용하여 클래스를 예측하는 것

분류 모델의 평가

정확도 Accuracy

올바르게 분류한 데이터 / 전체 데이터
But, 클래스가 불균등한 경우 정확도만으로 판단하는 것은 무리가 있음

Confusion Matrix

True Positive : 실제도 Positive 예측도 Positive
True Negative : 실제는 Negative 예측도 Negative
False Positive : 실제는 Negative 예측은 Positive
False Negative : 실제는 Positive 예측은 Negative

정밀도 Precision

Precision=True PositiveTrue Positive + False Positive\rm Precision = \cfrac{True \ Positive}{True\ Positive\ +\ False \ Positive}

재현율 Recall

Recall=True PositiveTrue Positive + False Negative\rm Recall = \cfrac{True\ Positive}{True\ Positive\ +\ False \ Negative}

F-1 Score

F1Score=2Precision×RecallPrecision+Recall\rm F1-Score = 2\cfrac{Precision \times Recall}{Precision + Recall}

ROC Curve (Receiver Operating Characteristic Curve)

어떤 모델의 FPR와 TPR의 관계를 나타낸 것. 넓이(AUROC)가 넓을수록 좋다. 0.8 정도면 좋아

최소 제곱 선형 분류

Y^=X(XTX)1XTY\bold{\hat{Y} = X(X}^T\bold{X)^{-1}X}^T\bold{Y} B^=(XTX)1XTY\bold{\hat{B} = (X}^T\bold{X)^{-1}X}^T\bold{Y}
f^(x)T=(1,xT)B^\hat{f}(x)^T = (1, x^T)\bold{\hat{B}}
One-hot vector를 이용해서 선형 회귀를 하고 가장 큰 Class Score를 가진 Class로 분류하는 방법

선형 판별 분석 (Linear Discriminant Analysis)

Pr(G=kX=x)=fk(x)πkl=1Kfl(x)πl{\rm Pr}(G=k|X=x)=\cfrac{f_k(x)\pi_k}{\sum_{l=1}^Kf_l(x)\pi_l}
클래스별로 사전 확률 πk\pi_k와 우도 함수 (likelihood function) fk(x)f_k(x)를 곱해주고 전체 클래스에서의 합으로 나눠준다.
이는 데이터 xx에 대해서 어떤 클래스 kk인지에 대한 확률을 나타낸다.
사전 확률은 사전에 알고있는 믿음을 나타내고 (모르면 그냥 모든 클래스에 같다고 해도 무방)
모든 Class에 대해서 공분산이 같다고 가정함.
Decision Boundary는 아래 그림과 같이 선형으로 나타남
현실에서는 우도 함수의 모수를 알 수 없기 때문에 학습 데이터를 이용해 추정해서 사용한다.

이차 판별 분석 (Quadratic Discriminant Analysis)

클래스별 공분산이 같지 않은 경우에 사용함

로지스틱 회귀 분석 (Logistic Regression)

선형 회귀를 분류 문제에 적용이 가능하도록 확장한 모형
logPr(G=1X=x)Pr(G=KX=x)=β10+β1Tx\log \cfrac{{\rm Pr}(G=1|X=x)}{{\rm Pr}(G=K|X=x)} = \beta_{10}+\beta_1^Tx
logPr(G=2X=x)Pr(G=KX=x)=β10+β2Tx\log \cfrac{{\rm Pr}(G=2|X=x)}{{\rm Pr}(G=K|X=x)} = \beta_{10}+\beta_2^Tx
...
logPr(G=K1X=x)Pr(G=KX=x)=β(K1)0+β1Tx\log \cfrac{{\rm Pr}(G=K-1|X=x)}{{\rm Pr}(G=K|X=x)} = \beta_{(K-1)0}+\beta_1^Tx
이고 이를 연립하면 아래 식을 쉽게 얻을 수 있다.
Pr(G=kX=x)=exp(βk0+βkTx)1+l=1K1exp(βl0+βlTx){\rm Pr}(G=k|X=x) = \cfrac{{\rm exp}(\beta_{k0}+\beta_k^Tx)}{1+\sum_{l=1}^{K-1}{\rm exp}(\beta_{l0}+\beta_l^Tx)}, k=1,...,K1k=1,...,K-1
Pr(G=KX=x)=11+l=1K1exp(βl0+βlTx){\rm Pr}(G=K|X=x) = \cfrac{1}{1+\sum_{l=1}^{K-1}{\rm exp}(\beta_{l0}+\beta_l^Tx)}
주어진 입력 데이터가 각 클래스에 속할 확률을 위와 같은 로지스틱 함수로 제공한다.

로지스틱 회귀 분석의 적합

크로스 엔트로피를 이용해 딥러닝으로 풂..