ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Week 3] Classification and Representation
    Courses/Andrew Ng - Machine Learning 2021. 12. 29. 00:06

    Classification

     이번 시간부터 분류 문제에 대해 다뤄보겠습니다. 분류 문제란 결과값 y가 이산 값을 가지는 문제입니다. 

     이메일이 스팸인지 아닌지? 온라인 거래가 사기인지 아닌지? 종양이 음성인지 양성인지 등등의 문제가 분류 문제에 해당됩니다. 

     0으로 나타내는 클래스를 네거티브 클래스라고 하고 1로 나타내는 클래스를 파지티브 클래스라고 분류합니다.  무엇을 0으로 하고 1로 정할 지는 중요한 문제가 아닙니다. 일단은 0과 1로만 분류하는 Binary 문제 먼저 다루고 후에 Multiclass 문제도 다룰 것 입니다.

     그렇다면 선형 회귀 문제에서 했던 것처럼 적절한 가설 함수를 설정하는 알고리즘을 만들어야 할 것입니다. 위 데이터는 종양의 사이즈에 따른 양성 또는 악성으로 분류하는 데이터입니다. 이미 배운 선형 회귀 알고리즘을 먼저 적용해 볼 수 있습니다. 적합한 직선을 그리고 결과를 분류하는 곳에 경계선을 긋습니다. 저 임계값을 기준으로 왼쪽이면 음성이고 오른쪽이면 양성으로 판단합니다. 꽤 잘 작동하는 것 같지만 우측 끝에 데이터가 하나 추가된다면 달라집니다. 

     그렇게 된다면 가설 함수를 수정해야 하고 임계점도 오른쪽으로 밀리게 됩니다. 새로운 가설 함수의 임계값은 분류 기능을 제대로 해내지 못합니다. 

     분류 문제에 있어서 선형 회귀는 좋은 알고리즘이 아니고 추천하지 않습니다.

     

     따라서 우리는 분류 문제에 있어서 새로운 알고리즘인 로지스틱 회귀를 사용할 것 입니다.

     

    Hypothesis Representation

     

     분류 문제에서 가설 함수의 결과값은 항상 0에서 1사이여야 합니다. 로지스틱 회귀 가설은 선형 회귀에서 조금 변형된 형태입니다.

     시그모이드 함수 또는 로지스틱 함수라고 불리는 형태의 함수를 사용합니다. 시그모이드 함수의 그래프를 보면 -무한대로 가면 0으로 수렴하고 +무한대로 가면 1로 수렴하는 꼴의 모습을 하고 있음을 알 수 있습니다. 입력이 0일 때 0.5의 출력을 갖는다는 특징이 있습니다. 따라서 로지스틱 회귀 가설 h도 0과 1사이의 값을 가지게 되어 우리가 원하는 형태의 출력을 냅니다.

     가설의 출력값은 추정 확률의 형태로 나타납니다. 만약 h의 출력이 0.7이라면 값이 1일 확률이 70% 라는 뜻입니다. 종양 문제라면 양성일 확률이 70%라는 뜻입니다. 그렇다면 당연히 음성일 확률은 30%겠죠. 수학적 표현법은 다음과 같습니다.

    Decision Boundary

     결정 경계(Decision Boundary)란 주어진 데이터 셋에서 결과값들을 분류할 수 있는 경계선입니다. 즉 결과를 가르는 어떤 임계점이라고 할 수 있겠죠. 로지스틱 회귀 가설 함수 그래프를 보면 입력이 0일 때 출력은 0.5가 되고 그 오른쪽으로 가면 1에 수렴하고 왼쪽으로 가면 0으로 수렴하게 됩니다. 즉, 입력이 0이 되는 값 기준으로 입력이 커질 수록 y=1 일 확률이 올라가고 , 입력이 작아질 수록 y=0이 될 확률이 높아집니다. 

     hΘ(x) = g(ΘTx) 인 로지스틱 회귀 가설 함수에서 입력이 0이 되려면 ΘTx = 0이어야 합니다. ΘTx >= 0 이면 파지티브 결과에 가까워지고, ΘTx < 0 이면 네거티브에 가까워집니다. 

     위와 같은 데이터 셋과 가설 함수가 있다고 할 때, x1+x2 >= 3 을 만족하는 값들은 y=1 존이라고 할 수 있고, x1+x2<3 을 만족하는 값들은 y=0존에 속한다고 할 수 있습니다. 이때 그래프에 그어지는 x1+x2 = 3 직선이 결정 경계라고 할 수 있습니다.

     

     직선처럼 선형하지 않은 결정 경계도 그릴 수 있습니다. 위 그래프는 원형의 결정 경계를 보여줍니다.  ΘTx의 형태와 파라미터 벡터에 따라 다양한 형태의 결정 경계가 나타날 수 있습니다.


    혼자서 강의를 듣고 정리한 것이니 틀린 점이 있다면 언제든지 지적 부탁드립니다 :)

    'Courses > Andrew Ng - Machine Learning' 카테고리의 다른 글

    [Week 4] Neural Networks  (0) 2022.01.03
    [Week 3] Logistic Regression Model  (0) 2021.12.30
    [Week 2] Normal Equation  (0) 2021.12.20
    [Week 2] Multivariate Linear Regression  (0) 2021.12.20
    [Week 1] Linear Algebra Review  (0) 2021.12.19

    댓글

Designed by Tistory.