본문 바로가기
데이터

[데이터 모델링 및 평가] 분류 모델 - KNN, SVM 내용 정리

by dwoi 2023. 4. 3.

데이터 분석 모델링과 머신러닝에 대한 기본 개념에 대해 학습하고 이를 정리한 내용

 

목차

     


    데이터 모델링

    데이터 분석은 유의미한 정보를 파악하여 의사결정에 도움을 주기 위해 데이터 수집, 가공, 모델링하는 과정을 의미함


    0. 분류 모델

    • 독립 변수들을 이용하여 범주형인 종속변수를 예측하고자 할 때 쓰는 방법론
      • 대표적으로 사기 탐지, 질병 진단 등이 있음
    • 분류하고자는 종속변수의 범주 수에 따라 이진 분류 또는 다중 분류로 구분

     

    ◆ 분류 모델 대표 모델

    1. KNN
      • 입력된 데이터의 거리가 가장 가까운 데이터를 통해서 예측
    2. SVM
      • 결정 경계(Decision boundary)를 기반으로 예측
    3. Decisionn Tree(의사결정 나무)
      • 나무 구조를 이용하여 학습된 규칙을 기반으로 예측

    이외에도 Logistic Regression 등이 존재


    1. KNN

    1.1. K nearest neighbor (최근접 이웃법)

    • K nearest neighbor (KNN, 최근접 이웃법)이란, 새로운 관측값이 주어질 때 기존 데이터 중에서 가장 속성이 비슷한 K개의 이웃을 이용하여 예측하는 방법론으로, 거리 기반의 예측 방법론

     

    1.2. KNN 주요 하이퍼 파라미터

    • 최근접 이웃 수 (K) : K의 값에 따라서 모델의 예측 정확도가 달라지므로, 매우 중요한 하이퍼 파라미터
    • 거리 계산 척도 (metric) : 거리 계산을 어떻게 하느냐에 따라 가장 가까운 이웃이 정해짐

    1.3. KNN 특징

    데이터 입력 시 모든 데이터 쌍과의 거리 계산이 필요하므로, 수학 연산 비용이 꽤 큰편이며, 학습 데이터셋의 크기가 클수록 거리 계산 비용이 크게 증가함


    2. SVM(Support Vector Machine)

    2.1 SVM

    • Support Vector Machine(SVM)은 전통적인 지도 학습 모델로써, 머신러닝 분야에서 상당히 각광받은 모델 중 하나이며 여전히 패턴인식 등에 유용하게 활용되고 있음
    • 학습 데이터를 벡터 공간에 위치시키고 라벨을 잘 구분하는 벡터 경계(Decision boundary)면을 학습하여 새로운 데이터 입력 시 해당 경계를 기준으로 판단

    핵심 사항

    경계를 나눠서 구분한다고 하면 경계를 어떤 기준으로 설정해야 하는가?

     

    SVM

    2.2. 마진(Margin)

    두 데이터 클래스를 구분하는 도로의 경계

    → 마진이란 서로 다른 클래스의 경계면간의 거리를 의미

    → SVM은 마진을 최대화하는 분류 경계면을 찾는 방법

    • 서포트 벡터 :  마진과 맞닿아 있는 데이터

     

    2.3. 다양한 종류의 SVM

    일반적인 경우에 선형 경계면 만으로는 모든 데이터를 구분하기 어려울 수 있고

    이 문제를 해결하기 위해 다양한 종류의 SVM이 존재

     

    2.3.1. C-SVM

    마진 안에 다른 데이터가 존재할 수 있도록 완화

    • 마진을 최대화 하는 것은 동일하지만 마진 안에 데이터가 존재할 수 있도록 제약을 완화하고, 이를 파라미터 C로 제어함 (soft-margin)
    • C가 클수록 데이터가 벗어나는 정도 줄이게 되고 이는 타이트한 마진을 갖도록 유도함

     

    2.3.2. 커널

    분류 경계를 선형이 아닌 비선형으로 만드는 방법

    • 커널 : 원공간(input space)에서 데이터를 선형 분류가 가능한 고차원 공간 (feature space)로 매핑하는 방법을 의미
    • 고차원에서 선형 경계면을 찾음으로써 문제를 해결하려는 방법

     


    3. 분류 모델 평가 지표

    3.1. Confusion Matrix

      실제값 True 실제값 False
    예측값 True TP
    (True Positive)
    FP
    (False Positive)
    예측값 False FN
    (False Negative)
    TN
    (True Negative)

    3.2. 평가 지표

      설명 수식
    정확도
    Accuracy
    실제 True를 모델이 True로, 실제 False를 모델이 False로 적중한
    비율
    TP+TN

    TP+FN+FP+TN
    정밀도
    Precision
    True로 예측한 대상 중에서 실제 값이 True인 비율을 말함
    Ex) 모델이 사기라고 판단한 데이터 중 실제 사기 사례인 비율
    TP

    TP + FP
    재현율
    Recall
    실제값이 True인 대상 중에서 모델이 True로 예측하여 적중한 비율
    Ex) 실제 사기 데이터 중에 모델이 사기를 맞춘 비율
    TP

    TP + FN
    F1 지표 정밀도와 재현율이 균등하게 반영될 수 있도록 두 지표를 조화평균한
    값으로, 모델의 예측력을 종합적으로 평가하는 지표
    높을수록 좋다.
    2∗(𝑝𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 ∗𝑟𝑒𝑐𝑎𝑙𝑙)

    precision + recall

     


    마무리

    핵심 사항 : 분류 모델은 데이터가 들어 왔을 때 그 데이터가 참인지 거짓인지 판단하여 분류하는 모델이라 생각

    데이터의 서로 간의 거리로 판단할 수 있고

    경계선을 그어서 판단할 수 있다.

    뒤에 나올 의사결정 트리는 어떻게 판단하는 지 기준만 잘 판단하여 여러 분류 모델의 이해를 높일 필요가 있음.

     


     

    댓글