로지스틱 회귀(Logistic Regression)

  • 선형회귀 분류는 예외적인 데이터에 민감하기 때문에 로지스틱 회귀를 주로 사용한다.
  • 시그모이드 함수를 이용하여 주로 분류를 하는데 사용된다.

분류를 하기 위해 사용되는 데 왜 로지스틱 '회귀'인가?

  • 시그모이드 함수도 y의 값이 continuous하기 때문에 회귀라고 볼 수 있다. 분류를 할 때는 주로 0.5보다 큰지 작은지를 확인하고 분류한다.

시그모이드 함수

  • 특징 : 0~1 사이의 return 값을 가진다.
    → 결과 값이 0~1 사이이기 때문에 분류를 할 때 유용하고, 예외값에 크게 영향을 받지 않는다.

로지스틱 회귀 가설함수

  • 일차함수 g(x)를 시그모이드 함수에 대입하여 0~1 사이의 값을 return하도록 만든다.

  • θ0의 값을 늘리면 곡선이 왼쪽으로 움직이고, 줄이면 오른쪽으로 움직인다.

  • θ1의 값을 늘리면 곡선이 조여지고, 줄이면 늘어진다.

→ 이러한 성질을 이용하여 최적의 시그모이드 모양의 곡선을 찾아낸다.

결정 경계(Decision Boundary)

  • 분류를 할 때, 분류를 구별하는 경계선
    ex) 0.5 이상일 때 합격 → 결정 경계 = 0.5
  • 변수가 많아질수록 시각적으로 표현하기 힘들다. 하지만 변수가 적을 때 시각적으로 데이터를 나누는 경계선, 영역을 표현할 때 유용하다.

로그 손실(log-loss / cross entropy)

  • 손실의 정도를 로그 함수로 결정한다.

로지스틱 회귀 손실 함수

  • 모든 학습 데이터의 로그 손실을 계산한 후, 평균을 낸다.

로지스틱 회귀 경사 하강법

  • 선형 회귀의 경사 하강법과 유사하며, 손실함수 J만 다르다.

분류가 3개 이상일 때?

  • 각 옵션에 대한 가설함수를 구하고, 데이터의 입력 변수를 가설함수에 넣는다. 이 때 각 옵션에 대한 확률이 나오는데, 이 중 가장 높은 확률의 옵션을 선택하면 된다.

로지스틱 회귀와 정규 방정식

  • 선형 회귀는 정규 방정식을 이용하여 단순 행렬 계산으로 최적의 값을 구할 수 있다.
  • 로지스틱 회귀에서는 정규 방정식과 같은 단순 행렬 연산만으로는 손실 함수의 최소 지점을 찾을 수 없다.

    로지스틱 회귀에서는 손실함수 J에 대한 편미분 원소들이 선형식이 아니다. 지수로 포함된 식은 일차식으로만 표현하기 불가능하기 때문이다.

본 포스트는 코드잇 강의를 공부하며 정리한 내용입니다! 자세한 설명은 "코드잇 머신러닝 강의를 참고해주세요!

+) 코드잇 강의 바로가기

profile
안녕하세요 :) Data/AI 공부 중인 한국외대 컴퓨터공학부 조권휘입니다.

0개의 댓글