이 영역을 누르면 첫 페이지로 이동
천천히 꾸준히 조용히 블로그의 첫 페이지로 이동

천천히 꾸준히 조용히

페이지 맨 위로 올라가기

천천히 꾸준히 조용히

천천히 꾸준히 조용히.. i3months 블로그

Machine Learning - Supervised Learning (3)

  • 2021.10.17 15:41
  • Computer Science/Machine Learning
반응형

 

 

 

Supervised Learning의 여러 가지 알고리즘들에 대해 살펴보자.

 

1. Naïve Bayesian Classifier

2. Decision Tree

3. K-Nearest Neighbors

4. Linear Models

5. Support Vector Machine (SVM)

6. Multi Layer Perceptron(MLP)

 

여러 가지 알고리즘들이 있고, 상황에 따라 다른 알고리즘을 적용해야 한다.

 

3. K-Nearest Neighbors (유유상종)

입력 데이터에 가장 가까운 K개의 데이터 레이블을 표결해 출력 클래스를 결정한다.

 

이전에 살펴본 스팸 메일 구분하기로 예시를 들면, 먼저 그래프로 스팸메일과 일반 메일들을 데이터화 한 다음 어느 한 메일이 도착했을 때 그 메일 주변에 어떤 메일이 위치해 있는지 살펴보고, 스팸 메일인지 일반 메일인지 확인하는 알고리즘이다. 즉, K개의 데이터 레이블을 확인하는건 주변의 K개의 데이터를 조사하고 스팸메일인지 아닌지 조사하는걸 의미한다.

 

 가장 가까운 데이터를 조사할 때 거리 계산 시 왼쪽의 수식을 사용한다.

 

 

학습 단계가 필요하지 않다는 장점이 있지만, 적용 단계에서의 예측이 매우 느리다는 단점이 있는 알고리즘이다.

 

 

 

최고의 성능을 보이는 K를 결정하는건 쉽지 않다.

 

 

위의 그림처럼, Training Error와 Test Error의 분포도 K에 따라 매우 다르다.

위의 그림처럼 결과가 나왔다면 K를 10으로 설정하는 것이 합리적이겠지만, 상황 마다 다른 값을 가지기 때문에 항상 계산을 통해 찾아줘야 한다.

(K는 홀수로 결정하는 것이 좋은데, 짝수로 결정했을 때 spam과 nonspam이 반반 나오게 되면 이를 따로 처리해 줘야 하기 때문이다.)

학습의 목적은 Test Error를 줄이는 것에 있으니, 이에 맞춰서 생각해 보는 것도 합리적이다.

 

 

 

 

 

반응형

'Computer Science > Machine Learning' 카테고리의 다른 글

Machine Learning - Supervised Learning (5)  (0) 2021.10.17
Machine Learning - Supervised Learning (4)  (0) 2021.10.17
Machine Learning - Supervised Learning (2)  (0) 2021.10.17
Machine Learning - Supervised Learning (1)  (0) 2021.10.17
Machine Learning (2)  (1) 2021.10.17

댓글

이 글 공유하기

  • 구독하기

    구독하기

  • 카카오톡

    카카오톡

  • 라인

    라인

  • 트위터

    트위터

  • Facebook

    Facebook

  • 카카오스토리

    카카오스토리

  • 밴드

    밴드

  • 네이버 블로그

    네이버 블로그

  • Pocket

    Pocket

  • Evernote

    Evernote

다른 글

  • Machine Learning - Supervised Learning (5)

    Machine Learning - Supervised Learning (5)

    2021.10.17
  • Machine Learning - Supervised Learning (4)

    Machine Learning - Supervised Learning (4)

    2021.10.17
  • Machine Learning - Supervised Learning (2)

    Machine Learning - Supervised Learning (2)

    2021.10.17
  • Machine Learning - Supervised Learning (1)

    Machine Learning - Supervised Learning (1)

    2021.10.17
다른 글 더 둘러보기

정보

천천히 꾸준히 조용히 블로그의 첫 페이지로 이동

천천히 꾸준히 조용히

  • 천천히 꾸준히 조용히의 첫 페이지로 이동

검색

방문자

  • 전체 방문자
  • 오늘
  • 어제

카테고리

  • 분류 전체보기 (682)
    • Algorithm (205)
      • Data Structure (5)
      • Theory && Tip (33)
      • Baekjoon (166)
      • ALGOSPOT (1)
    • Spring (123)
      • Spring (28)
      • Spring Web MVC (20)
      • Spring Database (14)
      • Spring Boot (6)
      • Spring 3.1 (11)
      • Spring Batch (6)
      • Spring Security (16)
      • JPA (12)
      • Spring Data JPA (5)
      • QueryDSL (4)
      • eGovFramework (1)
    • Programming Language (74)
      • C (25)
      • C++ (12)
      • Java (19)
      • JavaScript (15)
      • Python (1)
      • PHP (2)
    • Computer Science (142)
      • Machine Learning (38)
      • Operating System (18)
      • Computer Network (28)
      • System Programming (22)
      • Universial Programming Lang.. (8)
      • Computer Architecture (4)
      • Compiler Design (11)
      • Computer Security (13)
    • Database (21)
      • Database (7)
      • MySQL (3)
      • Oracle (3)
      • Redis (5)
      • Elasticsearch (3)
    • DevOps (20)
      • Docker && Kubernetes (8)
      • Jenkins (4)
      • Amazon Web Service (8)
    • Mobile (28)
      • Android (21)
      • Flutter (7)
    • 💡 솔루션 (17)
    • 👥 모각코 (12)
    • 💬 기록 (8)
    • 📚 공부 (7)
    • -------------- (25)

최근 글

나의 외부 링크

메뉴

  • 홈
반응형

정보

i3months의 천천히 꾸준히 조용히

천천히 꾸준히 조용히

i3months

블로그 구독하기

  • 구독하기
  • RSS 피드

티스토리

  • 티스토리 홈
  • 이 블로그 관리하기
  • 글쓰기
Powered by Tistory / Kakao. Copyright © i3months.

티스토리툴바