[#2 Classification] Linear classifier

JinSeob·2022년 3월 19일
0

Classification

목록 보기
1/2

해당 내용은 coursera의 'Machine Learning : Classification' 강좌 내용을 기반으로 정리되었습니다.

서론

선형 분류기는 선형 조합의 성질을 가진 분류기이다. input data vector와 그에 상응하는 parameter vector를 곱한 값을 토대로 Positive Class와 Negative Class를 분류한다. 선형분류기에서의 parameter는 각 input vector의 Coefficient를 의미한다. Coefficient는 Input vector의 요소가 Target Variable을 분류할 때, 얼마나 영향을 미치는지를 결정하는 값이다.

Linear Classifier : Intuition

우선 감성 분석 예시를 통해, 선형 분류기의 기본적인 개념을 설명하고자 한다. 식당을 예약할 때, 우리가 우선적으로 고려하는 요소는 review이다. 각 리뷰 문장을 통해 우리는 이 식당이 맛집인지 아닌지를 예측한다. 이 예측이 논리적으로 타당하기 위해서는 이 모델을 더 구체화 시킬 필요가 있다.

Simple Linear Classifier

이 모델에서 구하는 것은 문장의 Score 값이다. 각 문장의 단어들과 그 단어의 coefficient(얼마나 긍정적으로 or 부정적 감성을 가지는지)를 매핑한 테이블을 통해, 우리는 Score 값을 구할 수 있다. 이 score 값이 0이상이면 Positive Class, 0 이하이면, Negative Class로 분류한다.

Learning the coefficients

Training Set을 통해 모델을 적합시킨 후, Vailidation set의 Data를 넣어 Accuracy를 확인하여 최적의 parameter를 구하는 과정을 도식화하였다.

Decision Boundary(결정 경계)

학습한 coefficient를 통해 우리는 score 함수를 정의할 수 있다. 그리고 그 함수 그래프를 기준으로 Positive Class와 Negative Class를 분류하는데, 이 그래프를 Decision Boundary라 한다.

Parameter의 수가 1개인 경우 점, 2개인 경우 선, 3개인 경우 평면, 4개인 경우 초평면으로 Decision Boundary(결정 경계)를 그릴 수 있다.

Simple Hyperplane

Model : yi^=sign(Score(xi))\hat{y_i} = sign(Score(x_i))
Score(xi)=w0h0(xi)+w1h1(xi)+...+wDhD(xi)Score(x_i) = w_0h_0(x_i) +w_1h_1(x_i) + ... + w_Dh_D(x_i)

  • 즉, 이 모델을 통해 우리가 알고 싶은 것은 Positive Class와 Negative Class를 분리하는 초평면의 최적의 위치이다.

Linear Classifier : Model

Model Frameork


General Notation

Output : y^\hat{y} (-1 or 1)
inputs : XX = (x[1],x[2],...,x[d]x[1],x[2],...,x[d])

Notational Conventions :
x[j]x[j] = jthj^{th} input (scaler)
hj(x)h_j(x) = jthj^{th} feature (scaler)
xix_i = input of ithi^{th} data point (vector)
xi[j]x_i[j] = jthj^{th} input of ithi^{th} data point (scaler)


앞의 내용을 도식화 해보면 다음과 같다.
우선, 전체 데이터 세트를 Training, Validation , Test Set으로 나눈다.

  • Training Set를 통해 가중치 벡터(coefficient)를 학습한다.
  • Validation Set를 통해 모델의 복잡도와 가중치를 고려한 최적 패러미터를 구한다.
  • Test Set를 통해 일반화 오류를 최소화 하는 모델을 만든다.

Linear Classifier 모델에서는 가중치 벡터와 입력값 벡터의 선형 조합의 값이 0보다 큰 경우 Positive Class, 0보다 작은 경우 Negative Class로 분류한다. 그리고 학습을 통해 최적의 결정경계를 구하는데, 학습 방법은 [#4 Classification]Linear Classifiers : Parameter Learning에서 다루도록 한다.

profile
Data Scientist, Data Engineer

0개의 댓글