1. 로지스틱 회귀란?
- 로지스틱 회귀는 회귀를 사용하여 데이터가 어떤 범주에 속할 확률을 0에서 1 사이의 값으로 예측하고 그 확률에 따라 가능성이 더 높은 범주에 속하는 것으로 분류해 주는 지도 학습 알고리즘이다.
- 로지스틱 회귀의 분류 모델은 이진 분류 모델로 클래스가 딱 2개 있을때만 사용이 가능하다.
- 로지스틱 '회귀' 인데 갑자기 왜 뚱딴지같은 분류 모델이 나오지 라고 생각할 수 있는데, 로지스틱 '회귀'를 통해서 '분류'를 하는 것을 의미한다.
- 예를 들어보면 제품을 받았을때 그것이 불량일 확률이 0.5 이상이면 불량으로 분류하고, 확률이 0.5보다 작은 경우 양품으로 분류하는 것이다. 이렇게 데이터가 2개의 범주 중 하나에 속하도록 하는 것을 2진 분류(binary classification)라고 한다.
- 데이터 샘플에 맞는 최적의 로지스틱 함수(시그모이드 함수)를 구하고 이를 통해 예측값을 추출하는 알고리즘
- 선형 회귀의 출력값이 전체의 절반을 넘었으면 그냥 반올림해서 1로, 절반을 못넘겼으면 출력을 0으로 생각해서 분류
2.시그모이드 함수의 등장 배경
- 먼저 선형 회귀로 데이터를 분류하는 시도를 해보겠다.
- 직선의 중간쯤을 넘어가지 않으면 불합격, 넘어가면 합격이라는 기준을 세웠을때
- 여기서 새로운 데이터가 추가 되었을때, 학습된 모델과 새로운 데이터간에 loss(오차)가 발생하게 되므로
- 데이터 들의 MSE 평균이 최소가 되는 기울기로 모델이 움직이게 됨(W값 변경)
- 기울기가 변하게 되면서 함수의 0.5의 기준이 변화되어 잘못된 분류가 일어나게 됨. --> 선형회귀로 분류시 한계
3. 로지스틱 함수(시그모이드 함수)
- Logistic Function, Sigmoid Function, Squashing Function(함수에 들어갈 수 있는 값은 범위가 제한이 없는데, 출력되는 값은 0~1의 값을 가지므로 찌부됐다의 의미로 Squashing이라고 표현.)
- 기존의 선형 회귀 모델에 시그모이드 함수를 적용 시켜 0 혹은 1의 값으로 출력하게 함.
- 함수에 대입되는 x의 값의 범위는 제한이 없지만, 나오는 Output(y)값은 항상 0과 1 사이에 존재한다.
- 단점
- 이진 분류만 가능
- 복잡한 비선형 문제 해결시 큰 어려움
- 다중 공산성과 같은 문제를 자체적으로 해결 불가
4. Cross Entropy Loss 함수
- 로지스틱 함수에서 최적의 W(가중치) 값을 구하기 위해서 Cross Entropy(Log Loss)를 사용해야 한다.
(MSE는 사용이 불가능하다.)
- 수학 공식이 복잡해 보일 수 있지만 우리가 함수를 사용하는 것은 궁극적으로 실제 값 P 와 예측값 Q와의 거리(오차)를 줄이기 위함임을 알아야 함.
- Entropy: 정보를 표현하는데 있어서 필요한 최소 평균 자원량
-> 어떠한 정보(글, 그림 )를 표현하는데 필요한 최소 평균 비트의 수.
-Cross Entropy Loss
Cost function : 임의로 지정된 가중치로 예측값 Q를 구했을때의 오차
5. Binary classification과 cross entropy
−ylogŷ −(1−y)log(1−ŷ )−ylogy^−(1−y)log(1−y^)
우리가 logistic regression에서 보는 cost function입니다. 이 식은 사실 정확하게 cross entropy 식입니다. 하나하나 뜯어보겠습니다. Binary classification에서는 0 또는 1로 두 가지 class를 구분합니다. 이를 수식으로 표현하면 y∈y∈ { 0, 1 } 입니다. 우리가 어떤 대상이 1이라고 predict(또는 분류)하는 확률 qy=1qy=1 을 ŷ y^ 로 놓겠습니다: qy=1=ŷ qy=1=y^. 그렇다면 어떤 대상을 0으로 predict하는 확률 qy=0qy=0 은 (1−ŷ )(1−y^) 가 됩니다(1 또는 0, 두 가지 결과만 있으므로). 그리고 실제로 어떤 대상이 0 또는 1일 확률(참값) py=1,py=0py=1,py=0 은 각각 yy와 (1−y)(1−y) 가 됩니다. 이제 좀 보이는 것 같습니다. 이 내용을 지금까지 우리가 해왔던 것처럼 정리를 해보면 결국 이런 상황인 것입니다.
p=[ y,1−y ]q=[ ŷ ,1−ŷ ]p=[ y,1−y ]q=[ y^,1−y^ ]
'ML > 지도학습' 카테고리의 다른 글
회귀 모델 평가 (0) | 2022.10.17 |
---|---|
퍼셉트론(단층) (0) | 2022.10.17 |
1.선형 회귀(Linear Regression) (0) | 2022.10.12 |