[ML] Classification : Linear Classifier

myeongwang·2023년 11월 26일
0

Linear Classifier : y= Wx+b로 표시되는 선형함수로 데이터를 분류하는 모델.

  • linear classifier는 하나의 선형식으로 데이터를 나누는 방법.
  • 38선으로 북한과 남한을 나누는 것을 생각해보면 직관적으로 이해하기 쉽.
  • 하나의 선형식으로 위/아래로 공간이 나뉘기 떄문에, 위는 1로 아래는 0으로 inference를 하게 되면 두가지의 케이스로 데이터를 분류할 수 있음.
  • y=Wx+by = Wx + b 의 식을 자세히 들여다보면, 다음과 같이 표시 가능.
    y=w1x1+w2x2+...+wnxn+by = w_1 * x_1 + w_2 * x_2 + ... + w_n * x_n + b
    위의 수식에서 (x1,x2)(x1, x2)는 2차원 feature vector이며, y는 output score
    (output score란, predicted value를 계산하기 위해서 필요한 값.)
  • 처음에 random으로 세팅된 파라미터값을 가지고 하나의 데이터에 대해서 yy값을 계산. 계산된 yy값이 0보다 크거나 같다면, 1을 아니라면 0을 predicted value로 출력

  • 이 때 0을 기준으로 하는 이유는, 선형식 위에 있는 점인 경우 계산 결과가 0이기 때문에 0보다 크냐 작냐에 따라서 선형식의 위냐 아래냐를 판단할 수 있기 때문.

    그렇게 되면, y^\hat y는 0 또는 1이 되며, yy도 0 또는 1이므로 맞고 틀림을 체크 가능

    y^=3x12x2+1\hat y=3x_1 -2x_2+1, x=(1,2)>y^=3122+1=0(outputscore)>1(predictedvalue)x=(1,2) -> \hat y=3*1-2-2+1=0 (output score) -> 1(predicted value) ↔ 1 (target value- 미리 정해져있는 값. 명시적인 값 지도학습에서의) : True

    x=(3,1)>y^=3311+1=9(outputscore)>0(predictedvalue)x=(-3,1) -> \hat y =3*-3*1*1+1 = -9(output score) -> 0(predicted value) ↔ 1(target value) : False

  • 따라서, linear classifier로 학습을 했다는 건 데이터를 잘 나누는 적절한 파라미터 W와 b를 찾는 것.
  • 이 경계면을 decision boundary라고 한다.
profile
Real Cryptocurrency Trader & AI Engineer LV.0

0개의 댓글