brunch

You can make anything
by writing

C.S.Lewis

by 이유민 Aug 23. 2021

4. 선형분류모형1

분류문제의 정의


분류(Classification)

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

 (vs. 회귀 = 종속변수의 값을 예측하는 것)

- 클래스 : 연속된 값이 아닌 특정 그룹을 상징하는 이산적인 값

- 일반적으로 클래스를 독립변수들에 대한 함수로 표현하는 모델을 찾아냄

=> 어떤조건에서 각 class가 어떤 값을 갖는지!


분류문제의 성능평가


정확도 (accuracy)

- 분류문제의 경우, 정확도를 기준으로 성능평가

- 정확도 - (클래스를 올바르게 분류한 데이터의 수) / (전체 데이터의 수 )

- but, 클래스가 불균등한 문제에서 원치 않은 결과를 얻게 될 수도 !


불균형 문제

Confusion matrix 을 주로 활용한다.

1) Accuracy (정확도) = (TP+TN)/ 전체

=> class가 불균등할 경우 문제가 됨.

2) Precision(정밀도) = TP(Positive로 올바르게 예측)/Predicted Results(전체예측)  = TP/(TP+FP)

3) Recall(재현률) = TP/actual results = TP/(TP+FN)

**여기서 일반적으로 정밀도와 재현률은 반비례관계에 있음 (하나가 높아지면 하나는 줄어듦)**

따라서, F1-score을 사용함.

4) F1-score = 2*Precision*Recall/Precision+Recall



Cut-off value

- confusion matrix는 컷오프값에 따라 달라짐.

- 컷오프 값 = 분류기준 = 모델의 성능도 이에 따라 달라질 수 있음

ex) Recall의 경우, +로 판단하는 기준치를 낮출수록 즉 cut-off value를 낮출수록 값이 커짐.

    = TPR = TP/(TP+FN)

- Acuuract가 최대가 되는 값 / F1score가 최대가 되는 값으로 선택가능


ROC Curve

- 오른쪽 위가 좋은 모델

- 대각선으로 (0.0) ~ (1.1) 연결하는 것이 랜덤값 = positive/negative 랜덤

- 커브위의 점이 의미하는 것은 : 모든 가능한 threshold별 FPR과 TPR을 알아보겠다는 의미.

- 왼쪽 위에 ROC curve 가 위치하면 위치할 수록 잘 분류된 것


TPR & FPR

- (TPR=0,FPR=0) -> 다 Negative로 분류

- (TPR=1, FPR=1) -> 다 positive로 분류

- (TPR=1, FPR=0) -> 이상적인 모델


AOC

- ROC커브 아래값

- 랜덤일경우 AOC=0.5

- 적당히 잘분류 AOC =0.8


최소제곱선형분류


Y를 one-hot vector로 표현하여, 최소제곱법을 이용한 분류

- 벡터 안에서 예측성분 중 가장 큰 것을 추정함

- but, 이상치에 민감할 확률이 커서 잘 안씀


선형판별분석 (Linear Discriminant Analysis)


선형판별분석의 원리 = 사후확률

*클래스의 사후확률 Pr(G=어떤 클래스에 속하는지?|X=x(독립변수가 주어졌을때))을 비교하는 것

= 어떤 x가 k에 속할 사후확률


어떻게 선형판별분석?

- 사후확률을 이용해야함.

1) 이때, 먼저 사전확률 가정 (우도함수와 곱할 것)

2) 우도함수 = 각 클래스의 확률밀도 함수 = 그 함수가 가우시안 분포를 따른다고 가정

*현실에서는 학습데이터를 사용해서 가우시안 분포의 모수 추정

3) class의 사후확률 (Pr(G=k|X=x))이 최대가 되는 것을 택!

4) 결정경계를 이제 구할 수 있음

5) 확률밀도함수의 공분산이 클래스별로 모두 같음을 가정


log { Pr(G=k|X-x)/ Pr(G=I|X\x)}

-> 이식에서 로그값이 1보다 크면 k로 분류, 1보다 작으면 l로 분류

-> 이식 값이 0이면 결정경계!


6) x에 대한 선형값으로 나타나고, 분류할 수 있게 됨

7) 따라서 결정경계는 Pr(G=k|X=x) = Pr(G=l|X=x) 를 만족하는 것을 찾는 거임.


LDA의 다른 관점

- 각각의 분산을 크게

- 데이터의 분리 : 서로 다른 집단 간의 차이를 최대화, 같은 집단안에서 차이를 최소화

= 판별분석과 같은 결과


로지스틱 회귀


로지스틱 회귀

- 선형회귀를 분류문제에 적용이 가능하도록 확장한 모형 (최소제곱과 비슷)

- 가장 단순한 선형분류모형 중 하나로, 각 클래스에 속할 확률 값을 제공

- 각 클래스에 속할 확률 0~1

- 각 클래스에 속할 확률을 모두 더하면 1

= x이거나 x이지않을 확률을 모두 더했을 때 1이 된다는 거

- 데이터가 각 클래스에 속할 사후확률의 비율이 독립변수 x들과 선형관계를 이루고 있다고 가정


로지스틱 회귀의 적합과 정규화

- 로그우도 함수를 미분을 통해 업데이트, 후 정규화를 시켜야함.

- 랏쏘나 릿지 형태로 정규화를 시킴.

- 람다가 증가함에 따라 독립변수가 0으로 수렴










        




-




매거진의 이전글 3. 선형회귀분석2
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari