분류분석
- 목적 : 반응변수(또는 종속변수)가 알려진 다변량 자료를 이용하여 모형을 구축하고, 이를 통해 새로운 자료에 대한 예측 및 분류를 수행 하기 위함
- 반응 변수 형태에 따른 분류 분석 주 목적
- 반응 변수가 범주형인 경우 : 새로운 자료에 대한 분류
- 반응 변수가 연속형인 경우 : 값을 예측
- 많이 사용 되는 분류분석 모형
- 로지스틱회귀(logistic regression)
- SVM(Support Vector Maachine)
- 신경망 모형(artificial neural network)
- 의사결정나무(decision tree)
- 앙상블(ensemble)
- 규칙기반(rule-based) 분류
- 사례기반(case-based) 분류
- 인접이웃(nearest-neighbor) 분류
- 베이즈(bayesian) 분류모형
- 유전자 알고리즘(generic algorithm) 등
k-최근접 이웃
- 새로운 데이터 포인터를 예측할 때 알고리즘이 훈련 데이터에서 가장 가까운 데이터 포인트(최근접 이웃)을 찾는 방식
사이킷런에서 제공하는 KNeighborsClassifier 를 이용하여 분석해봅시다.
import numpy as np
import pandas as pd
from sklearn.datasets import load_iris
from sklearn.neighbors import KNeighborsClassifier
# 모든 feature 사용
X = iris_dataset.data
y = iris_dataset.target
# train_test_split를 이용하여 train과 test 분류 작업
# test : 30%, train: 70%
X_train, X_test, y_train, y_test = train_test_split(X,y,test_size=0.3, random_state = 42)
# 모델 객체 생성 - 이웃 수 = 3
clf = KNeighborsClassifier(n_neighbors=3)
clf.fit(X_train, y_train)
# 예측
predict_label = clf.predict(X_test)
# 정확도
print('train set accuracy : {:.2f}'.format(clf.score(X_train, y_train)))
print('test set accuracy : {:.2f}'.format(clf.score(X_test, y_test)))
'머신러닝 in Python' 카테고리의 다른 글
[Python] DecisionTree (0) | 2019.08.27 |
---|---|
[Python] k-nearest neighbor 예제 (0) | 2019.08.26 |
텍스트 분석_BOW (0) | 2019.08.14 |
텍스트 분석_텍스트 전처리 2 (0) | 2019.08.14 |
텍스트 분석_텍스트 전처리1 (0) | 2019.08.13 |