대학원 일기

Machine Learning 기초 본문

AI/인공지능 기초

Machine Learning 기초

대학원생(노예) 2022. 5. 11. 10:11

발단

한 아마추어 식물학자가 들에서 발견한 붓꽃의 품종을 알고 싶다고 가정한다.
이 식물학자는 붓꽃의 꽃잎petal과 꽃받침sepal의 폭과 길이를 센티미터 단위로 측정한다.
이 측정값을 이용해서 앞에서 채집한 붓꽃이 어떤 품종인지 구분하려고 한다.
이 아마추어 식물학자가 야생에서 채집한 붓꽃은 이 세 종류뿐이라고 가정한다.

 

목표

  어떤 품종인지 구분해놓은 측정 데이터를 이용해 새로 채집한 붓꽃의 품종을 예측하는 머신러닝 모델을 만드는 것. 

 

*목표가 구분을 하는 것이고 붓꽃의 품종 중 하나를 선택하는 것이므로 분류(Classification)에 해당함.

 

클래스

  • 데이터셋에 있는 붓꽃 데이터는 모두 세 클래스 중 하나에 속한다. 따라서 이 예는 세 개의 클래스를 분류하는 문제이다.
  • 데이터 포인트 하나(붓꽃 하나)에 대한 기대 출력은 꽃의 품종이 된다. 이런 특정 데이터 포인트에 대한 출력, 즉 품종을 레이블label할 수 있다.

 

데이터 적재

- 데이터를 불러와서 하나의 변수에 저장하여 앞으로 데이터 전처리, 시각화 등에 사용할 수 있도록 만드는 것을 데이터 적재라고 한다.

 

 

성과 측정: Train Data와 Test Data

- 새로운 데이터의 품종을 예측하기 전, 모델이 제대로 작동하는 지 확인해야 함.

-> 모델의 예측을 신뢰할 수 있는지 판단.

 

 

일반화

- 모델을 만들 때 사용한 데이터는 평가 목적으로 사용할 수 없다.(Never!!)

-> 모델이 훈련한 데이터를 전부 기억해 올바른 답안만은 내놓기 때문. (당연한 것임)

즉, 일반화는 새로운 데이터를 통해 학습한 모델을 평가하는 것.

 

DataSet 구분

- 모델의 성능을 측정하기 위해선 레이블을 알고 있으면서도 전에 본 적 없는 새로운 데이터를 모델에 적용해야 함

- 훈련 데이터(Train Data)와 테스트 데이터(Test Data)로 나누어 머신러닝 모델을 만들어야 함

 

이상치 확인

- 데이터를 조사해야 함(데이터가 일관성 없거나 이상한 값이 들어있는 경우가 있음)

 

시각화(Visualization)

- 시각화는 데이터를 조사하는데 있어서 아주 좋은 방법

- 산점도(scatter plot)를 통해 4개의 특성(붓꽃의 꽃잎과 꽃받침과 폭과 길이)을 가진 붓꽃의 경우처럼 특성의 수가 적다면 좋은 방법

단, 산점도 행렬은 한 그래프에 모든 특성의 관계가 나타나는 것이 아니기 때문에 각각의 나누어진 산점도 그래프에는 드러나지 않는 중요한 성질이 있을 수도 있다.

 

머신러닝 모델 선택하기

- 분류 문제 중 머신러닝 모델은 다양하게 있다.

예를 들어, scikit-learn 라이브러리에서는 다양한 지도학습(Supervised Learning) 알고리즘을 제공하는데 다음과 같다. 

  • Linear Models
  • Linear and Quadratic Discriminant Analysis
  • Kernel ridge regression
  • Support Vector Machine
  • Stochastic Gradient Descent
  • Nearest Neighbors
  • Gaussian Processes
  • Cross decomposition
  • Naive Bayes
  • Decision Trees
  • Ensemble method
  • Multiclass and multioutput algorithms
  • Feature selection
  • Semi-supervised learning
  • Isotonic regression
  • Probability calibaration
  • Neural network models (supervised)
 

1. Supervised learning

Linear Models- Ordinary Least Squares, Ridge regression and classification, Lasso, Multi-task Lasso, Elastic-Net, Multi-task Elastic-Net, Least Angle Regression, LARS Lasso, Orthogonal Matching Pur...

scikit-learn.org

 

Comments